@iicp/client 0.7.84 → 0.7.86
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/README.md +21 -2
- package/dist/cli.d.ts +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +14 -2
- package/dist/cli.js.map +1 -1
- package/dist/node.d.ts +1 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +11 -1
- package/dist/node.js.map +1 -1
- package/dist/policy_manifest.d.ts +4 -0
- package/dist/policy_manifest.d.ts.map +1 -0
- package/dist/policy_manifest.js +56 -0
- package/dist/policy_manifest.js.map +1 -0
- package/dist/relay_session.d.ts.map +1 -1
- package/dist/relay_session.js +12 -4
- package/dist/relay_session.js.map +1 -1
- package/dist/relay_ticket.d.ts +6 -0
- package/dist/relay_ticket.d.ts.map +1 -1
- package/dist/relay_ticket.js +22 -0
- package/dist/relay_ticket.js.map +1 -1
- package/package.json +1 -1
package/dist/relay_ticket.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RelayBindTicketReplayCache = void 0;
|
|
4
|
+
exports.consumeRelayBindTicket = consumeRelayBindTicket;
|
|
3
5
|
exports.verifyRelayBindTicket = verifyRelayBindTicket;
|
|
4
6
|
exports.fetchRelayBindTicket = fetchRelayBindTicket;
|
|
5
7
|
// SPDX-License-Identifier: Apache-2.0
|
|
@@ -7,6 +9,24 @@ exports.fetchRelayBindTicket = fetchRelayBindTicket;
|
|
|
7
9
|
const node_crypto_1 = require("node:crypto");
|
|
8
10
|
const DOMAIN = "iicp:relay-bind-ticket:v1\n";
|
|
9
11
|
const ED25519_SPKI_PREFIX = Buffer.from("302a300506032b6570032100", "hex");
|
|
12
|
+
class RelayBindTicketReplayCache {
|
|
13
|
+
seen = new Map();
|
|
14
|
+
consume(claims, nowSec = Math.floor(Date.now() / 1000)) {
|
|
15
|
+
for (const [jti, exp] of this.seen) {
|
|
16
|
+
if (exp <= nowSec)
|
|
17
|
+
this.seen.delete(jti);
|
|
18
|
+
}
|
|
19
|
+
if (this.seen.has(claims.jti))
|
|
20
|
+
return false;
|
|
21
|
+
this.seen.set(claims.jti, claims.exp);
|
|
22
|
+
return true;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
exports.RelayBindTicketReplayCache = RelayBindTicketReplayCache;
|
|
26
|
+
const relayBindReplayCache = new RelayBindTicketReplayCache();
|
|
27
|
+
function consumeRelayBindTicket(claims, nowSec) {
|
|
28
|
+
return relayBindReplayCache.consume(claims, nowSec);
|
|
29
|
+
}
|
|
10
30
|
function b64pad(s) {
|
|
11
31
|
const b = s.replace(/-/g, "+").replace(/_/g, "/");
|
|
12
32
|
return b + "=".repeat((4 - (b.length % 4)) % 4);
|
|
@@ -35,6 +55,8 @@ function verifyRelayBindTicket(token, publicKeyHex, workerId, relayAudience = "*
|
|
|
35
55
|
}
|
|
36
56
|
if (payload.typ !== "relay-bind-ticket")
|
|
37
57
|
return null;
|
|
58
|
+
if (!/^[0-9a-f]{32}$/.test(payload.jti))
|
|
59
|
+
return null;
|
|
38
60
|
if (payload.sub !== workerId)
|
|
39
61
|
return null;
|
|
40
62
|
if (payload.exp <= nowSec)
|
package/dist/relay_ticket.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relay_ticket.js","sourceRoot":"","sources":["../src/relay_ticket.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"relay_ticket.js","sourceRoot":"","sources":["../src/relay_ticket.ts"],"names":[],"mappings":"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"}
|