@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.
- package/LICENSE +189 -189
- package/bin/cli.js +0 -0
- package/dist/abi/pilot/DidRegistryV4.js +942 -0
- package/dist/abi/pilot/DidRegistryV4.js.map +1 -0
- package/dist/abi/pilot/TimestampV3.js +995 -0
- package/dist/abi/pilot/TimestampV3.js.map +1 -0
- package/dist/abi/pilot/TirV4.js +710 -0
- package/dist/abi/pilot/TirV4.js.map +1 -0
- package/dist/abi/pilot/TprV3.js +707 -0
- package/dist/abi/pilot/TprV3.js.map +1 -0
- package/dist/abi/pilot/TsrV3.js +571 -0
- package/dist/abi/pilot/TsrV3.js.map +1 -0
- package/dist/abi/test/DidRegistry.js +1082 -0
- package/dist/abi/test/DidRegistry.js.map +1 -0
- package/dist/abi/test/DidRegistryV4.js +960 -0
- package/dist/abi/test/DidRegistryV4.js.map +1 -0
- package/dist/abi/test/{TarV3.js → SchemaSCRegistry.js} +319 -454
- package/dist/abi/test/SchemaSCRegistry.js.map +1 -0
- package/dist/abi/{pilot/TarV3.js → test/Timestamp.js} +450 -466
- package/dist/abi/test/Timestamp.js.map +1 -0
- package/dist/abi/test/TimestampV3.js +995 -0
- package/dist/abi/test/TimestampV3.js.map +1 -0
- package/dist/abi/test/Tir.js +897 -0
- package/dist/abi/test/Tir.js.map +1 -0
- package/dist/abi/test/TirV4.js +710 -0
- package/dist/abi/test/TirV4.js.map +1 -0
- package/dist/abi/test/Tpr.js +1268 -0
- package/dist/abi/test/Tpr.js.map +1 -0
- package/dist/abi/test/TprV3.js +707 -0
- package/dist/abi/test/TprV3.js.map +1 -0
- package/dist/abi/test/TsrV3.js +571 -0
- package/dist/abi/test/TsrV3.js.map +1 -0
- package/dist/app.js +70 -57
- package/dist/app.js.map +1 -1
- package/dist/buildParam/didV4.js +390 -0
- package/dist/buildParam/didV4.js.map +1 -0
- package/dist/buildParam/index.js +43 -20
- package/dist/buildParam/index.js.map +1 -1
- package/dist/buildParam/timestampV3.js +317 -0
- package/dist/buildParam/timestampV3.js.map +1 -0
- package/dist/buildParam/tirV4.js +119 -0
- package/dist/buildParam/tirV4.js.map +1 -0
- package/dist/buildParam/tntV2.js +181 -0
- package/dist/buildParam/tntV2.js.map +1 -0
- package/dist/buildParam/tprV3.js +82 -0
- package/dist/buildParam/tprV3.js.map +1 -0
- package/dist/buildParam/tsrV3.js +110 -0
- package/dist/buildParam/tsrV3.js.map +1 -0
- package/dist/commands/authorisation-v4.js +3 -127
- package/dist/commands/authorisation-v4.js.map +1 -1
- package/dist/commands/authorisation-v5.js +116 -0
- package/dist/commands/authorisation-v5.js.map +1 -0
- package/dist/commands/compute.js +122 -53
- package/dist/commands/compute.js.map +1 -1
- package/dist/commands/conformance-v3.js +1 -2
- package/dist/commands/conformance-v3.js.map +1 -1
- package/dist/commands/ledger-v4.js +16 -4
- package/dist/commands/ledger-v4.js.map +1 -1
- package/dist/commands/view.js +0 -8
- package/dist/commands/view.js.map +1 -1
- package/dist/config.js +93 -96
- package/dist/config.js.map +1 -1
- package/dist/programs/migrateDid.js +158 -0
- package/dist/programs/migrateDid.js.map +1 -0
- package/dist/programs/migrateTsr.js +158 -0
- package/dist/programs/migrateTsr.js.map +1 -0
- package/dist/scripts/accreditAndAuthorize/conformance/step1 +33 -34
- package/dist/scripts/accreditAndAuthorize/conformance/step2 +17 -17
- package/dist/scripts/accreditAndAuthorize/conformance/step3 +8 -8
- package/dist/scripts/accreditAndAuthorize/conformance/step4 +26 -26
- package/dist/scripts/accreditAndAuthorize/conformance/step5 +12 -12
- package/dist/scripts/accreditAndAuthorize/conformance/step6 +13 -13
- package/dist/scripts/accreditAndAuthorize/conformance/step7 +6 -6
- package/dist/scripts/accreditAndAuthorize/test/step1 +33 -34
- package/dist/scripts/accreditAndAuthorize/test/step2 +17 -17
- package/dist/scripts/accreditAndAuthorize/test/step3 +8 -8
- package/dist/scripts/accreditAndAuthorize/test/step4 +26 -26
- package/dist/scripts/accreditAndAuthorize/test/step5 +12 -12
- package/dist/scripts/accreditAndAuthorize/test/step6 +13 -13
- package/dist/scripts/accreditAndAuthorize/test/step7 +6 -6
- package/dist/scripts/accreditTI +20 -20
- package/dist/scripts/assets/CTRevocableCredential.json +29 -29
- package/dist/scripts/assets/CredentialToAttestVerifiableAuthorisationForTrustChain.json +28 -28
- package/dist/scripts/assets/VerifiableAccreditationToAccredit.json +35 -35
- package/dist/scripts/assets/VerifiableAccreditationToAttest.json +32 -32
- package/dist/scripts/assets/VerifiableAuthorisationForTrustChain.json +21 -21
- package/dist/scripts/assets/VerifiableAuthorisationToOnboard.json +23 -23
- package/dist/scripts/bootstrap/0a-loadTPROperator +5 -5
- package/dist/scripts/bootstrap/0b-loadAdmin +7 -8
- package/dist/scripts/bootstrap/1-populateTPR +89 -112
- package/dist/scripts/bootstrap/2-populateDID +6 -6
- package/dist/scripts/bootstrap/{4-populateTimestamp → 3-populateTimestamp} +8 -8
- package/dist/scripts/bootstrap/{5-populateTIR → 4-populateTIR} +8 -9
- package/dist/scripts/bootstrap/{6-populateTSR → 5-populateTSR} +81 -81
- package/dist/scripts/bootstrap/{7-setupConformanceIssuer → 6-setupConformanceIssuer} +34 -34
- package/dist/scripts/issueVcOnboard +9 -9
- package/dist/scripts/issueVcRootTAO +11 -11
- package/dist/scripts/issueVcTAO +12 -12
- package/dist/scripts/issueVcTI +12 -12
- package/dist/scripts/issue_CTRevocableCredential +11 -12
- package/dist/scripts/issue_SelfAttestationSupportOffice +9 -10
- package/dist/scripts/issue_VerifiableAccreditationToAccredit +10 -11
- package/dist/scripts/issue_VerifiableAccreditationToAttest +10 -11
- package/dist/scripts/issue_VerifiableAuthorisationForTrustChain +9 -10
- package/dist/scripts/issue_VerifiableAuthorisationToOnboard +8 -9
- package/dist/scripts/preregisterIssuer +6 -6
- package/dist/scripts/registerDidDocument_ES256K +5 -5
- package/dist/scripts/registerDidDocument_ES256K_ES256 +13 -13
- package/dist/scripts/registerIssuer +6 -6
- package/dist/scripts/updateVcRootTAO +10 -0
- package/dist/scripts/updateVcTAO +11 -0
- package/dist/scripts/updateVcTI +11 -0
- package/dist/scripts/wctv3/accreditAndAuthorize +106 -105
- package/dist/scripts/wctv3/holderWallet +39 -39
- package/dist/scripts/wctv3/issueToHolder +37 -37
- package/dist/scripts/wctv3/pda1 +3 -3
- package/dist/scripts/wctv3/verifier +7 -7
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/print.js +1 -5
- package/dist/utils/print.js.map +1 -1
- package/package.json +100 -103
- package/dist/abi/pilot/TarV3.js.map +0 -1
- package/dist/abi/test/TarV3.js.map +0 -1
- package/dist/buildParam/tarV3.js +0 -193
- package/dist/buildParam/tarV3.js.map +0 -1
- package/dist/programs/appRegistration.js +0 -69
- package/dist/programs/appRegistration.js.map +0 -1
- package/dist/scripts/bootstrap/3-populateTAR +0 -28
- 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
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
using user
|
|
6
|
-
using user
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
#
|
|
29
|
-
#
|
|
30
|
-
# -
|
|
31
|
-
#
|
|
32
|
-
#
|
|
33
|
-
#
|
|
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
|
|
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
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
using user
|
|
6
|
-
using user
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
#
|
|
27
|
-
#
|
|
28
|
-
#
|
|
29
|
-
#
|
|
30
|
-
# -
|
|
31
|
-
#
|
|
32
|
-
#
|
|
33
|
-
#
|
|
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
|
|
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
|