CryptoRail holds no key, acts only within the approvals and policies you define, and records everything it does. Every statement on this page is tied to a numbered requirement and a test, and what has not been proven yet is said plainly.
CryptoRail asks for signatures; it never holds what produces them. The key stays in your HSM, in a cloud KMS key in your own account, or behind your own signing service, and every signature is checked before it is used.
flowchart TD
subgraph CR[CryptoRail]
P[Prepares, checks policy and approvals]
V[Verifies the signature]
end
subgraph YOU[Your side]
K[HSM, cloud KMS in your account, or your signer]
A[Your approvers]
end
A -->|EIP-712 approvals| P
P -->|exact bytes to sign| K
K -->|signature| V
V --> N[Network]Policies decide before anything happens, quorums of approvers sign what will actually be executed, and, where the rules demand it, the chain itself refuses an operation that lacks them.
Each process can reach only what its job needs, secrets are never copied into the system, and one customer's data is invisible to another, proven on every route.
Every capability starts as a numbered requirement approved for the product. Automated tests name the requirement they prove, and end-to-end scenarios replay real situations, failures included, producing a report a reviewer can read step by step: the request, the response, the state and the events.
The evidence page lists every claim on this site with the requirement, scenario or decision record behind it.
No external security audit has been carried out yet. Self-hosted deployments and pilots are offered today; running CryptoRail for you in production waits for that audit.
Some signers are built and tested against emulators but not yet declared: each HSM vendor after a manual test on its device, AWS KMS after a manual test on a real account. They are marked as such wherever they appear.
The deep dives explain each mechanism for the people who have to approve it.