Computer Science and Application
Vol. 09  No. 12 ( 2019 ), Article ID: 33550 , 8 pages
10.12677/CSA.2019.912263

Universal Verifiability Design for the Combination of N Shamir Threshold Secret Sharing Schemes

Yonghao Guo, Hongru Wei

School of Mathematics and Physics, University of Science and Technology Beijing, Beijing

Received: Dec. 2nd, 2019; accepted: Dec. 13th, 2019; published: Dec. 20th, 2019

ABSTRACT

The verifiability of secret sharing scheme is an important research direction in secure multi-party computing protocols. The research in this field can be used as the basis for the fairness, security and correctness of security computing. This paper designed that a universal verifiability of a n-shamir threshold secret sharing scheme is different from the existing shamir threshold secret sharing scheme. This paper extends the secret number shared by each participant to n, i.e. the combination of n-shamir thresholds, rather than a single secret sharing, makes its application more extensive; at the same time, it makes up for the lack of verification of the existing general methods in the input phase and the computing phase. Finally, the continuity and transitivity of the verifiability of each stage and every step are achieved.

Keywords:Secret Sharing, Verifiability, Secure Multiparty Computing, Shamir Threshold

N个Shamir门限秘密共享方案组合的通用可验证性设计

郭涌浩,卫宏儒

北京科技大学数理学院,北京

收稿日期:2019年12月2日;录用日期:2019年12月13日;发布日期:2019年12月20日

摘 要

秘密共享方案的可验证性是安全多方计算协议中重要的一个研究方向,该领域的研究可以作为安全计算的公平性、安全性、正确性研究基础。本文设计了一种n个Shamir门限秘密共享方案组合的通用可验证性,该方案与已有的Shamir门限秘密共享方案不同,本文将每个参与者分享的秘密数扩展到个,即个Shamir门限的组合,而不是单单的对于一个秘密的分享,使其应用的方面更加广泛;同时,弥补了现有通用方法在输入阶段和计算阶段的验证性的不足,最后实现了每个阶段、每个步骤可验证性的连续性、传递性。

关键词 :秘密分享方案,可验证性,安全多方计算,Shamir门限

Copyright © 2019 by author(s) and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY).

http://creativecommons.org/licenses/by/4.0/

1. 引言

秘密共享是当今生活中广泛使用的技术,主要是对信息进行加密和保护,防止外泄。自Shamir和Blakley [1] [2] 引出秘密共享的问题并给出了非常简单的问题解决方案以来,关于这一主题的研究已经深入。Shamir和Blakley的方案是在没有故障的模型中有效的解决方案。Tompa和Woll [3] 以及McEliece和Sarwate [4] 的方案在存在故障的模型中给出了部分解决方案。近年来,许多学者已经开始研究秘密共享技术,并提出了各种秘密共享方案,其中有中国剩余定理、双线性对技术、签密与消息恢复算法、公钥密码体制等。蒋华等人基于公钥密码体制,对其进行改进,提出了一种双向认证的方案。只要是在申请人,身份验证者和服务器之间的相互身份验证加密 [5]。2014年张柄虹等人提出了一种方案,在该方案中,秘密分发的过程是独立的,并且与参与者的私钥计算分开 [6]。2018年,谷婷提出了一种秘密共享方案 [7]。在该方案中,秘密份额由参与者产生,利用签密与消息恢复算法,参与的所有人都可以查验分发者的份额。

在秘密共享方案飞速发展的下,对于方案的正确性、有效性和安全性变得重要起来,即秘密共享方案的可验证有着十分深远的研究意义。Chor等人 [8] 第一次定义了可验证秘密共享的完整概念,并给出了问题的解决方案。接下来的研究,在各种不同假设下,不同的学者给出了问题的解决方案。只是为了实现可验证性的目标,这些协议偏离了原始解决方案的简单性。它们需要繁重的计算和广泛的零知识证明。此外,为了重建秘密,还需要进行大量计算。大量的研究和实际操作表明,简单的协议是很重要的。Gennaro的方案基于Shamir的秘密共享方案,并增加了额外的低成本结构。这种结构基本上是参与者对持有秘密的公开承诺。

2. 基本知识

本文设计的可验证性秘密共享方案涉及到以下三个知识:① shamir门限秘密共享方案;② 零知识证明 [9] ;③ Pedersen承诺协议 [10]。

Shamir的门限秘密共享方案通过构造多项式,利用多项式进行秘密的分享,本文秘密共享是基于Shamir门限秘密共享方案实现的;本文使用的零知识证明改编自Cramer和Damgar的方案,使其更具有证明的一般性,是本文计算阶段中的重要一环;Pedersen承诺协议是一个满足无条件秘密性的同态承诺协议,作为本文可验证性设计的基本框架。

3. 秘密共享方案及可验证性设计设计

3.1. 秘密共享方案

本文将Gennaro的VSS方案和Pedersen同态承诺方案结合,实现了对份额正确性的验证。该MPC协议将待计算函数表示为加法和乘法组成的有向图,通过进行对应的加法协议和乘法协议来实现计算,其结构如图1所示。该协议可分为初试化阶段,输入阶段,计算阶段和输出阶段。

Figure 1. Structure of the secret sharing scheme

图1. 秘密共享方案结构

初始化阶段:假设协议有n个参与者,分别记作 P 1 , P 2 , , P n ,每个参与者分别对应一个公开身份数 x i Z ( i j x i x j , x 0 = 0 ) ,以及一个秘密 s i Q + , i = 1 , 2 , , n 。n个参与者协商一个大素数p,该素数满足 p = 2 q + 1 ,其中q也是素数,g为 Z p * 的q阶元,h为g生成的子群中的随机元素。上述的 p , g , h 是构造可验证性使用的承诺函数的参数。

输入阶段:每个参与者 P i ( i = 1 , 2 , , n ) 独立随机地选择 2 t + 1 个t次多项式,使用上述多项式分别在有理数域上共享 s i , s i 2 , , s i 2 t , s i 2 t + 1 ,即 f i 1 ( 0 ) = s i , f i 2 ( 0 ) = s i 2 , , f i 2 t + 1 ( 0 ) = s i 2 t + 1

f i 1 ( x ) = s i + a i 1 1 x + + a i 1 t x t f i 2 ( x ) = s i 2 + a i 2 1 x + + a i 2 t x t f i 2 t + 1 ( x ) = s i 2 t + 1 + a i 2 t + 1 1 x + + a i 2 t + 1 t x t (3-1)

其中 s i 为参与者 P i 的秘密。

同样的, P i 生成随机数 r i , c i Q + ,并独立地随机选择两个t次多项式 r i ( x ) , c i ( x ) ,分别在有理数域上分享 r i , c i ,即 r i ( 0 ) = r i , c i ( 0 ) = c i

r i ( x ) = r i + a i 1 x + a i 2 x 2 + + a i t x t c i ( x ) = c i + b i 1 x + b i 2 x 2 + + b i t x t (3-2)

分别使用式(3-1) (3-2)计算 f i 1 ( x j ) , f i 2 ( x j ) , , f i 2 t + 1 ( x j ) , r i ( x j ) , c i ( x j ) ,并将

( f i 1 ( x j ) , f i 2 ( x j ) , , f i 2 t + 1 ( x j ) , r i ( x j ) , c i ( x j ) ) 发送给 P j ,其中 j = 1 , 2 , , n 。同时, P i 将承诺集合 ( A i 1 j , A i 2 j , , A i 2 t + 1 j , A i j ) , i j , j = 1 , 2 , , n ,进行广播,

A i 1 j = g f i 1 ( x j ) h c i ( x j ) mod p A i 2 j = g f i 2 ( x j ) h c i ( x j ) mod p A i 2 t + 1 j = g f i 2 t + 1 ( x j ) h c i ( x j ) mod p A i j = g r i ( x j ) h c i ( x j ) mod p (3-3)

计算阶段:步骤(1):n个参与者约定在式(3-2)中的 r 1 ( x ) , r 2 ( x ) , , r n ( x ) 取定 2 t + 1 个随机多项式,不妨就将这 2 t + 1 个多项式记为 r 1 ( x ) , r 2 ( x ) , , r 2 t + 1 ( x ) ,其对应的 2 t + 1 参与者分别是 P 1 , P 2 , , P 2 t + 1 。每个参与者 P j 计算

g i ( x j ) = r 1 ( x j ) f i 1 ( x j ) + r 2 ( x j ) f i 2 ( x j ) + + r 2 t + 1 ( x j ) f i 2 t + 1 ( x j ) (3-4)

A = ( 1 x 1 x 1 2 x 1 2 t 1 x 2 x 2 2 x 2 2 t 1 x 2 t + 1 x 2 t + 1 2 x 2 t + 1 2 t )

A 1 = ( λ 1 λ 2 λ 3 λ 2 t + 1 )

承诺进行广播。

(3-5)

其中随机选择与承诺相关的t次多项式。

步骤(2):中的每个随机选择n个t次多项式分别用来共享,其中,接着随机选择1个t次多项式用来共享,即。然后计算,并将发送给。承诺集合。其中,当时,有。将承诺集合进行广播,

。 (3-6)

输出阶段:对于每个,计算输出

(3-7)

其中,,广播承诺集合

(3-8)

其中,

重构阶段:每个具有输出。使用拉格朗日插值公式,任意的个参与者都可以恢复

3.2. 可验证性分析

3.2.1. 输入阶段的可验证性

为例,根据式(3-3)所示,有承诺,则根据(3-1)式,可将多项式组写成矩阵乘积的形式

不妨记为:

根据上述多项式,容易得到矩阵V是可逆的,所以可将上式写成:

对于任意的,有

为了方便起见,记,则上式记作

(3-9)

的第m行第k列的值,所以可得,并代入到式(3-9)中,可得

其中,以上所述,将作比较,即可验证自己收到的份额是否和其他参与者收到

份额出自同一组多项式(这里不妨记作VSPS性质),从而来判断自己收到的份额是否有效,即正确性得到检验。

3.2.2. 计算阶段的可验证性

第一步:经过了输入阶段的验证,每个参与方已经收到经过输入阶段VSPS验证的正确份额,以此承诺函数也是经过VSPS验证被证实正确的。利用正确承诺函数并使用前文提到的零知识证明方法,每一个参与者广播的承诺进行比较,来保证正确的秘密份额被使用。

第二步:根据上述第一步,参与者有经过前面检验的,根据式(3-6),可验证性如下:

为例,

1) 当时,即时,即:

所以有,根据的定义,原式可以写成:

所以,根据模的运算性质,和承诺函数集合的形式,上式可以写成

所以,在步骤(1)中,验证正确的承诺函数集合,就可以将的乘积作比较,可以判断函数是否分别用来共享

2) 当时,同理如输入阶段,使用VSPS验证来验证自己收到的份额是否有效。

3.2.3. 输出阶段的可验证性

经过了计算阶段的验证,每个参与方已经收到了经过验证的正确的份额

,和验证正确的承诺

根据式(4-7),并以式(4-8)中的为例,

将参与者的承诺与计算阶段经过验证的承诺作比较,就可以判断对于输出的是否是正确的。

4. 结束语

关于安全多方计算协议的构造一直是密码学领域中的一个难解的问题。本文针对个Shamir门限的组合的秘密共享方案的可验证性进行设计,完成了Shamir门限组合的秘密共享方案的通用可验证性。该项研究有着很重要的意义。现实中攻击者都是理性的,已有很多学者 [11] 采取惩罚措施,约束恶意攻击者来实现安全多方计算中最难实现的公平性。这些利用惩戒措施实现公平性的研究,都是建立在可验证秘密共享方案的基础上,只有尽可能完全的实现可验证性,对不诚实的恶意参与者进行有效的识别,才能使惩戒措施有效的发挥作用。其次,本文的方案追求的是尽可能完整的可验证性,所以在计算上会有些复杂,这也为下一步的研究指明了方向。

基金项目

国家自然科学基金(No.U1603116、No.61672509)。

文章引用

郭涌浩,卫宏儒. N个Shamir门限秘密共享方案组合的通用可验证性设计
Universal Verifiability Design for the Combination of N Shamir Threshold Secret Sharing Schemes[J]. 计算机科学与应用, 2019, 09(12): 2367-2374. https://doi.org/10.12677/CSA.2019.912263

参考文献

  1. 1. Blakley, G.R. (1979) Safeguarding Cryptographic Keys. Proceedings of AFIPS National Computer Conference, Wash-ington DC, 4-7 June 1979, 313-317. https://doi.org/10.1109/MARK.1979.8817296

  2. 2. Shamir, A. (1979) How to Share a Secret. Communications of the ACM, 22, 612-613. https://doi.org/10.1145/359168.359176

  3. 3. Tompa, M. and Woll, H. (1988) How to Share a Secret with Cheaters. Journal of Cryptology, 1, 133-138. https://doi.org/10.1007/BF02252871

  4. 4. McEliece, R.J. and Sarwate, D.V. (1981) On Sharing Secrets and Reed-Solomon Codes. Communications of the ACM, 24, 583-584. https://doi.org/10.1145/358746.358762

  5. 5. 蒋华, 张乐乾, 阮玲玲. 基于公钥密码体质的802.1x双向认证研究[J]. 计算机应用于软件, 2016, 33(2): 290-293.

  6. 6. 张柄虹, 张串绒, 焦和平, 张欣威, 高胜国. 一种基于双线性对的公平可验证多秘密共享方案[J]. 空军工程大学学报(自然科学版), 2014, 15(4): 83-87.

  7. 7. 谷婷. 无可信中心可验证可更新的向量空间秘密共享[J]. 科技与创新, 2018, 99(3): 35-39.

  8. 8. Chor, B., Goldwasser, S., Micali, S. and Awerbuch, B. (1985) Verifiable Secret Sharing and Achieving Simultaneity in the Presence of Faults. Proceeding 26th Annual Symposium on the Foun-dations of Computer Science, Portland, 21-23 October 1985, 383-395. https://doi.org/10.1109/SFCS.1985.64

  9. 9. Gennaro, R. and Rabin, M.O. (1998) Simplified VSS and Fast-Track Multiparty Computations with Applications to Threshold Cryptography. Proceedings of the Seventeenth Annual ACM Symposium on Principles of Distributed Computing, Puerto Vallarta, 28 June-2 July 1998, 101-111. https://doi.org/10.1145/277697.277716

  10. 10. Qiu, G., Wang, H., Wei S.M. and Xiao, G.Z. (2006) Infor-mation-Theoretic Secure Verifiable Secret Sharing over RSA Modulus. Wuhan University Journal of Natural Sciences, 11, 1849-1852. https://doi.org/10.1007/BF02831890

  11. 11. Andrychowicz, M., Dziembowski, S., Malinowski, D., et al. (2014) Secure Multiparty Computations on Bitcoin. Proc of IEEE Symposium on Security and Privacy, San Jose, 18-21 May 2014, 76-84. https://doi.org/10.1109/SP.2014.35

期刊菜单