Verify Credentials

This step by step guide will show you how to create and send a verification request to a user.

Agne Caunt avatar
Written by Agne Caunt
Updated over a week ago

Verification process

In the verification process, there are three main parties:

  1. Issuer: Party that creates and issues a Verifiable Credential to a holder (individual or organization)

  2. Holder: Person or organization that holds the credential (e.g. degree, professional certificate, or identity document)

  3. Verifier: Party that checks that the credential is valid and authentic

Steps for the Verifier

Verification request templates can only be created in Dock Certs, not the wallet. These templates can be important into the wallet from Dock Certs for wallet-to-wallet verification.

Click on Verification in the left menu and select Create verification template

First, type in the template title and template purpose, which the holder will be able to see.

The verifier can choose which credential details the holder is required to send in order for the credential to be accepted such as name, degree, certificate license number and so on. The verifier can choose credential filters such as only accepting credentials issued by a specific DID and/or with a credential name. If the holder sends invalid information, the credential won’t be accepted.

Each attribute will show a description with more detail about the information that can be requested.

The list will have all attributes that are included in the credential templates (schemas), therefore if you want to include an attribute to the verification template it has to be included in at least one of your credential templates.

For example if a tech company wants to send verification requests to shortlisted job applicants that asks them to verify their name, email, and university degree. They select

Requested Attributes: Subject Name, Subject Email and Credential Name Must Equal: design. Then click Create on the top right.

Last step for a verification request is to click Request, which will generate a QR code. Every time a new request is made, it generates a new QR code.

Send the recipient (credential holder) the QR code or copy the URL. Each QR Code can only be scanned once. If the holder tries to scan the credential request a second time, it will fail because the credential request was already used.

Steps for the Holder

First step for the Holder is to scan the QR code with their wallet and select the credential(s) that contain the information the verifier is requesting.

If the credentials were issued with Zero Knowledge Proof signatures the holder will be able to choose which details on the credentials to share with the verifier.

The holder would choose the identity to present.

If the credentials are valid and the verification is successful, this is what the holder will see.

If the credentials are not valid, the verification will fail and this is what the holder will see:

For the verifier to see a log of all your verification requests, go to Verification>History

When the credentials are valid it will show up as “Verified” under Status. The verifier won’t get a notification if the credential is invalid because Dock’s tools won’t let the holder submit invalid credentials.

Wallet-to-Wallet Verification

After creating the verification request in Dock Certs it can be imported in to the wallet for a wallet-to-wallet verification.

Go to Settings and choose Credential Verifier.

Click Import via QR code.

After the Verification presentation is imported you can share it with the holder to present and verify their credential.

Holder will scan this QR code with their Dock Wallet and get a presentation request message, choose the credential, and select Continue.

Select which details from that credential you want to share. The requested attributes will be highlighted.

Select the DID that you want to present to the verifier.

If the credential is valid, it would say Verification Successful for the holder.

The verifier will see that the credential is valid on their wallet as well. The verifier will not receive any credential if the verification is not valid.

Did this answer your question?