理解零知识证明算法之 Zk-stark

谈到ZKP算法,大伙可能听过一些,比如zk-snark,zk-stark, bulletproof, aztec, plonk等等。今天,咱就给大伙聊聊这一对“表面兄弟”,zk-stark和zk-snark算法的异同之处。

  • juneocean
  • 发布于 2019-12-18
  • 阅读 ( 5690 )
  • ( 9 )

零知识证明-R1CS导入导出

玩过zkSNARK的小伙伴都知道,R1CS是目前描述电路的一种语言。目前实现zkSNARK电路的框架有libsnark(C++),bellman (Rust),ZoKrates(DSL),Circom(js)等等。有的时候,需要将一个框架中生成的电路,导入其他框架。网络上研究了一下,发现两个有意思的项目。

  • Star Li
  • 发布于 2019-12-06
  • 阅读 ( 8946 )
  • ( 20 )

零知识证明-Mixer(混币)应用分析

交易隐私是零知识证明的一个应用方向。除了通过公链或者侧链实现交易的发送方/接收方以及金额隐藏外,Mixer,江湖人称“混币”,是在已有公链上实现交易的发送方的隐藏(匿名)。Mixer,就是将一些账户的资金“混”在一起,由公开的第三方代替发送方发起转账。这个第三方,被称为Mixer或者Relayer。本文分析以太坊上的三个Mixer项目的设计和性能。

  • Star Li
  • 发布于 2019-11-14
  • 阅读 ( 9118 )
  • ( 20 )

零知识证明-Semaphore源代码导读

Semaphore是一个用零知识证明(zk-SNARK)技术的开源项目。Semaphore实现的是基于零知识证明的身份和信号。

  • Star Li
  • 发布于 2019-11-08
  • 阅读 ( 8746 )
  • ( 22 )

零知识证明学习资料汇总

本文收集了关于零知识证明的一些学习资料(包括科普文章,论文,开源仓库及相关学习网站等),并对这些资源进行了整理分析,希望能对大家有所帮助。

探索零知识证明系列4 - 亚瑟王的「随机」挑战

本文继续长篇大论零知识证明背后的机制原理,希望帮助大家理解这一类「现代密码学工具」的大致轮廓。本文约8000字,少量数学公式。

路印3.0:使用零知识证明提升去中心化的交易性能

Loopring,路印,一直专注在高性能的去中心化交易(DEX)协议。路印协议的目标是想实现以太坊上基于订单撮合的去中心化的交易协议。从2017年,路印从“环路撮合”的最初设计,经过了1.0,2.0以及3.0的三个大的版本的协议升级。1.0/2.0,相对来说,受限以太坊本身性能的限制,交易流程复杂,体验和中心化交易所相比,有较大的差距。路印协议3.0,是一种大胆的设计和尝试,通过零知识证明技术(ZKP),兼顾去中心化和交易性能。

  • Star Li
  • 发布于 2019-10-22
  • 阅读 ( 9150 )
  • ( 20 )

利用 AZTEC 协议进行匿名隐私转账

这次去 Devcon5 有机会跟 AZTEC 的开发者聊天,后续讨论中也厘清了我自己使用 AZTEC 的一些疑问,搞清楚后也分享本篇文章来介绍此协议。

Ethereum 区块链是一个透明的平台,虽然不知道特定地址的拥有人是谁,但是发生在区块链上的交易都可以看得一清二楚。而在日常使用时交易的保密性还是非常重要的。

  • Yuren Ju
  • 发布于 2019-10-18
  • 阅读 ( 7142 )
  • ( 35 )

零知识证明 - 一种新型的Merkle树(Shrubs)

这几天在日本大阪正在举办Devcon 5。议题中有个topic吸引我的眼球:

Shrubs - A New Gas Efficient Privacy Protocol

  • Star Li
  • 发布于 2019-10-15
  • 阅读 ( 8015 )
  • ( 22 )

零知识证明-ethsnarks源代码导读

之前有一篇文章分析了 libsnark 源代码,ethsnarks在libsnark的基础上,实现了以太坊上与zkSNARK相关的智能合约和电路。

  • Star Li
  • 发布于 2019-09-29
  • 阅读 ( 7570 )
  • ( 20 )

探索零知识证明系列3 - 寻找「知识」

导言:有些理论非常有趣,零知识证明便是其中之一,摸索了许久,想写点什么,与大家一起讨论。本文是『探索零知识证明』系列的第三篇。前两遍是:(一)初始「零知识」与「证明」(二)理解「模拟」, 本文全文约 8,000 字,少量数学公式。

零知识证明 - libsnark源代码分析

libsnark源代码,建议想深入零知识证明的小伙伴都读一读。Bellman库主要围绕Groth16算法,libsnark给出了SNARK相关算法的全貌,各种Relation,Language,Proof System。为了更好的生成

  • Star Li
  • 发布于 2019-08-15
  • 阅读 ( 14317 )
  • ( 21 )

探索零知识证明系列2 - 从「模拟」理解零知识证明

I know that I know nothing —— 苏格拉底

相信很多人都听说过零知识证明,但是只有极少数人听说过模拟,然而模拟是理解零知识的关键。

何谓“零知识”,何谓“证明”?

要解释「零知识证明」,我们需要先解释「证明」,然后解释什么是「知识」,最后再解释什么是「零知识」。

  • EthFans
  • 发布于 2019-08-01
  • 阅读 ( 1486 )

探索零知识证明系列1 - 初识「零知识」与「证明」

我认为区块链很难称为一个“技术”。它更像是一个领域,包罗万象。或者形而上地说,区块链更像一个有机体,融合了各种不同的理论技术。

零知识证明是构建信任的重要技术,也是区块链这个有机体中不可缺少的一环。

零知识证明 - 深入理解ZoKrates

2018年 Jacob Eberhardt和Stefan Tai两位德国柏林工业大学博士生,提出了链下计算/链上验证的处理框架,并提供了在以太坊上的整个框架的工具链。链下计算/链上验证的思想很早就有,但是能提供比较完善的工具链的实属难得。目前ZoKrates使用zk-SNARK算法实现零知识证明。

  • Star Li
  • 发布于 2019-07-24
  • 阅读 ( 11767 )
  • ( 21 )

零知识证明 - Coda SNARK挑战(Stage2)

零知识证明 - Coda SNARK挑战(Stage2)

  • Star Li
  • 发布于 2019-07-17
  • 阅读 ( 2211 )

zkPoD:区块链,零知识证明与形式化验证,实现无中介、零信任的公平交易

这篇文章解释利用ZKP(零知识证明)与区块链来实现去中介的交易协议的原理,讲讲我们是怎么把这个理论变成实用的代码的,这是一篇概述,希望了解更多的朋友请关注后续。

零知识证明 - bellman源码分析

bellman是Zcash团队用Rust语言开发的一个zk-SNARK软件库,实现了Groth16算法。

  • Star Li
  • 发布于 2019-07-14
  • 阅读 ( 6142 )
  • ( 4 )

I2P(The Invisible Internet Project) 是什么

30

  • Ashton
  • 发布于 2019-07-09
  • 阅读 ( 5767 )
  • ( 5 )