CN108028751B - 用于移动主动秘密共享的系统、计算机可读介质和方法 - Google Patents

用于移动主动秘密共享的系统、计算机可读介质和方法 Download PDF

Info

Publication number
CN108028751B
CN108028751B CN201680051892.5A CN201680051892A CN108028751B CN 108028751 B CN108028751 B CN 108028751B CN 201680051892 A CN201680051892 A CN 201680051892A CN 108028751 B CN108028751 B CN 108028751B
Authority
CN
China
Prior art keywords
protocol
servers
share
server
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680051892.5A
Other languages
English (en)
Other versions
CN108028751A (zh
Inventor
J·D·兰姆金斯
K·埃尔·德弗拉维
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
HRL Laboratories LLC
Original Assignee
HRL Laboratories LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by HRL Laboratories LLC filed Critical HRL Laboratories LLC
Publication of CN108028751A publication Critical patent/CN108028751A/zh
Application granted granted Critical
Publication of CN108028751B publication Critical patent/CN108028751B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明描述了一种用于移动主动秘密共享的系统、计算机可读介质和方法。第一协议在所述一组服务器中分配秘密数据块,该秘密数据块包括数据共享份额。各服务器保持对秘密数据块进行编码的一个数据共享份额。第二协议定期刷新数据共享份额,使得各服务器保持新数据共享份额,所述新数据共享份额独立于之前的数据共享份额。第三协议揭示秘密数据块。定期擦除数据共享份额,以针对攻击者保持安全。第二协议针对攻击者提供统计安全或非统计安全。

Description

用于移动主动秘密共享的系统、计算机可读介质和方法
相关申请的交叉引用
这是2015年10月29日在美国提交的、标题为“An Information TheoreticallySecure Protocol for Mobile Proactive Secret Sharing with Near-OptimalResilience”的62/248093非临时专利申请,在此以引用的方式将该申请的全文并入。
技术领域
本发明涉及一种秘密共享系统,并且更具体地,涉及一种提供非统计安全的秘密共享系统。
背景技术
秘密共享是在随机数量的服务器中分配秘密的过程。秘密共享中的关注点是可能破坏固定部分的服务器的攻击者的可能性。在攻击者破坏服务器时,它得知在该服务器上存储的所有信息。攻击者可能迫使破坏的服务器任意表现,而不管协议如何。由此,当务之急是实施安全秘密共享协议。
第5号和第14号参考文献书目(参见所并入参考文献书目的列表)的秘密共享方案是非移动的(即,它们不允许保持秘密的一组服务器变化,如本发明这样)。第9号参考文献书目中所描述的方案仅对于被动攻击者起作用。换言之,它仅在被破坏的服务器遵守协议时起作用。
第16号、第17号以及第18号参考文献书目的方案不具有最佳效率。第17号和第18号参考文献书目具有通信复杂度O(exp(n)),并且第16号参考文献书目具有通信复杂度O(n3)。在针对主动攻击者是安全的以上所列出的MPSS协议中,最佳的通信复杂度是O(n3)每秘密(其中,n为服务器的数量)。在此以引用的方式并入为仿佛在这里完全阐述的、美国第14/449,115号申请中所描述的协议具有通信复杂度O(n2)每秘密。
由此,存在对一种以比当前系统更低的通信复杂度提供非统计安全的、具有移动主动秘密共享(MPSS)功能的系统的持续需要。
发明内容
本发明涉及一种秘密共享系统,并且更具体地,涉及一种提供非统计安全的秘密共享系统。系统包括一个或更多个处理器和存储器,该存储器具有指令,使得在执行指令时,一个或更多个处理器执行多个操作。初始化第一协议,以在一组服务器中分配秘密数据块,该一组服务器包括同步网络的n个服务器,其中,秘密数据块包括多个数据共享份额(shares of data),其中,一组服务器中的各服务器保持对秘密数据块进行编码的一个数据共享份额,并且其中,所述多个数据共享份额经由安全已认证广播信道被电子地发送。初始化至少一个第二协议,以防御尝试破坏一组服务器的攻击者,其中,在第二协议期间,一组服务器定期刷新其多个数据共享份额,使得各服务器保持新数据共享份额,所述新数据共享份额独立于之前的数据共享份额。第三协议揭示秘密数据块。各服务器定期擦除多个数据共享份额,以针对攻击者保持安全。至少一个第二协议针对攻击者提供统计安全或非统计安全。
在另一个方面中,n可以在各第二协议处增大或减小因子二。
在另一个方面中,破坏阈值对于统计安全是1/2-∈,其中,∈是任意正常数,并且其中,假如攻击者破坏不多于一组服务器的1/2-∈部分,那么系统维持统计安全。
在另一个方面中,破坏阈值对于非统计安全是1/3-∈,其中,∈是任意正常数,并且其中,假如攻击者破坏不多于一组服务器的1/3-∈部分,那么系统维持非统计安全。
在另一个方面中,如果攻击者从多个数据共享份额捕获一部分数据,那么所述一部分数据在给定时间之后到期,使得到期的一部分数据不向攻击者揭示与秘密数据块有关的任何信息。
最后,本发明还包括计算机程序产品和计算机实现的方法。计算机程序产品包括在非暂时性计算机可读介质上存储的计算机可执行指令,所述计算机可执行指令可由具有一个或更多个处理器的计算机执行,使得在执行指令时,一个或更多个处理器执行这里所列出的操作。另选地,计算机实施的方法包括使得计算机执行这种指令并执行产生的操作。
附图说明
本发明的目的、特征以及优点将从本发明的各种方面的以下具体实施方式连同对以下附图的参照而明显,附图中:
图1是描绘了根据本公开的一些实施方式的移动主动秘密共享系统的部件的框图;
图2是根据本公开的一些实施方式的计算机程序产品的例示;
图3是例示了根据本公开的一些实施方式的协议的集合的流程图;以及
图4是例示了用于根据本发明的一些实施方式的协议中的符号的表。
具体实施方式
本发明涉及一种秘密共享系统,并且更具体地,涉及一种提供非统计安全的秘密共享系统。以下描述被提出为使得本领域普通技术人员能够进行并使用本发明,并且将本发明并入在特定应用的背景中。各种修改以及在不同应用中的各种用途将对本领域技术人员容易地明显,并且这里所定义的一般原理可以应用于宽范围的方面。由此,本发明不旨在限于这里提出的方面,而是符合与这里所公开的原理和新型特征一致的最宽范围。
在以下详细描述中,为了提供本发明的更彻底理解,阐述了大量具体细节。然而,将对本领域技术人员显而易见的是,本发明可以在不必限于这些具体细节的情况下实践。在其他情况下,为了避免使本发明模糊,以框图形式而不是详细地示出公知结构和装置。
读者的注意力被引导到与本说明书同时提交的所有论文和文献上,所述论文和文献与本说明书一起对公众审查开放,并且在此以引用的方式将所有这种论文和文献的内容并入。在本说明书中公开的所有特征(包括任何所附权利要求、摘要以及附图)可由用于相同、等效或类似目的的另选特征来替换,除非另外明确陈述。由此,除非另外明确陈述,所公开的各特征仅是通用的一系列等效或类似特征的一个示例。
此外,未明确陈述用于执行指定功能的“装置”或用于执行具体功能的“步骤”的权利要求中的任何元素不被解释为如在35U.S.C第112节第6段中执行的“装置”或“步骤”条款。具体地,这里权利要求中“…的步骤”或“…的动作”的使用不旨在调用35U.S.C第112节第6段中的规定。
在详细描述本发明之前,首先提供所引用参考书目的列表。接着,提供本发明的各种主要方面的描述。最后,提供本发明的各种实施方式的具体细节,以给出具体方面的理解。
(1)所并入参考文献书目的列表
贯穿本申请并入并列举以下参考书目。为了清晰和方便起见,参考书目在这里被列出为读者的中心资源。以下参考书目在此好像被完全陈述的以引用的方式并入。参考书目通过如下参考对应的参考文献书目号来列举在申请中:
1.Aho,A.V.,Hopcroft,J.E.,&Ullman,J.D.(1974).The Design and Analysisof Computer Algorithms.Addison-Welsey,299-300.
2.Beerliova-Trubiniova,Z.&Hirt,M(2008).Perfectly-secure mpc withlinear communication complexity.TCC,213-230.
3.Berlekamp,E.R.(1984).Algebraic Coding Theory.Aegean Park Press,Chapter 7.
4.Bracha.G.(1987).An O(log n)expected rounds randomized byzantinegenerals protocol.J.ACM,34(4),910-920.
5.Cachin,C.,Kursawe,K.,Lysyanskaya,A.,&Strobl,R.(2002).Asynchronousverifiable secret sharing and proactive cryptosystems.ACM Conference onComputer and Communications Security,88-97.
6.Damgard,I.&Nielsen,J.B.(2007).Scalable and unconditionally securemultiparty computation.CRYPTO,572-590.
7.Damgard,I.,Ishai,Y.,Kroigaard,M.,Nielsen,J.B.,&Smith,A.(2008).Scalable multiparty computation with nearly optimal work andresilience.CRYPTO,241-261.
8.Damgard,I.,Ishai,Y.,&Kroigaard,M.(2010).Perfectly secure multipartycomputation and the computational overhead of cryptography.EUROCRYPT,445-465.
9.Desmedt,Y.&Jajodia.S.(1997).Redistributing secret shares to newaccess structures and its applications.Technical Report ISSE TR-97-01,GeorgeMason University.
10.Fischer,M.J.&Lynch,N.A.(1982).A lower bound for the time to assureinteractive consistency.Inf.Process.Lett.,14(4),183-186.
11.Gao,S.(2002).A new algorithm for decoding reed-solomoncodes.Communications,Information and Network security,Kluwer,55-68.
12.Garay,J.A.&Moses,Y.(1993).Fully polynomial byzantine agreement int+1 rounds.STOC,31-41.
13.Goldreich,O.(2009).Foundations of Cryptography:Volume 2,BasicApplications.Cambridge University Press,Chapter 7.
14.Herzberg,A.,Jarecki,S.,Krawczyk.H.,&Yung.M.(1995).Proactivesecrete sharing or:How to cope with perpetual leakage.CRYPTO,339-352.
15.Rabin,T.&Ben-Or,M.(1989年).Verifiable secret sharing andmultiparty protocols with honest majority.Proceeding of the twenty-firstannual ACM symposium on Theory of computing.STOC’89,73-85.
16.Schultz,D.,(2007).Mobile Proactive Secret Sharing.PhD thesis,Massachusetts Institute of Technology.
17.Wong,T.M.,Wang.C.,&Wing,J.M.(2002).Verifiable secretredistribution for archive system.IEEE Security in Storage Workshop,94-106.
18.Zhou,L.,Schneider.F.B.,&van Renesse,R.(2005).Apss:proactive secretsharing in asynchronous systems.ACM Trans.Inf.Syst.Secur.,8(3),259-286.
(2)主要方面
本发明的各种实施方式包括三个“主要”方面。第一方面是移动主动秘密共享系统。系统通常为运行软件的计算机系统的形式或“硬编码”指令集的形式。该系统可以并入到提供不同功能的多种装置中。第二主要方面是通常为使用数据处理系统(计算机)运行的软件形式的方法。第三主要方面为计算机程序产品。计算机程序产品通常表示存储在非暂时性计算机可读介质(诸如,光存储装置(例如,光盘(CD)或数字通用光盘(DVD))或磁存储装置(诸如,软盘或磁带))上的计算机可读指令。计算机可读介质的其他非限制性示例包括硬盘、只读存储器(ROM)以及闪型存储器。以下将更详细地描述这些方面。
图1中提供了描绘本发明的系统(即,计算机系统100)的示例的框图。计算机系统100被配置为执行与程序或算法相关联的计算、处理、操作和/或功能。在一个方面中,这里讨论的特定处理和步骤被实现为一系列指令(例如,软件程序),所述指令驻留在计算机可读存储单元内,并且由计算机系统100的一个或更多个处理器来执行。在被执行时,指令使得计算机系统100执行诸如这里所述的具体动作并展示具体行为。
计算机系统100可以包括被配置为传达信息的地址/数据总线102。另外,诸如处理器104(或多个处理器)的一个或更多个数据处理单元与地址/数据总线102联接。处理器104被配置为处理信息和指令。在一个方面中,处理器104是微处理器。另选地,处理器104可以为不同类型的处理器(诸如,并行处理器、专用集成电路(ASIC)、可编程逻辑阵列(PLA)、复杂可编程逻辑装置(CPLD)或现场可编程门阵列(FPGA))。
计算机系统100被配置为使用一个或更多个数据存储单元。计算机系统100可以包括与地址/数据总线102联接的易失性存储单元106(例如,随机存取存储器(“RAM”)、静态RAM、动态RAM等),其中,易失性存储单元106被配置为存储用于处理器104的信息和指令。计算机系统100还可以包括与地址/数据总线102联接的非易失性存储单元108(例如,只读存储器(“ROM”)、可编程ROM(“PROM”)、可擦可编程ROM(“EPROM”)、电可擦可编程ROM(“EEPROM”)、闪存等),其中,非易失性存储单元108被配置为存储用于处理器104的静态信息和指令。另选地,计算机系统100可以执行从(诸如,“云”计算中的)在线数据存储单元获得的指令。在一个方面中,计算机系统100还可以包括与地址/数据总线102联接的一个或更多个接口(诸如,接口110)。一个或更多个接口被配置为使得计算机系统100能够与其他电子装置和计算机系统接口连接。由一个或更多个接口实现的通信接口可以包括有线(例如,串行电缆、调制解调器、网络适配器等)通信技术和/或无线(例如,无线调制解调器、无线网络适配器等)通信技术。
在一个方面中,计算机系统100可以包括与地址/数据总线102联接的输入装置112,其中,输入装置112被配置为向处理器100传达信息和命令选择。根据一个方面,输入装置112为可以包括字母数字和/或功能键的字母数字输入装置(诸如,键盘)。另选地,输入装置112可以为除了字母数字输入装置之外的输入装置。在一个方面中,计算机系统100可以包括与地址/数据总线102联接的光标控制装置114,其中,光标控制装置114被配置为向处理器100传达用户输入信息和/或命令选择。在一个方面中,光标控制装置114使用诸如鼠标、追踪球、追踪垫、光学追踪装置或触摸屏的装置来实施。尽管有上述情况,但在一个方面中,光标控制装置114经由来自输入装置112的输入(诸如,响应于与输入装置112相关联的特定键和键序列命令的使用)来引导和/或激活。在另选方面中,光标控制装置114被配置为由语音命令来引导或指导。
在一个方面中,计算机系统100还可以包括与地址/数据总线102联接的一个或更多个可选的计算机可用数据存储装置(诸如,存储装置116)。存储装置116被配置为存储信息和/或计算机可执行指令。在一个方面中,存储装置116是诸如磁或光盘驱动器(例如,硬盘驱动器(“HDD”)、软盘、光盘只读存储器(“CD-ROM”)、数字通用光盘(“DVD”))的存储装置。依照一个方面,显示装置118与地址/数据总线102联接,其中,显示装置118被配置为显示视频和/或图形。在一个方面中,显示装置118可以包括阴极射线管(“CRT”)、液晶显示器(“LCD”)、场发射显示器(“FED”)、等离子体显示器或适于显示可为用户识别的视频和/或图形图像以及字母数字字符的任何其他显示装置。
这里提出的计算机系统100是根据一个方面的示例计算环境。然而,计算机系统100的非限制性示例不严格限于计算机系统。例如,一个方面提供了计算机系统100表示可以根据这里描述的各种方面使用的一种数据处理分析。此外,还可以实施其他计算系统。实际上,本技术的精神和范围不限于任何单个数据处理环境。由此,在一个方面中,本技术的各种方面的一个或更多个操作使用由计算机执行的计算机可执行指令(诸如,程序模块)来控制或实施。在一个实施方案中,这种程序模块包括被配置为执行特定任务或实施特定抽象数据类型的例程、程序、对象、分量和/或数据结构。另外,一个方面提供了本技术的一个或更多个方面通过使用一个或更多个分布式计算环境(诸如,任务由借助通信网络链接的远程处理装置来执行的环境或诸如,各种程序模块位于包括存储储存装置的本地和远程计算机存储介质中的环境)来实施。
图2中描绘了具体实施本发明的计算机程序产品(即,存储装置)的例示图。计算机程序产品被描绘为软盘200或光盘202(诸如,CD或DVD)。然而,如之前提及的,计算机程序产品通常表示存储在任何可兼容非暂时性计算机可读介质上的计算机可读指令。如关于本发明使用的术语“指令”通常指示在计算机上执行的一组运算,并且可以表示整个程序或独立、单独的软件模块。“指令”的非限制性示例包括计算机程序代码(源码或目标码)和“硬编码”电子器件(即,被编码到计算机芯片中的计算机运算)。“指令”被存储在任何非暂时性计算机可读介质上(诸如,在计算机的存储器中或在软盘、CD-ROM以及闪存盘上)。在任意一种情况下,指令被编码在非暂时性计算机可读介质上。
(3)本发明的各种实施方式的具体细节
(3.1)移动主动秘密共享(MPSS)概述
将如何实施MPSS的高层描述如下。要存储的数据设置在特定尺寸的块(稍后定义)中。秘密数据块使用RobustShare协议分配在一组服务器中。各服务器保持对秘密块进行编码的数据共享份额。服务器中的一些可能被恶意方(被称为攻击者)破坏。虽然实际上可以存在多于一个破坏参与者的恶意方,但人们可以在不损失一般性的情况下假定存在一个恶意方。
为了防御攻击者,服务器定期“刷新”它们的共享份额,使得各服务器保持独立于之前共享份额的同一数据块的新共享份额。刷新使用以下详细描述的Block-Redistribute协议来实施。参与协议的一组服务器和服务器的数量n可以在各重新分配时变化。服务器可以简单地存储它们的数据共享份额,或者它们可以对它们的共享份额执行一些线性操作。一旦需要访问数据,则服务器运行Reco协议(以下描述),以揭示数据。图3中示出了例示该过程的图。
(3.2)技术初步
假定在尺寸为n的参与者集合P中存储的某一有限元F中存在W个秘密,则秘密如下存储:固定
Figure GDA0002653354790000081
的某一生成器ζ。各批l>1个秘密被存储在次数d的多项式H中(其中,d的值取决于如以下所描述的安全模型)。多项式H被选择为使得H(ζj)是第j个秘密(j∈[l]),并且H(ζl+j)对于jd∈[d-l+1]是随机的。符号[X]用于表示集合{1,...,X},[X]x[Y]用于表示两个集合的笛卡尔(Cartesian)积。[A,B]表示整数集[A,...,B]。各参与者Pi∈P作为它们的秘密的共享份额给予H(αi)。在实施方式中,第7号参考文献书目所描述的RobustShare协议用于执行共享。在要打开秘密时,所有参与者将它们的共享份额发送到将共享份额并在多项式上以重构秘密的某一方。第7号参考文献书目所描述的Reco协议用于执行秘密打开。假定具有专用点对点信道和专用广播信道的同步网络模型。比如在第13号参考文献书目的章节7中定义了这些术语。
这里所描述的唯一重新分配协议将秘密重新分配给尺寸为n′的新的参与者集合P′。P′中的参与者由∈[n′]的P′j来表示。参与者P′j∈P′的共享份额是H(βj)。根据本公开的实施方式的系统需要对于各i、j,αi≠βj(并且对于任意∈[l],没有αi或βj等于ζk)。因为标记t、l、d用于
Figure GDA0002653354790000091
所以n′、i′以及d′用于
Figure GDA0002653354790000092
如图3所示,根据本公开的实施方式的系统包含实施移动主动秘密共享的许多协议。要存储的数据设置在特定尺寸的块中。秘密数据块(例如,S1至St,300)使用RobustShare协议304被分配在一组服务器中。该一组服务器中的各服务器保持对秘密块进行编码的一个数据共享份额。比如,阶段k期间的服务器Pi的共享份额是
Figure GDA0002653354790000093
一组服务器中的一些可能被恶意方(被称为攻击者)破坏。虽然实际上可以存在多于一个破坏参与者的恶意方,但为了本申请的目的,假定存在一个恶意方。
为了防御攻击者,服务器定期“刷新”它们的共享份额,使得各服务器保持独立于之前共享份额的同一数据块的新共享份额。刷新使用Block-Redistribute协议来实施。如图3所示,协议可以包括Block-Redistribute协议306的第一调用和Block-Redistribute协议308的第二调用(或Block-Redistribute协议的另外连续调用)。参与协议的一组服务器和服务器的数量n可以在各重新分配时变化。一组服务器可以简单地存储它们的数据共享份额,或者它们可以对它们的共享份额执行一些线性操作。一旦需要访问数据,则一组服务器运行Reco(即,重构)协议310,以揭示秘密数据集312。
一组服务器
Figure GDA0002653354790000094
存储在某一有限域
Figure GDA0002653354790000095
中表示的数据。一组服务器
Figure GDA0002653354790000096
可以在整个协议的过程期间变化。将定期重新分配数据共享份额。连续重新分配之间(例如,在第一Block-Redistribute协议306与第二Block-Redistribute协议308之间)的时段被称为阶段(例如,由元素314表示的阶段0、由元素316表示的阶段1、由元素318表示的阶段D)。另外,在第一Block-Redistribute协议之前的时段是阶段(例如,阶段0,314),并且在最后重新分配之后的时段是阶段(例如,阶段D,318)。阶段被定义为使得重新分配(例如,第一Block-Redistribute协议306)本身被认为处于重新分配之前和之后的阶段这两者中。参照图3,第一Block-Redistribute协议306重新分配处于阶段0(元素314)和阶段1(元素316)这两者中。
重新分配协议以
Figure GDA0002653354790000097
Figure GDA0002653354790000098
不包含共同的服务器的这种方式来书写。然而,协议可以被改编为使得集合可以如下交叠:给予
Figure GDA0002653354790000099
中的各服务器Pi新身份
Figure GDA00026533547900000910
真实服务器在重新分配期间起到两个身份的作用。一旦,重新分配协议完成,则真实服务器删除与Pi相关联的所有数据,然后继续进行为充当P′j
在这里所描述的系统中,提供构造MPSS方案所需的重新分配协议的完美安全(非统计安全)版本和统计安全版本。对于完美安全协议,可以使得阈值任意接近n/3(对于统计安全为n/2)。以下描述用于两个版本的阈值、批尺寸以及多项式的次数。
在完美安全(非统计安全)协议中,固定三个非零常数(η,θ,ι),以满足η+θ+ι<1/3。批尺寸l是不大于
Figure GDA0002653354790000101
的2的最高幂,阈值是t=[θn],并且共享秘密的多项式的次数是
Figure GDA0002653354790000102
参与者的数量在各重新分配时可以增加或减少多于因子2。此外,参与者的数量不能减少如此多以致旧组中的破坏参与者可以插值新多项式(即,d′-l′≥t),并且参与者的数量不能增加如此多以致旧组中的未破坏参与者在破坏共享份额存在的情况下不能插值新多项式(即,d′+2t+1≤n)。
在统计安全协议中,初始拾取低阈值,然后稍后使用在第6号专利文献书目中描述的参与者虚拟化技术提高该低阈值。章节(3.4)中的协议被写为具有更低阈值的完美安全协议,然后使用统计安全虚拟化(参见章节(3.5))提高该阈值。对于初始的低阈值,批尺寸l被选择为不大于n/4的2的最高幂,阈值为i<n/16,并且多项式的次数为d=l+2t-1。在统计安全版本中,假定t将在各重新分配时增大或减小不多于2的因子(即,t/2≤t′≤t)。
根据本公开的实施方式的重新分配协议需要使用超可逆矩阵(参见用于超可逆矩阵的描述的第2号参考文献书目)。超可逆矩阵是使得通过去除行和列形成的任意正方形子矩阵可逆。第2号参考文献书目中示出了可以如下构造超可逆矩阵。拾取2a个不同的域元素
Figure GDA0002653354790000103
并且使M为矩阵,使得如果(y1,...,ya)T=M(x1,...,xb)T,那么点(θ1,y1)、…、(θa,ya)位于次数≤b-1的多项式上,该多项式对于各j∈[a]在φj时评估为xj。换言之,M将具有x坐标θ1,...,θa的点插值在多项式上(假设具有x坐标φ1,...,φb的点在该多项式上。然后,M的任何子矩阵是超可逆的。对于这里所描述的系统,M是具有n行和n-2t列的众所周知超可逆矩阵。图4示出了例示了如用于根据本公开的实施方式中的协议中的符号的表400。
(3.3)基本协议
贯穿协议,伯利坎普-韦尔奇(Berlekamp-Welch)算法用于在由攻击者引入的破坏共享份额存在时插值多项式。如在第6号参考文献书目中注释的,如果M如上所述且y=Mx,那么人们还可以在攻击者破坏y的不多于i个坐标时使用伯利坎普-韦尔奇从y插值x。
为了执行诸如秘密共享、生成随机共享以及打开秘密的基本任务,使用来自第7号参考文献书目的三个协议:RobustShare协议、RanDouSha协议以及Reco协议。对于这些协议中的每一个,计算复杂度是通信复杂度乘以log3n因子。这些协议中的每一个如下在第7号参考文献书目中被证明是安全的:
RobustShare:允许一组经销商(dealer)可证实地共享块中的秘密。共享W个秘密的通信复杂度是O(W+n3)。
RanDouSha:生成秘密块的随机共享。生成W个随机秘密的通信复杂度是O(W+n3)。
Reco:向服务器揭示秘密块。揭示W个秘密的通信复杂度是O(W)。
(3.4)重新分配
以下描述了Block-Redistribute协议,该协议用于将在尺寸为n的一组服务器
Figure GDA0002653354790000111
中块共享的W个秘密重新分配给尺寸为n′的新的一组服务器
Figure GDA0002653354790000112
为了注释简单起见,协议假定W是4l2(n-3t)的倍数。如果W不是4l2(n-3t)的倍数,则人们可以生成块的随机共享,以使得W是4l2(n-3t)的倍数。使用在第7号参考文献书目中描述的RanDouSha协议,这可以利用poly(n)通信复杂度来实现,并且因为这仅将poly(n)数量的数据添加到W,所以这不影响重新分配W个秘密的整体通信复杂度。
因为秘密的数量是4l2(n-3t)的倍数,并且因为秘密被存储在尺寸为l的块中,所以输入到协议的多项式/共享的数量是4l(n-3t)的倍数。多项式设置在尺寸为l的组中,然后这些组设置成“塔(tower)”,其中,各塔包含n-3t个组。塔的总数由B来表示,使得W=l2(n-3t)B。这意味着输入多项式的数量是l(n-3t)B。这些多项式被编索引为
Figure GDA0002653354790000113
其中,a表示
Figure GDA0002653354790000114
在组中的位置,k表示
Figure GDA0002653354790000115
在塔内的组号,并且m表示
Figure GDA0002653354790000116
的塔号。
如果服务器组的尺寸正变化(即,n≠n′且t≠t′),那么在次数d的多项式中存储的秘密将必须重新被存储在次数d′的多项式中。服务器组尺寸的变化还可能引起块尺寸l的变化。记住l总是2的幂,这意味着l′≠l,那么l′为l的两倍或一半。因此,存在需要考虑的总共四种情形:n增大且l保持相同;n增大且l增大;n减小且l保持相同;以及n减小且l减小。协议必须能够在这四种情况中的任何一种下重新存储多项式,并且根据本公开的实施方式的Block-Redistribute协议的第一步骤描述如何进行这一点。
协议对于以下的步骤4.3需要RanDouSha协议的稍微更改版本。在第7号参考文献书目中,RanDouSha协议访问子协议SemiRobustShare,并且在该协议中,步骤2(a)被更改为使得服务器检查多项式在针对j=l,...,l的ζj评估为0,并且在服务器不检查时广播指控。用于该更改的协议的安全证明与第7号参考文献书目中相同。在调用Block-Redistribute协议时,假定服务器具有知道新的一组服务器将为什么的某一手段。存在确保这一点的许多方法。它们可以具有在协议执行之前固定的、将添加哪些服务器的调度安排,它们可以通过彼此通信决定,或者可以存在可以提供规范的某一信任的第三方(诸如,网络管理员)。这最终将取决于该协议的预期应用。
(3.4.1)Block-Redistribute
Figure GDA0002653354790000121
假定秘密已经以尺寸为l的块(如上所述)被存储在多项式
Figure GDA0002653354790000122
中。
(1)改变阈值
如果t≠t′,那么执行步骤1.1至1.4中的一个。
(1.1)降低阈值,批尺寸保持相同
如果t′<t且l′=l,那么执行以下步骤。
(a)服务器调用RanDouSha来生成次数≤d的掩蔽多项式(masking polynomial)
Figure GDA0002653354790000123
其中,k=[n-3t+,n-2t](其中,a和m范围包括与之前相同的值)。
(b)由下式定义
Figure GDA0002653354790000124
(其中,k∈[n]):
Figure GDA0002653354790000125
各参与者局部地计算这些多项式的它们的共享份额,并且将各
Figure GDA0002653354790000126
的它的共享份额发送到服务器Pj
(c)各Pi使用伯利坎普-韦尔奇来插值在之前步骤中接收的
Figure GDA0002653354790000127
的共享份额。
(d)各Pi计算在评估点ζ1至ζd′+1上与
Figure GDA0002653354790000128
一致的次数≤d′的唯一多项式
Figure GDA0002653354790000131
(的共享份额)。
(e)各Pi将各
Figure GDA0002653354790000132
发送到各Pj
(f)如果
Figure GDA0002653354790000133
被定义为在评估点ζ1至ζl+t′上与
Figure GDA0002653354790000134
一致的次数≤d′的唯一多项式,那么清楚的是
Figure GDA0002653354790000135
因此,各参与者使用伯利坎普-韦尔奇来从在之前步骤中接收的
Figure GDA0002653354790000136
的共享份额插值
Figure GDA0002653354790000137
的它们的共享份额。
(g)为了简化协议的剩余部分中的注释,现在对于(a,k,m)∈[l]×[n-3t]×[B]设置
Figure GDA0002653354790000138
(1.2)降低阈值,块尺寸减小
如果t′<t且l′<l,那么执行以下步骤。因为假定服务器的数量减少不多于因子2,所以知道l′=l/2。
(a)参与者调用RanDouSha来生成次数≤d的掩蔽多项式
Figure GDA0002653354790000139
其中,k∈[n-3t+1,n-2t]且a∈[l],以及次数≤d的随机多项式
Figure GDA00026533547900001310
其中,k∈[n-2t]且a∈[2l](其中,m∈[B])。
(b)由下式定义
Figure GDA00026533547900001311
(其中,k∈[n]),
Figure GDA00026533547900001312
并且类似地定义
Figure GDA00026533547900001313
(其中,k=1,...,n)。各参与者局部地计算这些多项式的它们的共享份额,并且将各
Figure GDA00026533547900001314
Figure GDA00026533547900001315
的它的共享份额发送到参与者Pj
(c)各Pi使用伯利坎普-韦尔奇来插值在之前步骤中接收的
Figure GDA00026533547900001316
Figure GDA00026533547900001317
的共享份额。
(d)各Pi计算满足以下内容的次数≤d′的唯一多项式
Figure GDA00026533547900001318
其中,a∈[l]且m∈[B])(的共享份额):
Figure GDA00026533547900001319
其中,j∈[l′];
Figure GDA0002653354790000141
其中,j∈[d′-l′+1];
Figure GDA0002653354790000142
其中,j∈[l′];
Figure GDA0002653354790000143
其中,j∈[d′-l′+1]。
(e)各Pi将各
Figure GDA0002653354790000144
发送到各Pj
(f)如果
Figure GDA0002653354790000145
被定义为满足以下内容的次数≤d′的唯一多项式:
Figure GDA0002653354790000146
其中,j∈[l′];
Figure GDA0002653354790000147
其中,j∈[d′-l′+1];
Figure GDA0002653354790000148
其中,j∈[l′];
Figure GDA0002653354790000149
其中,j∈[d′-l′+1],
那么清楚的是
Figure GDA00026533547900001410
因此,各参与者使用伯利坎普-韦尔奇来从在之前步骤中接收的
Figure GDA00026533547900001411
的共享份额插值
Figure GDA00026533547900001412
的它们的共享份额。
(g)通过向多项式
Figure GDA00026533547900001413
分配向量(m,k,a)并使用这些三维向量上的词典顺序(lexicographical order)引起多项式上的排序来将词典顺序放置在多项式上。类似地,在多项式
Figure GDA00026533547900001414
上放置词典顺序。为了简化贯穿协议剩余部分的注释,
Figure GDA00026533547900001415
以映射保存词典顺序的这种方式来重新标记。然后重新标记B←4B。
(1.3)提高阈值,批尺寸保持相同
如果t′>t且l′=l,那么执行以下步骤。
(a)参与者调用RanDouSha来生成次数≤d的掩蔽多项式
Figure GDA00026533547900001416
其中,k∈[n-3t+1,n-2t](其中,a和m范围包括与之前相同的值)。
(b)参与者调用RanDouSha来生成次数≤d′的随机多项式
Figure GDA00026533547900001417
其中,k∈[n-2t](其中,a和m范围包括与之前相同的值)。
(c)由
Figure GDA0002653354790000151
定义
Figure GDA0002653354790000152
(其中,k∈[n]),并且类似地定义
Figure GDA0002653354790000153
(其中,k∈[n])。各参与者局部地计算这些多项式的它们的共享份额,并且将各
Figure GDA0002653354790000154
Figure GDA0002653354790000155
的它的共享份额发送到参与者Pj。。
(d)各Pi使用伯利坎普-韦尔奇来从在之前步骤中接收的共享份额插值
Figure GDA0002653354790000156
Figure GDA0002653354790000157
(e)各Pi计算在点ζ1至ζl上与
Figure GDA0002653354790000158
一致且在点ζ1+1至ζd′+1上与
Figure GDA0002653354790000159
一致的次数≤d′的唯一多项式
Figure GDA00026533547900001510
(的共享份额)。
(f)各Pi将各
Figure GDA00026533547900001511
发送到各Pj
(g)如果
Figure GDA00026533547900001512
被定义为在点ζ1至ζl上与
Figure GDA00026533547900001513
一致且在点ζl+1至ζl+2t′上与
Figure GDA00026533547900001514
一致的次数≤d′的唯一多项式,那么清楚的是
Figure GDA00026533547900001515
因此,各参与者使用伯利坎普-韦尔奇来从在之前步骤中接收的
Figure GDA00026533547900001516
的共享份额插值
Figure GDA00026533547900001517
的它们的共享份额。
(h)为了简化协议的剩余部分中的注释,现在对于a∈[l]、k∈=[n-3t]以及m∈[B]重新标记
Figure GDA00026533547900001518
(1.4)提高阈值,批尺寸增大
如果t′>t且l′>t,那么执行以下步骤。因为假定服务器的数量增大不多于因子2,所以知道l′=2l。
(a)参与者调用RanDouSha来生成次数≤d的掩蔽多项式
Figure GDA00026533547900001519
其中,k∈[n-3t+1,n-2t](其中,a和m范围包括与之前相同的值)。
(b)服务器调用RanDouSha来生成次数≤d′的随机多项式
Figure GDA00026533547900001520
其中,k∈[n-2t]、a∈[l/2]且m∈[B])。
(c)由下式定义
Figure GDA00026533547900001521
(其中,k∈[n]),
Figure GDA00026533547900001522
并且类似地定义
Figure GDA00026533547900001523
(其中,k∈[n])。各参与者局部地计算这些多项式的它们的共享份额,并且将各
Figure GDA0002653354790000161
Figure GDA0002653354790000162
的它的共享份额发送到参与者Pj
(d)各Pi使用伯利坎普-韦尔奇来插值在之前步骤中接收的
Figure GDA0002653354790000163
Figure GDA0002653354790000164
的共享份额。
(e)各Pi计算满足以下内容的次数≤d′的唯一多项式
Figure GDA0002653354790000165
(其中,a∈l/2且m∈[B])(的共享份额):
Figure GDA00026533547900001620
其中,j∈[l];
Figure GDA0002653354790000166
其中,j∈[l];
Figure GDA0002653354790000167
其中,j∈[d′-l′+1]。
(f)各Pi将各
Figure GDA0002653354790000168
发送到各Pj
(g)如果
Figure GDA0002653354790000169
被定义为满足以下内容的次数≤d′的唯一多项式:
Figure GDA00026533547900001610
其中,j∈[l];
Figure GDA00026533547900001611
其中,j∈[l];
Figure GDA00026533547900001612
其中,j∈[d′-l′+1],
那么清楚的是
Figure GDA00026533547900001613
因此,各参与者使用伯利坎普-韦尔奇来从在之前步骤中接收的
Figure GDA00026533547900001614
的共享份额插值
Figure GDA00026533547900001615
的它们的共享份额。
(h)通过向多项式
Figure GDA00026533547900001616
分配向量(m,k,a)并使用这些三维向量上的词典顺序引起多项式上的排序来将词典顺序放置在多项式上。类似地,在多项式
Figure GDA00026533547900001617
上放置词典顺序。为了简化贯穿协议剩余部分的注释,
Figure GDA00026533547900001618
以映射保存词典顺序的这种方式来重新标记。然后重新标记B←B/4。
(2)双共享分批秘密
(2.1)参与者通过调用RanDouSha生成ltB随机共享的共享。这些随机秘密由
Figure GDA00026533547900001619
来表示,其中,a和m范围包括与之前相同的值,k∈[n-3t+1,n-2t]。
(2.2)各参与者使用RobustShare批共享各
Figure GDA0002653354790000171
的它的所有共享份额。即,Pi选择次数≤d′的多项式U(i,1,m),...,U(i,(n-2t),m),使得
Figure GDA0002653354790000172
(其中,j∈[l]),并且U(i,k,m)l′+j)对于j∈[d′-l′+1]是随机的,并且经由RobustShare共享它们。
(3)验证正确性
(3.1)由下式定义
Figure GDA0002653354790000174
Figure GDA0002653354790000175
(其中,k∈[n])
Figure GDA0002653354790000176
Figure GDA0002653354790000177
Figure GDA0002653354790000178
中的各参与者局部地计算这些多项式的它们的共享份额。
(3.2)
Figure GDA0002653354790000179
中的各参与者对于各a、i以及m将所有它们的
Figure GDA00026533547900001710
Figure GDA00026533547900001711
的共享份额发送到参与者Pk
(3.3)各Pk对各
Figure GDA00026533547900001712
的共享份额使用伯利坎普-韦尔奇,以插值
Figure GDA00026533547900001713
(针对各j∈[l′])。
(3.4)各Pk对各
Figure GDA00026533547900001714
的共享份额使用伯利坎普-韦尔奇,以插值
Figure GDA00026533547900001715
(针对各i∈[n])。
(3.5)各Pk检查
Figure GDA00026533547900001716
的共享份额是否与多项式
Figure GDA00026533547900001717
的插值一致。即,Pk检查对于各j∈[l′],是否
Figure GDA00026533547900001718
如果某一
Figure GDA00026533547900001719
未通过该检查,那么Pk向P′中的各参与者发送(Pk,accuse,Pi)。
(3.6)各P′j∈P′使用在之前步骤中发送的指控来确定可能破坏的P中的参与者集Corr′j。更具体地,P′j通读指控列表,并且根据以下规则将参与者添加到Corr′j:如果当前指控中的参与者都不在Corr′j中,那么将它们这两个添加到Corr′j;否则,忽视指控。
(4)共享份额转让
(4.1)各P′j∈P′选择
Figure GDA00026533547900001720
中的参与者集Gj,使得|Gj|=n-2t。然后,P′j向Gj的各成员发送该集。
(4.2)对于各P′j∈P′,使
Figure GDA00026533547900001721
表示Gj中的参与者的索引的集合。使λj,i表示用于从Gj中的参与者的共享份额插值P′j的秘密的共享份额的拉格朗日(Lagrange)系数(即,对于次数≤d′的多项式f,
Figure GDA0002653354790000181
(4.3)
Figure GDA0002653354790000182
中的参与者执行RanDouSha,以生成次数d′多项式V(j,k,m),其中,(j,k,m)∈[l′+1,d′+1]×[n-3t]×[B]。
Figure GDA0002653354790000183
中的参与者还使用RanDouSha来生成随机经受V(j,k,m)w)=0(其中,w∈[l′])的限制的次数d′多项式V(j,k,m),其中,(j,k,m)∈[l′]×[n-3t]×[B]。
(4.4)由
Figure GDA0002653354790000184
(其中,w∈[l′])和
Figure GDA0002653354790000185
(其中,w∈[l′+1,d′+1])定义次数d′多项式
Figure GDA0002653354790000186
其中,
(a,k,m)∈[l′]×[n-3t]×[B]。使uj,i表示用于从ζi(其中,i∈[d′+1])处的点插值P′j的秘密的共享份额的拉格朗日系数(即,对于次数≤d′的多项式f,f(βj)=μj,1f(ζ1)+…+μj,d′+1f(ζd′+1))。
(4.5)对于各k∈[n-3t]、各m∈[B]以及各j∈[n′],Gj中的各参与者向P′j发送以下它的共享份额
Figure GDA0002653354790000187
(4.6)各P′j使用伯利坎普-韦尔奇来对于各k∈[n-3t]和各m∈[B]插值在之前步骤中接收的多项式。因为对于各a∈[l′],所以
Figure GDA0002653354790000188
P′j具有各批的已刷新数据的其共享份额。
协议Block-Redistribute具有通信复杂度O(W+n3)。计算复杂度是通信复杂度乘以log3n因子。
(3.5)恒定数量循环中的参与者虚拟化
在统计情况下,Block-Redistribute协议(如所写的)具有低破坏阈值。为了增大该阈值,使用服务器可视化(参见用于服务器可视化的描述的第4号参考文献书目)。上述协议中的服务器用服务器的委员会来代替,使得与存在破坏服务器相比,存在更少的破坏委员会。
第4号参考文献书目的结果由于随机选择委员会而是非建设性的(constructive);示出了在高概率的情况下,随机选择将导致委员会的良好选择。第4号参考文献书目的技术在第7号参考文献书目中被使得成为建设性的。
如第7号参考文献书目所描述的,假定存在n个服务器。对于任何0<∈,δ<1,存在尺寸s=O(1/δ∈2)的n个委员会的构造,使得如果服务器中的不多于
Figure GDA0002653354790000191
个破坏,那么不多于δ·n个委员会将破坏(其中,一个委员会在其s/2或更多个成员破坏时破坏)。委员会的成员可以以time·polylog n来计算。
对于根据本公开的实施方式的协议,使用具有破坏阈值c(其中,c<s/2)的尺寸为s的委员会。因为这里所描述的重新分配协议的目标是具有统计安全,所以内协议必须具有统计安全。另外,所有子协议必须采取恒定数量的循环,因此内协议必须采取恒定数量的循环(每乘法)。因为第15号专利文献书目所描述的Ben-Or,Goldwasser and Wigderson(BGW)协议满足这两个特性,所以它用于内协议。可以由最终用户确定∈的值。因为重新分配协议已经被构造为与阈值t<n/16一起起作用,所以存在δ=1/16。
在使用虚拟化且各服务器被委员会代替时,两个服务器之间的通信被两个委员会之间的通信代替。可以使用点对点通信和广播协议仿真广播。另外,必须由委员会中的多方计算模拟内部计算。清楚的是,仅存在需要贯穿整个协议执行的一些类型的计算:加法、两个专用值的乘法、共享份额的向量与众所周知的超可逆矩阵的乘法以及伯利坎普-韦尔奇算法。以下单独描述委员会之间的通信和每一种内部计算。
(3.5.1)委员会之间的通信
假设一个委员会想要向另一个委员会发送秘密值。这意味着发送委员会中的各成员保持秘密的Visual SourceSafe(VSS)共享份额(如在第15号参考文献书目中指定的),并且它们想要转让秘密共享,使得接收委员会保持秘密的VSS共享。执行转让的功能可以如下来完成。假设由方A1,…,As构成的一个委员会中的方必须向由方B1,…,Bs构成的另一个委员会发送具有标签的信息。所有2s个这些方计算转让数据的功能。存在用于各Aj的一个输入门和用于各Bi的一个输出门。来自Aj的输入是用于委员会{A1,…,As}保持的数据片段的、她的共享份额和认证/验证标签。用于Bj的输出用于现在由委员会{B1,…,Bs}保持的同一数据片段的、她的新生成的共享份额和认证/验证标签。这被进行为使得新共享独立于初始共享。因为委员会尺寸恒定,所以这不渐进地增大通信或计算复杂度。加法通过使如在BGW协议中指定的共享份额相加来简单地执行。
委员会需要使两个专用值相乘的唯一情形是在委员会需要使其共享份额中的两个相乘的时候;这仅发生在Multiply协议中。这些乘法将如在第15号专利文献书目中所指定的来处理。因为委员会尺寸恒定,所以这仅需要每个乘法恒定数量的计算。
为了减少用于主协议中的广播数量,将使用广播协议利用点对点信道来实施乘法子协议中的所有广播。对于具有至多c个破坏服务器的委员会实施(确定性的)广播协议的循环的最小数量是c+1(参见第10号参考文献书目)。因为c是取决于∈的常数,所以根据本公开的实施方式的协议将在恒定数量的循环中起作用。在循环数量上实现c+1下界且在委员会成员数量中具有通信和计算复杂度多项式的任何广播协议将起作用。比如,可以使用第12号参考文献书目所描述的协议。
与超可逆矩阵的乘法可以在委员会中高效地进行。各委员会成员对它们的共享份额简单地执行所需的操作。重新分配协议中的各超可逆矩阵具有维数Θ(n)乘Θ(n)。通常,这种计算将需要Θ(n2)个乘法。然而,因为超可逆矩阵对多项式插值和求值建模,所以人们可以使用来自计算机科学文献的高效算法。比如,第1号参考文献书目可以用于仅利用O(nlog3n)个乘法来进行这些计算。
因为BGW协议的直接应用将导致非恒定循环复杂度,所以伯利坎普-韦尔奇算法在委员会中的应用需要一些注意。伯利坎普-韦尔奇算法可以以O(n log3(n))计算复杂度来执行(参见第11号参考文献书目)。这将log3(n)因子加到计算复杂度,这不是问题。然而,它需要通信的O(polylog(n))个循环,并且重新分配协议必须在恒定数量的循环中起作用。
对于具有恒定循环复杂度的委员会构造伯利坎普-韦尔奇算法的变更。这需要生成额外的掩蔽随机性。实际上,对于要插值的各多项式,必须生成另外的c个多项式。然而,委员会尺寸贯穿协议固定(因为它仅取决于∈)。因此,生成这些额外共享不影响协议的渐进复杂度。
在虚拟化重新分配协议时,利用以下所描述的协议Committee-BW的执行代替伯利坎普-韦尔奇算法的各执行。协议将RanDouSha用作生成随机掩蔽多项式的子协议。所生成的多项式的数量和多项式的次数在不同的步骤中将不同。对于服务器想要插值的每一个多项式,它们生成同一次数的c个掩蔽多项式。再次,这不增加协议的整体通信复杂度(因为一旦决定∈,则c恒定)。注意,在一些情况下,服务器/委员会不插值多项式,而是插值由超可逆矩阵生成的向量。然而,因为所用超可逆矩阵对多项式插值建模,所以这种向量可以被视为多项式上的评估点集。
协议Committee-BW实施在恒定数量的循环中执行伯利坎普-韦尔奇的委员会。
Figure GDA0002653354790000211
用于表示委员会集,并且
Figure GDA0002653354790000212
用于表示要执行伯利坎普-韦尔奇的委员会。Pi的评估点是αi,并且pj的评估点是γj。假定要插值的多项式f已经被发送到委员会。这意味着各共享份额f(αi)作为不多于c的次数的多项式f(ai)在委员会中沙米尔(Shamir)共享,使得
Figure GDA0002653354790000213
此外,委员会保持与次数不多于c的多项式
Figure GDA0002653354790000214
共享的另外c个多项式r(1),...,r(c),使得
Figure GDA0002653354790000215
协议使用由贯穿所有协议众所周知且固定的s乘c+1超可逆矩阵M′。
(3.5.2)Committee-BW
Figure GDA0002653354790000216
1.委员会调用RanDouSha来生成随机多项式r(k),其中,k=1,...,c。
2.各委员会向Com发送各r(k)的其共享份额。如上所述地定义
Figure GDA0002653354790000217
3.由(u(1),...,u(s))T=M′(f,r(1),...,r(c))T定义多项式u(1),...,u(s)。类似地,对于各Pi定义
Figure GDA0002653354790000218
各pj局部地计算它的各
Figure GDA0002653354790000219
的VSS共享份额。
4.各pj对于各Pi向pk发送它的
Figure GDA00026533547900002110
的共享份额。
5.各pj如第15号参考文献书目所描述的从在之前步骤中接收的共享份额插值
Figure GDA00026533547900002111
(并且因此插值u(k)i))。
6.各pj使用伯利坎普-韦尔奇来插值u(k),这注释他认为哪些共享份额是错误的。
7.各pj向Com的各成员发送他相信已经发送错误共享份额的各委员会Pi的索引(这些被称为“否定选票”)。
8.对于在之前步骤中接收多于c个否定选票的各αi,委员会Com推断委员会Pi破坏,并且不需要f的它的共享份额(即使由Pi发送的f(αi)的值正确)。使I为所有i的集合,使得Pi不被视为破坏。
9.假设委员会想要插值点集ξ1,...ξm。使
Figure GDA0002653354790000221
表示用于使用点{αi}i∈I在多项式上插值点ξk的拉格朗日系数。各pj通过如在第15号专利文献书目中指定的计算
Figure GDA0002653354790000222
的她的共享份额来针对各k=1,...,m局部地计算f(ξk)的他的共享份额。
并行调用Committee-BW W/n次具有通信复杂度O(W+poly(n))(假定委员会想要插值O(n)个点每调用,在执行协议时将总是这种情况)。它采取恒定数量的通信循环。
总之,因为根据本公开的实施方式的系统将双共享用于块共享秘密,所以它鉴于与MPSS有关的现有文献不明显。双共享在现有文献中从未应用于块共享秘密。在统计安全设置中,双共享使用如在第7号参考文献书目中地使用服务器可视化,但无法使用虚拟化的直接植入。相反,伯利坎普-韦尔奇算法的应用(参见第3号专利文献书目)利用使虚拟化服务器在恒定数量的通信循环中执行该任务的协议代替。
此外,这里所描述的本发明与之前已知的移动主动秘密共享协议的不同在于:在针对主动攻击者安全的这些协议中,该协议具有最低通信复杂度。针对主动攻击者安全的、用于MPSS的最高效现有协议具有通信复杂度O(n3)每秘密(其中,n是参与协议的服务器的数量)。本系统对于重新分配W个秘密具有通信复杂度O(W+n3),这意味着如果W为至少n3,则用于重新分配的每秘密通信复杂度为O(1)。
另外,这里所描述的本发明包括实施MPSS功能的协议。这些协议允许秘密数据以以下这种方式在一组服务器(服务器在多方计算(MPC)文献中还被称为参与者或方)中安全分配:如果攻击者危害不多于服务器中的固定部分,则攻击者将得不到与数据有关的任何信息,并且无法引起数据破坏。即使允许攻击者最后危害所有服务器,但只要在MPSS协议的操作的任何给定阶段期间危害不多于固定部分,则这也保持成立。
根据本公开的实施方式的系统实现与美国第14/207,321号申请(在此以引用的方式并入为仿佛在这里完全阐述)相同的功能。这里所描述的协议可以提供统计或非统计安全这两者之一,而美国第14/449,115号申请所公开的协议仅提供密码安全。密码安全意指攻击者能够危害计算安全的概率可忽视地低,并且协议仅在特定数学问题对于攻击者求解不可行的假定下是安全的。
相比之下,统计安全意指攻击者能够危害计算安全的概率可忽视地低,并且该安全不依赖任何数学不可行性假定。非统计安全意指攻击者能够危害计算安全的概率为零,并且该安全不依赖任何数学不可行性假定。
这里所描述的协议可以提供破坏阈值,该破坏阈值是可以在给定阶段期间被破坏的服务器的部分,该部分在统计安全设置中任意接近1/2或在非统计安全设置中任意接近1/3。美国第14/207,321号申请所公开的协议允许阈值任意接近1/2。
这里所描述的协议的用途是以以下这种方式安全地存储在一组服务器中分配的数据:如果恶意方捕获(有限)部分的数据,那么所述数据在给定时间之后将“到期”。任何“到期的”数据不给予恶意方与秘密已存储数据有关的信息。本发明与之前已知的移动主动秘密共享协议的不同在于:在针对主动攻击者安全的这些协议中,该协议具有最低通信复杂度。
移动主动秘密共享(MPSS)使得能够在存储平台可能随着时间的过去而动态变化的敌对环境中以安全分布式方式存储信息。本发明的应用的非限制示例包括跨附近车辆以分布式方式存储诸如像证书的敏感安全数据的数据。如果在任何时间破坏车辆的一部分,则仍然维持安全和完整。参与存储的车辆组可以随着时间的过去而变化。
进一步地,这里所描述的本发明可以用于跨无人机、士兵以及其他平台以分布式方式存储数据。比如,一组士兵可以维持跨各士兵拥有的蜂窝电话(或其他通信装置)分配的高度敏感的一条信息(诸如,加密密匙和识别信息)。只要少于30%或49%的士兵被危害,就维持数据安全和完整。
根据本公开的实施方式的系统还可以用作使蜂窝电话数据安全的手段。比如,特定智能电话应用存储诸如蜂窝电话数据的敏感信息。这里所描述的本发明可以通过将该数据动态散布到区域中的所有蜂窝电话来使该数据安全。该组附近蜂窝电话动态变化,并且只要少于30%或49%的蜂窝电话被危害,就维持数据安全和完整。
最后,虽然已经鉴于多个实施方式描述了本发明,但本领域普通技术人员将容易地认识到,本发明可以具有其他环境中的其他应用。应注意,许多实施方式和实施方案是可以的。进一步地,以下权利要求并不旨在将本发明的范围限于上述具体实施方式。另外,“用于……的装置”的任何详述旨在唤起元素和权利要求的装置加功能阅读,而不具体使用详述“用于……装置”的任何元素不旨在被阅读为装置加功能元素,即使权利要求以其他方式包括词语“装置”。进一步地,虽然已经以特定顺序列举特定方法步骤,但方法步骤可以以任何期望的顺序发生,并且落在本发明的范围内。

Claims (18)

1.一种用于移动主动秘密共享的系统,所述系统包括:
一个或更多个处理器和存储器,所述存储器存储有可执行指令,使得在执行所述指令时,所述一个或更多个处理器执行以下操作:
初始化第一协议的调用,以在一组服务器中分配秘密数据块,该一组服务器包括同步网络的n个服务器,所述第一协议是RobustShare协议,其中,所述秘密数据块包括多个数据共享份额,其中,所述一组服务器中的各服务器保持对所述秘密数据块进行编码的一个数据共享份额,并且其中,所述多个数据共享份额经由安全已认证广播信道被电子地发送;
初始化至少一个第二协议的调用,以防御尝试破坏所述一组服务器的攻击者,所述至少一个第二协议包括以下步骤:
(1)当改变破坏阈值时,生成用于块重新分配的新的多项式;
(2)所述一组服务器中的各服务器双共享分批秘密,其中,参与所述第二协议的调用的一组服务器基于在步骤(1)中生成的所述新的多项式或者在未生成所述新的多项式的情况下的原始多项式通过调用RanDouSha协议生成所述秘密数据块的随机共享,各服务器使用RobustShare协议批共享各秘密数据块的所有共享份额;
(3)所述一组服务器中的各服务器验证在所述第二协议的调用期间处理的共享份额,如果该共享份额未通过验证,则向新的一组服务器中的各服务器发送关于该共享份额的服务器的指控,所述新的一组服务器中的各服务器将被指控服务器和指控服务器二者添加到可能被破坏的服务器集合;以及
(4)所述新的一组服务器中的各服务器从所述一组服务器中的除了所述可能被破坏的服务器集合之外的服务器选取参与者集合,所述参与者集合中的各服务器将所存储的共享份额转让给所述新的一组服务器中的该服务器,所述新的一组服务器中的各服务器基于接收到的共享份额使用Berlekamp-Welch协议的调用来生成其共享份额,
其中,在第二协议的调用期间,所述一组服务器定期刷新其数据共享份额,使得各服务器保持新数据共享份额,所述新数据共享份额独立于之前的数据共享份额,其中,参与所述第二协议的所述一组服务器以及服务器的数量n能够在各重新分配时变化;以及
由各服务器定期擦除所述多个数据共享份额,以针对所述攻击者保持安全,
其中,所述至少一个第二协议针对所述攻击者包括用于安全的统计安全版本和完美安全版本中的一者,所述完美安全版本的破坏阈值低于所述统计安全版本的破坏阈值,
其中,所述至少一个第二协议被初始化为所述完美安全版本,然后在所述统计安全版本中使用统计安全虚拟化提高所述破坏阈值。
2.根据权利要求1所述的系统,其中,所述一个或更多个处理器还执行初始化第三协议以揭示所述秘密数据块的操作,所述第三协议是Reco协议。
3.根据权利要求1所述的系统,其中,n能够在各第二协议处增大或减小因子二。
4.根据权利要求1所述的系统,其中,所述破坏阈值对于统计安全是1/2-∈,其中,∈是任意正常数,并且其中,假如所述攻击者破坏不多于所述一组服务器的1/2-∈部分,那么所述系统维持统计安全。
5.根据权利要求1所述的系统,其中,所述破坏阈值对于非统计安全是1/3-∈,其中,∈是任意正常数,并且其中,假如所述攻击者破坏不多于所述一组服务器的1/3-∈部分,那么所述系统维持非统计安全。
6.根据权利要求1所述的系统,其中,如果所述攻击者从所述多个数据共享份额捕获一部分数据,那么所述一部分数据在给定时间之后到期,使得到期的一部分数据不向所述攻击者揭示与所述秘密数据块有关的任何信息。
7.一种存储用于移动主动秘密共享的计算机程序产品的非暂时性计算机可读介质,所述计算机程序产品包括:
可执行指令,使得在由一个或更多个处理器执行所述指令时,所述一个或更多个处理器执行以下操作:
初始化第一协议的调用,以在一组服务器中分配秘密数据块,该一组服务器包括同步网络的n个服务器,所述第一协议是RobustShare协议,其中,所述秘密数据块包括多个数据共享份额,其中,所述一组服务器中的各服务器保持对所述秘密数据块进行编码的一个数据共享份额,并且其中,所述多个数据共享份额经由安全已认证广播信道被电子地发送;
初始化至少一个第二协议的调用,以防御尝试破坏所述一组服务器的攻击者,所述至少一个第二协议包括以下步骤:
(1)当改变破坏阈值时,生成用于块重新分配的新的多项式;
(2)所述一组服务器中的各服务器双共享分批秘密,其中,参与所述第二协议的调用的一组服务器基于在步骤(1)中生成的所述新的多项式或者在未生成所述新的多项式的情况下的原始多项式通过调用RanDouSha协议生成所述秘密数据块的随机共享,各服务器使用RobustShare协议批共享各秘密数据块的所有共享份额;
(3)所述一组服务器中的各服务器验证在所述第二协议的调用期间处理的共享份额,如果该共享份额未通过验证,则向新的一组服务器中的各服务器发送关于该共享份额的服务器的指控,所述新的一组服务器中的各服务器将被指控服务器和指控服务器二者添加到可能被破坏的服务器集合;以及
(4)所述新的一组服务器中的各服务器从所述一组服务器中的除了所述可能被破坏的服务器集合之外的服务器选取参与者集合,所述参与者集合中的各服务器将所存储的共享份额转让给所述新的一组服务器中的该服务器,所述新的一组服务器中的各服务器基于接收到的共享份额使用Berlekamp-Welch协议的调用来生成其共享份额,
其中,在第二协议的调用期间,所述一组服务器定期刷新其数据共享份额,使得各服务器保持新数据共享份额,所述新数据共享份额独立于之前的数据共享份额,其中,参与所述第二协议的所述一组服务器以及服务器的数量n能够在各重新分配时变化;以及
由各服务器定期擦除所述多个数据共享份额,以针对所述攻击者保持安全,
其中,所述至少一个第二协议针对所述攻击者包括用于安全的统计安全版本和完美安全版本中的一者,所述完美安全版本的破坏阈值低于所述统计安全版本的破坏阈值,
其中,所述至少一个第二协议被初始化为所述完美安全版本,然后在所述统计安全版本中使用统计安全虚拟化提高所述破坏阈值。
8.根据权利要求7所述的非暂时性计算机可读介质,所述计算机程序产品还包括指令,所述指令用于使得所述一个或更多个处理器还执行初始化第三协议以揭示所述秘密数据块的操作,其中,所述第三协议是Reco协议。
9.根据权利要求7所述的非暂时性计算机可读介质,其中,n能够在各第二协议处增大或减小因子二。
10.根据权利要求7所述的非暂时性计算机可读介质,其中,所述破坏阈值对于统计安全是1/2-∈,其中,∈是任意正常数,并且其中,假如所述攻击者破坏不多于所述一组服务器的1/2-∈部分,那么包括所述非暂时性计算机可读介质的系统维持统计安全。
11.根据权利要求7所述的非暂时性计算机可读介质,其中,所述破坏阈值对于非统计安全是1/3-∈,其中,∈是任意正常数,并且其中,假如所述攻击者破坏不多于所述一组服务器的1/3-∈部分,那么包括所述非暂时性计算机可读介质的系统维持非统计安全。
12.根据权利要求7所述的非暂时性计算机可读介质,其中,如果所述攻击者从所述多个数据共享份额捕获一部分数据,那么所述一部分数据在给定时间之后到期,使得到期的所述一部分数据不向所述攻击者揭示与所述秘密数据块有关的任何信息。
13.一种用于移动主动秘密共享的计算机实施的方法,所述方法包括以下步骤:
使得一个或更多个处理器执行在非暂时性计算机可读介质上面编码的指令,使得在执行时,所述一个或更多个处理器执行以下操作:
初始化第一协议的调用,以在一组服务器中分配秘密数据块,该一组服务器包括同步网络的n个服务器,所述第一协议是RobustShare协议,其中,所述秘密数据块包括多个数据共享份额,其中,所述一组服务器中的各服务器保持对所述秘密数据块进行编码的一个数据共享份额,并且其中,所述多个数据共享份额经由安全已认证广播信道被电子地发送;
初始化至少一个第二协议的调用,以防御尝试破坏所述一组服务器的攻击者,所述至少一个第二协议包括以下步骤:
(1)当改变破坏阈值时,生成用于块重新分配的新的多项式;
(2)所述一组服务器中的各服务器双共享分批秘密,其中,参与所述第二协议的调用的一组服务器基于在步骤(1)中生成的所述新的多项式或者在未生成所述新的多项式的情况下的原始多项式通过调用RanDouSha协议生成所述秘密数据块的随机共享,各服务器使用RobustShare协议批共享各秘密数据块的所有共享份额;
(3)所述一组服务器中的各服务器验证在所述第二协议的调用期间处理的共享份额,如果该共享份额未通过验证,则向新的一组服务器中的各服务器发送关于该共享份额的服务器的指控,所述新的一组服务器中的各服务器将被指控服务器和指控服务器二者添加到可能被破坏的服务器集合;以及
(4)所述新的一组服务器中的各服务器从所述一组服务器中的除了所述可能被破坏的服务器集合之外的服务器选取参与者集合,所述参与者集合中的各服务器将所存储的共享份额转让给所述新的一组服务器中的该服务器,所述新的一组服务器中的各服务器基于接收到的共享份额使用Berlekamp-Welch协议的调用来生成其共享份额,
其中,在第二协议的调用期间,所述一组服务器定期刷新其数据共享份额,使得各服务器保持新数据共享份额,所述新数据共享份额独立于之前的数据共享份额,其中,参与所述第二协议的所述一组服务器以及服务器的数量n能够在各重新分配时变化;以及
由各服务器定期擦除所述多个数据共享份额,以针对所述攻击者保持安全,其中,所述至少一个第二协议针对所述攻击者包括用于安全的统计安全版本和完美安全版本中的一者,所述完美安全版本的破坏阈值低于所述统计安全版本的破坏阈值,
其中,所述至少一个第二协议被初始化为所述完美安全版本,然后在所述统计安全版本中使用统计安全虚拟化提高所述破坏阈值。
14.根据权利要求13所述的方法,其中,所述一个或更多个处理器还执行初始化第三协议以揭示所述秘密数据块的操作,其中,所述第三协议是Reco协议。
15.根据权利要求13所述的方法,其中,n能够在各第二协议处增大或减小因子二。
16.根据权利要求13所述的方法,其中,所述破坏阈值对于统计安全是1/2-∈,其中,∈是任意正常数,并且其中,假如所述攻击者破坏不多于所述一组服务器的1/2-∈部分,那么使用所述方法的系统维持统计安全。
17.根据权利要求13所述的方法,其中,所述破坏阈值对于非统计安全是1/3-∈,其中,∈是任意正常数,并且其中,假如所述攻击者破坏不多于所述一组服务器的1/3-∈部分,那么使用所述方法的系统维持非统计安全。
18.根据权利要求13所述的方法,其中,如果所述攻击者从所述多个数据共享份额捕获一部分数据,那么所述一部分数据在给定时间之后到期,使得到期的所述一部分数据不向所述攻击者揭示与所述秘密数据块有关的任何信息。
CN201680051892.5A 2015-10-29 2016-10-31 用于移动主动秘密共享的系统、计算机可读介质和方法 Active CN108028751B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562248093P 2015-10-29 2015-10-29
US62/248,093 2015-10-29
PCT/US2016/059774 WO2017075609A1 (en) 2015-10-29 2016-10-31 An information secure protocol for mobile proactive secret sharing with near-optimal resilience

Publications (2)

Publication Number Publication Date
CN108028751A CN108028751A (zh) 2018-05-11
CN108028751B true CN108028751B (zh) 2021-08-27

Family

ID=58630971

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680051892.5A Active CN108028751B (zh) 2015-10-29 2016-10-31 用于移动主动秘密共享的系统、计算机可读介质和方法

Country Status (3)

Country Link
EP (1) EP3369207B1 (zh)
CN (1) CN108028751B (zh)
WO (1) WO2017075609A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3804216B1 (en) * 2018-06-05 2023-07-26 HRL Laboratories, LLC System and asynchronous protocol for verifiable secret sharing
WO2020033033A1 (en) * 2018-08-09 2020-02-13 Hrl Laboratories, Llc Anonymous allocation and majority voting in a compromised environment
CN110837623B (zh) * 2019-11-13 2023-07-21 中国科学技术大学 利用非欧几里得环上的crt非迭代算法实现秘密共享的方法
CN112232367B (zh) * 2020-09-10 2022-06-21 山东师范大学 一种网络行为相似性判断方法及系统
CN115277031B (zh) * 2021-04-13 2024-05-10 华为技术有限公司 一种数据处理的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873212A (zh) * 2010-06-09 2010-10-27 中国农业大学 门限秘密信息分配、还原装置及方法
CN101882992A (zh) * 2010-06-21 2010-11-10 中国农业大学 门限秘密信息分配、还原方法及装置
WO2015160839A1 (en) * 2014-04-17 2015-10-22 Hrl Laboratories, Llc A method for secure and resilient distributed generation of elliptic curve digital signature algorithm (ecdsa) based digital signatures with proactive security

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8139770B2 (en) * 2003-12-23 2012-03-20 Wells Fargo Bank, N.A. Cryptographic key backup and escrow system
US9130757B2 (en) * 2008-08-11 2015-09-08 International Business Machines Corporation Method for authenticated communication in dynamic federated environments
US8949688B2 (en) * 2011-04-01 2015-02-03 Cleversafe, Inc. Updating error recovery information in a dispersed storage network
US9065637B2 (en) * 2012-01-25 2015-06-23 CertiVox Ltd. System and method for securing private keys issued from distributed private key generator (D-PKG) nodes
US8745415B2 (en) * 2012-09-26 2014-06-03 Pure Storage, Inc. Multi-drive cooperation to generate an encryption key

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101873212A (zh) * 2010-06-09 2010-10-27 中国农业大学 门限秘密信息分配、还原装置及方法
CN101882992A (zh) * 2010-06-21 2010-11-10 中国农业大学 门限秘密信息分配、还原方法及装置
WO2015160839A1 (en) * 2014-04-17 2015-10-22 Hrl Laboratories, Llc A method for secure and resilient distributed generation of elliptic curve digital signature algorithm (ecdsa) based digital signatures with proactive security

Also Published As

Publication number Publication date
EP3369207B1 (en) 2023-04-12
CN108028751A (zh) 2018-05-11
EP3369207A4 (en) 2019-06-19
EP3369207A1 (en) 2018-09-05
WO2017075609A1 (en) 2017-05-04

Similar Documents

Publication Publication Date Title
US9536114B1 (en) Secure mobile proactive multiparty computation protocol
US10083310B1 (en) System and method for mobile proactive secure multi-party computation (MPMPC) using commitments
EP3195522B1 (en) Generating shares of secret data
CN108028751B (zh) 用于移动主动秘密共享的系统、计算机可读介质和方法
CN106664205B (zh) 生成数字签名的系统和方法、非瞬时计算机可读存储介质
US9489522B1 (en) Method for secure and resilient distributed generation of elliptic curve digital signature algorithm (ECDSA) based digital signatures with proactive security
CN109274717B (zh) 基于区块链的共享存储方法、装置、介质及电子设备
Kumar et al. An efficient and secure protocol for ensuring data storage security in cloud computing
JP7328237B2 (ja) コンピュータにより実施される投票処理およびシステム
US9450938B1 (en) Information secure proactive multiparty computation (PMPC) protocol with linear bandwidth complexity
CN104184588B (zh) 基于身份的不可拆分数字签名方法
Jayapandian et al. Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption
US9614676B1 (en) Cryptographically-secure packed proactive secret sharing (PPSS) protocol
US20220374544A1 (en) Secure aggregation of information using federated learning
JPWO2017099117A1 (ja) 事前計算装置、方法、およびコンピュータ読取可能な記録媒体、並びにベクトル乗算装置、および方法
CN112385176B (zh) 匿名工作分配和多数表决的系统、方法和介质
US20220413807A1 (en) Secure random number generation system, secure computation apparatus, secure random number generation method, and program
US9787472B1 (en) Information secure protocol for mobile proactive secret sharing with near-optimal resilience
US11728977B2 (en) Method for efficient and practical key distribution in network coding systems
US9558359B1 (en) Information theoretically secure protocol for mobile proactive secret sharing with near-optimal resilience
Srisakthi et al. Towards the design of a secure and fault tolerant cloud storage in a multi-cloud environment
CN114282922A (zh) 一种基于冷钱包的区块链交易处理方法及装置
US20170346633A1 (en) Computing a secure elliptic curve scalar multiplication using an unsecured and secure environment
US9443089B1 (en) System and method for mobile proactive secret sharing
US9467451B1 (en) Generic proactively-secure secret-sharing protocol from any suitable honest-majority secret-sharing protocol

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant