Encypher text fingerprint
A C2PA soft binding for text. The fingerprint is a SHA-256 digest of the visible text. Anyone can compute it, and a manifest repository can use it to find the C2PA Manifest for an exact copy of signed text.
Algorithm facts
- Algorithm identifier (
alg) com.encypher.text.fingerprint.1- Soft binding type
- Fingerprint
- Media type
- Text
- Owner
- Encypher Corporation
- Contact
- c2pa@encypher.com
How to compute it
- Take the visible text as signed, before any Encypher marks or the embedded C2PA Manifest are added.
- Normalize it to Unicode Normalization Form C (NFC).
- Encode it as UTF-8.
- Compute the SHA-256 digest.
In the c2pa.soft-binding assertion, the value is the 32-byte digest, stored as a CBOR byte string in a single block whose scope is empty, meaning the whole text.
Test vectors
| Input | SHA-256 hex |
|---|---|
hello world | b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9 |
café (precomposed U+00E9, or e followed by combining U+0301; NFC makes them identical) | 850f7dc43910ff890f8879c0ed26fe697c93a067ad93a7d50f466a7028a9bf4e |
Matching
The fingerprint matches exact copies only. Any change to the visible text, including one space, a punctuation mark, or a change of quote style, produces a different value. For excerpts and copies whose embedded manifest was removed, Encypher-signed text also carries the Encypher text watermark, com.encypher.text.watermark.1.
Questions
Questions about this algorithm: c2pa@encypher.com.