@trustvc/trustvc 0.0.0 → 1.0.0-alpha.2

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 (86) hide show
  1. package/LICENSE +201 -0
  2. package/dist/__tests__/fixtures/fixtures.d.mts +436 -0
  3. package/dist/__tests__/fixtures/fixtures.d.ts +436 -0
  4. package/dist/__tests__/fixtures/fixtures.js +715 -0
  5. package/dist/core/decrypt.d.mts +3 -0
  6. package/dist/core/decrypt.d.ts +3 -0
  7. package/dist/core/decrypt.js +23 -0
  8. package/dist/core/encrypt.d.mts +3 -0
  9. package/dist/core/encrypt.d.ts +3 -0
  10. package/dist/core/encrypt.js +23 -0
  11. package/dist/core/fragments/document-integrity/w3cSignatureIntegrity.d.mts +5 -0
  12. package/dist/core/fragments/document-integrity/w3cSignatureIntegrity.d.ts +5 -0
  13. package/dist/core/fragments/document-integrity/w3cSignatureIntegrity.js +48 -0
  14. package/dist/core/fragments/document-status/w3cCredentialStatus.d.mts +5 -0
  15. package/dist/core/fragments/document-status/w3cCredentialStatus.d.ts +5 -0
  16. package/dist/core/fragments/document-status/w3cCredentialStatus.js +54 -0
  17. package/dist/core/fragments/issuer-identity/w3cIssuerIdentity.d.mts +5 -0
  18. package/dist/core/fragments/issuer-identity/w3cIssuerIdentity.d.ts +5 -0
  19. package/dist/core/fragments/issuer-identity/w3cIssuerIdentity.js +74 -0
  20. package/dist/core/index.d.mts +5 -0
  21. package/dist/core/index.d.ts +5 -0
  22. package/dist/core/index.js +26 -0
  23. package/dist/core/verify.d.mts +6 -0
  24. package/dist/core/verify.d.ts +6 -0
  25. package/dist/core/verify.js +34 -0
  26. package/dist/esm/__tests__/fixtures/fixtures.js +701 -0
  27. package/dist/esm/core/decrypt.js +21 -0
  28. package/dist/esm/core/encrypt.js +21 -0
  29. package/dist/esm/core/fragments/document-integrity/w3cSignatureIntegrity.js +46 -0
  30. package/dist/esm/core/fragments/document-status/w3cCredentialStatus.js +52 -0
  31. package/dist/esm/core/fragments/issuer-identity/w3cIssuerIdentity.js +72 -0
  32. package/dist/esm/core/index.js +3 -0
  33. package/dist/esm/core/verify.js +32 -0
  34. package/dist/esm/index.js +3 -1
  35. package/dist/esm/open-attestation/index.js +4 -0
  36. package/dist/esm/open-attestation/sign.js +10 -0
  37. package/dist/esm/open-attestation/types.js +1 -0
  38. package/dist/esm/open-attestation/verify.js +13 -0
  39. package/dist/esm/open-attestation/wrap.js +10 -0
  40. package/dist/esm/utils/stringUtils.js +21 -0
  41. package/dist/esm/w3c/index.js +3 -0
  42. package/dist/esm/w3c/sign.js +9 -0
  43. package/dist/esm/w3c/types.js +2 -0
  44. package/dist/esm/w3c/verify.js +9 -0
  45. package/dist/index.d.mts +14 -2
  46. package/dist/index.d.ts +14 -2
  47. package/dist/index.js +24 -0
  48. package/dist/open-attestation/index.d.mts +6 -0
  49. package/dist/open-attestation/index.d.ts +6 -0
  50. package/dist/open-attestation/index.js +33 -0
  51. package/dist/open-attestation/sign.d.mts +7 -0
  52. package/dist/open-attestation/sign.d.ts +7 -0
  53. package/dist/open-attestation/sign.js +12 -0
  54. package/dist/open-attestation/types.d.mts +8 -0
  55. package/dist/open-attestation/types.d.ts +8 -0
  56. package/dist/open-attestation/types.js +18 -0
  57. package/dist/open-attestation/verify.d.mts +5 -0
  58. package/dist/open-attestation/verify.d.ts +5 -0
  59. package/dist/open-attestation/verify.js +15 -0
  60. package/dist/open-attestation/wrap.d.mts +5 -0
  61. package/dist/open-attestation/wrap.d.ts +5 -0
  62. package/dist/open-attestation/wrap.js +12 -0
  63. package/dist/utils/stringUtils.d.mts +5 -0
  64. package/dist/utils/stringUtils.d.ts +5 -0
  65. package/dist/utils/stringUtils.js +25 -0
  66. package/dist/w3c/index.d.mts +4 -0
  67. package/dist/w3c/index.d.ts +4 -0
  68. package/dist/w3c/index.js +26 -0
  69. package/dist/w3c/sign.d.mts +6 -0
  70. package/dist/w3c/sign.d.ts +6 -0
  71. package/dist/w3c/sign.js +11 -0
  72. package/dist/w3c/types.d.mts +2 -0
  73. package/dist/w3c/types.d.ts +2 -0
  74. package/dist/w3c/types.js +27 -0
  75. package/dist/w3c/verify.d.mts +5 -0
  76. package/dist/w3c/verify.d.ts +5 -0
  77. package/dist/w3c/verify.js +11 -0
  78. package/package.json +16 -2
  79. package/dist/.coverage/.tmp/coverage-0.json +0 -1
  80. package/dist/esm/.coverage/.tmp/coverage-0.json +0 -1
  81. package/dist/esm/node_modules/.vitest/vitest/results.json +0 -1
  82. package/dist/esm/types.js +0 -1
  83. package/dist/node_modules/.vitest/vitest/results.json +0 -1
  84. package/dist/types.d.mts +0 -2
  85. package/dist/types.d.ts +0 -2
  86. package/dist/types.js +0 -2
@@ -0,0 +1,701 @@
1
+ import { SchemaId } from '@govtechsg/open-attestation';
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
5
+ const ContextUrl = {
6
+ w3c_vc_v2: "https://www.w3.org/ns/credentials/v2",
7
+ oa_vc_v4: "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
8
+ };
9
+ const ISSUER_ID = "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90";
10
+ const SAMPLE_SIGNING_KEYS = {
11
+ public: `${ISSUER_ID}#controller`,
12
+ private: "0xcd27dc84c82c5814e7edac518edd5f263e7db7f25adb7a1afe13996a95583cf2"
13
+ };
14
+ const RAW_DOCUMENT_DID = freezeObject({
15
+ "@context": [ContextUrl.w3c_vc_v2, ContextUrl.oa_vc_v4],
16
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
17
+ validFrom: "2021-03-08T12:00:00+08:00",
18
+ name: "Republic of Singapore Driving Licence",
19
+ issuer: {
20
+ id: ISSUER_ID,
21
+ type: "OpenAttestationIssuer",
22
+ name: "Government Technology Agency of Singapore (GovTech)",
23
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
24
+ },
25
+ renderMethod: [
26
+ {
27
+ id: "https://demo-renderer.opencerts.io",
28
+ type: "OpenAttestationEmbeddedRenderer",
29
+ templateName: "GOVTECH_DEMO"
30
+ }
31
+ ],
32
+ credentialSubject: {
33
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
34
+ type: ["DriversLicense"],
35
+ name: "John Doe",
36
+ licenses: [
37
+ {
38
+ class: "3",
39
+ description: "Motor cars with unladen weight <= 3000kg",
40
+ effectiveDate: "2013-05-16T00:00:00+08:00"
41
+ },
42
+ {
43
+ class: "3A",
44
+ description: "Motor cars with unladen weight <= 3000kg",
45
+ effectiveDate: "2013-05-16T00:00:00+08:00"
46
+ }
47
+ ]
48
+ }
49
+ });
50
+ const RAW_DOCUMENT_DID_OSCP = freezeObject({
51
+ "@context": [ContextUrl.w3c_vc_v2, ContextUrl.oa_vc_v4],
52
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
53
+ validFrom: "2021-03-08T12:00:00+08:00",
54
+ name: "Republic of Singapore Driving Licence",
55
+ issuer: {
56
+ id: ISSUER_ID,
57
+ type: "OpenAttestationIssuer",
58
+ name: "Government Technology Agency of Singapore (GovTech)",
59
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
60
+ },
61
+ credentialStatus: {
62
+ id: "https://ocsp-sandbox.openattestation.com",
63
+ type: "OpenAttestationOcspResponder"
64
+ },
65
+ renderMethod: [
66
+ {
67
+ id: "https://demo-renderer.opencerts.io",
68
+ type: "OpenAttestationEmbeddedRenderer",
69
+ templateName: "GOVTECH_DEMO"
70
+ }
71
+ ],
72
+ credentialSubject: {
73
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
74
+ type: ["DriversLicense"],
75
+ name: "John Doe",
76
+ licenses: [
77
+ {
78
+ class: "3",
79
+ description: "Motor cars with unladen weight <= 3000kg",
80
+ effectiveDate: "2013-05-16T00:00:00+08:00"
81
+ },
82
+ {
83
+ class: "3A",
84
+ description: "Motor cars with unladen weight <= 3000kg",
85
+ effectiveDate: "2013-05-16T00:00:00+08:00"
86
+ }
87
+ ]
88
+ }
89
+ });
90
+ const BATCHED_RAW_DOCUMENTS_DID = freezeObject([
91
+ {
92
+ "@context": [ContextUrl.w3c_vc_v2, ContextUrl.oa_vc_v4],
93
+ name: "Republic of Singapore Driving Licence",
94
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
95
+ issuer: {
96
+ id: ISSUER_ID,
97
+ type: "OpenAttestationIssuer",
98
+ name: "Government Technology Agency of Singapore (GovTech)",
99
+ identityProof: {
100
+ identityProofType: "DNS-DID",
101
+ identifier: "example.openattestation.com"
102
+ }
103
+ },
104
+ validFrom: "2021-03-08T12:00:00+08:00",
105
+ credentialSubject: {
106
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
107
+ type: ["DriversLicense"],
108
+ name: "John Doe",
109
+ licenses: [
110
+ {
111
+ class: "3",
112
+ description: "Motor cars with unladen weight <= 3000kg",
113
+ effectiveDate: "2013-05-16T00:00:00+08:00"
114
+ },
115
+ {
116
+ class: "3A",
117
+ description: "Motor cars with unladen weight <= 3000kg",
118
+ effectiveDate: "2013-05-16T00:00:00+08:00"
119
+ }
120
+ ]
121
+ },
122
+ renderMethod: [
123
+ {
124
+ id: "https://demo-renderer.opencerts.io",
125
+ type: "OpenAttestationEmbeddedRenderer",
126
+ templateName: "GOVTECH_DEMO"
127
+ }
128
+ ]
129
+ },
130
+ {
131
+ "@context": [ContextUrl.w3c_vc_v2, ContextUrl.oa_vc_v4],
132
+ name: "Republic of Singapore Driving Licence",
133
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
134
+ issuer: {
135
+ id: ISSUER_ID,
136
+ type: "OpenAttestationIssuer",
137
+ name: "Government Technology Agency of Singapore (GovTech)",
138
+ identityProof: {
139
+ identityProofType: "DNS-DID",
140
+ identifier: "example.openattestation.com"
141
+ }
142
+ },
143
+ validFrom: "2021-03-08T12:00:00+08:00",
144
+ credentialSubject: {
145
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
146
+ type: ["DriversLicense"],
147
+ name: "Jane Doe",
148
+ licenses: [
149
+ {
150
+ class: "3000A",
151
+ description: "Motor spaceships with unladen weight <= 3000tonnes",
152
+ effectiveDate: "2013-05-16T00:00:00+08:00"
153
+ }
154
+ ]
155
+ },
156
+ renderMethod: [
157
+ {
158
+ id: "https://demo-renderer.opencerts.io",
159
+ type: "OpenAttestationEmbeddedRenderer",
160
+ templateName: "GOVTECH_DEMO"
161
+ }
162
+ ]
163
+ }
164
+ ]);
165
+ const WRAPPED_DOCUMENT_DID = freezeObject({
166
+ "@context": [
167
+ "https://www.w3.org/ns/credentials/v2",
168
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
169
+ ],
170
+ name: "Republic of Singapore Driving Licence",
171
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
172
+ issuer: {
173
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
174
+ type: "OpenAttestationIssuer",
175
+ name: "Government Technology Agency of Singapore (GovTech)",
176
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
177
+ },
178
+ validFrom: "2021-03-08T12:00:00+08:00",
179
+ credentialSubject: {
180
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
181
+ type: ["DriversLicense"],
182
+ name: "John Doe",
183
+ licenses: [
184
+ {
185
+ class: "3",
186
+ description: "Motor cars with unladen weight <= 3000kg",
187
+ effectiveDate: "2013-05-16T00:00:00+08:00"
188
+ },
189
+ {
190
+ class: "3A",
191
+ description: "Motor cars with unladen weight <= 3000kg",
192
+ effectiveDate: "2013-05-16T00:00:00+08:00"
193
+ }
194
+ ]
195
+ },
196
+ renderMethod: [
197
+ {
198
+ id: "https://demo-renderer.opencerts.io",
199
+ type: "OpenAttestationEmbeddedRenderer",
200
+ templateName: "GOVTECH_DEMO"
201
+ }
202
+ ],
203
+ proof: {
204
+ type: "OpenAttestationMerkleProofSignature2018",
205
+ proofPurpose: "assertionMethod",
206
+ targetHash: "0b1f90bc8e87cfce8ec49cea60d406291ad130ddedc26e866a8c4f2152747abc",
207
+ proofs: [],
208
+ merkleRoot: "0b1f90bc8e87cfce8ec49cea60d406291ad130ddedc26e866a8c4f2152747abc",
209
+ salts: "W3sidmFsdWUiOiJhOGEzMGE4ZTFjNWQ4ODk2NWI3NDZkZjBhYWYyMTMyN2Q4MDNkMzQ4ZThlOGRhMTlmNTNhMWU5ODFkOTFhMDQ0IiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6IjFmMzIwMzg4MjU3NTRkZTc1OGYwYmU2NjdiNjQ0ZjNjZGVkM2FlM2UwOGI0MTdhMmViZTljYmU1NmYyNGM0NTAiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiODQ0OTkwM2FhNDMxZDEzZTEzNTBiYjVhZTczMTM3OTRlMGQyMTMwNmM3NDA0YzI4NzJhY2Y3ZDY2NGIyMjNhZiIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImFkN2Y1Mjg0OTc1MGViNjZhNjJlZmFmYWUwYjQxNGEwZGQ5OGUwNGJkMmI5YzU2NjliYWM1YzRiNDNjMDk3MTMiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiJjY2I4ZDFkZDgyMDc2Y2EyOTQ5MWUxZTBjODAxOGM5MWY0Zjc5NGRiM2RkMDA1YmFjMGY4MzM1YmFmODFmZWRkIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiYmNlNzNhMjBlMDNiNmM0ZDM1M2VkY2IzMTM0NzZhOTZhNTRkMGNjYzVkNWQ1OWIzMjRhOWU1YTQ2NjQzZmFiNiIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiMjBhMDM0ZjcxMDliNDRmOGEyZTIxMWM1ZTE5YzQ2Nzk1NGY2OWU2NmQzOTZjZjFlYjk1NTViZDc2NjkyN2UyNSIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiIwNWVmYTdiNWM1MDFhZWIxNTE5NTE0MDczNzdmYjJmODc2MTk1ZTAzYzkwZjUzZTdhYWZjNGMzZmFhNDI1YjhhIiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjEzYzE3YjQ5ZTc2YjQ3NjJjZGRiYmRjYjFiZDU2ZmUyNDIyZDEwYmJkMmY2MjAzZGZiNzRkZGRlYjBiZWNkYTMiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiNjBmM2JiMTY1YjhlMzcxOGJhZjQ0ZjVlMTdkNDljY2Y4ZGE5MGViYTMxNjUwZDRjM2IzODlkNmFiZGFiNTViYiIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6ImY1YjFjYjc3ZTZmNDQwM2NmMmM4NDg1MGIwNTcyMGI5NTk5Yjk0NmUwMWI2MzcwODUzZWY0YzUyYmQwYTZmZjEiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6ImM3MWM3ZDZjYTdhMjY5OWVhZjdjOTgwYzlmMjM1MWY3NDc3ZDliZDFlNzJlNGY2NTIxZjZhMzI0ZWEzYjdmMWYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiMDdlODkzMTgyZGFjNjRjOWVkZGU4MjMwYzdjZTdmMWM2NTRmZjgxN2Y5OGIzZTkxMWU4ZTg1Yzc4ODY0MWZhZCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6ImU4YzdmMjQyYTI5YThmYjJiMjEyMjVhYzlmOTk5ZmVhOTNlNmRhYzc5YTNlYjQwYWRlMTc2ZGRmYzFjMmRlMTgiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiI5ZDNkMThlMTY0YTg3YmQ3MmFlNDczYTIzZjc5ZjBkNzU2NTFiZjExODViMmI0N2ZlYjhiOGFiNWU3YWY1YzUyIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6Ijk4MjIwZTE5NmU4YmE4NWI3MDc2YzdiMzE1MDBkOTU0Nzk1MTk5NDQ4YmM1Y2IyMzM0ZjNhYjU1OTA3NGNkNTMiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiNTNlOTdmNDBkZTExNDkxMjNlNmNlMmNhN2I0MzlhMzI3NzYxMGZkNmZmZTZlMTcwYjEwMjdlOWMzNThmYjg2MSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1swXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6IjA1OTQ1MWQzMWNlZjM5MDg1YWMxNGVkYjE1NjJjYzFkNTE0YmYzZWQ0N2I3YzBkNWM0MjdiYmM0NGNlOGU5YmIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMV0uY2xhc3MifSx7InZhbHVlIjoiN2E3YmUzMzMzNjI4MDAyNmVkN2NkZmFlZDkwZWI1Zjg0ZDZiMGVkZjdiNTkxZjk5MjQ3NmYzNDBjMWViZjUzYyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1sxXS5kZXNjcmlwdGlvbiJ9LHsidmFsdWUiOiJkNzMxMDA3NmM1NzZmNzU0MzcwNjQ5MTYxOTEyNWY0YmQ5NDNlMDEwNWM3ZDM1ZjZjNThjZTI3ZjcwMzNiNjliIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzFdLmVmZmVjdGl2ZURhdGUifSx7InZhbHVlIjoiYTk3MzFhMzFkMzkzNmJmNjAyNzMxNTAwYjIzMjY3ZTA2MzcxOGEzZjJkMGFiZTI4MDhlOGJiMzQxODQxYWZlZCIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0uaWQifSx7InZhbHVlIjoiNDg4MjRkYjdjY2U3ZTY5MGQ3NjgyMGM1N2M1OWNlZGI5ZDZiNGVjMDlhMDY0ZDFmYTJhMmI0OGZhYzJlN2FhZCIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udHlwZSJ9LHsidmFsdWUiOiJjMzY1M2FkNzg4MzhkNDhmM2Q1ZGNkNmE2OGRmNGU0MmMxMTM1ZmY4MzhiYzI5MTY4NDQzMDdjZDljZmM4ZWY4IiwicGF0aCI6InJlbmRlck1ldGhvZFswXS50ZW1wbGF0ZU5hbWUifV0=",
210
+ privacy: { obfuscated: [] }
211
+ }
212
+ });
213
+ const WRAPPED_DOCUMENT_DID_OSCP = freezeObject({
214
+ "@context": [
215
+ "https://www.w3.org/ns/credentials/v2",
216
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
217
+ ],
218
+ name: "Republic of Singapore Driving Licence",
219
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
220
+ issuer: {
221
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
222
+ type: "OpenAttestationIssuer",
223
+ name: "Government Technology Agency of Singapore (GovTech)",
224
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
225
+ },
226
+ validFrom: "2021-03-08T12:00:00+08:00",
227
+ credentialSubject: {
228
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
229
+ type: ["DriversLicense"],
230
+ name: "John Doe",
231
+ licenses: [
232
+ {
233
+ class: "3",
234
+ description: "Motor cars with unladen weight <= 3000kg",
235
+ effectiveDate: "2013-05-16T00:00:00+08:00"
236
+ },
237
+ {
238
+ class: "3A",
239
+ description: "Motor cars with unladen weight <= 3000kg",
240
+ effectiveDate: "2013-05-16T00:00:00+08:00"
241
+ }
242
+ ]
243
+ },
244
+ credentialStatus: {
245
+ id: "https://ocsp-sandbox.openattestation.com",
246
+ type: "OpenAttestationOcspResponder"
247
+ },
248
+ renderMethod: [
249
+ {
250
+ id: "https://demo-renderer.opencerts.io",
251
+ type: "OpenAttestationEmbeddedRenderer",
252
+ templateName: "GOVTECH_DEMO"
253
+ }
254
+ ],
255
+ proof: {
256
+ type: "OpenAttestationMerkleProofSignature2018",
257
+ proofPurpose: "assertionMethod",
258
+ targetHash: "0f60b3ef4b9b826de4753c4e68bb5ac9fdd2496549f901331a9d07464469366c",
259
+ proofs: [],
260
+ merkleRoot: "0f60b3ef4b9b826de4753c4e68bb5ac9fdd2496549f901331a9d07464469366c",
261
+ salts: "W3sidmFsdWUiOiI3N2RhNDUzOWYwY2M3ZmVmODg0ZmU0MTVkNzE2ZTRjODc5N2NiMDMyZGJlZDQzOWM2ZWViOTU2NmJlZDk1MmI0IiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6ImY2NWZhZWI4MzVmZTI4MzYyMDBhZGUyYTUzZjM4MzJkMGE2YTVjZjZiZjc2OGRlNmMxYjE3OTQ1OGIwMGI2MDIiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiMjVkOGNmNDY3MTAzMmMzMTUzZDdlY2I2OTQ1OGU2MzNkZWE0YmYwYTc0MGI4YzZiMDFlYjE5M2I4NzE2ZDYzYSIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImQxNjEyODkzZGI2YjM3MDY0MjgzM2FkNjYwYjQ5N2ZiMTY0ZWZlZTZkNWY0ZDhhMjg0YjkxNWNkNGNhNzJkM2YiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiJjZjkzMTg5ZTBjNTE0ZGUwMWJlOTI5ZWRhNjk4ZTdlOWQ5ZmRiMzJlOTVjZTdlOTM1NGM4OWJlYjc3Mzg1NjNkIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiYzgzNzJlYmU2NWJiMzdhOTI0YTljMmZiNGE3Yzc4MmQxMzI1ZjE0NTY3OTFjODJmZmI4NGUwY2FmYWFlMDg2OCIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiMzg1MzJhNzJiMDA1Njc4Yjc2M2Y0NTdlY2IxZTI1NzhhMDVkYzQ5ZjdlZDhhYzk5N2EyNDJjZWNjNGY3MDcyMiIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiIzMTQ1OWY5ZmUyNTdkMDVlZTkwNjg4NmYxYmU3ZjBmOTU4YTUxZGM3YTJlNTY5N2EyOGNjZjI3YWVhOGRmNDg4IiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6ImVkOTQ0Mzk0ZmQ5YzY3OWI5MDg0MjNmNjJlZWU5M2YxODJmNjdmZmIxM2MxNGM2ODJjZDMyZmNkMTk3MmVlN2IiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiYTBjODBhOTI4ZGI3MDExYTI0ODIzYzUzZGJlNjNmNGU5ZTc3M2IyMjkyZWNjOThkMWFiNjZiMjVjYTBmYzY3YiIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6Ijk4Y2JlZjE3NDZkZjM1MmQ5Njg4NmYyYWQ1N2NmOWI5ODg2ZWJhZTJlYzA1ZTM4YWE1YTc5ZTM2YTE2OWY1NGMiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6IjlhYzhkMzA5ZGEyZGYzNWNhN2RkNDFkYTc3NzRkYzFhNWY4NTE3NmFiNGU3ZGY1MDgzNzBiNDNlNmU2Y2FhNGEiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiZjkwYWU2YWVjNzlhODg0OTJkYzFlN2IwYThmNDExYWEwN2Y2YjY5NGMwZjQzNjhhZTMzZWVlNTllYzVhZDM2NyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6IjBhMWNhMTQwMmI4MDEwNWQzNGY4NmVjZjNjMDgxYTE3ZTVlODhiY2UwN2ZjNzgyMGRkYzdmZDY1OTA5ZDcwM2MiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiI2NTk1NGE0ZTNiZGRlNmQ5NGEyYjA4OTQ3YTU3YTdkOWEzYzAwNWEyN2ZmNzA0ZmNjMDI2MDI0MmNkNjczNGI1IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6Ijg3ZDc4NzBjYmVkOGZkYzIyNjA4MWMyZmY5ZmZmNmU3ZmJiZWYyMDUyMDg5YjU1MDg4MDg4MzliNWZlMWNlMGUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiMTgwMzBkZjQ5MzRhMDhlYmM3YTEwNjZlOWRlODZhMDAxYmZhNjcyNWI2Y2FiYjA5NGNmZWI5NzE4YTU3ZDViNiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1swXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6ImUyNWQ1MzFmMTIwNzM0ZWY2ZmY1MTU3MjViYjM5MGJkMjU4MTE2NWM4YTMxZTViMTRmNWUzZTMzM2I2OGZmNWUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMV0uY2xhc3MifSx7InZhbHVlIjoiMTNiMjYyN2E4Yzk0YzkwYWI0M2JjZGExNDNkNTI2MDM0YWM0ZDVkNThhMTc2OTIzMDcwZTAzMGM2MTkwOWVlYiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1sxXS5kZXNjcmlwdGlvbiJ9LHsidmFsdWUiOiI2YjIzZWZkODVhZjZjZWZkMTBjM2EwNzczNjdlMjE4Mzc1MTlkN2ExYTBhMzVmODFkZDBhNWYzNTA0MTg4NjE4IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzFdLmVmZmVjdGl2ZURhdGUifSx7InZhbHVlIjoiMTI4MzY5ZDk5NTU2ZGYwOWMwOGE4NmZkODU4NmJlMWJlNWVjODcxYjY3NGQwNzJmN2U4ODdmNWZiYjViNjE5NiIsInBhdGgiOiJjcmVkZW50aWFsU3RhdHVzLmlkIn0seyJ2YWx1ZSI6ImYzNTBjOGYwNjlkNmIyM2M3NmE0MjQ3ZTIyOWRjOGM1MDVjMTFhZTNkNjFmYjE3ZDJlNDIxZWU1NzY4OGQ4YTMiLCJwYXRoIjoiY3JlZGVudGlhbFN0YXR1cy50eXBlIn0seyJ2YWx1ZSI6IjJkMTUzYzc1OGNiMTY1YjM1MTFhNjA4MjBkMzNiY2ZmYTViNmE3OWFiNWI5ZDNlMTA0NGZiNTk0NjNhNzM3MDUiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLmlkIn0seyJ2YWx1ZSI6ImJmOGJlY2M2Yjg1MDJkODBiNTg4ZmRmZmJhY2JmMmU1NTIzNjE1MzBjYmUxMGI4NzM5OTQ0NWYwZmZkYTkwOTAiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLnR5cGUifSx7InZhbHVlIjoiOTRmYmI5NWE1ZmNhZjU0YTcwYTAxODZiNjg1OWM5YmY5MzYzNWU0OTQ0N2U3ZmMxYWIyY2RmNTM5ZDllZjNiNyIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udGVtcGxhdGVOYW1lIn1d",
262
+ privacy: { obfuscated: [] }
263
+ }
264
+ });
265
+ const BATCHED_WRAPPED_DOCUMENTS_DID = freezeObject([
266
+ {
267
+ "@context": [
268
+ "https://www.w3.org/ns/credentials/v2",
269
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
270
+ ],
271
+ name: "Republic of Singapore Driving Licence",
272
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
273
+ issuer: {
274
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
275
+ type: "OpenAttestationIssuer",
276
+ name: "Government Technology Agency of Singapore (GovTech)",
277
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
278
+ },
279
+ validFrom: "2021-03-08T12:00:00+08:00",
280
+ credentialSubject: {
281
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
282
+ type: ["DriversLicense"],
283
+ name: "John Doe",
284
+ licenses: [
285
+ {
286
+ class: "3",
287
+ description: "Motor cars with unladen weight <= 3000kg",
288
+ effectiveDate: "2013-05-16T00:00:00+08:00"
289
+ },
290
+ {
291
+ class: "3A",
292
+ description: "Motor cars with unladen weight <= 3000kg",
293
+ effectiveDate: "2013-05-16T00:00:00+08:00"
294
+ }
295
+ ]
296
+ },
297
+ renderMethod: [
298
+ {
299
+ id: "https://demo-renderer.opencerts.io",
300
+ type: "OpenAttestationEmbeddedRenderer",
301
+ templateName: "GOVTECH_DEMO"
302
+ }
303
+ ],
304
+ proof: {
305
+ type: "OpenAttestationMerkleProofSignature2018",
306
+ proofPurpose: "assertionMethod",
307
+ targetHash: "d744b98a001ed34fa133762206e312b5105478f0cc25bf86c3a2a35866597264",
308
+ proofs: ["63edb5b6919143505c522fc96d31bac58ce7b4aa57d366d2df2026c5bb425a64"],
309
+ merkleRoot: "aad2420d57f9250aaa4933bc1dfe540575f3b233475c51f173c9299b4a97853b",
310
+ salts: "W3sidmFsdWUiOiI5YjBhYWZjZDY0YjZmOTMzZDc3ZDUwY2ExZWMzZTYwYzlkYTYzMjk0Y2NlZWRiYTU3ZDMzZjlkYzQ5MjMyMjA2IiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6Ijg0Nzg2MDg5MDNmYjQ0ODQ3NTFhYWM3MGMxZmZjN2E0YTI0OTAyODA5ZTQ3MTI1Y2Q5YWE5ZDMwMTllMjI2MmUiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiZTQ1YjRjYWU1NmI5ZDI5M2M5NDZkM2RhY2U1ZjE0YWNiZmYwYWZkN2QzOWM1MmIxZWY5MTc2MzFlMGFmYzRmNCIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImJkZDczNmU0MDU2YzUyYTYxMTIzMzZiYjNiZGQ3ZTNjMjQ1MTEwZjk3ZTg4Y2NlYjZlMmNlN2M4NTM2MDIzMDYiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiJkOGQyYjcwMTExYTYwNzQyYjVjZTkzMGFiYWNhYTk0NDQ2MzJiMjk5ZjNkNzYyZjI5N2Q0ZmY1MjViMTYzMTVlIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiMTMxOTUwZDhhNGQ1ZGM1Y2ZkYjdkODAwZWQzNTBiNmRkZTYwZWI2ZDFkNjBiODM0YmE4YmFmNDc1ODk5ZWMxZCIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiYmI1ZWM1YjkyNzRhNjg2Yjg4YzVjOTA5MTYwZDU0ZDkxMjM5MWE2ZTg4NzAwMTZhYzcyNGM1NmMyMDlkMzI4OSIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiIyYWE0NDFkNzMxZDllYjdiYTU5YTRjYTljZWYzYmMxOGQyYzgyMzE0NmJjY2Y1MjIxYWU0YWRlNzdkYzM3MmU4IiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjNhZDllMzc0ZTdhZjYxYWViNWE5ZDNiNzg4M2VlM2YwYjg4NWMyZjk4ZjZkOTM0ZGY4MzkxOGY3M2E1OGYzZDQiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiYjM4NDdiYjJiZDE2OTM5YTRhNDM4YjRlNjlhNGFhM2NiNjVlNTdjYTlmNzc5ZDIxN2NhODIwM2Y4MmNhMmUwZSIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6IjEwYWEyYTVhMmQyMmZlNjliZWJlNGQxMmY4ZmM5ZDViNTk1YTRjYzk2OTE0OGFjZjIzZTgyZmMyZGVkYWMyOGIiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6ImM2ZDVkY2NmNmFjYmQyODhmOTc0NjhhMWE3M2YyMGE2YTQzZWZjZTdiYTI0YzA0NTg1MGQ2ZThhNmVhMDU0MzYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiZTA5ZmUyYWQxYjgwYTBlYjZkMWQzMzAwNTBlYTU1ZmRmNjMzMWVhZDFjNTFhYTQwOGNlODliOTIzZTdmMTI0MCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6IjAxZDUyNTMwM2ZmODk0NGExOGVmMjgzMjczNmNmYjdkZmRlNTc2ZDY2NDQzNTBmOTE4OWEyNzZkYTE2YjRkNmIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiIzYWM2NDgzOWZiMDkwMjY0YjFmZjY0NGQ3MDIwODY5YmZiNGFmZDhiYjNjNzdjZWU1ZTc4NWIxZDU2ODBkOGMwIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6IjBkZWY1MWE2ZmI2MTc4NjI2ZThlYzNiMGQ5MzZkZjY1MTM3MjhiMDM4ZGVhZGFlOTRlNWZkYjk4Nzg0ZDYzZWQiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiZTQwNTZkNmI4ODdmMWY2ZDA3ZjdhMWU5MmYxOTZiYWM3NzlhYThmOWE3MzAwM2NlOWIwYjEyNjNhNWYxZWE2MiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1swXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6ImFlMmYzYzg0OTBkMDI2ZWQ0MDdhZDAzOGY5ZWY0NGU1MzM5M2YyN2Q2MmUwMzQ1YTg0OGQ1MGI5YmNmYjgxOTIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMV0uY2xhc3MifSx7InZhbHVlIjoiODQ0OGYwYWU3ZDU1NDE1M2NkY2I1YTllOThjNDIyZWRhYzAxNjhiZjQ4YmI5ZDAzMjU2NWMyNjJjYzg1MTVlOSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1sxXS5kZXNjcmlwdGlvbiJ9LHsidmFsdWUiOiIzZDM2MTFmYTQ2NDExNGI5ZGEzMDQ4MzQ3Y2Y1MDBlNmI1NmFiZjdhOTY2MGY3NTg4ZWFlNzVkOTI5ODJiYmY2IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzFdLmVmZmVjdGl2ZURhdGUifSx7InZhbHVlIjoiMzMzMGY1Yzc3MDE0NzE1NGI3NGE4ZWY5ZjAxZDE0YjEwZGU0NGMzY2FlZWY2M2Q2YjkyMDdlYjJiZjEyMGI2MiIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0uaWQifSx7InZhbHVlIjoiYzgwZDM4MTY4ZDcyMDkxNWM4YzJmZGFmNmYxMDE0MmRlZWJjOTM0MDUyZjNiNTgyMmE2YjM3ZWNlYTBmY2JmYSIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udHlwZSJ9LHsidmFsdWUiOiIyYjllOGFlZGJlNTkwMTRmMTQ4M2RjYjg2NDgwZDljM2M0ZmFlNDY1ODQyZmZlY2I5YjhiNjAwMTc5ZjE3MDQ0IiwicGF0aCI6InJlbmRlck1ldGhvZFswXS50ZW1wbGF0ZU5hbWUifV0=",
311
+ privacy: { obfuscated: [] }
312
+ }
313
+ },
314
+ {
315
+ "@context": [
316
+ "https://www.w3.org/ns/credentials/v2",
317
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
318
+ ],
319
+ name: "Republic of Singapore Driving Licence",
320
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
321
+ issuer: {
322
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
323
+ type: "OpenAttestationIssuer",
324
+ name: "Government Technology Agency of Singapore (GovTech)",
325
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
326
+ },
327
+ validFrom: "2021-03-08T12:00:00+08:00",
328
+ credentialSubject: {
329
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
330
+ type: ["DriversLicense"],
331
+ name: "Jane Doe",
332
+ licenses: [
333
+ {
334
+ class: "3000A",
335
+ description: "Motor spaceships with unladen weight <= 3000tonnes",
336
+ effectiveDate: "2013-05-16T00:00:00+08:00"
337
+ }
338
+ ]
339
+ },
340
+ renderMethod: [
341
+ {
342
+ id: "https://demo-renderer.opencerts.io",
343
+ type: "OpenAttestationEmbeddedRenderer",
344
+ templateName: "GOVTECH_DEMO"
345
+ }
346
+ ],
347
+ proof: {
348
+ type: "OpenAttestationMerkleProofSignature2018",
349
+ proofPurpose: "assertionMethod",
350
+ targetHash: "63edb5b6919143505c522fc96d31bac58ce7b4aa57d366d2df2026c5bb425a64",
351
+ proofs: ["d744b98a001ed34fa133762206e312b5105478f0cc25bf86c3a2a35866597264"],
352
+ merkleRoot: "aad2420d57f9250aaa4933bc1dfe540575f3b233475c51f173c9299b4a97853b",
353
+ salts: "W3sidmFsdWUiOiJhN2EyZjYyMmMxMjdiMTZlMzIwYjA2MTA1YzZkN2FmMmVlNjZjYjBlNDQ1ZTdhNzA0NzExMzQ0OTZjZDM5YmVlIiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6Ijg4NmI1OGExZTI2Yzg5NjYxMjI4MDBiZGY2NTMxNDQwMmZiNmJkYjkxNGNlMDQzOWJiNWQ3ODM4OWI5N2NlNjciLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiOTk0MjRlMmY1YWE0NjVlNTM3YWE4NDY2ODM2OGQ3YTJjYTFmODg5YTlmOWFlNDk1YzA1ZDM5ZTMzNzY0ZmI3YyIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImY1N2ViM2M2ODQ5NjRiMWQ2ZDZjNWQ1MTY1NjI1MjY4MTUwZjg3OTM3YWQ0NjYzZGQyYjhlZWUyNWFjYTBmMmYiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiIyZGQ4Yzk5N2EwYTliODFlNDgyM2IxMDc4MWEwODk0MTRiMTFmODk4MjNjMTdkNWUzYmM1OGIzZTYyNGY5MTBjIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiY2ExYmVlODNkMjQwNGVjMGQ5NjQwM2Y5ZDQ0N2RiMWY3NGRlMmJlMTZhYzdiNGUwYWZmNzdhYjU4ZDFmZmE2MyIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiY2RjMjc3MjQ2ZTEyN2I5M2MxYzczN2VlNWJmNDk5ZTI1Y2MyNTYxY2VmOTAyNWQ1NzEyNWJhNjc1NzQxOGJhYiIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiI0N2U1ZjdkNWQxMzEwZDEwYTk3OGUxMzM1Yjc1NjNkZTMyYTEwMjRmOTdmYjU0YWZmM2JiYjQ3ZDgzNmViNmNlIiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjlhY2I1ZDc1ZmIxMmEyMTg1ODkxNjUzODViN2MxMmQzYmM1ZGY3MzJlMmRjNzg5MmRjZDQ3NDRjNzhhNDRmN2EiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiZjM0OGZjYTU1MTg0MzA0Y2E3NDMxMzBjYzc5N2IwZGE4MjVmZTZiMjkxZTZjNTczMGNmOGU5OTNhZmI2OTRiNyIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6IjE1YmRjOGFiN2MyOTZiZDc1OGI0OGU1NTcwMDQ1ZGFiNjI3NmE1MWU4MGIxOGQwODM1ZjBkMDkxZTU2M2Y5MzgiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6IjA2MGVkMTMxMTE3YzM1NjhkY2VmOTRhMzE4ZTc0ZGJlYzIyNTlhZjYwNDI2YTdkZjU0ODQ2OTY4YWU2MTU0YWIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiNDcyZjgwYzY0OGMxOWNhNTUxNDIxZDVlYmUyYzBmZDA2ZDlkNDFjMTdkZGJjNzUyYTdlODM0MTJiYTIwMWQyNSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6IjBkOWI4NTVkNzk4NWI4YTBkMmM3NGI4NmNkMWRhOGZkNTgwZDMzYzRiNzMxMzcxM2FhMDk5NWI4ODFhOTg4MTUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiJmMDc1YmIyZGE3Yzc1YjE5OWJiYzYyYmNmOTVhNjcxNDFhM2EwYWU3MTRjYzU5NGI3MDFmYmQ2OWZlY2NhNTljIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6ImMxOWMzODk0NWVmODc5MzhhNjJmYjM4NGY3ODY3ODIzMzA2NjU5YTEwYzVjNGRhZGQxNjI5MzcyMDIyYWMxZjUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiOGZlNWM5ZDQ5ZGY0ZmNlMGY5OWIyZmM2ODNkYWE3ZTE2MmRmMDZkMTYzODE4MGViOWVjYWEzMDY3Y2I2ODg1NyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1swXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6IjFmNWM5ZWJmZjQ5ZDQzMDc3M2FkMGJiMjQ2NTExNDg4MTM3NTk3N2I3Y2I2OThmNzkxNjg4ODQ0ZjRiMWFmNjkiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLmlkIn0seyJ2YWx1ZSI6IjQ2YzhjOGEyMWU0OGQzZjlhZGM3OTBmMDRjNDI0NzkwZTRmZmEwMWE5YjMwNTBlNWVlMGJlMWJhZmQzNTIxZDMiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLnR5cGUifSx7InZhbHVlIjoiY2U5OGFhMDI3NDg1N2RlNWY0YTRhYjI4ZmVjMDBmZjlmMTY2YzJiYWNjODMyYzkwNDlmNTliZTc3YTUwNmQ1YiIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udGVtcGxhdGVOYW1lIn1d",
354
+ privacy: { obfuscated: [] }
355
+ }
356
+ }
357
+ ]);
358
+ const SIGNED_WRAPPED_DOCUMENT_DID = freezeObject({
359
+ "@context": [
360
+ "https://www.w3.org/ns/credentials/v2",
361
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
362
+ ],
363
+ name: "Republic of Singapore Driving Licence",
364
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
365
+ issuer: {
366
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
367
+ type: "OpenAttestationIssuer",
368
+ name: "Government Technology Agency of Singapore (GovTech)",
369
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
370
+ },
371
+ validFrom: "2021-03-08T12:00:00+08:00",
372
+ credentialSubject: {
373
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
374
+ type: ["DriversLicense"],
375
+ name: "John Doe",
376
+ licenses: [
377
+ {
378
+ class: "3",
379
+ description: "Motor cars with unladen weight <= 3000kg",
380
+ effectiveDate: "2013-05-16T00:00:00+08:00"
381
+ },
382
+ {
383
+ class: "3A",
384
+ description: "Motor cars with unladen weight <= 3000kg",
385
+ effectiveDate: "2013-05-16T00:00:00+08:00"
386
+ }
387
+ ]
388
+ },
389
+ renderMethod: [
390
+ {
391
+ id: "https://demo-renderer.opencerts.io",
392
+ type: "OpenAttestationEmbeddedRenderer",
393
+ templateName: "GOVTECH_DEMO"
394
+ }
395
+ ],
396
+ proof: {
397
+ type: "OpenAttestationMerkleProofSignature2018",
398
+ proofPurpose: "assertionMethod",
399
+ targetHash: "0b1f90bc8e87cfce8ec49cea60d406291ad130ddedc26e866a8c4f2152747abc",
400
+ proofs: [],
401
+ merkleRoot: "0b1f90bc8e87cfce8ec49cea60d406291ad130ddedc26e866a8c4f2152747abc",
402
+ salts: "W3sidmFsdWUiOiJhOGEzMGE4ZTFjNWQ4ODk2NWI3NDZkZjBhYWYyMTMyN2Q4MDNkMzQ4ZThlOGRhMTlmNTNhMWU5ODFkOTFhMDQ0IiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6IjFmMzIwMzg4MjU3NTRkZTc1OGYwYmU2NjdiNjQ0ZjNjZGVkM2FlM2UwOGI0MTdhMmViZTljYmU1NmYyNGM0NTAiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiODQ0OTkwM2FhNDMxZDEzZTEzNTBiYjVhZTczMTM3OTRlMGQyMTMwNmM3NDA0YzI4NzJhY2Y3ZDY2NGIyMjNhZiIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImFkN2Y1Mjg0OTc1MGViNjZhNjJlZmFmYWUwYjQxNGEwZGQ5OGUwNGJkMmI5YzU2NjliYWM1YzRiNDNjMDk3MTMiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiJjY2I4ZDFkZDgyMDc2Y2EyOTQ5MWUxZTBjODAxOGM5MWY0Zjc5NGRiM2RkMDA1YmFjMGY4MzM1YmFmODFmZWRkIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiYmNlNzNhMjBlMDNiNmM0ZDM1M2VkY2IzMTM0NzZhOTZhNTRkMGNjYzVkNWQ1OWIzMjRhOWU1YTQ2NjQzZmFiNiIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiMjBhMDM0ZjcxMDliNDRmOGEyZTIxMWM1ZTE5YzQ2Nzk1NGY2OWU2NmQzOTZjZjFlYjk1NTViZDc2NjkyN2UyNSIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiIwNWVmYTdiNWM1MDFhZWIxNTE5NTE0MDczNzdmYjJmODc2MTk1ZTAzYzkwZjUzZTdhYWZjNGMzZmFhNDI1YjhhIiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjEzYzE3YjQ5ZTc2YjQ3NjJjZGRiYmRjYjFiZDU2ZmUyNDIyZDEwYmJkMmY2MjAzZGZiNzRkZGRlYjBiZWNkYTMiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiNjBmM2JiMTY1YjhlMzcxOGJhZjQ0ZjVlMTdkNDljY2Y4ZGE5MGViYTMxNjUwZDRjM2IzODlkNmFiZGFiNTViYiIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6ImY1YjFjYjc3ZTZmNDQwM2NmMmM4NDg1MGIwNTcyMGI5NTk5Yjk0NmUwMWI2MzcwODUzZWY0YzUyYmQwYTZmZjEiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6ImM3MWM3ZDZjYTdhMjY5OWVhZjdjOTgwYzlmMjM1MWY3NDc3ZDliZDFlNzJlNGY2NTIxZjZhMzI0ZWEzYjdmMWYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiMDdlODkzMTgyZGFjNjRjOWVkZGU4MjMwYzdjZTdmMWM2NTRmZjgxN2Y5OGIzZTkxMWU4ZTg1Yzc4ODY0MWZhZCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6ImU4YzdmMjQyYTI5YThmYjJiMjEyMjVhYzlmOTk5ZmVhOTNlNmRhYzc5YTNlYjQwYWRlMTc2ZGRmYzFjMmRlMTgiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiI5ZDNkMThlMTY0YTg3YmQ3MmFlNDczYTIzZjc5ZjBkNzU2NTFiZjExODViMmI0N2ZlYjhiOGFiNWU3YWY1YzUyIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6Ijk4MjIwZTE5NmU4YmE4NWI3MDc2YzdiMzE1MDBkOTU0Nzk1MTk5NDQ4YmM1Y2IyMzM0ZjNhYjU1OTA3NGNkNTMiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiNTNlOTdmNDBkZTExNDkxMjNlNmNlMmNhN2I0MzlhMzI3NzYxMGZkNmZmZTZlMTcwYjEwMjdlOWMzNThmYjg2MSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1swXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6IjA1OTQ1MWQzMWNlZjM5MDg1YWMxNGVkYjE1NjJjYzFkNTE0YmYzZWQ0N2I3YzBkNWM0MjdiYmM0NGNlOGU5YmIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMV0uY2xhc3MifSx7InZhbHVlIjoiN2E3YmUzMzMzNjI4MDAyNmVkN2NkZmFlZDkwZWI1Zjg0ZDZiMGVkZjdiNTkxZjk5MjQ3NmYzNDBjMWViZjUzYyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1sxXS5kZXNjcmlwdGlvbiJ9LHsidmFsdWUiOiJkNzMxMDA3NmM1NzZmNzU0MzcwNjQ5MTYxOTEyNWY0YmQ5NDNlMDEwNWM3ZDM1ZjZjNThjZTI3ZjcwMzNiNjliIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzFdLmVmZmVjdGl2ZURhdGUifSx7InZhbHVlIjoiYTk3MzFhMzFkMzkzNmJmNjAyNzMxNTAwYjIzMjY3ZTA2MzcxOGEzZjJkMGFiZTI4MDhlOGJiMzQxODQxYWZlZCIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0uaWQifSx7InZhbHVlIjoiNDg4MjRkYjdjY2U3ZTY5MGQ3NjgyMGM1N2M1OWNlZGI5ZDZiNGVjMDlhMDY0ZDFmYTJhMmI0OGZhYzJlN2FhZCIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udHlwZSJ9LHsidmFsdWUiOiJjMzY1M2FkNzg4MzhkNDhmM2Q1ZGNkNmE2OGRmNGU0MmMxMTM1ZmY4MzhiYzI5MTY4NDQzMDdjZDljZmM4ZWY4IiwicGF0aCI6InJlbmRlck1ldGhvZFswXS50ZW1wbGF0ZU5hbWUifV0=",
403
+ privacy: { obfuscated: [] },
404
+ key: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90#controller",
405
+ signature: "0x949b76d8df493a56c1cf21303a74d6a54904461c1c10f4619b43ad7d339c64467c61eb4c0873f279cd21d5bdd044d3af5318f14d63f57acbd4cde30f271f3eb71c"
406
+ }
407
+ });
408
+ const SIGNED_WRAPPED_DOCUMENT_DID_OSCP = freezeObject({
409
+ "@context": [
410
+ "https://www.w3.org/ns/credentials/v2",
411
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
412
+ ],
413
+ name: "Republic of Singapore Driving Licence",
414
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
415
+ issuer: {
416
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
417
+ type: "OpenAttestationIssuer",
418
+ name: "Government Technology Agency of Singapore (GovTech)",
419
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
420
+ },
421
+ validFrom: "2021-03-08T12:00:00+08:00",
422
+ credentialSubject: {
423
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
424
+ type: ["DriversLicense"],
425
+ name: "John Doe",
426
+ licenses: [
427
+ {
428
+ class: "3",
429
+ description: "Motor cars with unladen weight <= 3000kg",
430
+ effectiveDate: "2013-05-16T00:00:00+08:00"
431
+ },
432
+ {
433
+ class: "3A",
434
+ description: "Motor cars with unladen weight <= 3000kg",
435
+ effectiveDate: "2013-05-16T00:00:00+08:00"
436
+ }
437
+ ]
438
+ },
439
+ credentialStatus: {
440
+ id: "https://ocsp-sandbox.openattestation.com",
441
+ type: "OpenAttestationOcspResponder"
442
+ },
443
+ renderMethod: [
444
+ {
445
+ id: "https://demo-renderer.opencerts.io",
446
+ type: "OpenAttestationEmbeddedRenderer",
447
+ templateName: "GOVTECH_DEMO"
448
+ }
449
+ ],
450
+ proof: {
451
+ type: "OpenAttestationMerkleProofSignature2018",
452
+ proofPurpose: "assertionMethod",
453
+ targetHash: "0f60b3ef4b9b826de4753c4e68bb5ac9fdd2496549f901331a9d07464469366c",
454
+ proofs: [],
455
+ merkleRoot: "0f60b3ef4b9b826de4753c4e68bb5ac9fdd2496549f901331a9d07464469366c",
456
+ salts: "W3sidmFsdWUiOiI3N2RhNDUzOWYwY2M3ZmVmODg0ZmU0MTVkNzE2ZTRjODc5N2NiMDMyZGJlZDQzOWM2ZWViOTU2NmJlZDk1MmI0IiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6ImY2NWZhZWI4MzVmZTI4MzYyMDBhZGUyYTUzZjM4MzJkMGE2YTVjZjZiZjc2OGRlNmMxYjE3OTQ1OGIwMGI2MDIiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiMjVkOGNmNDY3MTAzMmMzMTUzZDdlY2I2OTQ1OGU2MzNkZWE0YmYwYTc0MGI4YzZiMDFlYjE5M2I4NzE2ZDYzYSIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImQxNjEyODkzZGI2YjM3MDY0MjgzM2FkNjYwYjQ5N2ZiMTY0ZWZlZTZkNWY0ZDhhMjg0YjkxNWNkNGNhNzJkM2YiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiJjZjkzMTg5ZTBjNTE0ZGUwMWJlOTI5ZWRhNjk4ZTdlOWQ5ZmRiMzJlOTVjZTdlOTM1NGM4OWJlYjc3Mzg1NjNkIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiYzgzNzJlYmU2NWJiMzdhOTI0YTljMmZiNGE3Yzc4MmQxMzI1ZjE0NTY3OTFjODJmZmI4NGUwY2FmYWFlMDg2OCIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiMzg1MzJhNzJiMDA1Njc4Yjc2M2Y0NTdlY2IxZTI1NzhhMDVkYzQ5ZjdlZDhhYzk5N2EyNDJjZWNjNGY3MDcyMiIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiIzMTQ1OWY5ZmUyNTdkMDVlZTkwNjg4NmYxYmU3ZjBmOTU4YTUxZGM3YTJlNTY5N2EyOGNjZjI3YWVhOGRmNDg4IiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6ImVkOTQ0Mzk0ZmQ5YzY3OWI5MDg0MjNmNjJlZWU5M2YxODJmNjdmZmIxM2MxNGM2ODJjZDMyZmNkMTk3MmVlN2IiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiYTBjODBhOTI4ZGI3MDExYTI0ODIzYzUzZGJlNjNmNGU5ZTc3M2IyMjkyZWNjOThkMWFiNjZiMjVjYTBmYzY3YiIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6Ijk4Y2JlZjE3NDZkZjM1MmQ5Njg4NmYyYWQ1N2NmOWI5ODg2ZWJhZTJlYzA1ZTM4YWE1YTc5ZTM2YTE2OWY1NGMiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6IjlhYzhkMzA5ZGEyZGYzNWNhN2RkNDFkYTc3NzRkYzFhNWY4NTE3NmFiNGU3ZGY1MDgzNzBiNDNlNmU2Y2FhNGEiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiZjkwYWU2YWVjNzlhODg0OTJkYzFlN2IwYThmNDExYWEwN2Y2YjY5NGMwZjQzNjhhZTMzZWVlNTllYzVhZDM2NyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6IjBhMWNhMTQwMmI4MDEwNWQzNGY4NmVjZjNjMDgxYTE3ZTVlODhiY2UwN2ZjNzgyMGRkYzdmZDY1OTA5ZDcwM2MiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiI2NTk1NGE0ZTNiZGRlNmQ5NGEyYjA4OTQ3YTU3YTdkOWEzYzAwNWEyN2ZmNzA0ZmNjMDI2MDI0MmNkNjczNGI1IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6Ijg3ZDc4NzBjYmVkOGZkYzIyNjA4MWMyZmY5ZmZmNmU3ZmJiZWYyMDUyMDg5YjU1MDg4MDg4MzliNWZlMWNlMGUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiMTgwMzBkZjQ5MzRhMDhlYmM3YTEwNjZlOWRlODZhMDAxYmZhNjcyNWI2Y2FiYjA5NGNmZWI5NzE4YTU3ZDViNiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1swXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6ImUyNWQ1MzFmMTIwNzM0ZWY2ZmY1MTU3MjViYjM5MGJkMjU4MTE2NWM4YTMxZTViMTRmNWUzZTMzM2I2OGZmNWUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMV0uY2xhc3MifSx7InZhbHVlIjoiMTNiMjYyN2E4Yzk0YzkwYWI0M2JjZGExNDNkNTI2MDM0YWM0ZDVkNThhMTc2OTIzMDcwZTAzMGM2MTkwOWVlYiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1sxXS5kZXNjcmlwdGlvbiJ9LHsidmFsdWUiOiI2YjIzZWZkODVhZjZjZWZkMTBjM2EwNzczNjdlMjE4Mzc1MTlkN2ExYTBhMzVmODFkZDBhNWYzNTA0MTg4NjE4IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzFdLmVmZmVjdGl2ZURhdGUifSx7InZhbHVlIjoiMTI4MzY5ZDk5NTU2ZGYwOWMwOGE4NmZkODU4NmJlMWJlNWVjODcxYjY3NGQwNzJmN2U4ODdmNWZiYjViNjE5NiIsInBhdGgiOiJjcmVkZW50aWFsU3RhdHVzLmlkIn0seyJ2YWx1ZSI6ImYzNTBjOGYwNjlkNmIyM2M3NmE0MjQ3ZTIyOWRjOGM1MDVjMTFhZTNkNjFmYjE3ZDJlNDIxZWU1NzY4OGQ4YTMiLCJwYXRoIjoiY3JlZGVudGlhbFN0YXR1cy50eXBlIn0seyJ2YWx1ZSI6IjJkMTUzYzc1OGNiMTY1YjM1MTFhNjA4MjBkMzNiY2ZmYTViNmE3OWFiNWI5ZDNlMTA0NGZiNTk0NjNhNzM3MDUiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLmlkIn0seyJ2YWx1ZSI6ImJmOGJlY2M2Yjg1MDJkODBiNTg4ZmRmZmJhY2JmMmU1NTIzNjE1MzBjYmUxMGI4NzM5OTQ0NWYwZmZkYTkwOTAiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLnR5cGUifSx7InZhbHVlIjoiOTRmYmI5NWE1ZmNhZjU0YTcwYTAxODZiNjg1OWM5YmY5MzYzNWU0OTQ0N2U3ZmMxYWIyY2RmNTM5ZDllZjNiNyIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udGVtcGxhdGVOYW1lIn1d",
457
+ privacy: { obfuscated: [] },
458
+ key: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90#controller",
459
+ signature: "0xa9f89c00bac009044f02ca0e0c605389a927e4b011fa7c0f9a3bfd987598d8a442cd51218a31e387737ad42adeb9b9405c545a4d70ad75d06f7a7701e87440631c"
460
+ }
461
+ });
462
+ const SIGNED_WRAPPED_DOCUMENT_DID_OBFUSCATED = freezeObject({
463
+ "@context": [
464
+ "https://www.w3.org/ns/credentials/v2",
465
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
466
+ ],
467
+ name: "Republic of Singapore Driving Licence",
468
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
469
+ issuer: {
470
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
471
+ type: "OpenAttestationIssuer",
472
+ name: "Government Technology Agency of Singapore (GovTech)",
473
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
474
+ },
475
+ validFrom: "2021-03-08T12:00:00+08:00",
476
+ credentialSubject: {
477
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
478
+ type: ["DriversLicense"],
479
+ name: "John Doe",
480
+ licenses: [
481
+ { class: "3", effectiveDate: "2013-05-16T00:00:00+08:00" },
482
+ {
483
+ class: "3A",
484
+ description: "Motor cars with unladen weight <= 3000kg",
485
+ effectiveDate: "2013-05-16T00:00:00+08:00"
486
+ }
487
+ ]
488
+ },
489
+ proof: {
490
+ type: "OpenAttestationMerkleProofSignature2018",
491
+ proofPurpose: "assertionMethod",
492
+ targetHash: "0b1f90bc8e87cfce8ec49cea60d406291ad130ddedc26e866a8c4f2152747abc",
493
+ proofs: [],
494
+ merkleRoot: "0b1f90bc8e87cfce8ec49cea60d406291ad130ddedc26e866a8c4f2152747abc",
495
+ salts: "W3sidmFsdWUiOiJhOGEzMGE4ZTFjNWQ4ODk2NWI3NDZkZjBhYWYyMTMyN2Q4MDNkMzQ4ZThlOGRhMTlmNTNhMWU5ODFkOTFhMDQ0IiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6IjFmMzIwMzg4MjU3NTRkZTc1OGYwYmU2NjdiNjQ0ZjNjZGVkM2FlM2UwOGI0MTdhMmViZTljYmU1NmYyNGM0NTAiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiODQ0OTkwM2FhNDMxZDEzZTEzNTBiYjVhZTczMTM3OTRlMGQyMTMwNmM3NDA0YzI4NzJhY2Y3ZDY2NGIyMjNhZiIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImFkN2Y1Mjg0OTc1MGViNjZhNjJlZmFmYWUwYjQxNGEwZGQ5OGUwNGJkMmI5YzU2NjliYWM1YzRiNDNjMDk3MTMiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiJjY2I4ZDFkZDgyMDc2Y2EyOTQ5MWUxZTBjODAxOGM5MWY0Zjc5NGRiM2RkMDA1YmFjMGY4MzM1YmFmODFmZWRkIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiYmNlNzNhMjBlMDNiNmM0ZDM1M2VkY2IzMTM0NzZhOTZhNTRkMGNjYzVkNWQ1OWIzMjRhOWU1YTQ2NjQzZmFiNiIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiMjBhMDM0ZjcxMDliNDRmOGEyZTIxMWM1ZTE5YzQ2Nzk1NGY2OWU2NmQzOTZjZjFlYjk1NTViZDc2NjkyN2UyNSIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiIwNWVmYTdiNWM1MDFhZWIxNTE5NTE0MDczNzdmYjJmODc2MTk1ZTAzYzkwZjUzZTdhYWZjNGMzZmFhNDI1YjhhIiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjEzYzE3YjQ5ZTc2YjQ3NjJjZGRiYmRjYjFiZDU2ZmUyNDIyZDEwYmJkMmY2MjAzZGZiNzRkZGRlYjBiZWNkYTMiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiNjBmM2JiMTY1YjhlMzcxOGJhZjQ0ZjVlMTdkNDljY2Y4ZGE5MGViYTMxNjUwZDRjM2IzODlkNmFiZGFiNTViYiIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6ImY1YjFjYjc3ZTZmNDQwM2NmMmM4NDg1MGIwNTcyMGI5NTk5Yjk0NmUwMWI2MzcwODUzZWY0YzUyYmQwYTZmZjEiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6ImM3MWM3ZDZjYTdhMjY5OWVhZjdjOTgwYzlmMjM1MWY3NDc3ZDliZDFlNzJlNGY2NTIxZjZhMzI0ZWEzYjdmMWYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiMDdlODkzMTgyZGFjNjRjOWVkZGU4MjMwYzdjZTdmMWM2NTRmZjgxN2Y5OGIzZTkxMWU4ZTg1Yzc4ODY0MWZhZCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6ImU4YzdmMjQyYTI5YThmYjJiMjEyMjVhYzlmOTk5ZmVhOTNlNmRhYzc5YTNlYjQwYWRlMTc2ZGRmYzFjMmRlMTgiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiI5ZDNkMThlMTY0YTg3YmQ3MmFlNDczYTIzZjc5ZjBkNzU2NTFiZjExODViMmI0N2ZlYjhiOGFiNWU3YWY1YzUyIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6IjUzZTk3ZjQwZGUxMTQ5MTIzZTZjZTJjYTdiNDM5YTMyNzc2MTBmZDZmZmU2ZTE3MGIxMDI3ZTljMzU4ZmI4NjEiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZWZmZWN0aXZlRGF0ZSJ9LHsidmFsdWUiOiIwNTk0NTFkMzFjZWYzOTA4NWFjMTRlZGIxNTYyY2MxZDUxNGJmM2VkNDdiN2MwZDVjNDI3YmJjNDRjZThlOWJiIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzFdLmNsYXNzIn0seyJ2YWx1ZSI6IjdhN2JlMzMzMzYyODAwMjZlZDdjZGZhZWQ5MGViNWY4NGQ2YjBlZGY3YjU5MWY5OTI0NzZmMzQwYzFlYmY1M2MiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMV0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiZDczMTAwNzZjNTc2Zjc1NDM3MDY0OTE2MTkxMjVmNGJkOTQzZTAxMDVjN2QzNWY2YzU4Y2UyN2Y3MDMzYjY5YiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1sxXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6ImE5NzMxYTMxZDM5MzZiZjYwMjczMTUwMGIyMzI2N2UwNjM3MThhM2YyZDBhYmUyODA4ZThiYjM0MTg0MWFmZWQiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLmlkIn0seyJ2YWx1ZSI6IjQ4ODI0ZGI3Y2NlN2U2OTBkNzY4MjBjNTdjNTljZWRiOWQ2YjRlYzA5YTA2NGQxZmEyYTJiNDhmYWMyZTdhYWQiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLnR5cGUifSx7InZhbHVlIjoiYzM2NTNhZDc4ODM4ZDQ4ZjNkNWRjZDZhNjhkZjRlNDJjMTEzNWZmODM4YmMyOTE2ODQ0MzA3Y2Q5Y2ZjOGVmOCIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udGVtcGxhdGVOYW1lIn1d",
496
+ privacy: { obfuscated: ["7f2ecdae29b49b3a971d5acdfbbf9225a193e735ce41b89b0d84cca801794fc9"] },
497
+ key: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90#controller",
498
+ signature: "0x949b76d8df493a56c1cf21303a74d6a54904461c1c10f4619b43ad7d339c64467c61eb4c0873f279cd21d5bdd044d3af5318f14d63f57acbd4cde30f271f3eb71c"
499
+ },
500
+ renderMethod: [
501
+ {
502
+ id: "https://demo-renderer.opencerts.io",
503
+ type: "OpenAttestationEmbeddedRenderer",
504
+ templateName: "GOVTECH_DEMO"
505
+ }
506
+ ]
507
+ });
508
+ const BATCHED_SIGNED_WRAPPED_DOCUMENTS_DID = freezeObject([
509
+ {
510
+ "@context": [
511
+ "https://www.w3.org/ns/credentials/v2",
512
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
513
+ ],
514
+ name: "Republic of Singapore Driving Licence",
515
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
516
+ issuer: {
517
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
518
+ type: "OpenAttestationIssuer",
519
+ name: "Government Technology Agency of Singapore (GovTech)",
520
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
521
+ },
522
+ validFrom: "2021-03-08T12:00:00+08:00",
523
+ credentialSubject: {
524
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
525
+ type: ["DriversLicense"],
526
+ name: "John Doe",
527
+ licenses: [
528
+ {
529
+ class: "3",
530
+ description: "Motor cars with unladen weight <= 3000kg",
531
+ effectiveDate: "2013-05-16T00:00:00+08:00"
532
+ },
533
+ {
534
+ class: "3A",
535
+ description: "Motor cars with unladen weight <= 3000kg",
536
+ effectiveDate: "2013-05-16T00:00:00+08:00"
537
+ }
538
+ ]
539
+ },
540
+ renderMethod: [
541
+ {
542
+ id: "https://demo-renderer.opencerts.io",
543
+ type: "OpenAttestationEmbeddedRenderer",
544
+ templateName: "GOVTECH_DEMO"
545
+ }
546
+ ],
547
+ proof: {
548
+ type: "OpenAttestationMerkleProofSignature2018",
549
+ proofPurpose: "assertionMethod",
550
+ targetHash: "d744b98a001ed34fa133762206e312b5105478f0cc25bf86c3a2a35866597264",
551
+ proofs: ["63edb5b6919143505c522fc96d31bac58ce7b4aa57d366d2df2026c5bb425a64"],
552
+ merkleRoot: "aad2420d57f9250aaa4933bc1dfe540575f3b233475c51f173c9299b4a97853b",
553
+ salts: "W3sidmFsdWUiOiI5YjBhYWZjZDY0YjZmOTMzZDc3ZDUwY2ExZWMzZTYwYzlkYTYzMjk0Y2NlZWRiYTU3ZDMzZjlkYzQ5MjMyMjA2IiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6Ijg0Nzg2MDg5MDNmYjQ0ODQ3NTFhYWM3MGMxZmZjN2E0YTI0OTAyODA5ZTQ3MTI1Y2Q5YWE5ZDMwMTllMjI2MmUiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiZTQ1YjRjYWU1NmI5ZDI5M2M5NDZkM2RhY2U1ZjE0YWNiZmYwYWZkN2QzOWM1MmIxZWY5MTc2MzFlMGFmYzRmNCIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImJkZDczNmU0MDU2YzUyYTYxMTIzMzZiYjNiZGQ3ZTNjMjQ1MTEwZjk3ZTg4Y2NlYjZlMmNlN2M4NTM2MDIzMDYiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiJkOGQyYjcwMTExYTYwNzQyYjVjZTkzMGFiYWNhYTk0NDQ2MzJiMjk5ZjNkNzYyZjI5N2Q0ZmY1MjViMTYzMTVlIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiMTMxOTUwZDhhNGQ1ZGM1Y2ZkYjdkODAwZWQzNTBiNmRkZTYwZWI2ZDFkNjBiODM0YmE4YmFmNDc1ODk5ZWMxZCIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiYmI1ZWM1YjkyNzRhNjg2Yjg4YzVjOTA5MTYwZDU0ZDkxMjM5MWE2ZTg4NzAwMTZhYzcyNGM1NmMyMDlkMzI4OSIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiIyYWE0NDFkNzMxZDllYjdiYTU5YTRjYTljZWYzYmMxOGQyYzgyMzE0NmJjY2Y1MjIxYWU0YWRlNzdkYzM3MmU4IiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjNhZDllMzc0ZTdhZjYxYWViNWE5ZDNiNzg4M2VlM2YwYjg4NWMyZjk4ZjZkOTM0ZGY4MzkxOGY3M2E1OGYzZDQiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiYjM4NDdiYjJiZDE2OTM5YTRhNDM4YjRlNjlhNGFhM2NiNjVlNTdjYTlmNzc5ZDIxN2NhODIwM2Y4MmNhMmUwZSIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6IjEwYWEyYTVhMmQyMmZlNjliZWJlNGQxMmY4ZmM5ZDViNTk1YTRjYzk2OTE0OGFjZjIzZTgyZmMyZGVkYWMyOGIiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6ImM2ZDVkY2NmNmFjYmQyODhmOTc0NjhhMWE3M2YyMGE2YTQzZWZjZTdiYTI0YzA0NTg1MGQ2ZThhNmVhMDU0MzYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiZTA5ZmUyYWQxYjgwYTBlYjZkMWQzMzAwNTBlYTU1ZmRmNjMzMWVhZDFjNTFhYTQwOGNlODliOTIzZTdmMTI0MCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6IjAxZDUyNTMwM2ZmODk0NGExOGVmMjgzMjczNmNmYjdkZmRlNTc2ZDY2NDQzNTBmOTE4OWEyNzZkYTE2YjRkNmIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiIzYWM2NDgzOWZiMDkwMjY0YjFmZjY0NGQ3MDIwODY5YmZiNGFmZDhiYjNjNzdjZWU1ZTc4NWIxZDU2ODBkOGMwIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6IjBkZWY1MWE2ZmI2MTc4NjI2ZThlYzNiMGQ5MzZkZjY1MTM3MjhiMDM4ZGVhZGFlOTRlNWZkYjk4Nzg0ZDYzZWQiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiZTQwNTZkNmI4ODdmMWY2ZDA3ZjdhMWU5MmYxOTZiYWM3NzlhYThmOWE3MzAwM2NlOWIwYjEyNjNhNWYxZWE2MiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1swXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6ImFlMmYzYzg0OTBkMDI2ZWQ0MDdhZDAzOGY5ZWY0NGU1MzM5M2YyN2Q2MmUwMzQ1YTg0OGQ1MGI5YmNmYjgxOTIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMV0uY2xhc3MifSx7InZhbHVlIjoiODQ0OGYwYWU3ZDU1NDE1M2NkY2I1YTllOThjNDIyZWRhYzAxNjhiZjQ4YmI5ZDAzMjU2NWMyNjJjYzg1MTVlOSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1sxXS5kZXNjcmlwdGlvbiJ9LHsidmFsdWUiOiIzZDM2MTFmYTQ2NDExNGI5ZGEzMDQ4MzQ3Y2Y1MDBlNmI1NmFiZjdhOTY2MGY3NTg4ZWFlNzVkOTI5ODJiYmY2IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzFdLmVmZmVjdGl2ZURhdGUifSx7InZhbHVlIjoiMzMzMGY1Yzc3MDE0NzE1NGI3NGE4ZWY5ZjAxZDE0YjEwZGU0NGMzY2FlZWY2M2Q2YjkyMDdlYjJiZjEyMGI2MiIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0uaWQifSx7InZhbHVlIjoiYzgwZDM4MTY4ZDcyMDkxNWM4YzJmZGFmNmYxMDE0MmRlZWJjOTM0MDUyZjNiNTgyMmE2YjM3ZWNlYTBmY2JmYSIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udHlwZSJ9LHsidmFsdWUiOiIyYjllOGFlZGJlNTkwMTRmMTQ4M2RjYjg2NDgwZDljM2M0ZmFlNDY1ODQyZmZlY2I5YjhiNjAwMTc5ZjE3MDQ0IiwicGF0aCI6InJlbmRlck1ldGhvZFswXS50ZW1wbGF0ZU5hbWUifV0=",
554
+ privacy: { obfuscated: [] },
555
+ key: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90#controller",
556
+ signature: "0xc65309e0adf50ba6b91607c6913e15cd629412cf8180255e52c160cdf59bcfa0609f6eed71c379e3062b9fea39a5590dfc54323a352933c6ef9b694b63e2d74f1c"
557
+ }
558
+ },
559
+ {
560
+ "@context": [
561
+ "https://www.w3.org/ns/credentials/v2",
562
+ "https://schemata.openattestation.com/com/openattestation/4.0/context.json"
563
+ ],
564
+ name: "Republic of Singapore Driving Licence",
565
+ type: ["VerifiableCredential", "OpenAttestationCredential"],
566
+ issuer: {
567
+ id: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90",
568
+ type: "OpenAttestationIssuer",
569
+ name: "Government Technology Agency of Singapore (GovTech)",
570
+ identityProof: { identityProofType: "DNS-DID", identifier: "example.openattestation.com" }
571
+ },
572
+ validFrom: "2021-03-08T12:00:00+08:00",
573
+ credentialSubject: {
574
+ id: "urn:uuid:a013fb9d-bb03-4056-b696-05575eceaf42",
575
+ type: ["DriversLicense"],
576
+ name: "Jane Doe",
577
+ licenses: [
578
+ {
579
+ class: "3000A",
580
+ description: "Motor spaceships with unladen weight <= 3000tonnes",
581
+ effectiveDate: "2013-05-16T00:00:00+08:00"
582
+ }
583
+ ]
584
+ },
585
+ renderMethod: [
586
+ {
587
+ id: "https://demo-renderer.opencerts.io",
588
+ type: "OpenAttestationEmbeddedRenderer",
589
+ templateName: "GOVTECH_DEMO"
590
+ }
591
+ ],
592
+ proof: {
593
+ type: "OpenAttestationMerkleProofSignature2018",
594
+ proofPurpose: "assertionMethod",
595
+ targetHash: "63edb5b6919143505c522fc96d31bac58ce7b4aa57d366d2df2026c5bb425a64",
596
+ proofs: ["d744b98a001ed34fa133762206e312b5105478f0cc25bf86c3a2a35866597264"],
597
+ merkleRoot: "aad2420d57f9250aaa4933bc1dfe540575f3b233475c51f173c9299b4a97853b",
598
+ salts: "W3sidmFsdWUiOiJhN2EyZjYyMmMxMjdiMTZlMzIwYjA2MTA1YzZkN2FmMmVlNjZjYjBlNDQ1ZTdhNzA0NzExMzQ0OTZjZDM5YmVlIiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6Ijg4NmI1OGExZTI2Yzg5NjYxMjI4MDBiZGY2NTMxNDQwMmZiNmJkYjkxNGNlMDQzOWJiNWQ3ODM4OWI5N2NlNjciLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiOTk0MjRlMmY1YWE0NjVlNTM3YWE4NDY2ODM2OGQ3YTJjYTFmODg5YTlmOWFlNDk1YzA1ZDM5ZTMzNzY0ZmI3YyIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImY1N2ViM2M2ODQ5NjRiMWQ2ZDZjNWQ1MTY1NjI1MjY4MTUwZjg3OTM3YWQ0NjYzZGQyYjhlZWUyNWFjYTBmMmYiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiIyZGQ4Yzk5N2EwYTliODFlNDgyM2IxMDc4MWEwODk0MTRiMTFmODk4MjNjMTdkNWUzYmM1OGIzZTYyNGY5MTBjIiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiY2ExYmVlODNkMjQwNGVjMGQ5NjQwM2Y5ZDQ0N2RiMWY3NGRlMmJlMTZhYzdiNGUwYWZmNzdhYjU4ZDFmZmE2MyIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiY2RjMjc3MjQ2ZTEyN2I5M2MxYzczN2VlNWJmNDk5ZTI1Y2MyNTYxY2VmOTAyNWQ1NzEyNWJhNjc1NzQxOGJhYiIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiI0N2U1ZjdkNWQxMzEwZDEwYTk3OGUxMzM1Yjc1NjNkZTMyYTEwMjRmOTdmYjU0YWZmM2JiYjQ3ZDgzNmViNmNlIiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjlhY2I1ZDc1ZmIxMmEyMTg1ODkxNjUzODViN2MxMmQzYmM1ZGY3MzJlMmRjNzg5MmRjZDQ3NDRjNzhhNDRmN2EiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiZjM0OGZjYTU1MTg0MzA0Y2E3NDMxMzBjYzc5N2IwZGE4MjVmZTZiMjkxZTZjNTczMGNmOGU5OTNhZmI2OTRiNyIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6IjE1YmRjOGFiN2MyOTZiZDc1OGI0OGU1NTcwMDQ1ZGFiNjI3NmE1MWU4MGIxOGQwODM1ZjBkMDkxZTU2M2Y5MzgiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6IjA2MGVkMTMxMTE3YzM1NjhkY2VmOTRhMzE4ZTc0ZGJlYzIyNTlhZjYwNDI2YTdkZjU0ODQ2OTY4YWU2MTU0YWIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiNDcyZjgwYzY0OGMxOWNhNTUxNDIxZDVlYmUyYzBmZDA2ZDlkNDFjMTdkZGJjNzUyYTdlODM0MTJiYTIwMWQyNSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50eXBlWzBdIn0seyJ2YWx1ZSI6IjBkOWI4NTVkNzk4NWI4YTBkMmM3NGI4NmNkMWRhOGZkNTgwZDMzYzRiNzMxMzcxM2FhMDk5NWI4ODFhOTg4MTUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubmFtZSJ9LHsidmFsdWUiOiJmMDc1YmIyZGE3Yzc1YjE5OWJiYzYyYmNmOTVhNjcxNDFhM2EwYWU3MTRjYzU5NGI3MDFmYmQ2OWZlY2NhNTljIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmxpY2Vuc2VzWzBdLmNsYXNzIn0seyJ2YWx1ZSI6ImMxOWMzODk0NWVmODc5MzhhNjJmYjM4NGY3ODY3ODIzMzA2NjU5YTEwYzVjNGRhZGQxNjI5MzcyMDIyYWMxZjUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QubGljZW5zZXNbMF0uZGVzY3JpcHRpb24ifSx7InZhbHVlIjoiOGZlNWM5ZDQ5ZGY0ZmNlMGY5OWIyZmM2ODNkYWE3ZTE2MmRmMDZkMTYzODE4MGViOWVjYWEzMDY3Y2I2ODg1NyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5saWNlbnNlc1swXS5lZmZlY3RpdmVEYXRlIn0seyJ2YWx1ZSI6IjFmNWM5ZWJmZjQ5ZDQzMDc3M2FkMGJiMjQ2NTExNDg4MTM3NTk3N2I3Y2I2OThmNzkxNjg4ODQ0ZjRiMWFmNjkiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLmlkIn0seyJ2YWx1ZSI6IjQ2YzhjOGEyMWU0OGQzZjlhZGM3OTBmMDRjNDI0NzkwZTRmZmEwMWE5YjMwNTBlNWVlMGJlMWJhZmQzNTIxZDMiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLnR5cGUifSx7InZhbHVlIjoiY2U5OGFhMDI3NDg1N2RlNWY0YTRhYjI4ZmVjMDBmZjlmMTY2YzJiYWNjODMyYzkwNDlmNTliZTc3YTUwNmQ1YiIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udGVtcGxhdGVOYW1lIn1d",
599
+ privacy: { obfuscated: [] },
600
+ key: "did:ethr:0xB26B4941941C51a4885E5B7D3A1B861E54405f90#controller",
601
+ signature: "0xc65309e0adf50ba6b91607c6913e15cd629412cf8180255e52c160cdf59bcfa0609f6eed71c379e3062b9fea39a5590dfc54323a352933c6ef9b694b63e2d74f1c"
602
+ }
603
+ }
604
+ ]);
605
+ const WRAPPED_DOCUMENT_DNS_TXT_V2 = freezeObject({
606
+ version: SchemaId.v2,
607
+ data: {
608
+ id: "c4d0823c-49c9-494f-8fa5-576c746900d7:string:SGCNM21566325",
609
+ $template: {
610
+ name: "26be0257-5d10-421f-b42e-84dc03f77b66:string:CERTIFICATE_OF_NON_MANIPULATION",
611
+ type: "9194bf18-e6ba-4533-b846-5db60ea3a9fc:string:EMBEDDED_RENDERER",
612
+ url: "a9e9af66-bad3-411e-a02e-9863a4103a8e:string:https://demo-cnm.openattestation.com"
613
+ },
614
+ issuers: [
615
+ {
616
+ name: "f12055b9-18ac-4362-9b85-045c7945f267:string:DEMO STORE",
617
+ tokenRegistry: "dcd4aecf-abec-4316-925b-d537418d456a:string:0x142Ca30e3b78A840a82192529cA047ED759a6F7e",
618
+ identityProof: {
619
+ type: "222cb8e1-13bb-40ae-a255-7d56781e716c:string:DNS-TXT",
620
+ location: "7f1c5629-122b-4808-9618-20ea701526b9:string:example.tradetrust.io"
621
+ }
622
+ }
623
+ ],
624
+ recipient: {
625
+ name: "b775d0db-ef6f-41ce-bb2f-f2366ef0e1a6:string:SG FREIGHT",
626
+ address: {
627
+ street: "dc231e06-7fca-4ea1-9933-190457799ae6:string:101 ORCHARD ROAD",
628
+ country: "8c6b9f39-e431-4c91-b1e7-c7833d13e649:string:SINGAPORE"
629
+ }
630
+ },
631
+ consignment: {
632
+ description: "5cba970f-8e70-4181-8b39-ddb9502abba1:string:16667 CARTONS OF RED WINE",
633
+ quantity: {
634
+ value: "69a0296d-0123-4072-a500-59b935c7df3e:string:5000",
635
+ unit: "c2cb02b3-7c26-45fb-8d5c-c1e0db4f5b8c:string:LITRES"
636
+ },
637
+ countryOfOrigin: "5911978b-9f00-4ece-a079-0268cf15246d:string:AUSTRALIA",
638
+ outwardBillNo: "3c971efe-0ce5-4651-ad0c-87728c713dff:string:AQSIQ170923130",
639
+ dateOfDischarge: "290a80c5-1aa8-43dd-aa97-ff85fb6db653:string:2018-01-26",
640
+ dateOfDeparture: "4459e2fa-df5c-46c7-82cb-da9fe8fec1ea:string:2018-01-30",
641
+ countryOfFinalDestination: "152cc7a4-1fc3-48de-8e5e-dc363aa629fd:string:CHINA",
642
+ outgoingVehicleNo: "d77fbf0f-fb4b-4dbc-be61-ce44e2307316:string:COSCO JAPAN 074E/30-JAN"
643
+ },
644
+ declaration: {
645
+ name: "23992b1b-050c-4914-8d19-cfec43d66260:string:PETER LEE",
646
+ designation: "642cefd7-96f2-416e-a390-81c8b0141b6b:string:SHIPPING MANAGER",
647
+ date: "42f3aa4f-7353-4a14-b046-e864e21d5533:string:2018-01-28"
648
+ }
649
+ },
650
+ signature: {
651
+ type: "SHA3MerkleProof",
652
+ targetHash: "de08643a0b7504329f0024174ac7fbb297876a52437aae8190bdbca794f9d96b",
653
+ proof: [],
654
+ merkleRoot: "de08643a0b7504329f0024174ac7fbb297876a52437aae8190bdbca794f9d96b"
655
+ }
656
+ });
657
+ const W3C_VERIFIABLE_DOCUMENT = freezeObject({
658
+ "@context": [
659
+ "https://www.w3.org/2018/credentials/v1",
660
+ "https://w3c-ccg.github.io/citizenship-vocab/contexts/citizenship-v1.jsonld",
661
+ "https://w3id.org/security/bbs/v1",
662
+ "https://w3id.org/vc/status-list/2021/v1"
663
+ ],
664
+ credentialStatus: {
665
+ id: "https://trustvc.github.io/did/credentials/statuslist/1#1",
666
+ type: "StatusList2021Entry",
667
+ statusPurpose: "revocation",
668
+ statusListIndex: "10",
669
+ statusListCredential: "https://trustvc.github.io/did/credentials/statuslist/1"
670
+ },
671
+ credentialSubject: {
672
+ name: "TrustVC",
673
+ birthDate: "2024-04-01T12:19:52Z",
674
+ type: ["PermanentResident", "Person"]
675
+ },
676
+ expirationDate: "2029-12-03T12:19:52Z",
677
+ issuer: "did:web:trustvc.github.io:did:1",
678
+ type: ["VerifiableCredential"],
679
+ issuanceDate: "2024-04-01T12:19:52Z",
680
+ proof: {
681
+ type: "BbsBlsSignature2020",
682
+ created: "2024-10-14T04:11:49Z",
683
+ proofPurpose: "assertionMethod",
684
+ proofValue: "l79dlFQMowalep+WCFqgCvpVBcCAr0GDEFUV6S7gRVY/TQ+sp/wcwaT61PaD19rJYUHlKfzccE4m7waZyoLEkBLFiK2g54Q2i+CdtYBgDdkUDsoULSBMcH1MwGHwdjfXpldFNFrHFx/IAvLVniyeMQ==",
685
+ verificationMethod: "did:web:trustvc.github.io:did:1#keys-1"
686
+ }
687
+ });
688
+ function freezeObject(obj) {
689
+ return deepFreeze(obj);
690
+ }
691
+ __name(freezeObject, "freezeObject");
692
+ function deepFreeze(obj) {
693
+ if (obj && typeof obj === "object" && !Object.isFrozen(obj)) {
694
+ Object.freeze(obj);
695
+ Object.getOwnPropertyNames(obj).forEach((prop) => deepFreeze(obj[prop]));
696
+ }
697
+ return obj;
698
+ }
699
+ __name(deepFreeze, "deepFreeze");
700
+
701
+ export { BATCHED_RAW_DOCUMENTS_DID, BATCHED_SIGNED_WRAPPED_DOCUMENTS_DID, BATCHED_WRAPPED_DOCUMENTS_DID, RAW_DOCUMENT_DID, RAW_DOCUMENT_DID_OSCP, SAMPLE_SIGNING_KEYS, SIGNED_WRAPPED_DOCUMENT_DID, SIGNED_WRAPPED_DOCUMENT_DID_OBFUSCATED, SIGNED_WRAPPED_DOCUMENT_DID_OSCP, W3C_VERIFIABLE_DOCUMENT, WRAPPED_DOCUMENT_DID, WRAPPED_DOCUMENT_DID_OSCP, WRAPPED_DOCUMENT_DNS_TXT_V2 };