零知识证明(Zero-Knowledge Proof)
零知识证明(Zero Knowledge Proof)指的是,证明的人可以向验证的人,在不透露任何有用信息的情况下,使得验证者相信该结论是对的。
三种零知识证明技术:zk-SNARKs, Zk-STARKs和 BulletProofs
1、Bulletproofs 和 Zk-STARKs 不需要可信设置,zk-SNARKs则需要可信设置;
zk-STARKs:通过证明者与验证者之间的交互来执行,以一种有效的数学方法,使得验证者通过验证每一个步骤,最终确信证明者确实知道某个信息或者拥有某种权益。其特点是:证明快、验证快,但证明体积大。
SNARK指无需双方交互,证明人单方出具即可,不需要反复在双方之间传递信息。其特点是:证明慢、验证快,证明体积小。
2、证明速度对比:zk-STARKs > zk-SNARKs > Bulletproofs
3、文件大小:zk-SNARKs < Bulletproofs <Zk-STARKs
3种技术的对比图,可以明晰3个技术的区别:

零知识证明(Zero-Knowledge Proof)的更多相关文章
- 一个数独引发的惨案:零知识证明(Zero-Knowledge Proof)
导言:原文的作者是著名的Ghost和Spectre 这两个协议的创始团队的领队Aviv Zohar.原文作者说他的这篇原文又是引用了以下这两篇学术论文: How to Explain Zero Kno ...
- 详细讲解:零知识证明 之 zk-SNARK 开篇
作者:林冠宏 / 指尖下的幽灵 博客:http://www.cnblogs.com/linguanh/ 掘金:https://juejin.im/user/587f0dfe128fe100570ce2 ...
- 详细讲解:零知识证明 之 ZCash 完整的匿名交易流程
作者:林冠宏 / 指尖下的幽灵 博客:http://www.cnblogs.com/linguanh/ 掘金:https://juejin.im/user/587f0dfe128fe100570ce2 ...
- 神经网络可以拟合任意函数的视觉证明A visual proof that neural nets can compute any function
One of the most striking facts about neural networks is that they can compute any function at all. T ...
- GJM : 使用浏览器的计算力,对抗密码破解 [转载]
感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...
- zkSNARK 零知识验证
参考文献 ZCash7篇,有社区翻译版,但还是推荐看原汁原味的 https://z.cash/blog/snark-explain.html Vitalik3篇,小天才作者我就不介绍了,这三篇 ...
- 深入理解Plasma(二)Plasma 细节
这一系列文章将围绕以太坊的二层扩容框架,介绍其基本运行原理,具体操作细节,安全性讨论以及未来研究方向等.本篇文章主要对 Plasma 一些关键操作的细节进行剖析. 在上一篇文章中我们已经理解了什么是 ...
- golang--性能测试和分析
前言 测试分为:压力测试.负载测试.性能测试,功能测试等等,其中在开发过程中开发人员经常要写一些test case unit 自己的模块进行功能测试测和性能.在分析出模块的性能瓶颈后开发人员就需要针对 ...
- Filecoin:一种去中心化的存储网络(一)
开始初步了解学习Filecoin,如下是看白皮书的内容整理. 参考: 白皮书中文版 http://chainx.org/paper/index/index/id/13.html 白皮书英文版 http ...
- 共识网络BFT-SMaRt:理论与实践
目录 BFT-SMaRt 简介 分布式计数器服务 功能描述 组网配置 启动节点 常见问题 计数服务 容错服务 BFT-SMaRt 理论 BFT-SMR 典型模式 SMR 状态机复制 VP-Consen ...
随机推荐
- java8 利用 ConcurrentHashMap list根据 某个属性 去重
//自定义方法private static <T> Predicate<T> distinctByKey(Function<? super T, Object> k ...
- Java学习笔记-11
StringBuffer:是字符串缓冲区,是一个容器.长度是固定的,可以直接添加多个数据类型.最终回通过toString方法变成字符串. 容器具备的特点:存储,删除,获取,修改 存储操作: Strin ...
- my tools in windows
Q-Dir the Quad Explorerhttp://www.q-dir.com/ NetSpeed Monitor - Network Speed Monitor for Windows 10 ...
- 2022-11-22学习内容-Client端代码编写-数据删除
1.Client端代码编写 1.1activity_content_write.xml <?xml version="1.0" encoding="utf-8&qu ...
- gitee部署
1.安装git 下载地址:https://npm.taobao.org/mirrors/git-for-windows/,拉到最下方选最新版,点击进去后选择对应windows版本的exe文件,默认安装 ...
- C# 在GridView里面使用a标签下载文件(图片)
不能使用ajax进行下载文件的操作,具体原因需百度 前端页面,在GridView里面使用模板列,模板列放a标签 <cimesui:cimesGridView ID="GridView1 ...
- Java8函数式编程(A)
将行为作为数据传递 函数编程的最直接的表现,莫过于将函数作为数据自由传递,结合泛型推导能力,使代码表达能力获得飞一般的提升. Java8怎么支持函数式编程? 主要有三个核心概念: 函数接口(Funct ...
- https原理(四)双向实践(java客户端+tcp代理)
本文采用客户端与服务端共用一个密钥对 1 将https代理服务器(三)实践中的mkcert p12分解为一个公钥一个私钥 mac@macdeMacBook mkcert % openssl pkcs1 ...
- mysql 创建账号并授权
1.mysql查看所有账号信息 mysql> select user,host from mysql.user; 2.创建账号 mysql> creat user 'glasssix' I ...
- vuex状态管理器
vuex核心概念 // vuex中一共有五个状态 State Getter Mutation Action Module import Vue from 'vue' import Vuex from ...