以太坊matter-labs bellman代码解析

Posted mutourend

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以太坊matter-labs bellman代码解析相关的知识,希望对你有一定的参考价值。

1. 引言

前序博客有:

以太坊matter-labs bellman代码仓库为:

  • https://github.com/matter-labs/bellman

ZCash开发的https://github.com/zkcrypto/bellman 主要针对的是BLS12-381曲线,以太坊matter-labs在该基础上,对以太坊中所使用的BN256曲线进行了优化,并在crates.io中发布为了bellman_ce

目前以太坊matter-labs bellman中提供了2个稳定可用于生产的features,且相应的API会保持不变。这两都是基于Groth16 proof system implementation实现的:

  • multicore:默认启用。用于在PC上运行,且环境支持包含threading的full std
  • singlecore:主要用于WASM系统,其中non-compatible external crates已移除,以及所有的多线程实现也已移除。

为了实现对WASM的兼容,在实现GM17和SONIC方案时,也需要做相应的考虑。

  • gm17:目前未实现,计划在SONIC实现之后启动。
  • sonic:目前完成90%。原来实现的helped协议实现了与Groth16类似的API接口。同时兼容现有的circuits。unhelped版本目前未完成。但是所有的cryptographical primitives已完成并测试通过。当前优先级最高。

参考资料

[1] Edcon2019_material
[2] EDCON Workshop record (youtube): Intro to bellman: Practical zkSNARKs constructing for Ethereum

以上是关于以太坊matter-labs bellman代码解析的主要内容,如果未能解决你的问题,请参考以下文章

以太坊 根据keystore文件与密码解出私钥

以太坊又迎来重要升级,1600万ETH会不会解锁砸盘?这个赛道热起来了…

以太坊交易:为啥交易后余额没有变化?

一步一步教你使用以太坊钱包

区块链以太坊(Ethereum )高级进阶实战视频教程

以太坊/BSC 区块链交易数据