Skip to content
Snippets Groups Projects

SSI Abstraction Service

Description


A core service for the Organizational Credential Manager, providing the DIDComm functionality and initializing the agent, wallet and ledger interactions of the whole application.

Usage


Endpoint documentation at:

Aries REST Extension

Full Agent Events

Sign and Verify Interface

with the default exposed ports:

  • 3010 - Aries REST extension
  • 3009 - Sign and Veify interface exposed
  • 4000 - didcomm interface

Installation


Dependencies:

$ pnpm install

Running the app


Environment variables

.env.example

  • PORT is the port for the signing and verification interface

  • AGENT_AUTO_ACCEPT_CONNECTION can be either true or false

  • AGENT_AUTO_ACCEPT_CREDENTIAL can be either: always, contentApproved, never

  • AGENT_PUBLIC_DID_SEED will generate the did and verkey (32 symbols)

  • for security reasons AGENT_WALLET_KEY and AGENT_WALLET_ID should be different

  • AGENT_LEDGER_ID can be: ID_UNION,BCOVRIN_TEST,GREEN_LIGHT

    • the three pool transaction genesis are inside the code configuration
    • every ledger can be provided on its own
    • multiple ledgers can also be specified, separated by a comma
  • AGENT_ID_UNION_KEY is needed if the ledger of choice is IDUnion

Each service in the Organizational Credential Manager can be run from the infrastructure repository with Docker.

The .env files are in the infrastructure repository under /env

There are two separate Dockefiles in "./deployment" of every project:

    ## production in:
      ./deployment/ci
    ## development in:
      ./deployment/dev
  • (optional) Edit docker-compose.yml in "infrastructure" to use either /ci/ or /dev/ Dockerfiles.

  • Run while in "infrastructure" project:

$ docker-compose up --build

Test


# unit tests
$ pnpm test

# e2e tests
$ pnpm test:e2e

# test coverage
$ pnpm test:cov

GDPR


GDPR

Dependencies


Dependencies

License


Apache 2.0 license