一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于区块链和同态加密的隐私保护推荐方法及系统与流程

2022-02-20 16:06:14 来源:中国专利 TAG:


1.本发明涉及推荐领域,特别涉及一种基于区块链和同态加密的隐私保护推荐方法及系统。


背景技术:

2.推荐系统被广泛应用于预测用户的兴趣,为用户提供有针对性的产品,在信息超载问题普遍存在的大数据时代为用户提供了有效的便利。不幸的是,产生更准确的预测需要大量与用户隐私密切相关的数据。在这种情况下,收集和传输这些数据的通信成本很高;对这些数据进行处理和分析,很有可能会危及用户的隐私。
3.目前,许多实现隐私保护的方法都是依赖于集中式框架。为此,用户的数据仍然需要收集并存储在中央服务器上。但是,由于中心服务器的存在,使得数据的安全性无法保证,中心服务器还容易受到诸如单点故障和ddos攻击等网络攻击。
4.因此,亟需一种能够减轻中央数据存储造成的隐私泄露风险和对数据分析处理时造成的用户隐私问题且能够根据用户的兴趣爱好进行个性化推荐的推荐系统和推荐方法。


技术实现要素:

5.为了降低由中央数据存储引起的隐私泄露风险,本发明提出一种基于区块链和同态加密的隐私保护推荐方法及系统,所述方法具体包括以下步骤:
6.从区块链的目标区块中获取lsh函数,根据lsh函数对区块链用户数据进行聚类分析,得到相应的编号;
7.区块链用户向ipfs上传本地数据时调用智能合约对本地数据进行同态加密,并接收ipfs根据设定的哈希算法对加密数据进行计算而生成的哈希值;
8.将区块链用户的编号、加密数据对应的哈希值上传至区块链和推荐计算中心;
9.推荐计算中心基于用户的相同编号或邻近编号的用户根据哈希值在ipfs获取对应的加密数据进行推荐计算,推荐计算中心将计算结果上传到ipfs,接收ipfs返回的对应哈希值并将哈希值发送给推荐用户;
10.当用户进行推荐时,用户根据推荐计算中心发送的哈希值在ipfs上获取计算结果,调用智能合约对计算结果进行解密完成推荐。
11.最后,用户将本次与推荐计算中心的交易完成时间,交易内容,交易价格打包上传至区块链。
12.进一步的,处理智能合约的过程包括:
13.当用户上传数据时,触动预置响应条件,执行智能合约代码,对本地数据进行同态加密,将加密后的数据上传到ipfs上;
14.当用户进行推荐时,再次触动预置响应条件,执行智能合约代码,对相应数据进行计算并将计算结果解密,用户即可获得推荐结果。
15.进一步的,区块链用户向ipfs上传本地数据时调用智能合约对本地数据进行同态
加密时,每个用户使用相同的公钥和私钥基于同态加密算法对数据进行加密,公钥和私钥存储在智能合约中且不对用户进行公布。
16.本发明还提出一种基于区块链和同态加密的隐私保护推荐系统,包括用户终端、服务器以及智能合约模型,用户终端包括lsh聚类器以及同态加密器,lsh聚类器对数据进行聚类获取聚类编号,同态加密器基于智能合约对数据进行同态加密,用户终端将聚类编号以及加密后的数据发送给服务器;服务器包括星际文件系统,用户终端加密后的数据存储在星际文件系统中,星际文件系统对加密后的数据进行哈希计算并将对应的哈希值返回给用户,同一个用户终端的聚类编号和加密后数据对应的哈希值上传到区块链并发送给推荐计算中心;推荐计算中心基于用户的相同编号或邻近编号的用户根据哈希值在ipfs获取对应的加密数据进行推荐计算并将计算结果上传到ipfs上;智能合约模型根据推荐计算中心返回给用户终端的哈希值,从分布式存储器中选择数据并根据智能合约解密后推荐给当前用户。
17.进一步的,所述智能合约模型包括两个条件响应器、合约状态以及合约值,一个条件响应器根据用户终端是否上传数据确定是否响应,即当用户上传数据时响应,否则不响应;另一个条件响应器根据服务器是否准备推荐进行响应,即当服务器准备推荐时进行响应;合约状态用于判断当前情景是否满足智能合约的执行条件,合约值记录智能合约的创建和执行。
18.进一步的,合约状态包括用户每隔固定时间周期上传的一个假名和一个时间戳,智能合约根据用户上传的合约状态内容判断是否执行智能合约。
19.进一步的,区块链用户向ipfs上传本地数据时调用智能合约对本地数据进行同态加密时,每个用户使用相同的公钥和私钥基于同态加密算法对数据进行加密,公钥和私钥存储在智能合约中且不对用户进行公布。
20.本发明提出了一个基于区块链和同态加密的隐私保护推荐机制,利用区块链固有的优势,建立一个完全分布式的模型,降低了由中央数据存储引起的隐私泄露风险,拥有了传统的分散或集中推荐系统并没有的固有特性(如稳定性、健壮性和可伸缩性);此外,本发明将ipfs与区块链相结合,和现在很多隐私推荐框架相比,大大提高了通信效率,还引入了lsh和同态加密,以减少计算量并提供强有力的隐私保证。
附图说明
21.图1为本发明一种基于区块链和同态加密的隐私保护推荐模型工作流程图;
22.图2为本发明中智能合约模型示意图图。
具体实施方式
23.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
24.一种基于区块链和同态加密的隐私保护推荐方法,具体包括以下步骤:
25.从区块链的目标区块中获取lsh函数,根据lsh函数对区块链用户数据进行聚类分
析,得到相应的编号;
26.区块链用户向ipfs上传本地数据时调用智能合约对本地数据进行同态加密,并接收ipfs根据设定的哈希算法对加密数据进行计算而生成的哈希值;
27.将区块链用户的编号、加密数据对应的哈希值上传至区块链中;
28.当用户进行推荐时,基于相同编号和邻近编号的区块链用,调用智能合约对用户进行推荐并解密推荐结果。
29.在本实施例中,该推荐方法可应用于信息推荐者通过应用程序或者app等软件向用户的终端推荐相关信息的推荐系统。用户群体作为区块链网络的多个节点,当某个用户需要进行推荐时,可以很方便地从区块链中收集用户群体的用户数据。
30.在进行推荐时,用户终端上的应用程序需要预先收集用户的用户数据,该用户数据可以为用户点击观看某部电影、浏览某个商品等操作行为数据,在获取该用户数据后,本地的应用程序可以对用户数据进行聚类分析,聚类分析所用到的lsh函数可以预先由信息推荐者上传至区块链的目标区块中,在完成聚类分析后,可以得到区块链用户的桶号。
31.在本实施例中,区块链用户可以对用户数据进行预处理,预处理可以是区块链用户数据的评分、收藏、转发等操作。在完成预处理后,就可以得到预处理数据,通过预处理数据可以看出用户的个人喜好,因此,预处理数据会在一定程度上涉及用户的个人隐私信息,需要对预处理数据进行隐私保护。
32.在本实施例中,部署在区块链网络中的智能合约会定时对预处理数据进行加密并将加密后的数据上传到星际文件系统。星际文件系统可以根据设定的哈希算法对加密数据进行计算,应用程序接收计算之后加密数据对应的哈希值。在得到区块链用户的桶号和加密数据对应的哈希值之后,将该桶号和哈希值上传至区块链中和推荐计算中心,推荐计算中心基于用户的相同编号或邻近编号的用户根据哈希值在ipfs获取对应的加密数据进行推荐计算,推荐计算中心将计算结果上传到ipfs,接收ipfs返回的对应哈希值并将哈希值发送给推荐用户,当应用程序需要向目标区块链用户推荐该用户感兴趣的信息时,用户根据推荐计算中心发送的哈希值在ipfs上获取计算结果,调用智能合约对计算结果进行解密完成推荐。
33.实施例1
34.本实施例提出一种基于区块链和同态加密的隐私保护推荐方法具体实施方法,如图1,包括以下步骤:
35.1.从区块链的目标区块中获取lsh函数,根据lsh函数对区块链用户数据进行聚类分析,得到相应的编号;
36.在本实施例中,该推荐方法可应用于信息推荐者通过应用程序或者app等软件向用户的终端推荐相关信息的推荐系统。用户群体作为区块链网络的多个节点,当某个用户需要进行推荐时,可以很方便地从区块链中收集用户群体的用户数据。
37.在进行推荐时,用户终端上的应用程序需要预先收集用户的用户数据,该用户数据可以为用户点击观看某部电影、浏览某个商品等操作行为数据,在获取该用户数据后,本地的应用程序可以对用户数据进行聚类分析,聚类分析所用到的lsh函数可以预先由信息推荐者上传至区块链的目标区块中,在完成聚类分析后,可以得到区块链用户的编号。
38.2.区块链用户向ipfs上传本地数据时调用智能合约对本地数据进行同态加密,并
接收ipfs根据设定的哈希算法对加密数据进行计算而生成的哈希值;
39.在本实施例中,区块链用户可以对用户数据进行预处理,预处理可以是区块链用户数据的评分、收藏、转发等操作。在完成预处理后,就可以得到预处理数据,通过预处理数据可以看出用户的个人喜好,因此,预处理数据会在一定程度上涉及用户的个人隐私信息,需要对预处理数据进行隐私保护。本地的应用程序会执行部署在区块链网络中的智能合约会定时对预处理数据进行加密并将加密后的数据上传到星际文件系统。星际文件系统可以根据设定的哈希算法对加密数据进行计算,应用程序接收计算之后加密数据对应的哈希值。
40.4.将区块链用户的编号、加密数据对应的哈希值上传至区块链和推荐计算中心;
41.在本实施例中,可以将区块链用户的编号、加密数据对应的哈希值以及用户名和当前时间戳上传至区块链从而去确定用户的身份和数据是否最新,推荐计算中心也可以通过用户的编号和加密数据对应的哈希值获取数据并进行计算。
42.5.推荐计算中心基于相同编号和邻近编号的区块链用户或相似哈希值的加密数据进行计算并上传计算结果到ipfs,当用户进行推荐时,用户根据推荐计算中心返回的哈希值获取计算结果,调用智能合约对结果进行解密完成推荐。
43.在本实施例中,推荐计算中心是该区块链网络中负责计算的计算节点,没有调用同态加解密智能合约的权限。
44.在本实施例中,区块链用户向ipfs上传本地数据时调用智能合约对本地数据进行同态加密,每个用户调用的是相同的智能合约同态加密接口对数据进行加密,当用户需要推荐时,也是调用的相同智能合约同态解密接口对推荐结果进行解密,每个用户的公钥和私钥是相同的且不对用户进行公布。
45.图2是智能合约模型图,图中记录了本发明智能合约的原理,当用户上传数据时,触动预置响应条件,执行智能合约代码,对本地数据进行同态加密,将加密后的数据上传到ipfs上;当用户进行推荐时,再次触动预置响应条件,执行智能合约代码,对相应数据进行计算并将计算结果解密,用户即可获得推荐结果。
46.实施例2
47.本发明提出一种一种基于区块链和同态加密的隐私保护推荐系统,包括用户终端、服务器以及智能合约模型,用户终端包括lsh聚类器以及同态加密器,lsh聚类器对数据进行聚类获取聚类编号,同态加密器基于智能合约对数据进行同态加密,用户终端将聚类编号以及加密后的数据发送给服务器;服务器包括星际文件系统,用户终端加密后的数据存储在星际文件系统中,星际文件系统对加密后的数据进行哈希计算并将对应的哈希值返回给用户,同一个用户终端的聚类编号和加密后数据对应的哈希值上传到区块链并发送给推荐计算中心;推荐计算中心基于用户的相同编号或邻近编号的用户根据哈希值在ipfs获取对应的加密数据进行推荐计算并将计算结果上传到ipfs上。智能合约模型根据推荐计算中心返回给用户终端的哈希值,从分布式存储器中选择数据并根据智能合约解密后推荐给当前用户。
48.进一步的,所述智能合约模型包括两个条件响应器、合约状态以及合约值,一个条件响应器根据用户终端是否上传数据确定是否响应,即当用户上传数据时响应,否则不响应;另一个条件响应器根据服务器是否准备推荐进行响应,即当服务器准备推荐时进行响
应;合约状态用于判断当前情景是否满足智能合约的执行条件,合约值记录智能合约的创建和执行。
49.进一步的,合约状态包括用户每隔固定时间周期上传的一个假名和一个时间戳,智能合约根据用户上传的合约状态内容判断是否执行智能合约。
50.进一步的,区块链用户向ipfs上传本地数据时调用智能合约对本地数据进行同态加密时,每个用户使用相同的公钥和私钥基于同态加密算法对数据进行加密,公钥和私钥存储在智能合约中且不对用户进行公布。
51.现有用户数据推荐过程中,一般采用差分隐私技术保护用户信息的隐私,但是差分隐私安全性较低,现有的差分隐私计算过程不能直接替换为安全性较高的同态加密算法。本发明基于区块链以及智能合约的特性,采用同态加密算法保护用户数据推荐过程中的用户隐私,与现有技术相比,本发明采用的方案有更高的安全性,能够在不泄露用户隐私的基础上,根据用户之间的相似性,为用户提供强有力的隐私保证;另一方面本发明与现在很多隐私推荐框架相比,大大提高了通信效率,还引入了计算节点推荐计算中心负责进行推荐计算,大大提高了计算效率。
52.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献