{
  "version": 1,
  "generated_at": "2026-05-05T00:00:00.000Z",
  "source_repo": "https://github.com/PQSafe/ap2-pq-test-vectors",
  "spec_ref": "https://clawhub.ai/pqsafe/ap2-pq-extension-rfc",
  "license": "Apache-2.0",
  "algorithm": {
    "pq_scheme": "ML-DSA-65",
    "standard": "NIST FIPS 204",
    "security_category": 3,
    "sig_bytes": 3309,
    "pubkey_bytes": 1952,
    "combined_scheme": "ap2-ecdsa-p256+ap2-mldsa65"
  },
  "canonicalization": "JCS (RFC 8785)",
  "test_keys": {
    "ecdsa_public_key_compressed_hex": "036b8ed0d5120ce381bf170dacc649b382c432d849fa5d848d5503719c231ce5e1",
    "mldsa_public_key_base64url": "Tp1c2GN0pWKHBdt6RnTputujcrsa6RUDS3sIDiYrg-TBQSDAyzQDuRO81rcvZr-JEiUFbxL_cZbcuSBq-MAomZb6oGNKsDnWg7tJ5zUK99scYqz951P6PJSiFmGZz6CErwuJyBAabK4INIlUkG594e96kvNfrO5jKy5Sg-733Bi2U8TCbYg3QNpVt5qJ32nZQN-nd4JE9Nc1JprYrSdAm_8e6EFHp--HkH1WboPMhOD1U8mIaL88lW4MGd7dEUamkHOpbzC9nFUQQ1DEO3wWF1a7D_Q20Iwhz8TXS3ErArGrG6CFn88wApxKX7I0eYhJrTAM6z4lW9BHNVpXckTeZXaSkv5jBSwmd45FVYVCB3E1YRk-5LJWlFzkz2O6VNLxWpsS2urnXyIMYNTLWPrz4l2Klt3kKmCXhrYytdZB0xfBz-Jqcp-F8bfD_E8f_VVn3OBf2Ps9nhnZrnBAGG_wngneZnzdY9IhBxuLYt5nVC6XQQjs2BqzJDflxFXqeyTRFaMowC3ckzRDl9B-Nec7xTrF6-FpQh83o2gtera8qZnSrbVwF5TOwPQTdKlVjvae__bXtD75e3PDphp8yQHyQdNY_LR0_0MohTE-Ygj4f-sTH7OlQqNyGZo7SjXk5ct6o3NX-0jPz5r1NSKrbMg-tCOloJxwyZt9_u_766YXN4fJhk3jP1dn58zdgASys9L3rFXjojXcEcGqr2KbOreZlsIyDzeYytvVqBIulAAlHO5ag03FoJ50kKLhBhA2oycatHNFkmU8bvZQyKJr15yeI6asAVq_ZKPz8eaDEoZd-JVDn64Dkue6PTIPC-D33a1mgKkULHsER_vP9o4MWa-UClMbQgz3tpZdQkiFuntkhgTn84yAm84Fs5oigoAjrl4TOCQEFno1AK96ghIfScRdgx2_VmWzl5Qs2UxRj9cClf8UlRFKpCtX_p152UcHKCMFhClZIZmuRcFDO6kqQb2Y9vAmT1gV1iiAgRb5--c7FwKGfzOuK_I6kGXCxKM6ENgcwGNWXqdnAfMQZo30zJipwx9xmqTVnYPrMXaegnlmQTRZ175vxXjwAwd4tRn3zzGS2WaQHm3y_-1XuisV8QkRJuzJPL0bnVg0TK-5I4nDT2f_GDyaJy0bjoGVoKb6xU3tL1wlJrTljIMUJsU9rczQF6Onl1wR2YiK5HO4AwfZJ_tdDc8Aul8IlE9vGEmcAfiSq0aoCPkqa8ELmf8Lito-1nJdypx9uz107VWbhuRKAIMeSvkjTnrk8lB0sZWSGaJOh_PPmW4bzgP2PCDJOMzjhbxmjt8Jo70HrB4_E2pcaTjBq6xhUsQ9LJcCfiz6rX2MFbeGGaOEx80I2YxWsmBCKOUyTxm4WYu-02Mu6ykKZh4dcHkVfKx5O1OWxanV_7RZbBT9ldJgYNUa1_ccbK1FaLCyqPdvO8ZrrgnNYg1Jj5IV52JSBQpGostdl50XjTEayL6gSeTCtm9nMDn2IlyVYm4tmFSQ724NIjQZFIKQ1f4o1BUx4ZKBCSj4kLay_3NPFi7taJf6Xz7g4NHyMFfOffCDkMPj4T5pu08WBykahkkwUrBrcCIgi-QS7-3L7C1XHjM2foCBj_1ON1KSxiC6yFjtkVYAhMDY9LFAKQBBwVcjDG9c5asgCoOMZPWps0QOjd81AiBpvzA1oGnMWuSUGcubo9sUtWX0_-bgutEDsavkOX1Pcd5TCP3m29clhTNXmOiQGQCJnHXaM2JYXpOx1H1b7euQgoBuRA2VqHa2gJyG5bsFSEZQG8iAkjZixP6am9DuHC8oTjVe7GHMUQ165aFnfuXsH4hSxF2kYVzhXn9sjzvD6uAxOhBiU0xytLjqBd70HYvp318nEdy6eQ9ptwE7QXlMqhsSDaLIlSRJhZraUuGRzomMKx1DTZvmClzPIXvGYMNmOTWhIGsgF9ptbh-DISWtugg8lr70M0id1x_-iU8tHFbPEi19tfhWX9_jolbXpZ-zDHaxkcb_MyJkV1-FVLk1bEg5hJvKdEFSy4ofuqKUoGOsFFBh7jD5bMAGRhlUPftY_yIzDQwQi5AV25JDc6_oqW9nKhwVlWqz8gCwRYltUiVg_GIXyndhIY0NMvW6bL5UJ2U_EQFzhmRlKmgWB0kjLHaN0kock-OJMFLuldw_AzHAR6Y9QUsmQD5Qfw1uN63yPaj10hg1cJAzNRp5GOGtiCXc6K1tTu1Qw27d_cz-wQJkrJwkbSU9DerhrEW69ykV8qZW89fZ1a0e-nqcfOeui2l4GpurDrqgpoeQ4FuKllWlyOTcm1d1SkYf5DwGJszaGAzl7Ir7XISNW-gWn8Qhb6qRC1FEBC55ApLETSWdNDMiTfhQPUuNrnYpKHxLuhWNBMe8teJ8t7JTtiAxSuaHvvU8VC4zRtzhL0YN0Loq0isX12zDw5nkpqWk0VdnA-DucDyXOWRlOkzpWcqNJKKR_rz0OhxwwoiNdOAF84yoZSib9xhlK5_k4KbYNr8q6ZXDx_jWDLAiqMdY_lWwj-ad1ICxhxDLrieXSy-I5OVVGdwYr8wJS1D7ckOUluOfMOn7f0huDCe5B4boW3C4e_8NTSAE6cFdLP7eij0",
    "mldsa_pubkey_fingerprint_16": "f9b83d417d6d92b9",
    "mldsa_pubkey_sha256_hex": "f9b83d417d6d92b91c110b280f49a5e7a2623b187dbcf73a72840929563de514"
  },
  "schema": {
    "description": "Each vector in the vectors array follows this schema",
    "fields": {
      "id": "string — unique vector identifier",
      "description": "string — human-readable purpose",
      "kind": "positive | negative — whether the verifier MUST accept or MUST reject",
      "tamper_note": "string (negative vectors only) — what was mutated and why",
      "mandate_input": "object — the 5-field SpendEnvelope before signing",
      "jcs_hex": "string — hex encoding of JCS canonical bytes signed",
      "jcs_base64url": "string — base64url encoding of same bytes",
      "jcs_byte_length": "integer — byte count of canonical payload",
      "fingerprint_hex": "string — SHA-256 hex of canonical payload",
      "ecdsa_sig_der_hex": "string — ECDSA-P256 signature in DER encoding",
      "ecdsa_sig_der_base64url": "string — ECDSA-P256 signature base64url",
      "ecdsa_sig_byte_length": "integer — ECDSA DER signature byte length",
      "ecdsa_verify": "boolean — expected ECDSA verification result",
      "mldsa_sig_base64url": "string — ML-DSA-65 signature base64url (3309 bytes)",
      "mldsa_sig_first32_hex": "string — first 32 bytes of ML-DSA-65 sig for quick comparison",
      "mldsa_verify": "boolean — expected ML-DSA-65 verification result",
      "dual_signed_envelope": "object (positive vectors) — complete signed envelope ready to submit"
    }
  },
  "vectors": [
    {
      "kind": "positive",
      "id": "tc1-minimal",
      "description": "Minimal 5-field mandate",
      "mandate_input": {
        "agent_id": "did:web:agents.example.com:agent-tc1",
        "amount": "125.00",
        "currency": "HKD",
        "nonce": "6b86b273ff34fce19d6b804eff5a3f57",
        "recipient": "did:web:seniordeli.com:payee:main"
      },
      "jcs_hex": "7b226167656e745f6964223a226469643a7765623a6167656e74732e6578616d706c652e636f6d3a6167656e742d746331222c22616d6f756e74223a223132352e3030222c2263757272656e6379223a22484b44222c226e6f6e6365223a223662383662323733666633346663653139643662383034656666356133663537222c22726563697069656e74223a226469643a7765623a73656e696f7264656c692e636f6d3a70617965653a6d61696e227d",
      "jcs_base64url": "eyJhZ2VudF9pZCI6ImRpZDp3ZWI6YWdlbnRzLmV4YW1wbGUuY29tOmFnZW50LXRjMSIsImFtb3VudCI6IjEyNS4wMCIsImN1cnJlbmN5IjoiSEtEIiwibm9uY2UiOiI2Yjg2YjI3M2ZmMzRmY2UxOWQ2YjgwNGVmZjVhM2Y1NyIsInJlY2lwaWVudCI6ImRpZDp3ZWI6c2VuaW9yZGVsaS5jb206cGF5ZWU6bWFpbiJ9",
      "jcs_byte_length": 177,
      "fingerprint_hex": "8617d93f851c2a1fb72f49c90a27e874666fd0c98b4992809d55eec6ef1da539",
      "ecdsa_sig_der_hex": "3045022100d5963b1a2a892d31150601b9522e9bf0c0b41684394b9bb135a6a789a64fdbf90220077e4342bdfde630b916eef1b2d2b811cb73d7a57ab79d50f335130ac5f6c347",
      "ecdsa_sig_der_base64url": "MEUCIQDVljsaKoktMRUGAblSLpvwwLQWhDlLm7E1pqeJpk_b-QIgB35DQr395jC5Fu7xstK4Ectz16V6t51Q8zUTCsX2w0c",
      "ecdsa_sig_byte_length": 71,
      "ecdsa_verify": true,
      "mldsa_sig_base64url": "4e8Ndz8URuzC00WEeDE9m_wRKuDcFWQr7s-iyfdnbF1BHy4Mrp37cXi7ELN2j6rSAj0ZUe3kvIOb6hFISSLft5P6_A1C5QRCGSkNQ4SMQTsQcdrLMUM_ROgh4dNAPswP2F979NSClkbYBAMCqZ37QQBqpd5Id4oLjMvWGA-dWJbTV53OftTJvImbqHKHY835OZE6xXCKe3KmCdUuxS3RUnQRMoRTWQZrEr1DtMKGxl2U441xOu3WaxofmpiZN9ky55R2AVRGMpV1zaxVqSE5KI_DC4DAQGR-IZbnozfzep7ZdE7ssMx_dGCTJNN-tRGgxn0m-0r6UmKsfad0NjXda9shFiySj66cyvVotw5mw59LW8-nBr253uiEcrfF8WUWFfgQj3yJ7kOBYzhnHCUDmbuy_nxWyl6plMFnyvaYhZcheT5389tnrUg0U5ruAcpXYO84BLlJ3Ad1FzApqinirKiO9dmmf0dRiWP-hRB4zh0uWxPDawSQkDjAeHp_8Z2Z9Fkl5neys9_KL-ogrFCqBHzGfFshZpP2Z0jt_rznBfjWqKlqeLH4lpJ4kToE_RBUfTiod-b2Ra194D0ok7cfHXBCOEalL_9z2_77iTvjDoBGBQtZiubz3IN8NKBA-cn_Yo1VdhuWjDxZlbxIwvJfUuCkzKBbR-63G8kVABbYKYRTG9EME6-_ayaIVfdcFC4ta7-lt8Zo_4WBuT4lZ-fD4qfqd_VBvPXoA59vLBTLJDNo8FPpBqMUKowSUbrko2z9i7aOqVdStbuA9tD0XC6z70PtloM3HlQEqcm326HSAancBrhplaBMdBvVVN1_y8_avQjjqVZGCO6Pis9nR8-73yNu5tuG0EcjD-wo4IUPVS1hN_QHqnhgXaO5ffWFdCo8fFKpPu-0G7bjC6pqOgfFQK4rDiBVliv5QhDO2zJigGcTsq8ZSjBodeKS6tag44RrmmXzif1KscSyBYcYy6kRqCWXVkeAObP4-lZv7q67qS9aQI-ISVcxowwFmxWjprqeHa-ZLNO6fqlSM8yAxOojB0lxAb46_QgpFBlHdKgLF6eylCjJhb_KUhOsdjY9ed74KEsP7aE-kZ_aAP9svRUuJwZcXH_a0BHUY0iLx29j9yiXjWmiZ9hqA_RzSvUfqMhTjyglHzqyQpW4uY2DW3IL-5Sg0ZIGONnH9ZiFh1n-4HfbSBm9vLu0dGKzeORIaLC0m1SzRldHB1kJl-SGuyWr1G0bvBCSKTuDmX27PwuC-jVMR3vtg4e3GeRbJViqqaoVAIIsKaAlyNYnvjk4YI4n_2YAtMQwym2eXTqXc5tzXawISthU13XM9OLVXxdJ9_bxeVQ1DmboqdCygeZPAdwpvg7NFETS4mMIqDnN7qKfcvHA3Bw3-eTGYqb1elf03TYDfEeM9q7bPL65O5zvHZGLkeWuGhrDk0WcGDO0E_sEEdwGxBMS5Io4dDe9LWwgUtNTlcO_Q4IfoW-krX-aNpRjjv8skLQ7nPkt5imU3dhghLfrcHKI_Tre14dO91yQ8pXI4s4hZWFhCf56lFbLKYKI24cVAEVIE2QzkmEyJrIPXisDyxW1UdKF6i75EibxZ9XNWCoc5qIvsuhRQtdODZheqf3MCJyiDOJQG1Y7pgqZO-lVs1FGfpg9g9NPCXy6l8F7A0PWvxWNBVlUCeKZdOuRQfkKhd6eERxaf1q4aoyv9u2yz9gTFJ5RiAO3oh350qUFXsCGs-U3deVbLTiTXd1rNLIxPcTdHhUfA0zc06er1NBODVWMjvJdehOnaRhP50R2yQmw-XjmGl7OvzB9xtfRezxx2ttyBPGDUpxgdisLRwuc2PuVV37uqyF1p-C4eCrHpZ-sP-ENiLqdiwAcJbjhdwQ51H-un08zsLRFoPaXL0hB_HR88terzPLyVK_Mpy5G5big6BAPKTupORpnRfd1Hcye8G7UwPj_pv7N4w9d1oDI8R1eun8mobcxUXD6BM1IDl2r3jhKBiY72sNo_qh71OF5PU2qFvvPTvyP0BrLhKsOdaeRBfmOkwBtkJSBi_HIQfySFZtC6J2FJnlX5GW6zcdqOghEoxzNyb6y9VNDb42gGPOiU4fbeUNmZAlVahPUCvErSksEf5Mu1i8vqRyuaK6RfXku_GOjFynTm_GJ_yCZ9qq01p52XIltPHymux5UZ-dMgG3Yb5Q7z-2aG7ZFulYEXRsdEiy04NdB-ve-fBWg5viULl7uUf-vqvV1i0Y0fxN_kUwGJo7TfFq4V59Ezwmex_SYfIUtD4ymgwpcYMzXXO7xDBtBm9okIX6ggUpAcFZEJPxptyHjFugzXsC_IRcXnpstZCUjvHePpwglLwfrflapeLej0xAlS6deZ33fdtM_ipUA8wz_NNlCHJVT7ZsG2eAjQLEC_zEiTlpeOh5c6v9egJzyv6e2HLC9swfbuGeIrWF0x4TWa2A43l66ijagrcF2jpD_i7g0UiGp0ynfFMGgMkWyJdCDC6mYClgvAtsoZc7muYhKRgyFk1uxfV4gvVbS4YZAgLIk9KfTNVwR_bFKJj2a6RRaLkGMQhmxX888mOLEMvgK4YgUHUUwscRQ5eyjqNLFYvLE2TvxEakhA_pkLcuFUqGBFMRqPvoQ-LTQil-QsqL5Hmr_d7azUF6SOUqjLK1rkQhJCNDaewtAxZ02SCwdIYi6RpewrL_X8RR28Nn8uoS_2zv9pMDo4aY70YOp4K9M339xUDXTR-yh1zuCKfNPTwPz02baXi25prRLylIB4RuONI1r7qBf119xp4iEUp5wBMGBojzkOE3aKeQizBz01Cx5qY2ZhjNWLFwJhUS-el8E-Ao5vFSjm5ichEkJZ43rSU7Yz0TORNxnohfB9g-jKoD-vRAZB-tfP53K4E8eVdJdJP7LBVvDVyarC7aHOdCT4Ts7GaurrDsKovUP9BbBHOchmCFbxWGtDKDECPjyo3S3UXxs3t4So8H7hD4RbZ2XsrtfMvnStdCtHV1nL96NCY9Wf2-B_m7diosHL8F7itsxoTSU5Ov7CRTsqTo1FtssU42M54kumrrp1xIpzkHC1LPWBNuuzmZWgkh67v-AtnE5SyhtkCNh24H7kA-n_U_U_29pjxqMvuZgPWyGaunmq5fn9eA2b6r-jNoss3ZRkvh1x7u4j34sXRMFqwCk6i9cyD9tB6yS_fAqPueZyWcnmPjQanuyF2Xwap5t5GZpZXpk7L51h3_1JEU96hm6NPnyy1HSi_7WGkKuNiYQ1qiaoB7P_rYkTXGlUWkeWeKtY5qPZpbRVUaZck4yUv7xHVRHlvg9qoyjkrSe9KsT1c8kzx5DYoJMI-VosUTobFJBZhbfNSYzh76bezhm2TmcNLk_7hiZDE3SDoe6iGS2QqR-PjiLhlh_kD1F40Y0dyKnPdWPeXjpYd6BQ2zabvCspeRiK9f07cuM4nYcqAdTjQL7Wade293hW2kHudaM3m1VY1TQ0UzUFwGaqeMx_ca2iw3t2ofAPDGiQ0i6Qkv0rJqFEhuKnJdzXRF86_ykqilQ6FHyW3o36LXiYJLiJdMlci3xEL_T5jsnMRxH7PYvR2LQDfODFAVBC1x9AwDTDIHPCdzwaYJFQigOXqHr3uVpfe_oIdBzV7zPP3O3Fta2r8TitezafXXul8tlYNjQXSh8vpFdyW3A3zex1JDsEFr5rVa2mrIrvMtFUTifUM42FMW6G52hWWzp8WX0aEmvZZTLdHcQcsC7Cx6EHy2ZeP82N5mOGnR6u72_sdtpvrkR3Qs-HkclJyWeQD3Y8mrZ1Sp7_HpgS-8Mka6gfZO6faxB8kjVb18LjhpgB2giLx0Yk7EqNpfRdZTgPqJmgQwbk45czTzIQ5v-miY7rC5SFHY9Hm8R2XR-vlmYtWXLiFbC3i2eYqw44HDTzRmetdfhhdFNg1UpTj_bjRK5NLnHa1hm9ABrY79QOE0gFxa9PwHEfAT7Jx8618VHoa5pzJepBT_r4Q_9fH5BwLjTVGU_UxoV5MxaJg39bTy-9Cw9y1Xqt-n1Zr7fEPqbhChHEv0btUttHIXKhk9yoYUE_2a-9vNRejMX9YC3h8PaFo22UgtnZOLw3kh7vlIx5JMib461EgZMd2zX5ITP1HsQ64mc97B1HLOCv_KDir2_NYBJoolCLNuxd9sEHHsQVdEYzBOMo4x0zYN6c7jTB2rGVCwc0J36NwGS2vp4nxv-yOg8akfOsRhxgZUdsDuwsdbvtAGrV-sqWot6bOAxnaa9cDSYvcRD3nlnIg4-vaHPlt5_CbIw-lLvhGPM1B8OF0RDC3QlVfFtLFIY3gB36cdmW6iyg1smoIJ2jmq513zs1s4bJDVFrrjm-CpdsQNVWH-r2QcTITg8WnN1vsvc7O75KS84gpuyub_kUKm0tsnT4fMAAAAAAAAACAsRHygw",
      "mldsa_sig_first32_hex": "e1ef0d773f1446ecc2d3458478313d9bfc112ae0dc15642beecfa2c9f7676c5d",
      "mldsa_verify": true,
      "dual_signed_envelope": {
        "agent_id": "did:web:agents.example.com:agent-tc1",
        "amount": "125.00",
        "currency": "HKD",
        "nonce": "6b86b273ff34fce19d6b804eff5a3f57",
        "recipient": "did:web:seniordeli.com:payee:main",
        "signature": {
          "alg": "ap2-ecdsa-p256+ap2-mldsa65",
          "ecdsa": "MEUCIQDVljsaKoktMRUGAblSLpvwwLQWhDlLm7E1pqeJpk_b-QIgB35DQr395jC5Fu7xstK4Ectz16V6t51Q8zUTCsX2w0c",
          "mldsa": "4e8Ndz8URuzC00WEeDE9m_wRKuDcFWQr7s-iyfdnbF1BHy4Mrp37cXi7ELN2j6rSAj0ZUe3kvIOb6hFISSLft5P6_A1C5QRCGSkNQ4SMQTsQcdrLMUM_ROgh4dNAPswP2F979NSClkbYBAMCqZ37QQBqpd5Id4oLjMvWGA-dWJbTV53OftTJvImbqHKHY835OZE6xXCKe3KmCdUuxS3RUnQRMoRTWQZrEr1DtMKGxl2U441xOu3WaxofmpiZN9ky55R2AVRGMpV1zaxVqSE5KI_DC4DAQGR-IZbnozfzep7ZdE7ssMx_dGCTJNN-tRGgxn0m-0r6UmKsfad0NjXda9shFiySj66cyvVotw5mw59LW8-nBr253uiEcrfF8WUWFfgQj3yJ7kOBYzhnHCUDmbuy_nxWyl6plMFnyvaYhZcheT5389tnrUg0U5ruAcpXYO84BLlJ3Ad1FzApqinirKiO9dmmf0dRiWP-hRB4zh0uWxPDawSQkDjAeHp_8Z2Z9Fkl5neys9_KL-ogrFCqBHzGfFshZpP2Z0jt_rznBfjWqKlqeLH4lpJ4kToE_RBUfTiod-b2Ra194D0ok7cfHXBCOEalL_9z2_77iTvjDoBGBQtZiubz3IN8NKBA-cn_Yo1VdhuWjDxZlbxIwvJfUuCkzKBbR-63G8kVABbYKYRTG9EME6-_ayaIVfdcFC4ta7-lt8Zo_4WBuT4lZ-fD4qfqd_VBvPXoA59vLBTLJDNo8FPpBqMUKowSUbrko2z9i7aOqVdStbuA9tD0XC6z70PtloM3HlQEqcm326HSAancBrhplaBMdBvVVN1_y8_avQjjqVZGCO6Pis9nR8-73yNu5tuG0EcjD-wo4IUPVS1hN_QHqnhgXaO5ffWFdCo8fFKpPu-0G7bjC6pqOgfFQK4rDiBVliv5QhDO2zJigGcTsq8ZSjBodeKS6tag44RrmmXzif1KscSyBYcYy6kRqCWXVkeAObP4-lZv7q67qS9aQI-ISVcxowwFmxWjprqeHa-ZLNO6fqlSM8yAxOojB0lxAb46_QgpFBlHdKgLF6eylCjJhb_KUhOsdjY9ed74KEsP7aE-kZ_aAP9svRUuJwZcXH_a0BHUY0iLx29j9yiXjWmiZ9hqA_RzSvUfqMhTjyglHzqyQpW4uY2DW3IL-5Sg0ZIGONnH9ZiFh1n-4HfbSBm9vLu0dGKzeORIaLC0m1SzRldHB1kJl-SGuyWr1G0bvBCSKTuDmX27PwuC-jVMR3vtg4e3GeRbJViqqaoVAIIsKaAlyNYnvjk4YI4n_2YAtMQwym2eXTqXc5tzXawISthU13XM9OLVXxdJ9_bxeVQ1DmboqdCygeZPAdwpvg7NFETS4mMIqDnN7qKfcvHA3Bw3-eTGYqb1elf03TYDfEeM9q7bPL65O5zvHZGLkeWuGhrDk0WcGDO0E_sEEdwGxBMS5Io4dDe9LWwgUtNTlcO_Q4IfoW-krX-aNpRjjv8skLQ7nPkt5imU3dhghLfrcHKI_Tre14dO91yQ8pXI4s4hZWFhCf56lFbLKYKI24cVAEVIE2QzkmEyJrIPXisDyxW1UdKF6i75EibxZ9XNWCoc5qIvsuhRQtdODZheqf3MCJyiDOJQG1Y7pgqZO-lVs1FGfpg9g9NPCXy6l8F7A0PWvxWNBVlUCeKZdOuRQfkKhd6eERxaf1q4aoyv9u2yz9gTFJ5RiAO3oh350qUFXsCGs-U3deVbLTiTXd1rNLIxPcTdHhUfA0zc06er1NBODVWMjvJdehOnaRhP50R2yQmw-XjmGl7OvzB9xtfRezxx2ttyBPGDUpxgdisLRwuc2PuVV37uqyF1p-C4eCrHpZ-sP-ENiLqdiwAcJbjhdwQ51H-un08zsLRFoPaXL0hB_HR88terzPLyVK_Mpy5G5big6BAPKTupORpnRfd1Hcye8G7UwPj_pv7N4w9d1oDI8R1eun8mobcxUXD6BM1IDl2r3jhKBiY72sNo_qh71OF5PU2qFvvPTvyP0BrLhKsOdaeRBfmOkwBtkJSBi_HIQfySFZtC6J2FJnlX5GW6zcdqOghEoxzNyb6y9VNDb42gGPOiU4fbeUNmZAlVahPUCvErSksEf5Mu1i8vqRyuaK6RfXku_GOjFynTm_GJ_yCZ9qq01p52XIltPHymux5UZ-dMgG3Yb5Q7z-2aG7ZFulYEXRsdEiy04NdB-ve-fBWg5viULl7uUf-vqvV1i0Y0fxN_kUwGJo7TfFq4V59Ezwmex_SYfIUtD4ymgwpcYMzXXO7xDBtBm9okIX6ggUpAcFZEJPxptyHjFugzXsC_IRcXnpstZCUjvHePpwglLwfrflapeLej0xAlS6deZ33fdtM_ipUA8wz_NNlCHJVT7ZsG2eAjQLEC_zEiTlpeOh5c6v9egJzyv6e2HLC9swfbuGeIrWF0x4TWa2A43l66ijagrcF2jpD_i7g0UiGp0ynfFMGgMkWyJdCDC6mYClgvAtsoZc7muYhKRgyFk1uxfV4gvVbS4YZAgLIk9KfTNVwR_bFKJj2a6RRaLkGMQhmxX888mOLEMvgK4YgUHUUwscRQ5eyjqNLFYvLE2TvxEakhA_pkLcuFUqGBFMRqPvoQ-LTQil-QsqL5Hmr_d7azUF6SOUqjLK1rkQhJCNDaewtAxZ02SCwdIYi6RpewrL_X8RR28Nn8uoS_2zv9pMDo4aY70YOp4K9M339xUDXTR-yh1zuCKfNPTwPz02baXi25prRLylIB4RuONI1r7qBf119xp4iEUp5wBMGBojzkOE3aKeQizBz01Cx5qY2ZhjNWLFwJhUS-el8E-Ao5vFSjm5ichEkJZ43rSU7Yz0TORNxnohfB9g-jKoD-vRAZB-tfP53K4E8eVdJdJP7LBVvDVyarC7aHOdCT4Ts7GaurrDsKovUP9BbBHOchmCFbxWGtDKDECPjyo3S3UXxs3t4So8H7hD4RbZ2XsrtfMvnStdCtHV1nL96NCY9Wf2-B_m7diosHL8F7itsxoTSU5Ov7CRTsqTo1FtssU42M54kumrrp1xIpzkHC1LPWBNuuzmZWgkh67v-AtnE5SyhtkCNh24H7kA-n_U_U_29pjxqMvuZgPWyGaunmq5fn9eA2b6r-jNoss3ZRkvh1x7u4j34sXRMFqwCk6i9cyD9tB6yS_fAqPueZyWcnmPjQanuyF2Xwap5t5GZpZXpk7L51h3_1JEU96hm6NPnyy1HSi_7WGkKuNiYQ1qiaoB7P_rYkTXGlUWkeWeKtY5qPZpbRVUaZck4yUv7xHVRHlvg9qoyjkrSe9KsT1c8kzx5DYoJMI-VosUTobFJBZhbfNSYzh76bezhm2TmcNLk_7hiZDE3SDoe6iGS2QqR-PjiLhlh_kD1F40Y0dyKnPdWPeXjpYd6BQ2zabvCspeRiK9f07cuM4nYcqAdTjQL7Wade293hW2kHudaM3m1VY1TQ0UzUFwGaqeMx_ca2iw3t2ofAPDGiQ0i6Qkv0rJqFEhuKnJdzXRF86_ykqilQ6FHyW3o36LXiYJLiJdMlci3xEL_T5jsnMRxH7PYvR2LQDfODFAVBC1x9AwDTDIHPCdzwaYJFQigOXqHr3uVpfe_oIdBzV7zPP3O3Fta2r8TitezafXXul8tlYNjQXSh8vpFdyW3A3zex1JDsEFr5rVa2mrIrvMtFUTifUM42FMW6G52hWWzp8WX0aEmvZZTLdHcQcsC7Cx6EHy2ZeP82N5mOGnR6u72_sdtpvrkR3Qs-HkclJyWeQD3Y8mrZ1Sp7_HpgS-8Mka6gfZO6faxB8kjVb18LjhpgB2giLx0Yk7EqNpfRdZTgPqJmgQwbk45czTzIQ5v-miY7rC5SFHY9Hm8R2XR-vlmYtWXLiFbC3i2eYqw44HDTzRmetdfhhdFNg1UpTj_bjRK5NLnHa1hm9ABrY79QOE0gFxa9PwHEfAT7Jx8618VHoa5pzJepBT_r4Q_9fH5BwLjTVGU_UxoV5MxaJg39bTy-9Cw9y1Xqt-n1Zr7fEPqbhChHEv0btUttHIXKhk9yoYUE_2a-9vNRejMX9YC3h8PaFo22UgtnZOLw3kh7vlIx5JMib461EgZMd2zX5ITP1HsQ64mc97B1HLOCv_KDir2_NYBJoolCLNuxd9sEHHsQVdEYzBOMo4x0zYN6c7jTB2rGVCwc0J36NwGS2vp4nxv-yOg8akfOsRhxgZUdsDuwsdbvtAGrV-sqWot6bOAxnaa9cDSYvcRD3nlnIg4-vaHPlt5_CbIw-lLvhGPM1B8OF0RDC3QlVfFtLFIY3gB36cdmW6iyg1smoIJ2jmq513zs1s4bJDVFrrjm-CpdsQNVWH-r2QcTITg8WnN1vsvc7O75KS84gpuyub_kUKm0tsnT4fMAAAAAAAAACAsRHygw",
          "pubkey_fingerprint": "f9b83d417d6d92b9"
        }
      }
    },
    {
      "kind": "negative",
      "id": "tc1-neg-tampered-payload",
      "description": "Negative case derived from tc1-minimal. Byte index 4 of the JCS canonical payload is flipped (0x65 -> 0x64), corrupting 'agent_id' to 'agdnt_id'. Both ECDSA and ML-DSA-65 signatures are the authentic tc1-minimal signatures applied to the ORIGINAL payload; they must fail verification against this tampered payload. A conformant verifier MUST reject both.",
      "tamper_note": "Byte 4 (0-indexed) of jcs_hex XOR'd with 0x01: 0x65 ('e') -> 0x64 ('d'). The field key 'agent_id' becomes 'agdnt_id' in the canonical byte sequence. The signatures are copied unmodified from tc1-minimal — they are valid over the original bytes but INVALID over these tampered bytes.",
      "mandate_input": {
        "agent_id": "did:web:agents.example.com:agent-tc1",
        "amount": "125.00",
        "currency": "HKD",
        "nonce": "6b86b273ff34fce19d6b804eff5a3f57",
        "recipient": "did:web:seniordeli.com:payee:main"
      },
      "jcs_hex": "7b226167646e745f6964223a226469643a7765623a6167656e74732e6578616d706c652e636f6d3a6167656e742d746331222c22616d6f756e74223a223132352e3030222c2263757272656e6379223a22484b44222c226e6f6e6365223a223662383662323733666633346663653139643662383034656666356133663537222c22726563697069656e74223a226469643a7765623a73656e696f7264656c692e636f6d3a70617965653a6d61696e227d",
      "jcs_base64url": "eyJhZ2RudF9pZCI6ImRpZDp3ZWI6YWdlbnRzLmV4YW1wbGUuY29tOmFnZW50LXRjMSIsImFtb3VudCI6IjEyNS4wMCIsImN1cnJlbmN5IjoiSEtEIiwibm9uY2UiOiI2Yjg2YjI3M2ZmMzRmY2UxOWQ2YjgwNGVmZjVhM2Y1NyIsInJlY2lwaWVudCI6ImRpZDp3ZWI6c2VuaW9yZGVsaS5jb206cGF5ZWU6bWFpbiJ9",
      "jcs_byte_length": 177,
      "fingerprint_hex": "159aa459e9388c724c602d7fa47e884af88cdf9196211c0969537164ddb121c6",
      "ecdsa_sig_der_hex": "3045022100d5963b1a2a892d31150601b9522e9bf0c0b41684394b9bb135a6a789a64fdbf90220077e4342bdfde630b916eef1b2d2b811cb73d7a57ab79d50f335130ac5f6c347",
      "ecdsa_sig_der_base64url": "MEUCIQDVljsaKoktMRUGAblSLpvwwLQWhDlLm7E1pqeJpk_b-QIgB35DQr395jC5Fu7xstK4Ectz16V6t51Q8zUTCsX2w0c",
      "ecdsa_sig_byte_length": 71,
      "ecdsa_verify": false,
      "mldsa_sig_base64url": "4e8Ndz8URuzC00WEeDE9m_wRKuDcFWQr7s-iyfdnbF1BHy4Mrp37cXi7ELN2j6rSAj0ZUe3kvIOb6hFISSLft5P6_A1C5QRCGSkNQ4SMQTsQcdrLMUM_ROgh4dNAPswP2F979NSClkbYBAMCqZ37QQBqpd5Id4oLjMvWGA-dWJbTV53OftTJvImbqHKHY835OZE6xXCKe3KmCdUuxS3RUnQRMoRTWQZrEr1DtMKGxl2U441xOu3WaxofmpiZN9ky55R2AVRGMpV1zaxVqSE5KI_DC4DAQGR-IZbnozfzep7ZdE7ssMx_dGCTJNN-tRGgxn0m-0r6UmKsfad0NjXda9shFiySj66cyvVotw5mw59LW8-nBr253uiEcrfF8WUWFfgQj3yJ7kOBYzhnHCUDmbuy_nxWyl6plMFnyvaYhZcheT5389tnrUg0U5ruAcpXYO84BLlJ3Ad1FzApqinirKiO9dmmf0dRiWP-hRB4zh0uWxPDawSQkDjAeHp_8Z2Z9Fkl5neys9_KL-ogrFCqBHzGfFshZpP2Z0jt_rznBfjWqKlqeLH4lpJ4kToE_RBUfTiod-b2Ra194D0ok7cfHXBCOEalL_9z2_77iTvjDoBGBQtZiubz3IN8NKBA-cn_Yo1VdhuWjDxZlbxIwvJfUuCkzKBbR-63G8kVABbYKYRTG9EME6-_ayaIVfdcFC4ta7-lt8Zo_4WBuT4lZ-fD4qfqd_VBvPXoA59vLBTLJDNo8FPpBqMUKowSUbrko2z9i7aOqVdStbuA9tD0XC6z70PtloM3HlQEqcm326HSAancBrhplaBMdBvVVN1_y8_avQjjqVZGCO6Pis9nR8-73yNu5tuG0EcjD-wo4IUPVS1hN_QHqnhgXaO5ffWFdCo8fFKpPu-0G7bjC6pqOgfFQK4rDiBVliv5QhDO2zJigGcTsq8ZSjBodeKS6tag44RrmmXzif1KscSyBYcYy6kRqCWXVkeAObP4-lZv7q67qS9aQI-ISVcxowwFmxWjprqeHa-ZLNO6fqlSM8yAxOojB0lxAb46_QgpFBlHdKgLF6eylCjJhb_KUhOsdjY9ed74KEsP7aE-kZ_aAP9svRUuJwZcXH_a0BHUY0iLx29j9yiXjWmiZ9hqA_RzSvUfqMhTjyglHzqyQpW4uY2DW3IL-5Sg0ZIGONnH9ZiFh1n-4HfbSBm9vLu0dGKzeORIaLC0m1SzRldHB1kJl-SGuyWr1G0bvBCSKTuDmX27PwuC-jVMR3vtg4e3GeRbJViqqaoVAIIsKaAlyNYnvjk4YI4n_2YAtMQwym2eXTqXc5tzXawISthU13XM9OLVXxdJ9_bxeVQ1DmboqdCygeZPAdwpvg7NFETS4mMIqDnN7qKfcvHA3Bw3-eTGYqb1elf03TYDfEeM9q7bPL65O5zvHZGLkeWuGhrDk0WcGDO0E_sEEdwGxBMS5Io4dDe9LWwgUtNTlcO_Q4IfoW-krX-aNpRjjv8skLQ7nPkt5imU3dhghLfrcHKI_Tre14dO91yQ8pXI4s4hZWFhCf56lFbLKYKI24cVAEVIE2QzkmEyJrIPXisDyxW1UdKF6i75EibxZ9XNWCoc5qIvsuhRQtdODZheqf3MCJyiDOJQG1Y7pgqZO-lVs1FGfpg9g9NPCXy6l8F7A0PWvxWNBVlUCeKZdOuRQfkKhd6eERxaf1q4aoyv9u2yz9gTFJ5RiAO3oh350qUFXsCGs-U3deVbLTiTXd1rNLIxPcTdHhUfA0zc06er1NBODVWMjvJdehOnaRhP50R2yQmw-XjmGl7OvzB9xtfRezxx2ttyBPGDUpxgdisLRwuc2PuVV37uqyF1p-C4eCrHpZ-sP-ENiLqdiwAcJbjhdwQ51H-un08zsLRFoPaXL0hB_HR88terzPLyVK_Mpy5G5big6BAPKTupORpnRfd1Hcye8G7UwPj_pv7N4w9d1oDI8R1eun8mobcxUXD6BM1IDl2r3jhKBiY72sNo_qh71OF5PU2qFvvPTvyP0BrLhKsOdaeRBfmOkwBtkJSBi_HIQfySFZtC6J2FJnlX5GW6zcdqOghEoxzNyb6y9VNDb42gGPOiU4fbeUNmZAlVahPUCvErSksEf5Mu1i8vqRyuaK6RfXku_GOjFynTm_GJ_yCZ9qq01p52XIltPHymux5UZ-dMgG3Yb5Q7z-2aG7ZFulYEXRsdEiy04NdB-ve-fBWg5viULl7uUf-vqvV1i0Y0fxN_kUwGJo7TfFq4V59Ezwmex_SYfIUtD4ymgwpcYMzXXO7xDBtBm9okIX6ggUpAcFZEJPxptyHjFugzXsC_IRcXnpstZCUjvHePpwglLwfrflapeLej0xAlS6deZ33fdtM_ipUA8wz_NNlCHJVT7ZsG2eAjQLEC_zEiTlpeOh5c6v9egJzyv6e2HLC9swfbuGeIrWF0x4TWa2A43l66ijagrcF2jpD_i7g0UiGp0ynfFMGgMkWyJdCDC6mYClgvAtsoZc7muYhKRgyFk1uxfV4gvVbS4YZAgLIk9KfTNVwR_bFKJj2a6RRaLkGMQhmxX888mOLEMvgK4YgUHUUwscRQ5eyjqNLFYvLE2TvxEakhA_pkLcuFUqGBFMRqPvoQ-LTQil-QsqL5Hmr_d7azUF6SOUqjLK1rkQhJCNDaewtAxZ02SCwdIYi6RpewrL_X8RR28Nn8uoS_2zv9pMDo4aY70YOp4K9M339xUDXTR-yh1zuCKfNPTwPz02baXi25prRLylIB4RuONI1r7qBf119xp4iEUp5wBMGBojzkOE3aKeQizBz01Cx5qY2ZhjNWLFwJhUS-el8E-Ao5vFSjm5ichEkJZ43rSU7Yz0TORNxnohfB9g-jKoD-vRAZB-tfP53K4E8eVdJdJP7LBVvDVyarC7aHOdCT4Ts7GaurrDsKovUP9BbBHOchmCFbxWGtDKDECPjyo3S3UXxs3t4So8H7hD4RbZ2XsrtfMvnStdCtHV1nL96NCY9Wf2-B_m7diosHL8F7itsxoTSU5Ov7CRTsqTo1FtssU42M54kumrrp1xIpzkHC1LPWBNuuzmZWgkh67v-AtnE5SyhtkCNh24H7kA-n_U_U_29pjxqMvuZgPWyGaunmq5fn9eA2b6r-jNoss3ZRkvh1x7u4j34sXRMFqwCk6i9cyD9tB6yS_fAqPueZyWcnmPjQanuyF2Xwap5t5GZpZXpk7L51h3_1JEU96hm6NPnyy1HSi_7WGkKuNiYQ1qiaoB7P_rYkTXGlUWkeWeKtY5qPZpbRVUaZck4yUv7xHVRHlvg9qoyjkrSe9KsT1c8kzx5DYoJMI-VosUTobFJBZhbfNSYzh76bezhm2TmcNLk_7hiZDE3SDoe6iGS2QqR-PjiLhlh_kD1F40Y0dyKnPdWPeXjpYd6BQ2zabvCspeRiK9f07cuM4nYcqAdTjQL7Wade293hW2kHudaM3m1VY1TQ0UzUFwGaqeMx_ca2iw3t2ofAPDGiQ0i6Qkv0rJqFEhuKnJdzXRF86_ykqilQ6FHyW3o36LXiYJLiJdMlci3xEL_T5jsnMRxH7PYvR2LQDfODFAVBC1x9AwDTDIHPCdzwaYJFQigOXqHr3uVpfe_oIdBzV7zPP3O3Fta2r8TitezafXXul8tlYNjQXSh8vpFdyW3A3zex1JDsEFr5rVa2mrIrvMtFUTifUM42FMW6G52hWWzp8WX0aEmvZZTLdHcQcsC7Cx6EHy2ZeP82N5mOGnR6u72_sdtpvrkR3Qs-HkclJyWeQD3Y8mrZ1Sp7_HpgS-8Mka6gfZO6faxB8kjVb18LjhpgB2giLx0Yk7EqNpfRdZTgPqJmgQwbk45czTzIQ5v-miY7rC5SFHY9Hm8R2XR-vlmYtWXLiFbC3i2eYqw44HDTzRmetdfhhdFNg1UpTj_bjRK5NLnHa1hm9ABrY79QOE0gFxa9PwHEfAT7Jx8618VHoa5pzJepBT_r4Q_9fH5BwLjTVGU_UxoV5MxaJg39bTy-9Cw9y1Xqt-n1Zr7fEPqbhChHEv0btUttHIXKhk9yoYUE_2a-9vNRejMX9YC3h8PaFo22UgtnZOLw3kh7vlIx5JMib461EgZMd2zX5ITP1HsQ64mc97B1HLOCv_KDir2_NYBJoolCLNuxd9sEHHsQVdEYzBOMo4x0zYN6c7jTB2rGVCwc0J36NwGS2vp4nxv-yOg8akfOsRhxgZUdsDuwsdbvtAGrV-sqWot6bOAxnaa9cDSYvcRD3nlnIg4-vaHPlt5_CbIw-lLvhGPM1B8OF0RDC3QlVfFtLFIY3gB36cdmW6iyg1smoIJ2jmq513zs1s4bJDVFrrjm-CpdsQNVWH-r2QcTITg8WnN1vsvc7O75KS84gpuyub_kUKm0tsnT4fMAAAAAAAAACAsRHygw",
      "mldsa_sig_first32_hex": "e1ef0d773f1446ecc2d3458478313d9bfc112ae0dc15642beecfa2c9f7676c5d",
      "mldsa_verify": false,
      "mldsa_neg_skip_reason": "pqcrypto 0.4.0 verify() does not bind the message to the signature check and accepts any message with a structurally valid signature. ML-DSA-65 rejection cannot be asserted with this library version. Use a conformant implementation (e.g., oqs-provider for OpenSSL, or noble-post-quantum Node.js) to verify rejection."
    },
    {
      "kind": "positive",
      "id": "tc2-array-ordering",
      "description": "Array ordering preserved",
      "mandate_input": {
        "agent_id": "did:web:agents.example.com:agent-tc2",
        "currency": "HKD",
        "nonce": "d4735e3a265e16eee03f59718b9b5d03",
        "payee_constraints": [
          {
            "payee_id": "did:web:airwallex.com:merchant:aw_zzzlast"
          },
          {
            "payee_id": "did:web:stripe.com:merchant:acct_aaafirst"
          },
          {
            "payee_id": "did:web:wise.com:account:P999middle"
          }
        ],
        "spend_cap": 50000
      },
      "jcs_hex": "7b226167656e745f6964223a226469643a7765623a6167656e74732e6578616d706c652e636f6d3a6167656e742d746332222c2263757272656e6379223a22484b44222c226e6f6e6365223a226434373335653361323635653136656565303366353937313862396235643033222c2270617965655f636f6e73747261696e7473223a5b7b2270617965655f6964223a226469643a7765623a61697277616c6c65782e636f6d3a6d65726368616e743a61775f7a7a7a6c617374227d2c7b2270617965655f6964223a226469643a7765623a7374726970652e636f6d3a6d65726368616e743a616363745f6161616669727374227d2c7b2270617965655f6964223a226469643a7765623a776973652e636f6d3a6163636f756e743a503939396d6964646c65227d5d2c227370656e645f636170223a35303030307d",
      "jcs_base64url": "eyJhZ2VudF9pZCI6ImRpZDp3ZWI6YWdlbnRzLmV4YW1wbGUuY29tOmFnZW50LXRjMiIsImN1cnJlbmN5IjoiSEtEIiwibm9uY2UiOiJkNDczNWUzYTI2NWUxNmVlZTAzZjU5NzE4YjliNWQwMyIsInBheWVlX2NvbnN0cmFpbnRzIjpbeyJwYXllZV9pZCI6ImRpZDp3ZWI6YWlyd2FsbGV4LmNvbTptZXJjaGFudDphd196enpsYXN0In0seyJwYXllZV9pZCI6ImRpZDp3ZWI6c3RyaXBlLmNvbTptZXJjaGFudDphY2N0X2FhYWZpcnN0In0seyJwYXllZV9pZCI6ImRpZDp3ZWI6d2lzZS5jb206YWNjb3VudDpQOTk5bWlkZGxlIn1dLCJzcGVuZF9jYXAiOjUwMDAwfQ",
      "jcs_byte_length": 316,
      "fingerprint_hex": "f447cb36ee1fe1dbbecbf5961bcb8ae7038a4881a84912bfc89809d998b07e01",
      "ecdsa_sig_der_hex": "304402206ee2cf74028bf65f987bfef42dfb0fa8472af1a790b6996efac3a38d5d53cf7102204a999143a6609489a70d131629e73a8b70dceb348a6fb08560447248cdee9bdc",
      "ecdsa_sig_der_base64url": "MEQCIG7iz3QCi_ZfmHv-9C37D6hHKvGnkLaZbvrDo41dU89xAiBKmZFDpmCUiacNExYp5zqLcNzrNIpvsIVgRHJIze6b3A",
      "ecdsa_sig_byte_length": 70,
      "ecdsa_verify": true,
      "mldsa_sig_base64url": "bS2NWUeCFsrFmZCBYvKWgCsdAPP9vTSx_abbMQfBKxI91k3EcEg829mf5Sy7SF44ENHNdxHpEm1oH_9hM4kzxeaMLH7o21xenoZHL4jP2Bntf1I3zBUgKfNp7jON0EWvSX3TIQIWlFRPzg75Dk_4diWdglKxbVitORfMPmbshylPd032_ZH9vVJXV1mtUJQWHMR4157AxhrktbcRKGSqkxU9lPQ3XhUGEy9nMEWCO21ZUGP3QJgVF0_jVpLaWz7dL3g3zhlIxUWBdv56JS2eRjIaJFl2fEOfq3YDKUUdursNHDanUIjmsCt-jQzJiEPf1qBpc3cBnF7_ZL7TBYSGqh3XtQiAlMXNrKOp5z27LSdw0W07t-qvgs9q6TyKnukpft0-8SUKpc_Df4BG67qhDKHCICT2LwlVNCIZFAlJ_Wp1_6XbgaZjiZlo5U6nOPMrwIIZh1d5GXKA3GM-FUk4MkcW17rAoxdiz-9VBeCpjkBFK4OsICFosdoDAt7PjmoxMEl4fAiPVZ84yAfPCvdoRarBRcd_AMK2JnVsY3pMjG14Em9wvDUFVIexF8oUPBrVYA1HDDyWYBw5ZzCT4jsmxI0AA8fcY73YjK3P4gTXknbythlcWBpsVivK_tGR9rGaQ_QxnXlDNH-hbL4SYSVgpcOc7U2-aWbyOmObLf1CFeeA3yU5qb1Ubw-QlGGKheTh_POV8PYvRMUGjx_kJ-KgcV3fDR0v4wJPYzWFgYPnr0C82vxgvLVN9oodACJSWGKs8XgNCGeW_MRjygk2XNSi-k8qnhvl7q40dnOwLC4kZa2fS-4-YtTL1lvmJpBbCMPFC0EJOir7iovDdy8tQ5fCa2beajz5axMJ60UbXMF0KH2cFUFlw8afrpEaNQaWv0cZdIQqSQNze-gLnX2IlKQCfNA6sOXas-C06p_tycvsS_UrK9iwkTo3GZKBuFQVbr2Q3BiUxLTsn95A1RdPnjs5-Nhyz6KPe0eks7hLqleBjYFouMc49gd0787KeYckMRTYKNCogZasgDErcRZ-OkrC2KdKA3ytGXRvHo4xZj4-wOC4RgZhLsp5kg4WB6h9J3xVErwFXzQuqsC7vm-qpDLW7Fm4RZJU80kKaBX4r8TT5I6K1inNwuAMfrK7j9mV0X9CT02DlPysQ-pswnGPjKCYuS-2bBQ_NocL3a8t2G9DCWyBExA8coOmlUOAlsj6SurWUuoVercFZL9SrIwGANKagZjTrDG7vQ2xi24iIh1ZxKjxcOgFp7dZxBbCIe78NjBIOonWGuHH1ni45n5Z6d9GgBfVxR9sxfstpbFx9zlbCmVKywbywoDSsd1VAqGqkN1gb5mRAG6SjGs2KE3U4y1KmdQJXjzOcmMrVZfVofNZZ7LRgzOGf0SeKxLPds7wROSuv70qpyA-Rxi1LlZmG-AUB7UJhiJ8xUICdLYD-VkkfpCtOjs95pbPUmOXQ_twEBB8mFxQmPH6dP0mihQKAN5FYP7sHIOw5Dns9BWTTkpbt8GjD4upvONa0fC8w-67wVtpmMRbx9OZnQLQcEPKHgJvUKmVUfmkJOC6bBLPNu_8sT7Pq6_abr5eJ713-wEWRLVEGAnBT38c3iJNnJnl3_iGLAIPYt3E2twxo8_YUu83pfp_hHHUv8mQC1GTM5r7w1QCvMNDp1CD1vQFHdx6tBErYgst9p5bGrZQPgKCqQIBKBzIXvX_WL6D0xK9PS55xbPDVH8YrOTz5LrH6fzZIyx1G_Kg-eeNQVFPWIsng3uXpcXqH2g0f_zfpReNlNteMZj8yicKY-1ZkP4HO3CQvqfopsK4m-lbLXp065WTnG6A3Xg2DztJjVIH8tulIImLNTbzT05Sbx-Z3ZnI6fcMF7-w_ycajdeOPfIeoFXk_fx9UTq4kjoamEJ5c6SFj1uRdWTkBHcc4MxW_aRD1E_AYnVgEoX3QJGl0imhJ_NjjnCVaq1Wc_zEY3JRuVr9_UPRbvPqXx-sbWK5OYmUHO4Se9Nvf4kWOyLMpf1yXqzShTdQKQuPrAO0W_Qy0e5yV0AE0EKhPzW9WI48YkAbdKk2Mzzu7-wOxC-wrMiuDhBkS5s8bhLf4PocEiI2Zr4XpEaGa_vUjbX_-tL4t38M6g2aB4OVvQG13vshbBaVOMHXqGxBAzpiHU6vQp6FdryftDfQhUDWFpMOlNoWAIWijpK_xDxvAWgbjx_4WGGgG7FZv5ytGdWvqyJ1hVJTDghlklp93oyrtc-6Avhe1TFS44hFNtQA9uhqk4WVXSm3sPdb1DhzjSuWwzsD0Nh5r6HwJgArpWJeX0fZjtBtIHHziU2GEUh9cSxLAdg7IZy0UmLiMDiyI5OyAjDdgHpJqATwoMvZ3-u1r7kc1rk9rgt-1_b0YY5MMblFm1rZOH4cBqiyZWFWEJZRFLJcWGnbdyJfHBnYOI4t-xN50eaxNZ-hKl_ZU4P5oKvTXrDRZy0IJelVaajTbHO18zVnSnXWiH2nnqO_yE4UvuZWBI61-b1yVpwSwEe2gjbNknxKiCc84TNiJaizAB9EtNYsEkgfsoACoAghml2nuME6OfqRMjOGCS44PM-9wxhMfNn_qQ3sza3AkN0kGYVvqvsx5sU1r5i65T7Aho-Y0f-dlRXeo_qC3piDwS6hIU68bS7KRXbz42BcqWdwsA2gqT4F3NjqeWzny2kq-HoVR4yrXPOuJmtcYzrKgHSzk2ZCNTtp3LzkkjR64_WANG8A7JxalAfO4pCoWI0njpWyQIXE14kfop3rU6Z-qA-50ZKbtP76sOJ77KJNBJi7l6lrQM4kw25dTgY7GF1bd-fkWz9SHzIh2rzohYhGNtyb5aVhhOdX5_PdMMahSOltZ6zJCxD7Hy6OuDjieHLZe_dqS4JhTEGCRTaOFNWgwLGnap40oJbecZYz5rFxPDcrbzHqTn-xdyWgcfefhcH5yX34D0qh_hvNvYCF-muqKfqTRKJWaRcXhSYFFKLk3aArqRMEhceOmN4EVojnazemB3kNjf-lTmOtkwNLHP6SuR5CHul_9-76F_3mN6s6u9jgv3LZ8hnEh85Iq9jCYopkZv-ej39ms_ELjVfeff2TRHs5XwdJw1B5kB2vvWpzJyDw-1Q2j4gAogItGQjizaPBhYX1l-YsKx8HUiiLkEdExc9TW4v-mcohDXRBlqqCN3sNZT8-J4sChk1KayCcgt7rWr2s5obV-aNRh8X81ABvsFSWpUt0dcZ97cuy0iecfMjCqbOyzwkYuurTpMP6g7WPtQbIohaa5_x5jI7MSahcuId9R2VqT5DwEP83iYIdyUNUEhJJj8DIXI6LAR9IaPtBnNN62LC-VGciSb8w5r8z1YqFhQ5bYKE8AhuQFOeOwtO6ljZ7HVSGLdJHWB3rvvPBI9zj_bVPJXJ94ZZkHDhlqbTVoPhzqhA32MhY5P9Rm_TVnRUMsIl_w4T7hWM7bcoO0TNsJtaXqmhFl5LQlLeGhuK2Ys7dTw_dK27qESausDZk6tsAuIS2nXnQLbT8vno7nVHty3fTU27vecjsoR-HIKMCT4HaxsIXSH8OMvNJ2eILn8eaegLkjh63BHyW_hQ-sr-37QseuULPDmlDX2nFdgUFBhJomhKBp91Fhk99MCRvgrwhfUZNLOSQScalodnUpEeCqksM8QnM4mINhkCJzkQF1z9kA9CB5If9bAHZdwbKZsuAJJ29Kp74VuUlhPwARat_5v2T3rINdl_OCWMkIJA9eDCysHEFexryTsOF46f6FaLC024I9fJr8TthdE6XHRjRVVsOq6ZJxQVvNTPBSekl3JPVt47CL5NgcAqe8SqOCASjvtfJvXBF_stoShZzaQ1zJ8Mkbrryj8PkQwu5BgJYIQG0ieubaSVcvBusTWik6ShbXv_RKhwgQ4sBPie4FQELKaqo2VqRLAfheb_DIYpL7JpTqwagW2b7LK9GLa-w_UgNsIQZLgxI162KgfK3k3Pr6FDTyJ-AoeS0MwJLngEH0XZehj5IS2AR3xyXyxKjm5cAdqo4aoZ6_NsTcw91ZeV5Gl6iKLlHRlDdJd2uaA6ZDTgoeDYLwLiDN4ZDTxZsC5O1Tw1etHQSQ_Oc7NZ_CKEOXanXFOtgb68axNFoMAz6qpy5tZwQOgoeI6jsnTugiF8UxwYxvAxszwHtvdgjE-1SyWsSNmXRt2z3vw7FTiePImBcuLlsVEXt-dJNxa4ynEPP-3Qf8NNw18HgXe9dMP43WflGiVlhmLw392ZhIj3qbtLe75mmDijs1mLVpHNcOdEfhLl-sT9UujKYaLODLdhftglioksQMhrQB7DsHsHLdJJzmvs4qet9u5HhNh-c13oSGR8vNDZteo_E8wIZIF2ux-j9HEpgZo75HiN0tNEfO29yjpmktSxosrj_AAAAAAAAAAAAAAAACxMZHiYr",
      "mldsa_sig_first32_hex": "6d2d8d59478216cac599908162f296802b1d00f3fdbd34b1fda6db3107c12b12",
      "mldsa_verify": true,
      "dual_signed_envelope": {
        "agent_id": "did:web:agents.example.com:agent-tc2",
        "currency": "HKD",
        "nonce": "d4735e3a265e16eee03f59718b9b5d03",
        "payee_constraints": [
          {
            "payee_id": "did:web:airwallex.com:merchant:aw_zzzlast"
          },
          {
            "payee_id": "did:web:stripe.com:merchant:acct_aaafirst"
          },
          {
            "payee_id": "did:web:wise.com:account:P999middle"
          }
        ],
        "spend_cap": 50000,
        "signature": {
          "alg": "ap2-ecdsa-p256+ap2-mldsa65",
          "ecdsa": "MEQCIG7iz3QCi_ZfmHv-9C37D6hHKvGnkLaZbvrDo41dU89xAiBKmZFDpmCUiacNExYp5zqLcNzrNIpvsIVgRHJIze6b3A",
          "mldsa": "bS2NWUeCFsrFmZCBYvKWgCsdAPP9vTSx_abbMQfBKxI91k3EcEg829mf5Sy7SF44ENHNdxHpEm1oH_9hM4kzxeaMLH7o21xenoZHL4jP2Bntf1I3zBUgKfNp7jON0EWvSX3TIQIWlFRPzg75Dk_4diWdglKxbVitORfMPmbshylPd032_ZH9vVJXV1mtUJQWHMR4157AxhrktbcRKGSqkxU9lPQ3XhUGEy9nMEWCO21ZUGP3QJgVF0_jVpLaWz7dL3g3zhlIxUWBdv56JS2eRjIaJFl2fEOfq3YDKUUdursNHDanUIjmsCt-jQzJiEPf1qBpc3cBnF7_ZL7TBYSGqh3XtQiAlMXNrKOp5z27LSdw0W07t-qvgs9q6TyKnukpft0-8SUKpc_Df4BG67qhDKHCICT2LwlVNCIZFAlJ_Wp1_6XbgaZjiZlo5U6nOPMrwIIZh1d5GXKA3GM-FUk4MkcW17rAoxdiz-9VBeCpjkBFK4OsICFosdoDAt7PjmoxMEl4fAiPVZ84yAfPCvdoRarBRcd_AMK2JnVsY3pMjG14Em9wvDUFVIexF8oUPBrVYA1HDDyWYBw5ZzCT4jsmxI0AA8fcY73YjK3P4gTXknbythlcWBpsVivK_tGR9rGaQ_QxnXlDNH-hbL4SYSVgpcOc7U2-aWbyOmObLf1CFeeA3yU5qb1Ubw-QlGGKheTh_POV8PYvRMUGjx_kJ-KgcV3fDR0v4wJPYzWFgYPnr0C82vxgvLVN9oodACJSWGKs8XgNCGeW_MRjygk2XNSi-k8qnhvl7q40dnOwLC4kZa2fS-4-YtTL1lvmJpBbCMPFC0EJOir7iovDdy8tQ5fCa2beajz5axMJ60UbXMF0KH2cFUFlw8afrpEaNQaWv0cZdIQqSQNze-gLnX2IlKQCfNA6sOXas-C06p_tycvsS_UrK9iwkTo3GZKBuFQVbr2Q3BiUxLTsn95A1RdPnjs5-Nhyz6KPe0eks7hLqleBjYFouMc49gd0787KeYckMRTYKNCogZasgDErcRZ-OkrC2KdKA3ytGXRvHo4xZj4-wOC4RgZhLsp5kg4WB6h9J3xVErwFXzQuqsC7vm-qpDLW7Fm4RZJU80kKaBX4r8TT5I6K1inNwuAMfrK7j9mV0X9CT02DlPysQ-pswnGPjKCYuS-2bBQ_NocL3a8t2G9DCWyBExA8coOmlUOAlsj6SurWUuoVercFZL9SrIwGANKagZjTrDG7vQ2xi24iIh1ZxKjxcOgFp7dZxBbCIe78NjBIOonWGuHH1ni45n5Z6d9GgBfVxR9sxfstpbFx9zlbCmVKywbywoDSsd1VAqGqkN1gb5mRAG6SjGs2KE3U4y1KmdQJXjzOcmMrVZfVofNZZ7LRgzOGf0SeKxLPds7wROSuv70qpyA-Rxi1LlZmG-AUB7UJhiJ8xUICdLYD-VkkfpCtOjs95pbPUmOXQ_twEBB8mFxQmPH6dP0mihQKAN5FYP7sHIOw5Dns9BWTTkpbt8GjD4upvONa0fC8w-67wVtpmMRbx9OZnQLQcEPKHgJvUKmVUfmkJOC6bBLPNu_8sT7Pq6_abr5eJ713-wEWRLVEGAnBT38c3iJNnJnl3_iGLAIPYt3E2twxo8_YUu83pfp_hHHUv8mQC1GTM5r7w1QCvMNDp1CD1vQFHdx6tBErYgst9p5bGrZQPgKCqQIBKBzIXvX_WL6D0xK9PS55xbPDVH8YrOTz5LrH6fzZIyx1G_Kg-eeNQVFPWIsng3uXpcXqH2g0f_zfpReNlNteMZj8yicKY-1ZkP4HO3CQvqfopsK4m-lbLXp065WTnG6A3Xg2DztJjVIH8tulIImLNTbzT05Sbx-Z3ZnI6fcMF7-w_ycajdeOPfIeoFXk_fx9UTq4kjoamEJ5c6SFj1uRdWTkBHcc4MxW_aRD1E_AYnVgEoX3QJGl0imhJ_NjjnCVaq1Wc_zEY3JRuVr9_UPRbvPqXx-sbWK5OYmUHO4Se9Nvf4kWOyLMpf1yXqzShTdQKQuPrAO0W_Qy0e5yV0AE0EKhPzW9WI48YkAbdKk2Mzzu7-wOxC-wrMiuDhBkS5s8bhLf4PocEiI2Zr4XpEaGa_vUjbX_-tL4t38M6g2aB4OVvQG13vshbBaVOMHXqGxBAzpiHU6vQp6FdryftDfQhUDWFpMOlNoWAIWijpK_xDxvAWgbjx_4WGGgG7FZv5ytGdWvqyJ1hVJTDghlklp93oyrtc-6Avhe1TFS44hFNtQA9uhqk4WVXSm3sPdb1DhzjSuWwzsD0Nh5r6HwJgArpWJeX0fZjtBtIHHziU2GEUh9cSxLAdg7IZy0UmLiMDiyI5OyAjDdgHpJqATwoMvZ3-u1r7kc1rk9rgt-1_b0YY5MMblFm1rZOH4cBqiyZWFWEJZRFLJcWGnbdyJfHBnYOI4t-xN50eaxNZ-hKl_ZU4P5oKvTXrDRZy0IJelVaajTbHO18zVnSnXWiH2nnqO_yE4UvuZWBI61-b1yVpwSwEe2gjbNknxKiCc84TNiJaizAB9EtNYsEkgfsoACoAghml2nuME6OfqRMjOGCS44PM-9wxhMfNn_qQ3sza3AkN0kGYVvqvsx5sU1r5i65T7Aho-Y0f-dlRXeo_qC3piDwS6hIU68bS7KRXbz42BcqWdwsA2gqT4F3NjqeWzny2kq-HoVR4yrXPOuJmtcYzrKgHSzk2ZCNTtp3LzkkjR64_WANG8A7JxalAfO4pCoWI0njpWyQIXE14kfop3rU6Z-qA-50ZKbtP76sOJ77KJNBJi7l6lrQM4kw25dTgY7GF1bd-fkWz9SHzIh2rzohYhGNtyb5aVhhOdX5_PdMMahSOltZ6zJCxD7Hy6OuDjieHLZe_dqS4JhTEGCRTaOFNWgwLGnap40oJbecZYz5rFxPDcrbzHqTn-xdyWgcfefhcH5yX34D0qh_hvNvYCF-muqKfqTRKJWaRcXhSYFFKLk3aArqRMEhceOmN4EVojnazemB3kNjf-lTmOtkwNLHP6SuR5CHul_9-76F_3mN6s6u9jgv3LZ8hnEh85Iq9jCYopkZv-ej39ms_ELjVfeff2TRHs5XwdJw1B5kB2vvWpzJyDw-1Q2j4gAogItGQjizaPBhYX1l-YsKx8HUiiLkEdExc9TW4v-mcohDXRBlqqCN3sNZT8-J4sChk1KayCcgt7rWr2s5obV-aNRh8X81ABvsFSWpUt0dcZ97cuy0iecfMjCqbOyzwkYuurTpMP6g7WPtQbIohaa5_x5jI7MSahcuId9R2VqT5DwEP83iYIdyUNUEhJJj8DIXI6LAR9IaPtBnNN62LC-VGciSb8w5r8z1YqFhQ5bYKE8AhuQFOeOwtO6ljZ7HVSGLdJHWB3rvvPBI9zj_bVPJXJ94ZZkHDhlqbTVoPhzqhA32MhY5P9Rm_TVnRUMsIl_w4T7hWM7bcoO0TNsJtaXqmhFl5LQlLeGhuK2Ys7dTw_dK27qESausDZk6tsAuIS2nXnQLbT8vno7nVHty3fTU27vecjsoR-HIKMCT4HaxsIXSH8OMvNJ2eILn8eaegLkjh63BHyW_hQ-sr-37QseuULPDmlDX2nFdgUFBhJomhKBp91Fhk99MCRvgrwhfUZNLOSQScalodnUpEeCqksM8QnM4mINhkCJzkQF1z9kA9CB5If9bAHZdwbKZsuAJJ29Kp74VuUlhPwARat_5v2T3rINdl_OCWMkIJA9eDCysHEFexryTsOF46f6FaLC024I9fJr8TthdE6XHRjRVVsOq6ZJxQVvNTPBSekl3JPVt47CL5NgcAqe8SqOCASjvtfJvXBF_stoShZzaQ1zJ8Mkbrryj8PkQwu5BgJYIQG0ieubaSVcvBusTWik6ShbXv_RKhwgQ4sBPie4FQELKaqo2VqRLAfheb_DIYpL7JpTqwagW2b7LK9GLa-w_UgNsIQZLgxI162KgfK3k3Pr6FDTyJ-AoeS0MwJLngEH0XZehj5IS2AR3xyXyxKjm5cAdqo4aoZ6_NsTcw91ZeV5Gl6iKLlHRlDdJd2uaA6ZDTgoeDYLwLiDN4ZDTxZsC5O1Tw1etHQSQ_Oc7NZ_CKEOXanXFOtgb68axNFoMAz6qpy5tZwQOgoeI6jsnTugiF8UxwYxvAxszwHtvdgjE-1SyWsSNmXRt2z3vw7FTiePImBcuLlsVEXt-dJNxa4ynEPP-3Qf8NNw18HgXe9dMP43WflGiVlhmLw392ZhIj3qbtLe75mmDijs1mLVpHNcOdEfhLl-sT9UujKYaLODLdhftglioksQMhrQB7DsHsHLdJJzmvs4qet9u5HhNh-c13oSGR8vNDZteo_E8wIZIF2ux-j9HEpgZo75HiN0tNEfO29yjpmktSxosrj_AAAAAAAAAAAAAAAACxMZHiYr",
          "pubkey_fingerprint": "f9b83d417d6d92b9"
        }
      }
    },
    {
      "kind": "positive",
      "id": "tc3-decimal",
      "description": "Decimal 1.10 -> 1.1",
      "mandate_input": {
        "agent_id": "did:web:agents.example.com:agent-tc3",
        "currency": "USD",
        "nonce": "4b227777d4dd1fc61c6f884f48641d02",
        "recipient": "did:web:payee.example.com:acct-001",
        "spend_cap": 1.1
      },
      "jcs_hex": "7b226167656e745f6964223a226469643a7765623a6167656e74732e6578616d706c652e636f6d3a6167656e742d746333222c2263757272656e6379223a22555344222c226e6f6e6365223a223462323237373737643464643166633631633666383834663438363431643032222c22726563697069656e74223a226469643a7765623a70617965652e6578616d706c652e636f6d3a616363742d303031222c227370656e645f636170223a312e317d",
      "jcs_base64url": "eyJhZ2VudF9pZCI6ImRpZDp3ZWI6YWdlbnRzLmV4YW1wbGUuY29tOmFnZW50LXRjMyIsImN1cnJlbmN5IjoiVVNEIiwibm9uY2UiOiI0YjIyNzc3N2Q0ZGQxZmM2MWM2Zjg4NGY0ODY0MWQwMiIsInJlY2lwaWVudCI6ImRpZDp3ZWI6cGF5ZWUuZXhhbXBsZS5jb206YWNjdC0wMDEiLCJzcGVuZF9jYXAiOjEuMX0",
      "jcs_byte_length": 176,
      "fingerprint_hex": "3886b412979df392b17f41e13771c839167e0a342514859df14bade0dddeb5ea",
      "ecdsa_sig_der_hex": "304402210091d39be60ab5d0646c5df0c0a7858d5ce5c176309a162b6fe2cb2dd43459c7d7021f53f9bc1ae30d7e833251c34fc169ac5ed6819d8e371d009048745a21a71a97",
      "ecdsa_sig_der_base64url": "MEQCIQCR05vmCrXQZGxd8MCnhY1c5cF2MJoWK2_iyy3UNFnH1wIfU_m8GuMNfoMyUcNPwWmsXtaBnY43HQCQSHRaIacalw",
      "ecdsa_sig_byte_length": 70,
      "ecdsa_verify": true,
      "mldsa_sig_base64url": "4oIfLLK-1y0vq9isRLhiGYadBLuFCgoQ_pAkp9pIT7g5rS1jtDIs2TFSEw2U2tVIa2aJ2083Bf2HUWNoBe5x3d9Wj7D9t9NjmpZfV6niu_u1OpIU12-toLUNJJ8M1Nc-nK2GDyJvV9-0FaP5KyydT1KPh6sqMiKtCEvyCS9xU9JTUAuJqBP1es3xVaoWsZb7qnAXAyUxRbxASFPIMnM-nwKTsRIwHQ_dMAlwMIXt2MC1qX94mVURCs2CVC0yKwACov58N03qCytBWjl7StXOv86W3XqzAJq8ouapkP_DKKHLg0JZdh3VjyPAbJo3hm8lrbITIu56kCPdH8tGVc4txG4YtfI8XdMBSTnC8HKg9jFEPq5ASv8364ogArhsUSX9nFnUcWldxf4JawO5NjyFMFFOCMe2eW3z3ZUGh6DXrrl1yJ2uuiYT6C1VafkBK9O424D7oKvJ1LPr1OwD3nzivThL-kzLuukd5mvBP0aWj3IYvfI7wh1ysbnQwa7Ba0WsfmIlXTw_sGP5K8ukRipW1JzPZ4tfNnCW6a9y92kXRla9ETstLpeCFZeA0p2mgEN38sIR-mQ0JfHvmUBBg6q0_0Tat_UkDdVxJzeGIQk698RJvM5f0MEZbywCJ-gNNts2WBCKS40sdPiQHALcL3lg_dwlBnUKU7veMCOc0ld_jL_m6EolQN0aYiT-WWtrHQRwWr9hFHDgJcKDUYLwf__f2dYvewb-j05uOPTZrXbIEVSiWEyQ14Kf5cv6FQjoOHTFXOLSi6npTJIUMsTz_Uts8wT1g9K2WcdJCI77-K-h-F4PaLJ6m_xJlkxNnMX0X26YzyBvHOiNd10YA6EBTOUzoGkJ2KK1YD3cUhX5JXGiRtu4mf4Gyj0cxNA74a5-3r9YT3IfQT5NPzmDIbYk7vvyPFU3Y01MDkM4ZklfkUcLv7pXeUlfe2NSLmV7VZ0uut10jlO7LnCUCa-8P3s9aCEF_xSLt4927EdfaS0s2vWEizSQtq8mbvSR3hLiNrDoUakQ9b6WNGMn21pCy9ehs87XLvv6rSxF1tVJwcFTv_xIu0Am156w-jlcfqoYx5rLTKqsDM4fUbrMHfP-DhvIBIcACxMSOHEFDtWyIWa2Iu9HHylt1_9-L9B4gKPwTFTqJWTMGex64LxyaHuFMuprnMt2tXkmSNkqw82-IJAKQgLO1uEa2wrUFINUuyais5XkQPEPL1RmPuUVU6de5_zSN31Mk-w0e-r6eVkqcFZl72JMp9dQ_Zod9i-kYoj-fZ5AWNihQsB_V9EFySfhFVgr-aoAN5cUP77vdem7ErnGDPzQC5hcYdK5BhPrAfl0Tr6x6YTcjMm-xEFgFJNlBW0yK6it0AXDrDj8Hs7dOFToXdNYo6-zewN0weef5xfaG9f-28U2Bf6xJEHhrKrqrtu7QPy09ptKHWjFwj5t40kY5s1uiCs0T3GwPYioXMQj84nCFyjiRr4wWxb_F61KTgzsTqMSGhlKJGB8N1yW9zQG-iXG7HIjyvqAyq1D8E_5YzGPy5apsfxh2PGz_eGxFk6w2Y6LhrRz8xXQFTPQOfhspIm064GVJkMaNMS9mdRi_mJg4Fl-mctAumIHtYi4QdMpoYbmBZ1cuFkf0YKMblhoDGFNnTkZptCbRRZJfwL8_YjFdAgwD7lzpOcMLKKnvtP_YtabsQv4MdQVfmkkPCrR6X6rHdsVjZ6T_qaWAgWwd7xepHiDIoTM9xh1hOyfVS1GDJvXiVjH0EVWCEjspp_gUDOXJN0DSWTW7xIy0aERK50uI0Wq5QN54XCgF27DGQ2fg4IGie_cgbY_m_PrRkTYlfXT560n5-CIBjLRjUOA0DLvlmfyG6dQnJQ7t8QNBF8_RU4xR6i4Q3yPFk-g3pD2hNyuv4FKxVKRdb_37R_jxvawlGbGZMTpyA0a8QGclUGZocxMtmTjcj3HuVN2XUCXKZWjHE5Jkzkl1xn5RT5WN-o0jRrk0tq_csmZJQGn4VAqoCGllUPUKM3LTRPbGFsi7mDFmEvl2r2Db8Ffi9pg9YTJHWRlPkDiO_hrazDT6dlqLVbUzZcaaEV6bWvd-IoRD2cA-Vreu7x4i9z9RL8YXS58KUch8zch7nCJOnyG2Rfxq12NG2sTG4yJtog5rBqQ2ZTuNakPbG6XhgwSreOX4cLAOQILKtpjB5i0XS9HqVG2np0lSHxc-1A5hffIvrzsY1f1zs0_y5mB-tuSMmZMyozFgwvYevbbA7gLjUJfeZuVzODYGqYC7mDR2WrWj0y7i8vTwDr3NIxvhy8KEKaFG1tmpxNNlEPCK4_S29cy_fFyFJm2dAHirR-CeEkJaFt9MV_E0253HQKtHvy1uiFwfNG3PrSZ-Hw_19glfu6UohUxvLX0APSzKH6MiubnDraVu8OYVVE5n8u6gXfmceGwiUroGSK7y6D-ZnXmyZChUEJ0Pbs8zgQ4kT2rUF19zC-tq4ntyeYrN3otSK_yyNk7e3JZa3SDPiNO9EFiPg0a-WiTY6vCqR_YmTLhesKdpb1tjnCaiu8MOFNdIrgwYXnQPy_-UnDm3N-kgE2RXwpKZp9ZYiicmKM2Dx0MnDpgrQK3NELiYXQdr59D1PeH7QzfFWbfyATerXoh5exO946H06wMPKWWj6m7_IItqEQ_Fhep3NIjoTNykB4gCKhi2TQCDR775gBebhIHsRV4Mn-HDCg7wBmH-CixvB5C52wcPSnuEQvzKO9CArBcJcTfUD3WVAmYhe05WFWnM2M1JimCPh56cP-qi_9pNeYI-2JU0fgzqauQ_QCPQn3c3PUiUrRZqmL0HeXB7GKeP5QJArXYxeqipZdr9PtCPc3sMRAUkw8RV0QWLvudS2gPZAjsfqS0oMYfHdSmszOI029RHu5PC3EWPA4Rfm27rQ93JSdyVcPZu3f-Q4oDnZl3ptrL6XdOTcApczU3o7m-rPK1BLlGBRWuI5QMJcf86FvtBDBmwNJnixq77Hi9Q0FvT0ulh0w5N5PdYi8bGdbFz85EuhkU_VsCYR8wyVJ1loUmd-aGwu2ylAKtpvQcRhYG4-_TDtNuBscaVC67-st5vZKs4X4mooRf6mQ0Ty1YKvqqYm2dCky5JCj9EymJrfEy60Aboa9eVuo4IfPXCtP9dS9jxZF9Ptz1PRhha-V246BxEcL4IeiHX25MIGY-8Ia5ekW32_z8t54yxTbAoTLGBQYyUvRMY8dxjkZ8cPn0iV_WGeqDax1sHEEOF3LaqENE9ukhAkjhNsKGmiwE5fWIrn70m0cJ_xbofgSFdzvOuTylBkxP4fmgCDIT86LCtf3URQEoGPuSPYdMoBNRkYq4GmHiDpuk1GybRLB-rWif1riQUq_8wD2zadYfjiTBFlUQfubwGgxjWCd9OUL_tV3ONSyP-l9W4U2YgYL9x9I5R4qbrfpDstDgQoCWasjM2pd58TAG3kCTb2CT0FeXGdg4L2CaVjOeCJMY3uKR5wPkqSH1mi1exvk4NnZEi1CmoCrqwzufswdGVOjuyxUC7zaj8M5qsivJY0BRI-FCxMkPgehKeaZ0alKA5GPs53VktPdr7d8QRRDmhJQxoAAzl8gsEjUhKFBzOE-5IvzPu7uA6iWjszbWWNHt1_Zv38Y8hBJMozHQuQ2Lb3w29_YY5oLGRrVZhiO09BUUlY1DNdnqaFlSilIbzEeOfZz0Kg691Pu-UnyFLT9SkWKAXYQp_zcK0Y6MZhLKb49MImdn4a97hSAwfJZja324oRzOUALqJVJMI0m0xgzTu3NOKEdlEwurNgMqp4iTwf9iwmqgVLPKSzuaDeWBXK9AwFTSlzC3WoJgHBDptkNcloPsuMO3LPBMRQlQ96KoCPeTivmwTOvqJDiFicXOKBGs0-PVluhhksqPFWEq1qNUoQwDIurtM8kerKWB_u0eI9NM4E3oBhWxl9tlO_CebfNYAyNEM4sAG9YJ8AZVLDqUWl460E6-AiQyDb59GrdTNChnnNpxHdPROjAHSmnpmeM2ACXAEhrv0EopD08NhZmPuaCOQceqJRGFl0C1uHJ2BGTLMkk1-qnnB5UoQfeCf0HRFF-vn0V8d153lWdTwZUjYGqJEqxpxQ_pGtm0W0c62M4zIuI6IbKFChICTMxi3LMZGnLWTKJjLrJQDdt9VA9RruILrXRBVrokNH4X_g4uMe2AXVp_kM_tK5YRmbZACKir-VNF5lOTdP4_iNBwdD95sKCWrT_ZTUuwNhzwis4GWEUpOrohKH1zO_crlv_gSyPbk-Z4Z4GSpvbZKRNXvZ9FlImrx9RG7CLN7kpbrfBXfqtR8DhcM5mp0i1ME_YlvLpSul5nKWcSGSw9fbjH1OgvS-MRR6n3BRNZa4qfoKyuteozSH61xff_a3CM4ewAAAAAAAAAAAAAAAAAAAAACQwQGyIn",
      "mldsa_sig_first32_hex": "e2821f2cb2bed72d2fabd8ac44b86219869d04bb850a0a10fe9024a7da484fb8",
      "mldsa_verify": true,
      "dual_signed_envelope": {
        "agent_id": "did:web:agents.example.com:agent-tc3",
        "currency": "USD",
        "nonce": "4b227777d4dd1fc61c6f884f48641d02",
        "recipient": "did:web:payee.example.com:acct-001",
        "spend_cap": 1.1,
        "signature": {
          "alg": "ap2-ecdsa-p256+ap2-mldsa65",
          "ecdsa": "MEQCIQCR05vmCrXQZGxd8MCnhY1c5cF2MJoWK2_iyy3UNFnH1wIfU_m8GuMNfoMyUcNPwWmsXtaBnY43HQCQSHRaIacalw",
          "mldsa": "4oIfLLK-1y0vq9isRLhiGYadBLuFCgoQ_pAkp9pIT7g5rS1jtDIs2TFSEw2U2tVIa2aJ2083Bf2HUWNoBe5x3d9Wj7D9t9NjmpZfV6niu_u1OpIU12-toLUNJJ8M1Nc-nK2GDyJvV9-0FaP5KyydT1KPh6sqMiKtCEvyCS9xU9JTUAuJqBP1es3xVaoWsZb7qnAXAyUxRbxASFPIMnM-nwKTsRIwHQ_dMAlwMIXt2MC1qX94mVURCs2CVC0yKwACov58N03qCytBWjl7StXOv86W3XqzAJq8ouapkP_DKKHLg0JZdh3VjyPAbJo3hm8lrbITIu56kCPdH8tGVc4txG4YtfI8XdMBSTnC8HKg9jFEPq5ASv8364ogArhsUSX9nFnUcWldxf4JawO5NjyFMFFOCMe2eW3z3ZUGh6DXrrl1yJ2uuiYT6C1VafkBK9O424D7oKvJ1LPr1OwD3nzivThL-kzLuukd5mvBP0aWj3IYvfI7wh1ysbnQwa7Ba0WsfmIlXTw_sGP5K8ukRipW1JzPZ4tfNnCW6a9y92kXRla9ETstLpeCFZeA0p2mgEN38sIR-mQ0JfHvmUBBg6q0_0Tat_UkDdVxJzeGIQk698RJvM5f0MEZbywCJ-gNNts2WBCKS40sdPiQHALcL3lg_dwlBnUKU7veMCOc0ld_jL_m6EolQN0aYiT-WWtrHQRwWr9hFHDgJcKDUYLwf__f2dYvewb-j05uOPTZrXbIEVSiWEyQ14Kf5cv6FQjoOHTFXOLSi6npTJIUMsTz_Uts8wT1g9K2WcdJCI77-K-h-F4PaLJ6m_xJlkxNnMX0X26YzyBvHOiNd10YA6EBTOUzoGkJ2KK1YD3cUhX5JXGiRtu4mf4Gyj0cxNA74a5-3r9YT3IfQT5NPzmDIbYk7vvyPFU3Y01MDkM4ZklfkUcLv7pXeUlfe2NSLmV7VZ0uut10jlO7LnCUCa-8P3s9aCEF_xSLt4927EdfaS0s2vWEizSQtq8mbvSR3hLiNrDoUakQ9b6WNGMn21pCy9ehs87XLvv6rSxF1tVJwcFTv_xIu0Am156w-jlcfqoYx5rLTKqsDM4fUbrMHfP-DhvIBIcACxMSOHEFDtWyIWa2Iu9HHylt1_9-L9B4gKPwTFTqJWTMGex64LxyaHuFMuprnMt2tXkmSNkqw82-IJAKQgLO1uEa2wrUFINUuyais5XkQPEPL1RmPuUVU6de5_zSN31Mk-w0e-r6eVkqcFZl72JMp9dQ_Zod9i-kYoj-fZ5AWNihQsB_V9EFySfhFVgr-aoAN5cUP77vdem7ErnGDPzQC5hcYdK5BhPrAfl0Tr6x6YTcjMm-xEFgFJNlBW0yK6it0AXDrDj8Hs7dOFToXdNYo6-zewN0weef5xfaG9f-28U2Bf6xJEHhrKrqrtu7QPy09ptKHWjFwj5t40kY5s1uiCs0T3GwPYioXMQj84nCFyjiRr4wWxb_F61KTgzsTqMSGhlKJGB8N1yW9zQG-iXG7HIjyvqAyq1D8E_5YzGPy5apsfxh2PGz_eGxFk6w2Y6LhrRz8xXQFTPQOfhspIm064GVJkMaNMS9mdRi_mJg4Fl-mctAumIHtYi4QdMpoYbmBZ1cuFkf0YKMblhoDGFNnTkZptCbRRZJfwL8_YjFdAgwD7lzpOcMLKKnvtP_YtabsQv4MdQVfmkkPCrR6X6rHdsVjZ6T_qaWAgWwd7xepHiDIoTM9xh1hOyfVS1GDJvXiVjH0EVWCEjspp_gUDOXJN0DSWTW7xIy0aERK50uI0Wq5QN54XCgF27DGQ2fg4IGie_cgbY_m_PrRkTYlfXT560n5-CIBjLRjUOA0DLvlmfyG6dQnJQ7t8QNBF8_RU4xR6i4Q3yPFk-g3pD2hNyuv4FKxVKRdb_37R_jxvawlGbGZMTpyA0a8QGclUGZocxMtmTjcj3HuVN2XUCXKZWjHE5Jkzkl1xn5RT5WN-o0jRrk0tq_csmZJQGn4VAqoCGllUPUKM3LTRPbGFsi7mDFmEvl2r2Db8Ffi9pg9YTJHWRlPkDiO_hrazDT6dlqLVbUzZcaaEV6bWvd-IoRD2cA-Vreu7x4i9z9RL8YXS58KUch8zch7nCJOnyG2Rfxq12NG2sTG4yJtog5rBqQ2ZTuNakPbG6XhgwSreOX4cLAOQILKtpjB5i0XS9HqVG2np0lSHxc-1A5hffIvrzsY1f1zs0_y5mB-tuSMmZMyozFgwvYevbbA7gLjUJfeZuVzODYGqYC7mDR2WrWj0y7i8vTwDr3NIxvhy8KEKaFG1tmpxNNlEPCK4_S29cy_fFyFJm2dAHirR-CeEkJaFt9MV_E0253HQKtHvy1uiFwfNG3PrSZ-Hw_19glfu6UohUxvLX0APSzKH6MiubnDraVu8OYVVE5n8u6gXfmceGwiUroGSK7y6D-ZnXmyZChUEJ0Pbs8zgQ4kT2rUF19zC-tq4ntyeYrN3otSK_yyNk7e3JZa3SDPiNO9EFiPg0a-WiTY6vCqR_YmTLhesKdpb1tjnCaiu8MOFNdIrgwYXnQPy_-UnDm3N-kgE2RXwpKZp9ZYiicmKM2Dx0MnDpgrQK3NELiYXQdr59D1PeH7QzfFWbfyATerXoh5exO946H06wMPKWWj6m7_IItqEQ_Fhep3NIjoTNykB4gCKhi2TQCDR775gBebhIHsRV4Mn-HDCg7wBmH-CixvB5C52wcPSnuEQvzKO9CArBcJcTfUD3WVAmYhe05WFWnM2M1JimCPh56cP-qi_9pNeYI-2JU0fgzqauQ_QCPQn3c3PUiUrRZqmL0HeXB7GKeP5QJArXYxeqipZdr9PtCPc3sMRAUkw8RV0QWLvudS2gPZAjsfqS0oMYfHdSmszOI029RHu5PC3EWPA4Rfm27rQ93JSdyVcPZu3f-Q4oDnZl3ptrL6XdOTcApczU3o7m-rPK1BLlGBRWuI5QMJcf86FvtBDBmwNJnixq77Hi9Q0FvT0ulh0w5N5PdYi8bGdbFz85EuhkU_VsCYR8wyVJ1loUmd-aGwu2ylAKtpvQcRhYG4-_TDtNuBscaVC67-st5vZKs4X4mooRf6mQ0Ty1YKvqqYm2dCky5JCj9EymJrfEy60Aboa9eVuo4IfPXCtP9dS9jxZF9Ptz1PRhha-V246BxEcL4IeiHX25MIGY-8Ia5ekW32_z8t54yxTbAoTLGBQYyUvRMY8dxjkZ8cPn0iV_WGeqDax1sHEEOF3LaqENE9ukhAkjhNsKGmiwE5fWIrn70m0cJ_xbofgSFdzvOuTylBkxP4fmgCDIT86LCtf3URQEoGPuSPYdMoBNRkYq4GmHiDpuk1GybRLB-rWif1riQUq_8wD2zadYfjiTBFlUQfubwGgxjWCd9OUL_tV3ONSyP-l9W4U2YgYL9x9I5R4qbrfpDstDgQoCWasjM2pd58TAG3kCTb2CT0FeXGdg4L2CaVjOeCJMY3uKR5wPkqSH1mi1exvk4NnZEi1CmoCrqwzufswdGVOjuyxUC7zaj8M5qsivJY0BRI-FCxMkPgehKeaZ0alKA5GPs53VktPdr7d8QRRDmhJQxoAAzl8gsEjUhKFBzOE-5IvzPu7uA6iWjszbWWNHt1_Zv38Y8hBJMozHQuQ2Lb3w29_YY5oLGRrVZhiO09BUUlY1DNdnqaFlSilIbzEeOfZz0Kg691Pu-UnyFLT9SkWKAXYQp_zcK0Y6MZhLKb49MImdn4a97hSAwfJZja324oRzOUALqJVJMI0m0xgzTu3NOKEdlEwurNgMqp4iTwf9iwmqgVLPKSzuaDeWBXK9AwFTSlzC3WoJgHBDptkNcloPsuMO3LPBMRQlQ96KoCPeTivmwTOvqJDiFicXOKBGs0-PVluhhksqPFWEq1qNUoQwDIurtM8kerKWB_u0eI9NM4E3oBhWxl9tlO_CebfNYAyNEM4sAG9YJ8AZVLDqUWl460E6-AiQyDb59GrdTNChnnNpxHdPROjAHSmnpmeM2ACXAEhrv0EopD08NhZmPuaCOQceqJRGFl0C1uHJ2BGTLMkk1-qnnB5UoQfeCf0HRFF-vn0V8d153lWdTwZUjYGqJEqxpxQ_pGtm0W0c62M4zIuI6IbKFChICTMxi3LMZGnLWTKJjLrJQDdt9VA9RruILrXRBVrokNH4X_g4uMe2AXVp_kM_tK5YRmbZACKir-VNF5lOTdP4_iNBwdD95sKCWrT_ZTUuwNhzwis4GWEUpOrohKH1zO_crlv_gSyPbk-Z4Z4GSpvbZKRNXvZ9FlImrx9RG7CLN7kpbrfBXfqtR8DhcM5mp0i1ME_YlvLpSul5nKWcSGSw9fbjH1OgvS-MRR6n3BRNZa4qfoKyuteozSH61xff_a3CM4ewAAAAAAAAAAAAAAAAAAAAACQwQGyIn",
          "pubkey_fingerprint": "f9b83d417d6d92b9"
        }
      }
    },
    {
      "kind": "positive",
      "id": "tc4-retention",
      "description": "7-year retention HKMA Cap615",
      "mandate_input": {
        "agent_id": "did:web:agents.example.com:agent-tc4",
        "amount": "88000.00",
        "currency": "HKD",
        "issued_at": "2026-05-01T00:00:00.000Z",
        "nonce": "ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d",
        "pq_algorithm": "ML-DSA-65",
        "pq_canonicalization": "JCS",
        "pq_pubkey_ref": "did:web:keys.pqsafe.io#mldsa65-2026",
        "recipient": "did:web:seniordeli.com:payee:main",
        "retention_metadata": {
          "policy": "HKMA-Cap615-7yr",
          "retention_until": "2033-05-01T00:00:00.000Z"
        }
      },
      "jcs_hex": "7b226167656e745f6964223a226469643a7765623a6167656e74732e6578616d706c652e636f6d3a6167656e742d746334222c22616d6f756e74223a2238383030302e3030222c2263757272656e6379223a22484b44222c226973737565645f6174223a22323032362d30352d30315430303a30303a30302e3030305a222c226e6f6e6365223a2265663264313237646533376239343262616164303631343565353462306336313961316632323332376232656262636662656337386635353634616665333964222c2270715f616c676f726974686d223a224d4c2d4453412d3635222c2270715f63616e6f6e6963616c697a6174696f6e223a224a4353222c2270715f7075626b65795f726566223a226469643a7765623a6b6579732e7071736166652e696f236d6c64736136352d32303236222c22726563697069656e74223a226469643a7765623a73656e696f7264656c692e636f6d3a70617965653a6d61696e222c22726574656e74696f6e5f6d65746164617461223a7b22706f6c696379223a22484b4d412d4361703631352d377972222c22726574656e74696f6e5f756e74696c223a22323033332d30352d30315430303a30303a30302e3030305a227d7d",
      "jcs_base64url": "eyJhZ2VudF9pZCI6ImRpZDp3ZWI6YWdlbnRzLmV4YW1wbGUuY29tOmFnZW50LXRjNCIsImFtb3VudCI6Ijg4MDAwLjAwIiwiY3VycmVuY3kiOiJIS0QiLCJpc3N1ZWRfYXQiOiIyMDI2LTA1LTAxVDAwOjAwOjAwLjAwMFoiLCJub25jZSI6ImVmMmQxMjdkZTM3Yjk0MmJhYWQwNjE0NWU1NGIwYzYxOWExZjIyMzI3YjJlYmJjZmJlYzc4ZjU1NjRhZmUzOWQiLCJwcV9hbGdvcml0aG0iOiJNTC1EU0EtNjUiLCJwcV9jYW5vbmljYWxpemF0aW9uIjoiSkNTIiwicHFfcHVia2V5X3JlZiI6ImRpZDp3ZWI6a2V5cy5wcXNhZmUuaW8jbWxkc2E2NS0yMDI2IiwicmVjaXBpZW50IjoiZGlkOndlYjpzZW5pb3JkZWxpLmNvbTpwYXllZTptYWluIiwicmV0ZW50aW9uX21ldGFkYXRhIjp7InBvbGljeSI6IkhLTUEtQ2FwNjE1LTd5ciIsInJldGVudGlvbl91bnRpbCI6IjIwMzMtMDUtMDFUMDA6MDA6MDAuMDAwWiJ9fQ",
      "jcs_byte_length": 454,
      "fingerprint_hex": "1d1962db2abcb6dcd29e5a011884b580c916e5015c8d2fab77e691208fdc54a0",
      "ecdsa_sig_der_hex": "30440220589213b52fc62c99ddab63401ea1cc49f455e7454a0000134a98138efd0f127a022010ad7e27a12963a9a40930699bc6583ac58b42ccdbede3855670b5270de24ed1",
      "ecdsa_sig_der_base64url": "MEQCIFiSE7UvxiyZ3atjQB6hzEn0VedFSgAAE0qYE479DxJ6AiAQrX4noSljqaQJMGmbxlg6xYtCzNvt44VWcLUnDeJO0Q",
      "ecdsa_sig_byte_length": 70,
      "ecdsa_verify": true,
      "mldsa_sig_base64url": "DmKBwrCLoYCa_ipioVU5Jvt6lmbr5YzrCjRQQ1_ZxQtar7r6KtY-TdhWl0QDPhIem34RaplLE0e57V7v_dWmLccFKwnmMS-9CWbh6y5hz68HZeFX85jkS_5we96H0IaB3AuNxEvUox_KfIxS4NWNxbh9XjKwIdnyzDx5FipZYBJfRIGNIXzcWpOSQ-s-yFdX5wLBeqZj27ZlxIUEEoTIciv8xZ_KMVq9hcWb6z7_ZWxDxykORIwBL0L2cTpuA6a9p-fPYPW4A3SRsTbkABIvf5d78PM_OZ-mMVz3ZyC4afyEDdFnPOaXWhZwJy5Uf1ULmYNlaEfeOpu8WSYUu6aqrwToBZ3_N-YmWLrQIIhUSMDZPCzaJzwWNeDoeJuXI55KjikJKhGDTfnoHTev1kCSUtoxMDYdXvO_kFCaDOp8Ijn4fzwfxndhh-XKd4ggCcr8UPrNM3Nt_JINhEQXuuLTTFc_QaQ5iA399QxZLhmir4I5eLG4vvvsKaOmNT8iFjFKqVRDNM5Omu5hzoLvbVwwF0RqPSgctS0L14mcKK5-jhm019MlK5vWweZgevUu7IIcjhbFl60S5ZnlUbTfLDwS5gW-ZFso5PYKcHYdB0E9tZKZLLJvsy3X4AOJEUxzx6uPVvr5xjn76eYgFv0Lx6YMWZHpgJ93Ff0miBaMPMpv5q-oFnKgM3HClYy60BEkjU4dZhHtKoAbDBSeH8TF64ZqzUzJxBpvxuoAb8yvquutoMq007mwuEDJ_veqjLTnl7Ai_d-fFizNbiqXlmU4kFZ4bRjX1e9lJXkRjP8EWgKAPmBei2Qhi_17CteT7uZ2y3lad-5q70WB-IBe7uWx3Ms6P7_2p2G46cgBcUEZtAQ0BK15lBhifEMefArLjgWE65j9JRly8sEDjtJ8jjZ2zojqdeJnIZHO2TK1jI44TG3BpgEgrJ-X-wPINgRfm1q1kAIxFhUkcPfVbtf7i4AZfHfj5eOq7t7YIoJuAB6hlDPyuZC4noiYZU1ZFqU8plm84RNHdT13ACeqCYb_xpZKE4D9TeHgiwFPw-kwygQw_Z4880htVa_gZunv_JU1T9c9C8e9-1C6XpGzA1NXnNqvQabSgpjWlWLg2t0J00xza-kXjvidTlVef2ltf6HLcQE_q8TUsD8-4IDvWGbsew6LRJifdcHGjJp96Q53670KxCuSyyrt53fBoFSLgQ97aGIDzXuIZQ68Jc5gTxU8WqlaDKz_dxq3h-Gwa7_fJE0TqcTV5hb7pja25mhB3b_0qTHMKMHeeMiIAljCG2YF5SBL2gi3JGvfgmvXUhukdRFXjn3cDsHZYa59g8tnEH7WU0VJPFh0PasP4sQ2tb4aotxRalktVwW2a5vqPKRWkqrXRtCfL3M0ai9SxfPoBERAkpd0nkdY2D-d0XTc_aBw50RZqWveIFU1P-2OJsZKqGrRvMeaIzXNAkaA5w2hEf_TaOAMrHii8qLHhggm5KbHLlKMQg2QyFBPZef_BLpp6IGUh02etRp9d21DZTWUjUuBKjIlp0p-tmhGNeAhrRgHsBqRY4a0AduJfmq0dPSyP8kl8VYXHPgFuuP2ZHXRsUKeXRqyGHGC4AQ-xim39uKHu4EW82OXVEPeh1KyRH2CDWe54v3olWl6LcCsb0FsuIZqRI09VyNHkfle6tqAk5_3ih0MEZbtn4-wnRZ8_iVzLd1eqYoPTMu9HK7mIrMp-RC65Wq7BteyZH90-CygyV-l0E85VPDyxQd5VPr3Z9c2v289D7kBO1GhNodiHqaiu_kttEYTV9nj1SM5wuYj8zxTHJ6368GUvYt3-O9k6YVUFif_UH-ntnln1_47n-U6sx8_p_194yjqI37ssI1SFQvnMzBMSnBVd_ygPctK_5YtPMqrO3ajuYQ-0lN9cTturRkQpVERUFMta3vbS_ShtYUhhH2charFNSdFn5E1Nqfz3U7EwuNRjwMmj7ruf779MJ6sG9IRRypwobgjJMJH_5Xy9IEUPtPyTjznuXPB1-cZ8lvtjcPKUsKfxOALOsltjJXijThqPS7XI2jsnnldpYpxsyNdmwuZSIb4DowWp2dAGcMjWcvEHdHPBGCED6fx3ooPf6qQvpHb5_RxAWv-givdz2euBf-CIeB1LLJqba0EU22g8hGiR5qSeVt_s_Ks2wvHtccvoLS5pcH944vCrF5yMZCO2lk-xF0qggDWJRtJoQEt6ZtV3JuZjSPKISGWOPcpg69odY1vPZ7pvZBSOotz3fwOwkQTbQH-1qIzapQoJkka6SMV7Cw7QU-NsW5FZkFZFsWAIgksZp-CifMUPvqGOR3Apm-9d1TFFFurwed2nKsg0APVBCmNzwVfURQLxpm50Pr0aAL0DULwEwRcb98CcXKJmeaDULa7_1lqSAPxle0kyGghVBeQJ118vv-RWHPU-xsBHFfRS329vr7w3EOT-M8nYjwNq_5ljGsA8oVyzxA1YtXiIGLC-4I3LoMAZ7OuExpuyzWTMA_GZQ0Ci0hYIYe0a06HUoxK4efJpqAWVM38NQbQ4WPeL7dN77TgWVLjUBBavuKDAO5yAAjgRC9QKjhUkdAf1FzDrxo9J-cvVQ6KU6gCyUgba44sdlDVB9lMUsR2JJ016mR26ZQutGeiUu-LmNIY3oSnIK5izNiBnUuSkuzXnDQOd1xj_ev-UNKYOYM2W6VABtsYg3nBMrdkspkVx9KWrRJYy4XFXaMqXumvmhwXfvhnc-jiSe8lU0Du0SWwXnMR-3Jvi6BEWLkQ2S6ddIg5rM7_OozwABGqr2xpSY6GYxYliORzxEVbYDLroBIUrSaEzESmEg25XN2u4PJSSpHmyB1y5q2KZB-0YEyoOz2dO6OpX0IToJf16puhVc_btofWhZePMZP2HOy5LlKHt9ci2L2C2j3hEV3G9Maxn2LoHum8zpKvKWzasboF1YnqAGDLKJvXD43H8snu5ejta939UyxbK_qpmbDvHy26e-_Un6Qk1RlqmakQte23vCrSvFwkldnn9zPw9sckDiOSid2ycE7EhpL9y8jV9ms-g6Qt0nGhfCr_-k6f8HxN9fwqJpukuNgvAVMV-iTZU9hZfk3Txo8f9AwYNxgFQee8hRoWetzscxcNmFUJY-JZsuSs3KqOD8Iv2fS2G0C60NhXapL6raXmeVquHRyFkNUjLxKedT6FPLf1QjdI6hlvGMYY6UZXpTby3m4axwc5Jm_OgvdPhwo_g_iHNrgaqndX9eev2fzd4cwdNQ76bq_lO9hytnKHw8l6WbZUIIedYN-OK53TQy7IMdrR4R845AfLVvH-mBsF6RK7gTPMLDysGho1zF-fpbwvo8zPpqknml7_AdS9nhJzJH2oEfP0MLTS6OcTK0lOMTpr6wNX7lbegRvlBDBtC4jNniyH_CHVhZmxSo6QpV59WGABRyySoCLJbd9XtUZcUxhFjAhrXQQyAI2Sl3rHbl3FgSTb0BX-nzitvkAf4Z1s524rx6oOft6jR_XBzjK1ODpWC-lHTTlJHk0osS4Z8TrSSJjwz_xMwYuZaxmOSJNOQXDqQDU3VzdqMUBeSrSacLdPR4FS2XaeS-KFYNeF_VlQ3kLRBaZDbjeWuhLEgaRxDFSLSFjYuOr5XddKsSrVHbUkBW_1W-3zhEoQMHjScJHLACRK5ZNkhbyWCQsrLnAEJpmDSNj3umNZL2DgTgKo41gICDgjq7u1MunWcvtijjSDrQtHUxkFbdnFTk1X3S5BwzSdfW_U1VkjvtEWpvgiMLs5cB0AcQL2SXVkQnA0yo5nUdM0fQzRCJhHsShEkd0li_J-TbiQGVZb_FgYgQzYufCN-ZGaU1a4F3zRajQ_zWhzJrHWs6G5Ty-303MngWhjzr_WahZQdea2AsjGTJMM9_pjt8k6X6XrWAf_sRP6lKHJsE5-mJoZjZcxvq05pB2VwpPXJU-nplBwoHVboYZ-XHJ2ZPFG6PVGevWTEow7Qf_hAOOX6DONQ1Fm4SW6c_Kpi7PbZhA8JuZZcH0KQfjMBVURSdF7KNh3YFwwehHAkz_8EyLuoTmb3gLa8OtP1mk9xYHoh7pO2MjpI6N6HLGMHHY8JYVRFdc58ki-XKL6GAtfJM5BymSJprDiNlMSw6udIw5oB9egwBUWbG9MjzRTWjtV0-8kU_FQHsdIvhUJO0caKTmvRWJLOscJ53Wykmmlma_sSb7OE3lPHSfGUiT42PkXmJPhggqFRmpOmALP5e_e5V12eRml3Q-5CAkgCKdfzvcNHbUrY_pVWa_EiUwmOaTTZPT_QpjaDyHwPrL7E7C3oxTyUFqKXGb3fxC_O9QJQyBNwuCMT_K67pJGbjUCP0iKn9DY5w4vsBYcJWuNtfwlJjo9UlRZZG-44e3wmdRbcqXFyQAAAAAAAAAAAAAAAAAAAAAACAsSHyEm",
      "mldsa_sig_first32_hex": "0e6281c2b08ba1809afe2a62a1553926fb7a9666ebe58ceb0a3450435fd9c50b",
      "mldsa_verify": true,
      "dual_signed_envelope": {
        "agent_id": "did:web:agents.example.com:agent-tc4",
        "amount": "88000.00",
        "currency": "HKD",
        "issued_at": "2026-05-01T00:00:00.000Z",
        "nonce": "ef2d127de37b942baad06145e54b0c619a1f22327b2ebbcfbec78f5564afe39d",
        "pq_algorithm": "ML-DSA-65",
        "pq_canonicalization": "JCS",
        "pq_pubkey_ref": "did:web:keys.pqsafe.io#mldsa65-2026",
        "recipient": "did:web:seniordeli.com:payee:main",
        "retention_metadata": {
          "policy": "HKMA-Cap615-7yr",
          "retention_until": "2033-05-01T00:00:00.000Z"
        },
        "signature": {
          "alg": "ap2-ecdsa-p256+ap2-mldsa65",
          "ecdsa": "MEQCIFiSE7UvxiyZ3atjQB6hzEn0VedFSgAAE0qYE479DxJ6AiAQrX4noSljqaQJMGmbxlg6xYtCzNvt44VWcLUnDeJO0Q",
          "mldsa": "DmKBwrCLoYCa_ipioVU5Jvt6lmbr5YzrCjRQQ1_ZxQtar7r6KtY-TdhWl0QDPhIem34RaplLE0e57V7v_dWmLccFKwnmMS-9CWbh6y5hz68HZeFX85jkS_5we96H0IaB3AuNxEvUox_KfIxS4NWNxbh9XjKwIdnyzDx5FipZYBJfRIGNIXzcWpOSQ-s-yFdX5wLBeqZj27ZlxIUEEoTIciv8xZ_KMVq9hcWb6z7_ZWxDxykORIwBL0L2cTpuA6a9p-fPYPW4A3SRsTbkABIvf5d78PM_OZ-mMVz3ZyC4afyEDdFnPOaXWhZwJy5Uf1ULmYNlaEfeOpu8WSYUu6aqrwToBZ3_N-YmWLrQIIhUSMDZPCzaJzwWNeDoeJuXI55KjikJKhGDTfnoHTev1kCSUtoxMDYdXvO_kFCaDOp8Ijn4fzwfxndhh-XKd4ggCcr8UPrNM3Nt_JINhEQXuuLTTFc_QaQ5iA399QxZLhmir4I5eLG4vvvsKaOmNT8iFjFKqVRDNM5Omu5hzoLvbVwwF0RqPSgctS0L14mcKK5-jhm019MlK5vWweZgevUu7IIcjhbFl60S5ZnlUbTfLDwS5gW-ZFso5PYKcHYdB0E9tZKZLLJvsy3X4AOJEUxzx6uPVvr5xjn76eYgFv0Lx6YMWZHpgJ93Ff0miBaMPMpv5q-oFnKgM3HClYy60BEkjU4dZhHtKoAbDBSeH8TF64ZqzUzJxBpvxuoAb8yvquutoMq007mwuEDJ_veqjLTnl7Ai_d-fFizNbiqXlmU4kFZ4bRjX1e9lJXkRjP8EWgKAPmBei2Qhi_17CteT7uZ2y3lad-5q70WB-IBe7uWx3Ms6P7_2p2G46cgBcUEZtAQ0BK15lBhifEMefArLjgWE65j9JRly8sEDjtJ8jjZ2zojqdeJnIZHO2TK1jI44TG3BpgEgrJ-X-wPINgRfm1q1kAIxFhUkcPfVbtf7i4AZfHfj5eOq7t7YIoJuAB6hlDPyuZC4noiYZU1ZFqU8plm84RNHdT13ACeqCYb_xpZKE4D9TeHgiwFPw-kwygQw_Z4880htVa_gZunv_JU1T9c9C8e9-1C6XpGzA1NXnNqvQabSgpjWlWLg2t0J00xza-kXjvidTlVef2ltf6HLcQE_q8TUsD8-4IDvWGbsew6LRJifdcHGjJp96Q53670KxCuSyyrt53fBoFSLgQ97aGIDzXuIZQ68Jc5gTxU8WqlaDKz_dxq3h-Gwa7_fJE0TqcTV5hb7pja25mhB3b_0qTHMKMHeeMiIAljCG2YF5SBL2gi3JGvfgmvXUhukdRFXjn3cDsHZYa59g8tnEH7WU0VJPFh0PasP4sQ2tb4aotxRalktVwW2a5vqPKRWkqrXRtCfL3M0ai9SxfPoBERAkpd0nkdY2D-d0XTc_aBw50RZqWveIFU1P-2OJsZKqGrRvMeaIzXNAkaA5w2hEf_TaOAMrHii8qLHhggm5KbHLlKMQg2QyFBPZef_BLpp6IGUh02etRp9d21DZTWUjUuBKjIlp0p-tmhGNeAhrRgHsBqRY4a0AduJfmq0dPSyP8kl8VYXHPgFuuP2ZHXRsUKeXRqyGHGC4AQ-xim39uKHu4EW82OXVEPeh1KyRH2CDWe54v3olWl6LcCsb0FsuIZqRI09VyNHkfle6tqAk5_3ih0MEZbtn4-wnRZ8_iVzLd1eqYoPTMu9HK7mIrMp-RC65Wq7BteyZH90-CygyV-l0E85VPDyxQd5VPr3Z9c2v289D7kBO1GhNodiHqaiu_kttEYTV9nj1SM5wuYj8zxTHJ6368GUvYt3-O9k6YVUFif_UH-ntnln1_47n-U6sx8_p_194yjqI37ssI1SFQvnMzBMSnBVd_ygPctK_5YtPMqrO3ajuYQ-0lN9cTturRkQpVERUFMta3vbS_ShtYUhhH2charFNSdFn5E1Nqfz3U7EwuNRjwMmj7ruf779MJ6sG9IRRypwobgjJMJH_5Xy9IEUPtPyTjznuXPB1-cZ8lvtjcPKUsKfxOALOsltjJXijThqPS7XI2jsnnldpYpxsyNdmwuZSIb4DowWp2dAGcMjWcvEHdHPBGCED6fx3ooPf6qQvpHb5_RxAWv-givdz2euBf-CIeB1LLJqba0EU22g8hGiR5qSeVt_s_Ks2wvHtccvoLS5pcH944vCrF5yMZCO2lk-xF0qggDWJRtJoQEt6ZtV3JuZjSPKISGWOPcpg69odY1vPZ7pvZBSOotz3fwOwkQTbQH-1qIzapQoJkka6SMV7Cw7QU-NsW5FZkFZFsWAIgksZp-CifMUPvqGOR3Apm-9d1TFFFurwed2nKsg0APVBCmNzwVfURQLxpm50Pr0aAL0DULwEwRcb98CcXKJmeaDULa7_1lqSAPxle0kyGghVBeQJ118vv-RWHPU-xsBHFfRS329vr7w3EOT-M8nYjwNq_5ljGsA8oVyzxA1YtXiIGLC-4I3LoMAZ7OuExpuyzWTMA_GZQ0Ci0hYIYe0a06HUoxK4efJpqAWVM38NQbQ4WPeL7dN77TgWVLjUBBavuKDAO5yAAjgRC9QKjhUkdAf1FzDrxo9J-cvVQ6KU6gCyUgba44sdlDVB9lMUsR2JJ016mR26ZQutGeiUu-LmNIY3oSnIK5izNiBnUuSkuzXnDQOd1xj_ev-UNKYOYM2W6VABtsYg3nBMrdkspkVx9KWrRJYy4XFXaMqXumvmhwXfvhnc-jiSe8lU0Du0SWwXnMR-3Jvi6BEWLkQ2S6ddIg5rM7_OozwABGqr2xpSY6GYxYliORzxEVbYDLroBIUrSaEzESmEg25XN2u4PJSSpHmyB1y5q2KZB-0YEyoOz2dO6OpX0IToJf16puhVc_btofWhZePMZP2HOy5LlKHt9ci2L2C2j3hEV3G9Maxn2LoHum8zpKvKWzasboF1YnqAGDLKJvXD43H8snu5ejta939UyxbK_qpmbDvHy26e-_Un6Qk1RlqmakQte23vCrSvFwkldnn9zPw9sckDiOSid2ycE7EhpL9y8jV9ms-g6Qt0nGhfCr_-k6f8HxN9fwqJpukuNgvAVMV-iTZU9hZfk3Txo8f9AwYNxgFQee8hRoWetzscxcNmFUJY-JZsuSs3KqOD8Iv2fS2G0C60NhXapL6raXmeVquHRyFkNUjLxKedT6FPLf1QjdI6hlvGMYY6UZXpTby3m4axwc5Jm_OgvdPhwo_g_iHNrgaqndX9eev2fzd4cwdNQ76bq_lO9hytnKHw8l6WbZUIIedYN-OK53TQy7IMdrR4R845AfLVvH-mBsF6RK7gTPMLDysGho1zF-fpbwvo8zPpqknml7_AdS9nhJzJH2oEfP0MLTS6OcTK0lOMTpr6wNX7lbegRvlBDBtC4jNniyH_CHVhZmxSo6QpV59WGABRyySoCLJbd9XtUZcUxhFjAhrXQQyAI2Sl3rHbl3FgSTb0BX-nzitvkAf4Z1s524rx6oOft6jR_XBzjK1ODpWC-lHTTlJHk0osS4Z8TrSSJjwz_xMwYuZaxmOSJNOQXDqQDU3VzdqMUBeSrSacLdPR4FS2XaeS-KFYNeF_VlQ3kLRBaZDbjeWuhLEgaRxDFSLSFjYuOr5XddKsSrVHbUkBW_1W-3zhEoQMHjScJHLACRK5ZNkhbyWCQsrLnAEJpmDSNj3umNZL2DgTgKo41gICDgjq7u1MunWcvtijjSDrQtHUxkFbdnFTk1X3S5BwzSdfW_U1VkjvtEWpvgiMLs5cB0AcQL2SXVkQnA0yo5nUdM0fQzRCJhHsShEkd0li_J-TbiQGVZb_FgYgQzYufCN-ZGaU1a4F3zRajQ_zWhzJrHWs6G5Ty-303MngWhjzr_WahZQdea2AsjGTJMM9_pjt8k6X6XrWAf_sRP6lKHJsE5-mJoZjZcxvq05pB2VwpPXJU-nplBwoHVboYZ-XHJ2ZPFG6PVGevWTEow7Qf_hAOOX6DONQ1Fm4SW6c_Kpi7PbZhA8JuZZcH0KQfjMBVURSdF7KNh3YFwwehHAkz_8EyLuoTmb3gLa8OtP1mk9xYHoh7pO2MjpI6N6HLGMHHY8JYVRFdc58ki-XKL6GAtfJM5BymSJprDiNlMSw6udIw5oB9egwBUWbG9MjzRTWjtV0-8kU_FQHsdIvhUJO0caKTmvRWJLOscJ53Wykmmlma_sSb7OE3lPHSfGUiT42PkXmJPhggqFRmpOmALP5e_e5V12eRml3Q-5CAkgCKdfzvcNHbUrY_pVWa_EiUwmOaTTZPT_QpjaDyHwPrL7E7C3oxTyUFqKXGb3fxC_O9QJQyBNwuCMT_K67pJGbjUCP0iKn9DY5w4vsBYcJWuNtfwlJjo9UlRZZG-44e3wmdRbcqXFyQAAAAAAAAAAAAAAAAAAAAAACAsSHyEm",
          "pubkey_fingerprint": "f9b83d417d6d92b9"
        }
      }
    },
    {
      "kind": "positive",
      "id": "tc5-tamper-detection",
      "description": "TC1 sigs vs +1 cent tampered mandate — MUST fail",
      "original_fingerprint_hex": "8617d93f851c2a1fb72f49c90a27e874666fd0c98b4992809d55eec6ef1da539",
      "tampered_mandate_input": {
        "agent_id": "did:web:agents.example.com:agent-tc1",
        "amount": "125.01",
        "currency": "HKD",
        "nonce": "6b86b273ff34fce19d6b804eff5a3f57",
        "recipient": "did:web:seniordeli.com:payee:main"
      },
      "tampered_jcs_hex": "7b226167656e745f6964223a226469643a7765623a6167656e74732e6578616d706c652e636f6d3a6167656e742d746331222c22616d6f756e74223a223132352e3031222c2263757272656e6379223a22484b44222c226e6f6e6365223a223662383662323733666633346663653139643662383034656666356133663537222c22726563697069656e74223a226469643a7765623a73656e696f7264656c692e636f6d3a70617965653a6d61696e227d",
      "tampered_fingerprint_hex": "0053523a4ab73cf4c314e8b5a8204c99b50ad3c0b8a783669ee4e1ebf0b6363e",
      "fingerprints_match": false,
      "ecdsa_verify_with_original_sig": false,
      "mldsa_verify_with_original_sig": false
    }
  ]
}