一种基于隐私集合运算的安全文本分类方法和系统技术方案

技术编号:38996069 阅读:15 留言:0更新日期:2023-10-07 10:27
本发明专利技术公开了一种基于隐私集合运算的安全文本分类方法和系统,本发明专利技术将整个比对的过程分为三个阶段:客户端的编码加密阶段,服务器的密文计算阶段以及客户端的解密获取结果阶段,客户端首先在本地对字符串进行独热编码,同时利用公钥将编码后的字符串进行加密并发送给云服务器;然后云服务器对每对密文进行计算,并将结果返还给各个客户端;最后客户端利用私钥对结果进行解密获得结果,与传统编码方式相比,本发明专利技术提出采用独热编码的方式对字符串序列进行编码,对独热编码的字符串序列进行异或操作,并根据异或的结果来高效比对字符串,判断两个字符串是否相等,并在不相等的情况下,统计不同字符的个数,大大提升比对的效率。率。率。

【技术实现步骤摘要】
一种基于隐私集合运算的安全文本分类方法和系统


[0001]本专利技术涉及数据加密的
,具体是一种基于隐私集合运算的安全文本分类方法和系统。

技术介绍

[0002]在当前大数据时代,数据类型丰富多彩且在经过处理分析后通常具有极高的使用价值和商用价值。其中,个人文本消息可以说覆盖了生活的方方面面,作为一种最常见最基本的数据,其背后价值更是举足轻重,对其进行扫描分析可获得极高的经济、社会价值。分类是机器学习(ML)中的一种监督学习技术,其目标是在给定一组带有类标签的训练数据的情况下构建分类器,该算法可用于个人文本消息分类,解决许多实际问题,目前在监控、电子商务和心理保健等方面有很多实用性应用,如将电子邮件、短消息服务(SMS)分类为垃圾信息或非垃圾信息、医疗状况的诊断(有病与无病)、仇恨言论检测、人脸分类、指纹识别等。但随之而来的便是个人文本信息中的隐私信息泄露与滥用问题,授予应用程序访问个人信息的权限很容易导致隐私侵犯与犯罪事件的产生。因此,隐私保护机器学习(PPML)的研究逐渐兴起,其中应用最广泛的是差分隐私(DP)技术,该技术通过在查询信息中添加噪声,从而防止敌手了解有关训练数据集中任何特定个人的信息。虽然在ML设置中的DP旨在保护训练数据集中的个人隐私,但是对于使用ML模型分类的预测数据隐私也非常重要。为了达到对数据更全面的保护,安全多方计算(MPC)被成功应用于许多具有结构化数据的ML任务中。同态加密(HE)是一种可以直接对密文执行计算的加密模式,曾被用于加密隐私保护文本分析框架,达到对数据提供者方数据的保护,但其效率不高,且会泄露分类文本中哪些关键词出现在分类模型的词典中。之后可证明安全的基于隐私保护(PP)的文本分类方案与基于MPC的隐私保护朴素贝叶斯分类器虽然解决了上述缺陷,保护了数据提供方与分类模型的数据安全,但这些方案在文本分类中的特征提取部分,均是采用了二进制结果的PEQT算法,需要通过进制转换得到两类分类概率结果。随着文本数据量的不断增加以及模型中的关键字逐渐增加,除对比外再进行额外的进制转换会耗费大量的时间,大大增加了运行的时间复杂度与通信复杂度,因此需要一种更为高效的文本分类方案。

技术实现思路

[0003]本专利技术基于以上技术路线,提出了一种基于隐私集合运算的安全文本分类方法和系统。
[0004]为了实现上述目的,本专利技术提出了一种基于外包计算的多方字符串安全比对算法,包含以下步骤:
[0005]S1:客户端编码加密阶段:假设n个客户端每个分别持有1个字符串,每个客户端P
i
首先逐位对其字符串进行独热编码,然后将编码后的比特串逐位使用Goldwasser

Micali同态加密算法进行加密,并将密文发送给服务器;
[0006]S2:服务器密文计算阶段:当服务器收集到各个客户端发送的密文之后,根据
Goldwasser

Micali加密算法的异或同态性,对任意两个密文逐位进行乘法计算,并将计算结果中的元素随机打乱顺序返回给每个客户端P
i

[0007]S3:客户端解密统计阶段:当客户端P
i
收到经服务器打乱顺序的密文后,逐位对密文进行解密,得到其字符串与其他客户端P
j
的字符串进行异或运算后并随机排序的结果,最后客户端P
i
统计该结果中“1”的个数,判断两个字符串是否相等。
[0008]作为优选,所述每个客户端P
i
采用独热编码的方法对其字符串进行编码,然后将编码后的比特串逐位进行加密Enc(m
i
),加密方案使用Goldwasser

Micali公钥加密算法。
[0009]作为优选,所述步骤S1包括以下子步骤:
[0010]S1.1:假设n个客户端每个分别持有1个字符串,每个字符串的长度为l,其中字符种类数量为w,每个客户端P
i
采用独热编码方法对其字符串进行编码,获得长度为ρ=wl的比特串m
i
=m1m2...m
ρ

[0011]S1.2:每个客户端P
i
采用Goldwasser

Micali公钥加密方案对其独热编码比特串m
i
逐位进行加密,得到密文Enc(m
i
)=(Enc(m1),...,Enc(m
ρ
));
[0012]S1.3:每个客户端P
i
将加密的比特串Enc(m
i
)存进一个数组Array
j
,然后将该数组发送给服务器。
[0013]作为优选,所述步骤S2包括以下子步骤:
[0014]S2.1:服务器在收到客户端P
i
加密的独热编码字符串以后,根据Goldwasser

Micali加密算法的异或同态性,对任意两个客户端的密文Enc(m
i
)和Enc(m
j
)逐位进行乘法计算;
[0015]S2.2:服务器将任意两个客户端之间的密文乘法计算结果中的元素随机打乱顺序,即shuffle(Enc(m
i
)
×
Enc(m
j
)),并将结果返回给每个客户端P
i

[0016]作为优选,所述步骤S3包括以下子步骤:
[0017]S3.1:每个客户端P
i
在收到服务器返回的密文以后,逐位进行解密,得到其字符串m
i
与其他客户端P
j
的字符串m
j
进行异或运算后并随机排序的结果,即
[0018]S3.2:每个客户端P
i
统计解密结果中“1”的个数,判断其字符串m
i
和客户端P
j
的字符串m
j
是否相等。
[0019]本专利技术还提供了用于上述方法的一种基于同态加密的字符串序列比对系统,包括互相连接的编码模块、加解密模块、计算模块和随机置换模块;
[0020]所述编码模块用于客户端上传字符串,并进行独热编码操作;
[0021]所述加解密模块用于客户端对其独热编码后的字符串进行加密操作,以及对服务器经过计算返回的密文进行解密操作;
[0022]所述计算模块用于服务器对客户端上传的加密的独热编码串进行乘法计算操作;
[0023]所述随机置换模块用于服务器随机置换多个密文之间的顺序。
[0024]本专利技术具有以下有益效果:
[0025]1、本专利技术针对特定场景下的字符串比对,提出了一种外包场景下新的字符串安全比对算法,与传统编码方式相比,本专利技术提出采用独热编码的方式对字符串序列进行编码,对独热编码的字符串序列进行异或操作,并根据异或的结果来高效比对字符串,判断两个字符串是否相等,并本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于隐私集合运算的安全文本分类方法,其特征在于,包含以下步骤:S1:文本提供方与模型提供方分别构造各自关键词的字符串组,模型提供方在ML模型中利用已知数据集计算后续利用贝叶斯公式时所需的各项概率;S2:文本提供方与模型提供方利用各自的字符串组执行安全特征提取,最后得到在大小为q的环上的秘密分享值[[y1]]
q
,...,[[y
n
]]
q
,其中若模型提供方的关键词i在文本提供方构造的信息中出现的单字符对应的二进制字符串组A={a1,...,a
m
}中存在,则在秘密分享值向量对应位置的数值y
i
为1,否则为0;S3:对于两种分类,文本提供方与模型提供方安全计算出两类所对应的贝叶斯公式的分子部分,由于每一类待比较的式子分母部分都相同,故省略计算;S4:文本提供方与模型提供方安全比较对应两个类的结果,最终输出分类结果,并对两方公开。2.根据权利要求1所述的一种基于隐私集合运算的安全文本分类方法,其特征在于,所述文本提供方与模型提供方分别构造各自关键词的字符串组,文本提供方构造其信息中出现的单字符对应的二进制字符串组A={a1,...,a
m
},模型提供方构造其在文本分类模型中出现的单字符对应的二进制字符串组B={b1,...,b
n
},其中A,B中的每一项都为一个长度为l的二进制字符串。3.根据权利要求1所述的一种基于隐私集合运算的安全文本分类方法,其特征在于,其特征在于:步骤S1所述计算后续利用贝叶斯公式时所需的各项概率,包括以下子步骤:S1.1:获取已知数据集内容并将其里面的内容解析为一元组,即单字符,其中将字母都转为小写,除字母外的内容全删除;S1.2:对解析的单字符进行处理,包括利用词干提取方式将同义词归类为一个相同的词汇、利用停用词方式过滤掉与分类任务无关的词汇;S1.3:将从已知数据集中的有用信息拆出来的单字符放入一个词汇存储集合,再将从已知数据集中的垃圾信息中拆出来的单字符放入另一个词汇存储集合,...

【专利技术属性】
技术研发人员:张峰石建赵川
申请(专利权)人:杭州后量子密码科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1