nimue
1.0.0
nimue是一個相信隨機甲骨文的震撼庫。它促進了多輪公共硬幣協議的寫作。它提供了一種通用API,用於生成驗證者的隨機硬幣和諺語隨機性。該項目具有以下板條箱:
nimue
:核心庫,具有group
和ark-ff
的綁定。該板條箱通過Rust的通用Digest
API和A(更細粒度,更有效的)置換函數API提供了壓縮功能和基於海綿的哈希功能的哈希基鹼基的基本特徵nimue-pow
:通過磨床 /工作證明計算的挑戰的擴展;nimue-poseidon
:Poseidon Hash函數(在Arkworks)中實施的工作。nimue-anemoi
:正在進行Anemoi哈希函數的工作(在Arkworks中);自動成績單生成。 Nimue配有用於序列化/應對代數元件的電池,例如ARKWORKS和ZKCRYPTO中的現場/組元素。用戶可以通過擴展特徵構建其頂部。
支持自定義哈希功能。為了構建安全的Fiat-Shamir變換,最小要求是支持字節編碼的某些集合的置換函數。它可以是代表u8
復古兼容。我們有一個滿足digest::Digest
特徵的任何哈希函數的舊接口,例如sha2
和blake2
。
預處理。在遞歸的蛇形中,保持安全性的同時最大程度地減少了哈希命令的數量至關重要。我們提供用於預處理成績單(即,菲亞特 - 薩米爾變換狀態)的工具,以實現這一目標。
私人隨機性產生。至關重要的是,避免為同一眾議員提供兩個不同的挑戰。我們會盡力避免這種情況,通過將諺語隨機性與協議成績單聯繫起來,而無需確定性證明。
查看文檔和一些examples/
。