@ajna-inc/openbadges 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/LICENSE +202 -0
  2. package/build/OpenBadgesModule.d.ts +10 -0
  3. package/build/OpenBadgesModule.js +75 -0
  4. package/build/OpenBadgesModule.js.map +1 -0
  5. package/build/OpenBadgesModuleConfig.d.ts +96 -0
  6. package/build/OpenBadgesModuleConfig.js +50 -0
  7. package/build/OpenBadgesModuleConfig.js.map +1 -0
  8. package/build/api/OpenBadgesApi.d.ts +48 -0
  9. package/build/api/OpenBadgesApi.js +81 -0
  10. package/build/api/OpenBadgesApi.js.map +1 -0
  11. package/build/api/index.d.ts +1 -0
  12. package/build/api/index.js +18 -0
  13. package/build/api/index.js.map +1 -0
  14. package/build/constants.d.ts +12 -0
  15. package/build/constants.js +27 -0
  16. package/build/constants.js.map +1 -0
  17. package/build/cryptosuites/EcdsaSd2023.d.ts +143 -0
  18. package/build/cryptosuites/EcdsaSd2023.js +518 -0
  19. package/build/cryptosuites/EcdsaSd2023.js.map +1 -0
  20. package/build/cryptosuites/EddsaRdfc2022.d.ts +112 -0
  21. package/build/cryptosuites/EddsaRdfc2022.js +356 -0
  22. package/build/cryptosuites/EddsaRdfc2022.js.map +1 -0
  23. package/build/cryptosuites/constants.d.ts +14 -0
  24. package/build/cryptosuites/constants.js +22 -0
  25. package/build/cryptosuites/constants.js.map +1 -0
  26. package/build/cryptosuites/contextPreprocessor.d.ts +24 -0
  27. package/build/cryptosuites/contextPreprocessor.js +127 -0
  28. package/build/cryptosuites/contextPreprocessor.js.map +1 -0
  29. package/build/cryptosuites/dataIntegrityV2Context.d.ts +144 -0
  30. package/build/cryptosuites/dataIntegrityV2Context.js +86 -0
  31. package/build/cryptosuites/dataIntegrityV2Context.js.map +1 -0
  32. package/build/cryptosuites/index.d.ts +11 -0
  33. package/build/cryptosuites/index.js +33 -0
  34. package/build/cryptosuites/index.js.map +1 -0
  35. package/build/http/OpenBadgesHttpModule.d.ts +9 -0
  36. package/build/http/OpenBadgesHttpModule.js +120 -0
  37. package/build/http/OpenBadgesHttpModule.js.map +1 -0
  38. package/build/http/OpenBadgesHttpModuleConfig.d.ts +55 -0
  39. package/build/http/OpenBadgesHttpModuleConfig.js +78 -0
  40. package/build/http/OpenBadgesHttpModuleConfig.js.map +1 -0
  41. package/build/http/endpoints/authorize.d.ts +3 -0
  42. package/build/http/endpoints/authorize.js +79 -0
  43. package/build/http/endpoints/authorize.js.map +1 -0
  44. package/build/http/endpoints/consent.d.ts +3 -0
  45. package/build/http/endpoints/consent.js +25 -0
  46. package/build/http/endpoints/consent.js.map +1 -0
  47. package/build/http/endpoints/credentials.d.ts +4 -0
  48. package/build/http/endpoints/credentials.js +85 -0
  49. package/build/http/endpoints/credentials.js.map +1 -0
  50. package/build/http/endpoints/did.d.ts +3 -0
  51. package/build/http/endpoints/did.js +48 -0
  52. package/build/http/endpoints/did.js.map +1 -0
  53. package/build/http/endpoints/introspect.d.ts +3 -0
  54. package/build/http/endpoints/introspect.js +37 -0
  55. package/build/http/endpoints/introspect.js.map +1 -0
  56. package/build/http/endpoints/jwks.d.ts +3 -0
  57. package/build/http/endpoints/jwks.js +46 -0
  58. package/build/http/endpoints/jwks.js.map +1 -0
  59. package/build/http/endpoints/profile.d.ts +4 -0
  60. package/build/http/endpoints/profile.js +58 -0
  61. package/build/http/endpoints/profile.js.map +1 -0
  62. package/build/http/endpoints/refresh.d.ts +15 -0
  63. package/build/http/endpoints/refresh.js +134 -0
  64. package/build/http/endpoints/refresh.js.map +1 -0
  65. package/build/http/endpoints/registration.d.ts +3 -0
  66. package/build/http/endpoints/registration.js +42 -0
  67. package/build/http/endpoints/registration.js.map +1 -0
  68. package/build/http/endpoints/revoke.d.ts +3 -0
  69. package/build/http/endpoints/revoke.js +38 -0
  70. package/build/http/endpoints/revoke.js.map +1 -0
  71. package/build/http/endpoints/serviceDescription.d.ts +3 -0
  72. package/build/http/endpoints/serviceDescription.js +52 -0
  73. package/build/http/endpoints/serviceDescription.js.map +1 -0
  74. package/build/http/endpoints/statusList.d.ts +10 -0
  75. package/build/http/endpoints/statusList.js +95 -0
  76. package/build/http/endpoints/statusList.js.map +1 -0
  77. package/build/http/endpoints/token.d.ts +3 -0
  78. package/build/http/endpoints/token.js +147 -0
  79. package/build/http/endpoints/token.js.map +1 -0
  80. package/build/http/middleware/auth.d.ts +5 -0
  81. package/build/http/middleware/auth.js +48 -0
  82. package/build/http/middleware/auth.js.map +1 -0
  83. package/build/http/router.d.ts +13 -0
  84. package/build/http/router.js +36 -0
  85. package/build/http/router.js.map +1 -0
  86. package/build/http/tenants.d.ts +2 -0
  87. package/build/http/tenants.js +20 -0
  88. package/build/http/tenants.js.map +1 -0
  89. package/build/http/util/auth.d.ts +8 -0
  90. package/build/http/util/auth.js +43 -0
  91. package/build/http/util/auth.js.map +1 -0
  92. package/build/index.d.ts +46 -0
  93. package/build/index.js +71 -0
  94. package/build/index.js.map +1 -0
  95. package/build/models/ClrCredential.d.ts +112 -0
  96. package/build/models/ClrCredential.js +52 -0
  97. package/build/models/ClrCredential.js.map +1 -0
  98. package/build/models/EndorsementCredential.d.ts +89 -0
  99. package/build/models/EndorsementCredential.js +11 -0
  100. package/build/models/EndorsementCredential.js.map +1 -0
  101. package/build/models/StatusListCredential.d.ts +81 -0
  102. package/build/models/StatusListCredential.js +28 -0
  103. package/build/models/StatusListCredential.js.map +1 -0
  104. package/build/models/index.d.ts +8 -0
  105. package/build/models/index.js +25 -0
  106. package/build/models/index.js.map +1 -0
  107. package/build/repository/OpenBadgeCredentialRecord.d.ts +44 -0
  108. package/build/repository/OpenBadgeCredentialRecord.js +46 -0
  109. package/build/repository/OpenBadgeCredentialRecord.js.map +1 -0
  110. package/build/repository/OpenBadgeCredentialRepository.d.ts +8 -0
  111. package/build/repository/OpenBadgeCredentialRepository.js +38 -0
  112. package/build/repository/OpenBadgeCredentialRepository.js.map +1 -0
  113. package/build/repository/OpenBadgesAuthCodeRecord.d.ts +35 -0
  114. package/build/repository/OpenBadgesAuthCodeRecord.js +28 -0
  115. package/build/repository/OpenBadgesAuthCodeRecord.js.map +1 -0
  116. package/build/repository/OpenBadgesAuthCodeRepository.d.ts +6 -0
  117. package/build/repository/OpenBadgesAuthCodeRepository.js +32 -0
  118. package/build/repository/OpenBadgesAuthCodeRepository.js.map +1 -0
  119. package/build/repository/OpenBadgesConsentRecord.d.ts +24 -0
  120. package/build/repository/OpenBadgesConsentRecord.js +23 -0
  121. package/build/repository/OpenBadgesConsentRecord.js.map +1 -0
  122. package/build/repository/OpenBadgesConsentRepository.d.ts +6 -0
  123. package/build/repository/OpenBadgesConsentRepository.js +32 -0
  124. package/build/repository/OpenBadgesConsentRepository.js.map +1 -0
  125. package/build/repository/OpenBadgesKeyBindingRecord.d.ts +24 -0
  126. package/build/repository/OpenBadgesKeyBindingRecord.js +32 -0
  127. package/build/repository/OpenBadgesKeyBindingRecord.js.map +1 -0
  128. package/build/repository/OpenBadgesKeyBindingRepository.d.ts +7 -0
  129. package/build/repository/OpenBadgesKeyBindingRepository.js +35 -0
  130. package/build/repository/OpenBadgesKeyBindingRepository.js.map +1 -0
  131. package/build/repository/OpenBadgesOAuthRecord.d.ts +35 -0
  132. package/build/repository/OpenBadgesOAuthRecord.js +25 -0
  133. package/build/repository/OpenBadgesOAuthRecord.js.map +1 -0
  134. package/build/repository/OpenBadgesOAuthRepository.d.ts +8 -0
  135. package/build/repository/OpenBadgesOAuthRepository.js +38 -0
  136. package/build/repository/OpenBadgesOAuthRepository.js.map +1 -0
  137. package/build/repository/OpenBadgesProfileRecord.d.ts +21 -0
  138. package/build/repository/OpenBadgesProfileRecord.js +22 -0
  139. package/build/repository/OpenBadgesProfileRecord.js.map +1 -0
  140. package/build/repository/OpenBadgesProfileRepository.d.ts +6 -0
  141. package/build/repository/OpenBadgesProfileRepository.js +32 -0
  142. package/build/repository/OpenBadgesProfileRepository.js.map +1 -0
  143. package/build/repository/OpenBadgesRevocationCacheRecord.d.ts +23 -0
  144. package/build/repository/OpenBadgesRevocationCacheRecord.js +23 -0
  145. package/build/repository/OpenBadgesRevocationCacheRecord.js.map +1 -0
  146. package/build/repository/OpenBadgesRevocationCacheRepository.d.ts +6 -0
  147. package/build/repository/OpenBadgesRevocationCacheRepository.js +32 -0
  148. package/build/repository/OpenBadgesRevocationCacheRepository.js.map +1 -0
  149. package/build/repository/OpenBadgesServiceDescriptionRecord.d.ts +21 -0
  150. package/build/repository/OpenBadgesServiceDescriptionRecord.js +22 -0
  151. package/build/repository/OpenBadgesServiceDescriptionRecord.js.map +1 -0
  152. package/build/repository/OpenBadgesServiceDescriptionRepository.d.ts +6 -0
  153. package/build/repository/OpenBadgesServiceDescriptionRepository.js +32 -0
  154. package/build/repository/OpenBadgesServiceDescriptionRepository.js.map +1 -0
  155. package/build/repository/OpenBadgesTokenRecord.d.ts +39 -0
  156. package/build/repository/OpenBadgesTokenRecord.js +36 -0
  157. package/build/repository/OpenBadgesTokenRecord.js.map +1 -0
  158. package/build/repository/OpenBadgesTokenRepository.d.ts +9 -0
  159. package/build/repository/OpenBadgesTokenRepository.js +45 -0
  160. package/build/repository/OpenBadgesTokenRepository.js.map +1 -0
  161. package/build/repository/StatusListRecord.d.ts +49 -0
  162. package/build/repository/StatusListRecord.js +47 -0
  163. package/build/repository/StatusListRecord.js.map +1 -0
  164. package/build/repository/StatusListRepository.d.ts +24 -0
  165. package/build/repository/StatusListRepository.js +52 -0
  166. package/build/repository/StatusListRepository.js.map +1 -0
  167. package/build/repository/index.d.ts +18 -0
  168. package/build/repository/index.js +35 -0
  169. package/build/repository/index.js.map +1 -0
  170. package/build/services/AchievementValidator.d.ts +158 -0
  171. package/build/services/AchievementValidator.js +238 -0
  172. package/build/services/AchievementValidator.js.map +1 -0
  173. package/build/services/ConsumerService.d.ts +24 -0
  174. package/build/services/ConsumerService.js +143 -0
  175. package/build/services/ConsumerService.js.map +1 -0
  176. package/build/services/ContextService.d.ts +14 -0
  177. package/build/services/ContextService.js +54 -0
  178. package/build/services/ContextService.js.map +1 -0
  179. package/build/services/DataIntegrityService.d.ts +51 -0
  180. package/build/services/DataIntegrityService.js +134 -0
  181. package/build/services/DataIntegrityService.js.map +1 -0
  182. package/build/services/DidCommLinkService.d.ts +7 -0
  183. package/build/services/DidCommLinkService.js +20 -0
  184. package/build/services/DidCommLinkService.js.map +1 -0
  185. package/build/services/DisplayMapper.d.ts +9 -0
  186. package/build/services/DisplayMapper.js +26 -0
  187. package/build/services/DisplayMapper.js.map +1 -0
  188. package/build/services/IssuerService.d.ts +38 -0
  189. package/build/services/IssuerService.js +225 -0
  190. package/build/services/IssuerService.js.map +1 -0
  191. package/build/services/JwtService.d.ts +19 -0
  192. package/build/services/JwtService.js +229 -0
  193. package/build/services/JwtService.js.map +1 -0
  194. package/build/services/KeyService.d.ts +102 -0
  195. package/build/services/KeyService.js +439 -0
  196. package/build/services/KeyService.js.map +1 -0
  197. package/build/services/OAuthClient.d.ts +26 -0
  198. package/build/services/OAuthClient.js +127 -0
  199. package/build/services/OAuthClient.js.map +1 -0
  200. package/build/services/ProofService.d.ts +15 -0
  201. package/build/services/ProofService.js +43 -0
  202. package/build/services/ProofService.js.map +1 -0
  203. package/build/services/RevocationService.d.ts +59 -0
  204. package/build/services/RevocationService.js +319 -0
  205. package/build/services/RevocationService.js.map +1 -0
  206. package/build/services/VerifyService.d.ts +17 -0
  207. package/build/services/VerifyService.js +54 -0
  208. package/build/services/VerifyService.js.map +1 -0
  209. package/build/services/crypto/CryptoDriver.d.ts +9 -0
  210. package/build/services/crypto/CryptoDriver.js +7 -0
  211. package/build/services/crypto/CryptoDriver.js.map +1 -0
  212. package/build/services/crypto/JsonLdCryptoDriver.d.ts +17 -0
  213. package/build/services/crypto/JsonLdCryptoDriver.js +45 -0
  214. package/build/services/crypto/JsonLdCryptoDriver.js.map +1 -0
  215. package/build/services/crypto/JwtCryptoDriver.d.ts +13 -0
  216. package/build/services/crypto/JwtCryptoDriver.js +42 -0
  217. package/build/services/crypto/JwtCryptoDriver.js.map +1 -0
  218. package/build/services/index.d.ts +12 -0
  219. package/build/services/index.js +29 -0
  220. package/build/services/index.js.map +1 -0
  221. package/build/utils/validate.d.ts +17 -0
  222. package/build/utils/validate.js +107 -0
  223. package/build/utils/validate.js.map +1 -0
  224. package/package.json +57 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EcdsaSd2023.js","sourceRoot":"","sources":["../../src/cryptosuites/EcdsaSd2023.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * EdDSA RDFC 2022 Cryptosuite
3
+ *
4
+ * Implements the eddsa-rdfc-2022 cryptosuite for Data Integrity proofs.
5
+ * This is required for OpenBadges 3.0 certification.
6
+ *
7
+ * Spec: https://www.w3.org/TR/vc-di-eddsa/#eddsa-rdfc-2022
8
+ *
9
+ * Key features:
10
+ * - Uses Ed25519 signature algorithm
11
+ * - Uses RDFC-1.0 canonicalization (RDF Dataset Canonicalization)
12
+ * - Produces DataIntegrityProof with cryptosuite: 'eddsa-rdfc-2022'
13
+ */
14
+ import { CRYPTOSUITE_EDDSA_RDFC_2022, PROOF_TYPE_DATA_INTEGRITY } from './constants';
15
+ export interface EddsaRdfc2022KeyPair {
16
+ id: string;
17
+ controller: string;
18
+ publicKeyMultibase: string;
19
+ privateKeyMultibase?: string;
20
+ }
21
+ export interface EddsaRdfc2022Proof {
22
+ type: typeof PROOF_TYPE_DATA_INTEGRITY;
23
+ cryptosuite: typeof CRYPTOSUITE_EDDSA_RDFC_2022;
24
+ created: string;
25
+ verificationMethod: string;
26
+ proofPurpose: string;
27
+ proofValue: string;
28
+ }
29
+ export interface SignOptions {
30
+ document: Record<string, unknown>;
31
+ keyPair: EddsaRdfc2022KeyPair;
32
+ purpose?: string;
33
+ date?: Date | string;
34
+ challenge?: string;
35
+ domain?: string;
36
+ }
37
+ export interface VerifyOptions {
38
+ document: Record<string, unknown>;
39
+ proof: EddsaRdfc2022Proof;
40
+ publicKeyMultibase: string;
41
+ /**
42
+ * If true, fetch contexts from the network with @protected stripped.
43
+ * This is needed for verifying external credentials that use full network contexts.
44
+ */
45
+ useNetworkContexts?: boolean;
46
+ }
47
+ /**
48
+ * EdDSA RDFC 2022 Cryptosuite implementation
49
+ */
50
+ export declare class EddsaRdfc2022Cryptosuite {
51
+ static readonly proofType = "DataIntegrityProof";
52
+ static readonly cryptosuite = "eddsa-rdfc-2022";
53
+ static readonly contextUrl = "https://w3id.org/security/data-integrity/v2";
54
+ static readonly verificationMethodTypes: string[];
55
+ /**
56
+ * Sign a document using eddsa-rdfc-2022 cryptosuite
57
+ */
58
+ sign(options: SignOptions): Promise<Record<string, unknown>>;
59
+ /**
60
+ * Verify a document with eddsa-rdfc-2022 proof
61
+ *
62
+ * @param options - Verification options including document, proof, public key, and context settings
63
+ */
64
+ verify(options: VerifyOptions): Promise<{
65
+ verified: boolean;
66
+ error?: string;
67
+ }>;
68
+ /**
69
+ * Check if this suite matches a given proof
70
+ */
71
+ matchProof(proof: Record<string, unknown>): boolean;
72
+ /**
73
+ * Create a document loader for JSON-LD operations
74
+ * Uses cached contexts for internal operations, preprocessed network contexts for external verification
75
+ */
76
+ private createDocumentLoader;
77
+ /**
78
+ * Canonicalize a document using RDFC-1.0 (URDNA2015)
79
+ * This is the standard algorithm for RDF Dataset Canonicalization.
80
+ *
81
+ * @param document - The document to canonicalize
82
+ * @param useNetworkContexts - If true, fetch contexts from network with @protected stripped
83
+ */
84
+ private canonicalize;
85
+ /**
86
+ * Create hash data for signing/verification using RDFC-1.0 algorithm
87
+ *
88
+ * Per the spec (https://www.w3.org/TR/vc-di-eddsa/#create-verify-data-eddsa-rdfc-2022):
89
+ * 1. Canonicalize the document using RDFC-1.0
90
+ * 2. Hash the canonical document using SHA-256
91
+ * 3. Canonicalize the proof options (without proofValue)
92
+ * 4. Hash the canonical proof options using SHA-256
93
+ * 5. Concatenate: proofOptionsHash || documentHash
94
+ *
95
+ * @param document - The document to hash
96
+ * @param proofOptions - The proof options to hash
97
+ * @param useNetworkContexts - If true, fetch contexts from network with @protected stripped
98
+ */
99
+ private createHashData;
100
+ /**
101
+ * Decode a key pair from multibase format
102
+ */
103
+ private decodeKeyPair;
104
+ /**
105
+ * Decode a public key from multibase format
106
+ */
107
+ private decodePublicKey;
108
+ /**
109
+ * Generate a new Ed25519 key pair with multibase encoding
110
+ */
111
+ static generateKeyPair(controller: string, keyId?: string): EddsaRdfc2022KeyPair;
112
+ }
@@ -0,0 +1,356 @@
1
+ "use strict";
2
+ /**
3
+ * EdDSA RDFC 2022 Cryptosuite
4
+ *
5
+ * Implements the eddsa-rdfc-2022 cryptosuite for Data Integrity proofs.
6
+ * This is required for OpenBadges 3.0 certification.
7
+ *
8
+ * Spec: https://www.w3.org/TR/vc-di-eddsa/#eddsa-rdfc-2022
9
+ *
10
+ * Key features:
11
+ * - Uses Ed25519 signature algorithm
12
+ * - Uses RDFC-1.0 canonicalization (RDF Dataset Canonicalization)
13
+ * - Produces DataIntegrityProof with cryptosuite: 'eddsa-rdfc-2022'
14
+ */
15
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ var desc = Object.getOwnPropertyDescriptor(m, k);
18
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
19
+ desc = { enumerable: true, get: function() { return m[k]; } };
20
+ }
21
+ Object.defineProperty(o, k2, desc);
22
+ }) : (function(o, m, k, k2) {
23
+ if (k2 === undefined) k2 = k;
24
+ o[k2] = m[k];
25
+ }));
26
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
27
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
28
+ }) : function(o, v) {
29
+ o["default"] = v;
30
+ });
31
+ var __importStar = (this && this.__importStar) || function (mod) {
32
+ if (mod && mod.__esModule) return mod;
33
+ var result = {};
34
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
35
+ __setModuleDefault(result, mod);
36
+ return result;
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.EddsaRdfc2022Cryptosuite = void 0;
43
+ const ed25519 = __importStar(require("@stablelib/ed25519"));
44
+ const bs58_1 = __importDefault(require("bs58"));
45
+ const crypto_1 = require("crypto");
46
+ // Import jsonld for canonicalization
47
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
48
+ // @ts-ignore
49
+ const jsonld = __importStar(require("@digitalcredentials/jsonld"));
50
+ const constants_1 = require("./constants");
51
+ // Document loader for JSON-LD contexts
52
+ const dataIntegrityV2Context_1 = require("./dataIntegrityV2Context");
53
+ const contextPreprocessor_1 = require("./contextPreprocessor");
54
+ // Built-in context cache for internal tests and offline operation
55
+ // These simplified contexts work for internal sign/verify round-trips
56
+ // Note: proof/security terms are handled by Data Integrity context to avoid conflicts
57
+ const CONTEXT_CACHE = {
58
+ 'https://w3id.org/security/data-integrity/v2': dataIntegrityV2Context_1.dataIntegrityV2Context,
59
+ 'https://www.w3.org/ns/credentials/v2': {
60
+ '@context': {
61
+ id: '@id',
62
+ type: '@type',
63
+ VerifiableCredential: 'https://www.w3.org/2018/credentials#VerifiableCredential',
64
+ credentialSubject: { '@id': 'https://www.w3.org/2018/credentials#credentialSubject', '@type': '@id' },
65
+ issuer: { '@id': 'https://www.w3.org/2018/credentials#issuer', '@type': '@id' },
66
+ validFrom: { '@id': 'https://www.w3.org/2018/credentials#validFrom', '@type': 'http://www.w3.org/2001/XMLSchema#dateTime' },
67
+ validUntil: { '@id': 'https://www.w3.org/2018/credentials#validUntil', '@type': 'http://www.w3.org/2001/XMLSchema#dateTime' },
68
+ },
69
+ },
70
+ 'https://purl.imsglobal.org/spec/ob/v3p0/context-3.0.3.json': {
71
+ '@context': {
72
+ OpenBadgeCredential: 'https://purl.imsglobal.org/spec/vc/ob/vocab.html#OpenBadgeCredential',
73
+ Achievement: 'https://purl.imsglobal.org/spec/vc/ob/vocab.html#Achievement',
74
+ AchievementSubject: 'https://purl.imsglobal.org/spec/vc/ob/vocab.html#AchievementSubject',
75
+ Profile: 'https://purl.imsglobal.org/spec/vc/ob/vocab.html#Profile',
76
+ achievement: { '@id': 'https://purl.imsglobal.org/spec/vc/ob/vocab.html#achievement', '@type': '@id' },
77
+ name: 'https://schema.org/name',
78
+ description: 'https://schema.org/description',
79
+ criteria: { '@id': 'https://purl.imsglobal.org/spec/vc/ob/vocab.html#criteria', '@type': '@id' },
80
+ narrative: 'https://purl.imsglobal.org/spec/vc/ob/vocab.html#narrative',
81
+ },
82
+ },
83
+ // Extensions context for Credly credentials
84
+ 'https://purl.imsglobal.org/spec/ob/v3p0/extensions.json': {
85
+ '@context': {
86
+ '1EdTechJsonSchemaValidator2019': 'https://purl.imsglobal.org/spec/vccs/v1p0/context.json#1EdTechJsonSchemaValidator2019',
87
+ '1EdTechRevocationList': 'https://purl.imsglobal.org/spec/vcrl/v1p0/context.json#1EdTechRevocationList',
88
+ '1EdTechCredentialRefresh': 'https://purl.imsglobal.org/spec/vccr/v1p0/context.json#1EdTechCredentialRefresh',
89
+ },
90
+ },
91
+ };
92
+ // Runtime cache for network-fetched contexts
93
+ const RUNTIME_CONTEXT_CACHE = {};
94
+ // Multicodec prefixes
95
+ const ED25519_PUB_MULTICODEC = new Uint8Array([0xed, 0x01]);
96
+ const ED25519_PRIV_MULTICODEC = new Uint8Array([0x80, 0x26]);
97
+ /**
98
+ * EdDSA RDFC 2022 Cryptosuite implementation
99
+ */
100
+ class EddsaRdfc2022Cryptosuite {
101
+ /**
102
+ * Sign a document using eddsa-rdfc-2022 cryptosuite
103
+ */
104
+ async sign(options) {
105
+ const { document, keyPair, purpose = 'assertionMethod', date, challenge, domain } = options;
106
+ // Decode private key
107
+ const { secretKey } = this.decodeKeyPair(keyPair);
108
+ // Create proof options
109
+ const proofOptions = {
110
+ type: constants_1.PROOF_TYPE_DATA_INTEGRITY,
111
+ cryptosuite: constants_1.CRYPTOSUITE_EDDSA_RDFC_2022,
112
+ created: date ? new Date(date).toISOString() : new Date().toISOString(),
113
+ verificationMethod: keyPair.id,
114
+ proofPurpose: purpose,
115
+ };
116
+ if (challenge) {
117
+ ;
118
+ proofOptions.challenge = challenge;
119
+ }
120
+ if (domain) {
121
+ ;
122
+ proofOptions.domain = domain;
123
+ }
124
+ // Create hash to sign
125
+ // Note: Full implementation should use RDFC-1.0 canonicalization
126
+ // For now, we use a simplified canonicalization for compatibility
127
+ const documentCopy = { ...document };
128
+ delete documentCopy.proof;
129
+ const hashData = await this.createHashData(documentCopy, proofOptions);
130
+ // Sign the hash
131
+ const signature = ed25519.sign(secretKey, hashData);
132
+ // Encode signature as multibase base58btc
133
+ const proofValue = 'z' + bs58_1.default.encode(signature);
134
+ // Create final proof
135
+ const proof = {
136
+ ...proofOptions,
137
+ proofValue,
138
+ };
139
+ // Return document with proof
140
+ return {
141
+ ...document,
142
+ proof,
143
+ };
144
+ }
145
+ /**
146
+ * Verify a document with eddsa-rdfc-2022 proof
147
+ *
148
+ * @param options - Verification options including document, proof, public key, and context settings
149
+ */
150
+ async verify(options) {
151
+ const { document, proof, publicKeyMultibase, useNetworkContexts = false } = options;
152
+ try {
153
+ // Validate proof structure
154
+ if (proof.type !== constants_1.PROOF_TYPE_DATA_INTEGRITY) {
155
+ return { verified: false, error: `Invalid proof type: ${proof.type}` };
156
+ }
157
+ if (proof.cryptosuite !== constants_1.CRYPTOSUITE_EDDSA_RDFC_2022) {
158
+ return { verified: false, error: `Invalid cryptosuite: ${proof.cryptosuite}` };
159
+ }
160
+ if (!proof.proofValue?.startsWith('z')) {
161
+ return { verified: false, error: 'Invalid proofValue: must be multibase base58btc encoded' };
162
+ }
163
+ // Decode public key
164
+ const publicKey = this.decodePublicKey(publicKeyMultibase);
165
+ // Decode signature
166
+ const signature = bs58_1.default.decode(proof.proofValue.slice(1));
167
+ // Recreate hash data
168
+ const documentCopy = { ...document };
169
+ delete documentCopy.proof;
170
+ const proofOptions = {
171
+ type: proof.type,
172
+ cryptosuite: proof.cryptosuite,
173
+ created: proof.created,
174
+ verificationMethod: proof.verificationMethod,
175
+ proofPurpose: proof.proofPurpose,
176
+ };
177
+ // Use network contexts if specified (for external credential verification)
178
+ const hashData = await this.createHashData(documentCopy, proofOptions, useNetworkContexts);
179
+ // Verify signature
180
+ const verified = ed25519.verify(publicKey, hashData, signature);
181
+ return { verified };
182
+ }
183
+ catch (error) {
184
+ const err = error;
185
+ return { verified: false, error: err.message };
186
+ }
187
+ }
188
+ /**
189
+ * Check if this suite matches a given proof
190
+ */
191
+ matchProof(proof) {
192
+ return (proof.type === constants_1.PROOF_TYPE_DATA_INTEGRITY && proof.cryptosuite === constants_1.CRYPTOSUITE_EDDSA_RDFC_2022);
193
+ }
194
+ /**
195
+ * Create a document loader for JSON-LD operations
196
+ * Uses cached contexts for internal operations, preprocessed network contexts for external verification
197
+ */
198
+ createDocumentLoader(useNetworkContexts = false) {
199
+ // For external credential verification, use preprocessing loader that strips @protected
200
+ if (useNetworkContexts) {
201
+ return (0, contextPreprocessor_1.createPreprocessingDocumentLoader)();
202
+ }
203
+ // For internal operations, use cached contexts for stability
204
+ return async (url) => {
205
+ // Check static cache first
206
+ if (CONTEXT_CACHE[url]) {
207
+ return {
208
+ contextUrl: null,
209
+ document: CONTEXT_CACHE[url],
210
+ documentUrl: url,
211
+ };
212
+ }
213
+ // Check runtime cache
214
+ if (RUNTIME_CONTEXT_CACHE[url]) {
215
+ return {
216
+ contextUrl: null,
217
+ document: RUNTIME_CONTEXT_CACHE[url],
218
+ documentUrl: url,
219
+ };
220
+ }
221
+ // For unknown contexts, return minimal context
222
+ return {
223
+ contextUrl: null,
224
+ document: { '@context': {} },
225
+ documentUrl: url,
226
+ };
227
+ };
228
+ }
229
+ /**
230
+ * Canonicalize a document using RDFC-1.0 (URDNA2015)
231
+ * This is the standard algorithm for RDF Dataset Canonicalization.
232
+ *
233
+ * @param document - The document to canonicalize
234
+ * @param useNetworkContexts - If true, fetch contexts from network with @protected stripped
235
+ */
236
+ async canonicalize(document, useNetworkContexts = false) {
237
+ const jld = jsonld.default ?? jsonld;
238
+ const documentLoader = this.createDocumentLoader(useNetworkContexts);
239
+ // Use URDNA2015 algorithm (RDFC-1.0)
240
+ const canonicalized = await jld.canonize(document, {
241
+ algorithm: 'URDNA2015',
242
+ format: 'application/n-quads',
243
+ documentLoader,
244
+ });
245
+ return canonicalized;
246
+ }
247
+ /**
248
+ * Create hash data for signing/verification using RDFC-1.0 algorithm
249
+ *
250
+ * Per the spec (https://www.w3.org/TR/vc-di-eddsa/#create-verify-data-eddsa-rdfc-2022):
251
+ * 1. Canonicalize the document using RDFC-1.0
252
+ * 2. Hash the canonical document using SHA-256
253
+ * 3. Canonicalize the proof options (without proofValue)
254
+ * 4. Hash the canonical proof options using SHA-256
255
+ * 5. Concatenate: proofOptionsHash || documentHash
256
+ *
257
+ * @param document - The document to hash
258
+ * @param proofOptions - The proof options to hash
259
+ * @param useNetworkContexts - If true, fetch contexts from network with @protected stripped
260
+ */
261
+ async createHashData(document, proofOptions, useNetworkContexts = false) {
262
+ // Canonicalize the document
263
+ const canonicalDocument = await this.canonicalize(document, useNetworkContexts);
264
+ // Hash the canonical document with SHA-256
265
+ const documentHash = (0, crypto_1.createHash)('sha256').update(canonicalDocument).digest();
266
+ // Create proof configuration document for canonicalization
267
+ // Use the Data Integrity context for proof options (per spec section 3.3.1)
268
+ const proofConfigDocument = {
269
+ '@context': constants_1.DATA_INTEGRITY_V2_CONTEXT_URL,
270
+ ...proofOptions,
271
+ };
272
+ // Canonicalize the proof configuration
273
+ const canonicalProofConfig = await this.canonicalize(proofConfigDocument, useNetworkContexts);
274
+ // Hash the canonical proof configuration with SHA-256
275
+ const proofConfigHash = (0, crypto_1.createHash)('sha256').update(canonicalProofConfig).digest();
276
+ // Concatenate: proofConfigHash || documentHash (per spec)
277
+ const combined = new Uint8Array(proofConfigHash.length + documentHash.length);
278
+ combined.set(proofConfigHash, 0);
279
+ combined.set(documentHash, proofConfigHash.length);
280
+ return combined;
281
+ }
282
+ /**
283
+ * Decode a key pair from multibase format
284
+ */
285
+ decodeKeyPair(keyPair) {
286
+ if (!keyPair.privateKeyMultibase) {
287
+ throw new Error('Private key is required for signing');
288
+ }
289
+ // Decode private key
290
+ const privBytes = bs58_1.default.decode(keyPair.privateKeyMultibase.slice(1));
291
+ // Validate multicodec prefix
292
+ if (privBytes[0] !== ED25519_PRIV_MULTICODEC[0] || privBytes[1] !== ED25519_PRIV_MULTICODEC[1]) {
293
+ throw new Error('Invalid private key multicodec prefix');
294
+ }
295
+ const secretKey = privBytes.slice(2);
296
+ // Decode or derive public key
297
+ let publicKey;
298
+ if (keyPair.publicKeyMultibase) {
299
+ publicKey = this.decodePublicKey(keyPair.publicKeyMultibase);
300
+ }
301
+ else {
302
+ // Derive public key from secret key (last 32 bytes or generate)
303
+ if (secretKey.length === 64) {
304
+ publicKey = secretKey.slice(32);
305
+ }
306
+ else {
307
+ const kp = ed25519.generateKeyPairFromSeed(secretKey.slice(0, 32));
308
+ publicKey = kp.publicKey;
309
+ }
310
+ }
311
+ return { publicKey, secretKey };
312
+ }
313
+ /**
314
+ * Decode a public key from multibase format
315
+ */
316
+ decodePublicKey(publicKeyMultibase) {
317
+ if (!publicKeyMultibase.startsWith('z')) {
318
+ throw new Error('Invalid multibase prefix: expected base58btc (z)');
319
+ }
320
+ const pubBytes = bs58_1.default.decode(publicKeyMultibase.slice(1));
321
+ // Validate multicodec prefix
322
+ if (pubBytes[0] !== ED25519_PUB_MULTICODEC[0] || pubBytes[1] !== ED25519_PUB_MULTICODEC[1]) {
323
+ throw new Error('Invalid public key multicodec prefix');
324
+ }
325
+ return pubBytes.slice(2);
326
+ }
327
+ /**
328
+ * Generate a new Ed25519 key pair with multibase encoding
329
+ */
330
+ static generateKeyPair(controller, keyId) {
331
+ const kp = ed25519.generateKeyPair();
332
+ // Encode public key with multicodec prefix
333
+ const pubWithHeader = new Uint8Array(2 + kp.publicKey.length);
334
+ pubWithHeader.set(ED25519_PUB_MULTICODEC, 0);
335
+ pubWithHeader.set(kp.publicKey, 2);
336
+ const publicKeyMultibase = 'z' + bs58_1.default.encode(pubWithHeader);
337
+ // Encode private key with multicodec prefix
338
+ const privWithHeader = new Uint8Array(2 + kp.secretKey.length);
339
+ privWithHeader.set(ED25519_PRIV_MULTICODEC, 0);
340
+ privWithHeader.set(kp.secretKey, 2);
341
+ const privateKeyMultibase = 'z' + bs58_1.default.encode(privWithHeader);
342
+ const id = keyId || `${controller}#key-1`;
343
+ return {
344
+ id,
345
+ controller,
346
+ publicKeyMultibase,
347
+ privateKeyMultibase,
348
+ };
349
+ }
350
+ }
351
+ exports.EddsaRdfc2022Cryptosuite = EddsaRdfc2022Cryptosuite;
352
+ EddsaRdfc2022Cryptosuite.proofType = constants_1.PROOF_TYPE_DATA_INTEGRITY;
353
+ EddsaRdfc2022Cryptosuite.cryptosuite = constants_1.CRYPTOSUITE_EDDSA_RDFC_2022;
354
+ EddsaRdfc2022Cryptosuite.contextUrl = constants_1.DATA_INTEGRITY_V2_CONTEXT_URL;
355
+ EddsaRdfc2022Cryptosuite.verificationMethodTypes = [constants_1.VM_TYPE_MULTIKEY, constants_1.VM_TYPE_ED25519_2020];
356
+ //# sourceMappingURL=EddsaRdfc2022.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EddsaRdfc2022.js","sourceRoot":"","sources":["../../src/cryptosuites/EddsaRdfc2022.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Constants for Data Integrity cryptosuites
3
+ */
4
+ export declare const DATA_INTEGRITY_V2_CONTEXT_URL = "https://w3id.org/security/data-integrity/v2";
5
+ export declare const MULTIKEY_CONTEXT_URL = "https://w3id.org/security/multikey/v1";
6
+ export declare const ED25519_2020_CONTEXT_URL = "https://w3id.org/security/suites/ed25519-2020/v1";
7
+ export declare const CRYPTOSUITE_EDDSA_RDFC_2022 = "eddsa-rdfc-2022";
8
+ export declare const CRYPTOSUITE_ECDSA_SD_2023 = "ecdsa-sd-2023";
9
+ export declare const CRYPTOSUITE_ECDSA_RDFC_2019 = "ecdsa-rdfc-2019";
10
+ export declare const PROOF_TYPE_DATA_INTEGRITY = "DataIntegrityProof";
11
+ export declare const PROOF_TYPE_ED25519_2020 = "Ed25519Signature2020";
12
+ export declare const VM_TYPE_MULTIKEY = "Multikey";
13
+ export declare const VM_TYPE_ED25519_2020 = "Ed25519VerificationKey2020";
14
+ export declare const VM_TYPE_ECDSA_SECP256R1 = "EcdsaSecp256r1VerificationKey2019";
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ /**
3
+ * Constants for Data Integrity cryptosuites
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.VM_TYPE_ECDSA_SECP256R1 = exports.VM_TYPE_ED25519_2020 = exports.VM_TYPE_MULTIKEY = exports.PROOF_TYPE_ED25519_2020 = exports.PROOF_TYPE_DATA_INTEGRITY = exports.CRYPTOSUITE_ECDSA_RDFC_2019 = exports.CRYPTOSUITE_ECDSA_SD_2023 = exports.CRYPTOSUITE_EDDSA_RDFC_2022 = exports.ED25519_2020_CONTEXT_URL = exports.MULTIKEY_CONTEXT_URL = exports.DATA_INTEGRITY_V2_CONTEXT_URL = void 0;
7
+ // Context URLs
8
+ exports.DATA_INTEGRITY_V2_CONTEXT_URL = 'https://w3id.org/security/data-integrity/v2';
9
+ exports.MULTIKEY_CONTEXT_URL = 'https://w3id.org/security/multikey/v1';
10
+ exports.ED25519_2020_CONTEXT_URL = 'https://w3id.org/security/suites/ed25519-2020/v1';
11
+ // Cryptosuite identifiers
12
+ exports.CRYPTOSUITE_EDDSA_RDFC_2022 = 'eddsa-rdfc-2022';
13
+ exports.CRYPTOSUITE_ECDSA_SD_2023 = 'ecdsa-sd-2023';
14
+ exports.CRYPTOSUITE_ECDSA_RDFC_2019 = 'ecdsa-rdfc-2019';
15
+ // Proof types
16
+ exports.PROOF_TYPE_DATA_INTEGRITY = 'DataIntegrityProof';
17
+ exports.PROOF_TYPE_ED25519_2020 = 'Ed25519Signature2020';
18
+ // Verification method types
19
+ exports.VM_TYPE_MULTIKEY = 'Multikey';
20
+ exports.VM_TYPE_ED25519_2020 = 'Ed25519VerificationKey2020';
21
+ exports.VM_TYPE_ECDSA_SECP256R1 = 'EcdsaSecp256r1VerificationKey2019';
22
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/cryptosuites/constants.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,eAAe;AACF,QAAA,6BAA6B,GAAG,6CAA6C,CAAA;AAC7E,QAAA,oBAAoB,GAAG,uCAAuC,CAAA;AAC9D,QAAA,wBAAwB,GAAG,kDAAkD,CAAA;AAE1F,0BAA0B;AACb,QAAA,2BAA2B,GAAG,iBAAiB,CAAA;AAC/C,QAAA,yBAAyB,GAAG,eAAe,CAAA;AAC3C,QAAA,2BAA2B,GAAG,iBAAiB,CAAA;AAE5D,cAAc;AACD,QAAA,yBAAyB,GAAG,oBAAoB,CAAA;AAChD,QAAA,uBAAuB,GAAG,sBAAsB,CAAA;AAE7D,4BAA4B;AACf,QAAA,gBAAgB,GAAG,UAAU,CAAA;AAC7B,QAAA,oBAAoB,GAAG,4BAA4B,CAAA;AACnD,QAAA,uBAAuB,GAAG,mCAAmC,CAAA"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Context Preprocessor
3
+ *
4
+ * Strips @protected flags from JSON-LD contexts to allow combining
5
+ * multiple contexts that define the same terms identically.
6
+ *
7
+ * This is necessary because:
8
+ * - VC v2 and OBv3 contexts both define terms like "description"
9
+ * - Both map to the same IRIs (e.g., https://schema.org/description)
10
+ * - But both use @protected: true, which prevents redefinition
11
+ * - Stripping @protected allows compatible contexts to work together
12
+ */
13
+ /**
14
+ * Create a document loader that preprocesses contexts to remove @protected
15
+ */
16
+ export declare function createPreprocessingDocumentLoader(): (url: string) => Promise<any>;
17
+ /**
18
+ * Clear the processed context cache
19
+ */
20
+ export declare function clearContextCache(): void;
21
+ /**
22
+ * Pre-warm the context cache by fetching common contexts
23
+ */
24
+ export declare function prewarmContextCache(urls: string[]): Promise<void>;