Initialization. To initialize a group for users (id 1, . . . , idn), user id 1 first generates the $ dummy key-pair (pk , sk ) ← skuPKE.Gen(1λ). They then set up a left-balanced binary ratchet tree T = (V, E), where the ith leaf corresponds to user idi. T is completely blanked except for the leaves, that are set to have the corresponding user’s initialization public key as associated key and further contain their signature verification key. Further, vid1 .stsec contains id 1’s secret decryption and signing key. id 1 incorporates (pkc, skc), T , a copy Tnext of T , and an empty list Onext in their state and then computes ((∆i, δi, Ci)i, κ) ← gen-path-upd(id ▇.▇▇ ). ((∆i, δi)i, κ) is added to id 1’s state together with epoch counter ectr = 1 and Knext is set to the zero string. The resulting welcome message is W = (T.stpub, (∆i, Ci)i, (pkc, skc), σ, id 1), where σ is a signature of (T.stpub, (∆i, Ci)i, (pkc, skc)) under sskid1 .
Appears in 2 contracts
Sources: Decentralizable Continuous Group Key Agreement, Continuous Group Key Agreement