Crate ockam_entity[−][src]
Expand description
Entity is an abstraction over Profiles and Vaults, easing the use of these primitives in authentication and authorization APIs.
Modules
Profile history
Macros
Creates a CredentialAttribute
vector containing the arguments.
Creates a CredentialSchema
containing the arguments.
Creates a list of revealed attributes containing the arguments.
Structs
A credential that can be presented
A BLS public key
The secret key is field element 0 < x
< r
where r
is the curve order. See Section 4.3 in
https://eprint.iacr.org/2016/663.pdf
A BLS public key
The secret key is field element 0 < x
< r
where r
is the curve order. See Section 4.3 in
https://eprint.iacr.org/2016/663.pdf
Profile changes with a given event identifier
Contact is an abstraction responsible for storing user’s public data (mainly - public keys).
It is designed to share users’ public keys in cryptographically verifiable way.
Public keys together with metadata are organised into verifiable events chain exactly like crate::Profile
.
There are two ways to get Contact:
Key change creation
Key change data creation
An attribute describes a statement that the issuer of a credential is signing about the subject of the credential.
The information needed to convert a CredentialFragment2 to a Credential
A partial credential that will be completed by the holder
A credential offer is how an issuer informs a potential holder that a credential is available to them
Indicates how to present a credential
Serializable wrapper around a proof.
Serializable wrapper around a credential public key.
A request for a credential generated from a credential offer
A credential and fragment 1 pair
A schema describes the data format of a credential.
Builder for Entity
An identifier of a Profile.
Unique crate::ProfileChangeEvent
identifier, computed as SHA256 of the event data
Temporary: Externalized form of BlindSignatureContext - working around Serialize issues
External representation of a Commitment. G1Projective Serialization is interfering with BARE
Externalization of PoK
Attributes that are used to identify key
Entity SecureChannel LocalInfo used for LocalMessage
A list of the accepted schemas, public keys, and required to be revealed attributes from a verifier
Individual change applied to profile. ProfileChangeEvent
consists of one or more such changes
crate::Profile
s are modified using change events mechanism. One event may have 1 or more ProfileChange
s
Proof is used to check whether this event comes from a party authorized to perform such updated
Individual changes may include additional proofs, if needed
Pre-defined keys in ProfileEventAttributes
map
Profile implementation
RotateKeyChange
RotateKeyChangeData
Signature, its type and data
Enums
The attribute data that is signed by
The data type of an attribute’s value.
The error types that can occur when creating or verifying a credential.
Meta-Attributes about a key
Variants of proofs that are allowed on a crate::Profile
change
Possible types of crate::Profile
changes
Types of proof signatures.
Constants
Traits
Credential Holder
Credential Issuer
Credential Verifier
Holder API
Identity
Issuer API
Traits required for a Vault implementation suitable for use in a Profile
Functions
Type Definitions
Contacts Database
Alias for an array of Nonce::BYTES length.
Alias for an array of 32 bytes.
Profile event attributes
Alias for an array of 48 bytes.
Alias for an array of Nonce::BYTES length.
Alias for an array of 32 bytes.
Alias for an array of 96 bytes.