📖Issuer implementation

When the wallet makes a GET to the Issuer endpoint, a JSON is returned to the wallet (Issuer GET response):

example:

{
  "type": "CredentialOffer",
  "id" : "hjhghlkjgljkgjkg",
  "credentialPreview": {},
  "expires" : "2022-09-01T19:29:39Z",
  "challenge" : "mjh45RT56",
  "domain" : "talao.co",
  "credential_manifest" : {}
}

The “challenge” and domain arttributes will be used for DID_auth response or verifible presentation. The “credential_manifest” attribute is used to define the expected display options of the VC in the wallet (outpout_descriptors).

id, challenge and domain are optional attributes.

The wallet response will be :

{
  "id" : "hjhghlkjgljkgjkg",
  "Subjetc_id" : "did:tz:tz1e5YakmACgZZprF7YWHMqnSvcWVXZ2TsPW",
  "presentation": "vp"
}

“vp” is a verifiable presentation as a string here.

If the credential manifest does not request any vc, a vp “did auth” is signed and sent by the wallet to confirm key ownership. Example of a vp “did auth” :

Several verifiable presentations are requested in the credential manifest, wallet response will be :

vp1,… are strings

verifiable presentation (vp) is a credential bound with nonce if available in the request. This credential includes all the existing profile attributes if wallet holder consents.

Last updated