aggregate all pk to joint pk
decode masked to card use all reveals
generate keypair
mask the card, return the masked card and masked proof
Initialize the prover key
Initialize the reveal key
mask the card, return the masked card and masked proof
comporess (public_x, public_y) to public
uncompress public key to x, y
refresh joint public key when it changed.
compute masked to revealed card and the revealed proof
compute masked to revealed card with a snark proof
shuffle the cards and shuffled proof
unmask the card use others’ reveals
verify masked card with the proof
verify reveal point
verify the shuffled cards