verify_random
Verify a Platon randomness draw by confirming the Ed25519 signature over the random hex and proof against the signer's public key, ensuring trust without re-execution.
Instructions
Verify a Platon randomness draw without re-running it (Platon verify).
Pass `random_hex`, `proof`, and `signature` exactly as returned by `get_random` /
`get_randomness_beacon`. Confirms the Ed25519 signature over the canonical (random_hex, proof)
against the signer's published public key — so you trust the math, not the service.
Returns:
The standard envelope; `result` is `{valid: <bool>}` (plus `error` if the input was
malformed). Cost ~$0.001 USDC.
Example:
verify_random(random_hex="0x9f2c…", proof={"scheme": "platon-chaos-vrf/v1", …},
signature={"algorithm": "ed25519", "public_key": "<b64>", "value": "<b64>"})
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"random_hex": "<random_hex>",
"proof": "<proof>",
"signature": "<signature>"
},
"name": "verify_random"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| random_hex | Yes | The `random_hex` value returned by get_random / get_randomness_beacon. | |
| proof | Yes | The `proof` object from the draw: {scheme, state_hash, client_seed, tick, timestamp, entropy_commitment}. | |
| signature | Yes | The `signature` object from the draw: {algorithm:'ed25519', public_key, value}. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |