当前位置: 首页 > 科技观察

隐私计算中的全同态加密

时间:2023-03-20 20:59:19 科技观察

隐私计算中的全同态加密为加密数据提供量子安全计算,确保明文数据及其衍生计算结果永不公开,在基础设施损坏时保持安全不被修改和/或破坏。大多数完全同态加密方案都是基于格(在序理论和抽象代数子学科中研究的抽象)进行数学描述的,被认为是量子计算安全的,并且被认为是后量子密码学。新的硬件加速器架构是一个活跃的研发领域,学术研究不断开发出新的更有效的实现方式,使得数据处理的全同态加密的实现逐渐走向商业化阶段。其中:数据,包括其不受限制的计算及其衍生产品,在静态和整个生命周期内保持加密状态,并且只能在安全、可信的环境中解密为明文。通过人工智能、大数据和分析,可以从数据中提取有价值的见解,甚至可以从多个不同的来源中提取,而无需公开数据或(如有必要)底层评估代码。1.当前的数据安全模型不仅失效,而且很快失去相关性在当今的IT基础架构中,通用的行业标准和基于边界的安全机制是由成千上万个集成的、不断变化的硬件和软件组件构建而成。它们主要依赖于密码学,依赖于用现有硬件很难找到大整数的离散对数和/或素数。此外,这些组件的数量和质量都在不断变化,唯一不知道的是这些变化是否会被识别和利用,基础设施的故障点始终存在。数据保护已成为一个越来越复杂且容易出现漏洞的过程,目前的许多方法都无法实现可证明的数据安全性。此外,数据处理是在日益严格的监管环境中进行的,不合规的后果和代价是严峻的。今天广泛使用的加密技术取决于在标准硬件上找到离散对数和/或因式分解大整数的难度,而量子计算算法可以轻松解决这些问题。随着量子计算市场以36.5%的复合年增长率增长,预计到2028年将达到19.876亿美元,这些加密技术正在变得过时,需要后量子时代的密码学等安全机制:假设IT基础设施已经免于受到损害,无需依赖强大的边界防御就可以保护数据。使用不易受到量子计算攻击的加密技术。从目前的技术进步来看,全同态加密可以满足这两个要求。2、从同态加密开始1978年,RonaldL.Rivest、LenAdelman和MichaelL.Dertouzos提出了直接计算加密数据的思想。他们发现,在RSA加密下,两个加密数字可以相乘,其结果等同于用相同密钥加密的明文乘积。他们将这些属性称为隐私同态,认识到加密方案可以具有这样的属性,即对明文数据的一组操作的结果等于对其加密形式执行然后解密的相同操作的结果。因此,RSA加密表现出乘法同态的性质,进而实现:具有同态加密,即对加密数据进行计算的能力,可以将对数据的访问与对数据的处理分开,从而可以进行计算在不使用密钥解密加密数据的情况下。用户可以获取一段数据,对其进行同态加密,然后在数据库中查询加密后的数据。查询本身可以加密也可以不加密,同样可以得到加密后的结果。在计算过程中,查询的原始数据、解密密钥、查询结果或查询本身都不会被泄露。30多年后的2009年,CraigGentry提出了第一个看似安全的全同态方案。算法被定义为对加密数据执行不受限制的计算的逻辑门电路,并且结果以相同的方式加密。它非常慢,在标准x86硬件上完成单个逻辑门大约需要30分钟。因此,传统观点认为,FHE至少需要额外100万倍的性能提速才能以商业上可行的速度运行。3、同态加密的基础同态加密提供了非对称公钥加密所支持的所有功能。当前的非对称公钥密码学基于寻找大整数的离散对数或因式分解,具有五个属性:密钥生成:(sk,pk)->K(λ),其中具有随机种子参数的密钥λ密钥生成函数K生成由密钥sk和公钥pk组成的密钥对。加密:c<-E(pk,m),其中加密函数E使用参数pk和明文消息m生成加密消息密文c。解密:m<-D(sk,c),其中带有参数sk和c的解密函数D产生m。正确性:对于所有密钥对、消息和密码随机性,m=D(sk,E(pk,m))。语义安全:对于m∈{0,1}的所有单元消息m,集合0和1的成员E(pk,0)和E(pk,1)必须在计算上不可区分并且必须是概率随机的(例如,对于每个明文消息m应该有许多加密消息c)。对于同态加密,必须添加两个附加属性:求值:除了K、E和D函数外,还添加了V用于求值。正确性修正:D(sk,V(pk,f,c1,...cn))=f(m1,...,mn),其中解密函数D有一个参数sk,计算函数V有一个参数pk;函数f,其中f∈F(一组具有同态属性的高效可计算函数);密文c1,...,cn等于参数m1,...,mn的f函数计算结果。对于乘法同态,这将是D(sk,HE-MULTIPLY(pk,MULTIPLY,E(pk,m1),E(pk,m2)))=MultiplY(m1,m2)。因此,为了实现无限制的同态计算,必须选择F作为一个完整的函数集来进行所有的计算。由于集合{XOR,AND}是图灵完备的,实现这一点所需的两个函数是按位加法(相当于布尔异或)和按位乘法(相当于布尔与)。可以通过组合XOR和AND来创建任何可计算函数。同态计算系统是图灵完备的,异或与与是必须的,但算法不需要直接用这些底层语义来定义。目前,布尔电路、整数算法或实数/复数算法通常用于定义计算。4.同态加密的安全性在RonaldL.Rivest、LenAdelman和MichaelL.Dertouzos的论文中,通过创建p的随机倍数将密钥sk隐藏在公钥pk中,其中qi是密钥的一个因子。分解,对于每个加密是不同的。使用公钥加密单个位b是将p的随机倍数添加到b,解密是m=(cmodpmod2)。不幸的是,这种做法破坏了语义安全,因为c=qip+bmod2,那么0的密文=qip+0mod2,那么明文bit0的加密只是p的倍数。2010年,MartinvanDijk、CraigGentry、ShaiHalevi和VinodVaikuntanathan发现如果来自集合{xi=qip+2ri:ri<