@naylence/advanced-security 0.3.5-test.101 → 0.3.6

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 (136) hide show
  1. package/dist/browser/index.js +3438 -1058
  2. package/dist/browser/index.js.map +1 -1
  3. package/dist/cjs/browser.js +5 -18
  4. package/dist/cjs/browser.js.map +1 -1
  5. package/dist/cjs/index.js +6 -5
  6. package/dist/cjs/index.js.map +1 -1
  7. package/dist/cjs/naylence/fame/factory-manifest.js +4 -1
  8. package/dist/cjs/naylence/fame/factory-manifest.js.map +1 -1
  9. package/dist/cjs/naylence/fame/security/cert/ca-service-client.js +15 -9
  10. package/dist/cjs/naylence/fame/security/cert/ca-service-client.js.map +1 -1
  11. package/dist/cjs/naylence/fame/security/cert/ca-service-factory.js +11 -7
  12. package/dist/cjs/naylence/fame/security/cert/ca-service-factory.js.map +1 -1
  13. package/dist/cjs/naylence/fame/security/cert/ca-types.js +7 -2
  14. package/dist/cjs/naylence/fame/security/cert/ca-types.js.map +1 -1
  15. package/dist/cjs/naylence/fame/security/cert/default-ca-service-factory.js +10 -6
  16. package/dist/cjs/naylence/fame/security/cert/default-ca-service-factory.js.map +1 -1
  17. package/dist/cjs/naylence/fame/security/cert/default-ca-service.js +66 -29
  18. package/dist/cjs/naylence/fame/security/cert/default-ca-service.js.map +1 -1
  19. package/dist/cjs/naylence/fame/security/cert/default-certificate-manager-factory.js +16 -12
  20. package/dist/cjs/naylence/fame/security/cert/default-certificate-manager-factory.js.map +1 -1
  21. package/dist/cjs/naylence/fame/security/cert/default-certificate-manager.js +59 -22
  22. package/dist/cjs/naylence/fame/security/cert/default-certificate-manager.js.map +1 -1
  23. package/dist/cjs/naylence/fame/security/cert/grants.js +4 -1
  24. package/dist/cjs/naylence/fame/security/cert/grants.js.map +1 -1
  25. package/dist/cjs/naylence/fame/security/cert/index.js +50 -10
  26. package/dist/cjs/naylence/fame/security/cert/index.js.map +1 -1
  27. package/dist/cjs/naylence/fame/security/cert/internal-ca-service.js +122 -79
  28. package/dist/cjs/naylence/fame/security/cert/internal-ca-service.js.map +1 -1
  29. package/dist/cjs/naylence/fame/security/cert/util.js +30 -26
  30. package/dist/cjs/naylence/fame/security/cert/util.js.map +1 -1
  31. package/dist/cjs/naylence/fame/security/encryption/channel/channel-encryption-manager-factory.js +14 -10
  32. package/dist/cjs/naylence/fame/security/encryption/channel/channel-encryption-manager-factory.js.map +1 -1
  33. package/dist/cjs/naylence/fame/security/encryption/channel/channel-encryption-manager.js +48 -59
  34. package/dist/cjs/naylence/fame/security/encryption/channel/channel-encryption-manager.js.map +1 -1
  35. package/dist/cjs/naylence/fame/security/encryption/channel/index.js +7 -2
  36. package/dist/cjs/naylence/fame/security/encryption/channel/index.js.map +1 -1
  37. package/dist/cjs/naylence/fame/security/encryption/composite-encryption-manager-factory.js +14 -10
  38. package/dist/cjs/naylence/fame/security/encryption/composite-encryption-manager-factory.js.map +1 -1
  39. package/dist/cjs/naylence/fame/security/encryption/composite-encryption-manager.js +11 -7
  40. package/dist/cjs/naylence/fame/security/encryption/composite-encryption-manager.js.map +1 -1
  41. package/dist/cjs/naylence/fame/security/encryption/default-secure-channel-manager-factory.js +11 -7
  42. package/dist/cjs/naylence/fame/security/encryption/default-secure-channel-manager-factory.js.map +1 -1
  43. package/dist/cjs/naylence/fame/security/encryption/default-secure-channel-manager.js +23 -19
  44. package/dist/cjs/naylence/fame/security/encryption/default-secure-channel-manager.js.map +1 -1
  45. package/dist/cjs/naylence/fame/security/encryption/encryption-manager-registry.js +15 -9
  46. package/dist/cjs/naylence/fame/security/encryption/encryption-manager-registry.js.map +1 -1
  47. package/dist/cjs/naylence/fame/security/encryption/index.js +15 -6
  48. package/dist/cjs/naylence/fame/security/encryption/index.js.map +1 -1
  49. package/dist/cjs/naylence/fame/security/encryption/sealed/index.js +7 -2
  50. package/dist/cjs/naylence/fame/security/encryption/sealed/index.js.map +1 -1
  51. package/dist/cjs/naylence/fame/security/encryption/sealed/x25519-encryption-manager-factory.js +12 -8
  52. package/dist/cjs/naylence/fame/security/encryption/sealed/x25519-encryption-manager-factory.js.map +1 -1
  53. package/dist/cjs/naylence/fame/security/encryption/sealed/x25519-encryption-manager.js +30 -26
  54. package/dist/cjs/naylence/fame/security/encryption/sealed/x25519-encryption-manager.js.map +1 -1
  55. package/dist/cjs/naylence/fame/security/index.js +10 -5
  56. package/dist/cjs/naylence/fame/security/index.js.map +1 -1
  57. package/dist/cjs/naylence/fame/security/keys/index.js +8 -2
  58. package/dist/cjs/naylence/fame/security/keys/index.js.map +1 -1
  59. package/dist/cjs/naylence/fame/security/keys/x5c-key-manager-factory.js +13 -9
  60. package/dist/cjs/naylence/fame/security/keys/x5c-key-manager-factory.js.map +1 -1
  61. package/dist/cjs/naylence/fame/security/keys/x5c-key-manager.js +52 -16
  62. package/dist/cjs/naylence/fame/security/keys/x5c-key-manager.js.map +1 -1
  63. package/dist/cjs/naylence/fame/security/register-advanced-security-factories.js +45 -36
  64. package/dist/cjs/naylence/fame/security/register-advanced-security-factories.js.map +1 -1
  65. package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-signer-factory.js +43 -6
  66. package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-signer-factory.js.map +1 -1
  67. package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-verifier-factory.js +12 -8
  68. package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-verifier-factory.js.map +1 -1
  69. package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-verifier.js +70 -33
  70. package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-verifier.js.map +1 -1
  71. package/dist/cjs/naylence/fame/stickiness/aft-helper.js +13 -8
  72. package/dist/cjs/naylence/fame/stickiness/aft-helper.js.map +1 -1
  73. package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager-factory.js +16 -12
  74. package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager-factory.js.map +1 -1
  75. package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager.js +14 -10
  76. package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager.js.map +1 -1
  77. package/dist/cjs/naylence/fame/stickiness/aft-model.js +14 -6
  78. package/dist/cjs/naylence/fame/stickiness/aft-model.js.map +1 -1
  79. package/dist/cjs/naylence/fame/stickiness/aft-replica-stickiness-manager-factory.js +16 -12
  80. package/dist/cjs/naylence/fame/stickiness/aft-replica-stickiness-manager-factory.js.map +1 -1
  81. package/dist/cjs/naylence/fame/stickiness/aft-replica-stickiness-manager.js +18 -13
  82. package/dist/cjs/naylence/fame/stickiness/aft-replica-stickiness-manager.js.map +1 -1
  83. package/dist/cjs/naylence/fame/stickiness/aft-signer.js +30 -23
  84. package/dist/cjs/naylence/fame/stickiness/aft-signer.js.map +1 -1
  85. package/dist/cjs/naylence/fame/stickiness/aft-utils.js +8 -3
  86. package/dist/cjs/naylence/fame/stickiness/aft-utils.js.map +1 -1
  87. package/dist/cjs/naylence/fame/stickiness/aft-verifier.js +28 -21
  88. package/dist/cjs/naylence/fame/stickiness/aft-verifier.js.map +1 -1
  89. package/dist/cjs/naylence/fame/stickiness/index.js +39 -10
  90. package/dist/cjs/naylence/fame/stickiness/index.js.map +1 -1
  91. package/dist/cjs/naylence/fame/stickiness/stickiness-mode.js +7 -3
  92. package/dist/cjs/naylence/fame/stickiness/stickiness-mode.js.map +1 -1
  93. package/dist/cjs/naylence/fame/welcome/advanced-welcome-service-factory.js +18 -14
  94. package/dist/cjs/naylence/fame/welcome/advanced-welcome-service-factory.js.map +1 -1
  95. package/dist/cjs/naylence/fame/welcome/advanced-welcome-service.js +18 -14
  96. package/dist/cjs/naylence/fame/welcome/advanced-welcome-service.js.map +1 -1
  97. package/dist/cjs/naylence/fame/welcome/index.js +8 -2
  98. package/dist/cjs/naylence/fame/welcome/index.js.map +1 -1
  99. package/dist/cjs/plugin.js +10 -8
  100. package/dist/cjs/plugin.js.map +1 -1
  101. package/dist/esm/browser.js +2 -18
  102. package/dist/esm/browser.js.map +1 -1
  103. package/dist/esm/index.js +0 -2
  104. package/dist/esm/index.js.map +1 -1
  105. package/dist/esm/naylence/fame/security/cert/default-certificate-manager-factory.js +2 -2
  106. package/dist/esm/naylence/fame/security/cert/default-certificate-manager-factory.js.map +1 -1
  107. package/dist/esm/naylence/fame/security/cert/default-certificate-manager.js +1 -1
  108. package/dist/esm/naylence/fame/security/cert/default-certificate-manager.js.map +1 -1
  109. package/dist/esm/naylence/fame/security/cert/internal-ca-service.js +1 -1
  110. package/dist/esm/naylence/fame/security/cert/internal-ca-service.js.map +1 -1
  111. package/dist/esm/naylence/fame/security/cert/util.js +1 -1
  112. package/dist/esm/naylence/fame/security/cert/util.js.map +1 -1
  113. package/dist/esm/naylence/fame/security/encryption/channel/channel-encryption-manager.js +12 -27
  114. package/dist/esm/naylence/fame/security/encryption/channel/channel-encryption-manager.js.map +1 -1
  115. package/dist/esm/naylence/fame/security/register-advanced-security-factories.js +1 -28
  116. package/dist/esm/naylence/fame/security/register-advanced-security-factories.js.map +1 -1
  117. package/dist/esm/plugin.js +0 -2
  118. package/dist/esm/plugin.js.map +1 -1
  119. package/dist/types/browser.d.ts +1 -17
  120. package/dist/types/browser.d.ts.map +1 -1
  121. package/dist/types/index.d.ts +0 -1
  122. package/dist/types/index.d.ts.map +1 -1
  123. package/dist/types/naylence/fame/security/cert/default-certificate-manager-factory.d.ts +3 -3
  124. package/dist/types/naylence/fame/security/cert/default-certificate-manager-factory.d.ts.map +1 -1
  125. package/dist/types/naylence/fame/security/cert/default-certificate-manager.d.ts +1 -1
  126. package/dist/types/naylence/fame/security/cert/default-certificate-manager.d.ts.map +1 -1
  127. package/dist/types/naylence/fame/security/encryption/channel/channel-encryption-manager.d.ts.map +1 -1
  128. package/dist/types/naylence/fame/security/register-advanced-security-factories.d.ts.map +1 -1
  129. package/dist/types/plugin.d.ts.map +1 -1
  130. package/package.json +6 -6
  131. package/dist/cjs/version.js +0 -8
  132. package/dist/cjs/version.js.map +0 -1
  133. package/dist/esm/version.js +0 -8
  134. package/dist/esm/version.js.map +0 -1
  135. package/dist/types/version.d.ts +0 -6
  136. package/dist/types/version.d.ts.map +0 -1
@@ -1,15 +1,19 @@
1
- import { AsnConvert } from "@peculiar/asn1-schema";
2
- import { Certificate, NameConstraints, SubjectAlternativeName, id_ce_nameConstraints, id_ce_subjectAltName, } from "@peculiar/asn1-x509";
3
- import { sha256 } from "@noble/hashes/sha256";
4
- import { sha512 } from "@noble/hashes/sha2.js";
5
- import { etc as edEtc, verify as ed25519Verify } from "@noble/ed25519";
6
- import { getLogger } from "@naylence/runtime/node";
7
- const logger = getLogger("naylence.fame.security.cert.util");
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.publicKeyFromX5c = publicKeyFromX5c;
4
+ exports.validateJwkX5cCertificate = validateJwkX5cCertificate;
5
+ const asn1_schema_1 = require("@peculiar/asn1-schema");
6
+ const asn1_x509_1 = require("@peculiar/asn1-x509");
7
+ const sha256_1 = require("@noble/hashes/sha256");
8
+ const sha2_js_1 = require("@noble/hashes/sha2.js");
9
+ const ed25519_1 = require("@noble/ed25519");
10
+ const runtime_1 = require("@naylence/runtime");
11
+ const logger = (0, runtime_1.getLogger)("naylence.fame.security.cert.util");
8
12
  const CACHE_LIMIT = 512;
9
13
  const OID_ED25519 = "1.3.101.112";
10
14
  const textEncoder = new TextEncoder();
11
15
  const trustCache = new Map();
12
- export function publicKeyFromX5c(x5c, options = {}) {
16
+ function publicKeyFromX5c(x5c, options = {}) {
13
17
  if (!Array.isArray(x5c) || x5c.length === 0) {
14
18
  throw new Error("Empty certificate chain");
15
19
  }
@@ -53,7 +57,7 @@ export function publicKeyFromX5c(x5c, options = {}) {
53
57
  }
54
58
  return validation.publicKey.slice();
55
59
  }
56
- export function validateJwkX5cCertificate(options) {
60
+ function validateJwkX5cCertificate(options) {
57
61
  const { jwk, trustStorePem = null, enforceNameConstraints = true, strict = true, } = options;
58
62
  if (!jwk || typeof jwk !== "object") {
59
63
  const error = "Invalid JWK object";
@@ -135,7 +139,7 @@ function parseCertificateChain(x5c) {
135
139
  }
136
140
  let certificate;
137
141
  try {
138
- certificate = AsnConvert.parse(der, Certificate);
142
+ certificate = asn1_schema_1.AsnConvert.parse(der, asn1_x509_1.Certificate);
139
143
  }
140
144
  catch (error) {
141
145
  const reason = error instanceof Error ? error.message : String(error);
@@ -157,11 +161,11 @@ function createParsedCertificate(certificate, raw) {
157
161
  };
158
162
  }
159
163
  function extractUrisFromCert(cert) {
160
- const extension = findExtension(cert, id_ce_subjectAltName);
164
+ const extension = findExtension(cert, asn1_x509_1.id_ce_subjectAltName);
161
165
  if (!extension) {
162
166
  return [];
163
167
  }
164
- const subjectAlternativeName = AsnConvert.parse(extension.extnValue.buffer, SubjectAlternativeName);
168
+ const subjectAlternativeName = asn1_schema_1.AsnConvert.parse(extension.extnValue.buffer, asn1_x509_1.SubjectAlternativeName);
165
169
  const uris = [];
166
170
  for (const generalName of subjectAlternativeName) {
167
171
  if (generalName.uniformResourceIdentifier) {
@@ -172,11 +176,11 @@ function extractUrisFromCert(cert) {
172
176
  }
173
177
  function validateNameConstraints(issuers, leafUris) {
174
178
  for (const issuer of issuers) {
175
- const extension = findExtension(issuer.certificate, id_ce_nameConstraints);
179
+ const extension = findExtension(issuer.certificate, asn1_x509_1.id_ce_nameConstraints);
176
180
  if (!extension) {
177
181
  continue;
178
182
  }
179
- const constraints = AsnConvert.parse(extension.extnValue.buffer, NameConstraints);
183
+ const constraints = asn1_schema_1.AsnConvert.parse(extension.extnValue.buffer, asn1_x509_1.NameConstraints);
180
184
  if (!constraints.permittedSubtrees) {
181
185
  continue;
182
186
  }
@@ -275,7 +279,7 @@ function parseTrustStore(trustStorePem) {
275
279
  for (const block of blocks) {
276
280
  try {
277
281
  const der = decodeBase64(block);
278
- const certificate = AsnConvert.parse(der, Certificate);
282
+ const certificate = asn1_schema_1.AsnConvert.parse(der, asn1_x509_1.Certificate);
279
283
  parsed.push(createParsedCertificate(certificate, der));
280
284
  }
281
285
  catch (error) {
@@ -348,28 +352,28 @@ function verifyCertificateSignature(certificate, issuer) {
348
352
  throw new Error(`Unsupported signature algorithm (certificate: ${signatureAlgorithm}, issuer: ${issuerAlgorithm})`);
349
353
  }
350
354
  const signatureBytes = new Uint8Array(certificate.signatureValue);
351
- const tbsBytes = new Uint8Array(AsnConvert.serialize(certificate.tbsCertificate));
355
+ const tbsBytes = new Uint8Array(asn1_schema_1.AsnConvert.serialize(certificate.tbsCertificate));
352
356
  const issuerKey = new Uint8Array(issuer.tbsCertificate.subjectPublicKeyInfo.subjectPublicKey);
353
357
  if (issuerKey.length !== 32) {
354
358
  throw new Error("Issuer Ed25519 public key must be 32 bytes");
355
359
  }
356
- const valid = ed25519Verify(signatureBytes, tbsBytes, issuerKey);
360
+ const valid = (0, ed25519_1.verify)(signatureBytes, tbsBytes, issuerKey);
357
361
  if (!valid) {
358
362
  throw new Error("Certificate signature verification failed");
359
363
  }
360
364
  }
361
365
  function ensureEd25519Support() {
362
- const etcPatch = edEtc;
366
+ const etcPatch = ed25519_1.etc;
363
367
  if (!etcPatch.sha512) {
364
- etcPatch.sha512 = (message) => sha512(message);
368
+ etcPatch.sha512 = (message) => (0, sha2_js_1.sha512)(message);
365
369
  }
366
370
  if (!etcPatch.sha512Sync) {
367
371
  etcPatch.sha512Sync = (...messages) => {
368
372
  if (messages.length === 1) {
369
- return sha512(messages[0]);
373
+ return (0, sha2_js_1.sha512)(messages[0]);
370
374
  }
371
- const combined = edEtc.concatBytes(...messages);
372
- return sha512(combined);
375
+ const combined = ed25519_1.etc.concatBytes(...messages);
376
+ return (0, sha2_js_1.sha512)(combined);
373
377
  };
374
378
  }
375
379
  }
@@ -386,8 +390,8 @@ function findExtension(certificate, oid) {
386
390
  return null;
387
391
  }
388
392
  function namesEqual(a, b) {
389
- const left = new Uint8Array(AsnConvert.serialize(a));
390
- const right = new Uint8Array(AsnConvert.serialize(b));
393
+ const left = new Uint8Array(asn1_schema_1.AsnConvert.serialize(a));
394
+ const right = new Uint8Array(asn1_schema_1.AsnConvert.serialize(b));
391
395
  if (left.length !== right.length) {
392
396
  return false;
393
397
  }
@@ -456,9 +460,9 @@ function toHex(data) {
456
460
  .join("");
457
461
  }
458
462
  function buildCacheKey(chainBytes, trustStorePem, enforceNameConstraints) {
459
- const chainHash = toHex(sha256(chainBytes));
463
+ const chainHash = toHex((0, sha256_1.sha256)(chainBytes));
460
464
  const trustHash = trustStorePem
461
- ? toHex(sha256(textEncoder.encode(trustStorePem)))
465
+ ? toHex((0, sha256_1.sha256)(textEncoder.encode(trustStorePem)))
462
466
  : "no-trust";
463
467
  const constraintFlag = enforceNameConstraints ? "nc1" : "nc0";
464
468
  return `${chainHash}|${trustHash}|${constraintFlag}`;
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../../src/naylence/fame/security/cert/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../../src/naylence/fame/security/cert/util.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,19 @@
1
- import { ENCRYPTION_MANAGER_FACTORY_BASE_TYPE, EncryptionManagerFactory, } from "@naylence/runtime";
2
- import { getLogger } from "@naylence/runtime";
3
- import { ChannelEncryptionManager, } from "./channel-encryption-manager.js";
4
- const logger = getLogger("naylence.fame.security.encryption.channel.channel_encryption_manager_factory");
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChannelEncryptionManagerFactory = exports.FACTORY_META = void 0;
4
+ const runtime_1 = require("@naylence/runtime");
5
+ const runtime_2 = require("@naylence/runtime");
6
+ const channel_encryption_manager_js_1 = require("./channel-encryption-manager.js");
7
+ const logger = (0, runtime_2.getLogger)("naylence.fame.security.encryption.channel.channel_encryption_manager_factory");
5
8
  const DEFAULT_SUPPORTED_ALGORITHMS = ["chacha20-poly1305-channel"];
6
- export const FACTORY_META = {
7
- base: ENCRYPTION_MANAGER_FACTORY_BASE_TYPE,
9
+ exports.FACTORY_META = {
10
+ base: runtime_1.ENCRYPTION_MANAGER_FACTORY_BASE_TYPE,
8
11
  key: "ChannelEncryptionManager",
9
12
  };
10
- export class ChannelEncryptionManagerFactory extends EncryptionManagerFactory {
13
+ class ChannelEncryptionManagerFactory extends runtime_1.EncryptionManagerFactory {
11
14
  constructor(config) {
12
15
  super();
13
- this.type = FACTORY_META.key;
16
+ this.type = exports.FACTORY_META.key;
14
17
  this.supportedAlgorithms =
15
18
  config?.supportedAlgorithms ?? DEFAULT_SUPPORTED_ALGORITHMS;
16
19
  this.encryptionType = config?.encryptionType ?? "channel";
@@ -38,7 +41,7 @@ export class ChannelEncryptionManagerFactory extends EncryptionManagerFactory {
38
41
  has_node_like: Boolean(resolvedDependencies.nodeLike),
39
42
  has_task_spawner: Boolean(resolvedDependencies.taskSpawner),
40
43
  });
41
- return new ChannelEncryptionManager(resolvedDependencies);
44
+ return new channel_encryption_manager_js_1.ChannelEncryptionManager(resolvedDependencies);
42
45
  }
43
46
  resolveDependencies(dependencies) {
44
47
  if (!dependencies) {
@@ -81,5 +84,6 @@ export class ChannelEncryptionManagerFactory extends EncryptionManagerFactory {
81
84
  return null;
82
85
  }
83
86
  }
84
- export default ChannelEncryptionManagerFactory;
87
+ exports.ChannelEncryptionManagerFactory = ChannelEncryptionManagerFactory;
88
+ exports.default = ChannelEncryptionManagerFactory;
85
89
  //# sourceMappingURL=channel-encryption-manager-factory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"channel-encryption-manager-factory.js","sourceRoot":"","sources":["../../../../../../../src/naylence/fame/security/encryption/channel/channel-encryption-manager-factory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel-encryption-manager-factory.js","sourceRoot":"","sources":["../../../../../../../src/naylence/fame/security/encryption/channel/channel-encryption-manager-factory.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,14 @@
1
- import { chacha20poly1305 } from "@noble/ciphers/chacha.js";
2
- import { FameAddress, formatAddress, localDeliveryContext, } from "@naylence/core";
3
- import { EncryptionResult, } from "@naylence/runtime";
4
- import { requireCryptoSupport } from "@naylence/runtime";
5
- import { getLogger } from "@naylence/runtime";
6
- import { generateId } from "@naylence/core";
7
- import { urlsafeBase64Decode } from "@naylence/runtime";
8
- const logger = getLogger("naylence.fame.security.encryption.channel.channel_encryption_manager");
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChannelEncryptionManager = void 0;
4
+ const chacha_js_1 = require("@noble/ciphers/chacha.js");
5
+ const core_1 = require("@naylence/core");
6
+ const runtime_1 = require("@naylence/runtime");
7
+ const runtime_2 = require("@naylence/runtime");
8
+ const runtime_3 = require("@naylence/runtime");
9
+ const core_2 = require("@naylence/core");
10
+ const runtime_4 = require("@naylence/runtime");
11
+ const logger = (0, runtime_3.getLogger)("naylence.fame.security.encryption.channel.channel_encryption_manager");
9
12
  const SUPPORTED_CHANNEL_ALGORITHMS = ["chacha20-poly1305-channel"];
10
13
  const CHANNEL_ENCRYPTION_ALGORITHM = "chacha20-poly1305-channel";
11
14
  const HANDSHAKE_ALGORITHM = "CHACHA20P1305";
@@ -59,50 +62,35 @@ function decodeBase64(encoded) {
59
62
  }
60
63
  throw new Error("Base64 decoding not supported in this environment");
61
64
  }
62
- let cachedCrypto;
63
- function resolveCrypto() {
64
- if (cachedCrypto !== undefined) {
65
- return cachedCrypto;
66
- }
67
- cachedCrypto = null;
68
- if (typeof globalThis !== "undefined") {
69
- const scoped = globalThis;
70
- const nativeCrypto = scoped.crypto;
71
- if (nativeCrypto && typeof nativeCrypto.getRandomValues === "function") {
72
- cachedCrypto = nativeCrypto;
73
- return cachedCrypto;
74
- }
75
- const webcrypto = scoped.webcrypto;
76
- if (webcrypto && typeof webcrypto.getRandomValues === "function") {
77
- cachedCrypto = webcrypto;
78
- return cachedCrypto;
79
- }
80
- }
81
- return cachedCrypto;
82
- }
83
65
  function randomBytes(length) {
84
- const cryptoApi = resolveCrypto();
85
- if (!cryptoApi) {
86
- throw new Error("Secure random source is not available in this environment");
66
+ if (typeof crypto !== "undefined" &&
67
+ typeof crypto.getRandomValues === "function") {
68
+ const buffer = new Uint8Array(length);
69
+ crypto.getRandomValues(buffer);
70
+ return buffer;
71
+ }
72
+ try {
73
+ const { randomBytes: nodeRandomBytes } = require("node:crypto");
74
+ return nodeRandomBytes(length);
75
+ }
76
+ catch {
77
+ throw new Error("Crypto random bytes are not available in this environment");
87
78
  }
88
- const buffer = new Uint8Array(length);
89
- cryptoApi.getRandomValues(buffer);
90
- return buffer;
91
79
  }
92
80
  function toFameAddress(value) {
93
81
  if (!value) {
94
82
  return null;
95
83
  }
96
- if (value instanceof FameAddress) {
84
+ if (value instanceof core_1.FameAddress) {
97
85
  return value;
98
86
  }
99
- return new FameAddress(String(value));
87
+ return new core_1.FameAddress(String(value));
100
88
  }
101
89
  function toDestinationString(value) {
102
90
  if (!value) {
103
91
  return null;
104
92
  }
105
- if (value instanceof FameAddress) {
93
+ if (value instanceof core_1.FameAddress) {
106
94
  return value.toString();
107
95
  }
108
96
  if (typeof value === "string") {
@@ -135,7 +123,7 @@ function makeJsonSerializable(value) {
135
123
  }
136
124
  return value;
137
125
  }
138
- export class ChannelEncryptionManager {
126
+ class ChannelEncryptionManager {
139
127
  constructor({ secureChannelManager = null, nodeLike = null, taskSpawner = null, } = {}) {
140
128
  this.pendingEnvelopes = new Map();
141
129
  this.handshakeInProgress = new Set();
@@ -148,10 +136,10 @@ export class ChannelEncryptionManager {
148
136
  async encryptEnvelope(envelope, opts = null) {
149
137
  const frame = envelope.frame;
150
138
  if (!this.isDataFrame(frame)) {
151
- return EncryptionResult.skipped(envelope);
139
+ return runtime_1.EncryptionResult.skipped(envelope);
152
140
  }
153
141
  if (frame.payload === null || typeof frame.payload === "undefined") {
154
- return EncryptionResult.skipped(envelope);
142
+ return runtime_1.EncryptionResult.skipped(envelope);
155
143
  }
156
144
  const destination = opts?.destination ?? envelope.to ?? null;
157
145
  const destinationStr = toDestinationString(destination);
@@ -159,13 +147,13 @@ export class ChannelEncryptionManager {
159
147
  logger.warning("no_destination_for_channel_encryption", {
160
148
  envelope_id: envelope.id,
161
149
  });
162
- return EncryptionResult.skipped(envelope);
150
+ return runtime_1.EncryptionResult.skipped(envelope);
163
151
  }
164
152
  if (!this.secureChannelManager) {
165
153
  logger.warning("no_secure_channel_manager_available", {
166
154
  envelope_id: envelope.id,
167
155
  });
168
- return EncryptionResult.skipped(envelope);
156
+ return runtime_1.EncryptionResult.skipped(envelope);
169
157
  }
170
158
  const existingChannelId = this.findExistingChannel(destinationStr);
171
159
  if (existingChannelId) {
@@ -177,15 +165,15 @@ export class ChannelEncryptionManager {
177
165
  error: error instanceof Error ? error.message : String(error),
178
166
  channel_id: existingChannelId,
179
167
  });
180
- return EncryptionResult.skipped(envelope);
168
+ return runtime_1.EncryptionResult.skipped(envelope);
181
169
  }
182
170
  }
183
171
  await this.queueAndInitiateHandshake(envelope, destination, destinationStr, opts ?? null);
184
- return EncryptionResult.queued();
172
+ return runtime_1.EncryptionResult.queued();
185
173
  }
186
174
  async decryptEnvelope(envelope, opts = null) {
187
175
  void opts;
188
- requireCryptoSupport();
176
+ (0, runtime_2.requireCryptoSupport)();
189
177
  const frame = envelope.frame;
190
178
  if (!this.isDataFrame(frame) ||
191
179
  frame.payload === null ||
@@ -234,7 +222,7 @@ export class ChannelEncryptionManager {
234
222
  }
235
223
  try {
236
224
  const aad = new TextEncoder().encode(channelId);
237
- const aead = chacha20poly1305(channelState.key, nonce, aad);
225
+ const aead = (0, chacha_js_1.chacha20poly1305)(channelState.key, nonce, aad);
238
226
  const plaintextBytes = aead.decrypt(ciphertext);
239
227
  const decodedPayload = this.deserializePayload(plaintextBytes);
240
228
  frame.payload = decodedPayload;
@@ -477,7 +465,7 @@ export class ChannelEncryptionManager {
477
465
  to: toAddress,
478
466
  frame: openFrame,
479
467
  replyTo,
480
- corrId: generateId(),
468
+ corrId: (0, core_2.generateId)(),
481
469
  });
482
470
  await this.deliverEnvelope(envelope);
483
471
  logger.debug("delivered_secure_open_frame_async", {
@@ -493,33 +481,33 @@ export class ChannelEncryptionManager {
493
481
  });
494
482
  return;
495
483
  }
496
- const context = localDeliveryContext(node.sid ?? undefined);
484
+ const context = (0, core_1.localDeliveryContext)(node.sid ?? undefined);
497
485
  await node.deliver(envelope, context);
498
486
  }
499
487
  encryptWithChannel(envelope, channelId) {
500
488
  if (!this.secureChannelManager) {
501
489
  logger.error("no_secure_channel_manager_for_encryption");
502
- return EncryptionResult.skipped(envelope);
490
+ return runtime_1.EncryptionResult.skipped(envelope);
503
491
  }
504
492
  const frame = envelope.frame;
505
493
  if (!this.isDataFrame(frame)) {
506
494
  logger.error("attempted_to_encrypt_non_dataframe", {
507
495
  frame_type: frame.type ?? typeof frame,
508
496
  });
509
- return EncryptionResult.skipped(envelope);
497
+ return runtime_1.EncryptionResult.skipped(envelope);
510
498
  }
511
499
  const channelState = this.getChannelState(channelId);
512
500
  if (!channelState) {
513
501
  logger.error("channel_not_in_channels", { channel_id: channelId });
514
- return EncryptionResult.skipped(envelope);
502
+ return runtime_1.EncryptionResult.skipped(envelope);
515
503
  }
516
504
  const payloadBytes = this.serializePayload(frame.payload);
517
505
  if (!payloadBytes) {
518
- return EncryptionResult.skipped(envelope);
506
+ return runtime_1.EncryptionResult.skipped(envelope);
519
507
  }
520
508
  const nonce = randomBytes(NONCE_LENGTH);
521
509
  const aad = new TextEncoder().encode(channelId);
522
- const aead = chacha20poly1305(channelState.key, nonce, aad);
510
+ const aead = (0, chacha_js_1.chacha20poly1305)(channelState.key, nonce, aad);
523
511
  const ciphertext = aead.encrypt(payloadBytes);
524
512
  const encryptionHeader = {
525
513
  alg: CHANNEL_ENCRYPTION_ALGORITHM,
@@ -537,7 +525,7 @@ export class ChannelEncryptionManager {
537
525
  else {
538
526
  envelope.sec = { enc: encryptionHeader };
539
527
  }
540
- return EncryptionResult.ok(envelope);
528
+ return runtime_1.EncryptionResult.ok(envelope);
541
529
  }
542
530
  serializePayload(payload) {
543
531
  if (payload === null || typeof payload === "undefined") {
@@ -646,7 +634,7 @@ export class ChannelEncryptionManager {
646
634
  const nackEnvelope = envelopeFactory.createEnvelope({
647
635
  to: replyTo,
648
636
  frame: nackFrame,
649
- corrId: envelope.corrId ?? generateId(),
637
+ corrId: envelope.corrId ?? (0, core_2.generateId)(),
650
638
  });
651
639
  await this.deliverEnvelope(nackEnvelope);
652
640
  logger.debug("delivered_delivery_nack", {
@@ -670,10 +658,10 @@ export class ChannelEncryptionManager {
670
658
  if (!physicalPath) {
671
659
  return null;
672
660
  }
673
- return formatAddress(SYSTEM_INBOX, physicalPath);
661
+ return (0, core_1.formatAddress)(SYSTEM_INBOX, physicalPath);
674
662
  }
675
663
  generateChannelId(destinationStr) {
676
- return `auto-${destinationStr}-${generateId()}`;
664
+ return `auto-${destinationStr}-${(0, core_2.generateId)()}`;
677
665
  }
678
666
  runAsyncTask(task, name) {
679
667
  if (this.taskSpawner) {
@@ -728,7 +716,7 @@ export class ChannelEncryptionManager {
728
716
  // ignore and try next
729
717
  }
730
718
  try {
731
- const decoded = urlsafeBase64Decode(candidate);
719
+ const decoded = (0, runtime_4.urlsafeBase64Decode)(candidate);
732
720
  if (decoded.length > 0) {
733
721
  return decoded;
734
722
  }
@@ -740,4 +728,5 @@ export class ChannelEncryptionManager {
740
728
  return null;
741
729
  }
742
730
  }
731
+ exports.ChannelEncryptionManager = ChannelEncryptionManager;
743
732
  //# sourceMappingURL=channel-encryption-manager.js.map