| { | |
| "$schema": "https://json-schema.org/draft/2020-12/schema", | |
| "$id": "https://ortho32.dev/schemas/attestation.schema.json", | |
| "title": "Attestation", | |
| "description": "Device attestation binding device, sequence, architectural cycles and proof to a signature.", | |
| "type": "object", | |
| "properties": { | |
| "deviceId": { | |
| "type": "string", | |
| "description": "Stable device identifier" | |
| }, | |
| "sequence": { | |
| "type": "integer", | |
| "minimum": 0, | |
| "description": "Sequence number attested" | |
| }, | |
| "cycles": { | |
| "type": "integer", | |
| "minimum": 0, | |
| "description": "Architectural cycles for attested execution, integer logical time" | |
| }, | |
| "proofId": { | |
| "type": "string", | |
| "description": "Identifier of proof / theorem attested" | |
| }, | |
| "signature": { | |
| "type": "string", | |
| "pattern": "^[0-9a-fA-F]+$", | |
| "description": "Hex-encoded signature over deviceId+sequence+cycles+proofId" | |
| }, | |
| "timestamp": { | |
| "type": "string", | |
| "format": "date-time", | |
| "description": "ISO-8601 timestamp of attestation" | |
| } | |
| }, | |
| "required": ["deviceId", "sequence", "cycles", "proofId", "signature", "timestamp"], | |
| "additionalProperties": false | |
| } | |