ckks同态加密原理
- 格式:doc
- 大小:36.59 KB
- 文档页数:1
2021⁃06⁃10计算机应用,Journal of Computer Applications2021,41(6):1723-1728ISSN 1001⁃9081CODEN JYIIDU http ://优化的基于错误学习问题的CKKS 方案郑尚文1,刘尧1,周潭平1,2*,杨晓元1,3(1.武警工程大学密码工程学院,西安710086;2.中国科学院软件研究所,北京100090;3.网络和信息安全武警部队重点实验室(武警工程大学),西安710086)(∗通信作者电子邮箱850301775@ )摘要:针对基于错误学习(LWE )问题的CKKS 同态加密方案在密态数据计算中存在的密文大、计算密钥生成复杂以及同态计算效率低的缺陷,运用比特丢弃和同态计算密钥重组的方法,提出了一种优化的LWE 型CKKS 方案。
首先,丢弃密文向量的部分低位比特和同态乘法计算中密文张量积的部分低位比特,从而减小了同态乘法过程中的密文规模;其次,针对比特丢弃对同态计算密钥进行重组和优化,从而去除密钥交换过程中powersof2含有的无关扩展项并降低计算密钥的规模和同态乘法过程中的噪声增长规模。
在保证原有方案安全性的基础上,所提优化方案使得计算密钥的维度减少,使得同态乘法的计算复杂性降低。
分析结果表明,所提出的优化方案在一定程度上降低了同态计算及计算密钥生成过程的计算复杂性,从而降低了存储开销并提升了同态乘法运算的效率。
关键词:同态加密;错误学习问题;低位比特丢弃;计算密钥;计算复杂性中图分类号:TP309文献标志码:AOptimized CKKS scheme based on learning with errors problemZHENG Shangwen 1,LIU Yao 1,ZHOU Tanping 1,2*,YANG Xiaoyuan 1,3(1.College of Cryptographic Engineering ,Engineering University of PAP ,Xi ’an Shaanxi 710086,China ;2.Institute of Software ,Chinese Academy of Sciences ,Beijing 100090,China ;3.Key Laboratory of Network and Information Security of PAP(Engineering University of PAP ),Xi ’an Shaanxi 710086,China )Abstract:Focused on the issue that the CKKS (Cheon -Kim -Kim -Song )homomorphic encryption scheme based on theLearning With Errors (LWE )problem has large ciphertext ,complicated calculation key generation and low homomorphiccalculation efficiency in the encrypted data calculation ,an optimized scheme of LWE type CKKS was proposed through themethod of bit discarding and homomorphic calculation key reorganization.Firstly ,the size of the ciphertext in the homomorphic multiplication process was reduced by discarding part of the low -order bits of the ciphertext vector and part of the low -order bits of the ciphertext tensor product in the homomorphic multiplication.Secondly ,the method of bit discarding was used to reorganize and optimize the homomorphic calculation key ,so as to remove the irrelevant extension items in powersof2during the key exchange procedure and reduce the scale of the calculation key as well as the noise increase in the process of homomorphic multiplication.On the basis of ensuring the security of the original scheme ,the proposed optimized scheme makes the dimension of the calculation key reduced ,and the computational complexity of the homomorphic multiplication reduced.The analysis results show that the proposed optimized scheme reduces the computational complexity of the homomorphic calculation and calculation key generation process to a certain extent ,so as to reduce the storageoverhead and improve the efficiency of the homomorphic multiplication operation.Key words:homomorphic encryption;Learning With Errors (LWE)problem;low -order bits discarding;calculationkey;computational complexity0引言全同态加密(Fully Homomorphic Encryption ,FHE )允许在不解密的状态下对密文进行任意运算,且解密后结果与其对应明文进行同样运算的结果相等。
基于CKKS加密方案的区块链集成风险评价模型一、引言A. 背景介绍:区块链技术在金融、物流、医疗等多个领域得到广泛应用随着区块链技术的快速发展和广泛应用,人们对于区块链集成风险的关注也越来越高。
区块链技术以其分布式、不可篡改和匿名性等特点,为各个行业的信息交互提供了新的解决方案。
然而,在区块链集成的过程中,安全性问题成为了关注的焦点。
特别是加密方案的安全性问题,直接影响区块链技术在实际应用中的安全性和可靠性。
B. 问题提出:区块链集成面临的安全风险,特别是加密方案的安全性问题在区块链集成过程中,由于数据的传输和存储需要使用加密算法来保证其安全性,因此加密方案的安全性问题成为了重要的研究课题。
传统的加密方案存在着抗量子攻击能力弱、计算效率低、通信效率低以及可扩展性差等问题,这些问题都对区块链技术的集成和应用造成了一定的安全风险。
C. 研究目的:基于CKKS加密方案,构建区块链集成风险评价模型为了解决上述问题,本研究旨在基于CKKS加密方案构建区块链集成风险评价模型。
CKKS加密方案是一种基于混合加密的新型加密方案,它具有高度的安全性、高效的计算和通信效率以及良好的可扩展性。
通过构建区块链集成风险评价模型,可以全面评估不同加密方案在区块链集成中面对的风险差异,为区块链集成的安全风险管理提供科学依据。
二、CKKS加密方案的基本原理A. CKKS加密方案的定义和特点CKKS加密方案是一种基于混合加密的新型加密方案,它采用了同态加密、部分同态加密和对称加密的混合方式,既保证了数据的安全性,又提高了计算和通信效率,同时具备了良好的可扩展性和抗量子攻击能力。
B. CKKS加密方案的加密过程CKKS加密方案的加密过程主要包括生成密钥、明文扩展、同态加密和部分同态加密四个步骤。
通过对原始数据进行加密,可以保证数据在传输和存储过程中的安全性。
C. CKKS加密方案的解密过程CKKS加密方案的解密过程主要包括部分同态解密和对称解密两个步骤。
同态加密技术及其应用同态化(Homomorphic)是指从一种形态转变到另一种形态,同时在第二种形态中保留与第一种形态相关联的元素。
同态加密技术比较公认的是可以在云计算环境下,为了保护用户隐私及数据安全,需要先对数据加密,再把加密后的数据放在云服务端。
使用全同态加密,可以在不暴露明文数据的情况下,由数据使用者对密文数据进行计算,而数据拥有者可以解密得到明文结果,该结果同样是对明文做此运算而得到的结果。
标签:同态加密技术应用数据同态加密是一种加密形式,它允许人们对密文进行特定的代数运算得到仍然是加密的结果,与对明文进行同样的运算,再将结果加密一样。
通俗的讲,这项技术令人们可以在加密的数据中进行诸如检索、比较等操作,得出正确的结果,而在整个处理过程中无需对数据进行解密。
以往加密手段的弊端在于它通常是将数据保存在盒子内而不让外界使用或者分析数据,只有使用解密密钥将盒子打开,才能对数据进行分析和计算。
在同态加密环境下,敏感数据一直处于加密状态,而应用系统无需解密可以用加密的数据按照正常的业务逻辑处理业务,这样公司将敏感的信息储存在远程服务器里,既避免从当地的主机端发生泄密,又保证了信息的使用和搜索,解决了云计算发展面临的客户对数据云端存储安全担忧的难题。
一、同态加密原理同态加密技术,就是将数据加密成难以破译的数字字符串,能对这些加密后的字符串进行数学处理,然后解密结果。
如果用数学方法表述,假设加密操作为E,明文为m,加密得e,即e = E(m),m = E’(e)。
已知针对明文有操作f,针对 E 可构造F,使得F(e)= E(f(m)),这样 E 就是一个针对 f 的同态加密算法。
我们举一个简单的例子,看看同态加密是如何处理2+3这样的问题:假设数据已经在本地被加密了,2加密后变为22,3加密后变为33。
加密后的数据被发送到服务器,在进行相加运算。
然后服务器将加密后的结果55发送回来。
然后本地解密为5。
ckks的编码过程CKKS是一种常见的加密技术,用于保护计算机系统中的敏感数据。
它涉及到许多概念和步骤,其中编码是其中一个重要的步骤。
编码是将原始数据转换为加密数据的过程,它涉及到许多数学原理和算法。
在本文中,我们将详细介绍CKKS 编码的过程,以及其中涉及的数学原理和算法。
一、CKKS编码的概述CKKS是一种加密技术,它可用于对计算机系统中的敏感数据进行加密。
CKKS 是基于FHE(Fully Homomorphic Encryption)的一部分,这是一种能够对加密数据进行计算的加密模式。
为了使CKKS能够进行计算,它需要将原始数据转换为加密数据。
这个转换过程就叫做编码。
CKKS编码的目的是将原始数据转换为多项式形式,并将其嵌入到环中。
这使得计算可以在加密域上进行。
加密域是一个复数域,它允许进行加、减、乘和除四种基本运算。
在加密计算过程中,加密数据不会暴露原始数据的明文,因此可以对数据进行保护。
对于CKKS编码,需要进行两个步骤。
首先,原始数据被转换为多项式形式,并嵌入到一个复数环中。
然后,这个复数环中的多项式被分成若干项,并加上噪音。
这使得加密数据变得更加难以解密,从而提高了数据的安全性。
二、CKKS编码的具体步骤CKKS编码的具体步骤包括多项式转换、嵌入和噪音添加。
下面我们将详细介绍这三个步骤。
1.多项式转换CKKS编码需要将原始数据转换为多项式形式。
这个过程称为多项式转换。
在CKKS编码中,多项式的系数和常数项都必须是实数或复数。
如果原始数据不是实数或复数,则需要进行转换,以使其适应CKKS编码的要求。
在CKKS编码中,一个多项式可以被表示为:P(x)=\sum_{i=0}^nc_ix^i其中,n表示多项式的次数,c_i表示第i个系数,x表示多项式变量。
为了适应CKKS编码的要求,原始数据需要进行零填充,并将它们转换成复数。
然后,这些复数被分成若干项,每个项包含一个实数和一个复数。
这些项被组成一个多项式,并嵌入到一个复数环中。
同态加密——云计算时代的信息安全意义与价值基本概念A way to delegate processing of your data, without giving away access to it.(Craig Gentry)即一种不需要访问数据本身就可以加工数据的方法对比普通加密方式的好处一般的加密方案关注的都是数据存储安全,即如果需要发送或存储一段数据,那么需要先对这段数据进行加密,然后将加密后的结果发送或者存储,没有密钥的用户,就不能从加密结果中获取原始信息,只有拥有密钥的用户才可以对加密结构进行解密,从而获得原始数据。
但是在这个过程中,我们只能对加密数据进行传输和存储,而不能对加密数据本身进行任何操作,否则都会造成加密数据无法解密。
同态加密与一般加密方案的不同就在于,其注重的是数据处理时的安全。
同态加密提供了一种对加密数据进行处理的功能。
也就是说,其他人可以对加密数据进行处理,但是处理过程不会泄露任何原始内容。
同时,拥有密钥的用户对处理过的数据进行解密后,得到的正好是处理后的结果。
概况描述什么是同态加密?同态加密是基于数学难题的计算复杂性理论的密码学技术。
对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。
如何理解同态加密为了便于理解,我们举一个例子。
Alice是一家珠宝店的店主,她打算让员工将一整块黄金加工成首饰,但是却担心工人在加工的过程中偷取黄金。
于是她制造了一个有锁的箱子(手套箱)用于存放黄金以及做好的首饰,而钥匙由她随身保管。
通过手套箱,工人可以将手深入箱子来加工首饰。
但是箱子是锁着的,所以工人无法拿到黄金和加工好的首饰。
而Alice 则可以通过钥匙向手套箱添加原料,并取出加工好的首饰。
下图是个手套箱示例图。
这个故事和同态加密的对应关系如下:Alice:最终用户黄金:原始数据手套箱:加密算法钥匙和锁:用户密钥通过钥匙向手套箱中添加原料:将数据用同态加密方案进行加密员工加工首饰:应用同态特性,在无法取得数据的条件下直接对加密结果进行计算处理 取出加工好的首饰:对结果进行解密,直接得到处理后的结果同态加密的具体过程我们以云应用为背景进行介绍:用户通过云来处理数据的过程大概如下图所示:UserData 1,Data 2,KeyCD ,=Evaluate(f,CD 1,CD 2)F(Data 1,Data 2)=Decrypt(CD ,,Key)用户对Data 1和Data 2进行加密,将加密后的数据CD1和CD2发送到云端用户向云端提交数据处理方法f()云端使用方法f()对密文数据CD 1和CD 2进行处理云端将处理后的结果发送给用户用户对数据进行解密,得到相应原始数据处理后的结果 因此,在同态加密过程中我们具体需要一下几个主要方法1. GenerateKey 方法:用来生成密钥2. Encrypt 方法:用来进行同态加密3. Evaluate 方法:在用户给定的数据处理方法f()下,对密文进行操作4. Decrypt 方法:用来解密密文同态加密基本原理设R 和S 为整数集,用R 表示明文空间,用S 表示密文空间。
同态加密同态加密是基于数学难题的计算复杂性理论的密码学技术。
对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。
一.同态加密的简介2009年9月,Craig Gentry 的论文发表于STOC。
一名IBM研究员解决了一项棘手的数学问题,该问题自从几十年前公钥加密发明以来一直困扰着科学家们。
该项创新为“隐私同态(privacy homomorphism)”或“全同态加密(fully homomorphic encryption)”领域的重要技术突破,使得加密信息,即刻意被打乱的数据仍能够被深入和无限的分析,而不会影响其保密性。
IBM研究员Craig Gentry设计了这一解决方案。
他使用被称为“理想格ideal lattice”的数学对象,使人们可以充分操作加密状态的数据,而这在过去根本无法设想。
经过这一突破,存储他人机密电子数据的电脑销售商就能受用户委托来充分分析数据,不用频繁与用户交互,也不必看到任何隐私数据。
利用Gentry的技术,对加密信息的分析能得到同样细致的分析结果,就好像原始数据完全可见一样。
使用该解决方案能增强云计算业务模式。
计算机销售商可以受托在任意互联网环境中保管他人的机密数据。
以往加密手段的一个弊处在于它通常是将数据保存在盒子内而不让外界使用或者分析数据,除非使用解密密钥将盒子打开,而完全同态加密方案可以让你在数据加密的情况下对数据进行分析和计算。
IBM的工程师们近日突破了一项折腾他们几十年的老大难问题:如何对数据进行加密,这样其他人可以进行排序和搜索,而无需实际揭示它的内容。
如果说,一种加密算法,对于乘法和加法都能找到对应的操作,就称其为全同态加密算法。
换句话说,它的意义就在于,对于允许任意复杂的明文操作,都能构造出相应的加密操作。
但直到目前还没有真正可用的全同态加密算法,因为“在同步加密方案成为实用工具前,还需要进行很多理论上的工作以提高其“效率”。
同态加密比较运算1.引言1.1 概述概述部分是文章的引言,用来简要介绍同态加密比较运算这个主题。
在此,我们将概述同态加密的基本概念和原理,以及同态加密在各个应用领域中的重要性和现实意义。
同态加密是一种特殊的加密技术,它允许在不解密的情况下对加密数据进行运算,包括加法和乘法等特定运算。
这种加密方式使得数据的隐私得到了更高的保护,同时也能够方便地进行计算和分析。
同态加密的基本原理是通过将数据进行加密,使得只有具有相应解密密钥的合法用户才能够解密和访问数据。
与其他传统的加密方式不同的是,同态加密不需要解密就能够对加密数据进行运算,这为一些特定的应用场景提供了便利。
同态加密技术在各个领域都有着广泛的应用。
例如,在云计算中,用户可以将加密的数据上传到云端,而云服务器可以在不知道具体数据内容的情况下进行计算,并返回相应的结果。
这样既保障了用户数据的隐私安全,又能够充分利用云计算的高效性能。
同样地,在数据隐私保护和共享计算等领域,同态加密也起到了重要的作用。
本文旨在介绍同态加密比较运算,探讨其在各个领域中的重要性和应用。
接下来的章节将详细介绍同态加密的基本概念和原理,以及同态加密在不同领域的具体应用。
同时,我们将对不同的同态加密方案进行比较和评价,以期能够更好地理解和应用这一技术。
1.2文章结构1.2 文章结构本文将从以下几个方面对同态加密比较运算进行详细阐述。
首先,我们将介绍同态加密的基本概念和原理。
在这一部分,我们将解释什么是同态加密,以及它的核心思想和基本原理。
我们还将介绍同态加密的加密和解密算法,并探讨其在安全领域中的作用。
其次,我们将探讨同态加密在实际应用领域中的具体应用。
同态加密作为一种能够在加密状态下进行计算的技术,具有广泛的应用前景。
我们将重点介绍同态加密在云计算、数据隐私保护和安全多方计算等领域的应用案例,并讨论其所带来的好处和挑战。
接下来,我们将在结论部分强调同态加密比较运算的重要性。
同态加密比较运算作为同态加密的一个重要应用场景,具有很高的实用价值和研究意义。
当今社会,社交网络已经成为人们日常生活不可或缺的一部分。
通过社交网络,人们可以轻松地与朋友、家人和同事保持联系,分享生活点滴,了解世界动态。
然而,随着社交网络的普及和使用频率的增加,人们的个人数据隐私也受到了越来越大的威胁。
在这种情况下,同态学习作为一种保护数据隐私的方法受到了人们的广泛关注。
1. 同态学习的概念和原理同态学习是一种对加密数据进行计算的方法,它允许在加密状态下进行计算,而不需要先解密数据。
换句话说,通过同态加密,可以在不暴露数据内容的情况下对数据进行运算。
这种技术在保护数据隐私方面具有重要的意义。
同态加密的原理是利用密码学算法,在不暴露数据内容的情况下对数据进行加密和计算。
同态加密使得数据在计算过程中仍然保持加密状态,只有在最终结果需要被查看时,才进行解密操作。
这样一来,即使在计算过程中数据被泄露,也无法得到有意义的信息,从而保护了数据的隐私性。
2. 同态学习在社交网络中的应用在社交网络中,用户在进行各种活动时会产生大量的数据,包括个人资料、社交关系、发布的内容等。
这些数据包含了用户的个人隐私信息,如姓名、年龄、地理位置等。
在传统的数据处理中,这些数据需要在服务器端进行分析和计算,因此存在泄霁隐私的风险。
而通过同态学习技术,社交网络可以在不暴露用户隐私的情况下进行数据处理和分析,从而更好地保护用户的数据隐私。
例如,社交网络可以利用同态学习技术进行社交关系分析。
在传统的数据分析中,社交网络需要收集用户的社交关系数据,并在服务器端进行分析。
这样一来,用户的社交关系数据有可能会被泄露。
而通过同态学习,社交网络可以在加密状态下进行社交关系分析,从而保护用户的社交关系数据隐私。
另外,同态学习还可以应用于社交网络的个性化推荐系统。
社交网络通过分析用户的行为和兴趣,向用户推荐感兴趣的信息和内容。
然而,传统的个性化推荐系统需要在服务器端对用户的数据进行分析,存在泄露隐私的风险。
通过同态学习,社交网络可以在加密状态下进行用户数据分析,从而更好地保护用户的隐私。
同态加密的可行性研究报告本报告将从同态加密的基本原理、发展历程、技术实现、应用领域等方面进行深入研究,旨在探讨同态加密技术的可行性及应用前景,为推动同态加密技术的发展和应用提供参考。
一、同态加密的基本原理同态加密技术是指在加密的状态下可以对密文进行某种操作得到与对明文进行同样操作的结果,即密文和明文之间可以实现某种运算。
同态加密的基本原理主要包括以下几种:完全同态加密、部分同态加密、概率同态加密和多方计算。
1. 完全同态加密完全同态加密是指对于任意两个密文c1和c2,对应于明文m1和m2,通过进行同态运算得到的密文c1⊕c2等于对应的明文m1+m2(⊕表示同态加法运算)。
这种加密方案可以实现对密文进行任意多次加法和乘法运算,且运算结果与对应明文相同,因此被认为是同态加密的最高级别。
2. 部分同态加密部分同态加密是指对于明文m和密文c,通过同态运算得到的密文c'能够满足部分同态性质,即密文c⊕c'=m',其中m'是部分加密的结果(⊕表示同态加法运算)。
部分同态加密包括加法同态加密和乘法同态加密两种形式。
3. 概率同态加密概率同态加密是指通过概率算法实现的同态加密方案,它在实际应用中可能会出现一定的误差,并且存在一定的概率性。
概率同态加密技术主要用于数据安全保护和隐私保护等方面。
4. 多方计算多方计算是指多个参与方之间通过同态加密技术实现对数据的联合计算,且每个参与方只能得到自己的计算结果,而不能知晓其他参与方的数据。
多方计算在隐私保护和数据安全方面具有重要应用价值。
二、同态加密的发展历程同态加密技术的发展历程可以追溯到20世纪70年代,当时RSA公钥加密系统的提出为同态加密的研究奠定了基础。
随着研究的深入,同态加密技术不断取得重要突破,并逐渐引起了学术界和产业界的广泛关注。
1. 早期研究在20世纪70年代,Diffie-Hellman密钥交换算法和RSA公钥加密系统的提出为同态加密的研究奠定了基础。
在当今信息化的社会中,数据已经成为了一种宝贵的资产。
在大数据时代,数据的收集、存储和分析已经成为了各个行业的重要环节。
然而,随之而来的隐私泄露问题也日益凸显。
在这种情况下,同态学习技术成为了一种重要的隐私保护手段。
一、同态加密技术的原理与特点同态加密技术是一种特殊的加密技术,它能够在不破坏数据的加密状态下进行计算操作。
简单来说,同态加密就是在密文上进行操作,得到的结果解密后与直接在明文上操作得到的结果是一致的。
它的特点是可以保护数据的隐私性,同时不影响对数据进行计算和分析。
二、同态学习在数据共享中的应用随着大数据和人工智能技术的发展,数据共享已经成为了一种趋势。
在医疗、金融、教育等领域,各种数据共享平台层出不穷。
然而,由于涉及到用户个人隐私和敏感信息,数据共享往往面临着隐私泄露的风险。
而同态学习技术的出现为数据共享提供了一种可行的隐私保护方案。
通过同态加密技术,数据方可以将数据加密后上传至共享平台,数据在平台上进行计算操作后,结果经过解密之后将与直接在明文上操作所得的结果一致,从而保护了数据的隐私性。
三、同态学习的优势和局限同态学习技术能够有效保护数据隐私,在数据共享中具有重要的应用前景。
其优势在于可以实现安全的数据共享和计算,同时保护了用户的隐私和敏感信息。
然而,同态学习技术也存在一些局限性,比如计算效率较低、加密解密过程的计算量大等问题。
同时,同态学习技术还需要在实际应用中不断改进和完善,以满足不同领域数据共享的需求。
四、同态学习技术的发展趋势随着大数据和人工智能技术的不断发展,同态学习技术也将得到更多的关注和研究。
未来,同态学习技术将会在数据共享、隐私保护等领域发挥越来越重要的作用。
同时,随着技术的不断进步,同态学习技术也将不断改进和完善,提高其计算效率和安全性,以应对不断增长的数据隐私保护需求。
总之,同态学习技术作为一种重要的隐私保护手段,在数据共享、计算外包等方面具有重要的应用前景。
随着技术的不断发展和完善,相信同态学习技术将会在数据隐私保护领域发挥越来越重要的作用。
ckks同态加密原理
CKKS(Ciphertext-Policy K-Anonymous Encryption)是一种同态加密方案,它支持在密文空间中进行浮点数和复数的加减乘运算,并保持同态性质。
其原理是将明文域中的复数向量映射到环上,使得加密的明文是一个多项式。
具体过程是通过的单位本原根来实现的,每个本原根对应向量中的一个值。
然后,多项式的系数被乘以一个大整数,以将其转换为整数系数多项式。
此时,可以使用BGV或者BFV来加密。
解密过程则是基于小差错的解密,即通过层密文来恢复明文,其中e是解密噪声。
具体来说,如果密文是某个层的输出,则可以通过求和的方式将多个密文相加得到明文,同时引入解密噪声来保证解密的正确性。
CKKS相较于其他同态加密方案的最大优势是能够处理浮点数和复数,而其他方案通常只能处理整数。
此外,CKKS还具有高效的加解密速度和较小的密钥长度等优点。
因此,CKKS在密码学和隐私保护等领域具有广泛的应用前景。