Ed25519 spec & code
NIST FIPS 186-5 (2023)
RFC 8032
Curve: Edwards25519
Public key: 32 bytes
Signature: 64 bytes
clearkey verify --pubkey ed25519:... bundle.json VerifyLink uses standard, well-understood cryptography. No proprietary magic. No black-box trust. Anyone can verify anything VLI has ever sealed — with or without us.
Standard cryptography
No proprietary curves, no novel hashes. Audited by tens of thousands of cryptographers.
NIST FIPS 186-5 (2023)
RFC 8032
Curve: Edwards25519
Public key: 32 bytes
Signature: 64 bytes
clearkey verify --pubkey ed25519:... bundle.json FIPS PUB 180-4
Output: 32 bytes / 256 bits
Collision-resistant
sha256(jcs(payload)) → bundle.contentHash Without JCS, {"a":1,"b":2} and {"b":2,"a":1}
hash differently — same data, different proof.
With JCS (RFC 8785):
- Keys sorted lexicographically
- Numbers in shortest form
- Strings UTF-8 escaped consistently
- Whitespace removed {
"leafIndex": 4127,
"treeSize": 81234,
"leafHash": "sha256:...",
"auditPath": ["sha256:...", "sha256:...", "sha256:..."],
"rootHash": "sha256:..."
} Bundle anatomy
payload + metadata + signature + merkle_proof {
"payload": { /* the thing being sealed */ },
"metadata": {
"issuer": "did:vli:org:abc",
"issuedAt": "2026-04-27T17:35:00Z",
"schema": "vli/v1"
},
"signature": {
"alg": "Ed25519",
"keyId": "did:vli:org:abc#key-1",
"value": "sig:..."
},
"registry": {
"logId": "verifylinkinfra-prod",
"leafIndex": 4127,
"rootHash": "sha256:...",
"auditPath": [...]
}
} Verification
Three checks. All pass → the seal is valid. Any one fails → the bundle is tampered or fake.
Apply RFC 8785 JCS canonicalization, then SHA-256. Compare to bundle.contentHash.
Look up the publisher's public key (or keyId in DID). Check signature.value against contentHash.
Walk the Merkle proof from leaf to rootHash. Match against the registry's signed tree head.
ClearKey CLI
curl https://verifylinkinfra.com/install.sh | bash
clearkey verify ./bundle.json ClearKey is open source (Apache 2.0). The math doesn't need our servers. If we vanish tomorrow, every seal we've ever made is still verifiable.
Design choices
When the math underpinning trust must hold for decades, the boring, audited choice is the right one.
Further reading