Skip to main content

Module zk_credential_key

Module zk_credential_key 

Source
Expand description

Long-term Ristretto key pair owned by an account, used as a binding identity across ZK credentials issued to that account (currently crate::avatars::AvatarUploadCredential).

The secret key is a pair of scalars (a1, a2), generated deterministically from a 32 bytes seed; the public key is A = a1*G_a1 + a2*G_a2. Distinct from the account’s curve25519 identity key. The public key is a wire type stored by the server; the secret key is a wire type that must be synced to linked devices.

Internally this wraps [zkcredential::attributes::KeyPair] to reuse its (a1, a2) / A structure and domain-separated generators, but it deliberately does not expose that type’s CPZ encrypt/decrypt methods: this key is used only for its scalar/point structure, never to encrypt attributes.

Structs§

ZkCredentialKeyDomain
Domain for the account ZK credential key.
ZkCredentialKeyPair
ZkCredentialPublicKey
The public half of a ZkCredentialKeyPair.