@naylence/advanced-security 0.3.4 → 0.3.5-test.101
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.js +4393 -6330
- package/dist/browser/index.js.map +1 -1
- package/dist/cjs/browser.js +18 -5
- package/dist/cjs/browser.js.map +1 -1
- package/dist/cjs/index.js +5 -6
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/naylence/fame/factory-manifest.js +1 -4
- package/dist/cjs/naylence/fame/factory-manifest.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/ca-service-client.js +9 -15
- package/dist/cjs/naylence/fame/security/cert/ca-service-client.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/ca-service-factory.js +7 -11
- package/dist/cjs/naylence/fame/security/cert/ca-service-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/ca-types.js +2 -7
- package/dist/cjs/naylence/fame/security/cert/ca-types.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/default-ca-service-factory.js +6 -10
- package/dist/cjs/naylence/fame/security/cert/default-ca-service-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/default-ca-service.js +29 -66
- package/dist/cjs/naylence/fame/security/cert/default-ca-service.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/default-certificate-manager-factory.js +12 -16
- package/dist/cjs/naylence/fame/security/cert/default-certificate-manager-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/default-certificate-manager.js +22 -59
- package/dist/cjs/naylence/fame/security/cert/default-certificate-manager.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/grants.js +1 -4
- package/dist/cjs/naylence/fame/security/cert/grants.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/index.js +10 -50
- package/dist/cjs/naylence/fame/security/cert/index.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/internal-ca-service.js +79 -122
- package/dist/cjs/naylence/fame/security/cert/internal-ca-service.js.map +1 -1
- package/dist/cjs/naylence/fame/security/cert/util.js +485 -89
- package/dist/cjs/naylence/fame/security/cert/util.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/channel/channel-encryption-manager-factory.js +10 -14
- package/dist/cjs/naylence/fame/security/encryption/channel/channel-encryption-manager-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/channel/channel-encryption-manager.js +59 -48
- package/dist/cjs/naylence/fame/security/encryption/channel/channel-encryption-manager.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/channel/index.js +2 -7
- package/dist/cjs/naylence/fame/security/encryption/channel/index.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/composite-encryption-manager-factory.js +10 -14
- package/dist/cjs/naylence/fame/security/encryption/composite-encryption-manager-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/composite-encryption-manager.js +7 -11
- package/dist/cjs/naylence/fame/security/encryption/composite-encryption-manager.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/default-secure-channel-manager-factory.js +7 -11
- package/dist/cjs/naylence/fame/security/encryption/default-secure-channel-manager-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/default-secure-channel-manager.js +19 -23
- package/dist/cjs/naylence/fame/security/encryption/default-secure-channel-manager.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/encryption-manager-registry.js +9 -15
- package/dist/cjs/naylence/fame/security/encryption/encryption-manager-registry.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/index.js +6 -15
- package/dist/cjs/naylence/fame/security/encryption/index.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/sealed/index.js +2 -7
- package/dist/cjs/naylence/fame/security/encryption/sealed/index.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/sealed/x25519-encryption-manager-factory.js +8 -12
- package/dist/cjs/naylence/fame/security/encryption/sealed/x25519-encryption-manager-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/encryption/sealed/x25519-encryption-manager.js +26 -30
- package/dist/cjs/naylence/fame/security/encryption/sealed/x25519-encryption-manager.js.map +1 -1
- package/dist/cjs/naylence/fame/security/index.js +5 -10
- package/dist/cjs/naylence/fame/security/index.js.map +1 -1
- package/dist/cjs/naylence/fame/security/keys/index.js +2 -8
- package/dist/cjs/naylence/fame/security/keys/index.js.map +1 -1
- package/dist/cjs/naylence/fame/security/keys/x5c-key-manager-factory.js +9 -13
- package/dist/cjs/naylence/fame/security/keys/x5c-key-manager-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/keys/x5c-key-manager.js +16 -52
- package/dist/cjs/naylence/fame/security/keys/x5c-key-manager.js.map +1 -1
- package/dist/cjs/naylence/fame/security/register-advanced-security-factories.js +36 -45
- package/dist/cjs/naylence/fame/security/register-advanced-security-factories.js.map +1 -1
- package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-signer-factory.js +6 -43
- package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-signer-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-verifier-factory.js +8 -12
- package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-verifier-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-verifier.js +68 -39
- package/dist/cjs/naylence/fame/security/signing/eddsa-envelope-verifier.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-helper.js +8 -13
- package/dist/cjs/naylence/fame/stickiness/aft-helper.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager-factory.js +12 -16
- package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager.js +10 -14
- package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-model.js +6 -14
- package/dist/cjs/naylence/fame/stickiness/aft-model.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-replica-stickiness-manager-factory.js +12 -16
- package/dist/cjs/naylence/fame/stickiness/aft-replica-stickiness-manager-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-replica-stickiness-manager.js +13 -18
- package/dist/cjs/naylence/fame/stickiness/aft-replica-stickiness-manager.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-signer.js +23 -30
- package/dist/cjs/naylence/fame/stickiness/aft-signer.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-utils.js +3 -8
- package/dist/cjs/naylence/fame/stickiness/aft-utils.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/aft-verifier.js +21 -28
- package/dist/cjs/naylence/fame/stickiness/aft-verifier.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/index.js +10 -39
- package/dist/cjs/naylence/fame/stickiness/index.js.map +1 -1
- package/dist/cjs/naylence/fame/stickiness/stickiness-mode.js +3 -7
- package/dist/cjs/naylence/fame/stickiness/stickiness-mode.js.map +1 -1
- package/dist/cjs/naylence/fame/welcome/advanced-welcome-service-factory.js +14 -18
- package/dist/cjs/naylence/fame/welcome/advanced-welcome-service-factory.js.map +1 -1
- package/dist/cjs/naylence/fame/welcome/advanced-welcome-service.js +14 -18
- package/dist/cjs/naylence/fame/welcome/advanced-welcome-service.js.map +1 -1
- package/dist/cjs/naylence/fame/welcome/index.js +2 -8
- package/dist/cjs/naylence/fame/welcome/index.js.map +1 -1
- package/dist/cjs/plugin.js +8 -10
- package/dist/cjs/plugin.js.map +1 -1
- package/dist/cjs/version.js +8 -0
- package/dist/cjs/version.js.map +1 -0
- package/dist/esm/browser.js +18 -2
- package/dist/esm/browser.js.map +1 -1
- package/dist/esm/index.js +2 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/naylence/fame/security/cert/default-certificate-manager-factory.js +2 -2
- package/dist/esm/naylence/fame/security/cert/default-certificate-manager-factory.js.map +1 -1
- package/dist/esm/naylence/fame/security/cert/default-certificate-manager.js +1 -1
- package/dist/esm/naylence/fame/security/cert/default-certificate-manager.js.map +1 -1
- package/dist/esm/naylence/fame/security/cert/index.js.map +1 -1
- package/dist/esm/naylence/fame/security/cert/internal-ca-service.js +1 -1
- package/dist/esm/naylence/fame/security/cert/internal-ca-service.js.map +1 -1
- package/dist/esm/naylence/fame/security/cert/util.js +482 -82
- package/dist/esm/naylence/fame/security/cert/util.js.map +1 -1
- package/dist/esm/naylence/fame/security/encryption/channel/channel-encryption-manager.js +27 -12
- package/dist/esm/naylence/fame/security/encryption/channel/channel-encryption-manager.js.map +1 -1
- package/dist/esm/naylence/fame/security/register-advanced-security-factories.js +28 -1
- package/dist/esm/naylence/fame/security/register-advanced-security-factories.js.map +1 -1
- package/dist/esm/naylence/fame/security/signing/eddsa-envelope-verifier.js +36 -3
- package/dist/esm/naylence/fame/security/signing/eddsa-envelope-verifier.js.map +1 -1
- package/dist/esm/plugin.js +2 -0
- package/dist/esm/plugin.js.map +1 -1
- package/dist/esm/version.js +8 -0
- package/dist/esm/version.js.map +1 -0
- package/dist/types/browser.d.ts +17 -1
- package/dist/types/browser.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/naylence/fame/security/cert/default-certificate-manager-factory.d.ts +3 -3
- package/dist/types/naylence/fame/security/cert/default-certificate-manager-factory.d.ts.map +1 -1
- package/dist/types/naylence/fame/security/cert/default-certificate-manager.d.ts +1 -1
- package/dist/types/naylence/fame/security/cert/default-certificate-manager.d.ts.map +1 -1
- package/dist/types/naylence/fame/security/cert/index.d.ts +1 -1
- package/dist/types/naylence/fame/security/cert/index.d.ts.map +1 -1
- package/dist/types/naylence/fame/security/cert/util.d.ts +13 -23
- package/dist/types/naylence/fame/security/cert/util.d.ts.map +1 -1
- package/dist/types/naylence/fame/security/encryption/channel/channel-encryption-manager.d.ts.map +1 -1
- package/dist/types/naylence/fame/security/register-advanced-security-factories.d.ts.map +1 -1
- package/dist/types/naylence/fame/security/signing/eddsa-envelope-verifier.d.ts.map +1 -1
- package/dist/types/plugin.d.ts.map +1 -1
- package/dist/types/version.d.ts +6 -0
- package/dist/types/version.d.ts.map +1 -0
- package/package.json +5 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eddsa-envelope-verifier-factory.js","sourceRoot":"","sources":["../../../../../../src/naylence/fame/security/signing/eddsa-envelope-verifier-factory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"eddsa-envelope-verifier-factory.js","sourceRoot":"","sources":["../../../../../../src/naylence/fame/security/signing/eddsa-envelope-verifier-factory.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mCAAmC,EACnC,uBAAuB,EACvB,kBAAkB,GAGnB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,qBAAqB,GAGtB,MAAM,8BAA8B,CAAC;AAMtC,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,mCAAmC;IACzC,GAAG,EAAE,uBAAuB;IAC5B,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,GAAG;CACL,CAAC;AAIX,MAAM,OAAO,oCAAqC,SAAQ,uBAAoD;IAA9G;;QACkB,SAAI,GAAG,uBAAuB,CAAC;QAC/B,cAAS,GAAG,IAAI,CAAC;QACjB,aAAQ,GAAG,GAAG,CAAC;IAmBjC,CAAC;IAjBQ,KAAK,CAAC,MAAM,CACjB,OAAsE,EACtE,WAAgC,EAChC,aAAoC,EACpC,UAAwC,EAAE;QAE1C,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,MAAM,QAAQ,GAAiC;YAC7C,aAAa,EACX,OAAO,CAAC,aAAa,IAAI,aAAa,IAAI,IAAI,kBAAkB,EAAE;SACrE,CAAC;QAEF,OAAO,IAAI,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;CACF;AAED,eAAe,oCAAoC,CAAC"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const eddsa_utils_js_1 = require("@naylence/runtime/naylence/fame/security/signing/eddsa-utils.js");
|
|
10
|
-
const runtime_2 = require("@naylence/runtime");
|
|
11
|
-
const util_js_1 = require("../cert/util.js");
|
|
1
|
+
import { etc as edEtc, verify } from "@noble/ed25519";
|
|
2
|
+
import { sha512 } from "@noble/hashes/sha2.js";
|
|
3
|
+
import { SigningMaterial } from "@naylence/core";
|
|
4
|
+
import { SigningConfigClass, secureDigest, } from "@naylence/runtime";
|
|
5
|
+
import { canonicalJson, decodeBase64Url, frameDigest, immutableHeaders, } from "@naylence/runtime/naylence/fame/security/signing/eddsa-signer-verifier.js";
|
|
6
|
+
import { encodeUtf8 } from "@naylence/runtime/naylence/fame/security/signing/eddsa-utils.js";
|
|
7
|
+
import { JWKValidationError, validateSigningKey } from "@naylence/runtime";
|
|
8
|
+
import { publicKeyFromX5c } from "../cert/util.js";
|
|
12
9
|
function assertString(value, field) {
|
|
13
10
|
if (typeof value !== "string" || value.length === 0) {
|
|
14
11
|
throw new Error(`${field} must be a non-empty string`);
|
|
@@ -39,32 +36,31 @@ function encodeBase64Url(value) {
|
|
|
39
36
|
throw new Error("No base64 encoder available in this environment");
|
|
40
37
|
}
|
|
41
38
|
function ensureNobleSha512Fallback() {
|
|
42
|
-
const etcPatch =
|
|
39
|
+
const etcPatch = edEtc;
|
|
43
40
|
if (!etcPatch.sha512) {
|
|
44
|
-
etcPatch.sha512 = (message) =>
|
|
41
|
+
etcPatch.sha512 = (message) => sha512(message);
|
|
45
42
|
}
|
|
46
43
|
if (!etcPatch.sha512Sync) {
|
|
47
44
|
etcPatch.sha512Sync = (...messages) => {
|
|
48
45
|
if (messages.length === 1) {
|
|
49
|
-
return
|
|
46
|
+
return sha512(messages[0]);
|
|
50
47
|
}
|
|
51
|
-
const combined =
|
|
52
|
-
return
|
|
48
|
+
const combined = edEtc.concatBytes(...messages);
|
|
49
|
+
return sha512(combined);
|
|
53
50
|
};
|
|
54
51
|
}
|
|
55
52
|
}
|
|
56
|
-
function normalizeCertificateKey(jwk, signingConfig) {
|
|
53
|
+
function normalizeCertificateKey(jwk, signingConfig, trustStorePem) {
|
|
57
54
|
if (!Array.isArray(jwk.x5c) || jwk.x5c.length === 0) {
|
|
58
55
|
return null;
|
|
59
56
|
}
|
|
60
|
-
if (signingConfig.signingMaterial !==
|
|
57
|
+
if (signingConfig.signingMaterial !== SigningMaterial.X509_CHAIN) {
|
|
61
58
|
throw new Error("Certificate keys are disabled by signing policy");
|
|
62
59
|
}
|
|
63
|
-
const trustStorePem = process.env.FAME_CA_CERTS;
|
|
64
60
|
if (!trustStorePem) {
|
|
65
61
|
throw new Error("FAME_CA_CERTS environment variable must be set to a PEM file containing trusted CA certs when using certificate-based verification");
|
|
66
62
|
}
|
|
67
|
-
const publicKey =
|
|
63
|
+
const publicKey = publicKeyFromX5c(jwk.x5c, {
|
|
68
64
|
enforceNameConstraints: signingConfig.validateCertNameConstraints,
|
|
69
65
|
trustStorePem,
|
|
70
66
|
});
|
|
@@ -74,7 +70,8 @@ function normalizeCertificateKey(jwk, signingConfig) {
|
|
|
74
70
|
return encodeBase64Url(publicKey);
|
|
75
71
|
}
|
|
76
72
|
async function loadPublicKey(jwk, signingConfig) {
|
|
77
|
-
const
|
|
73
|
+
const trustStorePem = await resolveTrustStorePem();
|
|
74
|
+
const certificateKey = normalizeCertificateKey(jwk, signingConfig, trustStorePem);
|
|
78
75
|
const candidate = certificateKey ??
|
|
79
76
|
(typeof jwk.x === "string"
|
|
80
77
|
? jwk.x
|
|
@@ -84,12 +81,45 @@ async function loadPublicKey(jwk, signingConfig) {
|
|
|
84
81
|
if (typeof candidate !== "string") {
|
|
85
82
|
throw new Error("JWK missing public key material");
|
|
86
83
|
}
|
|
87
|
-
return
|
|
84
|
+
return decodeBase64Url(candidate);
|
|
88
85
|
}
|
|
89
|
-
|
|
86
|
+
function hasProcessEnv() {
|
|
87
|
+
return typeof process !== "undefined" && typeof process.env !== "undefined";
|
|
88
|
+
}
|
|
89
|
+
function isNodeProcess() {
|
|
90
|
+
return (typeof process !== "undefined" &&
|
|
91
|
+
typeof process.release !== "undefined" &&
|
|
92
|
+
process.release?.name === "node");
|
|
93
|
+
}
|
|
94
|
+
async function resolveTrustStorePem() {
|
|
95
|
+
if (!hasProcessEnv()) {
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
const rawValue = process.env?.FAME_CA_CERTS ?? null;
|
|
99
|
+
if (!rawValue || rawValue.trim().length === 0) {
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
const trimmed = rawValue.replace(/\r/gu, "").trim();
|
|
103
|
+
if (trimmed.startsWith("-----BEGIN")) {
|
|
104
|
+
return trimmed;
|
|
105
|
+
}
|
|
106
|
+
if (!isNodeProcess()) {
|
|
107
|
+
throw new Error("FAME_CA_CERTS must contain PEM-encoded certificates when running outside of Node.js");
|
|
108
|
+
}
|
|
109
|
+
try {
|
|
110
|
+
const fs = await import("node:fs/promises");
|
|
111
|
+
const content = await fs.readFile(trimmed, "utf8");
|
|
112
|
+
return content.replace(/\r/gu, "").trim();
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
const reason = error instanceof Error ? error.message : String(error);
|
|
116
|
+
throw new Error(`Failed to read trust store from ${trimmed}: ${reason}`);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
export class EdDSAEnvelopeVerifier {
|
|
90
120
|
constructor(keyProvider, options = {}) {
|
|
91
121
|
this.keyProvider = keyProvider;
|
|
92
|
-
this.signingConfig = options.signingConfig ?? new
|
|
122
|
+
this.signingConfig = options.signingConfig ?? new SigningConfigClass();
|
|
93
123
|
ensureNobleSha512Fallback();
|
|
94
124
|
}
|
|
95
125
|
async verifyEnvelope(envelope, options = {}) {
|
|
@@ -104,10 +134,10 @@ class EdDSAEnvelopeVerifier {
|
|
|
104
134
|
throw new Error(`Unknown key id: ${kid}`);
|
|
105
135
|
}
|
|
106
136
|
try {
|
|
107
|
-
|
|
137
|
+
validateSigningKey(jwk);
|
|
108
138
|
}
|
|
109
139
|
catch (error) {
|
|
110
|
-
if (error instanceof
|
|
140
|
+
if (error instanceof JWKValidationError) {
|
|
111
141
|
throw new Error(`Key ${kid} is not valid for signing: ${error.message}`);
|
|
112
142
|
}
|
|
113
143
|
throw error;
|
|
@@ -120,8 +150,8 @@ class EdDSAEnvelopeVerifier {
|
|
|
120
150
|
throw new Error("DataFrame missing payload digest (pd field)");
|
|
121
151
|
}
|
|
122
152
|
const payload = envelope.frame.payload ?? "";
|
|
123
|
-
const payloadString = payload === "" ? "" :
|
|
124
|
-
const actualDigest =
|
|
153
|
+
const payloadString = payload === "" ? "" : canonicalJson(payload);
|
|
154
|
+
const actualDigest = secureDigest(payloadString);
|
|
125
155
|
if (actualDigest !== envelope.frame.pd) {
|
|
126
156
|
throw new Error("Payload digest mismatch in DataFrame");
|
|
127
157
|
}
|
|
@@ -135,18 +165,18 @@ class EdDSAEnvelopeVerifier {
|
|
|
135
165
|
}
|
|
136
166
|
}
|
|
137
167
|
else {
|
|
138
|
-
trustedDigest =
|
|
168
|
+
trustedDigest = frameDigest(envelope.frame);
|
|
139
169
|
}
|
|
140
170
|
const sid = assertString(jwk.sid, "Signing key missing sid");
|
|
141
|
-
const immutable =
|
|
142
|
-
const tbs = new Uint8Array(
|
|
171
|
+
const immutable = canonicalJson(immutableHeaders(envelope));
|
|
172
|
+
const tbs = new Uint8Array(encodeUtf8(sid).length +
|
|
143
173
|
1 +
|
|
144
|
-
|
|
174
|
+
encodeUtf8(immutable).length +
|
|
145
175
|
1 +
|
|
146
|
-
|
|
147
|
-
const sidBytes =
|
|
148
|
-
const immBytes =
|
|
149
|
-
const digestBytes =
|
|
176
|
+
encodeUtf8(trustedDigest).length);
|
|
177
|
+
const sidBytes = encodeUtf8(sid);
|
|
178
|
+
const immBytes = encodeUtf8(immutable);
|
|
179
|
+
const digestBytes = encodeUtf8(trustedDigest);
|
|
150
180
|
let offset = 0;
|
|
151
181
|
tbs.set(sidBytes, offset);
|
|
152
182
|
offset += sidBytes.length;
|
|
@@ -157,7 +187,7 @@ class EdDSAEnvelopeVerifier {
|
|
|
157
187
|
tbs[offset] = 0x1f;
|
|
158
188
|
offset += 1;
|
|
159
189
|
tbs.set(digestBytes, offset);
|
|
160
|
-
const signatureBytes =
|
|
190
|
+
const signatureBytes = decodeBase64Url(signatureValue);
|
|
161
191
|
if (signatureBytes.length !== 64) {
|
|
162
192
|
throw new Error("Signature must be 64 bytes for Ed25519");
|
|
163
193
|
}
|
|
@@ -165,12 +195,11 @@ class EdDSAEnvelopeVerifier {
|
|
|
165
195
|
if (publicKey.length !== 32) {
|
|
166
196
|
throw new Error("Ed25519 public key must be 32 bytes");
|
|
167
197
|
}
|
|
168
|
-
const valid = await
|
|
198
|
+
const valid = await verify(signatureBytes, tbs, publicKey);
|
|
169
199
|
if (!valid) {
|
|
170
200
|
throw new Error("Envelope signature verification failed");
|
|
171
201
|
}
|
|
172
202
|
return true;
|
|
173
203
|
}
|
|
174
204
|
}
|
|
175
|
-
exports.EdDSAEnvelopeVerifier = EdDSAEnvelopeVerifier;
|
|
176
205
|
//# sourceMappingURL=eddsa-envelope-verifier.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eddsa-envelope-verifier.js","sourceRoot":"","sources":["../../../../../../src/naylence/fame/security/signing/eddsa-envelope-verifier.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"eddsa-envelope-verifier.js","sourceRoot":"","sources":["../../../../../../src/naylence/fame/security/signing/eddsa-envelope-verifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const aft_signer_js_1 = require("./aft-signer.js");
|
|
7
|
-
const stickiness_mode_js_1 = require("./stickiness-mode.js");
|
|
8
|
-
const logger = (0, runtime_1.getLogger)("naylence.fame.stickiness.aft_helper");
|
|
9
|
-
class AFTHelper {
|
|
1
|
+
import { getLogger } from "@naylence/runtime";
|
|
2
|
+
import { createAftSigner } from "./aft-signer.js";
|
|
3
|
+
import { StickinessMode } from "./stickiness-mode.js";
|
|
4
|
+
const logger = getLogger("naylence.fame.stickiness.aft_helper");
|
|
5
|
+
export class AFTHelper {
|
|
10
6
|
constructor(options) {
|
|
11
7
|
this.signer = options.signer;
|
|
12
8
|
this.nodeSid = options.nodeSid;
|
|
@@ -67,11 +63,10 @@ class AFTHelper {
|
|
|
67
63
|
return this.requestStickiness(envelope, { ...options, scope: "sess" });
|
|
68
64
|
}
|
|
69
65
|
}
|
|
70
|
-
|
|
71
|
-
function createAftHelper(options) {
|
|
66
|
+
export function createAftHelper(options) {
|
|
72
67
|
const { nodeSid, maxTtlSec = 7200 } = options;
|
|
73
|
-
const signer =
|
|
68
|
+
const signer = createAftSigner(options);
|
|
74
69
|
return new AFTHelper({ signer, nodeSid, maxTtlSec });
|
|
75
70
|
}
|
|
76
|
-
|
|
71
|
+
export const DEFAULT_STICKINESS_SECURITY_LEVEL = StickinessMode.SIGNED_OPTIONAL;
|
|
77
72
|
//# sourceMappingURL=aft-helper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aft-helper.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/stickiness/aft-helper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aft-helper.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/stickiness/aft-helper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
const stickiness_mode_js_1 = require("./stickiness-mode.js");
|
|
8
|
-
exports.FACTORY_META = {
|
|
9
|
-
base: runtime_1.LOAD_BALANCER_STICKINESS_MANAGER_FACTORY_BASE_TYPE,
|
|
1
|
+
import { LOAD_BALANCER_STICKINESS_MANAGER_FACTORY_BASE_TYPE, LoadBalancerStickinessManagerFactory, } from "@naylence/runtime";
|
|
2
|
+
import { AFTLoadBalancerStickinessManager } from "./aft-load-balancer-stickiness-manager.js";
|
|
3
|
+
import { createAftVerifier } from "./aft-verifier.js";
|
|
4
|
+
import { StickinessMode, normalizeStickinessMode } from "./stickiness-mode.js";
|
|
5
|
+
export const FACTORY_META = {
|
|
6
|
+
base: LOAD_BALANCER_STICKINESS_MANAGER_FACTORY_BASE_TYPE,
|
|
10
7
|
key: "AFTLoadBalancerStickinessManager",
|
|
11
8
|
};
|
|
12
9
|
const DEFAULT_VALUES = {
|
|
@@ -14,7 +11,7 @@ const DEFAULT_VALUES = {
|
|
|
14
11
|
clientEcho: false,
|
|
15
12
|
defaultTtlSec: 30,
|
|
16
13
|
cacheMax: 100000,
|
|
17
|
-
securityLevel:
|
|
14
|
+
securityLevel: StickinessMode.SIGNED_OPTIONAL,
|
|
18
15
|
maxTtlSec: 7200,
|
|
19
16
|
};
|
|
20
17
|
function toBoolean(value, fallback) {
|
|
@@ -29,7 +26,7 @@ function toNumber(value, fallback) {
|
|
|
29
26
|
function normalizeConfig(config) {
|
|
30
27
|
const record = (config ?? {});
|
|
31
28
|
const normalizedSecurity = record.securityLevel
|
|
32
|
-
?
|
|
29
|
+
? normalizeStickinessMode(record.securityLevel)
|
|
33
30
|
: DEFAULT_VALUES.securityLevel;
|
|
34
31
|
return {
|
|
35
32
|
...record,
|
|
@@ -42,7 +39,7 @@ function normalizeConfig(config) {
|
|
|
42
39
|
maxTtlSec: toNumber(record.maxTtlSec, DEFAULT_VALUES.maxTtlSec),
|
|
43
40
|
};
|
|
44
41
|
}
|
|
45
|
-
class AFTLoadBalancerStickinessManagerFactory extends
|
|
42
|
+
export class AFTLoadBalancerStickinessManagerFactory extends LoadBalancerStickinessManagerFactory {
|
|
46
43
|
constructor() {
|
|
47
44
|
super(...arguments);
|
|
48
45
|
this.type = "AFTLoadBalancerStickinessManager";
|
|
@@ -52,7 +49,7 @@ class AFTLoadBalancerStickinessManagerFactory extends runtime_1.LoadBalancerStic
|
|
|
52
49
|
const resolvedConfig = normalizeConfig(config);
|
|
53
50
|
let effectiveVerifier = verifier ?? null;
|
|
54
51
|
if (!effectiveVerifier && keyProvider) {
|
|
55
|
-
effectiveVerifier =
|
|
52
|
+
effectiveVerifier = createAftVerifier({
|
|
56
53
|
securityLevel: resolvedConfig.securityLevel ?? DEFAULT_VALUES.securityLevel,
|
|
57
54
|
keyProvider,
|
|
58
55
|
defaultTtlSec: resolvedConfig.defaultTtlSec ?? DEFAULT_VALUES.defaultTtlSec,
|
|
@@ -61,9 +58,8 @@ class AFTLoadBalancerStickinessManagerFactory extends runtime_1.LoadBalancerStic
|
|
|
61
58
|
if (!effectiveVerifier) {
|
|
62
59
|
throw new Error("AFTLoadBalancerStickinessManagerFactory requires an AFT verifier or key provider");
|
|
63
60
|
}
|
|
64
|
-
return new
|
|
61
|
+
return new AFTLoadBalancerStickinessManager(resolvedConfig, effectiveVerifier);
|
|
65
62
|
}
|
|
66
63
|
}
|
|
67
|
-
|
|
68
|
-
exports.default = AFTLoadBalancerStickinessManagerFactory;
|
|
64
|
+
export default AFTLoadBalancerStickinessManagerFactory;
|
|
69
65
|
//# sourceMappingURL=aft-load-balancer-stickiness-manager-factory.js.map
|
package/dist/cjs/naylence/fame/stickiness/aft-load-balancer-stickiness-manager-factory.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aft-load-balancer-stickiness-manager-factory.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/stickiness/aft-load-balancer-stickiness-manager-factory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aft-load-balancer-stickiness-manager-factory.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/stickiness/aft-load-balancer-stickiness-manager-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const runtime_2 = require("@naylence/runtime");
|
|
7
|
-
const stickiness_mode_js_1 = require("./stickiness-mode.js");
|
|
8
|
-
const logger = (0, runtime_2.getLogger)("naylence.fame.stickiness.aft_load_balancer_stickiness_manager");
|
|
1
|
+
import { DeliveryOriginType } from "@naylence/core";
|
|
2
|
+
import { BaseNodeEventListener } from "@naylence/runtime";
|
|
3
|
+
import { getLogger } from "@naylence/runtime";
|
|
4
|
+
import { StickinessMode } from "./stickiness-mode.js";
|
|
5
|
+
const logger = getLogger("naylence.fame.stickiness.aft_load_balancer_stickiness_manager");
|
|
9
6
|
class AFTAssociation {
|
|
10
7
|
constructor(params) {
|
|
11
8
|
this.replicaId = params.replicaId;
|
|
@@ -24,7 +21,7 @@ class AFTAssociation {
|
|
|
24
21
|
return this.trustLevel === "low-trust";
|
|
25
22
|
}
|
|
26
23
|
}
|
|
27
|
-
class AFTLoadBalancerStickinessManager extends
|
|
24
|
+
export class AFTLoadBalancerStickinessManager extends BaseNodeEventListener {
|
|
28
25
|
get cacheMax() {
|
|
29
26
|
return this.config.cacheMax ?? 100000;
|
|
30
27
|
}
|
|
@@ -180,7 +177,7 @@ class AFTLoadBalancerStickinessManager extends runtime_1.BaseNodeEventListener {
|
|
|
180
177
|
if (envelope.sid) {
|
|
181
178
|
const cachedReplica = this.sidCache.get(envelope.sid);
|
|
182
179
|
if (cachedReplica) {
|
|
183
|
-
if (this.config.securityLevel ===
|
|
180
|
+
if (this.config.securityLevel === StickinessMode.SID_ONLY) {
|
|
184
181
|
this.metrics.cacheHits += 1;
|
|
185
182
|
logger.debug("sid_cache_routed_envelope", {
|
|
186
183
|
envelope_id: envelope.id,
|
|
@@ -327,14 +324,14 @@ class AFTLoadBalancerStickinessManager extends runtime_1.BaseNodeEventListener {
|
|
|
327
324
|
origin_type: context?.originType ?? "unknown",
|
|
328
325
|
from_system_id: context?.fromSystemId ?? null,
|
|
329
326
|
});
|
|
330
|
-
if (context?.originType ===
|
|
327
|
+
if (context?.originType === DeliveryOriginType.DOWNSTREAM) {
|
|
331
328
|
const sourceRoute = context.fromSystemId;
|
|
332
329
|
if (sourceRoute) {
|
|
333
330
|
logger.debug("processing_downstream_envelope", {
|
|
334
331
|
envelope_id: envelope.id,
|
|
335
332
|
source_route: sourceRoute,
|
|
336
333
|
});
|
|
337
|
-
if (this.config.securityLevel ===
|
|
334
|
+
if (this.config.securityLevel === StickinessMode.SID_ONLY &&
|
|
338
335
|
envelope.sid &&
|
|
339
336
|
!this.sidCache.has(envelope.sid)) {
|
|
340
337
|
this.sidCache.set(envelope.sid, sourceRoute);
|
|
@@ -406,7 +403,7 @@ class AFTLoadBalancerStickinessManager extends runtime_1.BaseNodeEventListener {
|
|
|
406
403
|
this.removeAssociation(token);
|
|
407
404
|
return null;
|
|
408
405
|
}
|
|
409
|
-
if (this.verifier.securityLevel ===
|
|
406
|
+
if (this.verifier.securityLevel === StickinessMode.STRICT &&
|
|
410
407
|
association.isLowTrust()) {
|
|
411
408
|
logger.warning("rejecting_low_trust_association", {
|
|
412
409
|
envelope_id: envelope.id,
|
|
@@ -420,7 +417,6 @@ class AFTLoadBalancerStickinessManager extends runtime_1.BaseNodeEventListener {
|
|
|
420
417
|
return association.replicaId;
|
|
421
418
|
}
|
|
422
419
|
}
|
|
423
|
-
exports.AFTLoadBalancerStickinessManager = AFTLoadBalancerStickinessManager;
|
|
424
420
|
function extractAftInstruction(envelope) {
|
|
425
421
|
if (!envelope.meta) {
|
|
426
422
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aft-load-balancer-stickiness-manager.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/stickiness/aft-load-balancer-stickiness-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"aft-load-balancer-stickiness-manager.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/stickiness/aft-load-balancer-stickiness-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isSignedAft = isSignedAft;
|
|
4
|
-
exports.sanitizeStickinessScope = sanitizeStickinessScope;
|
|
5
|
-
exports.serializeAftHeader = serializeAftHeader;
|
|
6
|
-
exports.serializeAftClaims = serializeAftClaims;
|
|
7
|
-
exports.createAftPayload = createAftPayload;
|
|
8
|
-
exports.describeSecurityLevel = describeSecurityLevel;
|
|
9
|
-
function isSignedAft(payload) {
|
|
1
|
+
export function isSignedAft(payload) {
|
|
10
2
|
return payload.header.alg !== "none";
|
|
11
3
|
}
|
|
12
|
-
function sanitizeStickinessScope(scope) {
|
|
4
|
+
export function sanitizeStickinessScope(scope) {
|
|
13
5
|
if (!scope) {
|
|
14
6
|
return undefined;
|
|
15
7
|
}
|
|
@@ -22,13 +14,13 @@ function sanitizeStickinessScope(scope) {
|
|
|
22
14
|
}
|
|
23
15
|
return undefined;
|
|
24
16
|
}
|
|
25
|
-
function serializeAftHeader(header) {
|
|
17
|
+
export function serializeAftHeader(header) {
|
|
26
18
|
return JSON.stringify({
|
|
27
19
|
alg: header.alg,
|
|
28
20
|
kid: header.kid,
|
|
29
21
|
});
|
|
30
22
|
}
|
|
31
|
-
function serializeAftClaims(claims) {
|
|
23
|
+
export function serializeAftClaims(claims) {
|
|
32
24
|
const payload = {
|
|
33
25
|
sid: claims.sid,
|
|
34
26
|
exp: claims.exp,
|
|
@@ -41,7 +33,7 @@ function serializeAftClaims(claims) {
|
|
|
41
33
|
}
|
|
42
34
|
return JSON.stringify(payload);
|
|
43
35
|
}
|
|
44
|
-
function createAftPayload(options) {
|
|
36
|
+
export function createAftPayload(options) {
|
|
45
37
|
const { sid, ttlSeconds, kid, algorithm, scope = null, clientSid = null, now = () => Math.floor(Date.now() / 1000), } = options;
|
|
46
38
|
const exp = now() + Math.max(0, Math.floor(ttlSeconds));
|
|
47
39
|
const sanitizedScope = sanitizeStickinessScope(scope);
|
|
@@ -56,7 +48,7 @@ function createAftPayload(options) {
|
|
|
56
48
|
};
|
|
57
49
|
return { header, claims };
|
|
58
50
|
}
|
|
59
|
-
function describeSecurityLevel(mode) {
|
|
51
|
+
export function describeSecurityLevel(mode) {
|
|
60
52
|
return mode;
|
|
61
53
|
}
|
|
62
54
|
//# sourceMappingURL=aft-model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aft-model.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/stickiness/aft-model.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aft-model.js","sourceRoot":"","sources":["../../../../../src/naylence/fame/stickiness/aft-model.ts"],"names":[],"mappings":"AAmBA,MAAM,UAAU,WAAW,CACzB,OAA2C;IAE3C,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,MAAM,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,KAAqB;IAErB,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC5E,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAiB;IAClD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,GAAG,EAAE,MAAM,CAAC,GAAG;KAChB,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAiB;IAClD,MAAM,OAAO,GAA4B;QACvC,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,GAAG,EAAE,MAAM,CAAC,GAAG;KAChB,CAAC;IAEF,IAAI,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5D,OAAO,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IAC3B,CAAC;IAED,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1E,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACzC,CAAC;IAED,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AACjC,CAAC;AAYD,MAAM,UAAU,gBAAgB,CAAC,OAAgC;IAC/D,MAAM,EACJ,GAAG,EACH,UAAU,EACV,GAAG,EACH,SAAS,EACT,KAAK,GAAG,IAAI,EACZ,SAAS,GAAG,IAAI,EAChB,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAC1C,GAAG,OAAO,CAAC;IAEZ,MAAM,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;IAExD,MAAM,cAAc,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,MAAM,GAAc,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;IAClD,MAAM,MAAM,GAAc;QACxB,GAAG;QACH,GAAG;QACH,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YACvD,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE;YAC3B,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IAEF,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAoB;IACxD,OAAO,IAAI,CAAC;AACd,CAAC"}
|