技术新讯 > 电子通信装置的制造及其应用技术 > 精确安全的计算Jaccard系数的方法  >  正文

精确安全的计算Jaccard系数的方法

  • 国知局
  • 2024-12-26 16:08:25

本发明属于信息安全,具体涉及精确安全的计算jaccard系数的方法。

背景技术:

1、jaccard系数是衡量两个集合相似性指标的有效方法,在文本相似性计算、推荐系统和社交网络分析等领域具有重要意义。jaccard系数通过计算两个集合的交集和并集中元素个数的比值来衡量两个集合的相似程度。由于在实际应用中涉及用户的隐私数据,因此要求参与方在计算jaccard系数的过程中除了最终的运算结果不能得到任何其他与各方相关的私有数据,即jaccard系数的安全计算。

2、现有的jaccard系数的安全计算方法首先将安全计算jaccard系数的问题规约到安全计算两个集合交集元素个数的问题上,然后参与双方分别计算一个随机份额,相加后得到两个集合交集元素个数,通过交集元素个数最终计算出jaccard系数,在参与双方计算随机份额的过程中采用了一种近似取值方法来提升方案的效率,同时也引入了系统性误差,导致最终结果的正确性难以保证。

技术实现思路

1、本发明的目的是提供精确安全的计算jaccard系数的方法,解决了现有jaccard系数计算方法存在的安全性和准确性差的问题。

2、本发明所采用的技术方案是,精确安全的计算jaccard系数的方法,参与双方alice和bob分别拥有集合sa与sb,具体按以下步骤实施:

3、步骤1,利用paillier同态加密算法获取公私钥,alice拥有公钥加密方案的私钥,bob了解公钥加密方案的公钥;

4、步骤2,alice和bob根据sa、sb生成各自的频数集合fa、fb,并通过云服务器计算随机数集合ra、rb;

5、步骤3,alice用私钥加密频数集合,并发送所有密文给bob,同时,bob用alice的公钥加密频数集合;

6、步骤4,bob接收到所有的密文后,利用paillier加法同态性质计算一个密文二元组,并将计算结果发送给alice;

7、步骤5,alice接收到密文二元组后,计算一个最大选择向量和最小选择向量,之后计算出|sa∩sb|和|sa∪sb|的密文,最后通过他们比值解密计算出sa、sb的jaccard系数。

8、本发明的特点还在于:

9、步骤1中alice运行paillier同态加密方案的密钥生成算法,获得公私密钥对(pk,sk)。

10、步骤2具体为:alice和bob首先根据生成各自的私有集合

11、

12、alice或bob选择la(lb)个数并且由云服务器计算随机数集合ra,rb。

13、步骤3具体为:alice从集合ra随机选择一个子集,并利用子集中的元素计算随机数rai(i∈{1,2,...,m}),然后利用私钥对频数集合fa进行加密,发送密文给bob;同时bob从集合rb随机选择一个子集,并利用子集中的元素计算随机数rdi(i∈{1,2,...,m}),选择随机数利用alice的公钥和随机数计算密文和

14、步骤4具体为:bob接收到所有的密文后利用集合rb中元素计算三个随

15、”’

16、机数rbi,rti,rdi,计算密文选择二元组

17、

18、并进行置乱操作,最后将二元组和密文发送给alice。步骤5具体为:alice接收到所有的密文后,对于1≤i≤m,alice为

19、得到一个最小选择向量和一个最大选择向量利用计算利用计算最后计算双方的jaccard系数

20、本发明的有益效果是:

21、本发明精确安全的计算jaccard系数的方法,解决了jaccard系数计算的安全性和精确性问题,参与双方的分别拥有私有集合sa、sb,在执行jaccard系数精确且安全计算方法之后实现:安全计算jaccard系数中拥有100%的准确性,解决了现有计算过程中存在的差错问题;在安全计算jaccard系数后,参与双方不泄露任何和各自私有集合相关的信息,即参与双方执行完jaccard系数精确且安全计算方法后除了得到两个集合sa、sb的jaccard系数之外不能得到任何与对方私有集合相关的信息。

技术特征:

1.精确安全的计算jaccard系数的方法,参与双方alice和bob分别拥有集合sa与sb,其特征在于,具体按照以下步骤实施:

2.根据权利要求1所述的精确安全的计算jaccard系数的方法,其特征在于,所述步骤1中alice运行paillier同态加密方案的密钥生成算法,获得公私密钥对(pk,sk)。

3.根据权利要求1所述的精确安全的计算jaccard系数的方法,其特征在于,所述步骤2具体为:alice和bob首先根据生成各自的私有集合

4.根据权利要求1所述的精确安全的计算jaccard系数的方法,其特征在于,所述步骤3具体为:alice从集合ra随机选择一个子集,并利用子集中的元素计算随机数rai(i∈{1,2,...,m}),然后利用私钥对频数集合fa进行加密,发送密文给bob;同时bob从集合rb随机选择一个子集,并利用子集中的元素计算随机数rdi(i∈{1,2,...,m}),选择随机数利用alice的公钥和随机数计算密文和

5.根据权利要求1所述的精确安全的计算jaccard系数的方法,其特征在于,所述步骤4具体为:bob接收到所有的密文后利用集合rb中元素计算三个随机数r'bi,r'ti,r'di,计算密文选择二元组并进行置乱操作,最后将二元组和密文发送给alice。

6.根据权利要求1所述的精确安全的计算jaccard系数的方法,其特征在于,所述步骤5具体为:alice接收到所有的密文后,对于1≤i≤m,alice为得到一个最小选择向量和一个最大选择向量利用计算利用计算最后计算双方的jaccard系数

技术总结本发明公开了精确安全的计算Jaccard系数的方法,具体按照以下步骤:步骤1,利用Paillier同态加密算法获取公私钥,Alice拥有公钥加密方案的私钥,Bob了解公钥加密方案的公钥;步骤2,Alice和Bob根据S<subgt;A</subgt;、S<subgt;B</subgt;生成各自的频数集合F<subgt;A</subgt;、F<subgt;B</subgt;,并通过云服务器计算随机数集合R<subgt;a</subgt;、R<subgt;b</subgt;;步骤3,Alice用私钥加密频数集合,并发送所有密文给Bob,同时,Bob用Alice的公钥加密频数集合;步骤4,Bob接收到所有的密文后,利用Paillier加法同态性质计算一个密文二元组,并将计算结果发送给Alice;步骤5,Alice接收到密文二元组后,计算一个最大选择向量和最小选择向量,计算出|S<subgt;A</subgt;∩S<subgt;B</subgt;|和|S<subgt;A</subgt;∪S<subgt;B</subgt;|的密文,最后通过比值解密计算出S<subgt;A</subgt;、S<subgt;B</subgt;的Jaccard系数。本发明解决了现有Jaccard系数计算方法存在的安全性和准确性差的问题。技术研发人员:巩林明,曹威虎受保护的技术使用者:西安工程大学技术研发日:技术公布日:2024/12/12

本文地址:https://www.jishuxx.com/zhuanli/20241216/348334.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。