tari-project / triptych

BSD 3-Clause "New" or "Revised" License
0 stars 3 forks source link

Use Merlin transcripts for component hashing #82

Closed AaronFeickert closed 2 months ago

AaronFeickert commented 2 months ago

For efficiency, standard and parallel parameters and input sets are hashed (using BLAKE3) to avoid unnecessary point compressions and later transcript operations. However, statements are not hashed, so they must be manually included in proof transcripts. This is brittle (as shown by #81) and has a bad code smell.

A straightforward fix is to replace the existing BLAKE3 hashes with Merlin transcripts, and to add this functionality for statements to allow for more robust proof transcript operations.

AaronFeickert commented 2 months ago

Note that there is no need to use transcript composition here. While it could be used, this would lose the efficiency benefits.