IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 区块链 -> 【技术科普】万纳链密码学方案介绍——零知识证明 -> 正文阅读

[区块链]【技术科普】万纳链密码学方案介绍——零知识证明

万纳链(Venachain)是万向区块链基于PlatONE底层开源平台,针对企业级客户和开发者在数字化转型过程中的实际需求,推出的自主可控的高性能联盟链,已通过中国电子标准化研究院的功能与性能双项测试。依托万向区块链丰富的技术与生态资源,万纳链具备出色的关联技术耦合能力,通过与隐私计算、物联网、知识图谱等技术融合,引航分布式认知技术的创新和实践。同时,结合团队出色的机制设计能力,万纳链旨在为实体经济的数字化转型打造可信数字底座,为企业级客户和开发者提供隐私安全、性能优越、一键部署、功能丰富的综合解决方案。

我们将通过一系列技术科普文章,帮助大家了解万纳链的技术特点和操作方法。今天我们一起来了解万纳链的密码学方案。

本文作者:万向区块链通用架构技术部

零知识证明这个概念最早由Goldwasser、Micali和Rackoff提出的,其表达核心思想是证明者要向验证者证明一个statement的正确性,与此同时不泄露任何额外的信息。它具有如下三个重要的性质:

- 完备性completeness
- 合理性soundness
- 零知识性zero-knowledge

近几年零知识证明被广泛应用到区块链中,如可验证的外包计算、匿名证书、范围证明、隐私密码学货币等需要平衡隐私性和机密性的应用场景,它已经在隐私性和可扩展性方面成为了一个非常重要的工具。在实际应用中客户端下载和验证交易频繁,因此要部署高效实用的零知识证明协议,需要该协议的证明足够小,验证足够高效(small proof size and fast verification)。随着密码学技术的不断发展,零知识证明的落地应用层出不穷。这些优秀的项目对零知识证明的技术的实用性进行了一系列的探索:

基于UTXO模型的零知识证明协议?:

零知识证明在密码学货币上具有广泛的应用,Zcash是zk-SNARKs的首个应用,它利用Groth16协议,实现了基于UTXO模型下交易双方地址和金额的完全隐藏,并且能够生成较短的高效的可验证的证明。但是该技术需要采用CRS来构造zk-SNARK,即需要引入可信第三方来生成一组公共参考串,与此同时也引入了对可信第三方的信任问题,尽管可以利用MPC等技术实现分布式协作生成CRS,但是依然无法完全解决CRS的引入带来的信任问题。

基于账户模型的零知识证明协议:

当前的区块链隐私支付系统,如Zcash和Monero等,均是基于UTXO模型,而Zether协议能实现基于账户模型的隐私支付,且能实现交易双方和交易金额的匿名化,该协议以智能合约的形式,方便地部署到基于账户模型的区块链系统中,而不需要修改底层链的逻辑。此外AZTEC协议采用Plonk零知识证明协议,实现了基于Ethereum账户模型下的隐私交易。?

去CRS的零知识证明协议 :

目前在区块链领域中,大部分高效可验证的零知识证明协议都依赖于CRS。因此去CRS的零知识证明协议也是各个项目重点关注的话题。围绕该热议话题的主要分为两个方向:(1)探索完全去CRS的零知识证明协议,如bulletproof利用向量内积的方法实现了范围的证明,zk-STARK实现无需可信公共参数设置的证明,但是这两个零知识证明协议的证明较大,验证时间也较长。这也是完全去CRS的零知识证明协议不能被广泛应用的一个重要原因。

CRS的可更新的零知识证明协议:

基于CRS的零知识证明协议会引入第三方信任问题,完全去CRS的零知识证明协议产生的证明较大,验证不够高效,因此有项目尝试探索介于两者直接的一种零知识证明协议,即基于可更新的结构化参考串(updatable structured reference string)的协议,如Sonic、Plonk它们支持SRS的可更新操作,这两个协议本质上仍然是需要可信的参数设置,但是通过MPC等技术一定程度上提高了用户对CRS安全性的信心。目前AZTEC利用Plonk协议实现了Ethereum上的隐私交易。

可扩展性的零知识证明协议:

zk Rollup是一种新型的Layer2扩容方案,将链上的数据放到layer2解决。用户发送的交易,由relayer收集,生成零知识证明将发布交易后的新状态跟之前的状态捆绑在一起,保证用户状态变更的正确性。链上只存储用户状态的merkle树根,通过智能合约验证零知识证明的正确性。

基于具体应用需求的零知识证明协议:

在实际中还有许多基于具体应用需求,并利用上述提及的零知识证明技术设计出的协议,如在存储场景下,filecoin的时空证明(proof of spacetime)和复制证明(proof of replication)是利用zk-SNARKs的Succinct特性的典型案例;在公平交易的场景下,zkPoD实现零信任的去中心化公平交易系统,在不可信双方之间进行交易,确保买卖双方间交易的公平性。

目前零知识证明技术在实际应用中非常成熟,在我们的联盟链Venachain中,我们会根据实际的场景需求,采用或设计对应的零知识证明协议来满足我们的场景需求。


更多信息,欢迎查看万纳链Github:

https://github.com/Venachain

  区块链 最新文章
盘点具备盈利潜力的几大加密板块,以及潜在
阅读笔记|让区块空间成为商品,打造Web3云
区块链1.0-比特币的数据结构
Team Finance被黑分析|黑客自建Token“瞒天
区块链≠绿色?波卡或成 Web3“生态环保”标
期货从入门到高深之手动交易系列D1课
以太坊基础---区块验证
进入以太坊合并的五个数字
经典同态加密算法Paillier解读 - 原理、实现
IPFS/Filecoin学习知识科普(四)
上一篇文章      下一篇文章      查看所有文章
加:2022-01-08 14:03:06  更:2022-01-08 14:05:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 1:48:51-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码