ExternalIdentity¶
Purpose¶
Designates an identity in anoma. This could represent an internal component, or a user, or an anoma node, etc. The External Identity encodes all the information necessary to encrypt messages to and verify commitments from some Identity represented.
This implements the External Identity Abstraction from architecture-1.
This means that, as far as our SML is concerned, we will need a structure
matching the EXTERNAL_IDENTITY
signature
, where both the signer
and the verifier
type are this ExternalIdentity type.
Type¶
There are (infinitely) many ways to make an ExternalIdentity, so this is a sum type. Here we list some of the options that should be available.
One of:
ed25519
secp256k1
BLS
- A Threshold Composition of External Identities.
- This must include any information necessary about how, for example, secret sharing is done for threshold encryption.