作者:廖飞强?
来源:微众银行区块链
在不泄露明文的前提下,如何对隐私数据的内容进行承诺?密码学承诺的密文形式和普通的数据密文有何区别?隐私数据如何在密码学承诺的形式下依旧保持可用性?在量子计算的安全模型下,是否依旧可以构造安全可用的密码学承诺?
隐私保护方案设计中,除了保护隐私数据的机密性,确保密文形式隐私数据解读的唯一性也是重要的业务需求。业务流程中,很大程度会依赖隐私数据的具体数值,如果允许攻击者在自身利益驱动下,对处于密文形式的隐私数据进行任意解读,势必会对业务的整体公正性和有效性带来巨大影响。
以电子支付为例,一家银行为一位客户开具了一张面额1000元的电子支票,电子支票以密文形式交付给客户,流转过程中不会轻易泄露金额。然而,在使用时,银行也不希望客户能够将这张电子支票解读成其他金额,如10000元。多兑现的9000元会造成银行的损失,银行甚至可能因此而停用整个密文电子支票业务。
这里的解读与解密有一定区别,对密文数据解读不一定需要对密文数据进行解密。在上面示例中,当客户花费这张面额1000元的电子支票,解读时只需要证明电子支票的消费额小于未花费余额即可,而不需要解密未花费余额的具体数值。
解决以上业务问题的关键,就在于密码学承诺的使用。密码学承诺有何神奇之处?且随本文一探究竟。
1.哈希承诺
在日常生活中,承诺无处不在。例如,预约打车成功后,司机和乘客之间就互相做了一个承诺。到了预约时间,乘客等车,司机接客,这就是在兑现承诺。
RIZZO:传奇密码学家Nick Szabo将比特币视为最好的货币形式已过去两年整:金色财经报道,比特币杂志编辑RIZZO表示,传奇密码学家Nick Szabo谈论比特币已经过去整整两年了。
Nick Szabo于2020年12月26日表示,比特币是价值投资,货币是一种相当有价值的服务,而比特币是最好的货币形式。[2022/12/27 22:09:18]
信息科学中也有类似的承诺技术存在。例如,某些网站在提供下载文件时,也会提供对应文件的单向哈希值。这里,单向哈希值便是一种对文件数据的承诺,以下称之为哈希承诺。基于下载的哈希承诺,用户可以对下载文件数据进行校验,检测接收到的文件数据是否有丢失或变化,如果校验通过,相当于网站兑现了关于文件数据完整性的承诺。
密码学承诺是一类重要的密码学原语,其中哈希承诺又是诸多技术中最简单的一种实现方式。
一般而言,密码学承诺的应用涉及承诺方、验证方两个参与方,以及以下两个使用阶段。
第一阶段为承诺生成阶段,承诺方选择一个敏感数据v,计算出对应的承诺c,然后将承诺c发送给验证方。通过承诺c,验证方确定承诺方对于还未解密的敏感数据v只能有唯一的解读方式,无法违约。
密码学博士高承实:量子计算机大规模应用将对非对称密码算法和哈希函数带来致命性的影响:密码学博士,计算机应用专业副教授高承实发表《量子计算机的应用会颠覆掉比特币系统吗?》专栏文章,文章表示,量子计算机从发展状况来看,还处于极其早期阶段,离真正实用还有相当远的距离。如果量子计算机真正能够大规模应用,将对密码算法当中的非对称密码算法和哈希函数带来致命性的影响。现在基于数学难解问题而生成的非对称密码算法RSA和ECC安全性将不复存在,哈希函数的抗碰撞性也将受到极大挑战,除非尽可能增加哈希函数的输出长度。目前的非对称密码,主要是ECDSA和哈希函数SHA256,是比特币系统最核心的底层技术,确保了比特币分配和支付的安全,在比特币系统的多个环节得到了应用,包括生成钱包地址、对交易进行签名和验证、计算区块内所有交易的默克尔数生成区块以保证块内数据难以被篡改、激励矿工开展挖矿竞赛以维护系统的自运行……如果ECDSA和SHA256两种算法的安全性不复存在,那么整个比特币系统的安全性也将不复存在。
当然我们也没有必要那么悲观。第一,量子计算机的真正使用还有相当远的距离;第二,随着量子计算以及量子计算机的发展,抗量子计算的密码算法也会同步得到发展,比如格密码。
真的到了那个时候,或者比特币系统中的密码模块会替换为抗量子计算的密码模块,或者比特币已经完成它的历史使命,从这个世界上消亡。(财新)[2020/12/24 16:21:46]
第二阶段为承诺披露阶段,学术界通常也称之为承诺打开-验证阶段。承诺方公布敏感数据v的明文和其他的相关参数,验证方重复承诺生成的计算过程,比较新生成的承诺与之前接收到的承诺c是否一致,一致则表示验证成功,否则失败。
瑞士密码学家Christian Cachin:Ripple网络中没有共识:瑞士密码学家、伯尔尼大学计算机科学家Christian Cachin在其博客文章“Ripple网络中没有共识”中表示,对Ripple协议的技术分析表明,在陈述的假设下,其既不能确保安全,也不能确保其活动性。文章称,借助其模型可证明,即使在极端温和的对抗条件下,Ripple的协议也无法达成共识,并且可能妨碍安全性和活力。尤其是,网络可以在Ripple声明的UNL重叠的标准条件下,且在只有极小部分的恶意节点的情况下分叉。在网络忽略或延迟正确节点之间的消息的时间段内,恶意节点可能只是向正确的节点发送冲突消息。其还演示了即使所有节点都具有相同的UNL并且只有一个拜占庭节点,Ripple的共识协议也可能会失去活力。如果发生这种情况,则必须手动重新启动系统。文章得出结论称,Ripple网络的共识协议很脆弱,无法确保计算机科学和区块链从业人员普遍理解的共识。[2020/12/3 22:55:52]
一个设计良好的密码学承诺具备如下特性:
隐匿性:在打开关于v的承诺c之前,验证方不知道承诺方选择的敏感数据v。
绑定性:在关于v的承诺c生成之后,承诺方难以将已承诺的敏感数据解释成另一个不同的数据v'。
所以,密码学承诺可以起到与日常生活中的承诺行为类似的效果,一旦做出承诺,就必须在披露阶段使用之前已经承诺的敏感数据。
对应地,在业务系统中,承诺生成阶段通常被用来生成密文形式的业务数据,而承诺披露阶段则多被用于在特定业务流程中进行数据校验。
Nervos研究员论文被国际密码学顶会欧密会收录:近日,Nervos基金会密码学研究员Alan Szepieniec的论文《Transparent SNARKs from DARK Compilers》被国际密码学顶会欧密会收录,同时,Alan也受邀在该会议上发表了主题演讲。这项基础性的工作为零知识证明领域贡献了一种全新的无需Trusted Setup的通用工具,标志着 Nervos在2020年的研究工作又向前迈进了坚实的一步。
欧密会(Eurocrypt)是密码学中最著名的学术会议国际密码学协会所主办的三大旗舰会之一,在CCF推荐列表和 CACR列表中均为A类会议,密码学中最重要的文章一般都会在这三个会议中发布。Eurocrypt 2020是第39届密码技术理论与应用国际会议,首次在线上举行。[2020/5/18]
除了直接公布敏感数据明文之外,承诺披露阶段所需的数据校验,也可以在不公布敏感数据明文的前提下,构造零知识证明来完成。相关内容将在后续零知识证明专题中展开。
具体回到哈希承诺,用户可以通过以下公式计算关于敏感数据v的承诺,其中H是一个密码学安全的单向哈希算法。
现场 | 密码学专家杨光:实现百万级TPS几年内希望不大 领域内突破将有助发掘新应用场景:金色财经现场报道,在全球区块链开发者2018会议期间,金色财经采访了刚刚演讲的密码学专家杨光。他认为,目前扩容领域研究的主要方向是可验证计算、零知识证明等技术,分片技术也具有广阔的前景。他认为,区块链实现百万级TPS值得追求,但几年内希望不大。当前来看公链上的TPS对于运行当前的应用来讲是够用的,但未来在TPS上的突破,能够提供给我们新应用的探索可能。就像当今互联网速度的提升让我们实现了早期互联网时期人们难以想象的应用一样。[2018/12/16]
基于单向哈希的单向性,难以通过哈希值H(v)反推出敏感数据v,以此提供了一定的隐匿性;基于单向哈希的抗碰撞性,难以找到不同的敏感数据v'产生相同的哈希值H(v),以此提供了一定的绑定性。
哈希承诺的构造简单、使用方便,满足密码学承诺基本的特性,适用于对隐私数据机密性要求不高的应用场景。
对隐私数据机密性要求高的应用,需要注意哈希承诺提供的隐匿性比较有限,不具备随机性。对于同一个敏感数据v,H(v)值总是固定的,因此可以通过暴力穷举,列举所有可能的v值,来反推出H(v)中实际承诺的v。
相比其他密码学承诺技术,哈希承诺不具有便于业务系统在密文形式对其处理的附加功能,例如,多个相关的承诺值之间密文运算和交叉验证,对于构造复杂密码学协议和安全多方计算方案的作用比较有限。
2.Pedersen承诺
Pedersen承诺是目前隐私保护方案中使用广泛的密码学承诺,相比哈希承诺,构造略微复杂,但提供了一系列优异的特性:
信息论安全(参见
第4论)的理论最强隐匿性。
基于离散对数困难问题(参见
第3论)的强绑定性。
具有同态加法特性的密文形式。
其具体构造如下:
有别于哈希承诺,对于同一个v会产生相同的承诺H(v),Pedersen承诺通过引入随机致盲因子r,即便隐私数据v不变,最终的承诺c也会随着r的变化而变化,以此提供了信息论安全的隐匿性。
Pedersen承诺在构造中采用了离散对数运算,因此也赋予其加法同态性。可以通过两个分别关于v1和v2的Pedersen承诺c1和c2“相加”,得到的新承诺便是关于v1+v2的Pedersen承诺。
除了能够构造关于v1+v2的Pedersen承诺之外,Pedersen承诺还可以用来构造v1*v2、v1||v2等更复杂的Pedersen承诺,通过基于离散对数的通用零知识证明系统,来证明新产生的承诺满足与原始承诺c1和c2之间存在指定的约束关系。
在实际业务中,Pedersen承诺自带的加法同态性,配合零知识证明获得约束关系证明功能,在区块链中可以有广泛的应用,目前主要以隐匿账本的形式,提供灵活的隐私数据的密文上链存证和交易密文数值关联性的第三方验证。
具体方案设计中,相关业务方在链下完成业务交互之后,将对应的数值变化表达成Pedersen承诺,再将对应的承诺数据上链,这个过程中无需披露任何隐私数据明文。
上链之后,非相关的第三方虽然难以通过Pedersen承诺的密文形式反推出隐私数据明文,但可以验证承诺之间的约束关系,核实业务交互的合法性,例如,验证隐匿转账发生之后,依旧满足会计平衡、外汇交易中使用了正确汇率进行跨行对账等。
值得注意的是,Pedersen承诺产生的密文形式,与通过普通加解密算法生成的数据密文有一定相似性,在计算过程中都使用敏感数据v,致盲因子r的作用和密钥的作用也有一些相似,均用以混淆最后的密文输出。
但不同的是,密码学承诺不提供解密算法,如果只有r,无法有效地提取出敏感数据v的明文,只能通过暴力穷举所有可能的v值的方法逐一验证,试图通过匹配的承诺值来破解v的明文。
所以,Pedersen承诺重在“承诺”,适用于数据属主向第三方证明承诺中的敏感数据满足一定的约束关系,由于不直接提供解密功能,不能直接支持需要互不透露敏感数据明文的多方协同计算,这一点与密码学领域的同态加解密算法有很大区别,切勿混淆概念。
3.量子承诺
为了应对量子计算可能带来的风险,寻求经典密码学承诺技术的替代品,后量子密码学承诺也是重要的研究方向之一。比较典型的方案有量子比特承诺。
量子比特承诺(QuantumBitCommitment)是基于量子力学原理构造的比特承诺方案,具体实现可以抽象为一个带随机输入的单向哈希算法。
根据单向函数的单向性,承诺方向验证方发送r1和c后,验证方不知道v,满足对v的隐匿性。另外,由单向哈希的抗碰撞性可知承诺方难以找到r2′和v’,使H(r1,r2,v)=H(r1,r2′,v′),因此承诺方难以违约,满足对v的绑定性。
量子比特承诺的构造看似简单,但实际实现需要借助量子协议完成计算,同时也有一定的理论局限性。
早在1996年,Hoi-KwongLo和HoiFungChau团队、DominicMayers团队分别独立地证明了不存在满足信息论安全的理论最强绑定性的量子比特承诺方案。这个不存在性被称为MLCno-go定理。其主要原因是,如果验证方完全没有任何承诺的信息,那么承诺方可以通过量子纠缠随意地改变承诺内容,而验证方既不能阻止也不能发现承诺方的违约行为。
总体而言,后量子密码学承诺的研究尚处于早期阶段,充满了各类挑战,目前难以直接应用到实际业务系统中。除了量子比特承诺之外,基于模糊算法的量子模糊承诺也是一类热门研究方向,目标应用领域为生物特征识别相关的隐私安全系统。将来不排除有更实用的方案面世,以此消解量子计算可能带来的冲击,我们将持续保持关注。
正是:业务数据精确至毫厘,密码承诺隐匿遁无形!
密码学承诺的隐匿性和绑定性是隐私保护方案设计中常用的关键特性,在保障隐私数据机密性的同时,也保证了密文形式隐私数据解读的唯一性。对于业务系统设计而言,密码学承诺为隐私数据提供了另一种高效的密文表达方式。
本论中,我们重点介绍了哈希承诺和Pedersen承诺,在往后的文章中,我们还会进一步介绍其他重要的密码学承诺,例如zk-SNARKs零知识证明系统中使用的多项式承诺、向量承诺等。
对于需要在数据的密文形式上直接进行运算和交叉验证的业务,只要不涉及互不透露数据明文的多方协同计算,相比现有同态加密算法,以Pedersen承诺为代表的密码学承诺往往可以提供更好的性能。这一优势与密码学承诺的同态性密不可分,如何构造和应用同态性,敬请关注下文分解。
标签:EDESEN比特币PLEthegardenofedenProject Senpai比特币总市值最高点多少万亿KiloAmple
互链脉搏统计,本周共有7家上市公司披露了其区块链发展情况。其中,金财互联、四方精创、紫光国微三家公司有论及数字货币领域.
1900/1/1 0:00:00据Decrypto5月13日报道,比特币研究公司DelphiDigital发布了一份最新的“比特币现状”报告.
1900/1/1 0:00:00点击回顾前文:《解读Libra2.0新型数字货币战争韬略—从监管与合规入手》核心提示:本文会进一步分析Libra2.0的深层目的,影响和意义.
1900/1/1 0:00:005月7日,风再起?巴比特云端峰会迎来收官之战,畅谈交易这件事。OKEx首席战略官徐坤做客链节点直播间,分享了她对减半行情、交易所格局的看法,并透露了OKEx的在新形势下的战略布局.
1900/1/1 0:00:00来源:哈希派作者:LucyCheng北京时间2020年3月12日晚间六点开始,比特币经历了颇为壮观的血洗之夜,价格如同泄洪一般,接连跌破7000美元、6000美元、5000美元关口.
1900/1/1 0:00:00据一个试图使数字化美元成为现实的游说团体所说,代币化的美元将使政府更容易在危机期间将资金投给需要的人手中.
1900/1/1 0:00:00