@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
@@ -30,6 +30,36 @@ var VERIFY_PATH_TYPE = {
30
30
  [_prosopo_types.ClientApiPaths.VerifyPowCaptchaSolution]: _prosopo_types.CaptchaType.pow,
31
31
  [_prosopo_types.ClientApiPaths.VerifyPuzzleCaptchaSolution]: _prosopo_types.CaptchaType.puzzle
32
32
  };
33
+ var decodeTokenOr400 = (token, i18n, logger, next) => {
34
+ try {
35
+ return (0, _prosopo_types.decodeProcaptchaOutput)(token);
36
+ } catch (error) {
37
+ next(new _prosopo_common.ProsopoApiError("CAPTCHA.PARSE_ERROR", {
38
+ context: {
39
+ code: 400,
40
+ error
41
+ },
42
+ i18n,
43
+ logger
44
+ }));
45
+ return null;
46
+ }
47
+ };
48
+ var dappSignatureError = (signature, message, pair, req) => {
49
+ try {
50
+ (0, _prosopo_api_express_router.verifySignature)(signature, message, pair);
51
+ return;
52
+ } catch {
53
+ return new _prosopo_common.ProsopoApiError("GENERAL.INVALID_SIGNATURE", {
54
+ context: {
55
+ code: 400,
56
+ siteKey: pair.address
57
+ },
58
+ i18n: req.i18n,
59
+ logger: req.logger
60
+ });
61
+ }
62
+ };
33
63
  /**
34
64
  * Returns a router connected to the database which can interact with the Proposo protocol
35
65
  *
@@ -98,7 +128,9 @@ function prosopoVerifyRouter(env) {
98
128
  }
99
129
  const { dappSignature, token, ip, maxVerifiedTime, email, clientSessionId } = parsed;
100
130
  try {
101
- const { user, dapp, timestamp, commitmentId, providerUrl } = (0, _prosopo_types.decodeProcaptchaOutput)(token);
131
+ const decoded = decodeTokenOr400(token, req.i18n, req.logger, next);
132
+ if (decoded === null) return;
133
+ const { user, dapp, timestamp, commitmentId, providerUrl } = decoded;
102
134
  const testVerdict = require_testSiteKey.resolveTestSiteKeyVerdict(dapp, req.logger);
103
135
  if (testVerdict !== null) {
104
136
  const verificationResponse = {
@@ -132,7 +164,8 @@ function prosopoVerifyRouter(env) {
132
164
  logger: req.logger
133
165
  }));
134
166
  const keyPair = env.keyring.addFromAddress(dapp);
135
- (0, _prosopo_api_express_router.verifySignature)(dappSignature, timestamp.toString(), keyPair);
167
+ const signatureError = dappSignatureError(dappSignature, timestamp.toString(), keyPair, req);
168
+ if (signatureError) return next(signatureError);
136
169
  const response = await tasks.imgCaptchaManager.verifyImageCaptchaSolution(user, dapp, commitmentId, env, maxVerifiedTime, ip, clientRecord.settings.disallowWebView, userAccessRulesStorage, email, clientRecord.settings.spamEmailDomainCheckEnabled, clientRecord.settings.spamFilter, clientRecord.settings.trafficFilter, clientRecord.settings.storeMetadata, clientSessionId);
137
170
  req.logger.debug(() => ({ data: { response } }));
138
171
  const verificationResponse = tasks.imgCaptchaManager.getVerificationResponse(response[_prosopo_types.ApiParams.verified], clientRecord, req.i18n.t, response[_prosopo_types.ApiParams.score], response[_prosopo_types.ApiParams.commitmentId], response[_prosopo_types.ApiParams.status], response[_prosopo_types.ApiParams.sessionId]);
@@ -183,7 +216,9 @@ function prosopoVerifyRouter(env) {
183
216
  }
184
217
  try {
185
218
  const { token, dappSignature, ip, email, clientSessionId } = parsed;
186
- const { dapp, user, timestamp, challenge, providerUrl } = (0, _prosopo_types.decodeProcaptchaOutput)(token);
219
+ const decoded = decodeTokenOr400(token, req.i18n, req.logger, next);
220
+ if (decoded === null) return;
221
+ const { dapp, user, timestamp, challenge, providerUrl } = decoded;
187
222
  const testVerdict = require_testSiteKey.resolveTestSiteKeyVerdict(dapp, req.logger);
188
223
  if (testVerdict !== null) {
189
224
  const verificationResponse = {
@@ -223,7 +258,8 @@ function prosopoVerifyRouter(env) {
223
258
  return res.json(unverifiedResponse);
224
259
  }
225
260
  const dappPair = env.keyring.addFromAddress(dapp);
226
- (0, _prosopo_api_express_router.verifySignature)(dappSignature, timestamp.toString(), dappPair);
261
+ const signatureError = dappSignatureError(dappSignature, timestamp.toString(), dappPair, req);
262
+ if (signatureError) return next(signatureError);
227
263
  const { verified, score, reason, sessionId } = await tasks.powCaptchaManager.serverVerifyPowCaptchaSolution(dapp, challenge, clientRecord.settings.verifiedTimeout, env, ip, userAccessRulesStorage, email, clientRecord.settings.spamEmailDomainCheckEnabled, clientRecord.settings.spamFilter, clientRecord.settings.trafficFilter, clientRecord.settings.storeMetadata, clientSessionId);
228
264
  const verificationResponse = tasks.powCaptchaManager.getVerificationResponse(verified, clientRecord, req.i18n.t, score, reason, sessionId);
229
265
  return res.json(verificationResponse);
@@ -272,7 +308,9 @@ function prosopoVerifyRouter(env) {
272
308
  }
273
309
  try {
274
310
  const { token, dappSignature, ip, email, clientSessionId } = parsed;
275
- const { dapp, user, timestamp, challenge, providerUrl } = (0, _prosopo_types.decodeProcaptchaOutput)(token);
311
+ const decoded = decodeTokenOr400(token, req.i18n, req.logger, next);
312
+ if (decoded === null) return;
313
+ const { dapp, user, timestamp, challenge, providerUrl } = decoded;
276
314
  const testVerdict = require_testSiteKey.resolveTestSiteKeyVerdict(dapp, req.logger);
277
315
  if (testVerdict !== null) {
278
316
  const verificationResponse = {
@@ -312,7 +350,8 @@ function prosopoVerifyRouter(env) {
312
350
  return res.json(unverifiedResponse);
313
351
  }
314
352
  const dappPair = env.keyring.addFromAddress(dapp);
315
- (0, _prosopo_api_express_router.verifySignature)(dappSignature, timestamp.toString(), dappPair);
353
+ const signatureError = dappSignatureError(dappSignature, timestamp.toString(), dappPair, req);
354
+ if (signatureError) return next(signatureError);
316
355
  const { verified, score, sessionId } = await tasks.puzzleCaptchaManager.serverVerifyPuzzleCaptchaSolution(dapp, challenge, clientRecord.settings.verifiedTimeout, env, ip, userAccessRulesStorage, email, clientRecord.settings.spamEmailDomainCheckEnabled, clientRecord.settings.spamFilter, clientRecord.settings.trafficFilter, clientRecord.settings.storeMetadata, clientSessionId);
317
356
  const verificationResponse = tasks.puzzleCaptchaManager.getVerificationResponse(verified, clientRecord, req.i18n.t, score, void 0, sessionId);
318
357
  return res.json(verificationResponse);
@@ -361,7 +400,9 @@ function prosopoVerifyRouter(env) {
361
400
  }
362
401
  const { dappSignature, token, ip, clientSessionId } = parsed;
363
402
  try {
364
- const { user, dapp, timestamp, commitmentId: sessionId, providerUrl } = (0, _prosopo_types.decodeProcaptchaOutput)(token);
403
+ const decoded = decodeTokenOr400(token, req.i18n, req.logger, next);
404
+ if (decoded === null) return;
405
+ const { user, dapp, timestamp, commitmentId: sessionId, providerUrl } = decoded;
365
406
  const testVerdict = require_testSiteKey.resolveTestSiteKeyVerdict(dapp, req.logger);
366
407
  if (testVerdict !== null) return res.json({
367
408
  status: "ok",
@@ -391,7 +432,8 @@ function prosopoVerifyRouter(env) {
391
432
  logger: req.logger
392
433
  }));
393
434
  const keyPair = env.keyring.addFromAddress(dapp);
394
- (0, _prosopo_api_express_router.verifySignature)(dappSignature, timestamp.toString(), keyPair);
435
+ const signatureError = dappSignatureError(dappSignature, timestamp.toString(), keyPair, req);
436
+ if (signatureError) return next(signatureError);
395
437
  if (!sessionId) return res.json({
396
438
  status: "API.USER_NOT_VERIFIED_NO_SOLUTION",
397
439
  verified: false
@@ -5,6 +5,29 @@ let _prosopo_database = require("@prosopo/database");
5
5
  let _prosopo_types = require("@prosopo/types");
6
6
  require("node:crypto");
7
7
  let _prosopo_util = require("@prosopo/util");
8
+ /**
9
+ * Matches `text` against a pattern where `*` matches any run of characters.
10
+ * Greedy two-pointer match, retrying from the last `*` on mismatch, so time
11
+ * is bounded by pattern length times text length.
12
+ */
13
+ var matchesGlob = (pattern, text) => {
14
+ let p = 0;
15
+ let t = 0;
16
+ let starP = -1;
17
+ let starT = 0;
18
+ while (t < text.length) if (p < pattern.length && pattern[p] === "*") {
19
+ starP = p++;
20
+ starT = t;
21
+ } else if (p < pattern.length && pattern[p] === text[t]) {
22
+ p++;
23
+ t++;
24
+ } else if (starP !== -1) {
25
+ p = starP + 1;
26
+ t = ++starT;
27
+ } else return false;
28
+ while (p < pattern.length && pattern[p] === "*") p++;
29
+ return p === pattern.length;
30
+ };
8
31
  var ClientTaskManager = class {
9
32
  constructor(config, logger, db) {
10
33
  this.config = config;
@@ -251,10 +274,7 @@ var ClientTaskManager = class {
251
274
  const allowed = (0, _prosopo_util.parseUrl)(suffix).hostname.replace(/\.$/, "");
252
275
  return referrerHost.endsWith(`.${allowed}`) || referrerHost === allowed;
253
276
  }
254
- if (pattern.includes("*")) {
255
- const escaped = pattern.replace(/[.+?^${}()|\[\]\\]/g, "\\$&").replace(/\*/g, ".*");
256
- return new RegExp(`^${escaped}$`, "i").test(referrerHost);
257
- }
277
+ if (pattern.includes("*")) return matchesGlob(pattern, referrerHost.toLowerCase());
258
278
  const allowedHost = (0, _prosopo_util.parseUrl)(pattern).hostname.replace(/\.$/, "");
259
279
  return referrerHost === allowedHost || referrerHost.endsWith(`.${allowedHost}`);
260
280
  } catch (e) {
@@ -297,3 +317,4 @@ var ClientTaskManager = class {
297
317
  };
298
318
  //#endregion
299
319
  exports.ClientTaskManager = ClientTaskManager;
320
+ exports.matchesGlob = matchesGlob;
@@ -5,7 +5,7 @@ var providerValidateDataset = async (datasetRaw, minSolvedCaptchas, minUnsolvedC
5
5
  if (datasetRaw.captchas.length < minSolvedCaptchas + minUnsolvedCaptchas) throw new _prosopo_common.ProsopoEnvError("DATASET.CAPTCHAS_COUNT_LESS_THAN_CONFIGURED", { context: { failedFuncName: providerValidateDataset.name } });
6
6
  const solutions = datasetRaw.captchas.map((captcha) => captcha.solution ? 1 : 0).reduce((partialSum, b) => partialSum + b, 0);
7
7
  if (solutions < minSolvedCaptchas) throw new _prosopo_common.ProsopoEnvError("DATASET.SOLUTIONS_COUNT_LESS_THAN_CONFIGURED", { context: { failedFuncName: providerValidateDataset.name } });
8
- if (solutions < minUnsolvedCaptchas) throw new _prosopo_common.ProsopoEnvError("DATASET.SOLUTIONS_COUNT_LESS_THAN_CONFIGURED", { context: { failedFuncName: providerValidateDataset.name } });
8
+ if (datasetRaw.captchas.length - solutions < minUnsolvedCaptchas) throw new _prosopo_common.ProsopoEnvError("DATASET.CAPTCHAS_COUNT_LESS_THAN_CONFIGURED", { context: { failedFuncName: providerValidateDataset.name } });
9
9
  const dataset = await (0, _prosopo_datasets.buildDataset)(datasetRaw);
10
10
  if (!dataset.datasetId || !dataset.datasetContentId) throw new _prosopo_common.ProsopoEnvError("DATASET.DATASET_ID_UNDEFINED", { context: {
11
11
  failedFuncName: providerValidateDataset.name,
@@ -202,7 +202,7 @@ var ImgCaptchaManager = class extends require_captchaManager.CaptchaManager {
202
202
  }));
203
203
  const totalImages = storedCaptchas[0]?.items.length || 0;
204
204
  if (require_pairs.selectionsLookScripted(pairs, inputMethods) && process.env.NODE_ENV !== "test") {
205
- const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, "CAPTCHA.INVALID_SOLUTION", pairs)];
205
+ const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, _prosopo_types.ResultReason.CAPTCHA_INVALID_SOLUTION, pairs)];
206
206
  if (pendingRecord.sessionId) {
207
207
  writePromises.push(this.updateSessionRecordWithCache(pendingRecord.sessionId, {
208
208
  userSubmitted: true,
@@ -243,7 +243,7 @@ var ImgCaptchaManager = class extends require_captchaManager.CaptchaManager {
243
243
  }
244
244
  await Promise.all(writePromises);
245
245
  } else {
246
- const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, "CAPTCHA.INVALID_SOLUTION", pairs)];
246
+ const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, _prosopo_types.ResultReason.CAPTCHA_INVALID_SOLUTION, pairs)];
247
247
  if (pendingRecord.sessionId) {
248
248
  writePromises.push(this.updateSessionRecordWithCache(pendingRecord.sessionId, {
249
249
  userSubmitted: true,
@@ -1,21 +1,93 @@
1
1
  let _prosopo_types = require("@prosopo/types");
2
2
  //#region src/utils/tarpitPadding.ts
3
3
  var POOL = (0, require("node:crypto").randomBytes)(Math.ceil(_prosopo_types.MAX_PAD_BYTES * 3 / 4)).toString("base64");
4
+ var CHUNK_BYTES = 64 * 1024;
5
+ var KEY_ALPHABET = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
6
+ var MIN_KEY_LENGTH = 3;
7
+ var MAX_KEY_LENGTH = 12;
4
8
  var clampPadBytes = (padBytes) => padBytes && padBytes > 0 ? Math.min(Math.floor(padBytes), _prosopo_types.MAX_PAD_BYTES) : 0;
5
- var streamWithPad = (res, body, n) => {
6
- const offset = Math.floor(Math.random() * (POOL.length - n + 1));
7
- const rest = JSON.stringify(body);
9
+ var isPlainObject = (body) => typeof body === "object" && body !== null && !Array.isArray(body);
10
+ var bodyMembers = (body) => {
11
+ const serialised = JSON.stringify(body);
12
+ if (serialised === void 0 || !serialised.startsWith("{")) return void 0;
13
+ const normalised = JSON.parse(serialised);
14
+ return Object.entries(normalised).map(([key, value]) => ({
15
+ key,
16
+ encoded: `${JSON.stringify(key)}:${JSON.stringify(value)}`
17
+ }));
18
+ };
19
+ var randomKey = (taken) => {
20
+ for (;;) {
21
+ const length = MIN_KEY_LENGTH + Math.floor(Math.random() * (MAX_KEY_LENGTH - MIN_KEY_LENGTH + 1));
22
+ let key = "";
23
+ for (let index = 0; index < length; index++) key += KEY_ALPHABET.charAt(Math.floor(Math.random() * KEY_ALPHABET.length));
24
+ if (!taken.has(key)) {
25
+ taken.add(key);
26
+ return key;
27
+ }
28
+ }
29
+ };
30
+ var partition = (total, parts) => {
31
+ const cuts = [0, total];
32
+ for (let index = 1; index < parts; index++) cuts.push(Math.floor(Math.random() * (total + 1)));
33
+ cuts.sort((a, b) => a - b);
34
+ const sizes = [];
35
+ for (let index = 1; index < cuts.length; index++) sizes.push((cuts[index] ?? 0) - (cuts[index - 1] ?? 0));
36
+ return sizes;
37
+ };
38
+ var awaitDrain = (res) => new Promise((resolve) => {
39
+ const settle = (drained) => {
40
+ res.removeListener("drain", onDrain);
41
+ res.removeListener("close", onClose);
42
+ resolve(drained);
43
+ };
44
+ const onDrain = () => settle(true);
45
+ const onClose = () => settle(false);
46
+ res.once("drain", onDrain);
47
+ res.once("close", onClose);
48
+ });
49
+ var write = async (res, chunk) => {
50
+ if (res.writableEnded || res.destroyed) return false;
51
+ return res.write(chunk) ? true : await awaitDrain(res);
52
+ };
53
+ var writePad = async (res, size) => {
54
+ const offset = Math.floor(Math.random() * (POOL.length - size + 1));
55
+ for (let written = 0; written < size; written += CHUNK_BYTES) {
56
+ const from = offset + written;
57
+ const to = offset + Math.min(written + CHUNK_BYTES, size);
58
+ if (!await write(res, POOL.slice(from, to))) return false;
59
+ }
60
+ return true;
61
+ };
62
+ var streamWithPad = async (res, members, total) => {
63
+ const segments = Math.max(members.length, 1);
64
+ const sizes = partition(total, segments);
65
+ const taken = new Set(members.map((member) => member.key));
8
66
  res.setHeader("content-type", "application/json; charset=utf-8");
9
- res.write("{\"pad\":\"");
10
- res.write(POOL.slice(offset, offset + n));
11
- res.write(`",${rest.slice(1)}`);
12
- return res.end();
67
+ let separator = "{";
68
+ for (let index = 0; index < segments; index++) {
69
+ if (!await write(res, `${separator}"${randomKey(taken)}":"`)) return;
70
+ if (!await writePad(res, sizes[index] ?? 0)) return;
71
+ const member = members[index];
72
+ if (!await write(res, member ? `",${member.encoded}` : "\"")) return;
73
+ separator = ",";
74
+ }
75
+ if (!await write(res, "}")) return;
76
+ res.end();
13
77
  };
14
78
  var padResponseMiddleware = (_req, res, next) => {
15
79
  const originalJson = res.json.bind(res);
16
80
  res.json = (body) => {
17
- const n = clampPadBytes(res.locals.padBytes);
18
- return n === 0 ? originalJson(body) : streamWithPad(res, body, n);
81
+ const total = clampPadBytes(res.locals.padBytes);
82
+ if (total === 0 || !isPlainObject(body)) return originalJson(body);
83
+ const members = bodyMembers(body);
84
+ if (members === void 0) return originalJson(body);
85
+ const swallow = () => void 0;
86
+ res.on("error", swallow);
87
+ streamWithPad(res, members, total).catch(() => {
88
+ if (!res.destroyed) res.destroy();
89
+ }).finally(() => res.removeListener("error", swallow));
90
+ return res;
19
91
  };
20
92
  next();
21
93
  };
@@ -2,6 +2,7 @@ import { CaptchaDatabase } from "@prosopo/database";
2
2
  import type { Logger } from "@prosopo/logger";
3
3
  import { type DecisionMachineCaptchaType, type DecisionMachineKind, type DecisionMachineLanguage, type DecisionMachineRuntime, DecisionMachineScope, type IUserSettings, type ProsopoConfigOutput, type Tier } from "@prosopo/types";
4
4
  import type { IProviderDatabase } from "@prosopo/types-database";
5
+ export declare const matchesGlob: (pattern: string, text: string) => boolean;
5
6
  export declare class ClientTaskManager {
6
7
  config: ProsopoConfigOutput;
7
8
  logger: Logger;
@@ -1 +1 @@
1
- {"version":3,"file":"clientTasks.d.ts","sourceRoot":"","sources":["../../../src/tasks/client/clientTasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clientTasks.d.ts","sourceRoot":"","sources":["../../../src/tasks/client/clientTasks.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,29 @@ import { CaptchaDatabase, ClientDatabase } from "@prosopo/database";
5
5
  import { DecisionMachineScope, ScheduledTaskNames, ScheduledTaskStatus } from "@prosopo/types";
6
6
  import "node:crypto";
7
7
  import { parseUrl } from "@prosopo/util";
8
+ /**
9
+ * Matches `text` against a pattern where `*` matches any run of characters.
10
+ * Greedy two-pointer match, retrying from the last `*` on mismatch, so time
11
+ * is bounded by pattern length times text length.
12
+ */
13
+ var matchesGlob = (pattern, text) => {
14
+ let p = 0;
15
+ let t = 0;
16
+ let starP = -1;
17
+ let starT = 0;
18
+ while (t < text.length) if (p < pattern.length && pattern[p] === "*") {
19
+ starP = p++;
20
+ starT = t;
21
+ } else if (p < pattern.length && pattern[p] === text[t]) {
22
+ p++;
23
+ t++;
24
+ } else if (starP !== -1) {
25
+ p = starP + 1;
26
+ t = ++starT;
27
+ } else return false;
28
+ while (p < pattern.length && pattern[p] === "*") p++;
29
+ return p === pattern.length;
30
+ };
8
31
  var ClientTaskManager = class {
9
32
  constructor(config, logger, db) {
10
33
  this.config = config;
@@ -250,10 +273,7 @@ var ClientTaskManager = class {
250
273
  const allowed = parseUrl(pattern.slice(2)).hostname.replace(/\.$/, "");
251
274
  return referrerHost.endsWith(`.${allowed}`) || referrerHost === allowed;
252
275
  }
253
- if (pattern.includes("*")) {
254
- const escaped = pattern.replace(/[.+?^${}()|\[\]\\]/g, "\\$&").replace(/\*/g, ".*");
255
- return new RegExp(`^${escaped}$`, "i").test(referrerHost);
256
- }
276
+ if (pattern.includes("*")) return matchesGlob(pattern, referrerHost.toLowerCase());
257
277
  const allowedHost = parseUrl(pattern).hostname.replace(/\.$/, "");
258
278
  return referrerHost === allowedHost || referrerHost.endsWith(`.${allowedHost}`);
259
279
  } catch (e) {
@@ -295,4 +315,4 @@ var ClientTaskManager = class {
295
315
  }
296
316
  };
297
317
  //#endregion
298
- export { ClientTaskManager };
318
+ export { ClientTaskManager, matchesGlob };
@@ -1 +1 @@
1
- {"version":3,"file":"clientTasks.js","sourceRoot":"","sources":["../../../src/tasks/client/clientTasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clientTasks.js","sourceRoot":"","sources":["../../../src/tasks/client/clientTasks.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ var providerValidateDataset = async (datasetRaw, minSolvedCaptchas, minUnsolvedC
5
5
  if (datasetRaw.captchas.length < minSolvedCaptchas + minUnsolvedCaptchas) throw new ProsopoEnvError("DATASET.CAPTCHAS_COUNT_LESS_THAN_CONFIGURED", { context: { failedFuncName: providerValidateDataset.name } });
6
6
  const solutions = datasetRaw.captchas.map((captcha) => captcha.solution ? 1 : 0).reduce((partialSum, b) => partialSum + b, 0);
7
7
  if (solutions < minSolvedCaptchas) throw new ProsopoEnvError("DATASET.SOLUTIONS_COUNT_LESS_THAN_CONFIGURED", { context: { failedFuncName: providerValidateDataset.name } });
8
- if (solutions < minUnsolvedCaptchas) throw new ProsopoEnvError("DATASET.SOLUTIONS_COUNT_LESS_THAN_CONFIGURED", { context: { failedFuncName: providerValidateDataset.name } });
8
+ if (datasetRaw.captchas.length - solutions < minUnsolvedCaptchas) throw new ProsopoEnvError("DATASET.CAPTCHAS_COUNT_LESS_THAN_CONFIGURED", { context: { failedFuncName: providerValidateDataset.name } });
9
9
  const dataset = await buildDataset(datasetRaw);
10
10
  if (!dataset.datasetId || !dataset.datasetContentId) throw new ProsopoEnvError("DATASET.DATASET_ID_UNDEFINED", { context: {
11
11
  failedFuncName: providerValidateDataset.name,
@@ -1 +1 @@
1
- {"version":3,"file":"datasetTasksUtils.js","sourceRoot":"","sources":["../../../src/tasks/dataset/datasetTasksUtils.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAC3C,UAAsB,EACtB,iBAAyB,EACzB,mBAA2B,EAC1B,EAAE;IAEH,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,iBAAiB,GAAG,mBAAmB,EAAE,CAAC;QAC1E,MAAM,IAAI,eAAe,CAAC,6CAA6C,EAAE;YACxE,OAAO,EAAE,EAAE,cAAc,EAAE,uBAAuB,CAAC,IAAI,EAAE;SACzD,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ;SACnC,GAAG,CAAC,CAAC,OAAO,EAAU,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACpD,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAG/C,IAAI,SAAS,GAAG,iBAAiB,EAAE,CAAC;QACnC,MAAM,IAAI,eAAe,CAAC,8CAA8C,EAAE;YACzE,OAAO,EAAE,EAAE,cAAc,EAAE,uBAAuB,CAAC,IAAI,EAAE;SACzD,CAAC,CAAC;IACJ,CAAC;IAGD,IAAI,SAAS,GAAG,mBAAmB,EAAE,CAAC;QACrC,MAAM,IAAI,eAAe,CAAC,8CAA8C,EAAE;YACzE,OAAO,EAAE,EAAE,cAAc,EAAE,uBAAuB,CAAC,IAAI,EAAE;SACzD,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;IAG/C,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACrD,MAAM,IAAI,eAAe,CAAC,8BAA8B,EAAE;YACzD,OAAO,EAAE;gBACR,cAAc,EAAE,uBAAuB,CAAC,IAAI;gBAC5C,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;aAC1C;SACD,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"datasetTasksUtils.js","sourceRoot":"","sources":["../../../src/tasks/dataset/datasetTasksUtils.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAC3C,UAAsB,EACtB,iBAAyB,EACzB,mBAA2B,EAC1B,EAAE;IAEH,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,iBAAiB,GAAG,mBAAmB,EAAE,CAAC;QAC1E,MAAM,IAAI,eAAe,CAAC,6CAA6C,EAAE;YACxE,OAAO,EAAE,EAAE,cAAc,EAAE,uBAAuB,CAAC,IAAI,EAAE;SACzD,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ;SACnC,GAAG,CAAC,CAAC,OAAO,EAAU,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACpD,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAG/C,IAAI,SAAS,GAAG,iBAAiB,EAAE,CAAC;QACnC,MAAM,IAAI,eAAe,CAAC,8CAA8C,EAAE;YACzE,OAAO,EAAE,EAAE,cAAc,EAAE,uBAAuB,CAAC,IAAI,EAAE;SACzD,CAAC,CAAC;IACJ,CAAC;IAGD,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,SAAS,GAAG,mBAAmB,EAAE,CAAC;QAClE,MAAM,IAAI,eAAe,CAAC,6CAA6C,EAAE;YACxE,OAAO,EAAE,EAAE,cAAc,EAAE,uBAAuB,CAAC,IAAI,EAAE;SACzD,CAAC,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;IAG/C,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACrD,MAAM,IAAI,eAAe,CAAC,8BAA8B,EAAE;YACzD,OAAO,EAAE;gBACR,cAAc,EAAE,uBAAuB,CAAC,IAAI;gBAC5C,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;aAC1C;SACD,CAAC,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC"}
@@ -202,7 +202,7 @@ var ImgCaptchaManager = class extends CaptchaManager {
202
202
  }));
203
203
  const totalImages = storedCaptchas[0]?.items.length || 0;
204
204
  if (selectionsLookScripted(pairs, inputMethods) && process.env.NODE_ENV !== "test") {
205
- const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, "CAPTCHA.INVALID_SOLUTION", pairs)];
205
+ const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, ResultReason.CAPTCHA_INVALID_SOLUTION, pairs)];
206
206
  if (pendingRecord.sessionId) {
207
207
  writePromises.push(this.updateSessionRecordWithCache(pendingRecord.sessionId, {
208
208
  userSubmitted: true,
@@ -243,7 +243,7 @@ var ImgCaptchaManager = class extends CaptchaManager {
243
243
  }
244
244
  await Promise.all(writePromises);
245
245
  } else {
246
- const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, "CAPTCHA.INVALID_SOLUTION", pairs)];
246
+ const writePromises = [this.db.disapproveDappUserCommitment(commitmentId, ResultReason.CAPTCHA_INVALID_SOLUTION, pairs)];
247
247
  if (pendingRecord.sessionId) {
248
248
  writePromises.push(this.updateSessionRecordWithCache(pendingRecord.sessionId, {
249
249
  userSubmitted: true,
@@ -1 +1 @@
1
- {"version":3,"file":"imgCaptchaTasks.js","sourceRoot":"","sources":["../../../src/tasks/imgCaptcha/imgCaptchaTasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imgCaptchaTasks.js","sourceRoot":"","sources":["../../../src/tasks/imgCaptcha/imgCaptchaTasks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=adminAuthOptions.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adminAuthOptions.unit.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/unit/api/adminAuthOptions.unit.test.ts"],"names":[],"mappings":""}