2. 福建师范大学 福建省网络安全与密码技术重点实验室, 福州 350007
2. Fujian Provincial Key Lab of Network Security & Cryptology, Fujian Normal University, Fuzhou 350007, China
秘密共享是网络通信中保护信息隐私性和安全性的一种非常有效的密码技术, 通过秘密共享技术可以实现将秘密信息共享给多个参与者. 1979年, Shamir[1] 和Blakley[2]最先分别提出了门限秘密共享的概念. Shamir则是利用有限域上的多项式设计的秘密共享方案, 而Blakey利用超几何问题构造了秘密共享方案. Benaloh和Leichter[3], Ito等[4]分别提出基于授权集和非授权集的秘密共享方案, 实现了一般存取结构上的秘密共享. 为了防止秘密共享中参与者的欺骗行为, Chor等[5]提出了可验证的秘密共享方案, 之后Stadler[6]提出了公开可验证秘密共享方案. 通常的秘密共享方案中, 秘密分发者将秘密分为多份子秘密, 并按照一定的分发方式发送给参与者, 使得授权集中的参与者联合时可以恢复秘密, 非授权集中的参与者联合时不能恢复秘密. 这些秘密共享方案均为单秘密的共享方案, 执行一次共享算法只能共享一个秘密, 但实际中经常需要共享多个秘密, 若采用这些共享方案则需要多次执行共享算法, 从而使计算、存储和通信等方面的效率降低.
由于单秘密共享方案的局限性, 使得众多学者提出并研究多秘密共享. 1994年, He和Dawson[7]基于单向函数提出了一个多阶段的
2007 年, Geng等[8]在He和Dawson方案[7]的基础上进行改进, 提出了多存取结构上参与者子秘密可多次使用的门限多秘密共享方案, 使得参与者子秘密在恢复一轮多秘密之后, 子秘密的信息仍是保密的, 从而子秘密具有可多次使用的性质. 为了防止参与者在秘密恢复时的不诚实行为, Chen等[15]提出了一个可验证的门限多秘密方案, 该方案可对参与者发送的子秘密进行验证, 防止参与者的欺骗行为, 但子秘密不具有多次使用的性质. Mashhadi[16]基于线性反馈移位寄存器提出了一个多步的秘密共享方案, 该方案在秘密重构阶段可采用求解范德蒙方程和计算Lagrange 插值两种方法进行秘密恢复, 但秘密恢复必须按照固定的顺序进行. Zarepour-Ahmadabadi等[17]提出一个具有可信第三方的渐进门限秘密共享方案, 多个秘密按照预设的顺序进行重构, 并且每个秘密对应不同的存取结构, 若秘密恢复顺序为
(1)参与者存储的子秘密只有一份;
(2)参与者的子秘密可多次使用;
(3)不同的秘密对应不同的存取结构;
(4)秘密重构时可按任意顺序进行恢复;
(5)实现多秘密的公开值个数少.
本文应用中国剩余定理, 将其作为公开值聚合的工具来减少公开值的个数, 基于多项式的方法提出了一个子秘密可多次使用的门限多秘密共享方案, 其中参与者只需存储一个子秘密即可, 同时公开值的个数与其他方案相比也是最少的, 并且不同的秘密可对应不同的门限值, 在秘密恢复时可以按照任意的顺序进行秘密的重构, 不需要按照特定的顺序, 具有更好的灵活性.
文中剩余部分按照如下安排: 第1节介绍相关的预备知识; 第2节介绍方案的具体构造以及方案的安全性分析; 第3节对几个多秘密共享方案进行比较分析; 第4节是方案的总结.
1 预备知识这一部分将分别对存取结构, 中国剩余定理, 离散对数问题和Shamir
设n个参与者的集合为
存取结构Γ具有单调性, 即:
$A \in \Gamma ,A \subset A' \Rightarrow A' \in \Gamma .$ |
对于一个
若一个秘密共享方案满足:
(1)正确性: 对于
(2)安全性: 对于
则称该方案为完备的秘密共享方案[18].
1.2 中国剩余定理中国剩余定理(Chinese Reminder Theorem)[19]又称孙子定理, 简记为CRT, 是中国古代求解一次同余式的方法. 中国剩余定理基本内容表述如下:
随机选择两两互素的整数
$\left\{ \begin{gathered} Y = {r_1}(od {m_1}) \\ Y = {r_2}(od {m_2}) \\ \vdots \\ Y = {r_n}(od {m_n}) \\ \end{gathered} \right.$ |
在模M下有唯一解
设
由于对一般阶数较大的有限域上离散对数问题至今没有一个高效的求解算法, 所以在密码方案的构造过程中, 总是假设在有限域上求解离散对数问题是困难的.
1.4 ShamirShamir
秘密分发阶段:
(1)分发者D选择一个
$f(x) = {a_0} + {a_1}x + {a_2}{x^2} + \ldots + {a_{t - 1}}{x^{t - 1}}\quad \left( {od p} \right),$ |
其中,
(2) D计算
秘密重构阶段:
(3)不妨假设进行秘密重构的参与者为
(4)秘密重构者C根据Lagrange插值公式计算得到秘密:
$S = \sum\limits_{i = 1}^t f (i)\prod\limits_{j = 1,j \ne i}^t {\frac{j}{{j - i}}} \quad \left( {od p} \right).$ |
Shamir
(1)任意大于等于t个参与者可以根据Lagrange插值公式重构出多项式
(2)任意少于t个参与者无法重构出多项式
因此, Shamir
本节介绍方案的具体构造, 证明了方案的正确性和安全性、子秘密可多次使用性. 设k个秘密为
分发者选取素数p和两两互素的正整数
随机选择
(1)秘密分发阶段
分发者进行如下操作:
① 随机选择元素
② 计算
③ 根据g与随机值
④ 将
(2)秘密重构阶段
任意
① 参与者:
② 恢复者:
${g^{{a_j}}} \equiv \prod\limits_{i = 1}^{{t_j}} {{{\left( {{g^{S{H_{j,i}}}}} \right)}^{{b_i}}}}\left( {od p} \right)$ |
其中,
(3)秘密验证阶段
参与者收到恢复者发送的秘密
本文方案的安全性与Shamir
定理2.1. 在共享秘密
证明:
(1)正确性: 任意大于等于
(2) 安全性: 任意少于
方案正确性: 在进行秘密重构时, 任意至少
$\begin{split} \prod\limits_{i = 1}^{{t_j}} {{{(S{H_{j,i}})}^{{b_i}}}(od p)} & = \prod\limits_{i = 1}^{{t_j}} {{{\left( {{g^{{f_j}({x_{j,i}})}}} \right)}^{{b_i}}}(od p)} \\ & = {g^{\sum\nolimits_{i = 1}^{{t_j}} {{f_j}({x_{j,i}}){b_i}} }}(od p) \\ & = {g^{{a_j}}}(od p) \end{split} $ |
再根据公开信息中
方案安全性: 对于不同的秘密
假设
设参与者
定理2.2. 本文构造的方案中, 参与者的子秘密具有安全性; 在秘密重构阶段不会泄露参与者保存的子秘密信息, 子秘密具有重复使用性.
证明:
$\left\{ \begin{gathered} {f_{j1}}({x_i}) = P{S_{j1}}(od {m_i}) \\ {f_{j2}}({x_i}) = P{S_{j2}}(od {m_i}) \\[-2pt] \vdots \\ {f_{jl}}({x_i}) = P{S_{jl}}(od {m_i}) \\ \end{gathered} \right.$ |
可以得到关于参与者
本文构造的方案中应用中国剩余定理作为聚合生成公开值的工具, 将根据Shamir(t,n)-门限方案生成的n个伪子秘密进行聚合产生一个公开值. 因此k个秘密对应产生k个聚合的公开值以及k个转换值, 只需要2k个公开值即可共享多个秘密, 在分发多秘密时, 每个参与者只需存储一个子秘密即可, 并且参与者所存储的子秘密可多次使用. 同时每个秘密可对应不同的存取结构, 实现了多存取结构的秘密共享. 在秘密恢复阶段, 本文的方案不需要按照固定顺序进行秘密重构, 在需要恢复哪个秘密时, 根据对应的公开值进行重构即可. 因此可以减少一次性重构全部秘密和固定顺序重构秘密带来的安全隐患.
表1中对比的3个方案均为子秘密可多使用的多秘密共享方案. 其中Geng等的方案[8]应用单向函数以及离散对数问题, 保护子秘密的安全性, 但所产生的公开值个数为
Shao的方案[9]构造两个不同的多项式, 产生的公开值为
4 结论
本文基于Shamir
[1] |
Shamir A. How to share a secret. Communications of the ACM, 1979, 22(11): 612-613. DOI:10.1145/359168.359176 |
[2] |
Blakley GR. Safeguarding cryptographic keys. Proceedings of the AFIPS 1979 National Computer Conference. New York, NY, USA. 1979.313–317.
|
[3] |
Benaloh J, Leichter J. Generalized secret sharing and monotone functions. Advances in Cryptology. New York, NY, USA. 1988. 27–35.
|
[4] |
Ito M, Saito A, Nishizeki T. Secret sharing scheme realizing general access structure. Electronics and Communications in Japan (Part Ⅲ-Fundamental Electronic Science), 1989, 72(9): 56-64. DOI:10.1002/ecjc.4430720906 |
[5] |
Chor B, Goldwasser S, Micali S, et al. Verifiable secret sharing and achieving simultaneity in the presence of faults. 26th Annual Symposium on Foundations of Computer Science. Portland, OR, USA. 1985. 383–395.
|
[6] |
Stadler M. Publicly verifiable secret sharing. International Conference on Advances in Cryptology. Saragossa, Spain. 1996. 190–199.
|
[7] |
He J, Dawson E. Multistage secret sharing based on one-way function. Electronics Letters, 1994, 30(19): 1591-1592. DOI:10.1049/el:19941076 |
[8] |
Geng YJ, Fan XH, Fan H. A new multi-secret sharing scheme with multi-policy. The 9th International Conference on Advanced Communication Technology. Okamoto, Kobe, Japan. 2007.1515–1517.
|
[9] |
Shao J. Efficient verifiable multi-secret sharing scheme based on hash function. Information Sciences, 2014, 278: 104-109. DOI:10.1016/j.ins.2014.03.025 |
[10] |
Wang N, Cai YY, Fu JS, et al. Information privacy protection based on verifiable (t, n)-threshold multi-secret sharing scheme
. IEEE Access, 2020, 8: 20799-20804. DOI:10.1109/ACCESS.2020.2968728 |
[11] |
曹阳. 基于大整数分解可公开验证的秘密共享方案. 计算机系统应用, 2016, 25(3): 271-273. |
[12] |
彭咏, 邵培南, 李翔, 等. 基于格的可验证秘密共享方案. 计算机系统应用, 2020, 29(1): 225-230. DOI:10.15888/j.cnki.csa.007208 |
[13] |
Harn L, Hsu CF. (t, n) multi-secret sharing scheme based on bivariate polynomial
. Wireless Personal Communications, 2017, 95(2): 1495-1504. DOI:10.1007/s11277-016-3862-z |
[14] |
Zhang T, Ke XZ, Liu YX. (t, n) multi-secret sharing scheme extended from Harn-Hsu’s scheme
. Eurasip Journal on Wireless Communications and Networking, 2018, 2018(1): 71. DOI:10.1186/s13638-018-1086-5 |
[15] |
Chen D, Lu W, Xing WW, et al. An efficient verifiable threshold multi-secret sharing scheme with different stages. IEEE Access, 2019, 7: 107104-107110. DOI:10.1109/ACCESS.2019.2929090 |
[16] |
Mashhadi S. How to fairly share multiple secrets stage by stage. Wireless Personal Communications, 2016, 90(1): 93-107. DOI:10.1007/s11277-016-3332-7 |
[17] |
Zarepour-Ahmadabadi J, Shiri-Ahmadabadi M, Miri A, et al. A new gradual secret sharing scheme with diverse access structure. Wireless Personal Communications, 2018, 99(3): 1329-1344. DOI:10.1007/s11277-017-5187-y |
[18] |
Tassa T. Hierarchical threshold secret sharing. Journal of Cryptology, 2007, 20(2): 237-264. DOI:10.1007/s00145-006-0334-8 |
[19] |
Odlyzko AM. Discrete logarithms in finite fields and their cryptographic significance. Proceedings of EUROCRYPT 84 A Workshop on Advances in Cryptology. Paris, France. 1985. 224–314.
|
[20] |
Trotter H. Book Review: A course in computational algebraic number theory. Bulletin of the American Mathematical Society, 1994, 31(2): 312-318. DOI:10.1090/S0273-0979-1994-00542-7 |