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

Structs

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

A credential that can be presented

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.

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::Profiles are modified using change events mechanism. One event may have 1 or more ProfileChanges 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

An identifier of a Profile.

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

Entity SecureChannel LocalInfo unique Identifier

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.