pub struct VadeDidComm {}

Implementations

Creates new instance of VadeDidComm.

Trait Implementations

Runs a custom function, currently supports

  • create_new_keys to create a new key pair to be used for DIDCOMM communication.
  • query_didcomm_messages to fetch stored didcomm messaged by thid(e.g: “message_{thid}*”) and complete messageid(e.g: “message{thid}_{msgid}”)
Arguments
  • _method - not required, can be left empty
  • function - currently supports create_new_keys
  • _options - not required, can be left empty
  • _payload - not required, can be left empty
Returns
  • Option<String>> - created key pair

Prepare a plain DIDComm json message to be sent, including encryption and protocol specific message enhancement. The DIDComm options can include a shared secret to encrypt the message with a specific key. If no key was given and the message should be encrypted (depends on protocol implementation), the DIDComm keypair from a db will be used.

Arguments
  • options - of type DidcommOptions, used to apply a custom signing_key
  • message - the plain didcomm message (should be of type datatypes.rs/BaseMessage)
Returns
  • VadeDidCommPluginOutput - stringified datatypes.rs/VadeDidCommPluginOutput contains the final message and protocol step specific metadata

Receive a plain DIDComm json message, including decryption and protocol specific message parsing. The DIDComm options can include a shared secret to encrypt the message with a specific key. If no key was given and the message is encrypted the DIDComm keypair from a db will be used.

Arguments
  • options - of type DidcommOptions, used to apply a custom signing_key
  • message - the plain / encrypted didcomm message (should be of type datatypes.rs/BaseMessage / datatypes.rs/EncryptedMessage)
Returns
  • VadeDidCommPluginOutput - stringified datatypes.rs/VadeDidCommPluginOutput contains the final message and protocol step specific metadata

Creates a new DID. May also persist a DID document for it, depending on plugin implementation. Read more

Fetch data about a DID. This usually returns a DID document. Read more

Updates data related to a DID. May also persist a DID document for it, depending on plugin implementation. Read more

Creates a new zero-knowledge proof credential definition. A credential definition holds cryptographic key material and is needed by an issuer to issue a credential, thus needs to be created before issuance. A credential definition is always bound to one credential schema. Read more

Creates a new zero-knowledge proof credential offer. This message is the response to a credential proposal. Read more

Creates a new zero-knowledge proof credential proposal. This message is the first in the credential issuance flow. Read more

Creates a new zero-knowledge proof credential schema. The schema specifies properties a credential includes, both optional and mandatory. Read more

Creates a new revocation registry definition. The definition consists of a public and a private part. The public part holds the cryptographic material needed to create non-revocation proofs. The private part needs to reside with the registry owner and is used to revoke credentials. Read more

Updates a revocation registry for a zero-knowledge proof. This step is necessary after revocation one or more credentials. Read more

Issues a new credential. This requires an issued schema, credential definition, an active revocation registry and a credential request message. Read more

Finishes a credential, e.g. by incorporating the prover’s master secret into the credential signature after issuance. Read more

Presents a proof for a zero-knowledge proof credential. A proof presentation is the response to a proof request. Read more

Requests a credential. This message is the response to a credential offering. Read more

Requests a zero-knowledge proof for one or more credentials issued under one or more specific schemas. Read more

Revokes a credential. After revocation the published revocation registry needs to be updated with information returned by this function. Read more

Verifies one or multiple proofs sent in a proof presentation. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.