Expand description
§Implementation of CAWG identity assertion specification
Implementation of the core of the Creator Assertions Working Group identity assertion draft specification.
§Contributions and feedback
We welcome contributions to this project. For information on contributing, providing feedback, and about ongoing work, see Contributing.
§Known limitations
This is very early days for this crate. Many things are subject to change at this point.
§Requirements
The toolkit requires Rust version 1.82.0 or newer. When a newer version of Rust becomes required, a new minor (0.x.0) version of this crate will be released.
§Supported platforms
The toolkit has been tested on the following operating systems:
-
Windows
- Only the MSVC build chain is supported on Windows. We would welcome a PR to enable GNU build chain support on Windows.
-
MacOS (Intel and Apple silicon)
-
Ubuntu Linux on x86 and ARM v8 (aarch64)
§License
The cawg-identity
crate is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
Some components and dependent crates are licensed under different terms; please check the license terms for each crate and component for details.
Modules§
- builder
- This module contains the APIs you will use to build a C2PA Manifest that contains one or more CAWG identity assertions.
- claim_
aggregation - Contains implementations of
CredentialHolder
andSignatureVerifier
for the identity claim aggregation credential type described as specified in §8.1, Identity claims aggregation. - x509
- Contains implementations of
CredentialHolder
andSignatureVerifier
for the X.509 certificates credential type described as specified in §8.2, X.509 certificates and COSE signatures.
Structs§
- Identity
Assertion - This struct represents the raw content of the identity assertion.
- Signer
Payload - A set of referenced assertions and other related data, known overall as the signer payload. This binding SHOULD generally be construed as authorization of or participation in the creation of the statements described by those assertions and corresponding portions of the C2PA asset in which they appear.
Enums§
- Validation
Error - Describes the ways in which a CAWG identity assertion can fail validation as described in §7. Validating the identity assertion.
Traits§
- Signature
Verifier - A
Verifier
can read one or more kinds of signature from an identity assertion, assess the validity of the signature, and return information about the corresponding credential subject.