merlin 1.0.3 merlin: ^1.0.3 copied to clipboard
Merlin is a STROBE-based transcript construction for zero-knowledge proofs.
Merlin #
Merlin is a STROBE-based transcript construction for zero-knowledge proofs. It automates the Fiat-Shamir transform, so that by using Merlin, non-interactive protocols can be implemented as if they were interactive.
Usage #
// Simple Transcript
final transcript = Transcript('test protocol');
transcript.appendMessage(utf8.encode('some label'), utf8.encode('some data'));
final cBytes = transcript.extractBytes(utf8.encode('challenge'), 32);
// cHex = d5a21972d0d5fe320c0d263fac7fffb8145aa640af6e9bca177c03c7efcf0615
final cHex = hex.encode(cBytes);
print(cHex);
Donate #
If you like this repo and found it useful, please consider donating ❤️!! Donation goes towards my tuition fees and helps me maintain merlin and other repos. Thank you so much!!