CN116204918B - 自然语言处理中的文本相似度保密计算方法及设备 - Google Patents

自然语言处理中的文本相似度保密计算方法及设备 Download PDF

Info

Publication number
CN116204918B
CN116204918B CN202310060099.3A CN202310060099A CN116204918B CN 116204918 B CN116204918 B CN 116204918B CN 202310060099 A CN202310060099 A CN 202310060099A CN 116204918 B CN116204918 B CN 116204918B
Authority
CN
China
Prior art keywords
participant
text
similarity
sequence
natural language
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
Application number
CN202310060099.3A
Other languages
English (en)
Other versions
CN116204918A (zh
Inventor
刘新
罗丹
徐刚
陈威佟
李宝山
赵宇红
谷宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inner Mongolia University of Science and Technology
Original Assignee
Inner Mongolia University of Science and Technology
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Inner Mongolia University of Science and Technology filed Critical Inner Mongolia University of Science and Technology
Priority to CN202310060099.3A priority Critical patent/CN116204918B/zh
Publication of CN116204918A publication Critical patent/CN116204918A/zh
Application granted granted Critical
Publication of CN116204918B publication Critical patent/CN116204918B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)

Abstract

自然语言处理中的文本相似度保密计算方法及设备,涉及计算机与自然语言处理技术领域。本发明为了解决自然语言处理中文本匹配的相似程度,从而进一步高效的计算两段文本中字符串对应位相同个数的问题。本发明针对待进行相似度保密计算的两个文本,假设Alice和Bob各自有一条长度为l的文本序列,Alice和Bob分别将自己的文本序列进行十进制编码得到序列X和Y;Alice和Bob基于半诚实模型或恶意模型保密地计算序列X和序列Y的相似度HMD(X,Y)。本发明适用于文本相似度保密计算。

Description

自然语言处理中的文本相似度保密计算方法及设备
技术领域
本发明涉及计算机与自然语言处理技术领域,具体涉及一种自然语言处理中的文本相似度保密计算方法。
背景技术
文本匹配是自然语言处理中一个核心问题,许多任务都可以被抽象为一个文本匹配任务。例如,复述检测是语义相似的句子间的匹配,信息检索是查询项和文档的匹配,文本蕴含是蕴含前件和蕴含后件的匹配,自动问答是问题与答案的匹配,延申到计算机视觉领域,还可以进行文本与图片、视频的匹配,图片、视频间的匹配,这在搜索引擎中有着很高的应用价值。如何在隐私保护的情况下进行文本匹配,防止攻击者窃取隐私信息,成为了自然语言处理隐私保研究的重要问题。
文本匹配的相似度计算就是计算两个长度相同的字符串X和Y中字符相同的个数,记为Hamming_distance(X,Y)。在两段等长的文本信息中,若有t组对应位置的字符相同,则这两段文本信息的匹配相似度为t。
为了保密计算文本的相似度,可借助安全多方计算来实现。安全多方计算被提出以后,Goldreich、Cramer等研究学者对安全多方计算深入研究,安全多方计算成为了研究热点,其中包括数据挖掘、保密计算应用、保密的计算几何和集合问题、保密的科学计算等。这些方面的研究推动了安全多方计算的发展,切实解决了许多实际问题。
发明内容
本发明是为了解决自然语言处理中文本匹配的相似程度,从而进一步高效的计算两段文本中字符串对应位相同的个数这一问题,在密文搜索中具有重要价值。
自然语言处理中的文本相似度保密计算方法,针对待进行相似度保密计算的两个文本,假设第一参与者和第二参与者各自有一条长度为l的文本序列,第一参与者和第二参与者分别将自己的文本序列进行十进制编码得到序列X=(a1,a2,…,al)和Y=(b1,b2,…,bl);第一参与者和第二参与者保密地计算序列X和序列Y的相似度HMD(X,Y)的过程包括以下步骤:
在准备阶段,利用NTRU加密算法,第一参与者选择多项式f(x)、g(x),然后计算f(x)的两个模逆fp(x)、fq(x),其中f(x)和fp(x)作为私钥;第一参与者计算公钥多项式h(x),并将h(x)发送给第二参与者;
然后进行文本相似度保密计算,具体包括以下步骤:
(1)第一参与者在多项式环RP上随机选择l个多项式rai(x),利用随机多项式rai(x)和公钥h(x)逐项加密序列X上的每一个元素ai,得到长度为l的加密向量E(X)=(E(a1),E(a2),…,E(al)),加密过程如下:
E(ai)=rai(x)*h(x)+ai(mod q),
其中i=1,2,…,l;
第一参与者将E(X)发送给第二参与者;
(2)第二参与者收到E(X)后,执行以下步骤:
(2.1)首先在多项式环RP上随机选择l个多项式rbi(x),利用随机多项式rbi(x)和第一参与者的公钥h(x)逐项加密序列Y上的每一个元素的相反数,得到长度为l的加密向量E(-Y)=(E(-b1),E(-b2),…,E(-bl)),加密过程如下:
E(-bi)=rbi(x)*h(x)-bi(mod q);
其中i=1,2,…,l;
(2.2)将两个向量E(X)和E(-Y)相加,得到长度为l的加密向量E(X)+E(-Y)=(E(a1)+E(-b1),E(a2)+E(-b2),…,E(al)+E(-bl));
(2.3)随机选取集合{1,2,…,l}中的随机置乱排序额T,对E(X)+E(-Y)进行置换得到T(E(X)+E(-Y)),其中:
T(E(X)+E(-Y))=(E(aT(1))+E(-bT(1)),E(aT(2))+E(-bT(2)),…,E(aT(l))+E(-bT(l)))
其中,aT(i)为ai随机置乱后的排序,bT(i)为bi随机置乱后的排序;
然后将T(E(X)+E(-Y))发送给第一参与者;
(3)第一参与者得到T(E(X)+E(-Y))后,利用自己的私钥f(x),依次解密T(E(X)+E(-Y))中的每一个元素,得到:
T(X-Y)=(aT(1)-bT(1),aT(2)-bT(2),…,aT(5l)-bT(5l))
然后将T(X-Y)中所有为“0”的元素个数即为HMD(X,Y),将计算结果HMD(X,Y)告诉第二参与者。
进一步地,第一参与者计算的公钥多项式h(x)=p·fq(x)*g(x)(mod q),其中,p、q为两个大素数,且q>>p,mod表示求余函数。
进一步地,将文本序列进行十进制编码时按照如下编码方式进行编码:
针对从a至z的26个英文字母,分别对应编码为十进制数1至26;空格对应编码为十进制数27。
自然语言处理中的文本相似度保密计算方法,针对待进行相似度保密计算的两个文本,假设第一参与者和第二参与者各自有一条长度为l的文本序列,第一参与者和第二参与者分别将自己的文本序列进行十进制编码得到序列X=(a1,a2,…,al)和Y=(b1,b2,…,bl);第一参与者和第二参与者保密地计算序列X和序列Y的相似度HMD(X,Y)的过程包括以下步骤:
在准备阶段,利用NTRU加密算法,第一参与者选择多项式f1(x)、g1(x),然后计算f1(x)的两个模逆结果值f1p(x)、f1q(x),其中f1(x)、f1p(x)作为私钥;第一参与者计算公钥多项式h1(x),并将h1(x)发送给第二参与者;
第二参与者选择多项式f2(x)、g2(x),然后计算f2(x)的模逆值f2p(x)、f2q(x),其中f2(x)、f2p(x)作为私钥;第二参与者计算公钥多项式h2(x),并将h2(x)发送给第一参与者;
由于以下对a1与b1,...,al与bl的计算相同,以a1与b1的计算进行描述。在以下每一步中对a1与b1进行计算的同时,对a2与b2,...,al与bl的计算同时进行;
然后进行文本相似度保密计算,具体包括以下步骤:
(1)对于a1与b1,第一参与者和第二参与者分别选择m个随机多项式rai(x),rbi(x)i=1,…,m,并计算分别公布/>
(2)第一参与者从m组中任意选取m/2组/>要求第二参与者公布对应的rbi(x)-b1/h2(x),第一参与者利用第二参与者的公钥h2(x)验证如果验证通过则执行下一步,否则停止;
(3)同样,第二参与者从m组中任意选取m/2组/>要求第一参与者公布对应的rai(x)+a1/h1(x),第二参与者利用第一参与者的公钥h1(x)验证如果验证通过则执行下一步,否则停止;
(4)第一参与者和第二参与者分别从剩下的和/>中随机选择一个/>和/>并执行以下操作:
第一参与者使用第二参与者的公钥h2(x)计算c′a1(x)=r′a1(x)*h2(x)+a1(modq);
然后计算记为M1
第二参与者使用第一参与者的公钥h1(x)计算c′b1(x)=r′b1(x)*h1(x)-b1(modq);
然后计算记为N1
(5)对于a2与b2,...,al与bl,第一参与者和第二参与者同时执行步骤(1)-步骤(4);最终第一参与者获得序列S=(M1,M2,…,Ml),第二参与者获得序列T=(N1,N2,…,Nl);
(6)第一参与者和第二参与者分别随机选取集合{1,2,…,l}中的秘密置换P1和P2;第一参与者使用秘密置换P1对序列S中的元素进行置乱,得到P1(S),并将P1(S)发送给第二参与者;第二参与者使用秘密置换P2对序列T中的元素进行的置乱,得到P2(T),并将P2(T)发送给第一参与者;
(7)第一参与者得到P2(T)后,利用自己的私钥f1(x),f1p(x),依次解密P2(T)中的每一个元素,得到序列:
其中/>分别为第二参与者将ai、bi随机置乱后的排序
然后将P2(X-Y)中所有“0”元素个数即为HMD(X,Y)的值,记为Sum1
第二参与者得到P1(S)后,利用自己的私钥f2(x),f2p(x),依次解密P1(S)中的每一个元素,得到序列:
其中/>分别为第一参与者将ai、bi随机置乱后的排序。
然后将P1(X-Y)中所有“0”元素个数即为HMD(X,Y)的值,记为Sum2
(8)若Sum1=Sum2,则说明第一参与者和第二参与者均得到正确结果;若不相等,则说明其中一方实施了恶意行为。
进一步地,所述准备阶段中,第一参与者计算的公钥多项式h1(x)=p·f1q(x)*g1(x)(mod q),其中,p、q为两个大素数,且q>>p,mod表示求余函数。
进一步地,所述准备阶段中,第二参与者计算的公钥多项式h2(x)=p·f2q(x)*g2(x)(mod q)。
有益效果:
本发明对文本信息序列进行十进制编码,然后基于NTRU加密算法,首先设计了一个半诚实模型下保密计算文本序列相似度的安全协议,并对该协议进行了正确性和安全性分析。针对半诚实协议中参与者可能实施的恶意行为,本发明进一步设计了恶意模型下的保密比对文本信息协议,进行了正确性分析并运用理想-实际范例方法对恶意模型下协议的安全性进行了证明。该协议运用文本序列编码的十进制编码进行计算,通过比较解密结果中“0”元素的个数来得到两段文本序列的相同个数。本协议可以阻止或发现恶意行为,并且本发明分析了恶意敌手攻击成功的概率。本发明具有以下特点:
(1)设计了一个文本信息序列十进制编码规则,将文本的明文信息转换成由十进制数组成的序列,节约了存储空间和提高了计算效率。
(2)设计了半诚实模型下以NTRU加密系统为加密工具的保密计算文本序列相似度协议,并证明了协议的安全性。
(3)针对半诚实协议中参与者可能实施的恶意行为,利用分割-选择的思想,设计了恶意模型下的保密计算文本序列相似度协议,并运用理想-实际范例方法证明了协议的安全性。
附图说明
图1为半诚实模型下保密计算文本相似度流程图;
图2为恶意模型下保密计算文本相似度流程图。
具体实施方式
具体实施方式一:
本实施方式为一种自然语言处理中的文本保密匹配方法。在对本发明的匹配方法进行具体说明之前,首先对本发明中恶意模型下安全性定义进行说明:
半诚实模型是安全多方计算一个重要模型,参与者会完全遵循协议的每一步,不会提供虚假信息,不会中途停止协议,不会与其他参与者联合攻击协议,但他们会记录协议中的公开信息,以便尝试破解协议从而获得其他参与者的信息。
恶意模型是一种更符合实际安全多方计算模型,要证明协议在恶意模型下是安全的,必须证明它满足恶意模型下的安全性定义,即借助可信第三方的理想协议:第一参与者和第二参与者拥有数据x和y,他们借助可信第三方TTP(Trusted Third Party,TTP)计算函数f(x,y)=(f1(x,y),f2(x,y))。他们分别得到f1(x,y)和f2(x,y)而不泄漏x和y,理想协议如下所述:
将输入信息发给TTP:诚实的参与者会提供给TTP正确的数据x或y,恶意的参与者可能不执行协议或者提供给TTP虚假的数据x′或y′。
TTP将结果数据发给第一参与者:TTP收到数据(x,y)后独立计算f(x,y),并将f1(x,y)发送给第一参与者,否则给第一参与者发送一个特殊符号⊥表示协议终止。
TTP将结果数据发给第二参与者:如果第一参与者为恶意参与者,在第二步收到数据f1(x,y)后终止协议,这种情况下TTP给第二参与者发送一个特殊符号⊥,否则将f2(x,y)发送给第二参与者。
因为参与者只能从TTP获得数据fi(x,y),无法得到其他任何信息,所以理想协议是最安全的协议。如果一个实际协议能够与理想协议有相同的安全性,那么这个实际协议是安全的。
设F:{0,1}*×{0,1}*→{0,1}*×{0,1}*是一个概率多项式时间函数,F1(x,y)、F2(x,y)表示分别F(x,y)的第一个、第二个元素。设是表示理想协议中参与者策略的一对概率多项式时间算法。如果在执行协议过程中至少有一个Bi(i∈{1,2})对于所有的u,z,r,v都有Bi(u,z,r)=u,Bi(u,z,r,v)=v,其中u是Bi的输入,z是其辅助输入,r是其选择的随机数,v是从可信的第三者得到的局部输出Fi(),那么这样的/>是可接受的。在理想模型下参与者拥有辅助信息z并以策略/>联合计算F(x,y)的过程为定义为敌手均匀选择一个随机数r,令
其中γ(x,y,z,r)定义如下:
如果第一参与者是诚实的,那么有
γ(x,y,z,r)=(f1(x,y′),B2(y,z,r,f2(x,y′))),
其中y′=B2(y,z,r)。
如果第二参与者是诚实的,
在两种情况下x′=B1(x,z,r)。
设Π是计算F的一个双方协议。是表示实际模型中参与者策略的两个概率多项式时间算法。如果在执行协议过程中至少有一个Ai(i∈{1,2})与Π所规定的策略一致,那么/>是关于∏可接受的。特别地,这个Ai忽略其辅助输入。当输入是(x,y),其辅助输入为z,以策略/>执行实际模型中的协议Π的过程记为REALΠ,A(z)(x,y),定义为A1(x,z)和A2(y,z)之间交互产生的输出对。
定义恶意模型下安全性:
如果在实际协议中可以找到一个可接受的策略对在理想模型下都存在一个可接受的策略对/>使得
那么协议∏安全计算F,其中,x,y,z∈{0,1}*使得|x|=|y|并且|z|=poly(|x|)。
需要注意的是:恶意模型下的安全性定义,蕴含着在两方参与计算的情况下,至少有一方是诚实的才能保证协议是可行的,如果两方都是恶意的,是不可能设计出安全计算协议的。
本实施方式所述的一种自然语言处理中的文本保密匹配方法包括以下步骤:
步骤一、设计文本序列的十进制编码:
针对不同明文采用不同的十进制编码方式,能有效减少编码后明文的长度,本发明将文本中的26个英文字母和空格转变为十进制数,编码如表1所示。
表1字母转化十进制列表
步骤二、在半诚实模型下保密计算文本序列相似度(半诚实模型协议):
假设第一参与者和第二参与者各自有一条长度为l的文本序列,为了保密计算两文本的匹配程度,第一参与者和第二参与者分别将自己的文本序列进行十进制编码得到序列X=(a1,a2,…,al)和Y=(b1,b2,…,bl)。第一参与者和第二参与者保密地计算序列X和序列Y的相似度,相似度用汉明距离HMD(X,Y)表示,如图1所示,具体协议如下:
正确性和安全性分析:
在半诚实模型下,第一参与者和第二参与者严格遵循协议,因此第一参与者计算出的结果是正确的。
(1)T(E(X)+E(-Y))中“0”元素的个数与E(X)+E(-Y)中0元素的个数相同。由于在计算得到加密向量E(X)+E(-Y)的过程中,对序列X和-Y的加密解密都是逐项进行的,因此“加解密”和“置换”的顺序可以交换,而T是集合{1,2,…,l}中随机选取的秘密置换,则T(E(X)+E(-Y))中也含相同的“0”元素个数。
(2)第二参与者无法获得第一参与者的私钥f(x)、fp(x)和序列X。第一参与者发送给第二参与者的数据有公钥h(x)、加密向量E(X),由于NTRU密码体制的“格中最短向量问题(SVP)”,第二参与者无法从已知的h(x)、E(X),计算出私钥f(x)、fp(x),随机多项式rai(x)和序列X。
(3)第一参与者无法获得第二参与者的序列Y和随机多项式rbi(x)。第二参与者发送给第一参与者的数据为置换后的加密向量T(E(X)+E(-Y)),由于加密向量顺序被置换,所以第一参与者无法判定解密后的向量X-Y中每一个元素的位置,即无法计算出第二参与者的序列Y。
在本协议中,第一参与者拥有私钥进行解密,有可能不告诉第二参与者正确的结果,或直接终止协议,这对于第二参与者来说是不公平的,因此需要考虑参与者可能实施恶意行为的情况,设计恶意模型下的保密计算文本相似度是必要的(具体见具体实施方式四)。
具体实施方式二:
本实施方式为一种存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现具体实施方式一所述的一种自然语言处理中的文本相似度保密计算方法。
应当理解为本实施方式所述的存储介质包括但不限于磁存储介质和光存储介质;所述磁存储介质包括但不限于RAM、ROM,以及其他硬盘、U盘等存储介质。
具体实施方式三:
本实施方式为一种自然语言处理中的文本相似度保密计算设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现具体实施方式一所述的一种自然语言处理中的文本相似度保密计算方法。
应当理解为本实施方式所述的设备包括但不限于包括处理器和存储器的设备,还可以包括其他具有信息采集、信息交互、控制功能的单元或模块所对应的设备,例如所述设备还可以包括信号采集装置等。所述设备包括但不限于PC机、工作站、移动设备等。
具体实施方式四:
作为改进方案,对具体实施方式一的步骤二进行改进,将步骤二替换为如下方案:
步骤二、设计恶意模型下保密计算文本匹配协议;
解决思路:设计恶意模型下的安全多方计算协议需要分析恶意参与者会如何实施恶意行为,针对这些恶意攻击行为设计相应的措施,从而阻止或发现恶意行为。
首先明确有些恶意行为在理想协议中无法阻止,在实际协议中同样也无法阻止,包括:(1)参与者拒绝参与协议;(2)参与者提供虚假的输入;(3)中途停止协议。
通过分析协议1,参与者可能实施的恶意行为包括:
参与者有一方拥有公私钥,而另一方只能被动等待结果,可能存在持有公私钥的一方告诉另一方错误结果的行为。所以解决思路是需要双方都具有公私钥,最终可以双方各自计算得到正确结果。
在协议1的第(1)步和(2)步中,第一参与者或第二参与者提供虚假的密文,解决思路是利用分割-选择方法来验证密文的正确性,但依然可能存在欺骗,但欺骗成功的概率随着发送数量的增加而趋近于零,4.3小节分析欺骗成功的概率。
在协议1最后一步,第一参与者可能告知第二参与者错误的结果,使得第二参与者无法得到正确的结果。解决思路是在协议中第一参与者和第二参与者分别解密计算结果来得到两段文本序列的相似度。
恶意模型协议
假设第一参与者和第二参与者各自有一条长度为l的文本序列,第一参与者和第二参与者分别将自己的文本序列进行十进制编码得到序列X=(a1,a2,…,al)和Y=(b1,b2,…,bl)。第一参与者和第二参与者在恶意模型下保密地计算序列X和序列Y的相似度HMD(X,Y),如图2所示,具体协议如下:
/>
正确性分析:
在协议2中,由于第一参与者和第二参与者双方过程对称,所以只需要分析一方即可。
(1)协议中(1)步,第一参与者公布但公布的信息是加密的,第二参与者无法获得任何有价值的信息。
(2)协议中(2)-(4)步,运用分割-选择方法验证参与双方是否存在恶意行为。
(3)在协议的第(6)步中第一参与者使用秘密置换P1对序列S中的元素进行置换,得到P1(S),P1(S)中“0”元素的个数与S中“0”元素的个数相同。由于在计算得到序列S的过程中,对序列X和Y的加密解密都是逐项进行的,因此“加解密”和“置换”的顺序可以交换,而P1是集合{1,2,…,l}中随机选取的秘密置换,则P1(S)中也含相同的“0”元素个数。
(4)在协议的第(7)步中,第一参与者需要依次解密P2(T)中的每一个元素,若第二参与者在第协议的第(4)步未按规定使用第一参与者的公钥h1(x)进行加密bi,那么第(7)步中第一参与者将无法解密Ni,第一参与者即可发现第二参与者的恶意行为。
(5)在协议第(6)和(7)步,双方交换密文自行解密,避免了结果由一方告知另一方的情况,具有公平性。
(6)在协议中双方唯一可以欺骗成功的行为就是第(1)步提供虚假的密文,在分割-选择时通过了验证,而对方在第(4)步中刚好又选中了错误的加密数据,这样对方就无法得到正确的结论,但欺骗方也无法通过提供错误的密文来得到对方的输入,也无法提前得到输出结果。下面分析欺骗成功的概率:
假设第一参与者要进行欺骗,通过分析如果使用上述方法进行欺骗,那么最优的选择就是在m组中只有一组错误数据,此时欺骗成功概率为1/m。若有n组不符合要求(n<m/2),则欺骗成功概率为/>
如果m的值越大,则欺骗成功概率会趋近于零。第二参与者可能欺骗成功的概率与第一参与者欺骗成功的概率相同,因此协议是安全的。
具体实施方式五:
本实施方式为一种存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现具体实施方式四所述的一种自然语言处理中的文本相似度保密计算方法。
应当理解为本实施方式所述的存储介质包括但不限于磁存储介质和光存储介质;所述磁存储介质包括但不限于RAM、ROM,以及其他硬盘、U盘等存储介质。
具体实施方式六:
本实施方式为一种自然语言处理中的文本相似度保密计算设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现具体实施方式四所述的一种自然语言处理中的文本相似度保密计算方法。
应当理解为本实施方式所述的设备包括但不限于包括处理器和存储器的设备,还可以包括其他具有信息采集、信息交互、控制功能的单元或模块所对应的设备,例如所述设备还可以包括信号采集装置等。所述设备包括但不限于PC机、工作站、移动设备等。
本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (5)

1.自然语言处理中的文本相似度保密计算方法,其特征在于:针对待进行相似度保密计算的两个文本,在半诚实模型下保密计算文本序列相似度:
假设第一参与者和第二参与者各自有一条长度为l的文本序列,为了保密计算两文本的匹配程度,第一参与者和第二参与者分别将自己的文本序列进行十进制编码得到序列X=(a1,a2,…,al)和Y=(b1,b2,…,bl);第一参与者和第二参与者保密地计算序列X和序列Y的相似度,相似度用汉明距离HMD(X,Y)表示,具体协议如下:
输入:第一参与者的序列X=(a1,a2,…,al),第二参与者的Y=(b1,b2,…,bl);
输出:HMD(X,Y);
准备阶段:利用NTRU加密算法,第一参与者选择多项式f(x)、g(x),然后计算f(x)的两个模逆fp(x)、fq(x),其中f(x)和fp(x)作为私钥;第一参与者计算公钥多项式h(x)=p·fq(x)*g(x)(mod q),并将h(x)发送给第二参与者;
其中,p、q为两个大素数,且q>>p,mod表示求余函数;
然后进行文本相似度保密计算,具体包括以下步骤:
(1)第一参与者在多项式环RP上随机选择l个多项式rai(x)(i=1,2,…,l),利用随机多项式rai(x)和公钥h(x)逐项加密序列X上的每一个元素ai,得到长度为l的加密向量E(X)=(E(a1),E(a2),…,E(al)),加密过程如下:E(ai)=rai(x)*h(x)+ai(mod q),其中i=1,2,…,l,第一参与者将E(X)发送给第二参与者;
(2)第二参与者收到E(X)后,执行以下步骤:
(2.1)首先在多项式环RP上随机选择l个多项式rbi(x)(i=1,2,…,l),利用随机多项式rbi(x)和第一参与者的公钥h(x)逐项加密序列Y上的每一个元素的相反数,得到长度为l的加密向量E(-Y)=(E(-b1),E(-b2),…,E(-bl)),加密过程如下:
E(-bi)=rbi(x)*h(x)-bi(mod q),其中i=1,2,…,l;
(2.2)将两个向量E(X)和E(-Y)相加,得到长度为l的加密向量E(X)+E(-Y)=(E(a1)+E(-b1),E(a2)+E(-b2),…,E(al)+E(-bl));
(2.3)随机选取集合{1,2,…,l}中的随机置乱排序T,对E(X)+E(-Y)进行置换得到T(E(X)+E(-Y)),其中:
T(E(X)+E(-Y))=(E(aT(1))+E(-bT(1)),E(aT(2))+E(-bT(2)),…,E(aT(l))+E(-bT(l))),其中,aT(i)为ai随机置乱后的排序,bT(i)为bi随机置乱后的排序;然后将T(E(X)+E(-Y))发送给第一参与者;
(3)第一参与者得到T(E(X)+E(-Y))后,利用自己的私钥f(x),依次解密T(E(X)+E(-Y))中的每一个元素,得到:
T(X-Y)=(aT(1)-bT(1),aT(2)-bT(2),…,aT(5l)-bT(5l)),
然后将T(X-Y)中所有为“0”的元素个数即为HMD(X,Y),将计算结果HMD(X,Y)告诉第二参与者。
2.根据权利要求1所述的自然语言处理中的文本相似度保密计算方法,其特征在于:所述准备阶段中,第一参与者计算的公钥多项式h(x)=p·fq(x)*g(x)(mod q),其中,p、q为两个大素数,且q>>p,mod表示求余函数。
3.根据权利要求1或2所述的自然语言处理中的文本相似度保密计算方法,其特征在于:将文本序列进行十进制编码时按照如下编码方式进行编码:
针对从a至z的26个英文字母,分别对应编码为十进制数1至26;空格对应编码为十进制数27。
4.一种存储介质,其特征在于:所述存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现权利要求1至3之一所述的自然语言处理中的文本相似度保密计算方法。
5.一种自然语言处理中的文本相似度保密计算设备,其特征在于:所述设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由处理器加载并执行以实现权利要求1至3之一所述的自然语言处理中的文本相似度保密计算方法。
CN202310060099.3A 2023-01-17 2023-01-17 自然语言处理中的文本相似度保密计算方法及设备 Active CN116204918B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310060099.3A CN116204918B (zh) 2023-01-17 2023-01-17 自然语言处理中的文本相似度保密计算方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310060099.3A CN116204918B (zh) 2023-01-17 2023-01-17 自然语言处理中的文本相似度保密计算方法及设备

Publications (2)

Publication Number Publication Date
CN116204918A CN116204918A (zh) 2023-06-02
CN116204918B true CN116204918B (zh) 2024-03-26

Family

ID=86516623

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310060099.3A Active CN116204918B (zh) 2023-01-17 2023-01-17 自然语言处理中的文本相似度保密计算方法及设备

Country Status (1)

Country Link
CN (1) CN116204918B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138923A (zh) * 2015-08-11 2015-12-09 苏州大学 一种保护隐私的时间序列相似度计算方法
CN111310436A (zh) * 2020-02-11 2020-06-19 腾讯科技(深圳)有限公司 基于人工智能的文本处理方法、装置及电子设备
CN112380833A (zh) * 2020-11-20 2021-02-19 深圳得理科技有限公司 一种逐句段对比的相似文本查找方法及装置
CN113239666A (zh) * 2021-05-13 2021-08-10 深圳市智灵时代科技有限公司 一种文本相似度计算方法及系统
CN115186647A (zh) * 2022-06-09 2022-10-14 财付通支付科技有限公司 文本相似度的检测方法、装置、电子设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105138923A (zh) * 2015-08-11 2015-12-09 苏州大学 一种保护隐私的时间序列相似度计算方法
CN111310436A (zh) * 2020-02-11 2020-06-19 腾讯科技(深圳)有限公司 基于人工智能的文本处理方法、装置及电子设备
CN112380833A (zh) * 2020-11-20 2021-02-19 深圳得理科技有限公司 一种逐句段对比的相似文本查找方法及装置
CN113239666A (zh) * 2021-05-13 2021-08-10 深圳市智灵时代科技有限公司 一种文本相似度计算方法及系统
CN115186647A (zh) * 2022-06-09 2022-10-14 财付通支付科技有限公司 文本相似度的检测方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
面向云存储的基于全同态密码技术的文档相似度计算方法;江小平;张巍;李成华;周航;孙婧;;计算机工程与科学;20171015(10);全文 *

Also Published As

Publication number Publication date
CN116204918A (zh) 2023-06-02

Similar Documents

Publication Publication Date Title
Maurer Authentication theory and hypothesis testing
CN108463967B (zh) 一种用于预计算及交易性混合的密码装置
US8712046B2 (en) Cryptographic key split combiner
US20220327548A1 (en) System and method for authentication with out-of-band user interaction
AU2018352026B2 (en) System and method for generating and depositing keys for multi-point authentication
Mihara Quantum identification schemes with entanglements
US20060195402A1 (en) Secure data transmission using undiscoverable or black data
CN109274503A (zh) 分布式协同签名方法及分布式协同签名装置、软盾系统
Omolara et al. A deception model robust to eavesdropping over communication for social network systems
Alfred et al. Handbook of applied cryptography
Selva Mary et al. Self-authentication model to prevent cheating issues in grayscale visual secret sharing schemes
Agrawal et al. Game-set-MATCH: Using mobile devices for seamless external-facing biometric matching
US20060129812A1 (en) Authentication for admitting parties into a network
Yang [Retracted] Application of Hybrid Encryption Algorithm in Hardware Encryption Interface Card
CN110493006B (zh) 基于非对称密钥池和序列号的抗量子计算二维码认证方法及系统
CN116204918B (zh) 自然语言处理中的文本相似度保密计算方法及设备
CN110266483A (zh) 基于非对称密钥池对和qkd的量子通信服务站密钥协商方法、系统、设备
Abiega-L’Eglisse et al. A new fuzzy vault based biometric system robust to brute-force attack
Khankari et al. One time password generation for multifactor authentication using graphical password
AU3620400A (en) Voice and data encryption method using a cryptographic key split combiner
Lee et al. Preserving user‐participation for insecure network communications with CAPTCHA and visual secret sharing technique
CN113330712A (zh) 采用基于排列群的加密技术的加密系统及方法
Cheung et al. Secure multiparty computation between distrusted networks terminals
Abd Elminaam et al. Secure data storage in the cloud by using DNA and chaos cryptography
EP4231583A1 (en) Methods and arrangements for establishing digital identity

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