CN112543091A - 密文长度固定的多密钥全同态加密方法 - Google Patents
密文长度固定的多密钥全同态加密方法 Download PDFInfo
- Publication number
- CN112543091A CN112543091A CN202011153928.5A CN202011153928A CN112543091A CN 112543091 A CN112543091 A CN 112543091A CN 202011153928 A CN202011153928 A CN 202011153928A CN 112543091 A CN112543091 A CN 112543091A
- Authority
- CN
- China
- Prior art keywords
- key
- ciphertext
- user
- bootstrap
- homomorphic
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Complex Calculations (AREA)
Abstract
本发明属于信息安全技术领域,具体设计了两种密文长度固定的多密钥全同态加密通用构造方法以及两种具体的密文定长的多密钥全同态加密方案THFE型和CKKS型,密文长度固定的MKFHE方案的通用构造方法包括以下步骤:将用户集的公钥进行累加,构造了长度固定的用户集的累加公钥;各用户用累加公钥加密自己私钥,生成累加计算密钥;对单个用户密文和对应的累加自举密钥运行自举过程,实现密文的刷新;对刷新后的密文运行同态计算和联合解密。本发明利用CGGI系列方案高效的自举方法和CKKS方案支持近似数据同态计算的优点,构造了两个高效的定长MKFHE方案。分析表明,本申请的密文规模、同态计算效率与用户数无关,同单用户全同态加密方案一样高效。
Description
技术领域
本申请属于信息安全技术领域,设计了密文长度固定的多密钥全同态 加密通用构造方法,特别涉及针对TFHE型定长MKFHE和CKKS型 MKFHE的密文长度固定的多密钥全同态加密方法。
背景技术
作为信息安全领域的核心技术,密码技术在保护用户隐私数据的安全 存储、传输和处理方面发挥着至关重要的作用。全同态加密支持对密文数 据进行任意的运算处理,为云环境下用户隐私数据的安全存放、传输和处 理提供了强有力的工具。MKFHE支持对不同用户(不同密钥)的密文进行 任意的同态运算,且运算之后的结果可由参与计算的所有用户联合解密, 可以较好地解决多用户数据之间的安全联合计算问题。
随着云计算、大数据等新兴需求牵引,外包计算、安全多方计算 (Multi-partycomputation,MPC)等新型计算模式迅速发展,如何保证信 息在处理过程中的安全和信息所有者的隐私,已成为当前信息安全领域的 研究热点。全同态加密(Fully homomorphicencryption,FHE)支持对密文 数据运行任意的函数,具备强大的密态计算能力。典型的FHE只能支持对 单个用户的密文进行同态计算,即参与计算的所有密文对应于相同的密钥。然而在许多的现实场景中,通常需要对网络中多个用户上传到云端的数据 一起进行计算。多密钥全同态加密(Multi-Key fully homomorphic encryption,MKFHE)支持对不同用户(不同密钥)的密文进行任意的同态 运算,运算之后的结果由参与计算的用户联合解密,因此可以较好地解决 多用户密文进行同态计算的问题,云环境下MKFHE在多用户数据安全计算中应用的流程见图1。
当前,MKFHE方案都是在经典的全同态加密方案的基础上发展而来, 按照底层同态加密方案的不同类型,当前多密钥全同态加密主要分为NTRU 型、GSW型、BGV型、TFHE型,四类MKFHE方案的分析对比见表1:
表1四类MKFHE方案的分析
多密钥全同态加密具有重要理论价值和应用前景,表1对现阶段4类 MKFHE(NTRU型、GSW型、BGV型、TFHE型)方案进行了分析,目 前,大多数BGV型、GSW型、TFHE型MKFHE方案都使用转化模式,其 中以密文级联为特征的单用户密文到用户集密文的密文扩展算法,使扩展 密文规模随着用户数的增加呈平方或线性规模增长,这限制了MKFHE在 大量用户参与场景中的应用。
本方案将多个用户公钥直接累加的方式生成用户集的联合公钥,将自 举过程引入密文扩展过程,构造基于LWE/RLWE问题的固定长度扩展密文。 分析表明,本方案方案的密文规模、同态计算效率与用户数无关,和单用 户全同态加密方案一样高效。当用户集合更新时,原先集合的密文经过密 文转化后可以用到新集合的同态计算,但方案需要各用户提供新的公共密 钥。本方案与LZY+19,CCS19,CDKS方案空间对比见表2,其中k是参 与计算的用户数,n是(R)LWE的维度。
表2本方案与LZY+19,CCS19,CDKS方案空间对比
发明内容
本申请的目的在于提出一个密文长度固定的多密钥全同态加密方法, 设计了密文长度固定的MKFHE方案的通用构造方法,利用CGGI系列方 案高效的自举方法和CKKS方案支持近似数据同态计算的优点,构造了两 个高效的定长MKFHE方案,方案的密文规模、同态计算效率与用户数无 关,同单用户全同态加密方案一样高效。
TFHE型定长MKFHE包括以下步骤:
·HDTMK.Setup(1λ)→pp=(ppLWE,ppGSW):
LWE.Setup(1λ)→ppLWE=(η,χ,α,Bks,dks,B);
GSW.Setup(1λ)→ppGSW=(N,φ,α,B,d,y),其中,B,y随机产生的公用变 量;
·HDTMK.KeyGen(pp)→(pki,ski,pkBK,i,skBK,i);
LWE.KeyGen(pp)→{pki=Ai,ski=si};
RGSW.KeyGen(pp)→{pkBK,i=Zi,skBK,i=zi};
当所有用户都完成HDTMK.KeyGen(params)程序之后,运行累加计算密钥 生成算法;如果方案中有用户更新,则重新运行密钥生成算法;
1)公钥累加:给定k个用户的公钥b1,...,bk生成累加公钥
累加自举公钥:给定k个用户的自举公钥d1,...,dk生成累加自举公钥
1)云端通过生成累加密文的累加转化密钥云 端通过生成累加密文的累加自举密钥 其中j∈[n], HomAddk(,)是k个1位TGSW密文的同态加法算法,可以使用TGSW密文 的同态乘法和同态加法构造。对于固定的用户集,云端只需要计算一次和之后将其作为公共变量给出。
...
3)密钥转化过程:最后一步将ACC转化为LWE密文,并运行密 钥转化算法;
·利用自举过程构造同态与非门NAND电路 HDTMK.NAND(c1,c2)=HDTMK.Boot((0,5/8)-c1-c2);
CKKS型定长MKFHE包括以下步骤:
·HDCMK.Setup(1λ):输入安全参数λ,选择一个为2的幂次的整数N;令 χkey,χerr,χenc分别为私钥、噪声和加密过程使用的上的分 布;选择素数P,p和层数L,令密文模数ql=pl,其中1≤l≤L,随机选 择输出公共参数 pp=(N,χkey,χerr,χenc,L,P,ql,a,a′);
当所有用户都完成HDCMK.KeyGen(pp)程序之后,运行累加计算密钥生 成算法;如果方案中有用户更新,则重新运行密钥生成算法;
3)累加计算密钥部件生成:
4)云端生成计算密钥
当系统的用户集合更新时,HDCMK系统不使用自举,而用累加的密 钥转化过程实现密文对应的密钥集合的刷新(将老集合的密文转化为新集 合的密文),相对BP16,这种模式大幅提升方案效率。
·HDCMK.Enc(pk,m):c=CKKS.Encpk(m);
·HDCMK.Dec((sk1,...,skk),c):输入l层的密文c,输出 m′=<c,sk1+...+skk>(modql);
当系统的用户集合更新时,HDCMK系统不使用自举,而用累加的密 钥转化过程实现密文对应的密钥集合的刷新(将老集合的密文转化为新集 合的密文),相对BP16,这种模式大幅提升方案效率。
·同态运算:如果输入同态运算的密文对应的公钥不相同时,利用将其转化到相同公钥,之后再进行同态运 算;同态运算过程、自举过程和CKKS方案相同,只是将输入的计算密 钥替换成累加计算密钥,因此计算效率与单比特全同态加密方案相同。
-HDCMK.Add(ct,ct′).CKKS.Add(ct,ct′).
-HDCMK.CMult(a,ct).CKKS.CMult(a,ct).
与现有技术相比,本发明具有以下有益效果:
(1)本发明的密文规模与用户数量无关,同态运算和单用户全同态加 密方案一样高效。当用户集合更新时,原先集合的密文经过密文转化(或 刷新)后还可以继续用于新集合的同态计算,但方案需要提供新的累加计 算密钥。
(2)本发明加密方法中,如果用户没有授权(提供自身私钥的密文) 数据参加某个集合的运算,则自身的数据无法参与该集合运算,相对于全 动态的MKFHE,本发明提出的半动态MKFHE支持用户对自身数据参与哪 个集合的运算进行有效控制。
(3)本发明加密方法中,半动态MKFHE可以向单密钥全同态加密兼 容,即加密函数、同态计算函数、解密函数与单密钥全同态加密相同,因 此如果先期已经利用单密钥全同态加密搭建好程序,经过少量的改变就可 以转化为多密钥全同态加密。
附图说明
图1是云环境下MKFHE在多用户数据安全计算中应用的流程;
图2是本发明双用户情况下同态运算的步骤。
具体实施方式
下面结合具体实施例对本方案做进一步详细的描述,但本方案的实施 方式不限于此。
密文长度固定的多密钥全同态加密方法,首先,设计密文长度固定的 MKFHE方案的通用构造方法,通用构造有两种模式:静态定长MKFHE方 案和半动态定长MKFHE方案,它们分别适用于不同的场景。
静态定长MKFHE方案:
下面介绍用户i运行方案的过程(本方案和大部分的MKFHE方案一样, 基于CRS模型,所有用户使用一些相同的公共参数):
·SAMK.Setup(1λ):FHE.Setup(1λ)→params
·SAMK.KeyGen(params,i,B):FHE.KeyGen(params,B)→pki,ski
当所有用户都完成程序SAMK.KeyGen之后,运行计算密钥生成算法;
·SAMK.EvalKeyGen(params,ski,{pk1,...,pkk}):
1)SAMK.SAPK(params,ski,{pk1,...,pkk}):
如果需要运行自举过程,则需要使用单用户密文和累加密文的累加自 举密钥;
·SAMK.Dec((sk1,...,skN),C):和大多数MKFHE一样,方案可以构造联 合解密协议,协议分为部分解密和最终解密两个部分。
1)SAMK.PartDec(C,i,ski):用户i利用自身私钥ski=(-si,1),运行部分解 密协议;为了方案更加高效,我们保留密文的公用部分不进行运算。例如: GSW型FHE中的结果过程我们计算其中C[1,...,n-1;]表示密文C的前n-1列,用于保证中间变量的 安全;
因为所有的密文都是对应相同的公钥(联合)都是相同的,因此同态 计算过程和单密钥全同态加密的计算过程是完全相同的,因此效率较其它 MKFHE具有较大优势。
·SAMK.Add(C1,C2):C+←FHE.Add(C1,C2):
上述方案的解密过程正确性可以通过下式得到:
半动态定长MKFHE方案:
参见图2,半动态定长MKFHE方案,该方案可以达到:密文规模与用 户数无关,当用户集和更新时所有的密文可以继续在新的集合中使用。方 案和核心思想是:加密数据时使用个人公钥或私钥,利用优化的自举过程 (或密钥转化过程)将密文调整为累加公钥,从而实现密文可重用。半动 态MKFHE和SAFHE有两个不同之处:同态计算前需要调整密文对应的公 钥到新的用户集,用户集合更新时需要进行交互从而生成新的计算密钥。
·HDMK.Setup(1λ):FHE.Setup(1λ)→params
·HDMK.KeyGen(params):FHE.KeyGen(params,B)→pki,ski
当所有用户都完成HDMK.KeyGen(params)程序之后,运行计算密钥生成 算法;如果方案中有用户更新,则重新运行密钥生成算法;
·HDMK.EvalKeyGen(params,ski,{pk1,...,pkN}):
·HDMK.Enc(pk,μ):FHE.Enc(pk,μ)→C;
·HDMK.Dec((sk1,...,skN),C):SAMK.Dec((sk1,...,skN),C)→μ′;
半同态定长MKFHE方案通用方案的缺陷是:用户集合更新时,需要 所有用户更新计算密钥和自举密钥(即群中成员变化时需要征得所有用户 的同意),因此方案需要三轮交互才能构造MPC。
在半动态定长MKFHE方案中,
对于TFHE型定长MKFHE,其具体的加密方法是:
CGGI系列方案是目前自举过程速度最快的一类方案,基于CGGI系列 方案平凡的构造HDMK效率较低,本方案针对TFHE方案的特点,构造高 效的HDTMK方案。CGGI系列的FHE只能支持私钥分量取自{0,1}的情况, 而累加自举私钥分量的取值范围更大,所以无法直接高效应用。为了使得 定长MKFHE和基础CGGI系列方案更好得结合,本方案设计了私钥扩展 的TFHE方案,该方案能够在私钥空间更平凡的情况下实现自举。
·HDTMK.Setup(1λ)→pp=(ppLWE,ppGSW):
LWE.Setup(1λ)→ppLWE=(η,χ,α,Bks,dks,B);
GSW.Setup(1λ)→ppGSW=(N,φ,α,B,d,y),其中,B,y随机产生的公用变 量。
·HDTMK.KeyGen(pp)→(pki,ski,pkBK,i,skBK,i)。
LWE.KeyGen(pp)→{pki=Ai,ski=si};
RGSW.KeyGen(pp)→{pkBK,i=Zi,skBK,i=zi}。
当所有用户都完成HDTMK.KeyGen(params)程序之后,运行累加计算密钥 生成算法。如果方案中有用户更新,则重新运行密钥生成算法。
1)公钥累加:给定k个用户的公钥b1,...,bk生成累加公钥
累加自举公钥:给定k个用户的自举公钥d1,...,dk生成累加自举公钥
·HDMK.Dec((sk1,...,skk),ct):构造联合解密协议,协议分为部分解密 和最终解密两个部分。
1)HDMK.PartDec(C,i,ski):用户i利用自身私钥ski=(-si,1),运行部 分解密协议。为了方案更加高效,保留密文的公用部分不进行运算。例如: GSW型FHE中的结果过程计算其 中C[1,...,n-1;]表示密文C的前n-1列,用于保证中间变量的安 全。
1)云端通过生成累加密文的累加转化密钥云 端通过生成累加密文的累加自举密钥 其中j∈[n], HomAddk(,)是k个1位TGSW密文的同态加法算法,可以使用TGSW密文 的同态乘法和同态加法构造;对于固定的用户集,云端只需要计算一次和之后将其作为公共变量给出;
...
其中选择最大电路CMux(C,d1,d0)沿用CGGI16的表达,输入一个控制 TGSW密文C和两输入的RLWE密文数据d1,d0,输出RLWE的密文 是GSW密文和BGV密文的混合同态乘法运算,具体过 程见方案Chillotti I,Gama N,Georgieva M,et al.Fasterfully homomorphic encryption:bootstrapping in less than 0.1seconds[C].International Conference on the Theory and Application of Cryptology andInformation Security—ASIACRYPT 2016.Springer,Berlin,Heidelberg,2016:3-33;
3)密钥转化过程:最后一步将ACC转化为LWE密文,并运行密 钥转化算法。
′利用自举过程构造同态与非门NAND电路. HDTMK.NAND(c1,c2)=HDTMK.Boot((0,5/8)-c1-c2)
安全性分析:本方案的语义安全基于(R)LWE假设,参数ppLWE,ppGSW使得(R)LWE假设达到λ-bit的安全基本,本方案和大部分方案一样需要基 于循环安全性假设。
基础知识:HDTMK方案噪声估计
沿用CCS19的表达,定义分解基B,分解度d,令ε2=1/(12B2d)是 (-1/2Bd,1/2Bd]上的均匀分布的方差。定义是 中均匀分布的均方差。使用类似的方法定义自举算法的密钥 转化算法中的参数Bks。定义RGSW和LWE上私钥分布χ∈{0,1}w, 定义Var(e)为上随机变量e的方差。如果e是随机变量组成的向 量,定义Var(e)为向量元素中方差的最大值。
计算密钥的初始噪声:
沿用CGGI7的方法,对本方案自举噪声分析如下。
令Let d0,d1 be TRLWE samples and let C∈TGSWs({0,1}),Then, msg(CMux(C,d1,d0))=msg(C)?msg(d1):msg(d0),Andwe have ||Err(CMux(C,d1,d0))||∞≤max(||Err(d0)||∞,||Err(d1)||∞)+η(C),where we have:Var(Err(CMux(C,d1,d0)))≤max(Var(Err(d0)),Var(Err(d1)))+θ(C),where θ(C)=2dNVBVar(Err(C))+(N+1)ε2。
对于CKKS型定长MKFHE,其具体的加密方法是:
BGV型MKHFE方案中,CKKS系列方案应能高效处理浮点型数据, 受到广泛关注,在神经网络的密态计算等领域,具有广泛的应用,本方案 针对CKKS方案的特点,构造高效的HDCMK方案;
·HDCMK.Setup(1λ):输入安全参数λ,选择一个为2的幂次的整数N,令 χkey,χerr,χenc分别为私钥、噪声和加密过程使用的上的分 布,选择素数P,p和层数L,令密文模数ql=pl,其中1≤l≤L,随机选 择输出公共参数 pp=(N,χkey,χerr,χenc,L,P,ql,a,a′)。
当所有用户都完成HDCMK.KeyGen(pp)程序之后,运行累加计算密钥生 成算法。如果方案中有用户更新,则重新运行密钥生成算法。
3)累加计算密钥部件生成:
4)云端生成计算密钥
当系统的用户集合更新时,HDCMK系统不使用自举,而用累加的密 钥转化过程实现密文对应的密钥集合的刷新(将老集合的密文转化为新集 合的密文),相对BP16,这种模式大幅提升方案效率。
·HDCMK.Enc(pk,m):c=CKKS.Encpk(m)
·HDCMK.Dec((sk1,...,skk),c):输入l层的密文c,输出 m′=<c,sk1+...+skk>(modql).
当系统的用户集合更新时,HDCMK系统不使用自举,而用累加的密 钥转化过程实现密文对应的密钥集合的刷新(将老集合的密文转化为新集 合的密文),相对BP16,这种模式大幅提升方案效率。
·同态运算:如果输入同态运算的密文对应的公钥不相同时,利用将其转化到相同公钥,之后再进行同态运 算。同态运算过程、自举过程和CKKS方案相同,只是将输入的计算密 钥替换成累加计算密钥,因此计算效率与单比特全同态加密方案相同。
-HDCMK.Add(ct,ct′).CKKS.Add(ct,ct′).
-HDCMK.CMult(a,ct).CKKS.CMult(a,ct).
正确性分析:
全同态加密方案中密文能否正确解密,主要取决于密文中噪声的大小, 沿用CKKS17的表达方式,本方案我们对主要函数的功能和噪声增长情况 进行分析:
令表示多项式经过正则嵌入之后得到a(ζ) (a的系数和向量做内积)的无穷范式。根据CKKS中的分析 有:其中σ2为a(ζ)的方差;其中和为分别 为a(ζ)和b(ζ)的方差。如果a的系数取自[0,q)的均匀分布,则有 Var(a(ζM))=q2N/12;a取自方差为σ2离散高斯分布DGq(σ2),则有Var(a(ζM))=σ2N; a取自汉明重量为h的{0,±1}分布HWT(h),则Var(a(ζM))=h。
CKKS系列方案可以加密复数向量,考虑精度的原因,方案在加密前 通常会将数据扩大Δ倍,Δ称为增模因子。对于给定的密文如果增 模因子Δ>N+2B,则方案可以正确解密,其中令<ct,sk>=m+e(modqL),B为的上界。重要函数的噪声增长规律见如下定理。
图2以两个用户为例,介绍同态运算的步骤:(0)系统初始化阶段: 用户和云端进行两次交互构造公共密钥。用户公布自身的公钥,从云端获 取累加公钥;利用累加公钥生成自身的累加计算密钥、集合刷新密钥,并 上传云端;云端收集所有用户集的累加计算密钥、集合刷新密钥,生成累 加集合计算密钥、集合刷新密钥。(1)数据加密:用户利用公钥或累加公 钥加密密文,并将密文上传到云端。(2)密文用户集合刷新:云端使用集 合刷新密钥,对用户密文进行集合刷新。(3)同态计算:云端利用累加集 合计算密钥运行同态运算,输出密文。(4)联合解密:用户对密文进行解 密,得到最终明文。
本方案提出了密文长度固定的MKFHE方案的通用构造方法,并针对 通用构造中自举过程效率较低,和CGGI系列方案和CKKS方案的特点, 构造了两个高效的定长MKFHE方案。分析表明,本方案的密文规模、同 态计算效率与用户数无关,同单用户全同态加密方案一样高效。在安全性 方面,本方案涉及到的基础加密方案为CKKS全同态加密方案和CGGI全同态加密方案,其安全性可以规约到格上的困难问题,能够有效抵抗量子 攻击,因此安全性能够得到保证。
为了进一步对方案了解,对部分基础知识补充如下:
同态加法器
本申请需要使用TGSW密文的同态加法和同态乘法构造同态加法器的 具体构造,
C.1加法器的数学表达
·半加器Half-Add:
输入:两个单比特二进制数x,y,对应的GSW密文TGSW(x),TGSW(y)。
sum:TGSW(cout)=TGSW(x)+TGSW(y),对应明文s=x+y。
·全加器Full-Add(x,y,c):
输入:两个单比特二进制数x,y和进位cin,对应的GSW密文TGSW(x), TGSW(y),TGSW(cin)。
输出:
-和:TGSW(cout)=TGSW(x)+TGSW(y)+TGSW(cin),对应明文s=x+y+cin。
·两个l位TGSW密文的同态加法算法HomAdd
输入:两组长度为l的TGSW密文TGSW(xl-1),...,TGSW(x0), TGSW(yl-1),...,TGSW(y0),使用波纹加法器(Ripple-carry adder)的方式求解 两个l位TGSW密文的同态加法。
从i=0到l-1运行:
(1).{TGSW(c),TGSW(s0)}=FullAdd(TGSW(x0),TGSW(y0),0)
(2).{TGSW(c),TGSW(s1)}=FullAdd(TGSW(x1),TGSW(y1),TGSW(c))
…
(l-1).{TGSW(c),TGSW(sl-1)}=FullAdd(TGSW(xl-1),TGSW(yl-1),TGSW(c))
输出密文{TGSW(c),TGSW(sl-1),...,TGSW(s0)}
对于k个l位TGSW密文的同态加法HomAddk{TGSW(xk),...,TGSW(x0)}, 利用HomAdd算法,使用二叉树的方式快速的实现。
以上内容是结合具体的优选实施方式对本方案所作的进一步详细说明, 不能认定本方案的具体实施只局限于这些说明。对于本方案所属技术领域 的普通技术人员来说,在不脱离本方案构思的前提下,还可以做出若干简 单推演或替换,都应当视为属于本方案的保护范围。
Claims (3)
1.密文长度固定的多密钥全同态加密方法,其特征在于,
所述加密方法是半动态定长MKFHE方法,其具体过程是:
·HDMK.Setup(1λ):FHE.Setup(1λ)→params
·HDMK.KeyGen(params):FHE.KeyGen(params,B)→pki,ski
当所有用户都完成HDMK.KeyGen(params)程序之后,运行计算密钥生成算法;如果方案中有用户更新,则重新运行密钥生成算法;
·HDMK.EvalKeyGen(params,ski,{pk1,...,pkN})
·HDMK.Enc(pk,μ):FHE.Enc(pk,μ)→C;
·HDMK.Dec((sk1,...,skN),C):构造联合解密协议,协议分为部分解密和最终解密两个部分,
1)HDMK.PartDec(C,i,ski):用户i利用自身私钥ski=(-si,1),运行部分解密协议,保留密文的公用部分不进行运算,
用户集合更新时,需要所有用户更新计算密钥和自举密钥。
2.根据权利要求1所述的密文长度固定的多密钥全同态加密方法,其特征在于,
对于TFHE型定长MKFHE,其具体的加密方法是:
·HDTMK.Setup(1λ)→pp=(ppLWE,ppGSW):
LWE.Setup(1λ)→ppLWE=(η,χ,α,Bks,dks,B);
GSW.Setup(1λ)→ppGSW=(N,φ,α,B,d,y),其中,B,y随机产生的公用变量;
·HDTMK.KeyGen(pp)→(pki,ski,pkBK,i,skBK,i):
LWE.KeyGen(pp)→{pki=Ai,ski=si};
RGSW.KeyGen(pp)→{pkBK,i=Zi,skBK,i=zi};
当所有用户都完成HDTMK.KeyGen(params)程序之后,运行累加计算密钥生成算法;如果方案中有用户更新,则重新运行密钥生成算法;
1)公钥累加:给定k个用户的公钥b1,...,bk生成累加公钥
累加自举公钥:给定k个用户的自举公钥d1,...,dk生成累加自举公钥
3)密钥转化过程:最后一步将ACC转化为LWE密文,并运行密钥转化算法;
·利用自举过程构造同态与非门NAND电路,HDTMK.NAND(c1,c2)=HDTMK.Boot((0,5/8)-c1-c2)。
3.根据权利要求1所述的密文长度固定的多密钥全同态加密方法,其特征在于,
对于CKKS型定长MKFHE,其具体的加密方法是:
·HDCMK.Setup(1λ):输入安全参数λ,选择一个为2的幂次的整数N,令χkey,χerr,χenc分别为私钥、噪声和加密过程使用的上的分布;选择素数P,p和层数L,令密文模数ql=pl,其中1≤l≤L,随机选择输出公共参数pp=(N,χkey,χerr,χenc,L,P,ql,a,a′);
当所有用户都完成HDCMK.KeyGen(pp)程序之后,运行累加计算密钥生成算法;如果方案中有用户更新,则重新运行密钥生成算法;
3)累加计算密钥部件生成:
4)云端生成计算密钥
当系统的用户集合更新时,HDCMK系统不使用自举,而用累加的密钥转化过程实现密文对应的密钥集合的刷新,即将老集合的密文转化为新集合的密文,HDCMK.Enc(pk,m):c=CKKS.Encpk(m);
·HDCMK.Dec((sk1,...,skk),c):输入l层的密文c,输出m′=<c,sk1+...+skk>(modql)
当系统的用户集合更新时,HDCMK系统不使用自举,而用累加的密钥转化过程实现密文对应的密钥集合的刷新,即,将旧集合的密文转化为新集合的密文;
-HDCMK.Add(ct,ct′).CKKS.Add(ct,ct′)
-HDCMK.CMult(a,ct).CKKS.CMult(a,ct)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011153928.5A CN112543091B (zh) | 2020-10-26 | 2020-10-26 | 密文长度固定的多密钥全同态加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011153928.5A CN112543091B (zh) | 2020-10-26 | 2020-10-26 | 密文长度固定的多密钥全同态加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112543091A true CN112543091A (zh) | 2021-03-23 |
CN112543091B CN112543091B (zh) | 2022-10-14 |
Family
ID=75013555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011153928.5A Active CN112543091B (zh) | 2020-10-26 | 2020-10-26 | 密文长度固定的多密钥全同态加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112543091B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113268707A (zh) * | 2021-06-11 | 2021-08-17 | 中国电子科技集团公司第三十研究所 | 一种基于行编码的密文协方差矩阵计算方法 |
CN113901506A (zh) * | 2021-12-07 | 2022-01-07 | 南京区盟链信息科技有限公司 | 一种支持密态下多方私有数据操作的后量子加密方法 |
WO2022243781A1 (en) * | 2021-05-17 | 2022-11-24 | International Business Machines Corporation | In-memory computation in homomorphic encryption systems |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546181A (zh) * | 2012-01-09 | 2012-07-04 | 西安电子科技大学 | 基于密钥池的云存储加解密方法 |
CN104038339A (zh) * | 2013-03-04 | 2014-09-10 | 唐键 | 使用多密码算法和多密钥对文件或通信报文进行加密的方法 |
CN105933102A (zh) * | 2016-04-06 | 2016-09-07 | 重庆大学 | 利用隐秘矩阵构造的基于身份的全同态加密方法 |
US20180359079A1 (en) * | 2016-12-13 | 2018-12-13 | Heping HU | Fully homomorphic encryption method based on modular operation |
CN109412786A (zh) * | 2018-11-14 | 2019-03-01 | 沈阳航空航天大学 | 一种基于同态加密的整数密文算术运算方法 |
CN110176983A (zh) * | 2019-05-22 | 2019-08-27 | 西安电子科技大学 | 基于全同态加密的隐私保护关联规则挖掘方法 |
-
2020
- 2020-10-26 CN CN202011153928.5A patent/CN112543091B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546181A (zh) * | 2012-01-09 | 2012-07-04 | 西安电子科技大学 | 基于密钥池的云存储加解密方法 |
CN104038339A (zh) * | 2013-03-04 | 2014-09-10 | 唐键 | 使用多密码算法和多密钥对文件或通信报文进行加密的方法 |
CN105933102A (zh) * | 2016-04-06 | 2016-09-07 | 重庆大学 | 利用隐秘矩阵构造的基于身份的全同态加密方法 |
US20180359079A1 (en) * | 2016-12-13 | 2018-12-13 | Heping HU | Fully homomorphic encryption method based on modular operation |
CN109412786A (zh) * | 2018-11-14 | 2019-03-01 | 沈阳航空航天大学 | 一种基于同态加密的整数密文算术运算方法 |
CN110176983A (zh) * | 2019-05-22 | 2019-08-27 | 西安电子科技大学 | 基于全同态加密的隐私保护关联规则挖掘方法 |
Non-Patent Citations (3)
Title |
---|
KOK SEEN CHONG: "Multi-Key Homomorphic Encryption Create new Multiple Logic Gates and Arithmetic Circuit", 《2020 8TH INTERNATIONAL SYMPOSIUM ON DIGITAL FORENSICS AND SECURITY (ISDFS)》 * |
NINGBO LI: "Efficient Multi-Key FHE With Short Extended", 《IEEE》 * |
李宁波: "多密钥全同态加密研究", 《密码学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022243781A1 (en) * | 2021-05-17 | 2022-11-24 | International Business Machines Corporation | In-memory computation in homomorphic encryption systems |
US11907380B2 (en) | 2021-05-17 | 2024-02-20 | International Business Machines Corporation | In-memory computation in homomorphic encryption systems |
CN113268707A (zh) * | 2021-06-11 | 2021-08-17 | 中国电子科技集团公司第三十研究所 | 一种基于行编码的密文协方差矩阵计算方法 |
CN113268707B (zh) * | 2021-06-11 | 2022-03-18 | 中国电子科技集团公司第三十研究所 | 一种基于行编码的密文协方差矩阵计算方法 |
CN113901506A (zh) * | 2021-12-07 | 2022-01-07 | 南京区盟链信息科技有限公司 | 一种支持密态下多方私有数据操作的后量子加密方法 |
CN113901506B (zh) * | 2021-12-07 | 2022-03-11 | 南京区盟链信息科技有限公司 | 一种支持密态下多方私有数据操作的后量子加密方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112543091B (zh) | 2022-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Martins et al. | A survey on fully homomorphic encryption: An engineering perspective | |
CN112543091B (zh) | 密文长度固定的多密钥全同态加密方法 | |
CN109936435B (zh) | 具有快速同态运算过程ntru型多密钥全同态加密方法 | |
Melchor et al. | Additively homomorphic encryption with d-operand multiplications | |
Shoup | Sequences of games: a tool for taming complexity in security proofs | |
Gentry et al. | Fully homomorphic encryption without squashing using depth-3 arithmetic circuits | |
Wang | Lattice Ciphertext Policy Attribute-based Encryption in the Standard Model. | |
CN107864033B (zh) | 一种自举型对称全同态加密方法 | |
CN109889320B (zh) | 一种bgv型多密钥全同态加密方法 | |
Shen et al. | Efficient leveled (multi) identity-based fully homomorphic encryption schemes | |
CN111342950A (zh) | 一种具备定向解密功能的bgv型多密钥全同态加密方法 | |
Lee et al. | Two-input functional encryption for inner products from bilinear maps | |
Singh et al. | Cryptanalysis of unidirectional proxy re-encryption scheme | |
CN117200972A (zh) | 基于同态加密的明文与密文的矩阵乘法计算方法 | |
Hosseini et al. | Secure aggregation in federated learning via multiparty homomorphic encryption | |
Li | Leveled certificateless fully homomorphic encryption schemes from learning with errors | |
Khalimov et al. | Towards advance encryption based on a Generalized Suzuki 2-groups | |
Zhao et al. | LSSS matrix-based attribute-based encryption on lattices | |
Zhou et al. | Multi-key Fully Homomorphic Encryption Scheme with Compact Ciphertexts | |
Kim et al. | An efficient KP-ABE with short ciphertexts in prime ordergroups under standard assumption | |
Asano et al. | More efficient adaptively secure lattice-based IBE with equality test in the standard model | |
CN104601323B (zh) | 基于bdd解决社会主义百万富翁问题的方法 | |
Durcheva | Semirings as building blocks in cryptography | |
Sadkhan et al. | Hybrid Strategies for Choosing Suitable Cryptosystem Based on Game and Information Theories | |
CN113259107B (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 |