CN114091089A - 数据处理方法、装置、系统及计算机可读存储介质 - Google Patents
数据处理方法、装置、系统及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114091089A CN114091089A CN202210068477.8A CN202210068477A CN114091089A CN 114091089 A CN114091089 A CN 114091089A CN 202210068477 A CN202210068477 A CN 202210068477A CN 114091089 A CN114091089 A CN 114091089A
- Authority
- CN
- China
- Prior art keywords
- secret
- elements
- polynomial
- shared
- shares
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供一种数据处理方法、装置、系统及计算机可读存储介质,包括随机选取多项式环上第一数量个第一元素,以第一数量个第一元素作为系数,第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;待共享秘密为多项式环上的元素;基于多项式,分别计算多项式环中第二数量个第二元素对应的值,以及基于第二数量个第二元素及各自对应的值,确定包含待共享秘密的第二数量个秘密份额的秘密份额集合;利用拉格朗日插值算法对秘密份额集合中的第三数量个秘密份额进行计算,获得待共享秘密,第三数量比第一数量多一,第二数量不小于第三数量。本申请实施例提供的技术方案实现了多项式环上的秘密共享。
Description
技术领域
本申请实施例涉及数据处理领域,尤其涉及一种数据处理方法、装置、系统及计算机可读存储介质。
背景技术
随着技术发展,数据处理过程中的数据安全性越来越重要。秘密共享作为一种将秘密分割存储的密码技术,可以阻止秘密过于集中,从而达到分散风险和容忍入侵的目的,对提高数据安全性起着重要的作用。具体的,秘密共享是将秘密以适当的方式拆分,拆分后的每一个份额由不同的参与者管理,单个参与者无法恢复秘密信息,只有若干个参与者一同协作才能恢复秘密消息。并且,当其中一定级别的参与者出现问题而无法参与协作时,秘密仍可以完整恢复。
传统方案中,秘密共享中待处理的秘密通常是定义在整数域上的,应用范围较小。
发明内容
本申请实施例提供一种数据处理方法、装置、系统及计算机可读存储介质,用以实现多项式环上的秘密共享。
第一方面,本申请实施例中提供了一种数据处理方法,包括:
随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;所述待共享秘密为所述多项式环上的元素;
基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享秘密的第二数量个秘密份额的秘密份额集合;
利用拉格朗日插值算法对所述秘密份额集合中的第三数量个秘密份额进行计算,获得所述待共享秘密,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
第二方面,本申请实施例中提供了一种数据处理方法,包括:
随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享密钥作为常数项,确定第一数量次多项式;所述待共享密钥为所述多项式环上的元素;
基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享密钥的第二数量个密钥份额的密钥份额集合;
利用拉格朗日插值算法对所述密钥份额集合中的第三数量个密钥份额进行计算,获得所述待共享密钥,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
第三方面,本申请实施例中提供了一种数据处理装置,包括:
确定模块,用于随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;所述待共享秘密为所述多项式环上的元素;
第一计算模块,用于基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享秘密的第二数量个秘密份额的秘密份额集合;
第二计算模块,用于利用拉格朗日插值算法对所述秘密份额集合中的第三数量个秘密份额进行计算,获得所述待共享秘密,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
第四方面,本申请实施例中提供了一种数据处理系统,包括存储组件及处理组件;
所述存储组件用于存储一条或多条计算指令,所述一条或多条计算机指令供所述处理组件调用执行;
所述处理组件用于:
随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;所述待共享秘密为所述多项式环上的元素;
基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享秘密的第二数量个秘密份额的秘密份额集合;
利用拉格朗日插值算法对所述秘密份额集合中的第三数量个秘密份额进行计算,获得所述待共享秘密,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
第五方面,本申请实施例中提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如第一方面或第二方面中任一方面所述的数据处理方法。
本申请实施例中,待共享秘密为多项式环上的元素,以该待共享秘密作为常数项,该多项式环上的元素作为系数和变量,确定多项式环上的多项式,并利用该多项式进行秘密分享获得一定数量个秘密份额,结合拉格朗日插值算法可以对多项式环上的元素进行处理,因此利用拉格朗日插值算法对一定数量个秘密份额中的部分数量个秘密份额进行秘密恢复,由此可以实现多项式环上的秘密共享,可以直接对多项式环上的元素进行秘密共享,增大了该秘密共享算法的应用范围。
本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请提供的一种数据处理方法一个实施例的流程图;
图2示出了本申请提供的一种数据处理方法另一个实施例的流程图;
图3示出了本申请提供的一种数据处理装置一个实施例的结构示意图;
图4示出了本申请提供的一种数据处理系统一个实施例的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。
本申请实施例的技术方案适用于秘密共享的应用场景,秘密共享作为一种将秘密分割存储的密码技术,可以阻止秘密过于集中,从而达到分散风险和容忍入侵的目的,对提高数据安全性起着重要的作用。具体的,秘密共享是将秘密以适当的方式拆分,拆分后的每一个份额由不同的参与者管理,单个参与者无法恢复秘密信息,只有若干个参与者一同协作才能恢复秘密消息。并且,当其中一定级别的参与者出现问题而无法参与协作时,秘密仍可以完整恢复。
传统方案中,通常采用的秘密共享方法是由Shamir和Blakley提出的(t,n)门限秘密共享方法,将待共享秘密分成n个秘密份额并分发给不同的参与者,满足只有根据大于等于t个参与者各自的秘密份额才能进行秘密恢复,获得待共享秘密,而任意少于t个参与者的秘密份额将无法恢复待共享秘密。
上述方案中,秘密共享所处理的秘密通常是定义在整数域上的,而实际应用中,存在对定义在多项式环上的秘密进行秘密共享处理的需求,如格密码算法等,因此现有的秘密共享方法无法应用于如格密码等定义在多项式环上的算法。
为了解决上述问题,发明人对秘密共享方法进行了大量分析,上述秘密共享方法在进行秘密恢复时,是利用拉格朗日插值算法实现的,秘密共享通常处理定义在整数域上的秘密,是考虑到拉格朗日插值算法可以处理定义在整数域上的元素。因此,发明人想到,若拉格朗日插值算法能够处理定义在多项式环上的元素,则对应的秘密共享方法也能处理定义在多项式环上的秘密。经过一系列试验之后,发明人对拉格朗日插值算法可以处理定义在多项式环上的元素进行了确认,并由此提出了本申请的技术方案,提供了一种数据处理方法,包括随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;所述待共享秘密为所述多项式环上的元素;基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享秘密的第二数量个秘密份额的秘密份额集合;利用拉格朗日插值算法对所述秘密份额集合中的第三数量个秘密份额进行计算,获得所述待共享秘密,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
本申请实施例的方案中,待共享秘密为多项式环上的元素,以该待共享秘密作为常数项,该多项式环上的元素作为系数和变量,确定多项式环上的多项式,并利用该多项式进行秘密分享获得一定数量个秘密份额,结合拉格朗日插值算法可以对多项式环上的元素进行处理,因此利用拉格朗日插值算法对一定数量个秘密份额中的部分数量个秘密份额进行秘密恢复,由此可以实现多项式环上的秘密共享,可以直接对多项式环上的元素进行秘密共享,增大了该秘密共享算法的应用范围。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,为本申请提供的一种数据处理方法一个实施例的流程图,该方法可以包括以下几个步骤:
101:随机选取多项式环上第一数量个第一元素,以第一数量个第一元素作为系数,多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式。
其中,待共享秘密为多项式环上的元素。
待共享秘密的实现可以包括秘密分享以及秘密恢复两个阶段。其中,进行秘密分享时,可以将待共享秘密分为一定数量个秘密份额,如m个,进行秘密恢复时,只需由该一定数量中的部分数量个秘密份额即可得到待共享秘密,如k个,k不大于m,k与m都为整数。
其中,可以利用多项式进行秘密分享。以待共享秘密分为m个秘密份额,由k个秘密份额进行恢复为例,该多项式具体可以是k-1次多项式,且该多项式中的常数项是待共享秘密。
本实施例中,待共享秘密为多项式环上的元素,多项式环指的是由系数在环R中的多项式构成的环,其中环R可以实现为交换环、整数环、剩余类环等,环R及多项式的实现可以根据实际应用场景进行设置,此处不进行具体限制。上述多项式环中的代数运算由多项式的乘法与加法定义。
为了对多项式环上的元素进行秘密共享,上述多项式的系数以及变量均可以是多项式环上的元素,可以随机选取获得。为了便于描述,可以将多项式中系数对应的元素称为第一元素,以及将变量对应的元素称为第二元素。
具体的,随机选取多项式环上第一数量个第一元素,以及第二元素,以待共享秘密作为常数项,第二元素作为变量,第一数量个第一元素作为系数,确定第一数量次多项式。以待共享秘密分为m个秘密份额,由k个秘密份额进行恢复为例,该第一数量可以为k-1。
102:基于该多项式,分别计算多项式环中第二数量个第二元素对应的值,以及基于第二数量个第二元素及各自对应的值,确定包含待共享秘密的第二数量个秘密份额的秘密份额集合。
上述多项式确定后,可以基于该多项式进行秘密分享。其中,可以将待共享秘密分为第二数量个秘密份额。具体的,可以利用该多项式,分别计算第二数量个第二元素对应的值,并由该第二数量个第二元素以及各自对应的值,确定第二数量个秘密份额。以待共享秘密分为m个秘密份额,由k个秘密份额进行恢复为例,该第二数量可以为m。
为了便于描述,可选的,可以确定包含该第二数量个秘密份额的秘密份额集合。
103:利用拉格朗日插值算法对秘密份额集合中的第三数量个秘密份额进行计算,获得待共享秘密。
其中,第三数量比第一数量多一,以及第二数量不小于第三数量。
本实施例中,可以利用拉格朗日插值算法实现秘密恢复。在进行秘密恢复时,可以利用上述秘密份额集合中的部分秘密份额进行计算。结合拉格朗日插值算法可以对多项式环上的元素进行处理,且处理方式与整数域上元素相同。因此,上述秘密份额集合中的秘密份额中的元素都是多项式环上的元素时,可以利用拉格朗日插值算法对秘密份额进行计算,进行秘密恢复。
具体的,可以利用拉格朗日插值算法对秘密份额集合中的第三数量个秘密份额进行计算,获得待共享秘密。以待共享秘密分为m个秘密份额,由k个秘密份额进行恢复为例,该第三数量可以为k,m不小于k。
本实施例中,待共享秘密是多项式环上的元素,以该待共享秘密作为常数项,该多项式环上的元素作为系数和变量,确定多项式环上的多项式,并利用该多项式进行秘密分享获得一定数量个秘密份额,结合拉格朗日插值算法可以对多项式环上的元素进行处理,因此利用拉格朗日插值算法对一定数量个秘密份额中的部分数量个秘密份额进行秘密恢复,由此可以实现多项式环上的秘密共享,可以直接对多项式环上的元素进行秘密共享,增大了该秘密共享算法的应用范围。
在实际应用中,多项式环可以根据系统参数进行计算获得,其中,该系统参数可以由待共享秘密的生成方生成。在某些实施例中,多项式环中多项式的系数可以是剩余类环上的元素。其中,多项式环可以用Rq表示,Rq表示Zq【X】/(Xn+1)。
具体的,多项式环Rq可以实现为如下多项式环公式;
其中,Rq表示多项式环,Zq表示模q的剩余类环,q表示系统参数。
基于上述多项式环公式,待共享秘密可以是多项式环Rq上的元素,如可以用a0表示。
进一步地,多项式环Rq确定后,可以随机选取多项式环Rq上第一数量个第一元素,如可以用ai表示,以及第二元素,如可以用ν表示。基于该多个第一数量的第一元素、第二元素以及待共享秘密,确定第一数量次多项式。
可选的,以第一数量个第一元素作为系数,多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式的方法可以包括:
按照如下所示的第一公式确定多项式:
其中,f(ν)表示多项式,ai∈Rq,ai(i=1,2,···,k-1)表示第一元素,k-1表示第一数量,a0表示待共享秘密,Rq表示多项式环,ν表示第二元素。
根据上述第一公式可知,待共享秘密a0为常数项,k-1个第一元素ai为k-1个系数,第二元素ν为变量,次数i=0,1,2,···,k-1,为k-1次多项式。
实际应用中,利用上述k-1次多项式,可以对待共享秘密进行分享,获得第二数量个秘密份额。在某些实施例中,基于该多项式,分别计算多项式环中第二数量个第二元素对应的值的方法可以包括:
随机选取多项式中第二数量个第二元素;
将第二数量个第二元素分别代入多项式,计算获得对应的值。
具体的,可以随机选取多项式环Rq上第二数量个第二元素,如可以用νi表示。将该第二数量个第二元素分别代入上述k-1次多项式,可以计算获得与各第二元素对应的值。如将ν1代入上述k-1次多项式,可以计算获得对应的值f(ν1),将ν2代入上述k-1次多项式,可以计算获得对应的值f(ν2),依次计算,将νm代入上述k-1次多项式,可以计算获得对应的值f(νm)。其中,m可以表示第二数量。
进一步地,基于第二数量个第二元素及各自对应的值,确定包含待共享秘密的第二数量个秘密份额的秘密份额集合的方法可以包括:
按照如下所示的第二公式确定秘密份额集合:
该第二公式可以为:S={(νi,f(νi))|i=1,2,···,m};
其中,S表示秘密份额集合,(νi,f(νi))表示秘密份额,f(νi)表示νi对应的值,νi表示第二元素,m表示第二数量。
实际应用中,将待共享秘密进行分享获得多个秘密份额之后,可以将多个该秘密份额发送至多个秘密共享者,以供各秘密共享者存储各自的秘密份额。在进行秘密恢复时,根据多个秘密共享者中部分秘密共享者各自的秘密份额,可以获得完整的待共享秘密。
在进行秘密恢复时,可以从上述秘密份额集合中随机选取第三数量个秘密份额,利用拉格朗日插值算法对该第三数量个秘密份额进行计算,以获得完整的待共享秘密。在某些实施例中,该方法可以包括:
利用拉格朗日插值算法,按照如下所示的第三公式对秘密份额集合中的第三数量个秘密份额进行计算,获得秘密恢复函数,并基于秘密恢复函数,确定待共享秘密:
其中,f'(ν)表示秘密恢复函数,(νij,f(νij))表示秘密份额集合S中的秘密份额,k表示第三数量。
基于上述秘密恢复函数,可以计算f'(0),即为完整的待共享秘密。利用拉格朗日插值算法进行秘密恢复的具体实现可以参考传统方案中秘密恢复的实现过程,本申请不再进行赘述。
下面以数据加密时对密钥进行共享的加密场景,对上述数据处理方法进行说明。如图2所示,为本申请提供的一种数据处理方法另一个实施例的流程图,该方法可以包括:
201:随机选取多项式环上第一数量个第一元素,以第一数量个第一元素作为系数,多项式环上的第二元素作为变量,待共享密钥作为常数项,确定第一数量次多项式。
其中,待共享密钥为多项式环上的元素。
本实施例中,可以应用于加密场景,待共享密钥例如可以实现为待共享私钥。该待共享密钥可以由例如可信的密钥生成中心生成。该密钥可以发送至多个不同的密钥共享者进行单独存储,以提高密钥的安全性。
具体的,步骤201的实现过程可以参考图1所示实施例中步骤101的具体实现过程,此处不再进行赘述
202:基于多项式,分别计算多项式环中第二数量个第二元素对应的值,以及基于第二数量个第二元素及各自对应的值,确定包含待共享密钥的第二数量个密钥份额的密钥份额集合。
203:利用拉格朗日插值算法对密钥份额集合中的第三数量个密钥份额进行计算,获得待共享密钥,第三数量比第一数量多一,以及第二数量不小于第三数量。
本实施例中,步骤202~203的实现过程可以参考图1所示实施例中步骤102~103的具体实现过程,此处不再进行赘述。
本实施例中,待共享密钥为多项式环上的元素,以该待共享密钥作为常数项,该多项式环上的元素作为系数和变量,确定多项式环上的多项式,并利用该多项式进行密钥分享获得一定数量个密钥份额,结合拉格朗日插值算法可以对多项式环上的元素进行处理,因此利用拉格朗日插值算法对一定数量个密钥份额中的部分数量个密钥份额进行密钥恢复,由此可以实现多项式环上的密钥共享,实现了多项式环上的数据加密场景,增大了应用范围。
实际应用中,上述方法还可以包括:
确定第二数量个密钥共享者,并将第二数量个密钥份额分别发送至对应的密钥共享者;
接收第二数量个密钥共享者中第三数量个密钥共享者发送的密钥份额。
其中,获得多个密钥份额之后,可以将多个密钥份额分别发送至多个密钥共享者,以供各密钥共享者存储各自的密钥份额。该密钥份额的数量可以与参与密钥共享的密钥共享者的数量一致。
具体的,参与该密钥共享的多个密钥共享者可以预先设置。可选的,可以对多个密钥共享者的标识信息,如ID等,进行预先存储,在进行密钥分享时,可以根据该标识信息,将密钥份额发送至参与密钥共享的多个密钥共享者,各密钥共享者存储各自对应的密钥份额。
在进行密钥恢复时,可以接收多个密钥共享者中部分密钥共享者发送的密钥份额,并基于接收到的密钥份额进行密钥恢复,获得完整的密钥。
如图3所示,为本申请提供的一种数据处理装置一个实施例的结构示意图,该装置可以包括以下几个模块:
确定模块301,用于随机选取多项式环上第一数量个第一元素,以第一数量个第一元素作为系数,多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;待共享秘密为多项式环上的元素;
第一计算模块302,用于基于多项式,分别计算多项式环中第二数量个第二元素对应的值,以及基于第二数量个第二元素及各自对应的值,确定包含待共享秘密的第二数量个秘密份额的秘密份额集合;
第二计算模块303,用于利用拉格朗日插值算法对秘密份额集合中的第三数量个秘密份额进行计算,获得待共享秘密,第三数量比第一数量多一,以及第二数量不小于第三数量。
本实施例中,待共享秘密为多项式环上的元素,以该待共享秘密作为常数项,该多项式环上的元素作为系数和变量,确定多项式环上的多项式,并利用该多项式进行秘密分享获得一定数量个秘密份额,结合拉格朗日插值算法可以对多项式环上的元素进行处理,因此利用拉格朗日插值算法对一定数量个秘密份额中的部分数量个秘密份额进行秘密恢复,由此可以实现多项式环上的秘密共享,可以直接对多项式环上的元素进行秘密共享,增大了该秘密共享算法的应用范围。
在某些实施例中,确定模块301具体可以用于按照如下所示的第一公式确定多项式:
其中,f(ν)表示多项式,ai∈Rq,ai(i=1,2,···,k-1)表示第一元素,k-1表示第一数量,a0表示待共享秘密,Rq表示多项式环,ν表示第二元素。
在某些实施例中,第一计算模块302具体可以用于随机选取多项式中第二数量个第二元素,将第二数量个第二元素分别代入多项式,计算获得对应的值,以及按照如下所示的第二公式确定秘密份额集合:
第二公式为:S={(νi,f(νi))|i=1,2,···,m};
其中,S表示秘密份额集合,(νi,f(νi))表示秘密份额,f(νi)表示νi对应的值,νi表示第二元素,m表示第二数量。
在某些实施例中,第二计算模块303具体可以用于利用拉格朗日插值算法,按照如下所示的第三公式对秘密份额集合中的第三数量个秘密份额进行计算,获得秘密恢复函数,基于秘密恢复函数,确定待共享秘密:
其中,f'(ν)表示秘密恢复函数,(νij,f(νij))表示秘密份额集合S中的秘密份额,k表示第三数量。
图3所述的数据处理装置可以执行图1所示实施例所述的数据处理方法,其实现原理和技术效果不再赘述。对于上述实施例中的数据处理装置其中各个模块、单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
可选的,图3所述的数据处理装置还可以执行图2所示实施例所述的数据处理方法,其实现原理和技术效果不再赘述。
如图4所示,为本申请提供的一种数据处理系统一个实施例的结构示意图,包括存储组件401及处理组件402;
存储组件401用于存储一条或多条计算指令,该一条或多条计算机指令供处理组件402调用执行;
处理组件402用于:
随机选取多项式环上第一数量个第一元素,以第一数量个第一元素作为系数,多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;待共享秘密为多项式环上的元素;
基于多项式,分别计算多项式环中第二数量个第二元素对应的值,以及基于第二数量个第二元素及各自对应的值,确定包含待共享秘密的第二数量个秘密份额的秘密份额集合;
利用拉格朗日插值算法对秘密份额集合中的第三数量个秘密份额进行计算,获得待共享秘密,第三数量比第一数量多一,以及第二数量不小于第三数量。
本实施例中,待共享秘密为多项式环上的元素,以该待共享秘密作为常数项,该多项式环上的元素作为系数和变量,确定多项式环上的多项式,并利用该多项式进行秘密分享获得一定数量个秘密份额,结合拉格朗日插值算法可以对多项式环上的元素进行处理,因此利用拉格朗日插值算法对一定数量个秘密份额中的部分数量个秘密份额进行秘密恢复,由此可以实现多项式环上的秘密共享,可以直接对多项式环上的元素进行秘密共享,增大了该秘密共享算法的应用范围。
其中,处理组件402可以包括一个或多个处理器来执行计算机指令,以完成上述的方法中的全部或部分步骤。当然处理组件也可以为一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
存储组件401被配置为存储各种类型的数据以支持在终端的操作。存储组件可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
当然,该系统必然还可以包括其他部件,例如输入/输出接口、通信组件等。
输入/输出接口为处理组件和外围接口模块之间提供接口,上述外围接口模块可以是输出设备、输入设备等。
通信组件被配置为便于该系统和其他设备之间有线或无线方式的通信等。
本申请实施例还提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被计算机执行时可以实现上述图1或图2所示实施例的数据处理方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施例的描述,本领域的技术人员可以清楚地了解到各实施例可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;所述待共享秘密为所述多项式环上的元素;
基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享秘密的第二数量个秘密份额的秘密份额集合;
利用拉格朗日插值算法对所述秘密份额集合中的第三数量个秘密份额进行计算,获得所述待共享秘密,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
2.根据权利要求1所述的方法,其特征在于,所述多项式环中多项式的系数为剩余类环上的元素。
4.根据权利要求3所述的方法,其特征在于,所述基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值包括:
随机选取所述多项式中第二数量个第二元素;
将所述第二数量个第二元素分别代入所述多项式,计算获得对应的值;
所述基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享秘密的第二数量个秘密份额的秘密份额集合包括:
按照如下所示的第二公式确定秘密份额集合:
所述第二公式为:S={(νi,f(νi))|i=1,2,···,m};
其中,S表示秘密份额集合,(νi,f(νi))表示秘密份额,f(νi)表示νi对应的值,νi表示第二元素,m表示第二数量。
6.一种数据处理方法,其特征在于,包括:
随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享密钥作为常数项,确定第一数量次多项式;所述待共享密钥为所述多项式环上的元素;
基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享密钥的第二数量个密钥份额的密钥份额集合;
利用拉格朗日插值算法对所述密钥份额集合中的第三数量个密钥份额进行计算,获得所述待共享密钥,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
7.根据权利要求6所述的方法,其特征在于,还包括:
确定第二数量个密钥共享者,并将所述第二数量个密钥份额分别发送至对应的密钥共享者;
接收所述第二数量个密钥共享者中第三数量个密钥共享者发送的密钥份额。
8.一种数据处理装置,其特征在于,包括:
确定模块,用于随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;所述待共享秘密为所述多项式环上的元素;
第一计算模块,用于基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享秘密的第二数量个秘密份额的秘密份额集合;
第二计算模块,用于利用拉格朗日插值算法对所述秘密份额集合中的第三数量个秘密份额进行计算,获得所述待共享秘密,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
9.一种数据处理系统,其特征在于,包括存储组件及处理组件;
所述存储组件用于存储一条或多条计算指令,所述一条或多条计算机指令供所述处理组件调用执行;
所述处理组件用于:
随机选取多项式环上第一数量个第一元素,以所述第一数量个第一元素作为系数,所述多项式环上的第二元素作为变量,待共享秘密作为常数项,确定第一数量次多项式;所述待共享秘密为所述多项式环上的元素;
基于所述多项式,分别计算所述多项式环中第二数量个第二元素对应的值,以及基于所述第二数量个第二元素及各自对应的值,确定包含所述待共享秘密的第二数量个秘密份额的秘密份额集合;
利用拉格朗日插值算法对所述秘密份额集合中的第三数量个秘密份额进行计算,获得所述待共享秘密,所述第三数量比所述第一数量多一,以及所述第二数量不小于所述第三数量。
10.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如权利要求1至7中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210068477.8A CN114091089A (zh) | 2022-01-20 | 2022-01-20 | 数据处理方法、装置、系统及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210068477.8A CN114091089A (zh) | 2022-01-20 | 2022-01-20 | 数据处理方法、装置、系统及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114091089A true CN114091089A (zh) | 2022-02-25 |
Family
ID=80308971
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210068477.8A Pending CN114091089A (zh) | 2022-01-20 | 2022-01-20 | 数据处理方法、装置、系统及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114091089A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090136024A1 (en) * | 2007-10-29 | 2009-05-28 | Schneider James P | Sharing a secret using polynomials |
CN101872617A (zh) * | 2010-05-19 | 2010-10-27 | 中科院成都信息技术有限公司 | 一种数字音频秘密分享及恢复方法 |
US20190312727A1 (en) * | 2018-04-04 | 2019-10-10 | International Business Machines Corporation | Computation using lattice-based cryptography |
CN113591102A (zh) * | 2021-06-25 | 2021-11-02 | 中山大学 | 一种基于格的分布式门限加法同态加密方法 |
CN113726517A (zh) * | 2021-08-10 | 2021-11-30 | 北京信安世纪科技股份有限公司 | 一种信息共享方法及装置 |
CN113904808A (zh) * | 2021-09-08 | 2022-01-07 | 北京信安世纪科技股份有限公司 | 一种私钥分发、解密方法、装置、设备及介质 |
-
2022
- 2022-01-20 CN CN202210068477.8A patent/CN114091089A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090136024A1 (en) * | 2007-10-29 | 2009-05-28 | Schneider James P | Sharing a secret using polynomials |
CN101872617A (zh) * | 2010-05-19 | 2010-10-27 | 中科院成都信息技术有限公司 | 一种数字音频秘密分享及恢复方法 |
US20190312727A1 (en) * | 2018-04-04 | 2019-10-10 | International Business Machines Corporation | Computation using lattice-based cryptography |
CN113591102A (zh) * | 2021-06-25 | 2021-11-02 | 中山大学 | 一种基于格的分布式门限加法同态加密方法 |
CN113726517A (zh) * | 2021-08-10 | 2021-11-30 | 北京信安世纪科技股份有限公司 | 一种信息共享方法及装置 |
CN113904808A (zh) * | 2021-09-08 | 2022-01-07 | 北京信安世纪科技股份有限公司 | 一种私钥分发、解密方法、装置、设备及介质 |
Non-Patent Citations (1)
Title |
---|
吴蕾: "基于多项式的秘密共享构造及其扩展应用研究", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6008316B2 (ja) | 秘密分散装置および秘密分散プログラム | |
US11784801B2 (en) | Key management method and related device | |
US11082482B2 (en) | Block chain encoding with fair delay for distributed network devices | |
US9973334B2 (en) | Homomorphically-created symmetric key | |
EP3096488B1 (en) | Hypersphere-based multivariable public key encryption/decryption system and method | |
CN108055128B (zh) | Rsa密钥的生成方法、装置、存储介质及计算机设备 | |
CN115102688B (zh) | 数据处理方法、多项式计算方法及电子设备 | |
CN113051590A (zh) | 一种数据处理方法和相关设备 | |
US20180337695A1 (en) | Block Chain Decoding With Fair Delay For Distributed Network Devices | |
CN112597542B (zh) | 目标资产数据的聚合方法及装置、存储介质、电子装置 | |
CN108028751B (zh) | 用于移动主动秘密共享的系统、计算机可读介质和方法 | |
CN107888385B (zh) | Rsa模数生成方法、rsa密钥生成方法、计算机设备及介质 | |
WO2010138473A1 (en) | A method of efficient secure function evaluation using resettable tamper-resistant hardware tokens | |
CN113726517A (zh) | 一种信息共享方法及装置 | |
CN116561787A (zh) | 视觉图像分类模型的训练方法、装置及电子设备 | |
CN116170142B (zh) | 分布式协同解密方法、设备和存储介质 | |
JP6933290B2 (ja) | 秘密計算装置、秘密計算認証システム、秘密計算方法、およびプログラム | |
CN117040764A (zh) | 一种秘钥份额更新方法、计算机设备和存储介质 | |
CN116915414A (zh) | 一种实现门限签名的方法、计算机设备和存储介质 | |
CN115357939B (zh) | 一种隐私保护数据计算方法和设备 | |
CN116861477A (zh) | 基于隐私保护的数据处理方法、系统、终端及存储介质 | |
CN114091089A (zh) | 数据处理方法、装置、系统及计算机可读存储介质 | |
JPWO2020165931A1 (ja) | 情報処理装置、秘密計算方法及びプログラム | |
CN112019335B (zh) | 一种基于sm2算法的多方协同加解密方法及装置、系统、介质 | |
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 |