Crate ockam_credential[][src]

Attribute based, privacy preserving, anonymous credentials.

This crate provides the ability to issue and verify attribute based, privacy preserving, anonymous credentials.

The issuer of a credential signs a collection of statements that attest to attributes of the subject of that credential. The subject (or a holder on their behalf) can then selectively disclose these signed statements to a verifier by presenting a cryptographic proof of knowledge of the issuer's signature without revealing the actual signature or any of the other statements that they didn't wish to disclose to this verifier.

Applications can decide if a subject is authorized to take an action based on the attributes of the subject that were proven to be signed by trusted issuers. Since only limited and necessary information is revealed about subjects this improves efficiency, security and privacy of applications.

The main Ockam crate re-exports types defined in this crate.

Structs

BlindCredential

A blind credential that will be unblinded by the holder

Credential

A credential that can be presented

CredentialAttributeSchema

An attribute describes a statement that the issuer of a credential is signing about the subject of the credential.

CredentialBlinding

The information needed to convert a BlindCredential to a Credential

CredentialOffer

A credential offer is how an issuer informs a potential holder that a credential is available to them

CredentialPresentation

Indicates how to present a credential

CredentialRequest

A request for a credential generated from a credential offer

CredentialSchema

A schema describes the data format of a credential.

Holder

Represents a holder of a credential

Issuer

Represents an issuer of a credential

PresentationManifest

A list of the accepted schemas, public keys, and required to be revealed attributes from a verifier

Verifier

Methods for verifying presentations

Enums

CredentialAttribute

The attribute data that is signed by

CredentialAttributeType

The data type of an attribute's value.

Constants

SECRET_ID

The label to indicate the secretid attribute in a schema/credential