{ "corpus": "c2pa-sdk-identity", "extension": "c2pa-binding", "time": "2026-11-09T12:00:00Z", "identityAnchors": [ "MIIBszCCAWWgAwIBAgIBATAFBgMrZXAwYTEqMCgGA1UECgwhV0FJIEMyUEEgU0RLIGlkZW50aXR5IHRlc3QgY29ycHVzMTMwMQYDVQQDDCpXQUkgQzJQQSBTREsgaWRlbnRpdHkgdGVzdCBpZGVudGl0eSBhbmNob3IwHhcNMjYwMTAxMDAwMDAwWhcNNDYwMTAxMDAwMDAwWjBhMSowKAYDVQQKDCFXQUkgQzJQQSBTREsgaWRlbnRpdHkgdGVzdCBjb3JwdXMxMzAxBgNVBAMMKldBSSBDMlBBIFNESyBpZGVudGl0eSB0ZXN0IGlkZW50aXR5IGFuY2hvcjAqMAUGAytlcAMhAA4UYeypR+sKv6NUxl2hoqOj8+IrMktV3mijslhZvOUEo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU+zjNzLD/mZc1vI4Mr0xVl6TX9f0wBQYDK2VwA0EA3A0ewJtCiMGauMic6x1KCqzZRTH+UTgrsEm5s/dSN2jCBQIfOb81fJLEk2GqqqG7H94i7ZAlXkF89vTFUHV3CQ==" ], "claimAnchors": [ "MIIBrTCCAV+gAwIBAgIBATAFBgMrZXAwXjEqMCgGA1UECgwhV0FJIEMyUEEgU0RLIGlkZW50aXR5IHRlc3QgY29ycHVzMTAwLgYDVQQDDCdXQUkgQzJQQSBTREsgaWRlbnRpdHkgdGVzdCBjbGFpbSBhbmNob3IwHhcNMjYwMTAxMDAwMDAwWhcNNDYwMTAxMDAwMDAwWjBeMSowKAYDVQQKDCFXQUkgQzJQQSBTREsgaWRlbnRpdHkgdGVzdCBjb3JwdXMxMDAuBgNVBAMMJ1dBSSBDMlBBIFNESyBpZGVudGl0eSB0ZXN0IGNsYWltIGFuY2hvcjAqMAUGAytlcAMhACCsnLlYHchVtANrzo31rLzlOFExvAfZB7QnnyX7Y3sPo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUOthf3SEqqujijtwDo/GHiqDjk6IwBQYDK2VwA0EAQEUQFcpRRXIG5KHJDKdUuoTY3nQonHQQ/64M0HUQ4fAZKddYWjInl4tkbPEKpYhWg0nLAmuY21cuFT9sb0LNBw==" ], "sdk": { "crate": "c2pa", "version": "0.92.1" }, "vectors": [ { "name": "creator", "about": "the creator's identity assertion over the hard binding, the actions and the energy binding, with a role", "asset": "creator.png", "sha256": "73a6fd60e9c9a18da57556c8cbb1ef643f58f2de5287c44a015b50bcfa51cae5", "referenced": "created", "expect": { "outcome": "accept", "identities": [ { "label": "cawg.identity", "roles": [ "cawg.creator" ], "actor": "121cf0645d64b31fdb706044b8100ee7da71afa08ce9fab0f22b468bf3fbe7bf", "referenced": [ "c2pa.hash.data", "c2pa.actions.v2", "science.transaction.wai.energy.reconstruction" ], "anchor": "51cf69c75adfaa2acfc33a5bd4c0cef3fecb45c216999994b129988a906fb5a7", "signed": "schema" } ] }, "sdk": { "state": "Trusted", "failure": [] } }, { "name": "creator-and-publisher", "about": "two identity assertions, the creator's and the publisher's", "asset": "creator-and-publisher.png", "sha256": "563c9e24ae856649a41ae42e2ed5359037fd6ca120041b5ff3d6bbe6f01643a6", "referenced": "created", "expect": { "outcome": "accept", "identities": [ { "label": "cawg.identity", "roles": [ "cawg.creator" ], "actor": "121cf0645d64b31fdb706044b8100ee7da71afa08ce9fab0f22b468bf3fbe7bf", "referenced": [ "c2pa.hash.data", "c2pa.actions.v2" ], "anchor": "51cf69c75adfaa2acfc33a5bd4c0cef3fecb45c216999994b129988a906fb5a7", "signed": "schema" }, { "label": "cawg.identity__1", "roles": [ "cawg.publisher" ], "actor": "23276bf1b08898f1079d0aa5ad93f1c51cf6431d1f6d3280c71cca9949ff1415", "referenced": [ "c2pa.hash.data", "science.transaction.wai.energy.reconstruction" ], "anchor": "51cf69c75adfaa2acfc33a5bd4c0cef3fecb45c216999994b129988a906fb5a7", "signed": "schema" } ] }, "sdk": { "state": "Trusted", "failure": [] } }, { "name": "hard-binding-alone", "about": "an identity assertion over the hard binding alone, with no role", "asset": "hard-binding-alone.png", "sha256": "a139205dd6a33d81d4ab8fa333a84a0e1fa0293c3ea13bde783a39eb2bd267be", "referenced": "created", "expect": { "outcome": "accept", "identities": [ { "label": "cawg.identity", "roles": [], "actor": "121cf0645d64b31fdb706044b8100ee7da71afa08ce9fab0f22b468bf3fbe7bf", "referenced": [ "c2pa.hash.data" ], "anchor": "51cf69c75adfaa2acfc33a5bd4c0cef3fecb45c216999994b129988a906fb5a7", "signed": "schema" } ] }, "sdk": { "state": "Trusted", "failure": [] } }, { "name": "creator-deterministic", "about": "the creator's identity assertion signed over the payload's core deterministic encoding, which a writer may ask for", "asset": "creator-deterministic.png", "sha256": "08e16d5d73470316e7275b72bd106cfbadafbe168d80f74b76fbf3ddc8bec76f", "referenced": "created", "expect": { "outcome": "accept", "identities": [ { "label": "cawg.identity", "roles": [ "cawg.creator" ], "actor": "121cf0645d64b31fdb706044b8100ee7da71afa08ce9fab0f22b468bf3fbe7bf", "referenced": [ "c2pa.hash.data", "c2pa.actions.v2", "science.transaction.wai.energy.reconstruction" ], "anchor": "51cf69c75adfaa2acfc33a5bd4c0cef3fecb45c216999994b129988a906fb5a7", "signed": "deterministic" } ] }, "sdk": { "state": "Valid", "failure": [ "cawg.x509.signature.mismatch" ] } }, { "name": "sdk-builder-written", "about": "the creator's identity assertion written and signed by the SDK's own identity builder", "asset": "sdk-builder-written.png", "sha256": "b3e57e90a635026e119ac8c03fec0d3b8ef954f7e35a15a9c209b873de82b5eb", "referenced": "created", "expect": { "outcome": "accept", "identities": [ { "label": "cawg.identity", "roles": [ "cawg.creator" ], "actor": "121cf0645d64b31fdb706044b8100ee7da71afa08ce9fab0f22b468bf3fbe7bf", "referenced": [ "c2pa.actions.v2", "c2pa.hash.data" ], "anchor": "51cf69c75adfaa2acfc33a5bd4c0cef3fecb45c216999994b129988a906fb5a7", "signed": "schema" } ] }, "sdk": { "state": "Trusted", "failure": [] } }, { "name": "carried-from-another-manifest", "about": "an identity assertion signed for another manifest of the same content, carried byte for byte into this one", "asset": "carried-from-another-manifest.png", "sha256": "e90af2cc113c05302e40e2038f90d289bc9c3b3f7e745725e28f3d3c8876fb32", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_assertion_mismatch", "c2pa": "cawg.identity.assertion.mismatch" }, "sdk": { "state": "Valid", "failure": [ "cawg.identity.assertion.mismatch", "cawg.identity.assertion.mismatch", "cawg.identity.assertion.mismatch" ] } }, { "name": "hard-binding-missing", "about": "an identity assertion over the actions alone", "asset": "hard-binding-missing.png", "sha256": "d8d0b493acd39e2faa48b512dd7f4a7410758e2985a79400b09e6b00dc02c7a1", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_hard_binding_missing", "c2pa": "cawg.identity.hard_binding_missing" }, "sdk": { "state": "Valid", "failure": [ "cawg.identity.hard_binding_missing" ] } }, { "name": "assertion-twice", "about": "an identity assertion naming the hard binding twice", "asset": "assertion-twice.png", "sha256": "1936a992dc429c08693f33adc90218612e531eb460f00b09d1acc62992b4c250", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_assertion_duplicate", "c2pa": "cawg.identity.assertion.duplicate" }, "sdk": { "state": "Valid", "failure": [ "cawg.identity.assertion.duplicate" ] } }, { "name": "pad-nonzero", "about": "an identity assertion whose pad1 ends in a byte of 1", "asset": "pad-nonzero.png", "sha256": "270671d1b6a7ee495b969c79b07e6828fa05a699adb298067af061393a7bea8e", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_pad_invalid", "c2pa": "cawg.identity.pad.invalid" }, "sdk": { "state": "Valid", "failure": [ "cawg.identity.pad.invalid" ] } }, { "name": "sig-type-unknown", "about": "an identity assertion of another signature type", "asset": "sig-type-unknown.png", "sha256": "0af628b3daa6141c959f9c310af9c100be8bf6540021f592e8317cb7db8242a4", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_sig_type_unknown", "c2pa": "cawg.identity.sig_type.unknown" }, "sdk": { "state": "Valid", "failure": [ "cawg.identity.sig_type.unknown" ] } }, { "name": "pad1-missing", "about": "an identity assertion without pad1, its room filled by pad2", "asset": "pad1-missing.png", "sha256": "6b98c2a9d4d7ee9fa560358df5d79237914502a49fd3dba6b62bf2e51199ecb9", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_malformed", "c2pa": "cawg.identity.cbor.invalid" }, "sdk": { "state": "Invalid", "failure": [ "assertion.required.missing" ] } }, { "name": "algorithm-unsupported", "about": "an identity assertion whose signature names an algorithm this profile does not verify", "asset": "algorithm-unsupported.png", "sha256": "ac9afb9c510b1f8ba48686a23342b4fafd62c34316a5e0199f8646f6a8066498", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_algorithm_unsupported", "c2pa": "cawg.x509.algorithm.unsupported" }, "sdk": { "state": "Valid", "failure": [ "cawg.x509.credential.invalid" ] } }, { "name": "signed-by-another-key", "about": "the creator's certificates over a signature by a key that is not theirs", "asset": "signed-by-another-key.png", "sha256": "94ddc5419137089a90ef9696f065b43594d885e6850ed1f7a8a900fbdbccc4bb", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_signature_mismatch", "c2pa": "cawg.x509.signature.mismatch" }, "sdk": { "state": "Valid", "failure": [ "cawg.x509.signature.mismatch" ] } }, { "name": "signed-third-order", "about": "the creator's signature over the payload's members in a third order, which is neither serialization", "asset": "signed-third-order.png", "sha256": "dd504c657ba8b6ab471534adf41edb0bc6ad242537adb3a1a06b32edd1c5d4c1", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_signature_mismatch", "c2pa": "cawg.x509.signature.mismatch" }, "sdk": { "state": "Valid", "failure": [ "cawg.x509.signature.mismatch" ] } }, { "name": "signed-other-members", "about": "the creator's signature over a payload with another role than the one the assertion holds", "asset": "signed-other-members.png", "sha256": "82adc5fc9bd1b368d49d96522d9a81ac1e5aff0699410311e526aa27668e6e05", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_signature_mismatch", "c2pa": "cawg.x509.signature.mismatch" }, "sdk": { "state": "Valid", "failure": [ "cawg.x509.signature.mismatch" ] } }, { "name": "credential-untrusted", "about": "an actor whose credential is under an anchor the verifier does not hold", "asset": "credential-untrusted.png", "sha256": "56adddf68a98738e506933e1e57d68ac14ed7c7260d9b73e299c1af9b78ca830", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_credential_untrusted", "c2pa": "cawg.x509.credential.untrusted" }, "sdk": { "state": "Valid", "failure": [ "cawg.x509.credential.untrusted" ] } }, { "name": "credential-expired", "about": "an actor whose credential expired before the instant", "asset": "credential-expired.png", "sha256": "fa21de44175bf881b7af2edd16814b326a9f6c500a344d87fdf9be7e3d4255f0", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_credential_expired", "c2pa": "cawg.x509.signature.outside_validity" }, "sdk": { "state": "Valid", "failure": [ "cawg.x509.credential.untrusted", "cawg.x509.signature.outside_validity" ] } }, { "name": "credential-wrong-purpose", "about": "an actor credentialed for claim signing alone", "asset": "credential-wrong-purpose.png", "sha256": "f9901c9b1d71bf8459876062c7c29dab5d0043fb9bca3f856f273d0090c8b2d3", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_credential_invalid", "c2pa": "cawg.x509.credential.untrusted" }, "sdk": { "state": "Trusted", "failure": [] } }, { "name": "gathered-reference", "about": "an identity assertion over an assertion the claim gathered, held to the created assertions", "asset": "gathered-reference.png", "sha256": "32cb948b3ad923640845ddbd610b813ec84588174819dc8c3f3da8103cf6a9d7", "referenced": "created", "expect": { "outcome": "refuse", "reason": "identity_assertion_mismatch", "c2pa": "cawg.identity.assertion.mismatch" }, "sdk": { "state": "Trusted", "failure": [] } }, { "name": "gathered-reference-admitted", "about": "the same manifest, by a verifier that admits the gathered assertions", "asset": "gathered-reference.png", "sha256": "32cb948b3ad923640845ddbd610b813ec84588174819dc8c3f3da8103cf6a9d7", "referenced": "created_or_gathered", "expect": { "outcome": "accept", "identities": [ { "label": "cawg.identity", "roles": [ "cawg.creator" ], "actor": "121cf0645d64b31fdb706044b8100ee7da71afa08ce9fab0f22b468bf3fbe7bf", "referenced": [ "c2pa.hash.data", "science.transaction.wai.test.gathered" ], "anchor": "51cf69c75adfaa2acfc33a5bd4c0cef3fecb45c216999994b129988a906fb5a7", "signed": "schema" } ] }, "sdk": { "state": "Trusted", "failure": [] } } ] }