密码学 | 承诺:常见的承诺方案

本文详细介绍了密码学承诺的概念,包括哈希承诺、Pedersen承诺的特点和构造,以及量子比特承诺和模糊承诺在量子安全领域的应用。重点强调了这些承诺在保护数据隐私和防止欺诈方面的优势。
摘要由CSDN通过智能技术生成

🥑原文:密码学原语如何应用?解析密码学承诺的妙用 - 知乎



1 简介

密码学承诺 涉及 承诺方、验证方 两个参与方,以及以下两个阶段:

  • 承诺阶段:承诺方选择一个敏感数据 v v v,为它计算出相应的承诺 c c c,然后将承诺 c c c 发送给验证方。通过使用承诺 c c c,验证方可以确定承诺方对于尚未解密的敏感数据 v v v 只能有一种的解读方式,即承诺方没有办法指鹿为马。
  • 揭示阶段:承诺方公布敏感数据 v v v 和用于计算承诺 c c c 的相关参数。验证方重新执行承诺的计算过程,比较新生成的承诺 c ′ c' c 与之前接收到的承诺 c c c 是否一致,一致则表示验证成功,否则验证失败。

你没看错,揭示阶段就是直接公布承诺方的敏感数据。个人认为,承诺的作用不在于保护敏感数据的隐私,而在于防止承诺方随意解读这一敏感数据。

一个设计良好的 密码学承诺 具备如下特性:

  • 隐藏性:在打开承诺 c c c 之前,验证方不知道承诺方选择的敏感数据 v v v 是什么。
  • 绑定性:在承诺 c c c 生成之后,承诺方难以将已承诺的敏感数据解读为另一个不同的数据 v ′ v' v

一旦做出承诺,就必须在揭示阶段使用之前已经承诺的敏感数据,否则谎言会被戳穿。

几乎每一篇博客都会重复上述内容,大家常看常新啊😇



2 哈希承诺

哈希承诺是密码学承诺中最简单的一种实现方式。

哈希承诺通过以下公式计算关于敏感数据 v v v 的承诺:

c = H ( v ) c=H(v) c=H(v)

其中 H H H 是一个密码学安全的单向哈希算法。

基于单向哈希的 单向性,难以通过哈希值 H ( v ) H(v) H(v) 反推出敏感数据 v v v,以此提供了一定的 隐藏性;基于单向哈希的 抗碰撞性,难以找到不同的敏感数据 v ′ v' v 产生相同的哈希值 H ( v ) H(v) H(v),以此提供了一定的 绑定性

验证方拿着承诺 c = H ( v ) c=H(v) c=H(v) 却无法反推出敏感数据 v v v,体现了隐藏性;只有使用敏感数据 v v v 才能产生哈希值 H ( v ) H(v) H(v),而其他数据 v ′ v' v 却不行,体现了 v v v 和承诺 c = H ( v ) c=H(v) c=H(v) 之间的绑定性。

哈希承诺的 构造简单、使用方便,满足密码学承诺基本的特性,适用于对敏感数据机密性要求不高的应用场景。对敏感数据机密性要求高的应用,需要注意哈希承诺提供的 隐匿性比较有限,不具备随机性

对于同一敏感数据 v v v H ( v ) H(v) H(v) 值是固定的。因此可以通过暴力穷举的方法,列举出所有可能的 v v v 值,来反推出 H ( v ) H(v) H(v) 中实际承诺的 v v v

与其他类型的承诺相比,哈希承诺 不支持在密文形式下的直接运算和交叉验证。这意味着,在某些需要进行复杂密码学协议构造和安全多方计算的场景中,哈希承诺不如其他承诺技术那样有效。



3 Pedersen 承诺

Pedersen 承诺 是目前隐私保护方案中使用广泛的密码学承诺,相比哈希承诺,构造略微复杂,但提供了一系列优异的特性:

  • 信息论安全的理论最强隐藏性
  • 基于离散对数困难问题的强绑定性
  • 具有同态加法特性的密文形式

Pedersen 承诺 的具体构造如下:

在这里插入图片描述
其中 g g g h h h 是循环群内的两个生成元, v v v 是敏感数据。

Pedersen 承诺引入了盲因子 r r r,其中 r r r 是一个随机数。这样一来,即便敏感数据 v v v 不变,最终的承诺 c c c 也会随着 r r r 的改变而改变,从而提供了信息论安全的隐藏性。

与此不同,哈希承诺对于同一个 v v v 会产生相同的承诺 H ( v ) H(v) H(v)

由于 Pedersen 承诺在构造中采用了离散对数运算,因此也具有 加法同态性

具体来说,两个分别关于 v 1 v_1 v1 v 2 v_2 v2 的 Pedersen 承诺 c 1 c_1 c1 c 2 c_2 c2 相加,得到的新承诺是关于 v 1 + v 2 v_1+v_2 v1+v2 的 Pedersen 承诺。证明过程非常简单:

c 3 = c 1 + c 2 = C o m m i t ( v 1 , r 1 ) + C o m m i t ( v 2 , r 2 ) = ( v 1 ∗ g + r 1 ∗ h ) + ( v 2 ∗ g + r 2 ∗ h ) = ( v 1 + v 2 ) ∗ g + ( r 1 + r 2 ) ∗ h = C o m m i t ( v 1 + v 2 , r 1 + r 2 ) \begin{alignat}{2} c_3 &= c_1 + c_2 \\ &= Commit(v_1, r_1)+Commit(v_2, r_2) \\ &= (v_1*g+r_1*h)+(v_2*g+r_2*h) \\ &= (v_1+v_2)*g+(r_1+r_2)*h \\ &= Commit(v_1+v_2, r_1+r_2) \end{alignat} c3=c1+c2=Commit(v1,r1)+Commit(v2,r2)=(v1g+r1h)+(v2g+r2h)=(v1+v2)g+(r1+r2)h=Commit(v1+v2,r1+r2)

其中 C o m m i t ( ) Commit() Commit() 代表生成承诺的方法。

Pedersen 承诺还可以用来构造 v 1 ∗ v 2 v_1*v_2 v1v2 v 1 ∣ ∣ v 2 v_1 || v_2 v1∣∣v2 等更复杂的承诺 c 3 c_3 c3,通过基于离散对数的通用零知识证明系统,来证明新承诺 c 3 c_3 c3 满足与原始承诺 c 1 c_1 c1 c 2 c_2 c2 之间存在指定的约束关系。

Pedersen 承诺重在承诺,适用于数据所有者向第三方证明承诺中的敏感数据满足一定的约束关系。Pedersen 承诺不直接提供解密功能,不支持需要互不透露敏感数据明文的多方协同计算,这一点与密码学领域的同态加解密算法有很大区别,切勿混淆概念。



4 量子比特承诺

量子比特承诺 是基于量子力学原理构造的比特承诺方案,具体实现可以抽象为一个带随机输入的单向哈希算法。具体构造如下:
在这里插入图片描述
根据单向函数的单向性,承诺方向验证方发送 r 1 r_1 r1 c c c 后,验证方也无法推知 v v v,满足对 v v v 的隐藏性。根据单向哈希的抗碰撞性,承诺方难以找到 r 2 ′ r_2' r2 v ′ v' v,使得 H ( r 1 , r 2 , v ) = H ( r 1 , r 2 ′ , v ′ ) H(r_1 , r_2 , v) = H (r_1 , r_2', v') H(r1,r2,v)=H(r1,r2,v),因此承诺方难以违约,满足对 v v v 的绑定性。

不知道为什么需要两个随机数,也不知道为什么要分开发送😇

量子比特承诺的构造看似简单,但其实现需要借助量子协议完成计算,同时也有一定的理论局限性。

早在 1996 年,Hoi-Kwong Lo 和 Hoi Fung Chau 团队、Dominic Mayers 团队分别独立地证明了不存在满足信息论安全的理论最强绑定性的量子比特承诺方案。这个不存在性被称为 MLC no-go 定理。其主要原因是,如果验证方完全没有任何承诺的信息,那么承诺方可以通过 量子纠缠 随意地改变承诺内容,而验证方既不能阻止也不能发现承诺方的违约行为。

这就是为什么要先发一个 r 1 r_1 r1 给验证方吗?



5 量子模糊承诺

后量子密码学承诺的研究尚处于早期阶段,充满了各类挑战,目前难以直接应用到实际业务系统中。除了量子比特承诺之外,基于模糊算法的 量子模糊承诺 也是一类热门研究方向,目标应用领域为生物特征识别相关的隐私安全系统。具体构造如下:

在这里插入图片描述
其中, v v v 是敏感数据(如密钥), x x x 是模糊特征(如指纹), f f f 是一个模糊数据恢复算法,当输入值 x ′ x' x 接近 x x x 时,输出 v ′ = v v'=v v=v



6 总结

本论中,我们重点介绍了 哈希承诺Pedersen 承诺,在往后的文章中,我们还会进一步介绍其他重要的密码学承诺,例如 z k-SNARKs 零知识证明系统中使用的 多项式承诺、向量承诺 等。

怎么还有啊,想鼠😇

对于需要在数据的密文形式上直接进行运算和交叉验证的业务,只要不涉及互不透露数据明文的多方协同计算,相比现有同态加密算法,以 Pedersen 承诺为代表的密码学承诺往往可以提供更好的性能。这一优势与密码学承诺的同态性密不可分,如何构造和应用同态性,敬请关注下文分解。

下文:密码学原语如何应用?解析密文同态性的妙用



  • 38
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
哈尔滨工业大学(哈工大)在密码学领域有着丰富的研究经验和卓越的研究成果。哈工大密码学团队致力于密码学的基础研究和应用研究,具有国际一流的学术水平。 首先,哈工大密码学团队在密码学基础研究方面取得了卓越成果。他们在对称密码学、公钥密码学和身份认证等方面进行了深入研究,发表了大量的国际学术论文。这些研究不仅在理论上推动了密码学的发展,还为密码算法的设计和密码系统的安全性提供了重要的指导。 其次,哈工大密码学团队在密码学应用研究方面也表现出色。他们研究了密码学在信息安全、网络安全和数据保护等领域的应用,并提出了一系列创新的密码算法和安全协议。这些成果在电子商务、移动通信和云计算等领域得到了广泛应用,有效保护了用户的信息和隐私。 此外,哈工大密码学团队还与国内外的研究机构和企业进行广泛的合作,开展密码学研究与技术转移。他们与国内外顶级大学和研究所合作,共同攻克密码学研究中的难题,加强了学术交流与合作。同时,他们也积极与行业领先的企业进行合作,将密码学技术转化为实际产品和解决方案,推动密码学在实际应用中的发展。 综上所述,哈工大密码学在理论研究和应用研究中都具有卓越的表现,取得了一系列重要的研究成果。他们的研究不仅推动了密码学的发展,还为信息安全领域提供了重要支撑。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值