自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 LDC——Locally Decodable Code

1. 纠错码 纠错码(error correcting code),在传输过程中发生错误后能在收端自行发现或纠正的码。 仅用来发现错误的码一般常称为检错码。检错码与其他手段结合使用,可以纠错。 为使一种码具有检错或纠错能力,须对原码字增加多余的码元,以扩大码字之间的差别 ,即把原码字按某种规则变成...

2020-02-22 20:23:52

阅读数 38

评论数 0

原创 Private Information Retrieval私有信息检索

私有信息检索是一个重要而又实际的问题,在军事、商业等领域有重要应用。 私有信息检索(Private Information Retrieval, PIR)的问题描述是: 服务器Bob拥有一个数据库,其中有n个数据d1,d2,…,dnd_1,d_2,…,d_nd1​,d2​,…,dn​,客户端Ali...

2020-02-20 20:20:00

阅读数 43

评论数 0

原创 2020 BIU Winter School on Cryptography学习笔记1

本次冬令营中,重点研讨私有信息检索、秘密共享和有条件的秘密公开,共识机制以及安全多方计算等课题。 OT:oblivious transfer不经意传输。 Obfuscation:混淆 私有信息检索 Private Information Retrieval (PIR) is a protoc...

2020-02-20 11:00:57

阅读数 53

评论数 0

原创 Direct Anonymous Attestation (DAA)

2016年论文《Universally Composable Direct Anonymous Attestation》中提到了Direct Anonymous Attestation (DAA)。 1. DAA基本概念 【以下内容摘自[1] 博客Direct Anonymous Attestat...

2020-01-30 20:29:39

阅读数 142

评论数 0

原创 vector commitment

1. 2015年论文《Composable & Modular Anonymous Credentials:Definitions and Practical Constructions》 2015年论文《Composable & Modular Anonymous Credent...

2020-01-29 22:33:07

阅读数 29

评论数 0

原创 AHPs——algebraic holographic proofs

1. Interactive proofs interactive proofs correspond to languages decidable in polynomial space: IP[poly(n)] = PSPACE。 1.1 L.Babai1985年论文 在L. Babai的19...

2020-01-22 17:03:53

阅读数 53

评论数 0

原创 秘密共享之CHURP: Dynamic-Committee Proactive Secret Sharing

2019年论文《CHURP: Dynamic-Committee Proactive Secret Sharing》及相应的会议论文报告《Proactive Secret Sharing in Dynamic Environments》,具体的代码实现见: https://github.com/C...

2020-01-18 20:54:15

阅读数 142

评论数 0

原创 双变量多项式之Computational Verifiable Secret Sharing Revisited

2011年论文《Computational Verifiable Secret Sharing Revisited》,该论文中,提出了通过构建对称双变量多项式【即f(x,y)=f(y,x)f(x,y)=f(y,x)f(x,y)=f(y,x)】来实现秘密共享的算法实现。 参考资料: [1] 2...

2020-01-18 20:53:31

阅读数 59

评论数 0

原创 密码学中的双变量多项式Bivariate polynomials

当前,零知识证明算法多采用单变量多项式。什么样的双变量多项式可用于密码学应用中呢? 1. 双变量多项式 基于以上单变量多项式,引申到双变量多项式: 2. 双变量多项式分类 f(x,y) mod Nf(x,y)\ mod\ Nf(x,y) mod N...

2020-01-18 20:51:23

阅读数 40

评论数 0

原创 Sigma protocol用于one-out-of-many证明

2014年论文《One-out-of-Many Proofs: Or How to Leak a Secret and Spend a Coin》中有提及One out of N commitments containing 0的证明,具体的代码实现可见:https://github.com/3f...

2020-01-18 20:43:12

阅读数 42

评论数 0

原创 Some Recent SNARKs

2019论文:待细看 1)Spartan: Efficient and general-purpose zkSNARKs without trusted setup Srinath Setty (2019/550) Almost completely eliminates trusted set...

2020-01-13 22:06:20

阅读数 45

评论数 0

原创 向量的Hadamard product VS Inner product

1. 定义 向量的Hadmard product表示为: a⃗⊙b⃗=(a0b0,a1b1,a2b2,…,anbn)\vec{a} \odot \vec{b}=(a_0b_0,a_1b_1,a_2b_2,…,a_nb_n)a⊙b=(a0​b0​,a1​b1​,a2​b2​,…,an​bn​) 向量...

2020-01-13 22:01:04

阅读数 26

评论数 0

原创 FFT rust代码实现

目前的实现主要有: 1)Halo中(https://github.com/ebfull/halo/blob/master/src/util.rs)在utils.rs中对两条新的曲线做了实现; 2)Zexe中,设计了单独的ff-fft模块,对pairing曲线(如Jubjub/mnt6等)做了实现;...

2020-01-01 17:54:58

阅读数 38

评论数 0

原创 pedersen commitment combination证明

1. Zexe中的pedersen commitment Zexe中基于的是pairing based曲线。 Zexe中的pedersen commitment 为Pedersen CRH,当做Com(a1∗m1,a1∗r1)=a1∗Com(m1,r1)Com(a_1*m_1,a_1*r_1)=a...

2020-01-01 17:52:43

阅读数 36

评论数 0

原创 hyraxZK/bccgp

https://github.com/hyraxZK/hyraxZK中https://github.com/hyraxZK/bccgp有基于以下两个论文的实现: BCCGP-sqrt, fromJ.Bootle, A.Cerulli, P.Chaidos, J.Groth, andC.Petit...

2019-12-30 22:50:32

阅读数 11

评论数 0

原创 C++数论库

1.Ntl NTL is a high-performance, portable C++ library providing data structures and algorithms for manipulating signed, arbitrary length integers, an...

2019-12-30 22:47:29

阅读数 28

评论数 0

转载 Vector Commitment, Zero-knowledge Set, Zero-knowledge Accumulator等区别

What’s the difference among Vector Commitment, Zero-knowledge Set, Zero-knowledge Accumulator, and Zero-knowledge Elementary Database? Vector commitm...

2019-12-26 22:50:05

阅读数 24

评论数 0

原创 Utreexo:比特币UTXO merkle tree proof以节约节点存储空间

1. 背景介绍(本小节内容摘自区块链数据存储的“密码学黑科技”) 中本聪在设计比特币的时候,通过区块大小和出块时间将比特币的吞吐量限制在一个非常低的水平(1MB/10min),一个重要的考虑就是存储空间的限制。 即便如此,比特币从创始块以来所有交易和区块构成的区块链历史已经超过 200GB,且还在...

2019-12-26 22:41:52

阅读数 23

评论数 0

原创 可验证延迟函数(VDF)

可验证延迟函数(VDF): VDF 这个概念最初由斯坦福大学密码学教授 Dan Boneh 等人在2018年论文《Verifiable Delay Functions》中给出。该篇文章于 2018 年发表在密码学顶级会议之一的 CRYPTO 上。 目前的VDF算法复杂度较高,离实用仍有差距。 ht...

2019-12-16 16:24:48

阅读数 66

评论数 0

原创 RSA2048基础知识

1. RSA家族 在数学上,RSA numbers是一系列大的semiprimes(半素数,仅能分解为两个素数因子。)截止到2019年11月,下列表中的20个(总共54个)RSA数值已被成功分解,分别是:RSA-100到RSA-230的16个数,以及从RSA-768、RSA-704、RSA-640...

2019-12-16 11:59:21

阅读数 56

评论数 0

原创 rust程序性能分析with Flame Graphs

https://github.com/cambrian/accumulator/blob/master/flamegraph.sh中有利用火焰图进行性能分析。 dtrace在linux 4.15系统版本上编译安装存在Redefinition of `struct in6_addr’ 问题。 参考资...

2019-12-12 16:57:42

阅读数 26

评论数 0

原创 Proof (of knowledge) of exponentiation

Proof of exponentiation时基于adaptive root assumption(充分必要条件)的。 特别适合当xxx很大时,计算r=x mod l, urr=x\ mod\ l,\ u^rr=x mod l, ur...

2019-12-09 12:27:41

阅读数 49

评论数 0

原创 Pointcheval Sanders签名

2016年论文《Short Randomizable Signatures》提出了Pointcheval Sanders签名,该签名与 Camenisch-Lysyanskaya (CL) signature相比,签名长度更短——只有2个elments,与message length无关。构建基础...

2019-12-06 15:32:06

阅读数 14

评论数 0

原创 Sanitizable Signature可净化签名

Sanitizable Signature:可净化签名。基于属性的机密(Attribute-Based Encryption, ABE)为模糊身份加密(Fuzzy Identity Based Encryption, FIBE)的一个重要应用,最早源于基于身份的加密。可保证数据机密性,并为数据提供...

2019-12-04 17:17:16

阅读数 42

评论数 0

原创 区块链账户模型及隐私保护

1. 区块链账户模型 2. 支持隐私保护的UTXO模型区块链系统 参考资料: [1] 2019年论文《BlockMaze: An Efficient Privacy-Preserving Account-Model Blockchain Based on zk-SNARKs 》 ...

2019-12-04 14:39:39

阅读数 27

评论数 0

原创 Coconut:可selective disclosure credentials的门限发行签名机制

Coconut:可selective disclosure credentials的门限发行签名机制,允许多个声明聚合为一个身份说明。(allows partial claims to be aggregated into a single credential.) 最终的credential的大...

2019-12-02 15:33:38

阅读数 99

评论数 0

原创 Ker(A)——矩阵kernel

根据维基百科定义,kernel在线性代数和泛函分析中的定义为: 线性映射L:V↦WL:V\mapsto WL:V↦W,V和W为两个向量空间,满足L(v⃗)=0⃗L(\vec{v})=\vec{0}L(v)=0的所有元素v⃗\vec{v}v组成的空间,称为kernel或nullspace。 数学表示...

2019-11-28 14:49:36

阅读数 161

评论数 0

原创 Zero-knowledge inner product argument(IPA)

接之前博客qesa——零知识证明,需要trusted setup。 1. Inner product argument (IPA) 在protocol 3.9基础上,以k=2k=2k=2为例(kkk取2值可最小化交互信息量),[A]w=[t][A]w=[t][A]w=[t]可转化为以点积(inne...

2019-11-27 15:30:31

阅读数 42

评论数 0

原创 实现zero-knowledge零知识的方式

1. 如何实现zerok-knowledge? 根据2019年论文《Efficient zero-knowledge arguments in the discrete log setting,revisited (Full version)》 1.1.2节内容: 参考资料: [1] 2019年...

2019-11-19 11:29:45

阅读数 26

评论数 0

原创 Polynomial Commitments代码实现【2】——lovesh/kzg-poly-commit

与博客Polynomial Commitments代码实现【1】——scipr-lab/poly-commit(含不同曲线性能对比)中类似,lovesh/kzg-poly-commit也是基于论文《Polynomial Commitments∗》的代码实现。 参考资料: [1] 论文《Polyno...

2019-11-18 10:52:58

阅读数 23

评论数 0

原创 Vector Commitments代码实现

RSA-based Vector Commitment:当前的主要实现有https://github.com/cambrian/accumulator和https://github.com/dignifiedquire/rust-accumulators merkle tree based vec...

2019-11-15 12:34:31

阅读数 82

评论数 0

原创 BLAKE2 hash函数

BLAKE2为密码学hash函数,其运算速度比MD5、SHA-1、SHA-2和SHA-3都快,而安全性与最新的SHA-3标准算法相当。 BLAKE2对应的标准为RFC7693——The BLAKE2 Cryptographic Hash and Message Authentication Cod...

2019-11-13 15:38:39

阅读数 109

评论数 0

原创 geppetri:Pinocchio-based adaptive zk-SNARK and distributed computation

2017年论文《Pinocchio-Based Adaptive zk-SNARKs and Secure/Correct Adaptive Function Evaluation》。 代码见: https://github.com/meilof/geppetri 参考资料: [1] 2017年论...

2019-11-13 10:42:19

阅读数 22

评论数 0

原创 pairing-friendly曲线家族

1. 目前主流的pairing-friendly曲线家族 以太坊eip-1962提案中关于曲线计算及曲线选择中指出,目前主流的pairing-friendly曲线家族有: BLS12 BN MNT4 MNT6 Cocks-Pinch (Tate pairing) 2. 主要应用选型 ZKPro...

2019-11-12 14:40:39

阅读数 23

评论数 0

原创 ZEXE分布式隐私计算

参考2019年2月发表的论文《Zexe: Enabling Decentralized Private Computation》,具体实现见代码库。 1. zexe中的algebra代数运算 zexe\algebra\src\curves中,对bls12_377、bls12_381、edwards...

2019-11-07 17:28:49

阅读数 35

评论数 0

原创 rust基础库及实用小工具

1. rayon rayon为Rust实现的多线程并发库。 2. std::borrow::Cow pub enum Cow<'a, B> where B: 'a + ToOwned + ?Sized, { Borrowed(&�...

2019-11-07 11:50:17

阅读数 42

评论数 0

原创 水银承诺mercurial commitment

1. 陷门承诺(trapdoor commitment) 陷门承诺方案(trapdoor commitment)是一种特殊的承诺方案,该概念由Brassard等人于1988年首先提出。陷门承诺方案一个特有的性质是它允许拥有陷门信息的人可以以不同的方式打开承诺,即在给定陷门信息的条件下,陷门承诺方案...

2019-11-06 16:49:00

阅读数 37

评论数 0

原创 密码学累加器cryptographic accumulator

密码学累加器最早是由 Josh Benaloh 和 Michael de Mare 提出的,原始论文《One-way accumulators: A decentralized alternative to digital sinatures (extended abstract) 》[1] 于 ...

2019-11-06 15:58:16

阅读数 167

评论数 2

原创 可截取签名CES(content extraction signatures)

截取签名CES(content extraction signatures)的概念最早由Steinfeld等人于2002年通过论文《Content Extraction Signatures∗》提出,不同于传统的数字签名方案,在不与原始签名人交互的情况下,可截取签名,允许签名持有人根据需要从已签的...

2019-11-06 12:44:10

阅读数 37

评论数 0

原创 Polynomial Commitments代码实现【1】——scipr-lab/poly-commit(含不同曲线性能对比)

本文主要解析基于论文《Polynomial Commitments∗》在代码库中的实现细节。 另关注下,Halo中polynomial commitment的实现细节。 参考资料: [1] 论文《Polynomial Commitments∗》 [2] 代码库:https://github.com...

2019-10-30 17:04:35

阅读数 86

评论数 0

提示
确定要删除当前文章?
取消 删除