一种支持密态下多方私有数据操作的后量子加密方法转让专利

申请号 : CN202111481147.3

文献号 : CN113901506B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 曹鹤阳李发强潘亮

申请人 : 南京区盟链信息科技有限公司

摘要 :

本发明公开了一种支持密态下多方私有数据操作的后量子加密方法。该方法包括生成主公钥、主私钥、公共解密密钥和私有解密密钥,公布主公钥和公共解密密钥,并将k份私有解密密钥分发给参与方;每一参与方采用主公钥独立加密其私有数据,生成密文并发布至云服务器;云服务器根据需要计算的函数,并按计算顺序对密文执行同态运算操作;所有参与方合作进行解密操作得到明文计算结果。本发明相较于BGV型多方同态加密的方案,不需要复杂的重线性化技术和模切换技术;相较于GSW型的多方同态加密方案,更加简洁,因此拥有简单快速的密文操作;相较于其它NTRU型多方加密方案,本发明拥有安全高效的联合解密协议,并且能够抵御子域攻击。

权利要求 :

1.一种支持密态下多方私有数据操作的后量子加密方法,其特征在于,包括:步骤A、生成主公钥、主私钥、公共解密密钥和私有解密密钥,公布主公钥和公共解密密钥,并将k份私有解密密钥分发给参与方 ,k为大于2的自然数;

步骤B、每一参与方 采用所述主公钥独立加密其私有数据,生成密文并发布至云服务器,1≤i≤k;

步骤C、所述云服务器根据需要计算的函数,并按计算顺序对所述密文执行同态运算操作;

步骤D、所有参与方合作进行解密操作得到明文计算结果;

所述步骤A具体包括:

步骤A1、选择环 ,其中,n是2的幂次,模数 为素数,模数 的长度 ,选取分别服从高斯分布的 、 和 ,以被用于多项式采样;

步骤A2、从 抽取向量 和向量 ,生成主私钥 ,生成并发布主公钥,其中,向量 ;

步骤A3、从环 中随机选取环元素 和环元素 ,从 中随机选取环元素 ,其中,,分别计算 ,生成并发布公共解密密钥;

步骤A4、从环 中随机选取环元素 使得 ,将环元素 分发给参与方 作为其私有解密密钥。

2.根据权利要求1所述的支持密态下多方私有数据操作的后量子加密方法,其特征在于,所述步骤B具体包括:步骤B1、每一参与方 计算 ,其中,向量 取自 ;

步骤B2、对于明文 ,生成密文 并发布。

3.根据权利要求2所述的支持密态下多方私有数据操作的后量子加密方法,其特征在于,所述同态运算操作包括同态加法运算操作和\或同态乘法运算操作,具体如下:在需要执行同态加法时,对于任意两个密文 和 ,计算 并输出;

在需要执行同态乘法时,对于任意两个密文 和 ,计算 并输出,其中,向量。

4.根据权利要求3所述的支持密态下多方私有数据操作的后量子加密方法,其特征在于,所述步骤D具体包括:步骤D1、提取最终得到密文 的首项 ,其中, ,计算:;

并令 ;

步骤D2、每个参与方 分别计算并发布 ,其中,向量 取自;

步骤D3、恢复明文计算结果 。

说明书 :

一种支持密态下多方私有数据操作的后量子加密方法

技术领域

[0001] 本发明涉及支持密态下多方私有数据操作的后量子加密方法技术领域,具体涉及一种支持密态下多方私有数据操作的后量子加密方法。

背景技术

[0002] 量子计算机利用量子力学原理来解决传统计算机难以解决的数学问题。随着相关研究的开展与推进,传统的基于离散对数问题、大整数分解等困难问题的公钥密码系统受
到了前所未有的威胁。一旦量子计算机被大规模部署,将严重损害互联网等领域数字通信
的保密性和完整性。因此,研究和设计能够抵御量子攻击的加密方案是当前密码技术领域
的重要课题。目前已有大量基于格理论、基于编码理论和基于多变量等的密码体制能抵抗
量子攻击,被称之为后量子密码。公钥密码已经进入了后量子密码时代。
[0003] 在诸如云计算、安全多方计算的应用场景中,希望加密方案支持第三方不解密的情况下直接对加密数据执行计算。这一概念最早由Rivest等人于1978年提出,称之为隐私
同态。后续的研究中将此类方案称为同态加密方案。具体来说,明文与密文的运算需要满足
以下同态性质:
[0004]
[0005] 其中+和⊕分别是明文和密文空间上的运算。根据支持的计算类型和支持程度,同态加密可以分为:半同态加密、部分同态加密和全同态加密,分别支持单一同态运算、有限
次数同态运算和任意次数同态运算。尽管全同态加密适用场景更广,但需要复杂的自举操
作,因此其效率较低。在实际应用中,通常使用效率较高的层次型全同态加密,根据预期达
到的电路深度调整参数,以能够执行所需的计算。
[0006] 此外,同态加密的使用存在一个重要限制,它要求所有数据都在同一个公钥下加密。为了克服这个缺点,L’opez‑Alt等人于2012年进一步提出了多密钥同态加密的概念,其
优势在于支持对不同参与方提供的密文数据进行处理,并且能以最小通信成本设计轮数较
优的安全多方计算协议。
[0007] 目前主流的多方同态加密方案主要包括BGV型、GSW型和NTRU型等。BGV型和GSW型方案基于带误差学习问题(LWE)或环上的带误差学习问题(RLWE)构造,这两类问题是格上
的平均情况下困难问题,分别由Regev和Lyubashevsky等人于2005年和2010年提出;NTRU型
方案基于Stehlé等人于2011年提出的NTRU加密方案变体,其困难性可以归约到RLWE问题。
因此,上述三类多方同态加密方案均满足抗量子攻击的特性。相较于前两类,NTRU加密方案
的密文和密钥都是单一的多项式,使得NTRU型多方同态加密方案往往拥有更为简洁的密钥
和密文,以及更为简单快速的同态操作。但是,现有NTRU型多方同态加密方案存在的主要问
题在于:使用较窄的误差分布,从而需要依赖判定性小多项式比(DSPR)问题假设,易于遭受
子域格攻击;缺乏高效且安全的联合解密协议。

发明内容

[0008] 本发明的目的是针对现有技术存在的不足,本发明提供一种基于NTRU的支持密态下多方私有数据操作的后量子加密方案,在保证后量子安全的前提下支持密态下多个参与
方私有数据的加法和乘法操作,有效实现后量子密码应用场景下的高效密文数据同态操
作,并能实现多参与方进行联合解密,具有丰富的功能性与实用性。
[0009] 为实现上述目的,本发明提供了一种支持密态下多方私有数据操作的后量子加密方法,包括:
[0010] 步骤A、生成主公钥、主私钥、公共解密密钥和私有解密密钥,公布主公钥和公共解密密钥,并将k份私有解密密钥分发给参与方 ,k为大于2的自然数;
[0011] 步骤B、每一参与方 采用所述主公钥独立加密其私有数据,生成密文并发布至云服务器,1≤i≤k;
[0012] 步骤C、所述云服务器根据需要计算的函数,并按计算顺序对所述密文执行同态运算操作;
[0013] 步骤D、所有参与方合作进行解密操作得到明文计算结果。
[0014] 进一步的,所述步骤A具体包括:
[0015] 步骤A1、选择环 ,其中,n是2的幂次,模数 为素数,模数的长度 ,选取分别服从高斯分布的 、 和 ,以被用于多项式
采样;
[0016] 步骤A2、从 抽取向量 和向量 ,生成主私钥 ,生成并发布主公钥 ,其中,向量 ;
[0017] 步骤A3、从环 中随机选取环元素 和环元素 ,从 中随机选取环元素 ,其中, ,分别计算 ,生成并发布公共解密密钥

[0018] 步骤A4、从环 中随机选取环元素 使得 ,将环元素分发给参与方 作为其私有解密密钥。
[0019] 进一步的,所述步骤B具体包括:
[0020] 步骤B1、每一参与方 计算 ,其中,向量 取自 ;
[0021] 步骤B2、对于明文 ,生成密文 并发布。
[0022] 进一步的,所述同态运算操作包括同态加法运算操作和\或同态乘法运算操作,具体如下:
[0023] 在需要执行同态加法时,对于任意两个密文 和 ,计算 并输出;
[0024] 在需要执行同态乘法时,对于任意两个密文 和 ,计算 并输出,其中,向量 。
[0025] 进一步的,所述步骤D具体包括:
[0026] 步骤D1、提取最终得到密文 的首项 ,其中, ,计算:
[0027] ;
[0028] 并令 ;
[0029] 步骤D2、每个参与方 分别计算并发布 ,其中,向量 取自 ;
[0030] 步骤D3、恢复明文计算结果 。
[0031] 有益效果:本发明相较于BGV型多方同态加密的方案,不需要复杂的重线性化技术和模切换技术;相较于GSW型的多方同态加密方案,本发明的密文形式更加简洁,因此拥有
简单快速的密文操作;相较于其它NTRU型多方加密方案,本发明拥有安全高效的联合解密
协议,并且能够抵御子域攻击。

附图说明

[0032] 图1是本发明实施例的支持密态下多方私有数据操作的后量子加密方法的流程示意图。

具体实施方式

[0033] 下面结合附图和具体实施例,进一步阐明本发明,本实施例在以本发明技术方案为前提下进行实施,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围。
[0034] 本发明实施例提供了一种支持密态下多方私有数据操作的后量子加密方法,包括:
[0035] 步骤A、生成主公钥、主私钥、公共解密密钥和私有解密密钥,公布主公钥和公共解密密钥,并将k份私有解密密钥分发给参与方 ,k为大于2的自然数。该步骤可由第
三方密钥授权机构执行,步骤A具体包括:
[0036] 步骤A1、选择环 ,其中,n是2的幂次,模数 为素数,模数的长度 ,选取分别服从高斯分布的 、 和 ,以被用于多项式
采样。
[0037] 步骤A2、从 抽取向量 和 ,生成主私钥 ,生成并发布主公钥,其中,向量 。
[0038] 步骤A3、从环 中随机选取环元素 和 ,从 中随机选取环元素 ,其中,,分别计算 ,生成并发布公共解密密钥

[0039] 步骤A4、从环 中随机选取环元素 使得 ,将 分发给参与方 作为其私有解密密钥,1≤i≤k。
[0040] 步骤B、每一参与方 采用所述主公钥独立加密其私有数据,生成密文并发布至云服务器。步骤B具体包括:
[0041] 步骤B1、每一参与方 计算 ,其中,向量 取自 ;
[0042] 步骤B2、对于明文 ,生成密文 并发布。
[0043] 步骤C、所述云服务器根据需要计算的函数,并按计算顺序对所述密文执行同态运算操作。本发明实施例可支持任意可计算的函数,该函数为多个参与方希望共同计算某个
函数,云服务器根据将函数表示成加法和乘法操作,按照计算顺序对密文进行同态运算操
作。具体的,同态运算操作包括同态加法运算操作和\或同态乘法运算操作,具体如下:
[0044] 在需要执行同态加法时,对于任意两个密文 和 ,计算 并输出。
[0045] 在需要执行同态乘法时,对于任意两个密文 和 ,计算 并输出,其中,向量 。
[0046] 步骤D、所有参与方合作进行解密操作得到明文计算结果。步骤D具体包括:
[0047] 步骤D1、提取最终得到密文 的首项 ,其中, ,计算:
[0048] ;
[0049] 并令 ;即: 、 ;
[0050] 步骤D2、每个参与方 分别计算并发布 ,其中,向量 取自 ;
[0051] 步骤D3、恢复明文计算结果 。
[0052] 参见图1,以下以共有3个参与方举例说明,三个参与方分别为 ,三个参与方依次持有数据 。本实例的目标是在不泄露各方私有数据的前提下计算:

[0053] 下述所有运算在环 上进行,其中n是2的幂次,是模数,模数 的长度 。选取分别服从高斯分布的 、 和 被用于多项式
采样。向量 。上述参数均根据安全参数λ选取。按上述步骤生成并发布
主私钥 、主公钥 和公共解密密钥 后,随机选取环元素 ,分别发给参与方
作为其私有解密密钥,使得 。
[0054] 三个参与方中的任意一方 计算 ,其中,向量 取自 ;对于明文 ,生成密文 并发布。
[0055] 云服务器对于任意密文 计算并输出 ,其中,,满足 。
[0056] 然后提取 的首项 ,计算:
[0057] ;
[0058] 并令 ;每个参与方 分别计算并发布,其中 ,向量 取自 ;最后恢复明文计算结 果

[0059] 以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,其它未具体描述的部分,属于现有技术或公知常识。在不脱离本发明原理的前提
下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。