CN115801224A - 一种云计算环境中支持浮点数运算的全同态加密方法 - Google Patents

一种云计算环境中支持浮点数运算的全同态加密方法 Download PDF

Info

Publication number
CN115801224A
CN115801224A CN202310059175.9A CN202310059175A CN115801224A CN 115801224 A CN115801224 A CN 115801224A CN 202310059175 A CN202310059175 A CN 202310059175A CN 115801224 A CN115801224 A CN 115801224A
Authority
CN
China
Prior art keywords
ciphertext
point number
key
floating point
projection
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.)
Granted
Application number
CN202310059175.9A
Other languages
English (en)
Other versions
CN115801224B (zh
Inventor
李晓东
金鑫
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.)
Beijing Hidden Computing Technology Co ltd
Original Assignee
Beijing Hidden Computing Technology Co ltd
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 Beijing Hidden Computing Technology Co ltd filed Critical Beijing Hidden Computing Technology Co ltd
Priority to CN202310059175.9A priority Critical patent/CN115801224B/zh
Publication of CN115801224A publication Critical patent/CN115801224A/zh
Application granted granted Critical
Publication of CN115801224B publication Critical patent/CN115801224B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明公开了一种云计算环境中支持浮点数运算的全同态加密方法,包括:根据用户输入的用户密钥,生成秘密密钥、公共密钥和评估密钥;对明文浮点数进行精度转化,获得原始信息;根据秘密密钥将所述原始信息分裂成真实模分量集;根据所述真实模分量集生成冗余集;将真实模分量集分别插入所述冗余集中,生成密文主体;将明文浮点数四舍五入保留p位小数,进行公钥加密运算;运算密文X和Y在进行同态的加法和乘法前进行对齐操作;对对齐后的密文X和Y所有的模分量进行相同的加法和乘法运算,得到新的密文Z;根据所述秘密密钥,对所述密文Z解密。该方法易于实现,安全性高,支持任意深度的浮点数加法同态操作和乘法同态操作,适用于云安全环境。

Description

一种云计算环境中支持浮点数运算的全同态加密方法
技术领域
本发明涉及云计算信息安全技术领域,特别涉及一种云计算环境中支持浮点数运算的全同态加密方法。
背景技术
随着云计算和大数据技术的高速发展,越来越多的企业和个人开始寻求外包服务,将数据和应用迁移到云平台上。但是,云计算可信与否成为用户业务向云迁移的最大顾虑,随着越来越多的隐私数据和个人信息汇集存储到云服务提供商服务器,以及云安全事故的频发,大数据、云计算以及隐私保护等问题逐渐成为热门话题。在云平台下,用户数据的隐私可能会泄露给公众或未经授权的第三方,为了保护用户数据的隐私,解决数据可能被滥用的问题,相关专家和学者也在不断地进行探索。目前关于云数据安全研究取得了日新月异的成果,但还不能满足用户对其隐私保护的需求,安全问题成为阻碍云计算业务发展的主要障碍。
一种解决方案是使用同态加密方法。同态加密不同于以往“数据安全存储”的加密方法,同态加密的关键特征在于其关注点为“数据安全处理”,它可以保证在不解密的情况下对密文进行计算,使得解密后的结果与明文执行相同计算得到的结果相同,即对于任意有效的操作f及明文m,有性质f(Enc(m)=Enc(f(m)),其中Enc表示加密。只有持有密钥的用户才能解密处理后的密文,获得期待的计算结果。同态加密技术可以为云计算技术提供安全保障,用户可以将数据和数据的操作权委托给第三方而不泄露自身的隐私,保证了隐私数据的安全性。全同态加密方法理论上允许云服务端对加密后的数据进行任意的操作,且服务端永远只存储密文,除了拥有解密密钥的用户其他人无法查看明文信息。这一特性适合于云服务场景,满足将计算委托给云端计算资源的需求,兼顾了数据安全性和实用性。
现有全同态加密方法大多只支持整数型数据的同态运算,或者少数支持浮点数运算的方案通常基于理想格、环等,操作复杂,难以实现,效率较低,因此无法满足实际应用的需求。
发明内容
本发明的目的在于提供一种云计算环境中支持浮点数运算的全同态加密方法,解决了浮点数运算的方案通常基于理想格、环等,操作复杂,难以实现,效率较低的问题。
为实现上述目的,本发明采取的技术方案为:
本发明提供一种云计算环境中支持浮点数运算的全同态加密方法,包括以下步骤:
S1、根据用户输入的用户密钥,生成秘密密钥SK、公共密钥PK和评估密钥EK;
S2、对明文浮点数M进行精度转化,获得原始信息P;
S3、根据秘密密钥SK将所述原始信息P分裂成真实模分量集m;
S4、根据所述真实模分量集m生成冗余集S;
S5、将所述真实模分量集m分别插入所述冗余集S中,生成密文主体C;
S6、将明文浮点数M四舍五入保留p位小数,进行公钥加密运算;
S7、运算密文X和Y在进行同态的加法和乘法前进行对齐操作;
S8、对对齐后的密文X和Y所有的模分量进行相同的加法和乘法运算,得到新的密文Z;
S9、根据所述秘密密钥SK,对所述密文Z解密。
进一步地,所述步骤S1包括:
根据用户输入的用户密钥Userkey随机生成一个投影基B={b1,b2,…,bn} 和位置基W={w1,w2,…wn},0≤wi<t;
其中,B用于将原始信息分裂,b1,b2,…,bn为B中的元素,b1,b2,…,bn两两互素,n的大小表示投影基的数量;W用来插入真实模分量,wi为真实模分量所在位置,t表示一个冗余向量中冗余项的个数,wi小于t;
生成秘密密钥SK包含用于做模投影的投影基B和位置基W、公共密钥PK为使用秘密密钥SK对浮点数1.0进行加密后的密文且包含投影基B,评估密钥EK包含投影基B。
进一步地,所述步骤S2包括:
将明文浮点数 M作为输入,四舍五入保留p位小数,然后乘以10p转为整数I;
整数I乘以一个放大倍数amp再加上一个随机正整数噪声e得到P;其中放大倍数amp≥106;记当前密文的放大倍数的扩张倍数为order,有效精度位数p的扩张倍数为level,密文的order和level初始值均为1。
进一步地,所述步骤S3包括:
根据秘密密钥SK包含的模投影基集合B将整数P分裂,整数P对投影基B中的元素分别进行取模操作,得到真实模分量集合m={m1,m2,…mn},mi=M mod bi,i=1,2,…,n。
进一步地,所述步骤S14中元素的值,生成n个分别包含t个冗余项的冗余向量,得到冗余集
Figure SMS_1
,其中
Figure SMS_2
,i=1,2,…n。
进一步地,所述步骤S5包括:
将真实模分量m分别插入冗余集S中,根据秘密密钥中SK包含的位置基W,将原始模分量集m中的元素按照位置基W中元素代表的插入位置,依次代替冗余集S原位置对应的元素,得到密文主体C,C={C1,C2,…,Cn},Ci={Ci1,Ci2,…C it}={Si1,S i2,…,mi…,Sit},i=1,2,…n;即Ci为真实模分量mi替换掉了冗余向量Si的第wi个冗余项后的模分量向量。
进一步地,所述步骤S6包括:
在进行公共密钥加密时,将明文浮点数M四舍五入保留p位小数,然后乘以10p转为整数,将该整数与公共密钥的每一个模分量进行乘法后对投影基B对应的元素项进行取模运算得到公共密钥加密后的密文。
进一步地,所述步骤S7包括:
根据密文X和密文Y的order值和level值进行加法运算对齐,密文X={X1, X2,…,Xn}、密文Y={Y1, Y2, …, Yn}和评估密钥EK中的投影基B={b1,b2,…,bn}进行对齐;
如果X的order值和level值小于等于Y的order值和level值,则
Figure SMS_3
,i=1,2,…n;
如果X的order值和level值大于Y的order值和level值,则
Figure SMS_4
,i=1,2,…n。
进一步地,所述步骤S8包括:
根据模运算的同态性和评估密钥EK,将对齐后的密文X和Y所有的模分量进行相同的加法和乘法运算,运算结果依次对投影基B对应的元素项进行取模运算得到新的密文Z={Z1, Z2,…Zn},Zi={Zi1, Zi2,…Zit}。
进一步地,所述步骤S9包括:
对密文Z解密时,根据私钥秘密SK中包含的真实模分量位置集W,得到计算后的真实模分量
Figure SMS_5
根据真实模分量R和对应的投影基B利用中国剩余定理解出中间结果T,再对T除以
Figure SMS_6
消除噪声得到
Figure SMS_7
,
Figure SMS_8
根据浮点精度level×p确定浮点数小数点的位置得到最终结果
Figure SMS_9
进一步地,参数选择中,所述步骤S1投影基B选取时,元素要小于步骤S2中的放大倍数amp,并且各元素的乘积要保证大于步骤S9中可能的中间结果T,即
Figure SMS_10
与现有技术相比,本发明具有如下有益效果:
1)本发明支持浮点数的同态操作,适用范围广泛;
2)本发明的同态方法中的相关同态操作以单独的模分量操作实现,比基于理想格、环等问题的方法简单明了,效率优于常见的同态加密;
3)本发明提出的基于模分量同态的隐私保护处理方法能够广泛使用在可信计算领域;
4)本发明的混淆模分量实现安全性的方法能有效的抵抗暴力搜索攻击。
附图说明
图1为本发明实施例提供的云计算环境中支持浮点数运算的全同态加密方法流程图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
在本发明的描述中,需要说明的是,术语“上”、“下”、“内”、“外”“前端”、“后端”、“两端”、“一端”、“另一端”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
本发明提供的一种云计算环境中支持浮点数运算的全同态加密方法,针对云计算环境中需要对隐私数据进行保护和计算的安全问题,其思路是:数据的所有者将数据进行保留固定精度转换成整数后对一组模基进行模操作,将得到的模分量信息混合到冗余信息中去构成密文,计算方无法区分哪些是真实模分量,哪些是冗余信息。由于模运算(加、乘)有同态性,对模分量的操作相当于对原始信息进行操作,将计算结果依照中国剩余定理得出整数反馈结果,再将得到的整数进行去噪声和精度变换得到正确的浮点数计算结果。
根据图1所示,包含了密钥的初始化、明文浮点数进行加密、密文运算和私钥解密共计4个部分。具体包括以下步骤:
S1、根据用户输入的用户密钥,生成秘密密钥SK、公共密钥PK和评估密钥EK;
S2、对明文浮点数M进行精度转化,获得原始信息P;
S3、根据秘密密钥SK将所述原始信息P分裂成真实模分量集m;
S4、根据所述真实模分量集m生成冗余集S;
S5、将所述真实模分量集m分别插入所述冗余集S中,生成密文主体C;
S6、将明文浮点数M四舍五入保留p位小数,进行公钥加密运算;
S7、运算密文X和Y在进行同态的加法和乘法前进行对齐操作;
S8、对对齐后的密文X和Y所有的模分量进行相同的加法和乘法运算,得到新的密文Z;
S9、根据所述秘密密钥SK,对所述密文Z解密。
下面对上述各个步骤进行详细的解释和说明:
(1)根据用户输入的用户密钥Userkey随机生成一个投影基B={b1,b2,…,bn} 和位置基W={w1,w2,…wn},0≤wi<t ,其中,B用于将原始信息分裂,b1,b2,…,bn为B中的元素,b1,b2,…,bn两两互素,n的大小表示投影基的数量; W用来插入真实模分量, wi为真实模分量所在位置,t表示一个冗余向量中冗余项的个数,wi小于t;秘密密钥SK包含用于做模投影的投影基B和位置基W,公共密钥PK为使用秘密密钥SK对浮点数1.0进行加密后的密文且包含投影基B,评估密钥EK包含投影基B;
(2)明文浮点数 M进行精度转化: 明文浮点数 M作为输入,四舍五入保留p位小数,然后乘以10p转为整数I,即I=round(M×10p),其中,round()为四舍五入操作;整数I乘以一个放大倍数amp再加上一个随机正整数噪声e得到P,即P=I×amp+e ,其中放大倍数amp≥106;记当前密文的放大倍数的扩张倍数为order,有效精度位数p的扩张倍数为level,密文的order和level初始值均为1;
(3)将原始信息P分裂成真实模分量集m:根据秘密密钥SK包含的模投影基集合B将整数P分裂,B={b1,b2,…,bn},其中b1,b2,…,bn为B中的元素,整数P对投影基B中的元素分别进行取模操作,得到真实模分量集合m={m1,m2,…mn}, mi=M mod bi,i=1,2,…,n;
(4)依据真实模分量集m生成冗余集S:依据真实模分量集m={m1,m2,…mn}中元素的值,生成n个分别包含t个冗余项的冗余向量,得到冗余集S={S1,S2,…Sn},其中Si={Si1,S i2,…S it},i=1,2,…n;
(5)生成密文主体C:将真实模分量m分别插入冗余集S中,根据秘密密钥中SK包含的位置基W,W={w1,w2,…wn},0≤wi<t;将原始模分量集m中的元素按照位置基W中元素代表的插入位置,依次代替冗余集原位置对应的元素,得到密文主体C, C={C1,C2,…,Cn},Ci={Ci1,Ci2,…C it}={Si1,S i2,…,mi…,Sit},i=1,2,…n;即Ci为真实模分量mi替换掉了冗余向量Si的第wi个冗余项后的模分量向量;
(6)公钥加密:在进行公钥加密时,将明文浮点数四舍五入保留p位小数,然后乘以10p转为整数,将该整数与公钥的每一个模分量进行乘法后对投影基B对应的元素项进行取模运算得到公钥加密后的密文;
(7)加法和乘法运算对齐操作:运算密文X和密文Y在进行同态的加法和乘法前进行对齐,包括放大倍数的对齐和精度的对齐:
根据密文X和密文Y的order值和level值进行加法运算对齐,密文X={X1, X2,…,Xn}、密文Y={Y1, Y2, …, Yn}和评估密钥EK中的投影基B={b1,b2,…,bn}进行对齐;
如果X的order值和level值小于等于Y的order值和level值,则
Figure SMS_11
, i=1,2,…n;
反之将X换成Y,则:
Figure SMS_12
,i=1,2,…n;
计算结果密文Z的order值等于X和Y的order值较大值, level值等于X和Y的level值的较大值;
根据密文X和密文Y的order值和level值进行乘法运算对齐,计算结果密文Z的order值等于X和Y的order值之和,新的密文level值等于X和Y的level值之和;
(8)密文同态运算:根据模运算的同态性,即
Figure SMS_13
Figure SMS_14
和评估密钥EK,将对齐后的密文X和Y所有的模分量进行相同的加法和乘法运算,运算结果依次对投影基B对应的元素项进行取模运算得到新的密文Z={Z1, Z2,…Zn},Zi={Zi1, Zi2,…Zit};
(9)根据私钥解密:对密文Z解密时,根据私钥SK中包含的真实模分量位置集合W={w1,w2,…wn}得到计算后的真实模分量
Figure SMS_15
,根据真实模分量R和对应的模基B利用中国剩余定理解出中间结果T,再对T除以
Figure SMS_16
消除噪声得到
Figure SMS_17
,
Figure SMS_18
根据浮点精度level×p确定浮点数小数点的位置得到最终结果
Figure SMS_19
参数选择中,上述步骤(1)投影基B选取时,元素要小于步骤(2)中的放大倍数amp,并且各元素的乘积要保证大于步骤(9)中可能的中间结果T,即
Figure SMS_20
公钥PK由秘密密钥SK对浮点数1.0加密产生,由于步骤(2)加入了一个噪声e,所以保证了每次分发的公钥不同;任何人都可以共享和使用公共密钥PK来加密消息,秘密密钥SK应由用户保密,并可用于解密消息,任何对密文执行同态操作的实体都应该使用评估密钥EK,任何只有公共密钥PK和评估密钥EK的实体都无法仅从密文中了解有关消息的任何信息;
步骤(2)中进行放大amp倍后加上随机正整数噪声e,噪声e保证相同的明文浮点数密文不同,同时参数选择中,噪声e的大小要远小于放大倍数amp,保证了能够在步骤(9)解密时中间结果T除以
Figure SMS_21
能够消除掉累积的噪声;
上述步骤(2)(7)(9)中的浮点数编码解决方法,步骤(2)中将浮点数M四舍五入保留了p位小数,然后乘以10p转为整数,解决了浮点数的编码问题;步骤(7)中经历过几次同态的加法和乘法运算后,参与计算的密文X和密文Y放大倍数amp和精度level的扩张的数量可能不同,需要进行对齐操作才能保证计算的正确性,如果X的order值和level值小于Y的order值和level值,则根据二者的order值、level值和评估密钥EK中的投影基B={b1,b2,…,bn}将X向Y进行对齐:
Figure SMS_22
,i=1,2,…,n,反之将公式中的X换成Y;步骤(9)中消除噪声后得到
Figure SMS_23
,level×p表示小数点后的位数大小,最终的结果
Figure SMS_24
本发明的原理如下:
(1)为了实现能够在不获得浮点数原始信息情况下对该浮点数进行操作:将浮点数按需取固定的精度转换成整数,在进行计算的过程中记录数据的精度变化并且进行对齐操作,在最终解密的时再根据记录的数据转回浮点数;
(2)为了实现数据的编码:加密时对数据乘以一个放大倍数并且加上一个远小于放大倍数的随机正整数噪声保证了加密相同的数字获得不同的密文,并且噪声远小于放大倍数,整除以放大倍数时保证了可以消除噪声的影响;
(3)为了实现非对称加密:根据同态加密的性质,把对浮点数1.0私钥加密后的明文当做公钥,将公钥对明文进行乘法操作即完成了公钥加密;
(4)为了实现同态性:依据在模运算的基础上加法同态和乘法同态的性质,即:(a+b)modp=((a modp )+(b modp ))、(a×b)modp=((a modp)×(b modp)),对模分量集进行加法和乘法操作,相当于对生成该模分量集的信息进行加法和乘法操作,从而实现了加法同态和乘法同态操作;
(5)为了实现隐私保护处理:利用混淆模投影技术,将真实的数据模投影后将真实的模投影分量插入到随机的冗余模分量组中去得到密文,攻击方在不知道每个正确模分量在多个冗余集中正确位置的前提下,得到每个正确的模分量是困难的,从而保证了整个加密方法的正确性。
该云计算环境中支持浮点数运算的全同态加密方法,实现了在不获取数据原始信息的情况下对数据进行隐私保护处理,该方法很容易通过软件实现,本发明可广泛应用推广到同态处理、可信云计算、安全机器学习。如图1所示,通过软件实现如下步骤:
一、密钥的生成方式为:
1.定义投影基B
定义投影基B,其元素b1,b2,…,bn为B两两互素:
Figure SMS_25
(1)
2.定义冗余向量长度t和模分量位置基W
Figure SMS_26
(2)
3.私钥SK包含B,W,评估密钥EK包含B,根据私钥SK对浮点数1.0加密生成公钥PK,且PK包含B。
二、明文浮点数加密:
1.对浮点数M预处理
Figure SMS_27
(3)
2.计算真实模分量集m
Figure SMS_28
(4)
3.利用真实模分量集m生成冗余集S
Figure SMS_29
(5)
4.依据位置基W将真实模分量集m插入冗余集S中去得到密文主体C
Figure SMS_30
(6)
三、密文运算
1.密文X和Y对齐
Figure SMS_31
(7)
2.根据模运算的性质,X和Y的所有模分量进行相同的加法和乘法运算得到密文Z:
Figure SMS_32
(8)
四、私钥解密
1.根据私钥的W得到真实的模分量R
Figure SMS_33
(9)
2.根据中国剩余定理得到中间结果T
Figure SMS_34
(10)
Figure SMS_35
(11)
3.
Figure SMS_36
Figure SMS_37
Figure SMS_38
中的乘法逆元
Figure SMS_39
(12)
4.计算T
Figure SMS_40
(13)
5.计算
Figure SMS_41
Figure SMS_42
(14)
6. 计算最终结果Output
Figure SMS_43
(15)
该方法通过将浮点数保留固定的精度转换成整数,然后对一组模基进行操作,将得到的真实模分量混淆到一组冗余模分量中去实现隐私的保护处理;根据模运算的(加、乘)的同态性和运算过程中的对齐操作实现同态运算;根据中国剩余定理实现解密。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,包括以下步骤:
S1、根据用户输入的用户密钥,生成秘密密钥SK、公共密钥PK和评估密钥EK;
S2、对明文浮点数M进行精度转化,获得原始信息P;
S3、根据秘密密钥SK将所述原始信息P分裂成真实模分量集m;
S4、根据所述真实模分量集m生成冗余集S;
S5、将所述真实模分量集m分别插入所述冗余集S中,生成密文主体C;
S6、将明文浮点数M四舍五入保留p位小数,进行公钥加密运算;
S7、运算密文X和Y在进行同态的加法和乘法前进行对齐操作;
S8、对对齐后的密文X和Y所有的模分量进行相同的加法和乘法运算,得到新的密文Z;
S9、根据所述秘密密钥SK,对所述密文Z解密。
2.根据权利要求1所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,所述步骤S1包括:
根据用户输入的用户密钥Userkey随机生成一个投影基B={b1,b2,…,bn} 和位置基W={w1,w2,…wn},0≤wi<t;
其中,B用于将原始信息分裂,b1,b2,…,bn为B中的元素,b1,b2,…,bn两两互素,n的大小表示投影基的数量;W用来插入真实模分量,wi为真实模分量所在位置,t表示一个冗余向量中冗余项的个数,wi小于t;
生成秘密密钥SK包含用于做模投影的投影基B和位置基W、公共密钥PK为使用秘密密钥SK对浮点数1.0进行加密后的密文且包含投影基B,评估密钥EK包含投影基B。
3.根据权利要求2所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,所述步骤S2包括:
将明文浮点数 M作为输入,四舍五入保留p位小数,然后乘以10p转为整数I;
整数I乘以一个放大倍数amp再加上一个随机正整数噪声e得到P;其中放大倍数amp≥106;记当前密文的放大倍数的扩张倍数为order,有效精度位数p的扩张倍数为level,密文的order和level初始值均为1。
4.根据权利要求3所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,所述步骤S3包括:
根据秘密密钥SK包含的模投影基集合B将整数P分裂,整数P对投影基B中的元素分别进行取模操作,得到真实模分量集合m={m1,m2,…mn},mi=M mod bi,i=1,2,…,n。
5.根据权利要求4所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,所述步骤S5包括:
将真实模分量m分别插入冗余集S中,根据秘密密钥中SK包含的位置基W,将原始模分量集m中的元素按照位置基W中元素代表的插入位置,依次代替冗余集S原位置对应的元素,得到密文主体C,C={C1,C2,…,Cn},Ci={Ci1,Ci2,…C it}={Si1,S i2,…,mi…,Sit},i=1,2,…n;即Ci为真实模分量mi替换掉了冗余向量Si的第wi个冗余项后的模分量向量。
6.根据权利要求5所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,所述步骤S6包括:
在进行公共密钥加密时,将明文浮点数M四舍五入保留p位小数,然后乘以10p转为整数,将该整数与公共密钥的每一个模分量进行乘法后对投影基B对应的元素项进行取模运算得到公共密钥加密后的密文。
7.根据权利要求6所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,所述步骤S7包括:
根据密文X和密文Y的order值和level值进行加法运算对齐,密文X={X1, X2,…,Xn}、密文Y={Y1, Y2, …, Yn}和评估密钥EK中的投影基B={b1,b2,…,bn}进行对齐;
如果X的order值和level值小于等于Y的order值和level值,则
Figure QLYQS_1
, i=1,2,…n;
如果X的order值和level值大于Y的order值和level值,则
Figure QLYQS_2
,i=1,2,…n。
8.根据权利要求7所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,所述步骤S8包括:
根据模运算的同态性和评估密钥EK,将对齐后的密文X和Y所有的模分量进行相同的加法和乘法运算,运算结果依次对投影基B对应的元素项进行取模运算得到新的密文Z={Z1,Z2,…Zn},Zi={Zi1, Zi2,…Zit}。
9.根据权利要求8所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,所述步骤S9包括:
对密文Z解密时,根据私钥秘密SK中包含的真实模分量位置集W,得到计算后的真实模分量
Figure QLYQS_3
根据真实模分量R和对应的投影基B利用中国剩余定理解出中间结果T,再对T除以
Figure QLYQS_4
消除噪声得到
Figure QLYQS_5
,
Figure QLYQS_6
根据浮点精度level×p确定浮点数小数点的位置得到最终结果
Figure QLYQS_7
10.根据权利要求9所述的一种云计算环境中支持浮点数运算的全同态加密方法,其特征在于,参数选择中,所述步骤S1投影基B选取时,元素要小于步骤S2中的放大倍数amp,并且各元素的乘积要保证大于步骤S9中可能的中间结果T,即
Figure QLYQS_8
CN202310059175.9A 2023-01-16 2023-01-16 一种云计算环境中支持浮点数运算的全同态加密方法 Active CN115801224B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310059175.9A CN115801224B (zh) 2023-01-16 2023-01-16 一种云计算环境中支持浮点数运算的全同态加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310059175.9A CN115801224B (zh) 2023-01-16 2023-01-16 一种云计算环境中支持浮点数运算的全同态加密方法

Publications (2)

Publication Number Publication Date
CN115801224A true CN115801224A (zh) 2023-03-14
CN115801224B CN115801224B (zh) 2023-04-28

Family

ID=85429750

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310059175.9A Active CN115801224B (zh) 2023-01-16 2023-01-16 一种云计算环境中支持浮点数运算的全同态加密方法

Country Status (1)

Country Link
CN (1) CN115801224B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116915382A (zh) * 2023-09-14 2023-10-20 北京隐算科技有限公司 一种基于模分量同态的多用户隐私保护方法
CN117118617A (zh) * 2023-10-24 2023-11-24 北京隐算科技有限公司 一种基于模分量同态的分布式门限加解密方法
CN117640065A (zh) * 2024-01-24 2024-03-01 北京隐算科技有限公司 一种多用户同态加解密方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180359079A1 (en) * 2016-12-13 2018-12-13 Heping HU Fully homomorphic encryption method based on modular operation
US20190394019A1 (en) * 2018-06-20 2019-12-26 Clemson University System And Method For Homomorphic Encryption
CN111526000A (zh) * 2020-04-20 2020-08-11 北京电子科技学院 一种基于混淆模投影的并行部分同态加密方法和系统
CN112215158A (zh) * 2020-10-13 2021-01-12 中山大学 云环境下融合全同态加密和离散小波变换的人脸识别方法
CN113553610A (zh) * 2021-09-22 2021-10-26 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 基于同态加密和可信硬件的多方隐私保护机器学习方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180359079A1 (en) * 2016-12-13 2018-12-13 Heping HU Fully homomorphic encryption method based on modular operation
US20190394019A1 (en) * 2018-06-20 2019-12-26 Clemson University System And Method For Homomorphic Encryption
CN111526000A (zh) * 2020-04-20 2020-08-11 北京电子科技学院 一种基于混淆模投影的并行部分同态加密方法和系统
CN112215158A (zh) * 2020-10-13 2021-01-12 中山大学 云环境下融合全同态加密和离散小波变换的人脸识别方法
CN113553610A (zh) * 2021-09-22 2021-10-26 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 基于同态加密和可信硬件的多方隐私保护机器学习方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116915382A (zh) * 2023-09-14 2023-10-20 北京隐算科技有限公司 一种基于模分量同态的多用户隐私保护方法
CN116915382B (zh) * 2023-09-14 2023-12-15 北京隐算科技有限公司 一种基于模分量同态的多用户隐私保护方法
CN117118617A (zh) * 2023-10-24 2023-11-24 北京隐算科技有限公司 一种基于模分量同态的分布式门限加解密方法
CN117118617B (zh) * 2023-10-24 2024-01-09 北京隐算科技有限公司 一种基于模分量同态的分布式门限加解密方法
CN117640065A (zh) * 2024-01-24 2024-03-01 北京隐算科技有限公司 一种多用户同态加解密方法
CN117640065B (zh) * 2024-01-24 2024-04-05 北京隐算科技有限公司 一种多用户同态加解密方法

Also Published As

Publication number Publication date
CN115801224B (zh) 2023-04-28

Similar Documents

Publication Publication Date Title
Canetti et al. UC non-interactive, proactive, threshold ECDSA with identifiable aborts
Hao et al. Fine-grained data access control with attribute-hiding policy for cloud-based IoT
Barsoum et al. On verifying dynamic multiple data copies over cloud servers
CN115801224B (zh) 一种云计算环境中支持浮点数运算的全同态加密方法
US7657033B2 (en) Cryptography related to keys
JP4842276B2 (ja) 楕円曲線上の新しいトラップドア1方向性関数と、その、より短い署名及び非対称暗号化への応用
Zhou et al. Identity-based proxy re-encryption version 2: Making mobile access easy in cloud
US20100046755A1 (en) Cryptography related to keys with signature
CN109327304A (zh) 一种云计算中实现隐私保护的轻量级同态加密方法
CN117118617B (zh) 一种基于模分量同态的分布式门限加解密方法
CN115102688A (zh) 数据处理方法、多项式计算方法及电子设备
CN106453253B (zh) 一种高效的基于身份的匿签密方法
Li et al. Efficient and adaptively secure attribute-based proxy reencryption scheme
CN103812658A (zh) 一种基于流密码的安全通信协议
CN111835766B (zh) 一种可重随机的公钥加解密方法
Li et al. A new (t, n)-threshold multi-secret sharing scheme
US7280663B1 (en) Encryption system based on crossed inverse quasigroups
CN109495478B (zh) 一种基于区块链的分布式安全通信方法及系统
Zhu et al. A secure data sharing scheme with designated server
CN113343258B (zh) 一种适用于体测成绩云共享的格基密文策略的属性基代理重加密方法
Zhang Privacy preserving ciphertext-policy attribute-based broadcast encryption in smart city
US20130058483A1 (en) Public key cryptosystem and technique
Ansah et al. Relevance of elliptic curve cryptography in modern-day technology
JP4685621B2 (ja) 鍵生成装置、暗号化装置、復号化装置、乗法型ナップザック暗号システム、乗法型ナップザック暗号復号方法およびプログラム
CN113422685A (zh) 一种搜索令牌限时撤销的无证书可搜索公钥加密方法及系统

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