[发明专利]一种安全近似模式匹配方法、系统及电子设备有效
申请号: | 202011561764.X | 申请日: | 2020-12-25 |
公开(公告)号: | CN112732776B | 公开(公告)日: | 2022-08-26 |
发明(设计)人: | 魏晓超;徐琳;王皓 | 申请(专利权)人: | 山东师范大学 |
主分类号: | G06F16/2458 | 分类号: | G06F16/2458 |
代理公司: | 济南圣达知识产权代理有限公司 37221 | 代理人: | 祖之强 |
地址: | 250014 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 安全 近似 模式 匹配 方法 系统 电子设备 | ||
1.一种安全近似模式匹配方法,其特征在于:应用于持有模式字符串、文本字符串的长度以及阈值的第一终端,包括以下步骤:
第一终端与持有文本字符串、模式字符串长度及阈值的第二终端执行安全近似模式匹配算法,如果文本字符串的某个子字符串和模式字符串之间的汉明距离小于阈值,第一终端输出此子字符串的在文本字符串中的位置;
安全近似模式匹配算法,包括:
第二终端随机选择m对随机数,分别为第二终端根据文本字符串t的每一个长度为m的子字符串选择相应的随机数,得到文本集合其中i=1,…,n-m+1;
对于每一个j=1,…,m,第一终端和第二终端执行一个2选1茫然传输算法,第二终端的输入为第一终端的输入为pj,算法执行结束后,第一终端得到模式集合
对于每一个i=1,…,n-m+1,第一终端和第二终端执行布尔类型阈值隐私集合求交算法,其中第二终端的输入为Ci,m,m-τ,第一终端的输入为S,m,m-τ,算法执行结束后,第一终端得到输出集合bi∈{0,1}n-m+1;
如果bi=1,第一终端输出i;
布尔类型阈值隐私集合求交算法,包括:
第二终端公开加法同态加密公钥pk1,然后第一终端和第二终端执行私有集合交集基数算法,第一终端得到Enc(pk1,|C∩S|);
第一终端选择随机数r∈{0,…,p-1},进行加法同态计算得到Enc(pk1,|C∩S|+r)=Enc(pk1,|C∩S|)·Enc(pk1,r);
第一终端选择随机数r′∈{0,…,p-1}和R∈{0,…,p-1},准备一个根为r+t,r+t+1,…,r+min(|C|,|S|) 的多项式p(·),然后计算多项式p′(·)=r′·p(·)+R,多项式p′(·)的系数为a0,a1,…,amin(|C|,|S|) +1;
第一终端用加法同态加密公钥pk2对多项式p′(·)的系数进行加密,得到加密后的系数分别为Enc(pk2,a0),Enc(pk2,a1),…,Enc(pk2,amin(|C|,|S|)+1);
第一终端将多项式p′(·)的加密系数以及Enc(pk1,|C∩S|+r)发送给第二终端;
第二终端解密收到的密文得到|C∩S|+r,然后用点|C∩S|+r茫然计算多项式p′(·),将得到的结果记为Enc(pk2,R′),得到:
第二终端选择随机数r∈{0,…,p-1},进行加法同态计算得到Enc(pk1,R′+r)=Enc(pk1,R′)·Enc(pk1,r),然后发送给第一终端请求其解密;
第一终端解密Enc(pk1,R′+r)并将结果R′+r发送给第二终端,第二终端经过计算得到R′;
第一终端和第二终端执行隐私相等性测试算法,其中第二终端输入R′,第一终端输入R,算法执行结束后,第一终端输出0或1;
其中,m为模式字符串长度;n为文本字符串长度;τ为安全近似模式匹配算法中给定的阈值;C为第一终端持有的集合;S为第二终端持有的集合;设安全参数为λ,设置全局参数p,p为一个素数,其二进制长度|p|λ;|C|为集合C的元素个数;|S|为集合S的元素个数;t为布尔类型阈值隐私集合求交算法中给定的阈值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东师范大学,未经山东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011561764.X/1.html,转载请声明来源钻瓜专利网。