Skip to content

Interoperability Test Suite for Data Integrity Eddsa 2022 Signatures.

Notifications You must be signed in to change notification settings

MakoLab/vc-di-eddsa-test-suite

 
 

Repository files navigation

EdDSA Cryptosuite test suite

Table of Contents

Background

Provides interoperability tests for verifiable credential processors (issuers and verifiers) that support EdDSA Data Integrity cryptosuites.

Install

npm i

Usage

npm test

Implementation

You will need an issuer and verifier that are compatible with VC API and are capable of handling issuance and verification of Verifiable Credentials with DataIntegrityProof proof type using the eddsa-rdfc-2022 or eddsa-jcs-2022 cryptosuites.

To add your implementation to this test suite, you will need to add 2 endpoints to your implementation manifest.

  • A credential issuer endpoint (/credentials/issue) in the issuers property.
  • A credential verifier endpoint (/credentials/verify) in the verifiers property.

All endpoints will need the tags either eddsa-rdfc-2022 or eddsa-jcs-2022.

A simplified manifest would look like this:

{
  "name": "My Company",
  "implementation": "My implementation",
  "issuers": [{
    "id": "",
    "endpoint": "https://issuer.mycompany.com/credentials/issue",
    "method": "POST",
    "tags": ["eddsa-rdfc-2022"]
  }, {
    "id": "",
    "endpoint": "https://issuer.mycompany.com/credentials/issue",
    "method": "POST",
    "tags": ["eddsa-jcs-2022"]
  }],
  "verifiers": [{
    "id": "",
    "endpoint": "https://verifier.mycompany.com/credentials/verify",
    "method": "POST",
    "tags": ["eddsa-rdfc-2022", "eddsa-jcs-2022"]
  }]
}

The example above represents an unauthenticated endpoint. You may add ZCAP or OAuth2 authentication to your endpoints. You can find an example in the vc-test-suite-implementations README.

To run the tests, some implementations may require client secrets that can be passed as environment variables to the test script. To see which implementations require client secrets, please check the implementation manifest within the vc-test-suite-implementations library.

Docker Integration (TODO)

We are presently working on implementing a new feature that will enable the use of Docker images instead of live endpoints. The Docker image that you provide will be started when the test suite is run. The image is expected to expose the API provided above, which will be used in the same way that live HTTP endpoints are used above.

Contribute

See the CONTRIBUTING.md file.

Pull Requests are welcome!

License

See the LICENSE.md file

About

Interoperability Test Suite for Data Integrity Eddsa 2022 Signatures.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 98.5%
  • Handlebars 1.5%