Accounts
An account on the base layer is defined as a pair of pubkey and a commitment s.t.
where g
is the globally available generator point, r
is a random scalar and h
is defined as
Note h
here is not a global generator point but an elgamal public key point. Commitment is defined as an elgamal style commitment scheme s.t.
where r'
is a random scalar which updates the public key points to generate a new commitment for the key and v
is the secret scalar of the balance in the account s.t. .
Updatable Accounts
A public key is updated using scalar multiplication of a random scalar with the group elements.
A commitment is updated by adding it to a new zero balance commitment, generated using .
Accounts are updated by updating public key , generating a zero balance commitment using and adding the previous and new commitment .
This construction follows the Updatable Public Key primitive introduced in QuisQuis by Mieklejohn et.al. (2018).
pageUpdatable Public KeyLast updated