@prosopo/provider 5.13.3 → 5.14.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 (89) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +13 -11
  2. package/.turbo/turbo-build$colon$tsc.log +27 -27
  3. package/.turbo/turbo-build.log +14 -12
  4. package/CHANGELOG.md +124 -0
  5. package/dist/api/adminAuthOptions.d.ts +4 -0
  6. package/dist/api/adminAuthOptions.d.ts.map +1 -0
  7. package/dist/api/adminAuthOptions.js +34 -0
  8. package/dist/api/adminAuthOptions.js.map +1 -0
  9. package/dist/api/detectorPoolBodyParser.d.ts +4 -0
  10. package/dist/api/detectorPoolBodyParser.d.ts.map +1 -0
  11. package/dist/api/detectorPoolBodyParser.js +31 -0
  12. package/dist/api/detectorPoolBodyParser.js.map +1 -0
  13. package/dist/api/domainMiddleware.d.ts.map +1 -1
  14. package/dist/api/domainMiddleware.js +5 -1
  15. package/dist/api/domainMiddleware.js.map +1 -1
  16. package/dist/api/metrics.d.ts +2 -1
  17. package/dist/api/metrics.d.ts.map +1 -1
  18. package/dist/api/metrics.js +46 -4
  19. package/dist/api/metrics.js.map +1 -1
  20. package/dist/api/startProviderApi.d.ts.map +1 -1
  21. package/dist/api/startProviderApi.js +6 -3
  22. package/dist/api/startProviderApi.js.map +1 -1
  23. package/dist/api/verify.d.ts.map +1 -1
  24. package/dist/api/verify.js +50 -8
  25. package/dist/api/verify.js.map +1 -1
  26. package/dist/cjs/api/adminAuthOptions.cjs +35 -0
  27. package/dist/cjs/api/detectorPoolBodyParser.cjs +33 -0
  28. package/dist/cjs/api/domainMiddleware.cjs +5 -1
  29. package/dist/cjs/api/metrics.cjs +46 -3
  30. package/dist/cjs/api/startProviderApi.cjs +6 -3
  31. package/dist/cjs/api/verify.cjs +50 -8
  32. package/dist/cjs/tasks/client/clientTasks.cjs +25 -4
  33. package/dist/cjs/tasks/dataset/datasetTasksUtils.cjs +1 -1
  34. package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +2 -2
  35. package/dist/cjs/utils/tarpitPadding.cjs +81 -9
  36. package/dist/tasks/client/clientTasks.d.ts +1 -0
  37. package/dist/tasks/client/clientTasks.d.ts.map +1 -1
  38. package/dist/tasks/client/clientTasks.js +25 -5
  39. package/dist/tasks/client/clientTasks.js.map +1 -1
  40. package/dist/tasks/dataset/datasetTasksUtils.js +1 -1
  41. package/dist/tasks/dataset/datasetTasksUtils.js.map +1 -1
  42. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +2 -2
  43. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js.map +1 -1
  44. package/dist/tests/unit/api/adminAuthOptions.unit.test.d.ts +2 -0
  45. package/dist/tests/unit/api/adminAuthOptions.unit.test.d.ts.map +1 -0
  46. package/dist/tests/unit/api/adminAuthOptions.unit.test.js +38 -0
  47. package/dist/tests/unit/api/adminAuthOptions.unit.test.js.map +1 -0
  48. package/dist/tests/unit/api/captcha/trafficFilterRequestTime.unit.test.js +24 -0
  49. package/dist/tests/unit/api/captcha/trafficFilterRequestTime.unit.test.js.map +1 -1
  50. package/dist/tests/unit/api/detectorPoolBodyParser.unit.test.d.ts +2 -0
  51. package/dist/tests/unit/api/detectorPoolBodyParser.unit.test.d.ts.map +1 -0
  52. package/dist/tests/unit/api/detectorPoolBodyParser.unit.test.js +64 -0
  53. package/dist/tests/unit/api/detectorPoolBodyParser.unit.test.js.map +1 -0
  54. package/dist/tests/unit/api/domainMiddlewareErrorBody.unit.test.d.ts +2 -0
  55. package/dist/tests/unit/api/domainMiddlewareErrorBody.unit.test.d.ts.map +1 -0
  56. package/dist/tests/unit/api/domainMiddlewareErrorBody.unit.test.js +67 -0
  57. package/dist/tests/unit/api/domainMiddlewareErrorBody.unit.test.js.map +1 -0
  58. package/dist/tests/unit/api/getFrictionlessCaptchaChallenge.unit.test.js +76 -1
  59. package/dist/tests/unit/api/getFrictionlessCaptchaChallenge.unit.test.js.map +1 -1
  60. package/dist/tests/unit/api/metricsAccess.unit.test.d.ts +2 -0
  61. package/dist/tests/unit/api/metricsAccess.unit.test.d.ts.map +1 -0
  62. package/dist/tests/unit/api/metricsAccess.unit.test.js +87 -0
  63. package/dist/tests/unit/api/metricsAccess.unit.test.js.map +1 -0
  64. package/dist/tests/unit/api/public.unit.test.js +4 -1
  65. package/dist/tests/unit/api/public.unit.test.js.map +1 -1
  66. package/dist/tests/unit/api/validateAddress.unit.test.js +1 -1
  67. package/dist/tests/unit/api/validateAddress.unit.test.js.map +1 -1
  68. package/dist/tests/unit/api/verifyBadDappSignature.unit.test.d.ts +2 -0
  69. package/dist/tests/unit/api/verifyBadDappSignature.unit.test.d.ts.map +1 -0
  70. package/dist/tests/unit/api/verifyBadDappSignature.unit.test.js +96 -0
  71. package/dist/tests/unit/api/verifyBadDappSignature.unit.test.js.map +1 -0
  72. package/dist/tests/unit/api/verifyMalformedToken.unit.test.d.ts +2 -0
  73. package/dist/tests/unit/api/verifyMalformedToken.unit.test.d.ts.map +1 -0
  74. package/dist/tests/unit/api/verifyMalformedToken.unit.test.js +89 -0
  75. package/dist/tests/unit/api/verifyMalformedToken.unit.test.js.map +1 -0
  76. package/dist/tests/unit/tasks/client/clientTasks.unit.test.js +33 -1
  77. package/dist/tests/unit/tasks/client/clientTasks.unit.test.js.map +1 -1
  78. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js +14 -1
  79. package/dist/tests/unit/tasks/dataset/datasetTasksUtils.unit.test.js.map +1 -1
  80. package/dist/tests/unit/tasks/spam/checkTrafficFilter.unit.test.js +41 -1
  81. package/dist/tests/unit/tasks/spam/checkTrafficFilter.unit.test.js.map +1 -1
  82. package/dist/tests/unit/utils/tarpitPadding.unit.test.d.ts +2 -0
  83. package/dist/tests/unit/utils/tarpitPadding.unit.test.d.ts.map +1 -0
  84. package/dist/tests/unit/utils/tarpitPadding.unit.test.js +181 -0
  85. package/dist/tests/unit/utils/tarpitPadding.unit.test.js.map +1 -0
  86. package/dist/utils/tarpitPadding.d.ts.map +1 -1
  87. package/dist/utils/tarpitPadding.js +81 -9
  88. package/dist/utils/tarpitPadding.js.map +1 -1
  89. package/package.json +20 -20
@@ -1 +1 @@
1
- {"version":3,"file":"checkTrafficFilter.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/spam/checkTrafficFilter.unit.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkTrafficFilter.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/spam/checkTrafficFilter.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=tarpitPadding.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tarpitPadding.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/unit/utils/tarpitPadding.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,181 @@
1
+ import { EventEmitter } from "node:events";
2
+ import { MAX_PAD_BYTES } from "@prosopo/types";
3
+ import { describe, expect, it, vi } from "vitest";
4
+ import { padResponseMiddleware } from "../../../utils/tarpitPadding.js";
5
+ const makeRes = ({ padBytes, highWaterMark }) => {
6
+ const chunks = [];
7
+ const headers = {};
8
+ const emitter = new EventEmitter();
9
+ let written = 0;
10
+ let ended = false;
11
+ let destroyed = false;
12
+ const jsonMock = vi.fn();
13
+ const res = Object.assign(emitter, {
14
+ locals: { padBytes },
15
+ json: jsonMock,
16
+ get writableEnded() {
17
+ return ended;
18
+ },
19
+ get destroyed() {
20
+ return destroyed;
21
+ },
22
+ setHeader: (name, value) => {
23
+ headers[name.toLowerCase()] = value;
24
+ },
25
+ write: (chunk) => {
26
+ chunks.push(chunk);
27
+ written += chunk.length;
28
+ return highWaterMark === undefined || written < highWaterMark;
29
+ },
30
+ end: () => {
31
+ ended = true;
32
+ return res;
33
+ },
34
+ destroy: () => {
35
+ destroyed = true;
36
+ },
37
+ });
38
+ return {
39
+ res,
40
+ emitter,
41
+ body: () => chunks.join(""),
42
+ written: () => written,
43
+ jsonMock,
44
+ headers,
45
+ ended: () => ended,
46
+ destroyed: () => destroyed,
47
+ close: () => {
48
+ destroyed = true;
49
+ emitter.emit("close");
50
+ },
51
+ };
52
+ };
53
+ const flush = () => new Promise((resolve) => setImmediate(resolve));
54
+ const send = async (fake, body) => {
55
+ const next = vi.fn();
56
+ padResponseMiddleware({}, fake.res, next);
57
+ expect(next).toHaveBeenCalled();
58
+ fake.res.json(body);
59
+ await flush();
60
+ };
61
+ const CHALLENGE = {
62
+ status: "ok",
63
+ challenge: "0x1234",
64
+ difficulty: 9,
65
+ timestamp: "1764000000000",
66
+ };
67
+ const padOf = (parsed) => Object.entries(parsed)
68
+ .filter(([key]) => !(key in CHALLENGE))
69
+ .map(([, value]) => String(value));
70
+ describe("padResponseMiddleware", () => {
71
+ it("leaves the response untouched when no padding was resolved", async () => {
72
+ const fake = makeRes({ padBytes: undefined });
73
+ await send(fake, CHALLENGE);
74
+ expect(fake.jsonMock).toHaveBeenCalledWith(CHALLENGE);
75
+ expect(fake.body()).toBe("");
76
+ });
77
+ it("leaves the response untouched for a zero or negative padBytes", async () => {
78
+ for (const padBytes of [0, -1]) {
79
+ const fake = makeRes({ padBytes });
80
+ await send(fake, CHALLENGE);
81
+ expect(fake.jsonMock).toHaveBeenCalledWith(CHALLENGE);
82
+ expect(fake.body()).toBe("");
83
+ }
84
+ });
85
+ it("emits the requested total padding and keeps every real field", async () => {
86
+ const fake = makeRes({ padBytes: 4096 });
87
+ await send(fake, CHALLENGE);
88
+ expect(fake.jsonMock).not.toHaveBeenCalled();
89
+ const parsed = JSON.parse(fake.body());
90
+ expect(parsed).toMatchObject(CHALLENGE);
91
+ expect(padOf(parsed).join("")).toHaveLength(4096);
92
+ expect(fake.headers["content-type"]).toBe("application/json; charset=utf-8");
93
+ expect(fake.ended()).toBe(true);
94
+ });
95
+ it("interleaves the padding so no real field arrives before some of it", async () => {
96
+ const fake = makeRes({ padBytes: 4096 });
97
+ await send(fake, CHALLENGE);
98
+ const body = fake.body();
99
+ const parsed = JSON.parse(fake.body());
100
+ const pads = padOf(parsed);
101
+ expect(pads).toHaveLength(Object.keys(CHALLENGE).length);
102
+ for (const field of Object.keys(CHALLENGE)) {
103
+ expect(body.indexOf(`"${field}"`)).toBeGreaterThan(0);
104
+ }
105
+ const lastPad = pads[pads.length - 1] ?? "";
106
+ expect(body.indexOf('"timestamp"')).toBeGreaterThan(4096 - lastPad.length);
107
+ });
108
+ it("uses unpredictable pad keys rather than a fixed marker", async () => {
109
+ const keysFor = async () => {
110
+ const fake = makeRes({ padBytes: 512 });
111
+ await send(fake, CHALLENGE);
112
+ const parsed = JSON.parse(fake.body());
113
+ return Object.keys(parsed).filter((key) => !(key in CHALLENGE));
114
+ };
115
+ const first = await keysFor();
116
+ const second = await keysFor();
117
+ expect(first).not.toContain("pad");
118
+ expect(first).not.toEqual(second);
119
+ });
120
+ it("pads with incompressible bytes", async () => {
121
+ const fake = makeRes({ padBytes: 8192 });
122
+ await send(fake, CHALLENGE);
123
+ const parsed = JSON.parse(fake.body());
124
+ expect(new Set(padOf(parsed).join("")).size).toBeGreaterThan(50);
125
+ });
126
+ it("clamps padding to the 5 MiB ceiling so it cannot be used as an amplifier", async () => {
127
+ const fake = makeRes({ padBytes: MAX_PAD_BYTES * 10 });
128
+ await send(fake, CHALLENGE);
129
+ const parsed = JSON.parse(fake.body());
130
+ expect(padOf(parsed).join("")).toHaveLength(MAX_PAD_BYTES);
131
+ });
132
+ it("emits valid JSON for a body with no fields", async () => {
133
+ const fake = makeRes({ padBytes: 64 });
134
+ await send(fake, {});
135
+ const parsed = JSON.parse(fake.body());
136
+ expect(padOf(parsed).join("")).toHaveLength(64);
137
+ });
138
+ it("does not pad a non-object body, which has no fields to splice into", async () => {
139
+ const fake = makeRes({ padBytes: 64 });
140
+ await send(fake, ["a", "b"]);
141
+ expect(fake.jsonMock).toHaveBeenCalledWith(["a", "b"]);
142
+ expect(fake.body()).toBe("");
143
+ });
144
+ it("stops writing once the socket reports backpressure and resumes on drain", async () => {
145
+ const fake = makeRes({ padBytes: 512 * 1024, highWaterMark: 64 * 1024 });
146
+ await send(fake, CHALLENGE);
147
+ const paused = fake.written();
148
+ expect(paused).toBeLessThan(128 * 1024);
149
+ expect(fake.ended()).toBe(false);
150
+ fake.emitter.emit("drain");
151
+ await flush();
152
+ expect(fake.written()).toBeGreaterThan(paused);
153
+ });
154
+ it("abandons the pad when the peer stops reading, instead of buffering it", async () => {
155
+ const fake = makeRes({
156
+ padBytes: MAX_PAD_BYTES,
157
+ highWaterMark: 64 * 1024,
158
+ });
159
+ await send(fake, CHALLENGE);
160
+ const paused = fake.written();
161
+ fake.close();
162
+ await flush();
163
+ expect(fake.written()).toBe(paused);
164
+ expect(fake.written()).toBeLessThan(128 * 1024);
165
+ expect(fake.ended()).toBe(false);
166
+ });
167
+ it("does not resume writing after a drain that follows a close", async () => {
168
+ const fake = makeRes({
169
+ padBytes: MAX_PAD_BYTES,
170
+ highWaterMark: 64 * 1024,
171
+ });
172
+ await send(fake, CHALLENGE);
173
+ fake.close();
174
+ await flush();
175
+ const paused = fake.written();
176
+ fake.emitter.emit("drain");
177
+ await flush();
178
+ expect(fake.written()).toBe(paused);
179
+ });
180
+ });
181
+ //# sourceMappingURL=tarpitPadding.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tarpitPadding.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/utils/tarpitPadding.unit.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tarpitPadding.d.ts","sourceRoot":"","sources":["../../src/utils/tarpitPadding.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAiB/D,eAAO,MAAM,qBAAqB,SAC3B,OAAO,OACR,QAAQ,QACP,YAAY,KAChB,IAOF,CAAC"}
1
+ {"version":3,"file":"tarpitPadding.d.ts","sourceRoot":"","sources":["../../src/utils/tarpitPadding.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAgH/D,eAAO,MAAM,qBAAqB,SAC3B,OAAO,OACR,QAAQ,QACP,YAAY,KAChB,IAkBF,CAAC"}
@@ -2,21 +2,93 @@ import { MAX_PAD_BYTES } from "@prosopo/types";
2
2
  import { randomBytes } from "node:crypto";
3
3
  //#region src/utils/tarpitPadding.ts
4
4
  var POOL = randomBytes(Math.ceil(MAX_PAD_BYTES * 3 / 4)).toString("base64");
5
+ var CHUNK_BYTES = 64 * 1024;
6
+ var KEY_ALPHABET = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
7
+ var MIN_KEY_LENGTH = 3;
8
+ var MAX_KEY_LENGTH = 12;
5
9
  var clampPadBytes = (padBytes) => padBytes && padBytes > 0 ? Math.min(Math.floor(padBytes), MAX_PAD_BYTES) : 0;
6
- var streamWithPad = (res, body, n) => {
7
- const offset = Math.floor(Math.random() * (POOL.length - n + 1));
8
- const rest = JSON.stringify(body);
10
+ var isPlainObject = (body) => typeof body === "object" && body !== null && !Array.isArray(body);
11
+ var bodyMembers = (body) => {
12
+ const serialised = JSON.stringify(body);
13
+ if (serialised === void 0 || !serialised.startsWith("{")) return void 0;
14
+ const normalised = JSON.parse(serialised);
15
+ return Object.entries(normalised).map(([key, value]) => ({
16
+ key,
17
+ encoded: `${JSON.stringify(key)}:${JSON.stringify(value)}`
18
+ }));
19
+ };
20
+ var randomKey = (taken) => {
21
+ for (;;) {
22
+ const length = MIN_KEY_LENGTH + Math.floor(Math.random() * (MAX_KEY_LENGTH - MIN_KEY_LENGTH + 1));
23
+ let key = "";
24
+ for (let index = 0; index < length; index++) key += KEY_ALPHABET.charAt(Math.floor(Math.random() * KEY_ALPHABET.length));
25
+ if (!taken.has(key)) {
26
+ taken.add(key);
27
+ return key;
28
+ }
29
+ }
30
+ };
31
+ var partition = (total, parts) => {
32
+ const cuts = [0, total];
33
+ for (let index = 1; index < parts; index++) cuts.push(Math.floor(Math.random() * (total + 1)));
34
+ cuts.sort((a, b) => a - b);
35
+ const sizes = [];
36
+ for (let index = 1; index < cuts.length; index++) sizes.push((cuts[index] ?? 0) - (cuts[index - 1] ?? 0));
37
+ return sizes;
38
+ };
39
+ var awaitDrain = (res) => new Promise((resolve) => {
40
+ const settle = (drained) => {
41
+ res.removeListener("drain", onDrain);
42
+ res.removeListener("close", onClose);
43
+ resolve(drained);
44
+ };
45
+ const onDrain = () => settle(true);
46
+ const onClose = () => settle(false);
47
+ res.once("drain", onDrain);
48
+ res.once("close", onClose);
49
+ });
50
+ var write = async (res, chunk) => {
51
+ if (res.writableEnded || res.destroyed) return false;
52
+ return res.write(chunk) ? true : await awaitDrain(res);
53
+ };
54
+ var writePad = async (res, size) => {
55
+ const offset = Math.floor(Math.random() * (POOL.length - size + 1));
56
+ for (let written = 0; written < size; written += CHUNK_BYTES) {
57
+ const from = offset + written;
58
+ const to = offset + Math.min(written + CHUNK_BYTES, size);
59
+ if (!await write(res, POOL.slice(from, to))) return false;
60
+ }
61
+ return true;
62
+ };
63
+ var streamWithPad = async (res, members, total) => {
64
+ const segments = Math.max(members.length, 1);
65
+ const sizes = partition(total, segments);
66
+ const taken = new Set(members.map((member) => member.key));
9
67
  res.setHeader("content-type", "application/json; charset=utf-8");
10
- res.write("{\"pad\":\"");
11
- res.write(POOL.slice(offset, offset + n));
12
- res.write(`",${rest.slice(1)}`);
13
- return res.end();
68
+ let separator = "{";
69
+ for (let index = 0; index < segments; index++) {
70
+ if (!await write(res, `${separator}"${randomKey(taken)}":"`)) return;
71
+ if (!await writePad(res, sizes[index] ?? 0)) return;
72
+ const member = members[index];
73
+ if (!await write(res, member ? `",${member.encoded}` : "\"")) return;
74
+ separator = ",";
75
+ }
76
+ if (!await write(res, "}")) return;
77
+ res.end();
14
78
  };
15
79
  var padResponseMiddleware = (_req, res, next) => {
16
80
  const originalJson = res.json.bind(res);
17
81
  res.json = (body) => {
18
- const n = clampPadBytes(res.locals.padBytes);
19
- return n === 0 ? originalJson(body) : streamWithPad(res, body, n);
82
+ const total = clampPadBytes(res.locals.padBytes);
83
+ if (total === 0 || !isPlainObject(body)) return originalJson(body);
84
+ const members = bodyMembers(body);
85
+ if (members === void 0) return originalJson(body);
86
+ const swallow = () => void 0;
87
+ res.on("error", swallow);
88
+ streamWithPad(res, members, total).catch(() => {
89
+ if (!res.destroyed) res.destroy();
90
+ }).finally(() => res.removeListener("error", swallow));
91
+ return res;
20
92
  };
21
93
  next();
22
94
  };
@@ -1 +1 @@
1
- {"version":3,"file":"tarpitPadding.js","sourceRoot":"","sources":["../../src/utils/tarpitPadding.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAEhF,MAAM,aAAa,GAAG,CAAC,QAA4B,EAAU,EAAE,CAC9D,QAAQ,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9E,MAAM,aAAa,GAAG,CAAC,GAAa,EAAE,IAAY,EAAE,CAAS,EAAY,EAAE;IAC1E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAClC,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,iCAAiC,CAAC,CAAC;IACjE,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1C,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAChC,OAAO,GAAG,CAAC,GAAG,EAAE,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACpC,IAAa,EACb,GAAa,EACb,IAAkB,EACX,EAAE;IACT,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxC,GAAG,CAAC,IAAI,GAAG,CAAC,IAAY,EAAY,EAAE;QACrC,MAAM,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7C,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC;IACF,IAAI,EAAE,CAAC;AACR,CAAC,CAAC"}
1
+ {"version":3,"file":"tarpitPadding.js","sourceRoot":"","sources":["../../src/utils/tarpitPadding.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prosopo/provider",
3
- "version": "5.13.3",
3
+ "version": "5.14.0",
4
4
  "author": "PROSOPO LIMITED <info@prosopo.io>",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -24,30 +24,30 @@
24
24
  "dependencies": {
25
25
  "@noble/hashes": "2.4.0",
26
26
  "@polkadot/util": "14.0.3",
27
- "@prosopo/api": "4.3.7",
28
- "@prosopo/api-express-router": "3.1.97",
29
- "@prosopo/api-route": "2.6.61",
27
+ "@prosopo/api": "4.3.8",
28
+ "@prosopo/api-express-router": "3.2.0",
29
+ "@prosopo/api-route": "2.6.62",
30
30
  "@prosopo/captcha-severity": "1.1.2",
31
- "@prosopo/common": "3.1.60",
32
- "@prosopo/database": "4.1.1",
33
- "@prosopo/datasets": "3.1.93",
34
- "@prosopo/env": "3.6.66",
35
- "@prosopo/ipinfo": "0.4.12",
36
- "@prosopo/keyring": "2.9.99",
37
- "@prosopo/load-balancer": "2.11.3",
38
- "@prosopo/locale": "3.6.1",
39
- "@prosopo/logger": "2.1.1",
31
+ "@prosopo/common": "3.1.61",
32
+ "@prosopo/database": "4.1.3",
33
+ "@prosopo/datasets": "3.2.0",
34
+ "@prosopo/env": "3.6.68",
35
+ "@prosopo/ipinfo": "0.4.13",
36
+ "@prosopo/keyring": "2.10.0",
37
+ "@prosopo/load-balancer": "2.11.4",
38
+ "@prosopo/locale": "3.6.2",
39
+ "@prosopo/logger": "2.1.2",
40
40
  "@prosopo/native-ja4": "0.0.7",
41
41
  "@prosopo/native-merkle": "0.0.6",
42
42
  "@prosopo/native-puzzle": "0.1.0",
43
43
  "@prosopo/puzzle-assets": "0.1.4",
44
- "@prosopo/redis-client": "1.0.38",
45
- "@prosopo/types": "5.11.1",
46
- "@prosopo/types-database": "5.7.1",
47
- "@prosopo/types-env": "2.11.12",
48
- "@prosopo/user-access-policy": "3.14.13",
49
- "@prosopo/util": "3.3.12",
50
- "@prosopo/util-crypto": "13.5.33",
44
+ "@prosopo/redis-client": "1.0.39",
45
+ "@prosopo/types": "5.12.0",
46
+ "@prosopo/types-database": "5.7.3",
47
+ "@prosopo/types-env": "2.11.14",
48
+ "@prosopo/user-access-policy": "3.14.14",
49
+ "@prosopo/util": "3.3.13",
50
+ "@prosopo/util-crypto": "13.6.0",
51
51
  "@prosopo/web-bot-auth": "0.1.3",
52
52
  "cron": "3.1.7",
53
53
  "express": "4.22.2",