密码学基础:PedernCommitment
介绍
Pederson承诺是密码学中承诺的⼀种,1992年被TorbenPrydsPedern在“Non-InteractiveandInformation-Theoretic
SecureVerifiableSecretSharing”⼀⽂中提出。
⽬前PedernCommitment主要搭配椭圆曲线密码学使⽤(当然也可以结合指数运算)。具有基于离散对数困难问题的强绑定性和同态
加法特性的密⽂形式。
以结合椭圆曲线为例来说明,Pedern承诺核⼼公式表达:
C=r*G+v*H
上述公式中,C为⽣成的承诺值,G、H为特定椭圆曲线上的⽣成点,r代表着盲因⼦(Blindingfactor),v则代表着原始信息。由于
G、H为特定椭圆曲线上的⽣成点,所以r*G、v*H可以看作是相应曲线上的公钥(r、v同理也可以视为私钥)。
承诺⽣成和揭露过程如图:
由于引⼊了随机盲因⼦r,对于同⼀个v会就能产⽣不同的承诺c,即便敏感隐私数据v不变,最终的承诺c也会随着r的变化⽽变化,因
此提供了信息论安全的隐匿性。这⼀点类似ECDSA,Schnorr签名采⽤的⼿法。
Pedern承诺加法同态
Pedern承诺还具有加法同态特性。所谓加法同态,即两数相加和的密⽂等于两数的密⽂相加!假设明⽂a,b,加密函数e,满⾜:
c=a+b
e(a)+e(b)=e(c)
Pedern承诺结合椭圆曲线天然地具备了加法同态的特性,这是椭圆曲线点运算的性质决定的。
假设有两个要承诺的信息v1,v2,随机数r1,r2,⽣成对应的两个承诺:
C(v1)=r1∗G+v1∗H
C(v2)=r2∗G+v2∗H
则v1+v2承诺结果:
C(v1+v2)=(r1+r2)G+(v1+v2)∗H
(r1G+v1∗H)+(r2∗G+v2∗H)
C(v1)+C(v2)
Pedern承诺还可以扩展构造v1∗v2等复杂的情况,来证明新产⽣的承诺满⾜与原始承诺之间存在指定的约束关系。
⼩结
Pedern承诺产⽣⽅式,有些类似加密,签名之类的算法。但是,作为密码学承诺重在“承诺”,并不提供解密算法,即如果只有
r,⽆法有效地计算出隐私数据v。
⽬前Pedern承诺在区块链中的应⽤主要在隐私币中,如zcash,MimbleWimble,Monero等。
本文发布于:2022-11-27 13:47:06,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/90/31350.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |