Definition: Conformance tests are executable checks that verify an implementation correctly follows the specification. Mechanism: Test vectors provide known input/output pairs for canonicalization, hashing, and signing. Value: Implementers can validate their code produces identical outputs. Output: PASS/FAIL for each test vector.
Conformance Tests
Test vectors and verification requirements for conformant implementations.
TV-JCS: Canonicalization
TV-JCS-001
Basic object canonicalization with sorted keys.
{
"stream_id": "pressure_psi",
"artifact_id": "art_01HXYZTEST0000000000000001",
"value": 42,
"sequence_number": 1,
"run_id": "run_01HXYZTEST0000000000000001",
"measurement_time": 1735600000,
"measurement_id": "m_0001"
}{"artifact_id":"art_01HXYZTEST0000000000000001","measurement_id":"m_0001","measurement_time":1735600000,"run_id":"run_01HXYZTEST0000000000000001","sequence_number":1,"stream_id":"pressure_psi","value":42}uM22uzzEnt39f1ZO14U_gZ7C7mGvCW87JPKCvgRGe-Q
TV-JCS-002
Nested object with timestamp canonicalization.
{
"created_at": "2025-01-01T00:00:00.000Z",
"issuer": {
"key_id": "36ee3280c62ed537",
"public_key": "lKRKF0qyRCAgAy20lqWwTunJjnb8Id7ijIHcoXaWmrg"
},
"policy_v": "1"
}{"created_at":"2025-01-01T00:00:00.000Z","issuer":{"key_id":"36ee3280c62ed537","public_key":"lKRKF0qyRCAgAy20lqWwTunJjnb8Id7ijIHcoXaWmrg"},"policy_v":"1"}TV-HASH: Hashing
TV-HASH-001
Key ID derivation from public key bytes.
lKRKF0qyRCAgAy20lqWwTunJjnb8Id7ijIHcoXaWmrg
36ee3280c62ed537
TV-HASH-002
Policy ID computation (hash of canonical policy without signature).
{"created_at":"2025-01-01T00:00:00.000Z","drift_rules":{"mode":"STRICT_HASH_MATCH"},"issuer":{"key_id":"36ee3280c62ed537","public_key":"lKRKF0qyRCAgAy20lqWwTunJjnb8Id7ijIHcoXaWmrg"},"policy_v":"1","policy_version":"v1.0.0"}a3b8f2e1d4c5a6b7890123456789abcdef0123456789abcdef0123456789abcd
TV-SIG: Signing
Warning: The private key below is for TEST PURPOSES ONLY. Never use test keys in production.
TV-SIG-001
Ed25519 signature verification.
lKRKF0qyRCAgAy20lqWwTunJjnb8Id7ijIHcoXaWmrg
S38UdZHLAVZYYoGvjvmF1gp-L2Yo6KDXAPukOiLMMx0
{"artifact_id":"art_01HXYZTEST0000000000000001","measurement_id":"m_0001","measurement_time":1735600000,"run_id":"run_01HXYZTEST0000000000000001","sequence_number":1,"stream_id":"pressure_psi","value":42}uqon4tfDmyfYaM9txEyQAHlHPRQVc3Qrw22_0PnFpuEAlrDA8kwnOh4eNa76SdA0d9099mbRh8WRKB0uJurjCg
TV-CHAIN: Chain Continuity
TV-CHAIN-001
Genesis receipt (first in chain).
TV-CHAIN-002
Subsequent receipt linking.
TV-VER: Verifier Conformance
A conformant verifier MUST detect and report the following error conditions:
| Error Code | Condition | Verdict |
|---|---|---|
| BUNDLE_CHECKSUM_MISMATCH | File checksum != manifest | FAIL |
| POLICY_ID_MISMATCH | Recomputed policy_id differs | FAIL |
| POLICY_SIGNATURE_INVALID | Policy signature verification fails | FAIL |
| RECEIPT_SCHEMA_INVALID | Receipt missing required fields | FAIL |
| RECEIPT_ID_MISMATCH | Recomputed receipt_id differs | FAIL |
| RECEIPT_HASH_MISMATCH | this_receipt_hash incorrect | FAIL |
| RECEIPT_SIGNATURE_INVALID | Receipt signature verification fails | FAIL |
| COUNTER_GAP | Counter not monotonically increasing | FAIL |
| CHAIN_PREV_HASH_MISMATCH | prev_receipt_hash != prior this_receipt_hash | FAIL |
| CHAIN_HEAD_MISMATCH | chain_head.hash != last receipt hash | FAIL |
| POLICY_MISMATCH | Receipt references different policy_id | FAIL |
| REQUIRED_EVENT_MISSING | Required event_type not found | FAIL |
Download Test Vectors
Complete test vector suite for implementation validation.