/verifiable-credential-service

A lightweight service providing verifiable credential and presentation functionalities.

Primary LanguageTypeScriptMIT LicenseMIT

Verifiable Credential Service

A lightweight service providing verifiable credential functionalities based on swift-express-graphql.

Cryptographic Algorithm

Functionality Algorithm Curve
VC/VP Hashing SHA256
VC/VP Proof Signing EdDSA Ed25519

Proof value = Sign(Hash(Doc \ Proof))

Feature

  • Issue VCs/VPs.
  • VC persistence.
  • Verify VCs/VPs offline.
  • Verify VCs/VPs online (with VDR and VC persistence).
  • VC resolving by REST and GraphQL
  • Administration.

Quickstart

By Docker Compose

  1. Duplicate .env.example as .env and configure environment variables;
  2. Configure Dockerfile and docker-compose.yml;
  3. Compose and run containers.
docker compose up -d

By Docker

  1. Duplicate .env.example as .env and configure environment variables;
  2. Configure Dockerfile;
  3. Build Docker image
docker build -t vcs .
  1. Run in container
docker run -p <host_port>:<container_port> --name <container_name> -d vcs

Manually

  1. Install dependencies
yarn install
  1. Duplicate .env.example as .env and configure environment variables;

  2. Build project to dist;

npm run build
  1. Run project.
npm run start

Development

  • Run dev server
yarn dev

API

GraphQL

domain/graphql

REST

domain/api-docs


References