CN108282328B - 一种基于同态加密的密文统计方法 - Google Patents
一种基于同态加密的密文统计方法 Download PDFInfo
- Publication number
- CN108282328B CN108282328B CN201810104293.6A CN201810104293A CN108282328B CN 108282328 B CN108282328 B CN 108282328B CN 201810104293 A CN201810104293 A CN 201810104293A CN 108282328 B CN108282328 B CN 108282328B
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- keyword
- plaintext
- text
- formula
- 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.)
- Active
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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于全同态加密的密文统计方法,包括统计某个关键词在文档中出现的次数、统计包含该关键词的文档数目。首先使用同或运算、异或运算,设计了能够统计明文关键词在明文文档中出现的次数、包含该明文关键词的明文文档数的明文统计方案;然后,利用全同态加密的乘法同态和加法同态特性,通过将同或运算、异或运算转化为乘法与加法运算,我们基于明文统计方案构造了密文统计方案,可以直接对密文关键词与密文文档进行统计,得出密文关键词在一篇密文文档中出现次数的密文、包含该密文关键词的文档数目的密文。本发明统计出的信息仍然是密文,因此保证了统计信息的安全性,防止统计信息的泄露,避免统计攻击。
Description
技术领域:
本发明属于信息处理领域,涉及一种基于同态加密的密文统计方法。
背景技术:
1.云计算及密文统计
云计算通过网络以按需、易扩展的方式提供软件、硬件资源及各种相应的服务。为保证云端存储数据的安全,一般采用加密算法实现数据加密,保证数据的机密性。加密方法虽然保证了数据的机密性,但也损失了云端对数据直接操作的能力,因此给用户提供的数据管理服务将非常受限。这些数据管理服务通常依赖于对数据的统计处理,如能在云端实现对密文的相关信息进行统计,云端即可提供密文检索等服务。
本发明涉及的密文统计,针对全同态加密密文,一是统计某个关键词在文档中出现的次数,二是统计包含该关键词的文档数目;进而易于计算出文本检索中常用的词频TF和逆文档频率IDF,以及其它相关统计量。
2.现有密文统计方案
一般的明文统计比较简单,通过比较关键词之间是否相同,计算频率即得到各种统计信息。传统加密方式缺乏随机性,得到的密文也容易进行统计运算,因为可以由客户端上传不同关键词的密文、并进行密文之间的比较,也容易得到相应的密文统计信息。但是同态加密因为引入了随机性,同样的明文其每次加密得到的密文是不一样的,如果不给云端交付一些密钥相关的信息,则云端无法对这样的密文进行统计。
2012年,陈志伟、白健等人设计了一种同态加密方案,可实现密文数据的统计功能。该方案以Paillier加密实现加法同态、以RSA加密实现乘法同态,并同时实现了密文检索。该方案在处理小规模数据时可以获得较好的性能,一旦数据量加大,其耗时会迅速增大。
2015年,李雪松、彭长根等设计了一种基于同态加密的统计数据处理方案,能够实现密文的加法、乘法和平均值计算,但其运算需要分别进行,中间还需要解密操作,无法直接用于词频等信息的统计运算。
3.现有密文统计分类方案
2016年,蒋林智提出专利:一种统计学习中基于密文的数据二分类方法。该方法基于RLWE的全同态加密方法具有的数据与密文的一致性,把本地的训练数据和递增的序列用RLWE同态加密方案加密并上传到云端。云端通过把密文训练数据与秘密递增序列比较,确定出每个密文训练数据在秘密递增序列的那一部分,从而得出密文训练数据的大小关系。并把这些大小关系运用在不同二分类模型中,实现云端对密文直接进行训练和学习。保证了本地上传的数据的安全性。但是,该专利忽略了密文的随机性,即明文数据概率分布与密文概率分布相同,安全性大大降低。
4.全同态加密
Gentry等人从2009年起提出一系列全同态加密方案,包括理想格上的同态加密、整数上的同态加密,以及基于LWE的更简单快速的RLWE全同态加密方法等等。
本方案采用全同态加密作为数据的加密方法。设某种安全参数为λ的全同态加密方案如下:
ε=(KenGen,Enc,Dec,Evaluate)。 (1)
KenGen(λ):产生私钥sk和公钥pk。
Enc(pk,m∈{0,1}):加密算法,把明文m加密为密文c。
Dec(sk,c):解密c到明文m。
Evaluate(pq,c1,c2,…,ct):对密文做符合要求的运算,得到的结果解密之后,与对应的明文做相同的运算结果一致。
同态加密算法满足乘法同态和加法同态,即对两个明文m1和m2,加密得到密文c1和c2满足:
Dec(c1+c2)=m1+m2
Dec(c1*c2)=m1*m2 (2)
现有同态加密的密文运算涉及噪音,噪音超过一定的上限会使解密失败。必须引入降噪算法,使输入密文的噪音降到新鲜密文(明文加密后的噪音大小)的噪音程度。这样,密文经过加法或者乘法运算之后,其运算结果的噪音不会超过容许的上限。
对于Evaluate中的运算多项式,每进行一次加法或乘法运算,都需要对其输入的密文运行降噪算法,从而保证其运算过程的全同态特性。
发明内容:
针对全同态加密的密文统计问题,本方案构造了一种新的统计关键词信息的方法,包括统计某个关键词在文档中出现的次数、统计包含该关键词的文档数目。此方法统计出的信息仍然是密文,因此保证了统计信息的安全性,防止统计信息的泄露,避免统计攻击。为将本发明描述的更为清晰,首先介绍在明文方式下的相关信息的统计过程,然后再阐述本方案:全同态加密的密文统计信息的具体统计过程。
(1)明文文本的信息统计
设明文文本集共含有s个文本;其中含有n个词的明文文本可表示为Mθ={m1,m2,...,mn};含有τ个词的关键词集合可表示为K={k1,k2,…,kτ}。一个单词mj可表示成二进制形式 a∈{0,1}1,δ为单词的二进制长度。
统计某关键词在文本中出现的次数,需要判断关键词与待比对单词之间是否相等,即判断这两个词各个对应的二进制位是否相等。问题就转换为子问题:判断两个二进制位是否相等。我们可以选用同或运算⊙来进行两位的比较;即两位相同结果为1,不同结果为0;也可以选用异或运算来进行两位的比较;即两位相同结果为0,不同结果为1。
利用同或运算,对两个二进制表示的关键词ki和mj进行比对的结果,可以用以下公式描述:
上式结果为1,则表明ki和mj相等;若结果为0,则ki和mj不相等。上式默认两个词的长度δ相等,这时才需要比较;如果两个单词长度不相等,则肯定不同,没有必要比对。
设关键词ki在文本Mθ中出现次数记为fi,θ。据公式(3),fi,θ可表达为:
上式中,求和是统计关键词ki在文本Mθ中匹配成功的次数,正是该词在文本中出现的次数。
统计包含某关键词的文档个数,需要判别各个文档是否包含该关键词,现考虑关键词ki是否存在于明文文本Mθ中:利用公式(3),将ki与文本Mθ中的n个单词进行逐个比对,经过n次计算,得出n个比对结果,然后按下式进行计算resθ:
如文档包含该关键词,n次比对结果一定有等于1的值,所以上式花括号中一定有为0的乘积项,因此resθ=0;如文档不包含该关键词,n次比对结果都等于0,所以上式中花括号中的乘积项均为1,即resθ=1。
利用异或运算,对两个二进制表示的关键词ki和mj进行比对的结果,可以用以下公式描述:
设关键词ki在文本Mθ中出现次数记为fi,θ。据公式(7),fi,θ可表达为:
上式中,求和是统计关键词ki在文本Mθ中匹配成功的次数,正是该词在文本中出现的次数。
统计包含某关键词的文档个数,需要判别各个文档是否包含该关键词,现考虑关键词ki是否存在于明文文本Mθ中:利用公式(7),将ki与文本Mθ中的n个单词进行逐个比对,经过n次计算,得出n个比对结果,然后按下式进行计算resθ:
如果文档包含该关键词,由于n次比对结果一定有等于1的值,所以上式中花括号中一定有为0的乘积项,因此resθ=0;如果文档不包含该关键词,由于n次比对结果都等于0,所以上式中花括号中的乘积项均为1,因此resθ=1。
(2)密文文本的信息统计
以上过程说明了在明文情况下如何计算文本关键字的统计信息。如果是经过全同态加密后的密文,由于以上统计运算过程只用到了加法与乘法(同或与异或运算也可以转换为加法和乘法),根据全同态加密的性质,对密文进行相同的统计操作,对得出的结果解密,也可得到需要的统计信息。
由于所以前述明文统计的同或与异或方案可互相转化;如果将同或运算与异或运算转化为加法和乘法运算,公式(3)、(4)、(5)与公式(7)、(8)、(9)经过转化后是相同的。因此,可以只考虑同或公式的加密表示方法。
对公式(4)-(6)进行全同态加密变换,可得到其加密形式如下:
现有同态加密方案的密文存在噪声,会随着运算次数的增加逐渐增大,影响解密。因此需要运行降噪声算法,在每一次加法或者乘法运算时,把输入的密文降噪处理,降低输入密文的噪音,使噪音不会超过上限。
(3)密文文本信息统计主要步骤
步骤1用户把全同态加密后的密文文档集合与关键词集合 以及部分公钥集合pk上传到云端,云端将这些数据保存到云服务器中。我们这里约定:同态加密是对明文的每一个二进制位分别进行加密;加密后的密文数据结构应明确规定,一个密文词的边界,一个密文词中每一个密文位的边界。这样规定后,云端方可以对密文进行统计操作。
步骤2云端按以下步骤统计各个关键词在每篇文档中的出现次数。首先从取出密文关键词Enc(ki),计算其在密文文档Enc(Mθ)中出现的次数。利用公式(12)可以得到第i个密文关键词在第θ篇密文文档中出现的次数的密文,即得到Enc(fi,θ)。
明文关键词之间的比较与密文关键词之间的比较,在细节上有所不同。明文直接按照位来比较,如果一个词ki与mj的每一位都相等,即说明这两个词ki与mj匹配。如图1所示;
如果一个词ki与mj存在某一位不相等,即说明这两个词ki与mj不匹配。如图2所示:
而对于密文关键词Enc(ki)与Enc(mj)之间的比较,需要对每一位加密之后的结果进行比较:即对每一位加密后的密文按公式(11)进行运算,得到的运算结果就是Enc(1)或Enc(0),表示匹配或不匹配。将密文关键词Enc(ki)与Enc(mj)的每1个对应位都依次进行比较,并将比较结果相乘,类似公式(3)的乘法,这样即可得到两个关键词匹配结果的密文,相同得Enc(1)、不同得Enc(0)。
然后,再对一个文档中的每一个词都进行类似操作,最终按照公式(12)可以得到第i个密文关键词在第θ篇密文文档中出现的次数的密文,即得到Enc(fi,θ)。
步骤3在文档集合中,统计包含某关键词的文档个数,即利用前述公式(13)和(14),可以得到包含第i个密文关键词的文档个数的密文Enc(ci)。
本发明的有益效果:
能够实现对云端的同态加密密文进行统计,并且这些统计信息同样也是密文,进一步保证了数据的安全性,避免了统计攻击的风险。在密文统计过程中,没有进行比较判断,而是对密文进行加法和乘法运算,并且每个密文都参与了运算;云端不可能从运算过程中得到有用的统计信息,从而保证了运算过程的机密性。
利用这些密文统计信息,可以进一步展开对密文文档的其他操作,例如进行密文排序、检索、分类等;云端因此能够提供更丰富的个性化服务。本发明的创新点可总结如下:
1.本方案以全同态加密作为基础,可适用于所有满足全同态加密特性的密文统计过程;
2.对密文进行统计,得到的统计信息也是加密的,可防止统计攻击;
3.每个明文比特的密文都参与了统计运算,运算过程中不涉及比较过程,即不泄露任何有关明文与密文特征的信息,保证了统计过程的机密性;
4.利用本方案的密文统计信息,可进一步展开对密文文档的其他操作。
附图说明:
图1为本发明的明文关键词ki与mj进行比较得到匹配结果的示意图;
图2为本发明的明文关键词ki与mj进行比较得到不匹配结果的示意图。
具体实施方式:
下面以Gentry整数同态加密为例,说明本方案的具体实施步骤。
KenGen(λ):产生η比特的私钥 γ为公钥长度,保证最大的qi是奇数,并把q0记作最大的。选择设x0=q0p+2r0,让对于i=1,…,τ,公钥pk=<x0,x1,…,xτ>(是一个在(-x0/2,x0/2,]的一个整数)
Evaluate(pq,c1,c2,…,ct):对密文做符合同态性要求的运算。
初始化同态加密的加密参数如下表。
表1加密参数表
表2文本内容
明文文本集合的关键字集合K={k1,k2,…,kτ}为
表3关键字集合和出现的频率
经过整数上同态加密后的数据(由于数据太多,这里只展示M1的密文数据,这里子集|S|=3)
表4M1文本密文数据
把加密后的关键词集合Enc(K)和文本集合上传到云端。云端根据上传的Enc(K)的每个关键字的密文运用公式(12)计算每个关键字在密文文本Enc(M1)中的出现次数。这里每个明文关键字用8位2进制位表示,所以k=8,关键字集合|K|=8,所以n=8。经过计算每个密文关键字在密文文本Enc(M1)中的出现次数可见下表:
表5密文关键字在Enc(M1)的出现次数
关键词出现次数的密文 | 密文 | 明文 |
Enc(f<sub>1</sub>) | 10110011000100001110110111 | 1 |
Enc(f<sub>2</sub>) | 10110010001001101001001110 | 1 |
Enc(f<sub>3</sub>) | 10110010101110000110010010 | 1 |
Enc(f<sub>4</sub>) | 10110010010110101010011100 | 1 |
Enc(f<sub>5</sub>) | 10110010000101101111001110 | 0 |
Enc(f<sub>6</sub>) | 10110010100010011000010100 | 0 |
Enc(f<sub>7</sub>) | 10110010100010011000011000 | 0 |
Enc(f<sub>8</sub>) | 10110010100100111111001110 | 0 |
然后,运用公式(13)算出关键词Enc(ki)是否在Enc(M1)中。Dec(Enc(res))=1表示Enc(ki)不在Enc(M1)中,Dec(Enc(res))=0表示Enc(ki)不在Enc(M1)中。因为按照此方法循环四次,可以得出
Enc(res)=(Enc(res1),Enc(res2),Enc(res3),Enc(res4))
运用公式(14)可以得出包含Enc(ki)的文档数的密文Enc(ci)。按照以上步骤循环|K|=8次,即可求出包含各个密文关键字的文档个数的密文如下表:
表6包含密文关键字的文档个数
通过上述两个参量,可以计算出其他统计量,进而实现其他操作。
Claims (2)
1.一种全同态加密密文统计方法,其特征在于,
利用同或运算,对两个二进制表示的关键词ki和mj进行比对的结果,可以用以下公式描述:
上式结果为1,则表明ki和mj相等;若结果为0,则ki和mj不相等;上式默认两个词的长度δ相等,这时才需要比较;如果两个单词长度不相等,则肯定不同,没有必要比对;
设关键词ki在文本Mθ中出现次数记为fi,θ,据公式(3),fi,θ可表达为:
上式中,求和是统计关键词ki在文本Mθ中匹配成功的次数,正是该词在文本中出现的次数;
统计包含某关键词的文档个数,需要判别各个文档是否包含该关键词,现考虑关键词ki是否存在于明文文本Mθ中:利用公式(3),将ki与文本Mθ中的n个单词进行逐个比对,经过n次计算,得出n个比对结果,然后按下式进行计算resθ:
如文档包含该关键词,n次比对结果一定有等于1的值,所以上式花括号中一定有为0的乘积项,因此resθ=0;如文档不包含该关键词,n次比对结果都等于0,所以上式中花括号中的乘积项均为1,即resθ=1;
(2)密文文本的信息统计
对公式(4)-(6)进行全同态加密变换,可得到其加密形式如下:
2.根据权利要求1所述的一种全同态加密密文统计方法,其特征在于,利用异或运算,对两个二进制表示的关键词ki和mj进行比对的结果,可以用以下公式描述:
设关键词ki在文本Mθ中出现次数记为fi,θ,据公式(7),fi,θ可表达为:
上式中,求和是统计关键词ki在文本Mθ中匹配成功的次数,正是该词在文本中出现的次数;
统计包含某关键词的文档个数,需要判别各个文档是否包含该关键词,现考虑关键词ki是否存在于明文文本Mθ中:利用公式(7),将ki与文本Mθ中的n个单词进行逐个比对,经过n次计算,得出n个比对结果,然后按下式进行计算resθ:
如果文档包含该关键词,由于n次比对结果一定有等于1的值,所以上式中花括号中一定有为0的乘积项,因此resθ=0;如果文档不包含该关键词,由于n次比对结果都等于0,所以上式中花括号中的乘积项均为1,因此resθ=1;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810104293.6A CN108282328B (zh) | 2018-02-02 | 2018-02-02 | 一种基于同态加密的密文统计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810104293.6A CN108282328B (zh) | 2018-02-02 | 2018-02-02 | 一种基于同态加密的密文统计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108282328A CN108282328A (zh) | 2018-07-13 |
CN108282328B true CN108282328B (zh) | 2021-03-12 |
Family
ID=62807328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810104293.6A Active CN108282328B (zh) | 2018-02-02 | 2018-02-02 | 一种基于同态加密的密文统计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108282328B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109145889B (zh) * | 2018-11-02 | 2022-03-18 | 中国电子科技网络信息安全有限公司 | 一种针对无线信号进行盲估计的明密文信号分类检测方法 |
CN109412786B (zh) * | 2018-11-14 | 2022-09-06 | 沈阳航空航天大学 | 一种基于同态加密的整数密文算术运算方法 |
CN110401667B (zh) * | 2019-07-31 | 2021-08-06 | 杭州项帮科技有限公司 | 一种基于多项目型映射的分权密钥机制的属性加密方法 |
CN111737719B (zh) * | 2020-07-17 | 2020-11-24 | 支付宝(杭州)信息技术有限公司 | 保护隐私的文本分类方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106934063A (zh) * | 2017-03-30 | 2017-07-07 | 沈阳航空航天大学 | 一种面向云计算应用的同态加密密文检索方法 |
CN107579819A (zh) * | 2017-09-13 | 2018-01-12 | 何德彪 | 一种sm9数字签名生成方法及系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103425639A (zh) * | 2013-09-06 | 2013-12-04 | 广州一呼百应网络技术有限公司 | 一种基于信息指纹的相似信息识别方法 |
US9825758B2 (en) * | 2014-12-02 | 2017-11-21 | Microsoft Technology Licensing, Llc | Secure computer evaluation of k-nearest neighbor models |
CN105512660B (zh) * | 2015-11-27 | 2020-04-10 | 浙江宇视科技有限公司 | 车牌号码识别方法及装置 |
CN107147484B (zh) * | 2017-05-12 | 2020-03-31 | 南京邮电大学 | 一种面向隐私保护的浮点数全同态加密方法 |
-
2018
- 2018-02-02 CN CN201810104293.6A patent/CN108282328B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106934063A (zh) * | 2017-03-30 | 2017-07-07 | 沈阳航空航天大学 | 一种面向云计算应用的同态加密密文检索方法 |
CN107579819A (zh) * | 2017-09-13 | 2018-01-12 | 何德彪 | 一种sm9数字签名生成方法及系统 |
Non-Patent Citations (6)
Title |
---|
(全)同态加密在基于密文计算模型中的应用;蒋林智等;《密码学报》;20171215 * |
"基于同态加密的多关键词检索方案";向广利等;《计算机工程与应用》;20170304 * |
"基于同态加密的密文检索方案研究";吕文斌,拱长青;《计算机测量与控制》;20160325 * |
"基于同态加密的统计数据处理";李雪松等;《信息安全与技术》;20150710 * |
Ciphertext Retrieval Technology of Homomorphic Encryption Based on Cloud Pretreatment;拱长青等;《IEEE》;20171029 * |
基于同态加密的云存储系统设计与实现;宋丹劼;《中国优秀硕士学位论文全文数据库 信息科技辑》;20131115 * |
Also Published As
Publication number | Publication date |
---|---|
CN108282328A (zh) | 2018-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhu et al. | Cryptanalyzing and improving a novel color image encryption algorithm using RT-enhanced chaotic tent maps | |
CN108898025B (zh) | 基于双重置乱和dna编码的混沌图像加密方法 | |
CN108282328B (zh) | 一种基于同态加密的密文统计方法 | |
CN108122188B (zh) | 一种图像加密方法 | |
Saarinen | Ring-LWE ciphertext compression and error correction: Tools for lightweight post-quantum cryptography | |
Bellare et al. | Message-recovery attacks on Feistel-based format preserving encryption | |
CN108737685B (zh) | 一种基于混沌的自适应机制的图像加密方法 | |
Chattopadhyay et al. | A verifiable multi-secret image sharing scheme using XOR operation and hash function | |
CN109344627A (zh) | 一种新型香农完美保密方法 | |
Li | Post-Quantum Public Key Cryptosystem from Subset Product with Errors | |
Wang et al. | Security analysis of a one-way hash function based on spatiotemporal chaos | |
Budiman et al. | An Implementation of RC4+ Algorithm and Zig-zag Algorithm in a Super Encryption Scheme for Text Security | |
Searan et al. | Modification of RC4 algorithm by using two state tables and initial state factorial | |
Patro et al. | Text-to-Image Encryption and Decryption Using Piece Wise Linear Chaotic Maps | |
Chen et al. | Adaptive Coding and Ordered-Index Extended Scrambling Based RDH in Encrypted Images | |
Theramban et al. | Colour image encryption using dna coding and logistic diffusion | |
You et al. | Secure two-party computation approach for ntruencrypt | |
Chakraborty et al. | Attacks on the authenticated encryption mode of operation PAE | |
Ye et al. | Information security analysis of deterministic encryption and chaotic encryption in spatial domain and frequency domain | |
Chen et al. | An image encryption algorithm using two-dimensional chaotic map and DNA coding | |
Zhang | Scalable One-Time Pad---From Information Theoretic Security to Information Conservational Security | |
Wang et al. | Feasibility analysis of lattice-based proxy re-encryption | |
CN111756539B (zh) | 一种可重随机的标识加解密方法 | |
Xu | The advance of digital signature with quantum computing | |
CN113114461B (zh) | 一种用于整数同态加密的n次公钥压缩方法 |
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 |