1个稳定版本
1.0.0 | 2022年12月1日 |
---|
#9 in #near-protocol
4.5MB
4.5K SLoC
near-mimc
Rust库,用于在NEAR协议智能合约开发中使用MiMC散列函数。
使用场景
此库作为MiMC散列函数的实现被创建,可以在NEAR协议智能合约中运行。
它与circom2示例电路完全兼容(即以完全相同的方式实现)。这允许散列函数在基于snarky.js和circom的zkSNARK方案中使用。
支持的near-sdk版本
near-bigint基于near-sdk 4.0.0构建,并将定期更新以反映near-sdk的更新。以前的near-sdk版本与此库不兼容。
此外,函数接口使用了near-bigint库版本1.0.0中的大整数类型。
如何使用
该库公开了两个不同的散列函数,一个接受两个输入值,另一个接受单个值。
pub fn u256_mimc_sponge(k: U256, inputs: [U256; INPUTS]) -> [U256; OUTPUTS]
pub fn u256_mimc_sponge_single(k: U256, inputs: [U256; 1]) -> [U256; 1]
依赖项
~6MB
~117K SLoC