基于信任融合与过滤的具有隐私保护的移动应用推荐方法与流程

文档序号:15204055发布日期:2018-08-21 06:40阅读:201来源:国知局

本发明属于用于执行专门程序的装置技术领域,尤其涉及一种基于信任融合与过滤的具有隐私保护的移动应用推荐方法。



背景技术:

目前,业内常用的现有技术是这样的:移动智能手机在当今移动互联网时代扮演着越来越重要的角色,移动手机已经成为人们休闲娱乐、工作生活和获取互联网服务的至关重要的工具。安装在手机上的移动应用是用户使用手机的必备接口,然而,移动应用市场上数量众多、鱼目混杂的应用给用户带来了选择困扰,如何选择安装更好的移动应用不仅影响到了应用本身的市场,同时也会对用户自身的使用体验和信息安全带来重要影响。移动推荐系统是通过信息过滤向移动用户推荐有用的或者用户感兴趣信息的有效工具。将移动推荐系统应用到手机应用领域,移动应用推荐系统可以帮助移动用户发现他们感兴趣、高质量和可信的移动应用。然而,现有的一些移动应用推荐系统绝大部分是基于对用户偏好的提取或者基于移动应用的下载数量,这些都不能够准确的反应用户的个人真实情况,缺少对于用户本身使用移动应用行为的考虑。用户对于移动应用的信任在用户选择和使用移动应用的时候发挥着至关重要的作用。通过对移动应用的用户个体信任值进行融合与过滤,可以将用户喜爱并信任的应用进行推荐,而且推荐的准确性和可靠性也能得到提高。但是,这同时会产生另外一个严重的问题,那就是在对用户的行为数据进行收集和处理的时候,可能会带来用户个人隐私的泄露。“truberepec”的信誉系统,提出了将用户使用移动应用的信任行为进行划分并收集、计算和产生移动应用推荐的相关方法。但是,由于没有考虑到用户数据的过滤,推荐的准确性有待提高。此外,因为信任行为和信任关系可以给系统提供更加丰富的数据来源和用户联系,所以也有一些现有的工作将用户的信任和信任行为研究放在了推荐系统当中,以此来提高数据的丰富性和推荐结果的准确性。然而,这些研究只是利用了系统中用户和用户数据的可信属性来建立推荐关系或提高数据维度,对于系统中不可信的用户提供的数据所带来的内部安全问题却很少得到研究,因而忽视了系统中可能存在的恶意用户和安全的数据处理方法,这也带来了隐私泄露的风险。另一方面,隐私保护作为移动推荐系统中的一项关键问题,得到了很多研究,很多理论和方法已经被提出来。例如,有基于系统架构设计的方法;有基于密码学算法的方法;还有基于策略管理的方法等等。这其中,有一些同态加密算法的数据保护方案,就将同态加密方法应用到推荐系统上,但是由于缺少用户认证和恶意用户检测等安全考虑,该方法也不能直接应用到移动应用的推荐上。

综上所述,现有技术存在的问题是:

(1)移动应用推荐系统方法较少,绝大部分是基于应用的下载量和用户的评分来进行推荐,推荐的准确度和可靠性较差;

(2)用户使用移动应用的信任行为是一种重要的数据来源,用户使用移动应用的信任行为数据体现了用户本身对于应用的喜好和信任,可以用来提高推荐的准确度和可信度。但是现有工作对此研究较少;

(3)对于系统中用户和用户数据的可信性缺乏检测和删除机制,这会在一定程度上降低系统的安全性和可靠性;

(4)大部分现有关于移动应用的推荐方法在为用户计算推荐的时候缺少对用户数据的保护工作,容易造成用户隐私数据的泄露,带来隐私安全问题。

解决上述技术问题的难度和意义:

(1)针对现有移动应用推荐系统多依赖下载量和用户评分进行推荐和由此带来的推荐准确性差的问题,可以通过对用户使用移动应用的信任行为进行研究,通过对用户使用应用的信任行为数据进行融合和过滤,不仅可以提高推荐结果的准确性、个性化和可靠性,还可以进行应用的卸载推荐,为用户带来更加丰富和有意义的体验;

(2)基于用户使用移动应用的信任行为,可以得到用户数据的可信性和用户本身的可信性,再以此来进行不可信数据的过滤以及不可信用户的剔除工作,这对于提高推荐结果准确性,增强系统的可靠性具有巨大的意义;

(3)在收集和使用用户数据计算推荐之前,设计安全的通信协议,使用密码学等方法对用户数据进行安全的处理操作,防止第三方在用户数据上得到关于用户的隐私对于解决隐私泄露问题具有现实可行性。



技术实现要素:

针对现有技术存在的问题,本发明提供了一种基于信任融合与过滤的具有隐私保护的移动应用推荐方法。

本发明是这样实现的,一种基于信任融合与过滤的具有隐私保护的移动应用推荐方法,所述基于信任融合与过滤的具有隐私保护的移动应用推荐方法收集用户使用移动应用的信任行为数据,计算出用户对已安装应用的个体信任值,在用户的设备中进行应用个体信任值的初步过滤与融合,在请求用户的设备中计算出最终的推荐结果。

进一步,所述基于信任融合与过滤的具有隐私保护的移动应用推荐方法包括以下步骤:

步骤一,用户通过系统客户端向隐私服务器ps进行认证注册并从隐私服务器ps接收确认信息和相关密钥;同时,隐私服务器ps向服务商sp提供同态加密密钥,完成初始化操作;

步骤二,将用户的信任行为数据进行形式化处理得到用户对于已安装应用的个体信任值;对于用户已安装的所有应用,根据每个应用的使用时间顺序和不同时间点下的使用活跃程度,将每个应用的个体信任值进行融合,得到融合后每个应用的个体信任值;对于用户已安装的所有应用,根据融合后每个应用的个体信任值的大小,过滤掉某些个体信任值较低的应用数据,过滤掉这些应用的个体信任值数据,同时对这些个体信任值较低的应用进行卸载推荐;经过融合与过滤后的应用数据保存到系统客户端的数据库中,完成用户客户端数据的生成和保存;

步骤三,经过融合与过滤后的应用数据将会被处理并上传到服务商sp;服务商sp再次进行应用数据过滤,完成用户数据库的构建,服务商sp向用户发出数据收集请求,请求当中包含服务商sp选择的一个密钥;用户对数据收集请求进行授权,利用隐私服务器ps和服务商sp提供的相关密钥,用户对已安装的应用信息和应用对应的融合、过滤之后的个体信任值进行加密并上传到服务商sp;其次,用户上传的数据在服务商sp中进行保护处理,然后在隐私服务器ps中计算出用户数据的偏离距离;根据偏离距离,隐私服务器ps计算用户数据的有效性并返回给服务商sp,完成用户数据库的构建;在服务商sp进行推荐计算的时候,用户数据的有效性用以再次过滤用户的应用数据;服务商sp周期性地向用户客户端收集数据,对数据库进行更新;同时,隐私服务器ps也会根据服务商sp发送过来的用户数据计算一段时期内的用户可信性,检测并通知系统删除可能存在的恶意数据提供者;

步骤四,用户通过客户端软件向服务商sp发送获取应用的推荐请求,服务商sp对用户有效性进行认证,认证通过之后服务商sp利用用户上传的加密数据,考虑用户的请求时间,计算同态加密下的推荐;其次,服务商sp使用自己选择的一个随机数将同态加密下的推荐进行保护处理,发送到隐私服务器ps;隐私服务器ps利用同态解密私钥对推荐进行解密,然后使用请求用户的公钥将推荐加密发送到服务商sp;最后,服务商sp将加密的推荐和随机数返回给推荐请求用户;推荐请求用户利用自己的私钥和从服务商sp、隐私服务器ps获得的相关密钥将数据解密,计算出最终的推荐结果。

进一步,所述步骤一系统初次运行用户注册并进行相关密钥传输,完成初始化操作,按如下步骤进行:

(1)用户u在客户端身份管理器和密钥管理器中分别生成自己的匿名身份idu、公私钥对(pku,sku);隐私服务器ps在密钥管理器中生成公私钥对(pkps,skps)、同态加密公私钥对(hpkps,hskps)和一个短密钥k1;ps将{pkps,hpkps}发送给服务商sp;

(2)用户u用私钥sku对idu签名之后,将注册信息{pku,sigu(idu)}发送给隐私服务器ps;ps确认注册信息,然后使用自己的私钥skps对用户u的签名sigu(idu)进行签名之后得到sigps(sigu(idu));ps使用用户u的公钥pku将注册成功的消息加密为<{k1,hpkps,sigps(sigu(idu))}>u并返回给用户u;

(3)用户u通过客户端接收隐私服务器ps发过来的消息,利用自己的私钥sku将消息解密并将结果保存到自己的设备当中。

进一步,所述步骤二的客户端利用用户使用手机应用的信任行为数据生成应用的个体信任值,对应用的个体信任值进行融合与过滤,按如下步骤进行:

(1)客户端软件在用户的设备中自动运行,自动且持续地收集用户使用每个手机应用的信任行为数据,根据信誉系统truberepec中已经提出的算法,计算出用户对于每个应用的个体信任值ti(i=1,...,i),i为用户安装的应用数量;

(2)在客户端的计算器,对用户在不同时间点下关于每个应用的个体信任值进行融合,应用的个体信任值通过以下公式融合:

其中,表示应用i融合之后的个体信任值,tw表示在时间点tw下计算出的应用i的个体信任值,w表示在该周期内计算得到的应用i的个体信任值的数量,t表示当前时间,fw表示在时间点tw下应用i的使用频率;

(3)对于融合之后个体信任值较小的应用,其相关数据将被过滤掉,不再参与后续推荐的计算:

pi表示应用i的个体信任值在所有应用中所占的比重,当pi值小于某个阈值的时候,应用i的数据将不再参与推荐的计算;

(4)经过客户端融合与过滤之后的应用数据将保存到客户端的数据库中,下一个周期内,客户端重复上述操作,完成数据更新;同时,在多个时间周期内,若应用i的数据被多次过滤,说明用户对于应用i的信任较低或者很少使用应用i,系统将应用i添加到卸载推荐列表中,推荐用户将应用i卸载,以释放其占用的设备资源。

进一步,所述步骤三的客户端数据上传到服务商sp进行再次过滤,完成数据库构建和恶意数据提供者的检测,按如下步骤进行:

(1)服务商sp选择一个短密钥k2,然后向用户u发送数据收集请求,该请求信息使用用户u的公钥加密,请求信息中包括时间戳、ip地址等信息,但必须包含短密钥k2;

(2)用户u对数据收集请求解密并授权,然后使用对称加密算法,以(k1+k2)为密钥将自己安装的应用名称appname进行加密,有加密后的应用名称为a=e(k1+k2,appname);

(3)用户u使用隐私服务器ps的同态加密公钥将应用a的个体信任值加密为用户u对其他已安装的应用进行同样的加密操作,然后将加密的数据上传到服务商sp;

(4)服务商sp收到用户u上传的加密数据选择一个随机数r并使用隐私服务器ps的同态加密公钥hpkps将r加密,利用同态加密的性质,sp计算

sp同样计算其他用户对应的加密数据之和sp同时计算出系统中安装应用a的用户数量k,然后将k、发送到隐私服务器ps;

(5)隐私服务器利用自己的同态加密私钥hskps将解密,通过下式计算用户u的偏离距离du:

a表示用户u安装并将数据上传到服务商sp的应用数量;用下式来计算用户u数据有效性:

隐私服务器ps将cu发送给服务商sp;

(6)服务商sp利用同态加密的另一个性质计算

sp将计算得到的数据保存到sp的数据库中,完成用户数据库的构建;

(7)在下一个时间周期内,系统重复(1)-(6),完成用户数据库的更新,隐私服务器ps检测系统中可能存在的恶意的数据提供者,在ps的检测器中,计算用户u的恶意性ou:

其中,w表示该段时间内ps计算出的cu数量,表示周期t内计算出的cu;如果ou大于某个阈值ε,ps将用户u标记为恶意用户并从系统中删除,同时ps也将通知服务商sp。

进一步,所述步骤四的推荐请求者发送推荐请求,服务商sp和隐私服务器ps合作产生保护隐私的推荐结果返回给请求用户,用户解密得到最后的推荐,按如下步骤进行:

(1)推荐请求用户q向服务商sp发送获取应用推荐的请求消息{sigq(sigps),pkq},其中sigps表示隐私服务器ps对用户q注册信息的签名,pkq表示用户q的公钥;

(2)服务商sp检查用户q的合法性,即检测用户q是否已经注册或者从未被隐私服务器ps标记为恶意用户。若用户q未注册或者已被标记为恶意用户,则服务商sp拒绝推荐请求;否则的话,sp利用同态加密的性质,根据下式计算过滤之后的应用推荐:

其中,表示在ps同态公钥加密下的对用户q关于应用i的推荐值,tik表示系统中其他用户k关于应用i的个体信任值,ck表示系统中其他用户k的数据有效性,μ表示施加的时间因素的影响;通过下式计算μ的值:

其中,tr表示用户q请求推荐的时间,t表示在用户客户端软件中计算出用户个体信任值数据的时间,ω表示控制e的指数为正数的系统参数;

(3)服务商sp选择一个随机的大整数s,利用同态加密的性质计算

sp将计算出的发送给隐私服务器ps;

(4)隐私服务器ps利用自己的同态解密私钥hskps将进行解密,然后使用用户q的公钥pkq将解密的结果加密为并将加密后的结果返回给服务商sp;

(5)服务商sp收到sp利用用户q的公钥pkq将s加密为<s>q,然后将和<s>q一起返回给用户q;

(6)用户q使用自己的私钥skq将和<s>q解密得到和s,然后从中减去s得到最后关于应用i的推荐值

本发明的另一目的在于提供一种所述基于信任融合与过滤的具有隐私保护的移动应用推荐方法的基于信任融合与过滤的具有隐私保护的移动应用推荐系统,所述基于信任融合与过滤的具有隐私保护的移动应用推荐系统包括:用户设备、服务商和隐私服务器;

用户数据被处理后上传到服务商,服务商和隐私服务器合作完成数据库的构建,同时检测并剔除可能存在的恶意用户;

推荐请求用户向服务商请求推荐,服务商和隐私服务器之间通信合作,在保护用户隐私的同时再次对用户数据进行过滤计算。推荐请求用户在自己的设备中解密得到最终的推荐。

本发明的另一目的在于提供一种应用所述基于信任融合与过滤的具有隐私保护的移动应用推荐方法的智能手机。

综上所述,本发明的优点及积极效果为:本发明基于用户使用移动应用的信任行为生成用户对应用的个体信任值,通过对处理之后的应用个体信任值的多次融合与过滤,可以提供应用的卸载推荐,对系统中可能存在的恶意数据提供者进行检测和剔除,来提高新应用推荐结果的准确性和可靠性,同时设计出基于同态加密等技术的安全方案,在保护用户隐私的前提下,为用户提供更加准确、可靠和个性化的移动应用推荐。下表显示,通过与国内外最新移动应用推荐相关现有文献中的成果对比,本发明也同样具备了更加完善的功能和积极效果。

表1.本发明与现有相关技术的对比

【1】:z.yan,p.zhang,r.h.deng,truberepec:atrust-behavior-basedreputationandrecommendersystemformobileapplications,personalandubiquitouscomputing16(5)(2012)485–506.

【2】:b.liu,y.wu,n.z.gong,j.wu,h.xiong,m.ester,structuralanalysisofuserchoicesformobileapprecommendation,acmtransactionsonknowledgediscoveryfromdata(tkdd)11(2)(2016)17.

【3】:j.he,h.liu,miningexploratorybehaviortoimprovemobileapprecommendations,acmtransactionsoninformationsystems(tois)35(4)(2017)32.

【4】:d.cao,x.he,l.nie,x.wei,x.hu,s.wu,t.-s.chua,cross-platformapprecommendationbyjointlymodelingratingsandtexts,acmtransactionsoninformationsystems(tois)35(4)(2017)37.

【5】:b.liu,d.kong,l.cen,n.z.gong,h.jin,h.xiong,personalizedmobileapprecommendation:reconcilingappfunctionalityanduserprivacypreference,in:proceedingsoftheeighthacminternationalconferenceonwebsearchanddatamining,acm,2015,pp.315–324.

【6】:k.zhu,l.zhang,a.pattavina,learninggeographicalandmobilityfactorsformobileapplicationrecommendation,ieeeintelligentsystems32(3)(2017)36–44.

【7】:e.p.morera,i.delatorred′1ez,b.garcia-zapirain,m.l′opez-coronado,j.arambarri,securityrecommendationsform-healthapps:elaborationofadevelopersguide,journalofmedicalsystems40(6)(2016)152.

本发明与现有技术相比,具有如下优点:

(1)准确性和个性化:本发明数据来自用户实际使用移动应用的信任行为,推荐使用的数据是用户真实情况的反应,因而推荐的结果具有较高的准确性和个性化;其次,推荐的产生基于对用户数据的融合与多次过滤,一些可能会带来较大误差的数据将被过滤掉,而更准确的数据将会占据更大的比重,因此计算出的推荐具有更高的准确性。

(2)可靠性:通过过滤掉某些偏差较大的用户数据,系统产生的推荐更具有可靠性;通过对恶意数据提供者的检测和删除,进一步提高了系统的可靠性。

(3)安全性:由于推荐的产生基于用户本身的使用行为数据,不需要用户对某些应用的评价,因而本发明可以避免一些恶意用户的恶意评价;此外,系统内的所有用户都需要注册和验证,保证了系统的合法使用;最后,本发明基于多种安全的密码学算法,设计了安全的通信协议,因而用户的数据安全也能够得到保障。

(4)可用性:本发明含有的推荐卸载功能可以对用户信任度较低的应用进行卸载推荐,释放这些应用占用的设备资源。本发明在服务商和隐私服务器的支持下,只需在用户的移动手机安装客户端,便可以为用户提供准确并且保护隐私的应用推荐。另外,本发明所采用的方法和原理同样可以应用到其他类似领域的推荐,例如,移动交友,安全搜索等,具有较高的可用性。

(5)具有隐私保护功能:本发明通过以下方法来保障用户的隐私保护。首先,系统内的所有用户均使用匿名的身份信息,所以,用户的真实身份可以得到保护;其次,最为重要的用户原始的真实行为数据存储在用户自己的移动设备当中,只有被加密过的应用名称和应用的个体信任值上传到了服务商中;最后,对于用户上传数据的处理是在同态加密密文下的操作,服务商sp和隐私服务器ps在计算推荐的整个过程都无法得到用户的任何隐私数据。

附图说明

图1是本发明实施例提供的基于信任融合与过滤的具有隐私保护的移动应用推荐方法流程图。

图2是本发明实施例提供的基于信任融合与过滤的具有隐私保护的移动应用推荐系统结构示意图;

图中:1、用户手机客户端;2、服务商;3、隐私服务器。

图3是本发明实施例提供的客户端的设计图。

图4是本发明实施例提供的服务商sp的设计图。

图5是本发明实施例提供的隐私服务器ps的设计图。

图6是本发明实施例提供的总体的工作流程示意图。

图7是本发明实施例提供的系统初始化阶段的示意图。

图8是本发明实施例提供的客户端数据生成阶段的流程图。

图9是本发明实施例提供的数据库构建阶段的示意图。

图10是本发明实施例提供的推荐生成阶段的示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明是一种对用户使用移动应用的信任行为数据计算应用的个体信任值,对应用的个体信任值进行多次融合与过滤,计算移动应用的推荐,同时提供系统安全保障并能够保护用户隐私的推荐系统。

如图1所示,本发明实施例提供的基于信任融合与过滤的具有隐私保护的移动应用推荐方法包括以下步骤:

s101:在信誉系统truberepec已有算法的基础上,通过收集用户使用移动应用的信任行为数据,计算出用户对已安装应用的个体信任值;

s102:在用户的设备中进行应用个体信任值的初步过滤与融合;

s103:在服务商和隐私服务器的合作下再次进行用户数据的过滤,同时进行恶意数据提供者检测,完成用户数据库的构建;

s104:服务商和隐私服务器合作为用户产生保护隐私的推荐。

下面结合附图对本发明的应用原理作进一步的描述。

如图2所示,本发明设计了一种包含三个抽象实体角色的系统结构,三个实体分别是用户手机客户端1、服务商(serviceprovider)sp2和隐私服务器(privacyserver)ps3。用户通过手机客户端1在ps3进行用户注册并从ps3接收注册响应消息。用户通过手机客户端1从sp2接收数据收集的请求,然后向sp2上传处理过的用户数据。推荐请求用户通过手机客户端1向sp2发送获取推荐的请求消息并从sp2接收推荐请求的响应消息,在客户端计算出最后的推荐结果然后展示给用户。sp2和ps3之间也会进行合作式地通信和数据传输,完成用户数据库的构建和推荐的计算等功能。各实体之间的通信采用安全的通信信道(例如ssl协议),各实体内部的数据流通在图2中用箭头表示。

如图3所示,客户端软件安装在用户的手机设备上,包括身份管理器、密钥管理器、计算器、数据收集器、数据传输器、客户端数据库和推荐显示器等模块。身份管理器用于用户匿名身份的生成、注册信息的管理等;密钥管理器用于系统相关密钥的产生和管理;计算器在用户设备上进行数据的计算,例如进行应用个体信任值的计算、个体信任值的加解密等等;数据收集器在设备后台监视和收集用户的使用手机应用的行为数据;数据传输器用于客户端和其他实体之间的数据传输;客户端数据库存储在用户设备收集和计算出来的用户数据;推荐展示器用于向用户展示移动应用的推荐结果。

如图4所示,服务商sp2包括数据交换器、存储数据库、身份管理器和计算器等模块。其中,数据交换器用于服务商和客户端、隐私服务器之间的数据交换,包括客户端请求消息的接收和响应等;存储数据库用于存储客户端上传的用户数据和计算之后的用户数据;身份管理器用于管理系统中用户的身份,包括用户身份的验证等;计算器用于进行用户数据的相关计算。

如图5所示,隐私服务器ps3包括数据传输器、身份管理器、密钥管理器、计算器和检测器等模块,其中数据传输器用于隐私服务器和客户端、服务商的数据传输;身份管理器用于用户认证注册时的身份管理和恶意数据提供者的管理;密钥管理器用于相关密钥的生成和管理;计算器用于用户数据的相关计算;检测器用于检测系统中可能存在的恶意数据提供者。

如图6所示,本发明一共包含四个基本的工作阶段:系统初始化阶段、客户端数据生成阶段、数据库构建阶段和推荐生成阶段。在系统初始化阶段,主要是用户通过客户端在隐私服务器ps完成注册。在客户端数据生成阶段,主要是在客户端完成用户对应用个体信任值的计算、融合和过滤,并进行卸载推荐。在数据库构建阶段,主要是服务商sp从客户端收集加密的用户数据,在隐私服务器ps进行用户偏离距离和可靠性计算,然后sp完成用户数据的过滤。同时隐私服务器ps在这一阶段也会根据用户数据的可靠性进行恶意数据提供者的检测和删除。在推荐生成阶段,主要是推荐请求者向服务商sp请求推荐,服务商sp计算加密的应用推荐并在隐私服务器ps的加密保护下向请求用户返回加密的推荐结果。请求用户将结果解密得到最后的推荐。

如图7所示,在系统初始化阶段,具体步骤如下:

(1a)用户u在客户端身份管理器和密钥管理器中分别生成自己的匿名身份idu、公私钥对(pku,sku)。隐私服务器ps在密钥管理器中生成公私钥对(pkps,skps)、同态加密公私钥对(hpkps,hskps)和一个短密钥k1。ps将{pkps,hpkps}发送给服务商sp;

(1b)用户u用私钥sku对idu签名之后,将注册信息{pku,sigu(idu)}发送给隐私服务器ps。ps确认注册信息,然后使用自己的私钥skps对用户u的签名sigu(idu)进行签名之后得到sigps(sigu(idu))。ps使用用户u的公钥pku将注册成功的消息加密为<{k1,hpkps,sigps(sigu(idu))}>u并返回给用户u;

(1c)用户u通过客户端接收隐私服务器ps发过来的消息,利用自己的私钥sku将消息解密并将结果保存到客户端的数据库当中。

如图8所示,在客户端数据生成阶段,具体步骤如下:

(2a)客户端软件在用户的设备中自动运行(前台或后台运行都可以),客户端数据收集器自动且持续地收集用户使用每个手机应用的信任行为数据,根据信誉系统truberepec中已经提出的算法,计算出用户对于每个应用的个体信任值ti(i=1,...,i),i表示用户手机上安装的应用数量;

(2b)在客户端的计算器中,对用户在不同时间点下关于每个应用的个体信任值进行融合,以提高用户数据的准确性。融合时考虑两个主要原则:一个是时间效用,即距离当前时间越近的数据在融合时所占的计算比重应该越大;另一个是用户活跃度效用,即用户在某个时间点下更加活跃地使用某个应用,则该时刻的数据在融合时所占的计算比重应该越大。基于以上两个主要原则,应用的个体信任值可以通过以下公式融合:

其中,表示应用i融合之后的个体信任值,tw表示在时间点tw下计算出的应用i的个体信任值,w表示在该周期内计算得到的应用i的个体信任值的数量,t表示当前时间,fw表示在时间点tw下应用i的使用频率;

(2c)对于融合之后个体信任值较小的应用,其相关数据将被过滤掉,不再参与后续推荐的计算。可按照如下计算方式进行数据过滤:

pi表示应用i的个体信任值在所有应用中所占的比重,当pi值小于某个阈值的时候,应用i的数据将不再参与推荐的计算。

(2d)经过客户端融合与过滤之后的应用数据将保存到客户端的数据库中。下一个周期内,客户端重复上述操作,完成数据更新。同时,在多个时间周期内,若应用i的数据被多次过滤,说明用户对于应用i的信任较低或者很少使用应用i,系统将应用i添加到卸载推荐列表中,推荐用户将应用i卸载,以释放其占用的设备资源。

如图9所示,在数据库构建阶段,具体步骤如下:

(3a)服务商sp选择一个短密钥k2,然后向用户u发送数据收集请求,该请求信息使用用户u的公钥加密。请求信息中可以包括时间戳、ip地址等信息,记为spinfo,但必须包含短密钥k2;

(3b)用户u对数据收集请求解密并授权,然后使用对称加密算法(例如aes加密算法),以(k1+k2)为密钥将自己安装的应用的名称appname进行加密,即有加密后的应用名称为a=e(k1+k2,appname);

(3c)用户u使用隐私服务器ps的同态加密公钥hpkps将应用a的个体信任值加密为用户u对其他已安装的应用进行同样的加密操作,然后将加密的数据上传到服务商sp;

(3d)服务商sp收到用户u上传的加密数据选择一个随机数r并使用隐私服务器ps的同态加密公钥hpkps将r加密。利用同态加密的性质,sp计算

sp同样计算其他用户对应的加密数据之和sp同时计算出系统中安装应用a的用户数量k,然后将k、发送到隐私服务器ps;

(3e)隐私服务器ps利用自己的同态加密私钥hskps将解密,通过下式计算用户u的偏离距离du:

a表示用户u安装并将数据上传到服务商sp的应用数量。偏离距离du指示了用户u数据的可靠性,du越大则用户u的数据越不可靠。当du超过一定的阈值δ时,系统将用户u的数据设置为无效数据,用户u的数据不再参与推荐的计算。可以用下式来计算用户u数据有效性:

隐私服务器ps将cu发送给服务商sp;

(3f)服务商sp利用同态加密的另一个性质计算

sp将计算得到的数据保存到sp的数据库中,完成用户数据库的构建。

(3g)在下一个时间周期内,系统重复(3a)-(3f)的步骤,完成用户数据库的更新。根据一段时间内的数据,隐私服务器ps检测系统中可能存在的恶意的数据提供者。在ps的检测器中,计算用户u的恶意性ou:

其中,w表示该段时间内ps计算出的cu数量,表示周期t内计算出的cu。如果ou大于某个阈值ε,ps将用户u标记为恶意用户并从系统中删除,同时ps也将通知服务商sp。

如图10所示,在推荐生成阶段,具体步骤如下:

(4a)推荐请求用户q向服务商sp发送获取应用推荐的请求消息{sigq(sigps),pkq},其中sigps表示隐私服务器ps对用户q注册信息的签名,pkq表示用户q的公钥;

(4b)服务商sp检查用户q的合法性,即检测用户q是否已经注册或者从未被隐私服务器ps标记为恶意用户。若用户q未注册或者已被标记为恶意用户,则服务商sp拒绝推荐请求。否则的话,sp利用同态加密的性质,根据下式计算过滤之后的应用推荐:

其中,表示在ps同态公钥加密下的对用户q关于应用i的推荐值,表示系统中其他用户k关于应用i的个体信任值,ck表示系统中其他用户k的数据有效性,μ表示施加的时间因素的影响。时间因素μ的作用是使距离用户q请求推荐的时间越近的用户数据在计算推荐的时候占的比重越大,从而提高推荐的准确性和个性化。可以通过下式计算μ的值:

其中,tr表示用户q请求推荐的时间,t表示在用户客户端软件中计算出用户个体信任值数据的时间,ω表示控制e的指数为正数的系统参数。在计算的时候,由于ck的使用,过滤掉了不可靠用户的数据,进一步提高了推荐的准确性;由于μ的使用,使得推荐结果更具准确性和个性化;

(4c)服务商sp选择一个随机的大整数s(为了提高系统安全性,sp为不同的推荐请求用户选择不同的随机数,为同一个用户在不同时间的推荐请求也选择不同的随机数),利用同态加密的性质计算

sp将计算出的发送给隐私服务器ps。通过随机数s的保护,ps无法得到用户q真实的推荐数据;

(4d)隐私服务器ps利用自己的同态解密私钥hskps将进行解密,然后使用用户q的公钥pkq将解密的结果加密为并将加密后的结果返回给服务商sp;

(4e)服务商sp收到sp利用用户q的公钥pkq将s加密为<s>q,然后将和<s>q一起返回给用户q;

(4f)用户q使用自己的私钥skq将和<s>q解密得到和s,然后从中减去s得到最后关于应用i的推荐值注意到这里的应用名称i是一种加密的密文,因此,用户q还需要使用步骤(3b)当中用到的对称加密算法将i解密为appname=d(k1+k2,i),得到真实的应用名称appname。在对所有已推荐应用按照推荐值从大到小排序之后,前n个被推荐的应用名称将会显示在用户q客户端的推荐显示器中。

本发明推荐系统通过对用户关于手机应用个体信任值的多次过滤与融合,提高数据的准确性和可靠性,在给用户提供准确移动应用推荐的同时也能够保护用户的隐私安全。推荐信息的产生基于对用户使用移动应用真实行为数据的融合与过滤,因此,推荐的结果能够最大程度地反应用户的真实偏好,具有较高的个性化,同时推荐的准确性也能得到较大提高。其次,在对数据过滤与融合的过程中,系统中可能存在的恶意数据提供者将被检测并删除,提高了系统的安全性和可靠性。此外,该推荐系统通过采用保护隐私的计算和通信协议,在生成用户推荐的整个过程中,用户的隐私数据能够得到足够安全地保护。本发明包含客户端软件、服务商和隐私服务器三个实体角色,三者之间的通信采用安全的通信信道。此发明客户端软件能够加密融合与过滤之后的用户数据,在隐私服务器成功注册的用户将加密的用户数据上传到服务商。在服务商和隐私服务器的合作下,对用户数据进行再次过滤,同时进行恶意数据提供者的检测和删除,完成用户数据库的构建。推荐请求从客户端发给服务商,服务商和隐私服务器再次合作,在保护用户隐私数据不被服务商和隐私服务器获知的情况下为用户计算出加密的推荐信息。用户在自己的手机客户端计算出最终的推荐结果。整个过程采用保护用户隐私数据的方案,同时保证了推荐结果的准确性和个性化,保证了系统的安全性、可靠性和易操作性的要求。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1