
Эффективная реализация системы доказательств с нулевым разглашением KKW для произвольных колец, предоставляющая доказывающей и проверяющей сторонам линейное время доказательства и 128-битную безопасность.
Эффективная реализация NIZKPoK, описанного в KKW 2018
Reverie — это реализация (доказательство и проверка) NIZKPoK в парадигме MPC-in-the-head, описанного в работе Improved Non-Interactive Zero Knowledge with Applications to Post-Quantum Signatures. Reverie стремится обеспечить конкретную эффективность доказательства (линейное время доказательства с малыми константами) для сложных предикатов. Реализация нацелена на обеспечение 128 бит (классической) безопасности и поддержку произвольных колец, наиболее эффективно Z2 и Z64.
Reverie предоставляет как библиотеку (с упрощённым и потоковым интерфейсами), так и программу CLI для доказательства/проверки утверждений, заданных в формате Bristol, чтобы облегчить эксперименты.
Reverie требует относительно свежий nightly Rust.
С использованием SSE+AESNI
time RUSTFLAGS="-C target-cpu=native -C target-feature=+aes,+ssse3,+sse2" cargo run --release
Или ещё лучше с AVX2+AESNI
time RUSTFLAGS="-C target-cpu=native -C target-feature=+aes,+ssse3,+sse2,+avx2" cargo run --release