mirror of
https://github.com/tlsnotary/authdecode.git
synced 2026-01-08 22:37:57 -05:00
main
AUTHDECODE
This crates implements the AUTHDECODE functionality described in the tlsn repo. It uses the ark-poly-commit crate for proofs that are generic over polynomial commitment schemes.
What is implemented:
- The
R_binaryrelation has a prover and verifier, and unit tests - Selective revelation is implemented and benchmarked. To see the benchmarks, run
cargo test --release -- --nocapture - The skeleton of the
R_decodeprover
What remains to be done:
- Complete the implementation of
R_decode. The protocol is simple, but it seems thatark-poly-commitis missing a definition of scalar multiplication on commitments. This is necessary in order to compute theΔ·com_pterm inR_decode. Fortunately, it exposes addition on the relevant types, so scalar multiplication isn't far off. - Optional: implement the
R_packprotocol to pack plaintext bits into bytes - Use
merlintranscripts to generate challenges. Currently, they're just placeholder values. A secure Fiat-Shamir'ed protocol should be hashing the whole transcript. - Ensure proper hiding for plaintext polynomials. It might already be the case that this works, via the
supported_hiding_boundinPolynomialCommitment::trim.
Description
Languages
Rust
100%