{ "schema": "atc-test-vectors-index/v1", "generated_at": "2026-08-24T18:38:25.688Z", "spec_version": "ATC/1.0", "canonicalization": "RFC 8785 JCS (JSON Canonicalization Scheme)", "hash_algorithm": "SHA-256", "signature_algorithm": "Ed25519 (RFC 8032)", "description": "Frozen, immutable test vectors for ATC/1.0 verifiers. Each vector includes (1) the canonical JCS bytes (hex + base64 + utf8), (2) the SHA-256 of those canonical bytes, (3) the signature, (4) the expected verification outcome. An independent verifier in any language can reproduce the canonical bytes from the ATC JSON, hash them, and compare.", "how_to_use": [ "1. Fetch any vector file (e.g., minimal-valid.json) from this directory.", "2. Apply RFC 8785 JCS to the ATC payload with attestation.signature=\"\" and attestation.signed_payload_hash=\"\"", "3. Compute SHA-256 of the canonical bytes.", "4. Compare to the SHA-256 listed in this _index.json (should match).", "5. Compare to the signed_payload_hash stored in the ATC (should also match, except for tampered-payload).", "6. To verify the signature: use the ca_public_key (Ed25519 SPKI base64) to verify the signature over the canonical bytes." ], "test_ca_keys_file": "_test-ca-keys.json", "test_ca_keys_note": "The test CA keypair (including private key) is published in _test-ca-keys.json so any third party can re-derive signatures in any language. These are TEST keys only — never use in production.", "vectors": [ { "name": "capability-samples", "file": "capability-samples.json", "description": "Sample capability manifests covering the spectrum from minimal to full access.", "note": "No ATC payload — capability samples only, no canonicalization needed." }, { "name": "expired", "file": "expired.json", "path": "marketnow/docs/atc-spec/test-vectors/expired.json", "description": "An ATC with expires_at in the past (2026-01-02). Should fail with \"ATC expired\".", "ca_public_key_spki_base64": "MCowBQYDK2VwAyEADcQ79Ek32y3FYqI5p4UOJNNIjuh51iDAJb3FEsZOjqY=", "atc_card_id": "ATC-2026-0000001", "atc_spec_version": "ATC/1.0", "expected": { "valid": false, "errors_contain": "ATC expired" }, "canonical": { "algorithm": "RFC 8785 JCS", "bytes_utf8": "{\"attestation\":{\"signature\":\"\",\"signed_payload_hash\":\"\",\"subject_algorithm\":\"Ed25519\",\"subject_public_key\":\"MCowBQYDK2VwAyEAIwuahjXj9aToVb56jInv0SXihmAUTY2yuebsy6w0ykI=\"},\"capabilities\":{\"credentials\":{\"read_env\":\"allowlist\",\"read_files\":\"none\"},\"filesystem\":{\"read\":\"own_dir\",\"write\":\"own_dir\"},\"network\":{\"egress\":\"allowlist\",\"ingress\":\"none\"},\"process\":{\"signals\":\"own\",\"subprocess\":\"none\"},\"shell\":{\"exec\":\"sandboxed\",\"spawn\":\"none\"}},\"card_id\":\"ATC-2026-0000001\",\"evidence\":{\"audit_completed_at\":\"2026-08-10T12:00:00Z\",\"audit_pipeline\":\"Sentinel L1.5 → L1.9 → L2.5 → L3\",\"dynamic_checks\":{\"sandbox_cap_drop_all\":true,\"sandbox_exit_code\":0,\"sandbox_fs_read_only\":true,\"sandbox_network_blocked\":true,\"sandbox_run\":true,\"sandbox_runtime_ms\":12453},\"findings\":[],\"runtime_checks\":{\"interceptor_blocks\":0,\"interceptor_rules_count\":5,\"interceptor_warns\":0},\"static_checks\":{\"dependency_scan\":true,\"malware_family_signatures_count\":48,\"malware_patterns_count\":8,\"metadata\":true,\"prompt_injection_rules_count\":32,\"secret_patterns_count\":18,\"semgrep_rules_count\":36}},\"identity\":{\"agent_id\":\"alicelabs-test-agent-001\",\"agent_name\":\"Test Agent\",\"agent_owner\":\"AliceLabs LLC\",\"owner_contact\":\"mailto:test@alicelabs.site\"},\"issuer\":{\"ca_algorithm\":\"Ed25519\",\"ca_id\":\"alicelabs-sentinel-ca\",\"ca_public_key\":\"MCowBQYDK2VwAyEADcQ79Ek32y3FYqI5p4UOJNNIjuh51iDAJb3FEsZOjqY=\",\"ca_url\":\"https://marketnow.site/api/atc\"},\"revocation\":{\"revocation_check_method\":\"simple_json\",\"revocation_check_required\":true,\"revocation_check_url\":\"https://marketnow.site/api/atc?action=revocation-list\"},\"risk\":{\"decision_authority\":\"consumer\",\"risk_level\":\"low\",\"score_explanation\":\"Clean audit, no findings, sandbox passed\",\"scored_at\":\"2026-08-10T12:01:00Z\",\"trust_score\":9},\"spec_version\":\"ATC/1.0\",\"validity\":{\"expires_at\":\"2026-01-02T00:00:00Z\",\"issued_at\":\"2026-08-09T23:30:24.219Z\",\"max_ttl_days\":90}}", "bytes_hex": "7b226174746573746174696f6e223a7b227369676e6174757265223a22222c227369676e65645f7061796c6f61645f68617368223a22222c227375626a6563745f616c676f726974686d223a2245643235353139222c227375626a6563745f7075626c69635f6b6579223a224d436f77425159444b3256774179454149777561686a586a3961546f566235366a496e7630535869686d4155545932797565627379367730796b493d227d2c226361706162696c6974696573223a7b2263726564656e7469616c73223a7b22726561645f656e76223a22616c6c6f776c697374222c22726561645f66696c6573223a226e6f6e65227d2c2266696c6573797374656d223a7b2272656164223a226f776e5f646972222c227772697465223a226f776e5f646972227d2c226e6574776f726b223a7b22656772657373223a22616c6c6f776c697374222c22696e6772657373223a226e6f6e65227d2c2270726f63657373223a7b227369676e616c73223a226f776e222c2273756270726f63657373223a226e6f6e65227d2c227368656c6c223a7b2265786563223a2273616e64626f786564222c22737061776e223a226e6f6e65227d7d2c22636172645f6964223a224154432d323032362d30303030303031222c2265766964656e6365223a7b2261756469745f636f6d706c657465645f6174223a22323032362d30382d31305431323a30303a30305a222c2261756469745f706970656c696e65223a2253656e74696e656c204c312e3520e28692204c312e3920e28692204c322e3520e28692204c33222c2264796e616d69635f636865636b73223a7b2273616e64626f785f6361705f64726f705f616c6c223a747275652c2273616e64626f785f657869745f636f6465223a302c2273616e64626f785f66735f726561645f6f6e6c79223a747275652c2273616e64626f785f6e6574776f726b5f626c6f636b6564223a747275652c2273616e64626f785f72756e223a747275652c2273616e64626f785f72756e74696d655f6d73223a31323435337d2c2266696e64696e6773223a5b5d2c2272756e74696d655f636865636b73223a7b22696e746572636570746f725f626c6f636b73223a302c22696e746572636570746f725f72756c65735f636f756e74223a352c22696e746572636570746f725f7761726e73223a307d2c227374617469635f636865636b73223a7b22646570656e64656e63795f7363616e223a747275652c226d616c776172655f66616d696c795f7369676e6174757265735f636f756e74223a34382c226d616c776172655f7061747465726e735f636f756e74223a382c226d65746164617461223a747275652c2270726f6d70745f696e6a656374696f6e5f72756c65735f636f756e74223a33322c227365637265745f7061747465726e735f636f756e74223a31382c2273656d677265705f72756c65735f636f756e74223a33367d7d2c226964656e74697479223a7b226167656e745f6964223a22616c6963656c6162732d746573742d6167656e742d303031222c226167656e745f6e616d65223a2254657374204167656e74222c226167656e745f6f776e6572223a22416c6963654c616273204c4c43222c226f776e65725f636f6e74616374223a226d61696c746f3a7465737440616c6963656c6162732e73697465227d2c22697373756572223a7b2263615f616c676f726974686d223a2245643235353139222c2263615f6964223a22616c6963656c6162732d73656e74696e656c2d6361222c2263615f7075626c69635f6b6579223a224d436f77425159444b325677417945414463513739456b3332793346597149357034554f4a4e4e496a756835316944414a62334645735a4f6a71593d222c2263615f75726c223a2268747470733a2f2f6d61726b65746e6f772e736974652f6170692f617463227d2c227265766f636174696f6e223a7b227265766f636174696f6e5f636865636b5f6d6574686f64223a2273696d706c655f6a736f6e222c227265766f636174696f6e5f636865636b5f7265717569726564223a747275652c227265766f636174696f6e5f636865636b5f75726c223a2268747470733a2f2f6d61726b65746e6f772e736974652f6170692f6174633f616374696f6e3d7265766f636174696f6e2d6c697374227d2c227269736b223a7b226465636973696f6e5f617574686f72697479223a22636f6e73756d6572222c227269736b5f6c6576656c223a226c6f77222c2273636f72655f6578706c616e6174696f6e223a22436c65616e2061756469742c206e6f2066696e64696e67732c2073616e64626f7820706173736564222c2273636f7265645f6174223a22323032362d30382d31305431323a30313a30305a222c2274727573745f73636f7265223a397d2c22737065635f76657273696f6e223a224154432f312e30222c2276616c6964697479223a7b22657870697265735f6174223a22323032362d30312d30325430303a30303a30305a222c226973737565645f6174223a22323032362d30382d30395432333a33303a32342e3231395a222c226d61785f74746c5f64617973223a39307d7d", "bytes_base64": "eyJhdHRlc3RhdGlvbiI6eyJzaWduYXR1cmUiOiIiLCJzaWduZWRfcGF5bG9hZF9oYXNoIjoiIiwic3ViamVjdF9hbGdvcml0aG0iOiJFZDI1NTE5Iiwic3ViamVjdF9wdWJsaWNfa2V5IjoiTUNvd0JRWURLMlZ3QXlFQUl3dWFoalhqOWFUb1ZiNTZqSW52MFNYaWhtQVVUWTJ5dWVic3k2dzB5a0k9In0sImNhcGFiaWxpdGllcyI6eyJjcmVkZW50aWFscyI6eyJyZWFkX2VudiI6ImFsbG93bGlzdCIsInJlYWRfZmlsZXMiOiJub25lIn0sImZpbGVzeXN0ZW0iOnsicmVhZCI6Im93bl9kaXIiLCJ3cml0ZSI6Im93bl9kaXIifSwibmV0d29yayI6eyJlZ3Jlc3MiOiJhbGxvd2xpc3QiLCJpbmdyZXNzIjoibm9uZSJ9LCJwcm9jZXNzIjp7InNpZ25hbHMiOiJvd24iLCJzdWJwcm9jZXNzIjoibm9uZSJ9LCJzaGVsbCI6eyJleGVjIjoic2FuZGJveGVkIiwic3Bhd24iOiJub25lIn19LCJjYXJkX2lkIjoiQVRDLTIwMjYtMDAwMDAwMSIsImV2aWRlbmNlIjp7ImF1ZGl0X2NvbXBsZXRlZF9hdCI6IjIwMjYtMDgtMTBUMTI6MDA6MDBaIiwiYXVkaXRfcGlwZWxpbmUiOiJTZW50aW5lbCBMMS41IOKGkiBMMS45IOKGkiBMMi41IOKGkiBMMyIsImR5bmFtaWNfY2hlY2tzIjp7InNhbmRib3hfY2FwX2Ryb3BfYWxsIjp0cnVlLCJzYW5kYm94X2V4aXRfY29kZSI6MCwic2FuZGJveF9mc19yZWFkX29ubHkiOnRydWUsInNhbmRib3hfbmV0d29ya19ibG9ja2VkIjp0cnVlLCJzYW5kYm94X3J1biI6dHJ1ZSwic2FuZGJveF9ydW50aW1lX21zIjoxMjQ1M30sImZpbmRpbmdzIjpbXSwicnVudGltZV9jaGVja3MiOnsiaW50ZXJjZXB0b3JfYmxvY2tzIjowLCJpbnRlcmNlcHRvcl9ydWxlc19jb3VudCI6NSwiaW50ZXJjZXB0b3Jfd2FybnMiOjB9LCJzdGF0aWNfY2hlY2tzIjp7ImRlcGVuZGVuY3lfc2NhbiI6dHJ1ZSwibWFsd2FyZV9mYW1pbHlfc2lnbmF0dXJlc19jb3VudCI6NDgsIm1hbHdhcmVfcGF0dGVybnNfY291bnQiOjgsIm1ldGFkYXRhIjp0cnVlLCJwcm9tcHRfaW5qZWN0aW9uX3J1bGVzX2NvdW50IjozMiwic2VjcmV0X3BhdHRlcm5zX2NvdW50IjoxOCwic2VtZ3JlcF9ydWxlc19jb3VudCI6MzZ9fSwiaWRlbnRpdHkiOnsiYWdlbnRfaWQiOiJhbGljZWxhYnMtdGVzdC1hZ2VudC0wMDEiLCJhZ2VudF9uYW1lIjoiVGVzdCBBZ2VudCIsImFnZW50X293bmVyIjoiQWxpY2VMYWJzIExMQyIsIm93bmVyX2NvbnRhY3QiOiJtYWlsdG86dGVzdEBhbGljZWxhYnMuc2l0ZSJ9LCJpc3N1ZXIiOnsiY2FfYWxnb3JpdGhtIjoiRWQyNTUxOSIsImNhX2lkIjoiYWxpY2VsYWJzLXNlbnRpbmVsLWNhIiwiY2FfcHVibGljX2tleSI6Ik1Db3dCUVlESzJWd0F5RUFEY1E3OUVrMzJ5M0ZZcUk1cDRVT0pOTklqdWg1MWlEQUpiM0ZFc1pPanFZPSIsImNhX3VybCI6Imh0dHBzOi8vbWFya2V0bm93LnNpdGUvYXBpL2F0YyJ9LCJyZXZvY2F0aW9uIjp7InJldm9jYXRpb25fY2hlY2tfbWV0aG9kIjoic2ltcGxlX2pzb24iLCJyZXZvY2F0aW9uX2NoZWNrX3JlcXVpcmVkIjp0cnVlLCJyZXZvY2F0aW9uX2NoZWNrX3VybCI6Imh0dHBzOi8vbWFya2V0bm93LnNpdGUvYXBpL2F0Yz9hY3Rpb249cmV2b2NhdGlvbi1saXN0In0sInJpc2siOnsiZGVjaXNpb25fYXV0aG9yaXR5IjoiY29uc3VtZXIiLCJyaXNrX2xldmVsIjoibG93Iiwic2NvcmVfZXhwbGFuYXRpb24iOiJDbGVhbiBhdWRpdCwgbm8gZmluZGluZ3MsIHNhbmRib3ggcGFzc2VkIiwic2NvcmVkX2F0IjoiMjAyNi0wOC0xMFQxMjowMTowMFoiLCJ0cnVzdF9zY29yZSI6OX0sInNwZWNfdmVyc2lvbiI6IkFUQy8xLjAiLCJ2YWxpZGl0eSI6eyJleHBpcmVzX2F0IjoiMjAyNi0wMS0wMlQwMDowMDowMFoiLCJpc3N1ZWRfYXQiOiIyMDI2LTA4LTA5VDIzOjMwOjI0LjIxOVoiLCJtYXhfdHRsX2RheXMiOjkwfX0=", "byte_length": 1877 }, "sha256": "85214b4d41e9ddcdba22009293fef133fa4cf7110b3366c5462bf0a02e3b40c8", "signature_base64": "HjiD0IHMd8rnCF1Es8jpbNb9YSTq7Xrdp3+VpC+9O5Q+Oz2tsx69HexQAAohoT7ZKLWbfjAVrQFLRJAS/HqKCg==", "stored_signed_payload_hash": "85214b4d41e9ddcdba22009293fef133fa4cf7110b3366c5462bf0a02e3b40c8", "stored_hash_matches_computed": true, "notes": [ "stored signed_payload_hash MATCHES computed SHA-256 ✓", "SDK verification result MATCHES expected outcome ✓" ], "verification_with_our_sdk": { "valid": false, "errors": [ "ATC-008: ATC expired (clock skew > 5min)" ], "error_count": 1, "expected_to_be_valid": false, "matches_expected": true } }, { "name": "minimal-valid", "file": "minimal-valid.json", "path": "marketnow/docs/atc-spec/test-vectors/minimal-valid.json", "description": "A minimal valid ATC/1.0 card. Should pass all verification checks.", "ca_public_key_spki_base64": "MCowBQYDK2VwAyEADcQ79Ek32y3FYqI5p4UOJNNIjuh51iDAJb3FEsZOjqY=", "atc_card_id": "ATC-2026-0000001", "atc_spec_version": "ATC/1.0", "expected": { "valid": true, "errors": [] }, "canonical": { "algorithm": "RFC 8785 JCS", "bytes_utf8": "{\"attestation\":{\"signature\":\"\",\"signed_payload_hash\":\"\",\"subject_algorithm\":\"Ed25519\",\"subject_public_key\":\"MCowBQYDK2VwAyEAIwuahjXj9aToVb56jInv0SXihmAUTY2yuebsy6w0ykI=\"},\"capabilities\":{\"credentials\":{\"read_env\":\"allowlist\",\"read_files\":\"none\"},\"filesystem\":{\"read\":\"own_dir\",\"write\":\"own_dir\"},\"network\":{\"egress\":\"allowlist\",\"ingress\":\"none\"},\"process\":{\"signals\":\"own\",\"subprocess\":\"none\"},\"shell\":{\"exec\":\"sandboxed\",\"spawn\":\"none\"}},\"card_id\":\"ATC-2026-0000001\",\"evidence\":{\"audit_completed_at\":\"2026-08-10T12:00:00Z\",\"audit_pipeline\":\"Sentinel L1.5 → L1.9 → L2.5 → L3\",\"dynamic_checks\":{\"sandbox_cap_drop_all\":true,\"sandbox_exit_code\":0,\"sandbox_fs_read_only\":true,\"sandbox_network_blocked\":true,\"sandbox_run\":true,\"sandbox_runtime_ms\":12453},\"findings\":[],\"runtime_checks\":{\"interceptor_blocks\":0,\"interceptor_rules_count\":5,\"interceptor_warns\":0},\"static_checks\":{\"dependency_scan\":true,\"malware_family_signatures_count\":48,\"malware_patterns_count\":8,\"metadata\":true,\"prompt_injection_rules_count\":32,\"secret_patterns_count\":18,\"semgrep_rules_count\":36}},\"identity\":{\"agent_id\":\"alicelabs-test-agent-001\",\"agent_name\":\"Test Agent\",\"agent_owner\":\"AliceLabs LLC\",\"owner_contact\":\"mailto:test@alicelabs.site\"},\"issuer\":{\"ca_algorithm\":\"Ed25519\",\"ca_id\":\"alicelabs-sentinel-ca\",\"ca_public_key\":\"MCowBQYDK2VwAyEADcQ79Ek32y3FYqI5p4UOJNNIjuh51iDAJb3FEsZOjqY=\",\"ca_url\":\"https://marketnow.site/api/atc\"},\"revocation\":{\"revocation_check_method\":\"simple_json\",\"revocation_check_required\":true,\"revocation_check_url\":\"https://marketnow.site/api/atc?action=revocation-list\"},\"risk\":{\"decision_authority\":\"consumer\",\"risk_level\":\"low\",\"score_explanation\":\"Clean audit, no findings, sandbox passed\",\"scored_at\":\"2026-08-10T12:01:00Z\",\"trust_score\":9},\"spec_version\":\"ATC/1.0\",\"validity\":{\"expires_at\":\"2026-11-07T23:30:24.219Z\",\"issued_at\":\"2026-08-09T23:30:24.219Z\",\"max_ttl_days\":90}}", "bytes_hex": "7b226174746573746174696f6e223a7b227369676e6174757265223a22222c227369676e65645f7061796c6f61645f68617368223a22222c227375626a6563745f616c676f726974686d223a2245643235353139222c227375626a6563745f7075626c69635f6b6579223a224d436f77425159444b3256774179454149777561686a586a3961546f566235366a496e7630535869686d4155545932797565627379367730796b493d227d2c226361706162696c6974696573223a7b2263726564656e7469616c73223a7b22726561645f656e76223a22616c6c6f776c697374222c22726561645f66696c6573223a226e6f6e65227d2c2266696c6573797374656d223a7b2272656164223a226f776e5f646972222c227772697465223a226f776e5f646972227d2c226e6574776f726b223a7b22656772657373223a22616c6c6f776c697374222c22696e6772657373223a226e6f6e65227d2c2270726f63657373223a7b227369676e616c73223a226f776e222c2273756270726f63657373223a226e6f6e65227d2c227368656c6c223a7b2265786563223a2273616e64626f786564222c22737061776e223a226e6f6e65227d7d2c22636172645f6964223a224154432d323032362d30303030303031222c2265766964656e6365223a7b2261756469745f636f6d706c657465645f6174223a22323032362d30382d31305431323a30303a30305a222c2261756469745f706970656c696e65223a2253656e74696e656c204c312e3520e28692204c312e3920e28692204c322e3520e28692204c33222c2264796e616d69635f636865636b73223a7b2273616e64626f785f6361705f64726f705f616c6c223a747275652c2273616e64626f785f657869745f636f6465223a302c2273616e64626f785f66735f726561645f6f6e6c79223a747275652c2273616e64626f785f6e6574776f726b5f626c6f636b6564223a747275652c2273616e64626f785f72756e223a747275652c2273616e64626f785f72756e74696d655f6d73223a31323435337d2c2266696e64696e6773223a5b5d2c2272756e74696d655f636865636b73223a7b22696e746572636570746f725f626c6f636b73223a302c22696e746572636570746f725f72756c65735f636f756e74223a352c22696e746572636570746f725f7761726e73223a307d2c227374617469635f636865636b73223a7b22646570656e64656e63795f7363616e223a747275652c226d616c776172655f66616d696c795f7369676e6174757265735f636f756e74223a34382c226d616c776172655f7061747465726e735f636f756e74223a382c226d65746164617461223a747275652c2270726f6d70745f696e6a656374696f6e5f72756c65735f636f756e74223a33322c227365637265745f7061747465726e735f636f756e74223a31382c2273656d677265705f72756c65735f636f756e74223a33367d7d2c226964656e74697479223a7b226167656e745f6964223a22616c6963656c6162732d746573742d6167656e742d303031222c226167656e745f6e616d65223a2254657374204167656e74222c226167656e745f6f776e6572223a22416c6963654c616273204c4c43222c226f776e65725f636f6e74616374223a226d61696c746f3a7465737440616c6963656c6162732e73697465227d2c22697373756572223a7b2263615f616c676f726974686d223a2245643235353139222c2263615f6964223a22616c6963656c6162732d73656e74696e656c2d6361222c2263615f7075626c69635f6b6579223a224d436f77425159444b325677417945414463513739456b3332793346597149357034554f4a4e4e496a756835316944414a62334645735a4f6a71593d222c2263615f75726c223a2268747470733a2f2f6d61726b65746e6f772e736974652f6170692f617463227d2c227265766f636174696f6e223a7b227265766f636174696f6e5f636865636b5f6d6574686f64223a2273696d706c655f6a736f6e222c227265766f636174696f6e5f636865636b5f7265717569726564223a747275652c227265766f636174696f6e5f636865636b5f75726c223a2268747470733a2f2f6d61726b65746e6f772e736974652f6170692f6174633f616374696f6e3d7265766f636174696f6e2d6c697374227d2c227269736b223a7b226465636973696f6e5f617574686f72697479223a22636f6e73756d6572222c227269736b5f6c6576656c223a226c6f77222c2273636f72655f6578706c616e6174696f6e223a22436c65616e2061756469742c206e6f2066696e64696e67732c2073616e64626f7820706173736564222c2273636f7265645f6174223a22323032362d30382d31305431323a30313a30305a222c2274727573745f73636f7265223a397d2c22737065635f76657273696f6e223a224154432f312e30222c2276616c6964697479223a7b22657870697265735f6174223a22323032362d31312d30375432333a33303a32342e3231395a222c226973737565645f6174223a22323032362d30382d30395432333a33303a32342e3231395a222c226d61785f74746c5f64617973223a39307d7d", "bytes_base64": "eyJhdHRlc3RhdGlvbiI6eyJzaWduYXR1cmUiOiIiLCJzaWduZWRfcGF5bG9hZF9oYXNoIjoiIiwic3ViamVjdF9hbGdvcml0aG0iOiJFZDI1NTE5Iiwic3ViamVjdF9wdWJsaWNfa2V5IjoiTUNvd0JRWURLMlZ3QXlFQUl3dWFoalhqOWFUb1ZiNTZqSW52MFNYaWhtQVVUWTJ5dWVic3k2dzB5a0k9In0sImNhcGFiaWxpdGllcyI6eyJjcmVkZW50aWFscyI6eyJyZWFkX2VudiI6ImFsbG93bGlzdCIsInJlYWRfZmlsZXMiOiJub25lIn0sImZpbGVzeXN0ZW0iOnsicmVhZCI6Im93bl9kaXIiLCJ3cml0ZSI6Im93bl9kaXIifSwibmV0d29yayI6eyJlZ3Jlc3MiOiJhbGxvd2xpc3QiLCJpbmdyZXNzIjoibm9uZSJ9LCJwcm9jZXNzIjp7InNpZ25hbHMiOiJvd24iLCJzdWJwcm9jZXNzIjoibm9uZSJ9LCJzaGVsbCI6eyJleGVjIjoic2FuZGJveGVkIiwic3Bhd24iOiJub25lIn19LCJjYXJkX2lkIjoiQVRDLTIwMjYtMDAwMDAwMSIsImV2aWRlbmNlIjp7ImF1ZGl0X2NvbXBsZXRlZF9hdCI6IjIwMjYtMDgtMTBUMTI6MDA6MDBaIiwiYXVkaXRfcGlwZWxpbmUiOiJTZW50aW5lbCBMMS41IOKGkiBMMS45IOKGkiBMMi41IOKGkiBMMyIsImR5bmFtaWNfY2hlY2tzIjp7InNhbmRib3hfY2FwX2Ryb3BfYWxsIjp0cnVlLCJzYW5kYm94X2V4aXRfY29kZSI6MCwic2FuZGJveF9mc19yZWFkX29ubHkiOnRydWUsInNhbmRib3hfbmV0d29ya19ibG9ja2VkIjp0cnVlLCJzYW5kYm94X3J1biI6dHJ1ZSwic2FuZGJveF9ydW50aW1lX21zIjoxMjQ1M30sImZpbmRpbmdzIjpbXSwicnVudGltZV9jaGVja3MiOnsiaW50ZXJjZXB0b3JfYmxvY2tzIjowLCJpbnRlcmNlcHRvcl9ydWxlc19jb3VudCI6NSwiaW50ZXJjZXB0b3Jfd2FybnMiOjB9LCJzdGF0aWNfY2hlY2tzIjp7ImRlcGVuZGVuY3lfc2NhbiI6dHJ1ZSwibWFsd2FyZV9mYW1pbHlfc2lnbmF0dXJlc19jb3VudCI6NDgsIm1hbHdhcmVfcGF0dGVybnNfY291bnQiOjgsIm1ldGFkYXRhIjp0cnVlLCJwcm9tcHRfaW5qZWN0aW9uX3J1bGVzX2NvdW50IjozMiwic2VjcmV0X3BhdHRlcm5zX2NvdW50IjoxOCwic2VtZ3JlcF9ydWxlc19jb3VudCI6MzZ9fSwiaWRlbnRpdHkiOnsiYWdlbnRfaWQiOiJhbGljZWxhYnMtdGVzdC1hZ2VudC0wMDEiLCJhZ2VudF9uYW1lIjoiVGVzdCBBZ2VudCIsImFnZW50X293bmVyIjoiQWxpY2VMYWJzIExMQyIsIm93bmVyX2NvbnRhY3QiOiJtYWlsdG86dGVzdEBhbGljZWxhYnMuc2l0ZSJ9LCJpc3N1ZXIiOnsiY2FfYWxnb3JpdGhtIjoiRWQyNTUxOSIsImNhX2lkIjoiYWxpY2VsYWJzLXNlbnRpbmVsLWNhIiwiY2FfcHVibGljX2tleSI6Ik1Db3dCUVlESzJWd0F5RUFEY1E3OUVrMzJ5M0ZZcUk1cDRVT0pOTklqdWg1MWlEQUpiM0ZFc1pPanFZPSIsImNhX3VybCI6Imh0dHBzOi8vbWFya2V0bm93LnNpdGUvYXBpL2F0YyJ9LCJyZXZvY2F0aW9uIjp7InJldm9jYXRpb25fY2hlY2tfbWV0aG9kIjoic2ltcGxlX2pzb24iLCJyZXZvY2F0aW9uX2NoZWNrX3JlcXVpcmVkIjp0cnVlLCJyZXZvY2F0aW9uX2NoZWNrX3VybCI6Imh0dHBzOi8vbWFya2V0bm93LnNpdGUvYXBpL2F0Yz9hY3Rpb249cmV2b2NhdGlvbi1saXN0In0sInJpc2siOnsiZGVjaXNpb25fYXV0aG9yaXR5IjoiY29uc3VtZXIiLCJyaXNrX2xldmVsIjoibG93Iiwic2NvcmVfZXhwbGFuYXRpb24iOiJDbGVhbiBhdWRpdCwgbm8gZmluZGluZ3MsIHNhbmRib3ggcGFzc2VkIiwic2NvcmVkX2F0IjoiMjAyNi0wOC0xMFQxMjowMTowMFoiLCJ0cnVzdF9zY29yZSI6OX0sInNwZWNfdmVyc2lvbiI6IkFUQy8xLjAiLCJ2YWxpZGl0eSI6eyJleHBpcmVzX2F0IjoiMjAyNi0xMS0wN1QyMzozMDoyNC4yMTlaIiwiaXNzdWVkX2F0IjoiMjAyNi0wOC0wOVQyMzozMDoyNC4yMTlaIiwibWF4X3R0bF9kYXlzIjo5MH19", "byte_length": 1881 }, "sha256": "bf6738b3f7f56d449531481cb93d74d87922843249d26672b55d9b2c67ae4276", "signature_base64": "biA1O8mepy/fkfoZVfHp4ct6hcsZeL9wW+86mrbo6KFDVzwMogMGzeEeZyd0KJUuC6UURMOl3s62MWHwBMD3DA==", "stored_signed_payload_hash": "bf6738b3f7f56d449531481cb93d74d87922843249d26672b55d9b2c67ae4276", "stored_hash_matches_computed": true, "notes": [ "stored signed_payload_hash MATCHES computed SHA-256 ✓", "SDK verification result MATCHES expected outcome ✓" ], "verification_with_our_sdk": { "valid": true, "errors": [], "error_count": 0, "expected_to_be_valid": true, "matches_expected": true } }, { "name": "tampered-payload", "file": "tampered-payload.json", "path": "marketnow/docs/atc-spec/test-vectors/tampered-payload.json", "description": "An ATC where risk.trust_score was modified after signing. The signed_payload_hash and signature should fail to verify.", "ca_public_key_spki_base64": "MCowBQYDK2VwAyEADcQ79Ek32y3FYqI5p4UOJNNIjuh51iDAJb3FEsZOjqY=", "atc_card_id": "ATC-2026-0000001", "atc_spec_version": "ATC/1.0", "expected": { "valid": false, "errors_contain": "signed_payload_hash mismatch" }, "canonical": { "algorithm": "RFC 8785 JCS", "bytes_utf8": "{\"attestation\":{\"signature\":\"\",\"signed_payload_hash\":\"\",\"subject_algorithm\":\"Ed25519\",\"subject_public_key\":\"MCowBQYDK2VwAyEAIwuahjXj9aToVb56jInv0SXihmAUTY2yuebsy6w0ykI=\"},\"capabilities\":{\"credentials\":{\"read_env\":\"allowlist\",\"read_files\":\"none\"},\"filesystem\":{\"read\":\"own_dir\",\"write\":\"own_dir\"},\"network\":{\"egress\":\"allowlist\",\"ingress\":\"none\"},\"process\":{\"signals\":\"own\",\"subprocess\":\"none\"},\"shell\":{\"exec\":\"sandboxed\",\"spawn\":\"none\"}},\"card_id\":\"ATC-2026-0000001\",\"evidence\":{\"audit_completed_at\":\"2026-08-10T12:00:00Z\",\"audit_pipeline\":\"Sentinel L1.5 → L1.9 → L2.5 → L3\",\"dynamic_checks\":{\"sandbox_cap_drop_all\":true,\"sandbox_exit_code\":0,\"sandbox_fs_read_only\":true,\"sandbox_network_blocked\":true,\"sandbox_run\":true,\"sandbox_runtime_ms\":12453},\"findings\":[],\"runtime_checks\":{\"interceptor_blocks\":0,\"interceptor_rules_count\":5,\"interceptor_warns\":0},\"static_checks\":{\"dependency_scan\":true,\"malware_family_signatures_count\":48,\"malware_patterns_count\":8,\"metadata\":true,\"prompt_injection_rules_count\":32,\"secret_patterns_count\":18,\"semgrep_rules_count\":36}},\"identity\":{\"agent_id\":\"alicelabs-test-agent-001\",\"agent_name\":\"Test Agent\",\"agent_owner\":\"AliceLabs LLC\",\"owner_contact\":\"mailto:test@alicelabs.site\"},\"issuer\":{\"ca_algorithm\":\"Ed25519\",\"ca_id\":\"alicelabs-sentinel-ca\",\"ca_public_key\":\"MCowBQYDK2VwAyEADcQ79Ek32y3FYqI5p4UOJNNIjuh51iDAJb3FEsZOjqY=\",\"ca_url\":\"https://marketnow.site/api/atc\"},\"revocation\":{\"revocation_check_method\":\"simple_json\",\"revocation_check_required\":true,\"revocation_check_url\":\"https://marketnow.site/api/atc?action=revocation-list\"},\"risk\":{\"decision_authority\":\"consumer\",\"risk_level\":\"low\",\"score_explanation\":\"Clean audit, no findings, sandbox passed\",\"scored_at\":\"2026-08-10T12:01:00Z\",\"trust_score\":4},\"spec_version\":\"ATC/1.0\",\"validity\":{\"expires_at\":\"2026-11-07T23:30:24.219Z\",\"issued_at\":\"2026-08-09T23:30:24.219Z\",\"max_ttl_days\":90}}", "bytes_hex": "7b226174746573746174696f6e223a7b227369676e6174757265223a22222c227369676e65645f7061796c6f61645f68617368223a22222c227375626a6563745f616c676f726974686d223a2245643235353139222c227375626a6563745f7075626c69635f6b6579223a224d436f77425159444b3256774179454149777561686a586a3961546f566235366a496e7630535869686d4155545932797565627379367730796b493d227d2c226361706162696c6974696573223a7b2263726564656e7469616c73223a7b22726561645f656e76223a22616c6c6f776c697374222c22726561645f66696c6573223a226e6f6e65227d2c2266696c6573797374656d223a7b2272656164223a226f776e5f646972222c227772697465223a226f776e5f646972227d2c226e6574776f726b223a7b22656772657373223a22616c6c6f776c697374222c22696e6772657373223a226e6f6e65227d2c2270726f63657373223a7b227369676e616c73223a226f776e222c2273756270726f63657373223a226e6f6e65227d2c227368656c6c223a7b2265786563223a2273616e64626f786564222c22737061776e223a226e6f6e65227d7d2c22636172645f6964223a224154432d323032362d30303030303031222c2265766964656e6365223a7b2261756469745f636f6d706c657465645f6174223a22323032362d30382d31305431323a30303a30305a222c2261756469745f706970656c696e65223a2253656e74696e656c204c312e3520e28692204c312e3920e28692204c322e3520e28692204c33222c2264796e616d69635f636865636b73223a7b2273616e64626f785f6361705f64726f705f616c6c223a747275652c2273616e64626f785f657869745f636f6465223a302c2273616e64626f785f66735f726561645f6f6e6c79223a747275652c2273616e64626f785f6e6574776f726b5f626c6f636b6564223a747275652c2273616e64626f785f72756e223a747275652c2273616e64626f785f72756e74696d655f6d73223a31323435337d2c2266696e64696e6773223a5b5d2c2272756e74696d655f636865636b73223a7b22696e746572636570746f725f626c6f636b73223a302c22696e746572636570746f725f72756c65735f636f756e74223a352c22696e746572636570746f725f7761726e73223a307d2c227374617469635f636865636b73223a7b22646570656e64656e63795f7363616e223a747275652c226d616c776172655f66616d696c795f7369676e6174757265735f636f756e74223a34382c226d616c776172655f7061747465726e735f636f756e74223a382c226d65746164617461223a747275652c2270726f6d70745f696e6a656374696f6e5f72756c65735f636f756e74223a33322c227365637265745f7061747465726e735f636f756e74223a31382c2273656d677265705f72756c65735f636f756e74223a33367d7d2c226964656e74697479223a7b226167656e745f6964223a22616c6963656c6162732d746573742d6167656e742d303031222c226167656e745f6e616d65223a2254657374204167656e74222c226167656e745f6f776e6572223a22416c6963654c616273204c4c43222c226f776e65725f636f6e74616374223a226d61696c746f3a7465737440616c6963656c6162732e73697465227d2c22697373756572223a7b2263615f616c676f726974686d223a2245643235353139222c2263615f6964223a22616c6963656c6162732d73656e74696e656c2d6361222c2263615f7075626c69635f6b6579223a224d436f77425159444b325677417945414463513739456b3332793346597149357034554f4a4e4e496a756835316944414a62334645735a4f6a71593d222c2263615f75726c223a2268747470733a2f2f6d61726b65746e6f772e736974652f6170692f617463227d2c227265766f636174696f6e223a7b227265766f636174696f6e5f636865636b5f6d6574686f64223a2273696d706c655f6a736f6e222c227265766f636174696f6e5f636865636b5f7265717569726564223a747275652c227265766f636174696f6e5f636865636b5f75726c223a2268747470733a2f2f6d61726b65746e6f772e736974652f6170692f6174633f616374696f6e3d7265766f636174696f6e2d6c697374227d2c227269736b223a7b226465636973696f6e5f617574686f72697479223a22636f6e73756d6572222c227269736b5f6c6576656c223a226c6f77222c2273636f72655f6578706c616e6174696f6e223a22436c65616e2061756469742c206e6f2066696e64696e67732c2073616e64626f7820706173736564222c2273636f7265645f6174223a22323032362d30382d31305431323a30313a30305a222c2274727573745f73636f7265223a347d2c22737065635f76657273696f6e223a224154432f312e30222c2276616c6964697479223a7b22657870697265735f6174223a22323032362d31312d30375432333a33303a32342e3231395a222c226973737565645f6174223a22323032362d30382d30395432333a33303a32342e3231395a222c226d61785f74746c5f64617973223a39307d7d", "bytes_base64": "eyJhdHRlc3RhdGlvbiI6eyJzaWduYXR1cmUiOiIiLCJzaWduZWRfcGF5bG9hZF9oYXNoIjoiIiwic3ViamVjdF9hbGdvcml0aG0iOiJFZDI1NTE5Iiwic3ViamVjdF9wdWJsaWNfa2V5IjoiTUNvd0JRWURLMlZ3QXlFQUl3dWFoalhqOWFUb1ZiNTZqSW52MFNYaWhtQVVUWTJ5dWVic3k2dzB5a0k9In0sImNhcGFiaWxpdGllcyI6eyJjcmVkZW50aWFscyI6eyJyZWFkX2VudiI6ImFsbG93bGlzdCIsInJlYWRfZmlsZXMiOiJub25lIn0sImZpbGVzeXN0ZW0iOnsicmVhZCI6Im93bl9kaXIiLCJ3cml0ZSI6Im93bl9kaXIifSwibmV0d29yayI6eyJlZ3Jlc3MiOiJhbGxvd2xpc3QiLCJpbmdyZXNzIjoibm9uZSJ9LCJwcm9jZXNzIjp7InNpZ25hbHMiOiJvd24iLCJzdWJwcm9jZXNzIjoibm9uZSJ9LCJzaGVsbCI6eyJleGVjIjoic2FuZGJveGVkIiwic3Bhd24iOiJub25lIn19LCJjYXJkX2lkIjoiQVRDLTIwMjYtMDAwMDAwMSIsImV2aWRlbmNlIjp7ImF1ZGl0X2NvbXBsZXRlZF9hdCI6IjIwMjYtMDgtMTBUMTI6MDA6MDBaIiwiYXVkaXRfcGlwZWxpbmUiOiJTZW50aW5lbCBMMS41IOKGkiBMMS45IOKGkiBMMi41IOKGkiBMMyIsImR5bmFtaWNfY2hlY2tzIjp7InNhbmRib3hfY2FwX2Ryb3BfYWxsIjp0cnVlLCJzYW5kYm94X2V4aXRfY29kZSI6MCwic2FuZGJveF9mc19yZWFkX29ubHkiOnRydWUsInNhbmRib3hfbmV0d29ya19ibG9ja2VkIjp0cnVlLCJzYW5kYm94X3J1biI6dHJ1ZSwic2FuZGJveF9ydW50aW1lX21zIjoxMjQ1M30sImZpbmRpbmdzIjpbXSwicnVudGltZV9jaGVja3MiOnsiaW50ZXJjZXB0b3JfYmxvY2tzIjowLCJpbnRlcmNlcHRvcl9ydWxlc19jb3VudCI6NSwiaW50ZXJjZXB0b3Jfd2FybnMiOjB9LCJzdGF0aWNfY2hlY2tzIjp7ImRlcGVuZGVuY3lfc2NhbiI6dHJ1ZSwibWFsd2FyZV9mYW1pbHlfc2lnbmF0dXJlc19jb3VudCI6NDgsIm1hbHdhcmVfcGF0dGVybnNfY291bnQiOjgsIm1ldGFkYXRhIjp0cnVlLCJwcm9tcHRfaW5qZWN0aW9uX3J1bGVzX2NvdW50IjozMiwic2VjcmV0X3BhdHRlcm5zX2NvdW50IjoxOCwic2VtZ3JlcF9ydWxlc19jb3VudCI6MzZ9fSwiaWRlbnRpdHkiOnsiYWdlbnRfaWQiOiJhbGljZWxhYnMtdGVzdC1hZ2VudC0wMDEiLCJhZ2VudF9uYW1lIjoiVGVzdCBBZ2VudCIsImFnZW50X293bmVyIjoiQWxpY2VMYWJzIExMQyIsIm93bmVyX2NvbnRhY3QiOiJtYWlsdG86dGVzdEBhbGljZWxhYnMuc2l0ZSJ9LCJpc3N1ZXIiOnsiY2FfYWxnb3JpdGhtIjoiRWQyNTUxOSIsImNhX2lkIjoiYWxpY2VsYWJzLXNlbnRpbmVsLWNhIiwiY2FfcHVibGljX2tleSI6Ik1Db3dCUVlESzJWd0F5RUFEY1E3OUVrMzJ5M0ZZcUk1cDRVT0pOTklqdWg1MWlEQUpiM0ZFc1pPanFZPSIsImNhX3VybCI6Imh0dHBzOi8vbWFya2V0bm93LnNpdGUvYXBpL2F0YyJ9LCJyZXZvY2F0aW9uIjp7InJldm9jYXRpb25fY2hlY2tfbWV0aG9kIjoic2ltcGxlX2pzb24iLCJyZXZvY2F0aW9uX2NoZWNrX3JlcXVpcmVkIjp0cnVlLCJyZXZvY2F0aW9uX2NoZWNrX3VybCI6Imh0dHBzOi8vbWFya2V0bm93LnNpdGUvYXBpL2F0Yz9hY3Rpb249cmV2b2NhdGlvbi1saXN0In0sInJpc2siOnsiZGVjaXNpb25fYXV0aG9yaXR5IjoiY29uc3VtZXIiLCJyaXNrX2xldmVsIjoibG93Iiwic2NvcmVfZXhwbGFuYXRpb24iOiJDbGVhbiBhdWRpdCwgbm8gZmluZGluZ3MsIHNhbmRib3ggcGFzc2VkIiwic2NvcmVkX2F0IjoiMjAyNi0wOC0xMFQxMjowMTowMFoiLCJ0cnVzdF9zY29yZSI6NH0sInNwZWNfdmVyc2lvbiI6IkFUQy8xLjAiLCJ2YWxpZGl0eSI6eyJleHBpcmVzX2F0IjoiMjAyNi0xMS0wN1QyMzozMDoyNC4yMTlaIiwiaXNzdWVkX2F0IjoiMjAyNi0wOC0wOVQyMzozMDoyNC4yMTlaIiwibWF4X3R0bF9kYXlzIjo5MH19", "byte_length": 1881 }, "sha256": "7c225686061cc6de7ba4ede9bbe45874fc1209d7102c09a96302ea642ba765f1", "signature_base64": "biA1O8mepy/fkfoZVfHp4ct6hcsZeL9wW+86mrbo6KFDVzwMogMGzeEeZyd0KJUuC6UURMOl3s62MWHwBMD3DA==", "stored_signed_payload_hash": "bf6738b3f7f56d449531481cb93d74d87922843249d26672b55d9b2c67ae4276", "stored_hash_matches_computed": false, "notes": [ "stored signed_payload_hash does NOT match computed hash. This is INTENTIONAL for tampered-payload.json (the test demonstrates that tampering invalidates the signature).", "SDK verification result MATCHES expected outcome ✓" ], "verification_with_our_sdk": { "valid": false, "errors": [ "ATC-006: signed_payload_hash mismatch — expected 7c225686061cc6de..., got bf6738b3f7f56d44...", "ATC-006: Ed25519 signature verification failed" ], "error_count": 2, "expected_to_be_valid": false, "matches_expected": true } }, { "name": "wrong-ca-key", "file": "wrong-ca-key.json", "path": "marketnow/docs/atc-spec/test-vectors/wrong-ca-key.json", "description": "A valid ATC verified against the WRONG CA public key. Should fail with \"CA public key mismatch\".", "ca_public_key_spki_base64": "MCowBQYDK2VwAyEApe2UTo+TGzzn/XOncoor+Yzlsb8pDxouAc3ChE/Uk8I=", "atc_card_id": "ATC-2026-0000001", "atc_spec_version": "ATC/1.0", "expected": { "valid": false, "errors_contain": "CA public key mismatch" }, "canonical": { "algorithm": "RFC 8785 JCS", "bytes_utf8": "{\"attestation\":{\"signature\":\"\",\"signed_payload_hash\":\"\",\"subject_algorithm\":\"Ed25519\",\"subject_public_key\":\"MCowBQYDK2VwAyEAIwuahjXj9aToVb56jInv0SXihmAUTY2yuebsy6w0ykI=\"},\"capabilities\":{\"credentials\":{\"read_env\":\"allowlist\",\"read_files\":\"none\"},\"filesystem\":{\"read\":\"own_dir\",\"write\":\"own_dir\"},\"network\":{\"egress\":\"allowlist\",\"ingress\":\"none\"},\"process\":{\"signals\":\"own\",\"subprocess\":\"none\"},\"shell\":{\"exec\":\"sandboxed\",\"spawn\":\"none\"}},\"card_id\":\"ATC-2026-0000001\",\"evidence\":{\"audit_completed_at\":\"2026-08-10T12:00:00Z\",\"audit_pipeline\":\"Sentinel L1.5 → L1.9 → L2.5 → L3\",\"dynamic_checks\":{\"sandbox_cap_drop_all\":true,\"sandbox_exit_code\":0,\"sandbox_fs_read_only\":true,\"sandbox_network_blocked\":true,\"sandbox_run\":true,\"sandbox_runtime_ms\":12453},\"findings\":[],\"runtime_checks\":{\"interceptor_blocks\":0,\"interceptor_rules_count\":5,\"interceptor_warns\":0},\"static_checks\":{\"dependency_scan\":true,\"malware_family_signatures_count\":48,\"malware_patterns_count\":8,\"metadata\":true,\"prompt_injection_rules_count\":32,\"secret_patterns_count\":18,\"semgrep_rules_count\":36}},\"identity\":{\"agent_id\":\"alicelabs-test-agent-001\",\"agent_name\":\"Test Agent\",\"agent_owner\":\"AliceLabs LLC\",\"owner_contact\":\"mailto:test@alicelabs.site\"},\"issuer\":{\"ca_algorithm\":\"Ed25519\",\"ca_id\":\"alicelabs-sentinel-ca\",\"ca_public_key\":\"MCowBQYDK2VwAyEADcQ79Ek32y3FYqI5p4UOJNNIjuh51iDAJb3FEsZOjqY=\",\"ca_url\":\"https://marketnow.site/api/atc\"},\"revocation\":{\"revocation_check_method\":\"simple_json\",\"revocation_check_required\":true,\"revocation_check_url\":\"https://marketnow.site/api/atc?action=revocation-list\"},\"risk\":{\"decision_authority\":\"consumer\",\"risk_level\":\"low\",\"score_explanation\":\"Clean audit, no findings, sandbox passed\",\"scored_at\":\"2026-08-10T12:01:00Z\",\"trust_score\":9},\"spec_version\":\"ATC/1.0\",\"validity\":{\"expires_at\":\"2026-11-07T23:30:24.219Z\",\"issued_at\":\"2026-08-09T23:30:24.219Z\",\"max_ttl_days\":90}}", "bytes_hex": "7b226174746573746174696f6e223a7b227369676e6174757265223a22222c227369676e65645f7061796c6f61645f68617368223a22222c227375626a6563745f616c676f726974686d223a2245643235353139222c227375626a6563745f7075626c69635f6b6579223a224d436f77425159444b3256774179454149777561686a586a3961546f566235366a496e7630535869686d4155545932797565627379367730796b493d227d2c226361706162696c6974696573223a7b2263726564656e7469616c73223a7b22726561645f656e76223a22616c6c6f776c697374222c22726561645f66696c6573223a226e6f6e65227d2c2266696c6573797374656d223a7b2272656164223a226f776e5f646972222c227772697465223a226f776e5f646972227d2c226e6574776f726b223a7b22656772657373223a22616c6c6f776c697374222c22696e6772657373223a226e6f6e65227d2c2270726f63657373223a7b227369676e616c73223a226f776e222c2273756270726f63657373223a226e6f6e65227d2c227368656c6c223a7b2265786563223a2273616e64626f786564222c22737061776e223a226e6f6e65227d7d2c22636172645f6964223a224154432d323032362d30303030303031222c2265766964656e6365223a7b2261756469745f636f6d706c657465645f6174223a22323032362d30382d31305431323a30303a30305a222c2261756469745f706970656c696e65223a2253656e74696e656c204c312e3520e28692204c312e3920e28692204c322e3520e28692204c33222c2264796e616d69635f636865636b73223a7b2273616e64626f785f6361705f64726f705f616c6c223a747275652c2273616e64626f785f657869745f636f6465223a302c2273616e64626f785f66735f726561645f6f6e6c79223a747275652c2273616e64626f785f6e6574776f726b5f626c6f636b6564223a747275652c2273616e64626f785f72756e223a747275652c2273616e64626f785f72756e74696d655f6d73223a31323435337d2c2266696e64696e6773223a5b5d2c2272756e74696d655f636865636b73223a7b22696e746572636570746f725f626c6f636b73223a302c22696e746572636570746f725f72756c65735f636f756e74223a352c22696e746572636570746f725f7761726e73223a307d2c227374617469635f636865636b73223a7b22646570656e64656e63795f7363616e223a747275652c226d616c776172655f66616d696c795f7369676e6174757265735f636f756e74223a34382c226d616c776172655f7061747465726e735f636f756e74223a382c226d65746164617461223a747275652c2270726f6d70745f696e6a656374696f6e5f72756c65735f636f756e74223a33322c227365637265745f7061747465726e735f636f756e74223a31382c2273656d677265705f72756c65735f636f756e74223a33367d7d2c226964656e74697479223a7b226167656e745f6964223a22616c6963656c6162732d746573742d6167656e742d303031222c226167656e745f6e616d65223a2254657374204167656e74222c226167656e745f6f776e6572223a22416c6963654c616273204c4c43222c226f776e65725f636f6e74616374223a226d61696c746f3a7465737440616c6963656c6162732e73697465227d2c22697373756572223a7b2263615f616c676f726974686d223a2245643235353139222c2263615f6964223a22616c6963656c6162732d73656e74696e656c2d6361222c2263615f7075626c69635f6b6579223a224d436f77425159444b325677417945414463513739456b3332793346597149357034554f4a4e4e496a756835316944414a62334645735a4f6a71593d222c2263615f75726c223a2268747470733a2f2f6d61726b65746e6f772e736974652f6170692f617463227d2c227265766f636174696f6e223a7b227265766f636174696f6e5f636865636b5f6d6574686f64223a2273696d706c655f6a736f6e222c227265766f636174696f6e5f636865636b5f7265717569726564223a747275652c227265766f636174696f6e5f636865636b5f75726c223a2268747470733a2f2f6d61726b65746e6f772e736974652f6170692f6174633f616374696f6e3d7265766f636174696f6e2d6c697374227d2c227269736b223a7b226465636973696f6e5f617574686f72697479223a22636f6e73756d6572222c227269736b5f6c6576656c223a226c6f77222c2273636f72655f6578706c616e6174696f6e223a22436c65616e2061756469742c206e6f2066696e64696e67732c2073616e64626f7820706173736564222c2273636f7265645f6174223a22323032362d30382d31305431323a30313a30305a222c2274727573745f73636f7265223a397d2c22737065635f76657273696f6e223a224154432f312e30222c2276616c6964697479223a7b22657870697265735f6174223a22323032362d31312d30375432333a33303a32342e3231395a222c226973737565645f6174223a22323032362d30382d30395432333a33303a32342e3231395a222c226d61785f74746c5f64617973223a39307d7d", "bytes_base64": "eyJhdHRlc3RhdGlvbiI6eyJzaWduYXR1cmUiOiIiLCJzaWduZWRfcGF5bG9hZF9oYXNoIjoiIiwic3ViamVjdF9hbGdvcml0aG0iOiJFZDI1NTE5Iiwic3ViamVjdF9wdWJsaWNfa2V5IjoiTUNvd0JRWURLMlZ3QXlFQUl3dWFoalhqOWFUb1ZiNTZqSW52MFNYaWhtQVVUWTJ5dWVic3k2dzB5a0k9In0sImNhcGFiaWxpdGllcyI6eyJjcmVkZW50aWFscyI6eyJyZWFkX2VudiI6ImFsbG93bGlzdCIsInJlYWRfZmlsZXMiOiJub25lIn0sImZpbGVzeXN0ZW0iOnsicmVhZCI6Im93bl9kaXIiLCJ3cml0ZSI6Im93bl9kaXIifSwibmV0d29yayI6eyJlZ3Jlc3MiOiJhbGxvd2xpc3QiLCJpbmdyZXNzIjoibm9uZSJ9LCJwcm9jZXNzIjp7InNpZ25hbHMiOiJvd24iLCJzdWJwcm9jZXNzIjoibm9uZSJ9LCJzaGVsbCI6eyJleGVjIjoic2FuZGJveGVkIiwic3Bhd24iOiJub25lIn19LCJjYXJkX2lkIjoiQVRDLTIwMjYtMDAwMDAwMSIsImV2aWRlbmNlIjp7ImF1ZGl0X2NvbXBsZXRlZF9hdCI6IjIwMjYtMDgtMTBUMTI6MDA6MDBaIiwiYXVkaXRfcGlwZWxpbmUiOiJTZW50aW5lbCBMMS41IOKGkiBMMS45IOKGkiBMMi41IOKGkiBMMyIsImR5bmFtaWNfY2hlY2tzIjp7InNhbmRib3hfY2FwX2Ryb3BfYWxsIjp0cnVlLCJzYW5kYm94X2V4aXRfY29kZSI6MCwic2FuZGJveF9mc19yZWFkX29ubHkiOnRydWUsInNhbmRib3hfbmV0d29ya19ibG9ja2VkIjp0cnVlLCJzYW5kYm94X3J1biI6dHJ1ZSwic2FuZGJveF9ydW50aW1lX21zIjoxMjQ1M30sImZpbmRpbmdzIjpbXSwicnVudGltZV9jaGVja3MiOnsiaW50ZXJjZXB0b3JfYmxvY2tzIjowLCJpbnRlcmNlcHRvcl9ydWxlc19jb3VudCI6NSwiaW50ZXJjZXB0b3Jfd2FybnMiOjB9LCJzdGF0aWNfY2hlY2tzIjp7ImRlcGVuZGVuY3lfc2NhbiI6dHJ1ZSwibWFsd2FyZV9mYW1pbHlfc2lnbmF0dXJlc19jb3VudCI6NDgsIm1hbHdhcmVfcGF0dGVybnNfY291bnQiOjgsIm1ldGFkYXRhIjp0cnVlLCJwcm9tcHRfaW5qZWN0aW9uX3J1bGVzX2NvdW50IjozMiwic2VjcmV0X3BhdHRlcm5zX2NvdW50IjoxOCwic2VtZ3JlcF9ydWxlc19jb3VudCI6MzZ9fSwiaWRlbnRpdHkiOnsiYWdlbnRfaWQiOiJhbGljZWxhYnMtdGVzdC1hZ2VudC0wMDEiLCJhZ2VudF9uYW1lIjoiVGVzdCBBZ2VudCIsImFnZW50X293bmVyIjoiQWxpY2VMYWJzIExMQyIsIm93bmVyX2NvbnRhY3QiOiJtYWlsdG86dGVzdEBhbGljZWxhYnMuc2l0ZSJ9LCJpc3N1ZXIiOnsiY2FfYWxnb3JpdGhtIjoiRWQyNTUxOSIsImNhX2lkIjoiYWxpY2VsYWJzLXNlbnRpbmVsLWNhIiwiY2FfcHVibGljX2tleSI6Ik1Db3dCUVlESzJWd0F5RUFEY1E3OUVrMzJ5M0ZZcUk1cDRVT0pOTklqdWg1MWlEQUpiM0ZFc1pPanFZPSIsImNhX3VybCI6Imh0dHBzOi8vbWFya2V0bm93LnNpdGUvYXBpL2F0YyJ9LCJyZXZvY2F0aW9uIjp7InJldm9jYXRpb25fY2hlY2tfbWV0aG9kIjoic2ltcGxlX2pzb24iLCJyZXZvY2F0aW9uX2NoZWNrX3JlcXVpcmVkIjp0cnVlLCJyZXZvY2F0aW9uX2NoZWNrX3VybCI6Imh0dHBzOi8vbWFya2V0bm93LnNpdGUvYXBpL2F0Yz9hY3Rpb249cmV2b2NhdGlvbi1saXN0In0sInJpc2siOnsiZGVjaXNpb25fYXV0aG9yaXR5IjoiY29uc3VtZXIiLCJyaXNrX2xldmVsIjoibG93Iiwic2NvcmVfZXhwbGFuYXRpb24iOiJDbGVhbiBhdWRpdCwgbm8gZmluZGluZ3MsIHNhbmRib3ggcGFzc2VkIiwic2NvcmVkX2F0IjoiMjAyNi0wOC0xMFQxMjowMTowMFoiLCJ0cnVzdF9zY29yZSI6OX0sInNwZWNfdmVyc2lvbiI6IkFUQy8xLjAiLCJ2YWxpZGl0eSI6eyJleHBpcmVzX2F0IjoiMjAyNi0xMS0wN1QyMzozMDoyNC4yMTlaIiwiaXNzdWVkX2F0IjoiMjAyNi0wOC0wOVQyMzozMDoyNC4yMTlaIiwibWF4X3R0bF9kYXlzIjo5MH19", "byte_length": 1881 }, "sha256": "bf6738b3f7f56d449531481cb93d74d87922843249d26672b55d9b2c67ae4276", "signature_base64": "biA1O8mepy/fkfoZVfHp4ct6hcsZeL9wW+86mrbo6KFDVzwMogMGzeEeZyd0KJUuC6UURMOl3s62MWHwBMD3DA==", "stored_signed_payload_hash": "bf6738b3f7f56d449531481cb93d74d87922843249d26672b55d9b2c67ae4276", "stored_hash_matches_computed": true, "notes": [ "stored signed_payload_hash MATCHES computed SHA-256 ✓", "SDK verification result MATCHES expected outcome ✓" ], "verification_with_our_sdk": { "valid": false, "errors": [ "ATC-006: Ed25519 signature verification failed" ], "error_count": 1, "expected_to_be_valid": false, "matches_expected": true } } ], "test_ca": { "public_key_spki_base64": "MCowBQYDK2VwAyEADcQ79Ek32y3FYqI5p4UOJNNIjuh51iDAJb3FEsZOjqY=", "algorithm": "Ed25519 (RFC 8032)", "note": "These keys are intentionally published so anyone can re-derive signatures in any language (Python, Go, Rust) and verify the ATC test vectors reproducibly." } }