Developers
Quickstart, examples, and implementation guidance for JEP.
Quickstart
A JEP event is a signed JSON object with a small set of required fields.
Example event
A minimal Judgment event with actor, timestamp, claim digest, nonce, and signature.
{
"verb": "J",
"who": "did:web:alice.example",
"when": 1702900000,
"what": "sha256:9f86d081884c7d659a2feaa0c55ad015...",
"nonce": "abc123",
"ref": ["sha256:prev-event-hash..."],
"ext": {},
"sig": "Ed25519:..."
}Signature model
JEP events use detached signatures. The signature field contains the cryptographic signature over the canonical representation of the event payload.
Supported algorithms: Ed25519 (required), ES256 (optional profile).
Validation result
Verification events should include a validation result indicating what level of validation was achieved.
Common levels: syntax, signature, actor-binding, chain-integrity, credential-status, policy-compliance.
Failure codes
When validation fails, verifiers should indicate the failure reason.
INVALID_SYNTAXEvent does not conform to schemaINVALID_SIGNATURESignature verification failedUNKNOWN_ACTORActor identifier cannot be resolvedEXPIREDEvent timestamp outside acceptable windowCHAIN_BROKENReferenced event not found or invalidPOLICY_VIOLATIONEvent violates profile policyConformance
A conformant JEP implementation must support the core event structure, Ed25519 signatures, and canonical JSON serialization.