安全多方计算之四:比特承诺

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 安全多方计算之四:比特承诺


1. 简介

比特承诺方案是密码协议的重要成分,广泛应用于电子拍卖、商业谈判、电子投票、电子现金和在线游戏等领域,还可以用于零知识证明、身份认证和安全多方计算协议等。

比特承诺方案(Bit Commitment Scheme)解决这样的问题:Alice向Bob承诺一个预测(比特值),直到一段时间之后才揭示着预测(比特值);在这期间,Alice不能改变自己的预测(比特值)。

比特承诺的一个直观例子:Alice 把消息M MM(承诺)放在一个箱子里(只有Alice有钥匙)并将它锁住送给Bob,等到 Alice 决定向 Bob证实消息M MM时,Alice把消息M MM及钥匙给 Bob,Bob 能够打开箱子并验证箱子里的消息同 Alice出示的消息是否相同,且Bob 确信箱子里的消息在他保管期间没有被篡改。

比特承诺包括两个阶段:

  • 承诺阶段:Alice选择一个要承诺的比特或比特序列b bb,并把能表示该比特的消息c cc发送至Bob。
  • 打开阶段:Alice把打开承诺的消息d dd与承诺b bb,发送至Bob;Bob用d dd打开消息c cc,验证b bb是否为A承诺的比特。

一个安全的比特承诺方案需满足以下两个性质:

  • 隐藏性:承诺阶段,接收方Bob不能得到发送方Alice承诺的比特值。一个承诺方案是完善隐蔽的,如果接收方不能从发送的消息中得到关于承诺的任何消息。
  • 绑定性:给定承诺阶段的交互信息,接收者只能接受一个合法的承诺。即发送方不能在打开承诺的阶段改变自己承诺的比特。

常见的比特承诺方案有基于对称密码算法的,基于单向函数的以及基于数学难解问题的,包括基于大数分解的与基于离散对数的等。

2. 基于对称密码算法的比特承诺方案

承诺者Alice要向检验者Bob承诺b bb,基于对称密码算法的比特承诺方案如下:

Alice 和 Bob 共同选定某种对称加密算法E EE

承诺阶段

  • Bob产生一个随机比特串r rr并发送给 Alice
  • Alice 随机选择一个密钥k kk,利用对称加密算法E EEr rr和需承诺的比特b bb加密得c = E ( r , b ) c=E(r,b)c=E(r,b),最后将加密后的结果c cc发送给验证者 Bob

打开阶段

  • 当需要 Alice 公开承诺时,她将密钥k kk和承诺的比特b bb发送给 Bob
  • Bob利用密钥k kk解密c cc,并利用他的随机串r rr检验比特b bb的有效性。

3. 基于单向函数的比特承诺方案

承诺者Alice要向检验者Bob承诺b bb(或消息串M MM),基于单向函数的比特承诺方案如下:

Alice和Bob共同选定一个单向函数H ( ⋅ ) H(·)H(),如Hash函数

承诺阶段

  • Alice生成两个随机数r 1 , r 2 r_1,r_2r1,r2,计算单向函数值h = H ( r 1 , r 2 , b ) h=H(r_1,r_2,b)h=H(r1,r2,b),并将散列结果h hh和其中一个随机数,如r 1 r_1r1发送给Bob

打开阶段

  • 当Alice向Bob出示承诺b bb时,把承诺b bb和另一个随机数r 2 r_2r2一起发送给Bob
  • Bob计算H ( r 1 , r 2 , b ) H(r_1,r_2,b)H(r1,r2,b)的值,并与第(2)步收到的h hh值做比较,验证承诺b bb的有效性。

Alice通过发送随机数r 1 r_1r1b bb做出承诺,也就是说散列值h hh和随机数r 1 r_1r1构成了Alice向Bob承诺的证据。

该协议的优点是Bob不必发送任何消息。

4. Pederson承诺协议

承诺者Alice要向检验者Bob承诺m mm,Pederson的比特承诺方案如下:

系统参数:p 、 q p、qpq是大素数,且q / p − 1 q/p-1q/p1 , 满足Z p Z_{p}Zp中离散对数问题是难解的, g ggZ p ∗ Z_{p}^{*}Zp 的 本原元,随机数y ∈ Z p ∗ y \in Z_{p}^{*}yZp

承诺阶段:

Alice 选择需要承诺的消息比特串m ∈ Z q m \in Z_{q}mZq, 并生成随机数r ∈ Z q ∗ r \in Z_{q}^{*}rZq; 计算c = g r y m   m o d   p c= g^{r} y^{m} \bmod pc=grymmodp 作为对消息m mm的承诺,将c cc发送至 Bob。

打开阶段

Alice将m mmr rr发送至Bob;Bob通过收到的r rr打开承诺,验证c cc的计算是否与收到的承诺一致。如果一致,则认为承诺有效,否则无效。

相关文章
|
网络安全 KVM 网络虚拟化
变形金刚外传0x03:进一步讨论NSX-T的传输节点就绪
话接上篇,对于NSX-T来说,由于传输节点配置文件将传输区域与主机交换机进行了严格意义上的绑定,因此不会出现在NSX-V场景中传输区域与分布式交换机覆盖不一致的情况。
|
算法 安全 调度
基于价值认同的需求侧电能共享分布式交易策略(Matlab代码实现)
基于价值认同的需求侧电能共享分布式交易策略(Matlab代码实现)
108 0
|
7月前
|
机器学习/深度学习 人工智能 关系型数据库
安全多方计算之七:门限密码系统
安全多方计算之七:门限密码系统
|
7月前
|
机器学习/深度学习 人工智能 安全
安全多方计算之六:秘密共享
安全多方计算之六:秘密共享
|
7月前
|
机器学习/深度学习 安全 物联网
安全多方计算之十:联邦学习与安全多方计算
安全多方计算之十:联邦学习与安全多方计算
|
存储 量子技术 芯片
百万量子比特如何实现?光量子计算公司PsiQuantum论文揭示可扩展光量子通用计算方案
百万量子比特如何实现?光量子计算公司PsiQuantum论文揭示可扩展光量子通用计算方案
152 0
|
消息中间件 SQL 网络协议
国王小组:开发数字货币交易所源码搭建数据反馈处理器如何设置
DAPP交易所系统开发(开发案例)丨DAPP交易所系统开发(源码及方案) 交易所开发成品丨交易所系统开发(演示版)丨交易所APP源码设计 区块链交易所开发详细丨区块链交易所系统开发(开发方案)丨区块链交易所源码案例部署 Uniswap交易所开发稳定版丨Uniswap交易所系统开发(开发模板)丨Uniswap交易所系统源码案例部署 数字货币交易所开发详情版丨数字货币交易所系统开发(web3.0技术开发)丨数字货币交易所开发源码成品 交易所APP开发功能丨交易所系统开发(成熟及案例)丨交易所系统源码平台 DAPP交易所系统开发(开发案例)丨DAPP交易所系统开发(源码及方案)
国王小组:开发数字货币交易所源码搭建数据反馈处理器如何设置
|
编解码 人工智能 运维
跨越行业绊脚石,阿里云函数计算发布7大技术突破
如何对函数进行端云联调、如何对函数进行可观测和调试、如何优化 GB 级别的镜像冷启动?这些以往在服务的颗粒度时,都不是问题的事情,成了 Serverless 大规模落地企业核心生产业务的绊脚石。 2021云栖大会现场,阿里巴巴研究员、阿里云智能云原生应用平台总经理丁宇(叔同)重磅发布了函数计算的7大技术创新和突破,加速现代应用架构的革新。
430 4
跨越行业绊脚石,阿里云函数计算发布7大技术突破
|
前端开发 算法 测试技术
中科院、阿里云联合发布11量子比特云接入超导量子服务,郭光灿团队64比特量子仿真打破IBM Q记录
2 月 22 日下午,在安徽合肥中科大举办的「中国科学院量子信息与量子科技创新研究院 2018 年度工作会议」上,中科院/中科大团队发布量子计算云平台最新成果。
685 0
中科院、阿里云联合发布11量子比特云接入超导量子服务,郭光灿团队64比特量子仿真打破IBM Q记录
|
编解码 人工智能 运维
跨越行业绊脚石,阿里云函数计算发布 7 大技术突破
2021 云栖大会现场,阿里巴巴研究员、阿里云智能云原生应用平台总经理 丁宇(叔同)重磅发布了函数计算的 7 大技术创新和突破,加速现代应用架构的革新。
跨越行业绊脚石,阿里云函数计算发布 7 大技术突破