@cef-ebsi/cli 1.0.0-alpha.7 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/LICENSE +189 -189
  2. package/bin/cli.js +0 -0
  3. package/dist/abi/pilot/DidRegistryV4.js +942 -0
  4. package/dist/abi/pilot/DidRegistryV4.js.map +1 -0
  5. package/dist/abi/pilot/TimestampV3.js +995 -0
  6. package/dist/abi/pilot/TimestampV3.js.map +1 -0
  7. package/dist/abi/pilot/TirV4.js +710 -0
  8. package/dist/abi/pilot/TirV4.js.map +1 -0
  9. package/dist/abi/pilot/TprV3.js +707 -0
  10. package/dist/abi/pilot/TprV3.js.map +1 -0
  11. package/dist/abi/pilot/TsrV3.js +571 -0
  12. package/dist/abi/pilot/TsrV3.js.map +1 -0
  13. package/dist/abi/test/DidRegistry.js +1082 -0
  14. package/dist/abi/test/DidRegistry.js.map +1 -0
  15. package/dist/abi/test/DidRegistryV4.js +960 -0
  16. package/dist/abi/test/DidRegistryV4.js.map +1 -0
  17. package/dist/abi/test/{TarV3.js → SchemaSCRegistry.js} +319 -454
  18. package/dist/abi/test/SchemaSCRegistry.js.map +1 -0
  19. package/dist/abi/{pilot/TarV3.js → test/Timestamp.js} +450 -466
  20. package/dist/abi/test/Timestamp.js.map +1 -0
  21. package/dist/abi/test/TimestampV3.js +995 -0
  22. package/dist/abi/test/TimestampV3.js.map +1 -0
  23. package/dist/abi/test/Tir.js +897 -0
  24. package/dist/abi/test/Tir.js.map +1 -0
  25. package/dist/abi/test/TirV4.js +710 -0
  26. package/dist/abi/test/TirV4.js.map +1 -0
  27. package/dist/abi/test/Tpr.js +1268 -0
  28. package/dist/abi/test/Tpr.js.map +1 -0
  29. package/dist/abi/test/TprV3.js +707 -0
  30. package/dist/abi/test/TprV3.js.map +1 -0
  31. package/dist/abi/test/TsrV3.js +571 -0
  32. package/dist/abi/test/TsrV3.js.map +1 -0
  33. package/dist/app.js +70 -57
  34. package/dist/app.js.map +1 -1
  35. package/dist/buildParam/didV4.js +390 -0
  36. package/dist/buildParam/didV4.js.map +1 -0
  37. package/dist/buildParam/index.js +43 -20
  38. package/dist/buildParam/index.js.map +1 -1
  39. package/dist/buildParam/timestampV3.js +317 -0
  40. package/dist/buildParam/timestampV3.js.map +1 -0
  41. package/dist/buildParam/tirV4.js +119 -0
  42. package/dist/buildParam/tirV4.js.map +1 -0
  43. package/dist/buildParam/tntV2.js +181 -0
  44. package/dist/buildParam/tntV2.js.map +1 -0
  45. package/dist/buildParam/tprV3.js +82 -0
  46. package/dist/buildParam/tprV3.js.map +1 -0
  47. package/dist/buildParam/tsrV3.js +110 -0
  48. package/dist/buildParam/tsrV3.js.map +1 -0
  49. package/dist/commands/authorisation-v4.js +3 -127
  50. package/dist/commands/authorisation-v4.js.map +1 -1
  51. package/dist/commands/authorisation-v5.js +116 -0
  52. package/dist/commands/authorisation-v5.js.map +1 -0
  53. package/dist/commands/compute.js +122 -53
  54. package/dist/commands/compute.js.map +1 -1
  55. package/dist/commands/conformance-v3.js +1 -2
  56. package/dist/commands/conformance-v3.js.map +1 -1
  57. package/dist/commands/ledger-v4.js +16 -4
  58. package/dist/commands/ledger-v4.js.map +1 -1
  59. package/dist/commands/view.js +0 -8
  60. package/dist/commands/view.js.map +1 -1
  61. package/dist/config.js +93 -96
  62. package/dist/config.js.map +1 -1
  63. package/dist/programs/migrateDid.js +158 -0
  64. package/dist/programs/migrateDid.js.map +1 -0
  65. package/dist/programs/migrateTsr.js +158 -0
  66. package/dist/programs/migrateTsr.js.map +1 -0
  67. package/dist/scripts/accreditAndAuthorize/conformance/step1 +33 -34
  68. package/dist/scripts/accreditAndAuthorize/conformance/step2 +17 -17
  69. package/dist/scripts/accreditAndAuthorize/conformance/step3 +8 -8
  70. package/dist/scripts/accreditAndAuthorize/conformance/step4 +26 -26
  71. package/dist/scripts/accreditAndAuthorize/conformance/step5 +12 -12
  72. package/dist/scripts/accreditAndAuthorize/conformance/step6 +13 -13
  73. package/dist/scripts/accreditAndAuthorize/conformance/step7 +6 -6
  74. package/dist/scripts/accreditAndAuthorize/test/step1 +33 -34
  75. package/dist/scripts/accreditAndAuthorize/test/step2 +17 -17
  76. package/dist/scripts/accreditAndAuthorize/test/step3 +8 -8
  77. package/dist/scripts/accreditAndAuthorize/test/step4 +26 -26
  78. package/dist/scripts/accreditAndAuthorize/test/step5 +12 -12
  79. package/dist/scripts/accreditAndAuthorize/test/step6 +13 -13
  80. package/dist/scripts/accreditAndAuthorize/test/step7 +6 -6
  81. package/dist/scripts/accreditTI +20 -20
  82. package/dist/scripts/assets/CTRevocableCredential.json +29 -29
  83. package/dist/scripts/assets/CredentialToAttestVerifiableAuthorisationForTrustChain.json +28 -28
  84. package/dist/scripts/assets/VerifiableAccreditationToAccredit.json +35 -35
  85. package/dist/scripts/assets/VerifiableAccreditationToAttest.json +32 -32
  86. package/dist/scripts/assets/VerifiableAuthorisationForTrustChain.json +21 -21
  87. package/dist/scripts/assets/VerifiableAuthorisationToOnboard.json +23 -23
  88. package/dist/scripts/bootstrap/0a-loadTPROperator +5 -5
  89. package/dist/scripts/bootstrap/0b-loadAdmin +7 -8
  90. package/dist/scripts/bootstrap/1-populateTPR +89 -112
  91. package/dist/scripts/bootstrap/2-populateDID +6 -6
  92. package/dist/scripts/bootstrap/{4-populateTimestamp → 3-populateTimestamp} +8 -8
  93. package/dist/scripts/bootstrap/{5-populateTIR → 4-populateTIR} +8 -9
  94. package/dist/scripts/bootstrap/{6-populateTSR → 5-populateTSR} +81 -81
  95. package/dist/scripts/bootstrap/{7-setupConformanceIssuer → 6-setupConformanceIssuer} +34 -34
  96. package/dist/scripts/issueVcOnboard +9 -9
  97. package/dist/scripts/issueVcRootTAO +11 -11
  98. package/dist/scripts/issueVcTAO +12 -12
  99. package/dist/scripts/issueVcTI +12 -12
  100. package/dist/scripts/issue_CTRevocableCredential +11 -12
  101. package/dist/scripts/issue_SelfAttestationSupportOffice +9 -10
  102. package/dist/scripts/issue_VerifiableAccreditationToAccredit +10 -11
  103. package/dist/scripts/issue_VerifiableAccreditationToAttest +10 -11
  104. package/dist/scripts/issue_VerifiableAuthorisationForTrustChain +9 -10
  105. package/dist/scripts/issue_VerifiableAuthorisationToOnboard +8 -9
  106. package/dist/scripts/preregisterIssuer +6 -6
  107. package/dist/scripts/registerDidDocument_ES256K +5 -5
  108. package/dist/scripts/registerDidDocument_ES256K_ES256 +13 -13
  109. package/dist/scripts/registerIssuer +6 -6
  110. package/dist/scripts/updateVcRootTAO +10 -0
  111. package/dist/scripts/updateVcTAO +11 -0
  112. package/dist/scripts/updateVcTI +11 -0
  113. package/dist/scripts/wctv3/accreditAndAuthorize +106 -105
  114. package/dist/scripts/wctv3/holderWallet +39 -39
  115. package/dist/scripts/wctv3/issueToHolder +37 -37
  116. package/dist/scripts/wctv3/pda1 +3 -3
  117. package/dist/scripts/wctv3/verifier +7 -7
  118. package/dist/tsconfig.tsbuildinfo +1 -1
  119. package/dist/utils/print.js +1 -5
  120. package/dist/utils/print.js.map +1 -1
  121. package/package.json +100 -103
  122. package/dist/abi/pilot/TarV3.js.map +0 -1
  123. package/dist/abi/test/TarV3.js.map +0 -1
  124. package/dist/buildParam/tarV3.js +0 -193
  125. package/dist/buildParam/tarV3.js.map +0 -1
  126. package/dist/programs/appRegistration.js +0 -69
  127. package/dist/programs/appRegistration.js.map +0 -1
  128. package/dist/scripts/bootstrap/3-populateTAR +0 -28
  129. package/dist/scripts/initializeContracts +0 -5
@@ -0,0 +1,158 @@
1
+ /* eslint-disable no-constant-condition */
2
+ /* eslint-disable no-continue */
3
+ import fs from "fs";
4
+ import { execCommand } from "../app.js";
5
+ import { loadConfig } from "../config.js";
6
+ const [fileName] = process.argv.slice(2);
7
+ const config = loadConfig();
8
+ const { admin } = config.programs;
9
+ const currentDidVersion = Number(config.api.tsr.url.slice(-1));
10
+ const oldDidVersion = currentDidVersion - 1;
11
+ const tsrOld = config.api.tsr.url.replace(`/v${currentDidVersion}`, `/v${oldDidVersion}`);
12
+ const tsr = config.api.tsr.url;
13
+ async function safeExecCommand(command, opts) {
14
+ if (opts.skip && opts.skip.includes(opts.successMessage))
15
+ return;
16
+ try {
17
+ await execCommand(command);
18
+ }
19
+ catch (error) {
20
+ const { message } = error;
21
+ if (message.includes("nonce has already been used") ||
22
+ message.includes("replacement fee too low")) {
23
+ // try again after some seconds
24
+ await execCommand("wait 5");
25
+ await safeExecCommand(command, opts);
26
+ return;
27
+ }
28
+ if (message.includes("Revert reason: schemaId already exists") ||
29
+ message.includes("Revert reason: relationship already exists") ||
30
+ message.includes("Revert reason: vMethodId already exists")) {
31
+ // everything is ok, continue
32
+ return;
33
+ }
34
+ throw error;
35
+ }
36
+ }
37
+ async function getMissingSchemas(pageIni = 1, pageEnd = 0, pageSize = 50) {
38
+ const missingSchemas = [];
39
+ const errors = [];
40
+ let pageAfter = pageIni;
41
+ let url = `${tsrOld}/schemas?page[after]=${pageAfter}&page[size]=${pageSize}`;
42
+ while (true) {
43
+ // get DIDs from old api
44
+ const schemaIdListOld = await execCommand(`get ${url}`);
45
+ // get which ones are not in the current version
46
+ await Promise.all(schemaIdListOld.items.map(async (item) => {
47
+ try {
48
+ const hrefCurrent = item.href.replace(tsrOld, tsr);
49
+ await execCommand(`get ${hrefCurrent}`);
50
+ }
51
+ catch (error) {
52
+ if (error.message.includes("failed with status code 404")) {
53
+ missingSchemas.push(item.schemaId);
54
+ }
55
+ else {
56
+ errors.push({ url: item.href, error: error.message });
57
+ }
58
+ }
59
+ }));
60
+ if (schemaIdListOld.links.next === schemaIdListOld.self ||
61
+ (pageEnd && pageAfter >= pageEnd))
62
+ break;
63
+ pageAfter += 1;
64
+ url = schemaIdListOld.links.next;
65
+ }
66
+ return {
67
+ missingSchemas,
68
+ errors,
69
+ };
70
+ }
71
+ async function migrateSchema(schemaId, opts) {
72
+ const success = [];
73
+ let successMessage = "";
74
+ try {
75
+ const schema = await execCommand(`get ${tsrOld}/schemas/${schemaId}`);
76
+ // insert schema
77
+ successMessage = "insertSchema";
78
+ await safeExecCommand(`proxyledger tsr insertSchema ${JSON.stringify(schema)}`, { ...opts, successMessage });
79
+ success.push(successMessage);
80
+ return {};
81
+ }
82
+ catch (error) {
83
+ console.log(error);
84
+ return {
85
+ error: {
86
+ schemaId,
87
+ ...(success.length > 0 && { success }),
88
+ error: error.message,
89
+ },
90
+ };
91
+ }
92
+ }
93
+ (async () => {
94
+ // load admin
95
+ await execCommand(`using user ES256K did1 ${admin.privateKey} ${admin.did}`);
96
+ await execCommand("t: authorisation siop");
97
+ await execCommand("using token t");
98
+ let migrated = [];
99
+ let noMigrated = [];
100
+ let errors = [];
101
+ const newFile = `migration-${Date.now()}.log`;
102
+ const saveFile = () => {
103
+ fs.writeFileSync(newFile, JSON.stringify({ migrated, noMigrated, errorList: errors }, null, 2));
104
+ };
105
+ if (fileName) {
106
+ const fileData = fs.readFileSync(fileName, "utf8");
107
+ const { migrated: m, noMigrated: nom } = JSON.parse(fileData);
108
+ migrated = m;
109
+ noMigrated = nom;
110
+ }
111
+ else {
112
+ const { missingSchemas, errors: e } = await getMissingSchemas(1, 0, 50);
113
+ errors = e;
114
+ noMigrated = missingSchemas.map((s) => ({
115
+ schemaId: s,
116
+ success: [],
117
+ error: "",
118
+ pending: true,
119
+ }));
120
+ }
121
+ for (let i = 0; i < noMigrated.length; i += 1) {
122
+ const { schemaId, success, error, pending } = noMigrated[i];
123
+ if (!schemaId)
124
+ continue;
125
+ if (pending ||
126
+ error.includes("nonce has already been used") ||
127
+ error.includes("replacement fee too low") ||
128
+ error.includes("Bad Gateway") ||
129
+ error.includes("Revert reason")) {
130
+ const result = await migrateSchema(schemaId, {
131
+ skip: success,
132
+ });
133
+ if (result.error) {
134
+ noMigrated[i] = result.error;
135
+ }
136
+ else {
137
+ noMigrated[i] = {
138
+ schemaId: "",
139
+ success: [],
140
+ error: "",
141
+ pending: false,
142
+ };
143
+ migrated.push(schemaId);
144
+ }
145
+ }
146
+ saveFile();
147
+ }
148
+ noMigrated = noMigrated.filter((n) => n.pending);
149
+ saveFile();
150
+ })()
151
+ .then(() => {
152
+ process.exit(0);
153
+ })
154
+ .catch((error) => {
155
+ console.log(error);
156
+ process.exit(1);
157
+ });
158
+ //# sourceMappingURL=migrateTsr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrateTsr.js","sourceRoot":"","sources":["../../src/programs/migrateTsr.ts"],"names":[],"mappings":"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"}
@@ -1,35 +1,34 @@
1
- env conformance
2
- set domain https://api-conformance.ebsi.eu
3
-
4
- # create new issuer
5
- using user null
6
- using user
7
- using user ES256
8
-
9
- # request credential to onboard
10
- vcOnboard: conformance getCredential onboard
11
- set myIssuer user
12
-
13
- # register did document
14
- run registerDidDocument_ES256K_ES256 vcOnboard.vc
15
-
16
- # request VerifiableAccreditationToAttest (TI)
17
- vcTI: conformance getCredential ti
18
-
19
- # register the credential for TI
20
- t: authorisation auth tir_invite_presentation ES256 vcTI.vc
21
- using token t.access_token
22
- tir setAttributeData myIssuer.did vcTI.reservedAttributeId vcTI.vc
23
- set vcTI.url https://api-conformance.ebsi.eu/trusted-issuers-registry/v5/issuers/ myIssuer.did /attributes/ vcTI.reservedAttributeId
24
-
25
- view myIssuer
26
- # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
27
- # and validate the following tests:
28
- #
29
- # - Onboarding
30
- # - Request VerifiableAuthorisationToOnboard
31
- # - Register your DID Document into the DID Registry
32
- #
33
- # - Get accredited as a Trusted Issuer
34
- # - Request VerifiableAccreditationToAttest
1
+ env conformance
2
+
3
+ # create new issuer
4
+ using user null
5
+ using user
6
+ using user ES256 did1 user.privateKeyHex
7
+
8
+ # request credential to onboard
9
+ vcOnboard: conformance getCredential onboard
10
+ set myIssuer user
11
+
12
+ # register did document
13
+ run registerDidDocument_ES256K_ES256 vcOnboard.vc
14
+
15
+ # request VerifiableAccreditationToAttest (TI)
16
+ vcTI: conformance getCredential ti
17
+
18
+ # register the credential for TI
19
+ t: authorisation auth tir_invite_presentation ES256 vcTI.vc
20
+ using token t.access_token
21
+ tir setAttributeData myIssuer.did vcTI.reservedAttributeId vcTI.vc
22
+ set vcTI.url tirUrl /issuers/ myIssuer.did /attributes/ vcTI.reservedAttributeId
23
+
24
+ view myIssuer
25
+ # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
26
+ # and validate the following tests:
27
+ #
28
+ # - Onboarding
29
+ # - Request VerifiableAuthorisationToOnboard
30
+ # - Register your DID Document into the DID Registry
31
+ #
32
+ # - Get accredited as a Trusted Issuer
33
+ # - Request VerifiableAccreditationToAttest
35
34
  # - Register VerifiableAccreditationToAttest into the Trusted Issuers Registry
@@ -1,18 +1,18 @@
1
- # create a proxy
2
- conformance clientMockUpdateList 1 0 0
3
- t: authorisation auth tir_write_presentation ES256
4
- using token t.access_token
5
- set proxyData {"prefix":"","headers":{},"testSuffix":"/credentials/status/1"}
6
- set proxyData.prefix myIssuer.clientId
7
- tir addIssuerProxy myIssuer.did proxyData
8
- proxies: tir get /issuers/ myIssuer.did /proxies
9
- set user.proxyId proxies.items.0.proxyId
10
- set user.accreditationUrl vcTI.url
11
- conformance clientMockInitiate
12
-
13
- # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
14
- # and validate the following tests:
15
- #
16
- # - Issue & Revoke
17
- # - Issue CTRevocable Credential with credentialStatus StatusList2021
1
+ # create a proxy
2
+ conformance clientMockUpdateList 1 0 0
3
+ t: authorisation auth tir_write_presentation ES256
4
+ using token t.access_token
5
+ set proxyData {"prefix":"","headers":{},"testSuffix":"/credentials/status/1"}
6
+ set proxyData.prefix myIssuer.clientId
7
+ tir addIssuerProxy myIssuer.did proxyData
8
+ proxies: tir get /issuers/ myIssuer.did /proxies
9
+ set user.proxyId proxies.items.0.proxyId
10
+ set user.accreditationUrl vcTI.url
11
+ conformance clientMockInitiate
12
+
13
+ # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
14
+ # and validate the following tests:
15
+ #
16
+ # - Issue & Revoke
17
+ # - Issue CTRevocable Credential with credentialStatus StatusList2021
18
18
  # - Validate the issued credential details
@@ -1,9 +1,9 @@
1
- # revoke credential
2
- statusListIndex: compute statusListIndex did:ebsi:zhJARjPN69cEtgPxHen1Mid
3
- conformance clientMockUpdateList 1 statusListIndex 1
4
-
5
- # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
6
- # and validate the following tests:
7
- #
8
- # - Issue & Revoke
1
+ # revoke credential
2
+ statusListIndex: compute statusListIndex did:ebsi:zhJARjPN69cEtgPxHen1Mid
3
+ conformance clientMockUpdateList 1 statusListIndex 1
4
+
5
+ # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
6
+ # and validate the following tests:
7
+ #
8
+ # - Issue & Revoke
9
9
  # - Revoke the credential and confirm
@@ -1,27 +1,27 @@
1
- # request VerifiableAccreditationToAccredit (TAO)
2
- vcTAO: conformance getCredential tao
3
-
4
- # register the credential for TAO
5
- t: authorisation auth tir_write_presentation ES256
6
- using token t.access_token
7
- tir setAttributeData myIssuer.did vcTAO.reservedAttributeId vcTAO.vc
8
- set vcTAO.url https://api-conformance.ebsi.eu/trusted-issuers-registry/v5/issuers/ myIssuer.did /attributes/ vcTAO.reservedAttributeId
9
- set user.accreditationUrl vcTAO.url
10
- conformance clientMockInitiate
11
-
12
- # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
13
- # and validate the following tests:
14
- #
15
- # - Request VerifiableAccreditationToAccredit
16
- # - Request VerifiableAccreditationToAccredit
17
- # - Register VerifiableAccreditationToAccredit into the Trusted Issuers Registry
18
- # - Register VerifiableAccreditationToAccredit into the Trusted Issuers Registry
19
- # - Issue VerifiableAuthorisationToOnboard for Conformance Issuer's sub-account DID
20
- # - Issue VerifiableAuthorisationToOnboard for Conformance Issuer's sub-account DID
21
- # - Validate the issuance was correct
22
- # - Issue VerifiableAccreditationToAttest for sub-account DID
23
- # - Issue VerifiableAccreditationToAttest for sub-account DID
24
- # - Validate the issuance was correct
25
- # - Issue VerifiableAccreditationToAccredit for sub-account DID
26
- # - Issue VerifiableAccreditationToAccredit for sub-account DID
1
+ # request VerifiableAccreditationToAccredit (TAO)
2
+ vcTAO: conformance getCredential tao
3
+
4
+ # register the credential for TAO
5
+ t: authorisation auth tir_write_presentation ES256
6
+ using token t.access_token
7
+ tir setAttributeData myIssuer.did vcTAO.reservedAttributeId vcTAO.vc
8
+ set vcTAO.url tirUrl /issuers/ myIssuer.did /attributes/ vcTAO.reservedAttributeId
9
+ set user.accreditationUrl vcTAO.url
10
+ conformance clientMockInitiate
11
+
12
+ # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
13
+ # and validate the following tests:
14
+ #
15
+ # - Request VerifiableAccreditationToAccredit
16
+ # - Request VerifiableAccreditationToAccredit
17
+ # - Register VerifiableAccreditationToAccredit into the Trusted Issuers Registry
18
+ # - Register VerifiableAccreditationToAccredit into the Trusted Issuers Registry
19
+ # - Issue VerifiableAuthorisationToOnboard for Conformance Issuer's sub-account DID
20
+ # - Issue VerifiableAuthorisationToOnboard for Conformance Issuer's sub-account DID
21
+ # - Validate the issuance was correct
22
+ # - Issue VerifiableAccreditationToAttest for sub-account DID
23
+ # - Issue VerifiableAccreditationToAttest for sub-account DID
24
+ # - Validate the issuance was correct
25
+ # - Issue VerifiableAccreditationToAccredit for sub-account DID
26
+ # - Issue VerifiableAccreditationToAccredit for sub-account DID
27
27
  # - Validate the issuance was correct
@@ -1,13 +1,13 @@
1
- # revoke credential issued to subaccount
2
- subaccount: compute subaccountDid myIssuer.did
3
- attributes: tir get /issuers/ subaccount /attributes
4
- t: authorisation auth tir_write_presentation ES256
5
- using token t.access_token
6
- tir setAttributeMetadata subaccount attributes.items.0.id revoked myIssuer.did vcTAO.reservedAttributeId
7
- tir setAttributeMetadata subaccount attributes.items.1.id revoked myIssuer.did vcTAO.reservedAttributeId
8
-
9
- # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
10
- # and validate the following tests:
11
- #
12
- # - Revoke accreditations from sub-account DID
1
+ # revoke credential issued to subaccount
2
+ subaccount: compute subaccountDid myIssuer.did
3
+ attributes: tir get /issuers/ subaccount /attributes
4
+ t: authorisation auth tir_write_presentation ES256
5
+ using token t.access_token
6
+ tir setAttributeMetadata subaccount attributes.items.0.id revoked myIssuer.did vcTAO.reservedAttributeId
7
+ tir setAttributeMetadata subaccount attributes.items.1.id revoked myIssuer.did vcTAO.reservedAttributeId
8
+
9
+ # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
10
+ # and validate the following tests:
11
+ #
12
+ # - Revoke accreditations from sub-account DID
13
13
  # - Revoke accreditations from sub-account DID
@@ -1,14 +1,14 @@
1
- # request VerifiableAuthorisationForTrustChain (Root TAO)
2
- vcRootTAO: conformance getCredential roottao ES256 vcOnboard.vc
3
-
4
- # register the credential for RootTAO
5
- t: authorisation auth tir_write_presentation ES256
6
- using token t.access_token
7
- tir setAttributeData myIssuer.did vcRootTAO.reservedAttributeId vcRootTAO.vc
8
-
9
- # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
10
- # and validate the following tests:
11
- #
12
- # - Request VerifiableAuthorisationForTrustChain
13
- # - Request VerifiableAuthorisationForTrustChain
1
+ # request VerifiableAuthorisationForTrustChain (Root TAO)
2
+ vcRootTAO: conformance getCredential roottao ES256 vcOnboard.vc
3
+
4
+ # register the credential for RootTAO
5
+ t: authorisation auth tir_write_presentation ES256
6
+ using token t.access_token
7
+ tir setAttributeData myIssuer.did vcRootTAO.reservedAttributeId vcRootTAO.vc
8
+
9
+ # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
10
+ # and validate the following tests:
11
+ #
12
+ # - Request VerifiableAuthorisationForTrustChain
13
+ # - Request VerifiableAuthorisationForTrustChain
14
14
  # - Register VerifiableAuthorisationForTrustChain into the Trusted Issuers Registry
@@ -1,7 +1,7 @@
1
- # request CTAAQualificationCredential
2
- ctaaQualification: conformance getCredential qualification
3
-
4
- # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
5
- # and validate the following tests:
6
- #
1
+ # request CTAAQualificationCredential
2
+ ctaaQualification: conformance getCredential qualification
3
+
4
+ # Go to https://hub.ebsi.eu/wallet-conformance/accredit-authorise/flow
5
+ # and validate the following tests:
6
+ #
7
7
  # - Request CTAAQualificationCredential from Conformance Issuer
@@ -1,35 +1,34 @@
1
- env test
2
- set domain https://api-test.ebsi.eu
3
-
4
- # create new issuer
5
- using user null
6
- using user
7
- using user ES256
8
-
9
- # request credential to onboard
10
- vcOnboard: conformance getCredential onboard
11
- set myIssuer user
12
-
13
- # register did document
14
- run registerDidDocument_ES256K_ES256 vcOnboard.vc
15
-
16
- # request VerifiableAccreditationToAttest (TI)
17
- vcTI: conformance getCredential ti
18
-
19
- # register the credential for TI
20
- t: authorisation auth tir_invite_presentation ES256 vcTI.vc
21
- using token t.access_token
22
- tir setAttributeData myIssuer.did vcTI.reservedAttributeId vcTI.vc
23
- set vcTI.url https://api-test.ebsi.eu/trusted-issuers-registry/v5/issuers/ myIssuer.did /attributes/ vcTI.reservedAttributeId
24
-
25
- view myIssuer
26
- # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
27
- # and validate the following tests:
28
- #
29
- # - Onboarding
30
- # - Request VerifiableAuthorisationToOnboard
31
- # - Register your DID Document into the DID Registry
32
- #
33
- # - Get accredited as a Trusted Issuer
34
- # - Request VerifiableAccreditationToAttest
1
+ env test
2
+
3
+ # create new issuer
4
+ using user null
5
+ using user
6
+ using user ES256 did1 user.privateKeyHex
7
+
8
+ # request credential to onboard
9
+ vcOnboard: conformance getCredential onboard
10
+ set myIssuer user
11
+
12
+ # register did document
13
+ run registerDidDocument_ES256K_ES256 vcOnboard.vc
14
+
15
+ # request VerifiableAccreditationToAttest (TI)
16
+ vcTI: conformance getCredential ti
17
+
18
+ # register the credential for TI
19
+ t: authorisation auth tir_invite_presentation ES256 vcTI.vc
20
+ using token t.access_token
21
+ tir setAttributeData myIssuer.did vcTI.reservedAttributeId vcTI.vc
22
+ set vcTI.url tirUrl /issuers/ myIssuer.did /attributes/ vcTI.reservedAttributeId
23
+
24
+ view myIssuer
25
+ # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
26
+ # and validate the following tests:
27
+ #
28
+ # - Onboarding
29
+ # - Request VerifiableAuthorisationToOnboard
30
+ # - Register your DID Document into the DID Registry
31
+ #
32
+ # - Get accredited as a Trusted Issuer
33
+ # - Request VerifiableAccreditationToAttest
35
34
  # - Register VerifiableAccreditationToAttest into the Trusted Issuers Registry
@@ -1,18 +1,18 @@
1
- # create a proxy
2
- conformance clientMockUpdateList 1 0 0
3
- t: authorisation auth tir_write_presentation ES256
4
- using token t.access_token
5
- set proxyData {"prefix":"","headers":{},"testSuffix":"/credentials/status/1"}
6
- set proxyData.prefix myIssuer.clientId
7
- tir addIssuerProxy myIssuer.did proxyData
8
- proxies: tir get /issuers/ myIssuer.did /proxies
9
- set user.proxyId proxies.items.0.proxyId
10
- set user.accreditationUrl vcTI.url
11
- conformance clientMockInitiate
12
-
13
- # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
14
- # and validate the following tests:
15
- #
16
- # - Issue & Revoke
17
- # - Issue CTRevocable Credential with credentialStatus StatusList2021
1
+ # create a proxy
2
+ conformance clientMockUpdateList 1 0 0
3
+ t: authorisation auth tir_write_presentation ES256
4
+ using token t.access_token
5
+ set proxyData {"prefix":"","headers":{},"testSuffix":"/credentials/status/1"}
6
+ set proxyData.prefix myIssuer.clientId
7
+ tir addIssuerProxy myIssuer.did proxyData
8
+ proxies: tir get /issuers/ myIssuer.did /proxies
9
+ set user.proxyId proxies.items.0.proxyId
10
+ set user.accreditationUrl vcTI.url
11
+ conformance clientMockInitiate
12
+
13
+ # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
14
+ # and validate the following tests:
15
+ #
16
+ # - Issue & Revoke
17
+ # - Issue CTRevocable Credential with credentialStatus StatusList2021
18
18
  # - Validate the issued credential details
@@ -1,9 +1,9 @@
1
- # revoke credential
2
- statusListIndex: compute statusListIndex did:ebsi:ztTYEydcPQ2SrKoghHqxBfK
3
- conformance clientMockUpdateList 1 statusListIndex 1
4
-
5
- # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
6
- # and validate the following tests:
7
- #
8
- # - Issue & Revoke
1
+ # revoke credential
2
+ statusListIndex: compute statusListIndex did:ebsi:ztTYEydcPQ2SrKoghHqxBfK
3
+ conformance clientMockUpdateList 1 statusListIndex 1
4
+
5
+ # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
6
+ # and validate the following tests:
7
+ #
8
+ # - Issue & Revoke
9
9
  # - Revoke the credential and confirm
@@ -1,27 +1,27 @@
1
- # request VerifiableAccreditationToAccredit (TAO)
2
- vcTAO: conformance getCredential tao
3
-
4
- # register the credential for TAO
5
- t: authorisation auth tir_write_presentation ES256
6
- using token t.access_token
7
- tir setAttributeData myIssuer.did vcTAO.reservedAttributeId vcTAO.vc
8
- set vcTAO.url https://api-test.ebsi.eu/trusted-issuers-registry/v5/issuers/ myIssuer.did /attributes/ vcTAO.reservedAttributeId
9
- set user.accreditationUrl vcTAO.url
10
- conformance clientMockInitiate
11
-
12
- # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
13
- # and validate the following tests:
14
- #
15
- # - Request VerifiableAccreditationToAccredit
16
- # - Request VerifiableAccreditationToAccredit
17
- # - Register VerifiableAccreditationToAccredit into the Trusted Issuers Registry
18
- # - Register VerifiableAccreditationToAccredit into the Trusted Issuers Registry
19
- # - Issue VerifiableAuthorisationToOnboard for Conformance Issuer's sub-account DID
20
- # - Issue VerifiableAuthorisationToOnboard for Conformance Issuer's sub-account DID
21
- # - Validate the issuance was correct
22
- # - Issue VerifiableAccreditationToAttest for sub-account DID
23
- # - Issue VerifiableAccreditationToAttest for sub-account DID
24
- # - Validate the issuance was correct
25
- # - Issue VerifiableAccreditationToAccredit for sub-account DID
26
- # - Issue VerifiableAccreditationToAccredit for sub-account DID
1
+ # request VerifiableAccreditationToAccredit (TAO)
2
+ vcTAO: conformance getCredential tao
3
+
4
+ # register the credential for TAO
5
+ t: authorisation auth tir_write_presentation ES256
6
+ using token t.access_token
7
+ tir setAttributeData myIssuer.did vcTAO.reservedAttributeId vcTAO.vc
8
+ set vcTAO.url tirUrl /issuers/ myIssuer.did /attributes/ vcTAO.reservedAttributeId
9
+ set user.accreditationUrl vcTAO.url
10
+ conformance clientMockInitiate
11
+
12
+ # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
13
+ # and validate the following tests:
14
+ #
15
+ # - Request VerifiableAccreditationToAccredit
16
+ # - Request VerifiableAccreditationToAccredit
17
+ # - Register VerifiableAccreditationToAccredit into the Trusted Issuers Registry
18
+ # - Register VerifiableAccreditationToAccredit into the Trusted Issuers Registry
19
+ # - Issue VerifiableAuthorisationToOnboard for Conformance Issuer's sub-account DID
20
+ # - Issue VerifiableAuthorisationToOnboard for Conformance Issuer's sub-account DID
21
+ # - Validate the issuance was correct
22
+ # - Issue VerifiableAccreditationToAttest for sub-account DID
23
+ # - Issue VerifiableAccreditationToAttest for sub-account DID
24
+ # - Validate the issuance was correct
25
+ # - Issue VerifiableAccreditationToAccredit for sub-account DID
26
+ # - Issue VerifiableAccreditationToAccredit for sub-account DID
27
27
  # - Validate the issuance was correct
@@ -1,13 +1,13 @@
1
- # revoke credential issued to subaccount
2
- subaccount: compute subaccountDid myIssuer.did
3
- attributes: tir get /issuers/ subaccount /attributes
4
- t: authorisation auth tir_write_presentation ES256
5
- using token t.access_token
6
- tir setAttributeMetadata subaccount attributes.items.0.id revoked myIssuer.did vcTAO.reservedAttributeId
7
- tir setAttributeMetadata subaccount attributes.items.1.id revoked myIssuer.did vcTAO.reservedAttributeId
8
-
9
- # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
10
- # and validate the following tests:
11
- #
12
- # - Revoke accreditations from sub-account DID
1
+ # revoke credential issued to subaccount
2
+ subaccount: compute subaccountDid myIssuer.did
3
+ attributes: tir get /issuers/ subaccount /attributes
4
+ t: authorisation auth tir_write_presentation ES256
5
+ using token t.access_token
6
+ tir setAttributeMetadata subaccount attributes.items.0.id revoked myIssuer.did vcTAO.reservedAttributeId
7
+ tir setAttributeMetadata subaccount attributes.items.1.id revoked myIssuer.did vcTAO.reservedAttributeId
8
+
9
+ # Go to https://hub-test.ebsi.eu/wallet-conformance/accredit-authorise/flow
10
+ # and validate the following tests:
11
+ #
12
+ # - Revoke accreditations from sub-account DID
13
13
  # - Revoke accreditations from sub-account DID