Bench T&C Challenge Validator
Checks that a Terms & Conditions page implements the Myth Finance bench challenge-response handshake correctly.
The handshake
When a bench enforces challenge-response terms, the buyer is sent to your T&C URL with two query parameters added:
?callback=<bench page URL>&tcChallenge=<a>,<b>
a and b are random integers in the range 1 to 226−1. Their product is below 252, so plain JavaScript number multiplication is exact. After the buyer accepts, redirect to:
<callback>?tcResponse=<a × b>
Send the product as a plain decimal integer with no sign, decimal point, or exponent. Only redirect to callback hosts you trust.
Live round trip
Enter your T&C page URL. This page issues a fresh challenge, sends you there with this page as the callback, and grades the response when you come back.
Manual check
Already have a challenge and a response from your own logs? Check them here without a redirect. Paste either the full redirect URL your page produced or just the response value.
Reference T&C page snippet
The minimum a T&C page needs. Wire accept() to your accept button.
const q = new URLSearchParams(location.search);
const callback = q.get("callback");
const m = (q.get("tcChallenge") || "").match(/^(\d{1,20}),(\d{1,20})$/);
function accept() {
if (!callback || !m) return;
const answer = BigInt(m[1]) * BigInt(m[2]); // or Number: a*b is a safe integer
const url = new URL(callback);
url.searchParams.set("tcResponse", answer.toString());
location.assign(url.toString());
}