zerokit
zerokit copied to clipboard
RLN: Update identity_secret generation
To make the credentials generated by RLN more compatible with Semaphore, we need to update the secret generation to include generation of the identity_trapdoor
and identity_nullifier
as mentioned in Semaphore's docs - https://semaphore.appliedzkp.org/docs/technical-reference/circuits
This will allow re-using the same credentials for Semaphore groups and RLN
cc: @s1fr0 @oskarth
cc: @AtHeartEngineer from the PSE team
Thanks for the issue. I think was fairly agreed that we want to generate credentials as described in semaphore so that we have compatibility.
The only thing I'd like to know is if we want to keep current keygen implementation (that computes id_secret = random, id_commitment = H(id_secret)
) and thus add a new keygen that computes credentials like semaphore, or we want to replace keygen implementation.
Given that changing current keygen implementation implies a refactor of zerokit, nwaku, go-waku, rln-wasm, etc. we could probably add a new API to allow smooth transition and then, in case, deprecate the old keygen.
Agreed!
@cedoor FYI
This would require a spec change right? If so we should have an issue and discussion/decision in RFC repo
I don't think this requires a spec change. The previous implementation was not according to spec, and now it is :)