APP下载

一个可验证的动态多秘密共享方案

2020-12-15张硕英刘锋

网络空间安全 2020年11期
关键词:密码学

张硕英 刘锋

摘   要:利用结合RSA密码体制和ElGamal签名算法的签密体制、异或运算和Hash函数等工具,提出一个安全的动态可验证多秘密共享方案。方案中的参与者获得子秘密份额时,验证其来源和有效性,避免得到无效的子秘密份额。方案在不安全信道环境下具有一定的抗干扰能力,可以防止非法用户的参与。同时可以防止参与者和分发者的欺骗行为。方案具有高效性和灵活性,同时在秘密分发过程更具安全性。

关键词:多秘密共享;可验证的;动态的;密码学

中图分类号: TN911.22          文献标识码:A

Abstract: Using the RSA cryptosystem and ElGamal signature algorithm, XOR operation and hash function, a dynamic and verifiable multi-secret sharing scheme has been proposed. When the participant obtains the sub secret share, it verifies its source and validity to avoid getting the invalid sub secret share. The scheme has a certain anti-interference ability in the insecure channel environment, which can prevent the participation of illegal users. At the same time, it can prevent participants and distributors from cheating. This scheme is efficient and flexible, and is more secure in secret distribution process.

Key words: secret sharing; verifiable; dynamic; cryptography

1 引言

计算机网络的兴起给人们的生活提供了巨大的便利,保存重要信息不再使用易丢失或破损的纸张,使用电子设备保存重要信息成为现在最为普遍的做法。那么面对信息的保存,安全问题就显得尤为重要。最初使用的方法便是重要信息统一由一人或者多人保管,显然这样的方法安全性极低,不能保障数据信息的安全可靠性。为解决信息的安全保存问题,Shamir和Blakley在1979年分别独立地设计了一个基础的秘密共享方案。文献[1]通过构造多项式将主秘密分割成多个子秘密,分发给相应的参与者。当参与者个数大于或等于门限值时,便可以通过Lagrange插值公式进行主秘密的恢复;当参与者个数小于门限值时,主秘密无法恢复。文献[2]通过利用几何学中的多维空间性质,将主秘密被定义为n维空间中有n个超平面相交的点,每一个子秘密包含主秘密点的n-1维超平面方程,任意n个超平面相交就能代表主秘密的点。而少于n个超平面相交只能确定代表主秘密的点所在的交线,无法恢复主秘密。这两种基本的秘密共享方案的思想都是将主秘密进行分割,再进行分发子秘密份额。恢复主秘密时,当参与者个数大于或等于门限值时,才可完整恢复主秘密;反之不能。上述两种方案因后者的超平面本身的抽象性,导致该方案难以理解,以至于针对该方案的研究或改进较少。Shamir共享方案因其思想、过程简单,很多研究人员在该方案基础上的研究或改进较多。

文献[3]提出来了建立在整数环上的秘密共享方案,该方案适用于当计算环境无法构成域时。文献[4]在文献[1]的基础上进行了改进,使得子秘密份额可重复利用,无需频繁进行子秘份额的更新。文献[5]对文献[4]进行了改进,使其具有可验证性。文献[7]利用单向散列链构造多项式更新子秘密份额;文献[9]提出将秘密份额进行线性组合作为Lagrange分量,用于重构秘密;文献[10]提出了一个高效的多秘密共享方案;文献[12]设计了一个根据门限值大小重构不同秘密的多秘密共享方案,使方案具有动态性。文献[14]的方案是在文献[12]方案的基础上进行了改进,以Hash函数的安全性作为基础,在重构主秘密之后,验证其是否正确。利用RSA密码体制,将子秘密份额加密传输,使子秘密分发可在不安全信道中传输。

本文在文献[14]方案的基础上进行了改进,本方案利用ElGamal签名方案在子秘密分发阶段对子秘密进行签名和对子秘密利用RSA密码体制加密,并在参与者得到子秘密份额之后进行Hash函数值验证,确保子秘密份额来源于分发者,以及确保子秘密份额正确有效。参与者通过对加密后的子秘密份额进行解密并签名认证得到正确有效的子秘密份额。本文方案通过对不同组的主秘密定义不同的门限值,便于之后恢复不同主秘密,可以动态地增删参与者,还可以对秘密进行增加或者删除。

2 动态多秘密共享方案

方案构造过程中,引入如下几个实体,秘密分发者用D表示。参与者用表示,秘密恢复者用C表示。

2.1系统初始化阶段

(5)每个参与者通过RSA解密函数,计算;并且通过ElGamal簽名验证函数判断其真值。若真值为真,可得属于参与者的秘密份额。

(6)通过对计算出的子秘密份额应用Hash函数,得到,判断与公开的是否相等,验证子秘密的有效性。

3.3 主秘密重构阶段

若要重构第一组秘密,则至少需要大于等于l位的参与者合作执行以下过程。

(1)每个计算各自的经过运算后的秘密份额,即:

在上应用Hash函数得,公开;然后将发送给恢复者C。

(2)C接收到所有的后,通过Hash函数计算,判断是否等于之前公开的。若两者相等,则C接受;若两者不相等,则说明在传输过程中出现错误,或者参与者存在欺骗行为,将错误的发送给C,C要求参与者重新发送,直至获得正确的。C获得正确的 后,第一组秘密重构为:

得到后,根据公布的和,计算(其中),即可恢复出第l组的t个秘密。

(3)得到t个秘密(其中)后,通过Hash函数计算,判断和公开的是否相等。若相等,则得到了正确的t个主秘密;若不等,则说明D存在欺骗行为,没有发送正确的子秘密份额。

4分析与讨论

4.1 可验证性分析

本文在原有方案的基础上,在秘密分发阶段增加了ElGamal签名方案和分发阶段的验证算法,更加有效保证传输过程中数据的唯一有效性。

(1)增加ElGamal签名方案。分发者在对子秘密份额加密之前,对其通过签名函数进行签名。当参与者收到加密之后的子秘密份额和签名消息对,参与者通过RSA解密函数对子秘密份额进行解密之后,再通过ElGamal验证函数对子秘密份额和签名消息对进行验证。若验证通过,则分发者得到子秘密份额;反之,得到的信息有误。因此该方案增加了对秘密分发者的身份认证,确保秘密发送方的数据安全性。

(2)当秘密分发者解密并验证子秘密份额,可通过Hash函数确认其有效性,防止秘密分发者的欺骗。在参与者获得子秘密份额后,每一位参与者通过Hash函数计算,判断与是否相等。如果值相等,说明子秘密份额是正确的,参与者接收子秘密份额;如果值不相等,说明分发者是不诚实的,参与者要求分发者重新签名并加密子秘密份额再发送,直至得到正确的子秘密份额。

4.2 动态性分析

在不改变秘密份额的同时,增加或删除参与者。也可以添加新的主秘密或者删除旧的主秘密。

(1)参与者的添加。设需添加一身份标识为的参与者。在系统初始化阶段,秘密分发者D选取的一个在上的离散对数问题的难处理的大素数,是一个本原元,而后选择合适的和一个秘密的随机数。选择2个足够大的素数、和,分别计算,,。公开,确保其唯一性,否则参与者需要重新选择,保密;在伪秘密份额产生计算秘密分发者D选取,,根据签名函数对进行签名,公开。利用RSA加密函数对进行加密,即。公开;秘密分发者D通过计算得到,将公开。参与者通过RSA解密函数从中计算得子秘密份额,并且通过验证函数验证真值。若验证通过,则得到属于自己的子秘密份额。最后,通过Hash函数验证此子秘密份额是否有效,判断其有效之后,新添加的参与者便能够参与重构主秘密。

参与者的删除。假设删除某一参与者后,剩余参与者仍可以重构主秘密,只需删除公开的Hash值即可。若被删除的参与者使用原有的子秘密份额参与重构秘密,在重构秘密验证的Hash值时,因不存在无法验证通过,无法参加主秘密的重构。

(2)主秘密的添加。若增加第i组中的第个主秘密,分发者就要能够在有限域中找到和,使得其满足,并计算,公开,和即可。若要添加第组主秘密,分发者就要能够在有限域中找到和,使得其满足,并计算,公开,和根据方案定义,分别计算,公开。

主秘密的删除。只需删除某一秘密对应的Hash值,使其在重构阶段的验证Hash值时无法通过验证即可。

正确性分析参见文献[12]?。

5 结束语

本文方案在文献[14]的方案基础上,在秘密分发阶段增加了ElGamal签名方案和对子秘密份额的验证算法,增加了对秘密发送方的身份确认功能,以及对秘密份额有效性的验证。进一步在不安全信道中保证了信息的安全,防止在子秘密分发阶段分法者的欺骗行为,同时避免了分发者向参与者发送无效的秘密份额。参与者可以通过相同的子秘密份额恢复出多个秘密。

基金项目:

国家自然科学基金面上项目(项目编号:61771294,61972235)。

参考文献

[1] Shamir A . How to Share a Secret[J]. Comm Acm, 1979, 22.

[2] Blakley, G.R. Safeguarding cryptographic keys[C]// Afips. IEEE Computer Society, 1979.

[3] Lein Harn, Changlu Lin. Strong (n,t,n) verifiable secret sharing scheme[M]. Elsevier Science Inc. 2010.

[4] 徐秋亮,李大兴,郑志华.一个建立在整数环上的秘密共享方案[J].通信保密,1999,3-5.

[5] Zhao J , Zhang J , Zhao R . A practical verifiable multi-secret sharing scheme[J]. computer standards & interfaces, 2007, 29(1):138-141.

[6] Dehkordi M H , Mashhadi S . An efficient threshold verifiable multi-secret sharing[J]. Computer Standards & Interfaces, 2008, 30(3):187-190.

[7] 谷婷,杜伟章.无可信中心的可动态更新多秘密共享方案[J].計算机工程, 2016(3):148-155.

[8] Amroudi A N , Zaghain A , Sajadieh M . A Verifiable (k,n,m)-Threshold Multi-secret Sharing Scheme Based on NTRU Cryptosystem[J]. Wireless Personal Communications, 2017, 96(1):1-13.

[9] Harn L . Secure secret reconstruction and multi-secret sharing schemes with unconditional security[J]. Security & Communication Networks, 2014, 7(3):1-7.

[10] Shao, Jun. Efficient verifiable multi-secret sharing scheme based on hash function[J]. Information Sciences, 2014, 278:104-109.

[11] Harn, Lein, Hsu, Ching-Fang. (t, n) Multi-Secret Sharing Scheme Based on Bivariate Polynomial[J]. Wireless Personal Communications, 2016.

[12] SHI Run-hua, ZHONG Hong, HUANG Liu-sheng. Dynamic Multi-secret Sharing Scheme[J]. computer engineering, 2008, 31(5):701-704.

[13] Hsu C F , Cheng Q , Tang X , et al. An ideal multi-secret sharing scheme based on MSP[J]. Information Sciences, 2011, 181(7):1403-1409.

[14] 王婭如,李富林,朱士信.可验证的动态多秘密共享方案[J].合肥工业大学学报(自然科学版), 2019,v.42;No.320,147-150.

[15] 王俞力,杜伟章.向量空间上无可信中心的动态多秘密共享方案[J].计算机工程, 2017, 043(007):163-169.

[16] 刘建,鲜明,王会梅,等.面向移动云的属性基密文访问控制优化方法[J].通信学报, 2018, 039(007):39-49.

[17] 谷婷,杜伟章.自选子秘密可更新的多秘密共享[J].计算机工程, 2016, 042(006):120-124.

[18] 张明武,陈泌文,谢海涛.带权重的动态可验证多秘密共享机制[J].密码学报, 2016, 003(003):229-237.

[19] 张尚韬.一种基于椭圆曲线自双线性映射的多秘密共享方案[J].海南师范大学学报(自然科学版), 2016, v.29(01):39-42.

猜你喜欢

密码学
图灵奖获得者、美国国家工程院院士马丁·爱德华·海尔曼:我们正处于密钥学革命前夕
应用型信息安全专业密码学课程创新探索
区块链的产生根源及其本质
浅析密码学在信息安全中的应用
基于C#的“密码学”实验演示系统的设计与实现
中学生研究性学习课题的设计与实现
“不可破译”的密码
简易密码与破译
费马小定理和素数在密码学的应用
翻转课堂在密码学课程教学中的应用案例