Verification
To prove data provenance to a third-party Verifier, the Prover provides the following information:
Session Headersigned by theNotaryopeningto the plaintext commitmentTLS-specific datawhich uniquely identifies the serveridentityof the server
The Verifier performs the following verification steps:
- verifies that the
openingcorresponds to the commitment in theSession Header - verifies that the
TLS-specific datacorresponds to the commitment in theSession Header - verifies the
identityof the server againstTLS-specific data
Next, the Verifier parses the opening with an application-specific parser (e.g. HTTP or JSON) to get the final output. Since the Prover is allowed to selectively disclose the data, that data which was not disclosed by the Prover will appear to the Verifier as redacted.
Below is an example of a verification output for an HTTP 1.1 request and response. Note that since the Prover chose not to disclose some sensitive information like their HTTP session token and address, that information will be withheld from the Verifier and will appear to him as redacted (in red).