The Trusted Nodes List is a list of the active node operators that have been onboarded by the Support Office. The list will be generated and signed by the Support Office before being reviewed and also signed by the Service Ops Manager. Once signed by both entities, it will be made available to the public on different channels. Here is a guide on how to issue the credential and the presentation.
Load user of Support Office
Load the keys of Support Office and accreditation:
==> using user ES256 did1 hardwarewallet
It's recommended to use a hardware wallet to sign this credential. For the installation follow the instructions here.
Now connect the wallet with the pilot environment:
==> env pilot
Define VC payload
Create a JSON file with this payload and fill it accordingly:
{
"@context": ["https://www.w3.org/2018/credentials/v1"],
"type": ["VerifiableCredential", "VerifiableAttestation", "TrustedNodesList"],
"credentialSubject": {
"environment": "pilot",
"chainId": 6179,
"version": 1,
"nodesTotal": 36,
"nodes": [
{
"apis": "https://api-pilot.ebsi.stsisp.ro",
"apps": "https://app-pilot.ebsi.stsisp.ro",
"explorer": "https://blockexplorer-pilot.ebsi.stsisp.ro",
"country": "rou"
},
{
"apis": "https://api-pilot.ebsi.fnmt.es",
"apps": "https://app-pilot.ebsi.fnmt.es",
"country": "esp"
}
]
},
"termsOfUse": {
"id": "https://api-pilot.ebsi.eu/trusted-issuers-registry/v5/issuers/did:ebsi:zZeKyEJfUTGwajhNyNX928z/attributes/cf89e47e260eda53bb199096ca97347790c84d2c8a5f2ce3f411eaba14d0003e",
"type": "IssuanceCertificate"
},
"credentialSchema": {
"id": "https://api-pilot.ebsi.eu/trusted-schemas-registry/v3/schemas/z3MgUFUkb722uq4x3dv5yAJmnNmzDFeK5UC8x83QoeLJM",
"type": "FullJsonSchemaValidator2021"
}
}
Now import it in the CLI tool:
==> payloadVcTnl: load path-to-file.json
Create and sign the VC
Finally, use this payload to create and sign the VC:
==> compute createVcJwt payloadVcTnl {} ES256
Please note that this credential is signed with the ES256 key, not the ES256K key.
You have issued a verifiable credential for Trusted Nodes List. Now you can share the credential with the Service Ops Manager to validate it.
Load user of the Service Ops Manager
Load the keys of Support Office and accreditation:
==> using user ES256 did1 hardwarewallet
It's recommended to use a hardware wallet to sign this credential. For the installation follow the instructions here.
Now connect the wallet with the pilot environment:
==> env pilot
Verify the VC
Run the following command to verify the credential:
==> compute verifyVcJwt PUT_VC_HERE
Verifiable Credential is valid
To see the content of the credential run:
==> compute decodeJWT PUT_VC_HERE
Create a VP
Run the following command to create a Verifiable Presentation containing the Verifiable Credential issued by Support Office:
==> compute createPresentationJwt PUT_VC_HERE ES256 any
Note that we are setting audience as "any" to target a generic audience.
You have issued a verifiable presentation for Trusted Nodes List. Now publish it in the respective channels.