.. and press ENTER to ask a question on web5, how to write code and more.

Skip to main content
warning

This project is not actively being maintained. If you are interested in adopting it, please open an issue.

SSI Console

The SSI Console leverages the SSI Service API to simplify credential issuance and verification in an easy to manage web interface.

SSI Console

Core Functionality​

  • Create and manage Decentralized Identifiers (DIDs)
  • Issue and Verify Verifiable Credentials (VCs)

Installation​

info

The SSI Console leverages the SSI Service which is packaged as a Docker container. Make sure you have Docker downloaded and running on your desktop.

Verify that both docker and docker-compose commands are available:

docker --version

docker-compose --version

Clone and Run SSI Console​

git clone https://github.com/TBD54566975/ssi-console.git
cd ssi-console
npm install
npm start

Open localhost:3000 in a browser and follow the guide below for all actions you can take from the homepage.


Create a Decentralized Identifier (DID)​

Upon installation, a DID will be created by default, but you can follow the steps below to create one for yourself.

1. Click DIDs tab​

2. Click Add New​

3. Set DID Method​

There are three different DID methods to choose from: Ion, Web, and Key. The DID Key method is a good method for testing purposes so let's select that for now.

4. Set keyType and options​

Click Try sample input and then submit.

Learn more about what you can add to this field.


Create a Verifiable Credential (VC)​

1. Click Credentials tab​

2. Click Create New​

3. Add name and description​

Feel free to use the default placeholders or describe your new VC. Then click Next.

4. Prep VC Schema​

  • Set Schema to New data set.
  • Click Try sample input and fill in the VC subject's first and last name.
  • Click Next.

See properties you can add to this schema.

5. Set Input Descriptors (optional)​

Click Try sample input and leave the default JSON for now, and click Next.

This field populates the presentation_definition field of the credential_manifest. When a subject, for example an employee, applies for this credential, they will be required to present any credentials defined in this field. Here, we are asking for a credential with the subject's firstName and a credential with the subject's lastName. The path field defines which path we can expect to find these values in the subject's provided credentials.

6. Set issuer information​

Fill in an issuer name (company name) for the employment verification, then click Submit.

A new VC has now been created.


Next Steps for VCs​

Send an Application​

Share the Application URL with subjects, employees in this case, to apply for their new employment verifiable credential.

The credential applicant will need to submit a credential application as a JSON Web Token (JWT). Once they submit the JWT, the application will become available for review in the dashboard, under Credentials > Applications.

Learn more about applications.

Issue a VC​

  • Click Issue on a created VC.
  • Subject DID: Add your employee's DID.
  • Subject Data: Fill in your employee's first and last name.
  • Decide whether you want this DID to be revocable or suspendable
  • Set an expiration date if you want it to expire.
  • Issuer DID: Choose one of the employers' DIDs.

Verify a Credential​

We use presentation definitions to create submission links, through which subjects can submit their relevant credentials for verification.

1. Click Verification tab​

2. Click Create New​

3. Name your presentation definition​

4. Set Purpose​

Include the purpose of your presentation definition. It should answer: why are you requesting this credential?

5. Set Input Constraints​

Click Try sample input again and leave the default added JSON for now. It will look for credentials to verify the firstName and lastName.

6. Set verifier​

Choose your verifier DID from the dropdown. You can use the same Ion DID you used to create the VC.

info

Verification Applications vs Submissions:

Applications: When an employee applies for a credential with your application link, and you as the employeer will see that application here for the you (the employer) to approve or decline. If you approve their application you would then issue their employment credential.

Submissions: When an employer asks a job applicant to submit an education VC for example before accepting their role.


Next Steps​

Connect with us on Discord

Submit feedback: Open a GitHub issue

Edit this page: GitHub Repo

Contribute: Contributing Guide