CN104090967A - 应用程序推荐方法及推荐装置 - Google Patents

应用程序推荐方法及推荐装置 Download PDF

Info

Publication number
CN104090967A
CN104090967A CN201410339323.3A CN201410339323A CN104090967A CN 104090967 A CN104090967 A CN 104090967A CN 201410339323 A CN201410339323 A CN 201410339323A CN 104090967 A CN104090967 A CN 104090967A
Authority
CN
China
Prior art keywords
application
application program
value
security risk
pouplarity
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.)
Granted
Application number
CN201410339323.3A
Other languages
English (en)
Other versions
CN104090967B (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.)
Beijing Zhigu Ruituo Technology Services Co Ltd
Original Assignee
Beijing Zhigu Ruituo Technology Services Co Ltd
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 Beijing Zhigu Ruituo Technology Services Co Ltd filed Critical Beijing Zhigu Ruituo Technology Services Co Ltd
Priority to CN201410339323.3A priority Critical patent/CN104090967B/zh
Publication of CN104090967A publication Critical patent/CN104090967A/zh
Priority to PCT/CN2015/083632 priority patent/WO2016008383A1/en
Priority to US15/326,024 priority patent/US10474827B2/en
Application granted granted Critical
Publication of CN104090967B publication Critical patent/CN104090967B/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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90324Query formulation using system suggestions
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0282Rating or review of business operators or products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请实施例公开了一种应用程序推荐方法及推荐装置,所述方法包括:获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值;根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。本申请实施例的技术方案结合应用程序的受欢迎程度和安全风险对多个应用程序进行排序,进而可以向用户优先推荐更能满足用户的流行和安全偏好的应用程序,使得用户在享受功能丰富的应用程序的同时安全隐私也能得到保障。

Description

应用程序推荐方法及推荐装置
技术领域
本申请涉及一种数据处理方法,尤其涉及一种应用程序的推荐技术方案。
背景技术
近年来随着移动设备与移动互联网的高速发展,移动应用程序的数量出现了爆炸式的增长。与此同时,移动应用程序的功能被极大的扩展,用以丰富和满足用户各种各样的需求,例如:基于位置的服务(Location Based Services,LBS),基于社交平台的服务(SocialNetworking Services,SNS),等等。事实上,这些丰富的功能依赖于各种用户数据和设备的使用权限,例如位置访问权、通讯录访问权、短信访问权等等。这些访问权限的使用,使得用户在使用应用程序强大功能的同时产生了对于自身隐私、安全的担心。
发明内容
本申请的目的是:提供一种推荐应用程序的技术方案。
第一方面,本申请一个实施方案提供了一种应用程序推荐方法,包括:
获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值;
根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。
第二方面,本申请一个实施方案提供了一种应用程序推荐装置,包括:
获取模块,用于获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值;
排序模块,用于根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。
本申请实施例的至少一个实施方案结合应用程序的受欢迎程度和安全风险对多个应用程序进行排序,进而可以向用户优先推荐更能满足用户的流行和安全偏好的应用程序,使得用户在享受功能丰富的应用程序的同时安全隐私也能得到保障。
附图说明
图1为本申请实施例的一种应用程序推荐方法的流程图;
图2为本申请实施例的一种应用程序推荐方法中获取应用安全风险评分的流程图;
图3为本申请实施例的一种应用程序推荐方法中应用程序与权限的二部图示意图;
图4为本申请实施例的一种应用程序推荐方法中对应用进行排序的流程图;
图5为本申请实施例一种应用程序推荐装置的结构示意框图;
图6a-6c分别为本申请实施例三种应用程序推荐装置的获取模块的结构示意框图;
图6d和6e分别为本申请实施例两种应用程序推荐装置的风险评分获取子模块的结构示意框图;
图6f分别为本申请实施例一种应用程序推荐装置的排序模块的结构示意框图;
图6g-6j分别为本申请实施例四种应用程序推荐装置的比例值获取子模块的结构示意框图;
图6k和6l分别为本申请实施例另外两种应用程序推荐装置的排序模块的结构示意框图;
图7为本申请实施例一种电子设备的结构示意框图;
图8为本申请实施例再一种应用程序推荐装置的结构示意框图。
具体实施方式
下面结合附图(若干附图中相同的标号表示相同的元素)和实施例,对本申请的具体实施方式作进一步详细说明。以下实施例用于说明本申请,但不用来限制本申请的范围。
本领域技术人员可以理解,本申请中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
如图1所示,本申请实施例一种可能的实施方式提供了一种应用程序推荐方法,包括:
S110获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值;
S120根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。
举例来说,本申请提供的应用程序推荐装置作为本实施例的执行主体,执行S110~S120。具体地,所述应用程序推荐装置可以以软件、硬件或软硬件结合的方式设置在用户设备或服务器设备中。
在本申请实施例结合应用程序的受欢迎程度(Popularity)和安全风险对多个应用程序进行排序,进而可以向用户优先推荐更能满足用户的流行和安全偏好的应用程序,使得用户在享受功能丰富的应用程序的同时安全隐私也能得到保障。
下面进一步说明本申请实施例方法的各步骤:
S110获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值。
在本申请实施例一种可能的实施方式中,所述步骤S110获取所述受欢迎程度值可以包括:
获取所述每个应用程序的受欢迎程度信息;
根据所述每个应用程序的所述受欢迎程度信息得到所述每个应用程序的所述受欢迎程度值。
在本申请实施例可能的实施方式中,所述受欢迎程度信息例如可以为:所述每个应用程序在所述多个应用程序中的受欢迎程度排名、用户评分、下载量、活跃度以及价格等。在一种实施方式中可以根据所述多个应用程序的历史数据得到上面所述的受欢迎程度信息。
在本申请实施例可能的实施方式中,为了将所述受欢迎程度值正则化到0到1的区间中,方便后续的计算,所述受欢迎程度信息例如可以为所述受欢迎程度排名;所述根据所述每个应用程序的所述受欢迎程度信息得到所述每个应用程序的所述受欢迎程度值例如可以为:
将所述每个应用程序的所述受欢迎程度排名的倒数作为所述受欢迎程度值。
当然,本领域的技术人员可以知道,除了采用上述受欢迎程度排名的倒数外,还可以通过其它方式得到所述受欢迎程度值,例如,通过将所述受欢迎程度信息乘以一系数得到所述受欢迎程度值。或者通过一用户定义的第一转换函数,根据所述受欢迎程度信息转换为所述受欢迎程度值。
在一种可能的实施方式中,所述步骤S110获取的所述受欢迎程度值即为上面所述的受欢迎程度信息。
在本申请实施例一种可能的实施方式中,所述步骤S110获取所述安全风险值可以包括:
获取所述每个应用程序的安全风险信息;
根据所述每个应用程序的所述安全风险信息得到所述每个应用程序的所述安全风险值。
在一些可能的实施方式中,所述每个应用程序的安全风险信息例如可以为:所述每个应用程序在所述多个应用程序中的安全风险排名、所述每个应用程序的应用安全风险评分等等。其中,在一种可能的实施方式中,可以根据所述每个应用程序的应用安全风险评分对所述多个应用程序进行排名获得所述每个应用程序的安全风险排名。
在本申请实施例一种可能的实施方式中,为了将所述安全风险值正则化到0到1的区间中,方便后续的计算,所述根据所述每个应用程序的所述安全风险信息得到所述每个应用程序的安全风险值例如可以为:
将所述每个应用程序在所述多个应用程序中的安全风险排名的倒数作为所述每个应用程序的安全风险值。
当然,本领域的技术人员可以知道,除了采用上述安全风险排名的倒数外,还可以通过其它方式得到所述安全风险,例如,通过将所述安全风险信息乘以一系数得到所述安全风险值。或者通过一用户定义的第二转换函数,将所述安全风险信息转换为所述安全风险值。
在一种可能的实施方式中,所述步骤S110获取的所述安全风险值即为上面所述的安全风险信息,例如所述安全风险值即为所述应用安全风险评分。
在本申请实施例中,获取所述应用安全风险评分的方法可以有多种,例如:
1)可以基于应用程序的移动代码检测以及系统进程监控的方法得到所述每个应用程序的应用安全风险评分;或者,
2)可以基于人工显示风险函数的评估方法得到所述每个应用程序的应用安全风险评分;或者,
3)可以根据本领域专家的意见对所述每个应用程序进行安全风险打分得到所述每个应用程序的应用安全风险评分;或者,
4)可以根据应用程序与权限之间的潜在关系,通过应用程序与权限之间的一二部图模型得到所述每个应用程序的应用安全风险评分。
其中,上述第4)种方法得到的应用安全风险评分更加准确,下面进一步说明所述第4)种方法:
如图2所示,在本申请实施例一种可能的实施方案中,所述获取所述每个应用程序的应用安全风险评分包括:
S1101确定所述多个应用程序与多个权限之间的多个申请关系;其中,所述多个申请关系中的每个申请关系对应于所述多个应用程序中的一应用程序申请所述多个权限中的一权限;
S1102确定所述多个申请关系中每个申请关系的权值;
S1103根据所述每个申请关系对应的所述权值确定所述多个应用程序中每个应用程序的所述应用安全风险评分。
如图3所示,在本申请实施例中,发明人考虑到应用程序和权限的特性,提出了基于二部图的模型,来确定应用程序与权限之间的关系。其中,将多个应用程序作为二部图中的第一组节点,将多个权限作为二部图中的第二组节点,两组节点之间的连接由应用程序与权限的申请关系确定,即,当且仅当一应用程序申请了一权限时,所述应用程序与所述权限之间具有申请关系,建立有连接。
在本申请实施例中,通过图3所示的二部图表示本申请实施例多个应用程序与多个权限之间的关系,其中所述二部图G可以表示为:G={V,E,W},其中,
V为节点集,有V={Va,Vp},
Va为应用程序集,包括所述多个应用程序a1~aM,即Va={a1,···,aM},M为所述多个应用程序的个数,为正整数;
Vp为权限集,包括所述多个权限p1~pN,即Vp={p1,···,pN};N为所述多个权限的个数,为正整数;
E为申请关系集,其中,当且仅当所述多个应用程序中的一应用程序ai申请了所述多个权限中的一权限pj时,存在一申请关系eij∈E;
W为权值集,一权值wij∈W表示所述申请关系eij的权值。
如图3所示的实施方式中,二部图包括4个应用程序a1~a4,3个权限p1~p3,(在图3所示实施例中,所述应用程序a1~a4分别为:愤怒的小鸟(游戏类)、切水果(游戏类)、脸谱(社交类)以及麦块(游戏类);所述权限p1为读取手机状态、权限p2为访问精确位置、权限p3表示读取联系人);申请关系集包含8个申请关系(图3中通过应用程序与权限之间的连线表示):e11,e12,e21,e22,e32,e33,e42以及e43,它们分别对应的权值为0.3,0.7,0.2,0.8,0.5,0.5,0.4以及0.6。
本申请实施例中,所述权值wij表示所述应用程序ai与所述权限pj的相关性。在一种可能的实施方式中,所述权值wij表示所述应用程序ai申请所述权限pj的概率。这里应用程序ai申请权限pj的概率指的是,在确定所述应用程序ai申请了哪些权限之前,其申请权限pj的可能性。例如,对于图3中的申请关系e11来说,0.3表示应用程序a1申请权限p1的概率为0.3。
当然,在其它可能的实施方式中,所述权值还可以根据其它依据确定,来表示应用程序与权限之间的相关程度,特别的,在一种可能的实施方式中,可以根据用户的设定指令确定所述权值。
如上面所述的,在本申请实施例一种可能的实施方式中,所述步骤S1102在确定所述权值时,可以根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述每个申请关系的权值。
在本申请实施例中,可以根据历史数据获取所述概率。可选地,在一种可能的实施方式中,可以根据所述每个申请关系对应的所述应用程序所属的一应用分类中所有应用程序的权限申请历史数据确定对应的所述权值。在本实施方式中,所述应用分类可以是根据所述应用程序的功能划分的分类,例如游戏、办公、地图等;还可以是根据应用程序的开发商进行的分类,或者还可以是根据应用程序其它方面的相似性等进行的聚类分类等等。当然,本领域的技术人员可以知道,所述应用分类还可以是其它的分类标准进行的分类。
可选地,在本申请实施例一种可能的实施方式中,可以根据所述应用程序所属的所述应用分类中所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。可以通过下面的公式表示:
w ij = f ij Σ p j ∈ V p f ij ,
其中fij表示所述应用程序ai所属的所述应用分类中的应用程序申请权限pj的频率。
在本申请实施例一种可能的实施方式中,为了得到归一化的频率,可以通过所述应用分类中申请了一权限的应用程序的数量与该应用分类中所有应用程序的比值得到所述权限对应的所述频率。当然,在本申请实施例其它可能的实施方式中,还可以通过其它方式确定所述频率。
在本申请实施例其它可能的实施方式中,除了上述根据权限的申请频率确定所述每个申请关系的权值外,还可以根据其它参数确定所述权值,例如外部的先验知识,所述先验知识例如可以为本领域专家的意见、其它方法计算出了应用程序与权限之间的相关值等。
在本申请实施例一种可能的实施方式中,可选地,所述步骤S1103可以通过至少一约束来使得得到的应用程序的应用安全风险评分更加准确。
在一种可能的实施方式中,所述至少一约束包括一第一约束,所述第一约束包括:
所述多个申请关系中一申请关系对应的权值越高,所述申请关系对应的应用程序的应用安全风险评分与所述申请关系对应的权限的权限安全风险评分越相近。
在本申请实施例中,所述应用安全风险评分表示对应的应用程序的安全风险大小,所述权限安全风险评分表示对应的权限的安全风险大小。
本领域技术人员可以知道,所述第一约束考虑了应用程序与权限之间的主导关系。其中,一应用程序与一权限的权值越高,二者之间的相关性越强,当其中一个的风险高时,另一个必然也会高,反之亦然。以图3所示的实施例为例,对于权限p2来说,其对应的4个申请关系e12,e22,e32和e42分别对应的权值为0.7、0.8、0.5和0.4,因此,根据所述第一约束可以知道,权限p2的权限安全风险评分应该与应用程序a2的应用安全风险评分最接近。
可选的,在一种可能的实施方式中,所述至少一约束还包括一第二约束,所述第二约束包括:
所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应用安全风险评分越相近。
在本实施方式中,所述权限申请状况包括:应用程序申请的权限和应用程序申请权限的申请关系对应的权值。其中,当两个应用程序申请的权限越相似,同时申请相同权限的权值越相似,二者的应用安全风险评分应该越相近。如图3所示的应用程序a1和应用程序a1都申请了权限p1和权限p2,与应用程序a3或应用程序a4相比,此时,这两个应用程序的应用安全风险评分应该是更接近的;此外,该两个应用程序不但申请了相同的权限,其分别申请权限p1和权限p2的权值也相近,因此可以预见的是,应用程序a1和应用程序a2的应用安全风险评分应该是更相近的。同样,应用程序a3和应用程序a4的应用安全风险评分也应该是更相近的。当然,应用程序a1或应用程序a2与应用程序a3或应用程序a4的应用安全风险评分应该是比较不相近的。
可选地,在一种可能的实施方式中,可以通过一应用程序对应的所有申请关系的权值来向量表示所述应用程序,例如应用程序ai表示为其中,所述向量包含N个元素,依次分别对应于N个权限,其中,当所述应用程序申请一权限时,对应的元素为对应的权值;当所述应用程序ai没有申请一权限时,用0代替该元素(此时可以看成所述应用程序ai申请该权限的权值为0);应用程序aj表示为例如,图3所示的实施例中,应用程序a1对应的向量此时可以通过这两个应用程序对应的向量的余弦距离来确定这两个应用程序的相似度:
s ij a = Cos ( a → i , a → j ) = a → i · a → j | | a → i | | · | | a → j | |
当然,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也可以用于本申请实施例确定两个应用程序的相似程度,例如可以通过两个向量之间的欧式距离或KL距离(Kullback-Leibler Divergence)来确定所述两个向量的相似度。
可选的,在一种可能的实施方式中,所述至少一约束还包括一第三约束,所述第三约束包括:
对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限的权限安全风险评分越相近。
在本申请实施例中,所述权限的被申请状况包括申请所述权限的应用程序以及所述应用程序申请所述权限对应申请关系的权值。其中,申请两个权限的应用程序越相似、同时相同的应用程序分别申请所述两个权限的申请关系的权值越相似,所述两个权限对应的权限安全风险评分越相近。仍然以图3所示的实施方式为例,可以看出,权限p1与权限p2同时被应用程序a1和应用程序a2申请了,同时二者分别被应用程序a1和应用程序a2申请的权值相似,权限p2与权限p3又同时被应用程序a3和应用程序a4申请,而权限p1和权限p3没有被相同的应用程序申请,因此可以知道的是,在权限p2和权限p3中,权限p1的权限安全风险评分更接近权限p2的权限安全风险评分。本领域的技术人员可以知道,如果权限p3仅被应用程序a1和应用程序a2申请,则权限p1与权限p3的权限安全风险评分会更接近。
同样可选的,在一种可能的实施方式中,可以通过一权限对应的所有申请关系的权值来向量表示所述权限,例如权限pi表示为 其中,所述向量包含M个元素,依次分别对应于M个应用程序,其中,当一应用程序申请所述权限pi时,对应的元素为对应的权值;当一应用程序没有申请所述权限pi时,用0代替该元素(此时可以看成所述应用程序申请所述权限的权值为0);权限pj表示为例如,图3所示的实施例中,权限p1对应的向量这里的两个0分别表示应用程序a3和a4没有申请权限p1。此时可以通过这两个权限对应的向量的余弦距离来确定这两个权限的相似度:
s ij p = Cos ( p → i , p → j ) = p → i · p → j | | p → i | | · | | p → j | |
同样的,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也可以用于本申请实施例确定两个权限的相似程度,例如上面所述的欧式距离。
为了使得到的应用安全风险评分更加准确,还可以将外部的先验知识引入到应用安全风险评分的计算中,因此,可选地,在一种可能的实施方式中,所述至少一约束还包括一第四约束,所述第四约束包括:
所述多个应用程序的应用安全风险评分分别与所述多个应用程序的先验应用安全风险评分一致;
所述多个权限的权限安全风险评分分别与所述多个权限的先验权限安全风险评分一致。
在本申请实施例中,所述多个应用程序的应用安全风险评分和多个权限的权限安全风险评分分别与先验应用安全风险评分和先验权限安全风险评分一致的意思是所述应用和权限安全风险评分应满足先验知识,例如:第一应用程序的先验应用安全风险评分大于第二应用程序的先验应用安全风险评分,则所述第一应用程序的应用安全风险评分一般也应大于所述第二应用程序的应用安全风险评分。本申请实施例中,引入所述第四约束可以使得获取的应用安全风险评分可以尽快的收敛到合适的范围。在一种可能的实施方式中,对于一应用程序,可能会有多个应用安全风险评分满足上面的第一、第二和第三约束,那么所述第四约束可以帮助确定所述应用程序对应的多个应用安全风险评分中哪个才是该应用程序更合适的应用安全风险评分。
在本申请实施例中,所述先验应用安全风险评分和先验权限安全风险评分分别可以是通过多种方式获得,例如,在一些可能的实施方式中,可以采用领域专家设置的安全风险评分、也可以根据外部风险报告构建一安全分类得到对应的安全风险评分、或者还可以采用相关领域最先进的安全模式得到对应的安全风险评分。特别的,在一种可能的实施方式中,可以通过用户的预设来获得所述述先验应用安全风险评分和先验权限安全风险评分。
在本申请实施例一种可能的实施方式中,为了使得对应的应用和权限安全风险评分的获取效率更高,可以采用信息先验的朴素贝叶斯(Naive Bayes with informationPriors,PNB)来得到所述先验应用安全风险评分和先验权限安全风险评分。
在本申请实施例一种可能的实施方式中,可以根据所述每个申请关系对应的所述权值以及上面所述的第一至第四约束来确定所述多个应用程序中每个应用程序的应用安全风险评分。
例如,在一种可能的实施方式中,定义一结合上面四个约束的成本函数,例如表示为:
Q ( a , p ) = λ 2 · { Σ i | | R i a - R ~ i a | | 2 + Σ j | | R j p - R ~ j p | | 2 } + μ 2 · { Σ i , j s ij a | | R i a - R j a | | 2 + Σ i , j s ij p | | R i p - R j p | | 2 } + 1 2 Σ i . j w ij | | R i a - R j p | | 2
其中,表示应用程序ai的应用安全风险评分,表示应用程序ai的先验应用安全风险评分,表示权限pj的权限安全风险评分,表示权限pj的先验权限安全风险评分,上面第一部分(第一个大括号内的部分)表示了上面所述的第四约束,第二部分(第二个大括号内的部分)表示了所述第二和第三约束,第三部分表示了所述第一约束。参数λ和μ分别为所述第四约束的参数和所述第二和第三约束的参数,用于控制上述的第一部分和第二部分,用户可以根据需要设置这两个参数。可以看出,当λ和μ为零时,本申请实施例的成本函数不受所述第二、第三和第四约束的约束,而仅需要考虑所述第一约束。
可以看出,为了满足上面所述的约束,必须得到合适的使得所述成本函数尽可能小。因此,在一种可能的实施方式中,可以先给所述赋初始值,例如0到1之间的值,在一种可能的实施方式中,例如可以令:再通过梯度下降法不断的迭代更新这两个值,直到使得所述成本函数小于一设定的阈值。
当然,本领域技术人员可以知道,上面的成本函数仅是本申请实施例用于求取所述应用安全风险评分的一种可能的方式,还可以通过其它方法来得到本申请实施例的所述应用安全风险评分。
可以知道,在得到所述每个应用程序的应用安全风险评分后,可以根据上面所述的实施方案得到所述每个应用程序的安全风险值。
S120根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。
本申请实施例中,所述步骤S120根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序的方式有多种,例如:
1)根据所述每个应用程序的所述受欢迎程度值对所述多个应用程序进行第一排序;
其中,在所述多个应用程序中的至少两个应用程序的所述受欢迎程度值相同的情况下,根据所述至少两个应用程序的所述安全风险值对所述至少两个应用程序进行第二排序。
在本实施方式中,主要根据所述受欢迎程度值对所述多个应用程序进行整体排序,其中,在有应用程序的受欢迎程度值相同时,例如,有三个应用程序的受欢迎程度值相同,此时再根据所述三个应用程序的安全风险值来对所述三个应用程序进行局部排序。
或者,
2)根据所述每个应用程序的所述安全风险值对所述多个应用程序进行第一排序;
其中,在所述多个应用程序中的至少两个应用程序的所述安全风险值相同的情况下,根据所述至少两个应用程序的所述受欢迎程度值对所述至少两个应用程序进行第二排序。
与上述第1)中排序方式类似的,在本申请实施例中,先根据应用程序的安全风险值对所有应用程序进行整体排序,在有两个以上应用程序的安全风险值相同时,再根据这两个以上应用程序的受欢迎程度来对着两个以上的应用程序进行局部的排序。
本领域的技术人员可以知道,当采用上面所述的第1)或第2)种方法来对所述多个应用程序进行排序时,所述每个应用程序的受欢迎程度值可以就为上面所述受欢迎程度信息,例如所述应用程序的下载量;所述每个应用程序的安全风险值可以就为上面所述的安全风险信息,例如所述应用安全风险评分。
除了上面所述的两种排序方法外,为了根据所述安全风险值和受欢迎程度值对所述多个应用程序进行更佳的排序,申请发明人将投资组合理论应用在本申请实施例一种可能的实施方式中,将所述多个应用程序的受欢迎程度值看成投资中股票的未来收益,将所述多个应用程序的安全风险值看成投资中股票的风险,便于获得高受欢迎程度和安全风险小的多个应用程序的组合。
下面对这种排序方法进行进一步说明,如图4所示:
S121获取分别与所述多个应用程序一一对应的多个推荐比例值;其中,根据所述受欢迎程度值以及所述多个推荐比例值得到的所述多个应用程序的总受欢迎程度值和根据所述安全风险值和所述多个推荐比例值得到的所述多个应用程序的总安全风险值满足至少一设定标准;
S122根据所述多个推荐比例值对所述多个应用程序进行排序。
在本申请实施例,需要得到所述多个推荐比例值,使得所述多个应用程序的总受欢迎程度值和总安全风险值满足所述设定标准。
在本申请实施例一种可能的实施方式中,所述多个应用程序的所述总受欢迎程度值通过下面的方式获得:
根据每个应用程序的推荐比例和受欢迎程度值的乘积得到每个应用程序的单个受欢迎程度值,再将所述多个应用程序的单个受欢迎程度值相加就得到所述总受欢迎程度值。
在一种可能的实施方式中,例如,可以通过下面的公式计算所述多个应用程序的总受欢迎程度值:
其中,满足,其中,为所述多个应用程序(本实施方式中为n个应用程序)中一应用程序ai对应的推荐比例值,其可以表示推荐系统希望目标用户将多少注意力放在应用程序ai上;ri为所述应用程序ai对应的受欢迎程度值。本实施方式中,为了将所述受欢迎程度值限制在0到1的区间内,设ri为应用程序ai在所述多个应用程序中的受欢迎程度排名的倒数。例如,当所述应用程序ai在所述多个应用程序中的受欢迎程度排名为第2名时,ri=1/2。
在本申请实施例一种可能的实施方式中,根据所述安全风险值和所述多个推荐比例值得到所述总安全风险值包括:
根据所述每个应用程序对应的推荐比例值和所述安全风险值得到所述每个应用程序的独立安全风险值;
根据所述每个应用程序对应的所述推荐比例值、所述安全风险值以及所述每个应用程序与所述多个应用程序中其它应用程序之间风险相关系数得到所述每个应用程序的相关安全风险值;
根据所述每个应用程序的所述独立安全风险值以及所述相关安全风险值得到所述总安全风险值。
在一种可能的实施方式中,所述多个应用程序中一应用程序的单个安全风险值为所述应用程序的独立安全风险值与相关安全风险值之和。所述多个应用程序的总安全风险值为所述多个应用程序的单个安全风险值之和。
在一种可能的实施方式中,例如,可以通过下面的公式计算所述多个应用程序的总安全风险值:
其中,σi为所述多个应用程序中一应用程序ai对应的安全风险值;在本申请实施例中,为了使得所述安全风险值与上面所述的受欢迎程度值具有可比性,选择所述应用程序ai在所述多个应用程序中的安全风险排名的倒数作为该应用程序的安全风险值;对应于所述应用程序ai的独立安全风险值;对应于所述应用程序ai与所述多个应用程序中另一应用程序aj的相关安全风险值,其中,Jij为所述应用程序ai与所述应用程序aj的风险相关系数。在一种可能的实施方式中,可以通过两个应用程序申请权限的相似度来预估所述两个应用程序之间的风险相关系数。
在本申请实施例一种可能的实施方式中,采用杰卡德(Jaccard)相似性系数来作为本申请实施例两个应用程序之间的风险相关系数,具体为:根据所述每个应用程序申请的所有权限的数量、所述其它应用程序中一应用程序申请的所有权限的数量、以及所述每个应用程序与所述其它应用程序中所述应用程序共同申请的所有权限的数量得到所述每个应用程序与所述其它应用程序中所述应用程序之间的风险相关系数。
例如,在一种可能的实施方式中,所述应用程序ai与所述应用程序aj的风险相关系数:
Jij=Nij/(Ni+Nj-Nij)。
其中,Nij为所述应用程序ai与所述应用程序aj共同申请的所有权限的数量;Ni为所述应用程序ai申请的所有权限的数量;Nj为所述应用程序aj申请的所有权限的数量。
本领域的技术人员可以知道,除了所述杰卡德相似性系数外,其它相关系数也可以应用在本申请实施例中来获得所述两个应用程序之间的风险相关系数,例如皮尔森(Pearson)相关系数以及余弦相似度等。
在本申请实施例一种可能的实施方式中,所述总受欢迎程度值和所述总安全风险值满足所述至少一设定标准包括:
所述总受欢迎程度值与所述总安全风险值的差值最大。
即:本申请实施例中获得的所述多个推荐比例值使得所述总受欢迎程度值与所述总安全风险值的差值最大。
在本申请实施例另一种可能的实施方式中,为了考虑到不同的用户可能会有不同的风险容忍度偏好,例如:有的用户对应用程序的安全风险比较重视,容忍度较小;而有的用户对应用程序的安全风险没那么重视,因此容忍度较大。因此,所述方法根据一用户风险容忍度偏好和所述总安全风险值得到所述多个应用程序的加权总安全风险值。
例如,在一种可能的实施方式中,所述多个应用程序的加权总安全风险值为所述总安全风险值乘以一风险偏好系数。在一种可能的实施方式中,所述风险偏好系数与一用户选择的风险容忍度等级相关。
此时,所述总受欢迎程度值和所述总安全风险值满足所述至少一设定标准包括:
所述总受欢迎程度值与所述加权总安全风险值的差值最大。
本申请实施例上述实施方案中,例如可以通过有效边界(EfficientFrontier)法、期望最大(Expectation Maximization)法、或梯度下降(Gradient Desent)法等方法来的获取使得上面所述差值最大的所述多个推荐值比例。
在本申请实施例又一种可能的实施方式中,所述总受欢迎程度值和所述总安全风险值满足所述至少一设定标准包括:
所述总安全风险值满足设定的一最高风险标准,所述总受欢迎程度值最大。
在本实施方式中,不一定需要所述总安全风险值最小,只要所述总安全风险值满足所述最高风险标准就行,那么此时所述多个应用程序的总受欢迎程度越高越好。所述最高风险标准可以是一固定值,也可以是根据用户的偏好进行设置的。
在本申请实施例再一种可能的实施方式中,所述总受欢迎程度值和所述总安全风险值满足所述至少一设定标准包括:
所述总受欢迎程度值满足设定的一最低受欢迎标准,所述总安全风险值最小。
在本实施方式中,不一定需要所述应用程序的总受欢迎程度最大,只要所述总受欢迎程度值满足所述最低受欢迎标准就行,那么此时所述多个应用程序的总安全风险越低越好。所述最低受欢迎标准可以是一固定值,也可以是根据用户的偏好进行设置的。
一种可能的应用场景中,本申请实施例的上述的技术方案可以应用在应用分发平台端,用于根据所述应用分发平台的多个应用程序的安全风险值和受欢迎程度值来对所述多个应用程序进行排序,进而基于受欢迎程度和安全风险向用户做应用程序的推荐。
在另一种可能的应用场景中,本申请实施例的上述的技术方案可以应用在用户设备端,用于对所述用户设备中的多个应用程序的安全风险值和受欢迎程度值来对所述多个应用程序进行排序,帮助用户确定合适的应用程序。
其中,在一种可能的实施方式中,所述多个应用程序为应用于移动用户设备(例如手机、平板电脑等)上的移动应用程序,所述应用分发平台为应用市场,例如可以为Google Play等安卓应用市场、以及苹果的App Store应用市场。
本领域技术人员可以理解,在本申请具体实施方式的上述方法中,各步骤的序号大小并不意味着执行顺序的先后,各步骤的执行顺序应以其功能和内在逻辑确定,而不应对本申请具体实施方式的实施过程构成任何限定。
如图5所示,本申请实施例一种可能的实施方式提供了一种应用程序推荐装置500,包括:
获取模块510,用于获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值;
排序模块520,用于根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。
在本申请实施例结合应用程序的受欢迎程度和安全风险对多个应用程序进行排序,进而可以向用户优先推荐更能满足用户的流行和安全偏好的应用程序,使得用户在享受功能丰富的应用程序的同时安全隐私也能得到保障。
下面进一步说明本申请实施例装置的各模块。
如图6a所示,在一种可能的实施方式中,所述获取模块510包括:
受欢迎程度信息获取子模块511,用于获取所述每个应用程序的受欢迎程度信息;
受欢迎程度值获取子模块512,用于根据所述每个应用程序的所述受欢迎程度信息得到所述每个应用程序的所述受欢迎程度值。
在本申请实施例可能的实施方式中,所述受欢迎程度信息例如可以为:所述每个应用程序在所述多个应用程序中的受欢迎程度排名、用户评分、下载量、活跃度以及价格等。在一种实施方式中可以根据所述多个应用程序的历史数据得到上面所述的受欢迎程度信息。
在本申请实施例可能的实施方式中,为了将所述受欢迎程度值正则化到0到1的区间中,方便后续的计算,所述受欢迎程度信息例如可以为所述受欢迎程度排名,所述受欢迎程度值获取子模块512例如可以用于:
将所述每个应用程序的所述受欢迎程度排名的倒数作为所述受欢迎程度值。
当然,本领域的技术人员可以知道,除了采用上述受欢迎程度排名的倒数外,所述受欢迎程度值获取子模块512还可以通过其它方式得到所述受欢迎程度值,例如,通过将所述受欢迎程度信息乘以一系数得到所述受欢迎程度值。或者通过一用户定义的第一转换函数,根据所述受欢迎程度信息转换为所述受欢迎程度值。
在一种可能的实施方式中,所述获取模块510获取的所述受欢迎程度值即为上面所述的受欢迎程度信息。即不需要对获取的受欢迎程度信息进行变化,直接将其用于后续排序模块520的排序中。
在本申请实施例一种可能的实施方式中,所述获取模块510包括:
风险信息获取子模块513,用于获取所述每个应用程序的安全风险信息;
风险值获取子模块514,用于根据所述每个应用程序的所述安全风险信息得到所述每个应用程序的所述安全风险值。
在一些可能的实施方式中,所述风险信息获取子模块513获取的所述每个应用程序的安全风险信息例如可以为:所述每个应用程序在所述多个应用程序中的安全风险排名、所述每个应用程序的应用安全风险评分等等。其中,在一种可能的实施方式中,可以根据所述每个应用程序的应用安全风险评分对所述多个应用程序进行排名获得所述每个应用程序的安全风险排名。
在本申请实施例一种可能的实施方式中,为了将所述安全风险值正则化到0到1的区间中,方便计算,所述安全风险信息为所述安全风险排名;所述风险值获取子模块514例如可以用于:
将所述每个应用程序在所述多个应用程序中的安全风险排名的倒数作为所述每个应用程序的安全风险值。
当然,本领域的技术人员可以知道,所述风险值获取子模块514除了采用上述安全风险排名的倒数外,还可以通过其它方式得到所述安全风险,例如,通过将所述安全风险信息乘以一系数得到所述安全风险值。或者通过一用户定义的第二转换函数,将所述安全风险信息转换为所述安全风险值。
在一种可能的实施方式中,所述获取模块510获取的所述安全风险值即为上面所述的安全风险信息,例如所述安全风险值即为所述应用安全风险评分。
例如,在一种可能的实施方式中,如图6b所示,所述获取模块510例如可以包括受欢迎程度值获取子模块517用于直接获取所述受欢迎程度信息作为所述受欢迎程度值、和风险值获取子模块518用于直接获取所述安全风险信息作为所述安全风险值。
如图6c所示,可选地,在一种可能的实施方式中,所述安全风险信息为所述应用安全风险评分,此时,所述获取模块510包括:
风险评分获取子模块515,用于获取所述每个应用程序的应用安全风险评分;
风险值获取子模块516,用于根据所述每个应用程序的安全风险评分得到所述每个应用程序的所述安全风险值。
在本申请实施例中,所述风险评分获取子模块515获取所述应用安全风险评分的方式可以有多种,例如:
1)可以基于应用程序的移动代码检测以及系统进程监控的方法得到所述每个应用程序的应用安全风险评分;或者,
2)可以基于人工显示风险函数的评估方法得到所述每个应用程序的应用安全风险评分;或者,
3)可以根据本领域专家的意见对所述每个应用程序进行安全风险打分得到所述每个应用程序的应用安全风险评分;或者,
4)可以根据应用程序与权限之间的潜在关系,通过应用程序与权限之间的一二部图模型得到所述每个应用程序的应用安全风险评分。
其中,上述第4)种方式得到的应用安全风险评分更加准确,下面进一步说明所述第4)种方式对应的风险评分获取子模块515。
如图6d所示,在本申请实施例一种可能的实施方案中,所述风险评分获取子模块515包括:
申请关系确定单元5151,用于确定所述多个应用程序与多个权限之间的多个申请关系;其中,所述多个申请关系中的每个申请关系对应于所述多个应用程序中的一应用程序申请所述多个权限中的一权限;
权值确定单元5152,用于确定所述多个申请关系中每个申请关系的权值;
风险评分确定单元5153,用于根据所述每个申请关系对应的所述权值确定所述多个应用程序中每个应用程序的所述应用安全风险评分。
本申请实施例的风险评分获取子模块515通过基于一二部图的模型确定所述多个应用程序和多个权限之间的关系。具体参见图2和图3所示实施例中对应的描述。
在本申请实施例一种可能的实施方式中,对于所述多个应用程序与多个权限之间的多个申请关系以及每个申请关系对应的权值的进一步描述参见上述方法实施例中对图3所示实施方式的描述,这里不再赘述。
在本申请实施例中,所述申请关系的权值对应于所述申请关系对应的应用程序与权限之间的相关性,一般来说,所述相关性越强,所述权值的大小越大。因此,所述权值确定单元5152根据所述应用程序与权值之间的相关性就可以确定所述权值的大小。在一种可能的实施方式中,所述权值确定单元5152可以通过所述应用程序申请所述权限的概率的大小来获得所述相关性。当然,本领域的技术人员可以知道,在其它可能的实施方式中,除了所述概率外,所述权值确定单元5152还可以通过其它方式确定所述应用程序与权限之间的相关性。
可选地,在本申请实施例一种可能的实施方式中,所述权值确定单元5152进一步可以用于,
根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述每个申请关系的权值。
在本申请实施例一种可能的实施方式中,可以根据历史数据获取所述概率。因此,在一种可能的实施方式中,所述权值确定单元5152进一步可以用于根据所述每个申请关系对应的所述应用程序所属的一应用分类中所有应用程序的权限申请历史数据确定对应的所述权值。
在本实施方式中,所述应用分类可以是根据应用程序的功能划分的分类,例如游戏、办公、地图等;还可以是根据应用程序的开发商进行的分类,或者还可以是根据应用程序其它方面的相似性等进行的聚类分类等等。当然,本领域的技术人员可以知道,所述应用分类还可以是以其它的分类标准进行的分类。
如图6e所示,在一种可能的实施方式中,为了计算方便,所述权值确定单元5152包括:
权值确定子单元5152a,用于根据所述应用分类中所述所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。具体参见图2所示方法实施例中对应的描述。
在本申请实施例一种可能的实施方式中,为了得到归一化的频率,可以通过所述应用分类中申请了一权限的应用程序的数量与该应用分类中所有应用程序的比值得到所述权限对应的所述频率。当然,在本申请实施例其它可能的实施方式中,还可以通过其它方式确定所述频率。
为了更快更准确的确定所述每个应用程序的应用安全风险评分,可选地,在一种可能的实施方式中,所述风险评分确定单元5153包括:
风险评分确定子单元5153a,用于根据所述每个申请关系对应的所述权值以及至少一约束确定所述每个应用程序的所述应用安全风险评分;
其中,所述至少一约束包括一第一约束,所述第一约束包括:
所述多个申请关系中一申请关系对应的权值越高,所述申请关系对应的一应用程序的应用安全风险评分与所述申请关系对应的一权限的权限安全风险评分越相近。
在本申请实施例中,所述应用安全风险评分表示对应的应用程序的安全风险大小,所述权限安全风险评分表示对应的权限的安全风险大小。
本领域技术人员可以知道,所述第一约束考虑了应用程序与权限之间的主导关系。其中,一应用程序与一权限的权值越高,二者之间的相关性越强,当其中一个的风险高时,另一个必然也会高,反之亦然。具体参见上述方法实施例中对应的描述。
可选的,在一种可能的实施方式中,所述至少一约束还包括一第二约束,所述第二约束包括:
所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应用安全风险评分越相近。
在本实施方式中,所述权限申请状况包括:应用程序申请的权限和应用程序申请权限的申请关系对应的权值。其中,当两个应用程序申请的权限越相似,同时申请相同权限的权值越相似,二者的应用安全风险评分应该越相近。具体参见上述方法实施例中对应的描述。
可选地,在一种可能的实施方式中,可以通过一应用程序对应的所有申请关系的权值来向量表示所述应用程序,此时可以通过两个应用程序的余弦距离来确定两个应用程序的相似度。具体参见上述方法实施例中对应的描述。
当然,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也可以用于本申请实施例确定两个应用程序的相似程度。
可选的,在一种可能的实施方式中,所述至少一约束还包括一第三约束,所述第三约束包括:
对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限的权限安全风险评分越相近。
在本申请实施例中,所述权限的被申请状况包括申请所述权限的应用程序以及所述应用程序申请所述权限对应申请关系的权值。其中,申请两个权限的应用程序越相似、同时相同的应用程序分别申请所述两个权限的申请关系的权值越相似,所述两个权限对应的权限安全风险评分越相近。
同样可选的,在一种可能的实施方式中,可以通过一权限对应的所有申请关系的权值来向量表示所述权限,此时可以通过两个权限的余弦距离来确定两个权限的相似度。具体参见上述方法实施例中对应的描述。
同样的,本领域的技术人员可以知道,其它用于表示两个向量之间相似度的方法也可以用于本申请实施例确定两个权限的相似程度。
为了使得到的应用安全风险评分更加准确,还可以将外部的先验知识引入到应用安全风险评分的计算中,因此,可选地,在一种可能的实施方式中,所述至少一约束还包括一第四约束,所述第四约束包括:
所述多个应用程序的应用安全风险评分分别与所述多个应用程序的先验应用安全风险评分一致;
所述多个权限的权限安全风险评分分别与所述多个权限的先验权限安全风险评分一致。
在本申请实施例中,所述多个应用程序的应用安全风险评分和多个权限的权限安全风险评分分别与先验应用安全风险评分和先验权限安全风险评分一致的意思是所述应用和权限安全风险评分应满足先验知识。例如,在同时满足其它约束的前提下,所述应用安全风险评分应该尽量接近所述先验应用安全风险评分,所述权限安全风险评分应该尽量接近所述先验权限安全风险评分。本申请实施例中,引入所述第四约束可以使得获取的应用安全风险评分可以尽快的收敛到合适的范围,具体参见上述方法实施例中对应的描述。
在本申请实施例中,所述先验应用安全风险评分和先验权限安全风险评分分别可以是通过多种方式获得,例如,在一些可能的实施方式中,可以采用领域专家设置的安全风险评分、也可以根据外部风险报告构建一安全分类得到对应的安全风险评分、或者还可以采用相关领域最先进的安全模式得到对应的安全风险评分。特别的,在一种可能的实施方式中,可以通过用户的预设来获得所述述先验应用安全风险评分和先验权限安全风险评分。
在本申请实施例一种可能的实施方式中,为了使得对应的应用和权限安全风险评分的获取效率更高,可以采用PNB来得到所述先验应用安全风险评分和先验权限安全风险评分。
在本申请实施例一种可能的实施方式中,可以根据所述每个申请关系对应的所述权值以及上面所述的第一至第四约束来确定所述多个应用程序中每个应用程序的应用安全风险评分。
例如,在一种可能的实施方式中,可通过上面方法实施例中的成本函数来获取所述每个应用程序的应用安全风险评分。
当然,本领域技术人员可以知道,上面的成本函数仅是本申请实施例用于求取所述应用安全风险评分和权限安全风险评分的一种可能的方式,还可以通过其它的公式或函数来得到本申请实施例的所述应用安全风险评分和权限安全风险评分。
如图6f所示,在本申请实施例一种可能的实施方式中,所述排序模块520包括:
比例值获取子模块521,用于获取分别与所述多个应用程序一一对应的多个推荐比例值;其中,根据所述受欢迎程度值以及所述多个推荐比例值得到的所述多个应用程序的总受欢迎程度值和根据所述安全风险值和所述多个推荐比例值得到的所述多个应用程序的总安全风险值满足至少一设定标准;
排序子模块522,用于根据所述多个推荐比例值对所述多个应用程序进行排序。
在本申请实施例,所述比例值获取子模块521需要得到与所述多个应用程序对应的所述多个推荐比例值,使得所述多个应用程序的总受欢迎程度值和总安全风险值满足所述设定标准。
如图6g所示,在本申请实施例一种可能的实施方式中,所述比例值获取子模块521可以包括:
总受欢迎程度值获取单元5214,用于通过下面的方式获得所述多个应用程序的所述总受欢迎程度值:
根据每个应用程序的推荐比例和受欢迎程度值的乘积得到每个应用程序的单个受欢迎程度值,再将所述多个应用程序的单个受欢迎程度值相加就得到所述总受欢迎程度值。具体参见图4所示的方法实施例中对应的描述。
在一种可能的实施方式中,所述比例值获取子模块521可以包括:
独立风险值获取单元5211,用于根据所述每个应用程序对应的推荐比例值和所述安全风险值得到所述每个应用程序的独立安全风险值;
相关风险值获取单元5212,用于根据所述每个应用程序对应的所述推荐比例值、所述安全风险值以及所述每个应用程序与所述多个应用程序中其它应用程序之间风险相关系数得到所述每个应用程序的相关安全风险值;
总风险值获取单元5213,用于根据所述每个应用程序的所述独立安全风险值以及所述相关安全风险值得到所述总安全风险值。
在一种可能的实施方式中,所述多个应用程序中一应用程序的单个安全风险值为所述应用程序的独立安全风险值与相关安全风险值之和。所述多个应用程序的总安全风险值为所述多个应用程序的单个安全风险值之和。具体参见图4所示实施例中对应的描述。
在本申请实施例一种可能的实施方式中,所述相关风险值获取单元5212包括:
风险相关系数获取子单元5212a,用于根据所述每个应用程序申请的所有权限的数量、所述其它应用程序中一应用程序申请的所有权限的数量、以及所述每个应用程序与所述其它应用程序中所述应用程序共同申请的所有权限的数量得到所述每个应用程序与所述其它应用程序中所述应用程序之间的风险相关系数。具体参见图4所示实施例中对应的描述。
可选地,在本申请实施例一种可能的实施方式中,所述比例值获取子模块521包括:
第一比例值获取单元5215,用于获取使得所述总受欢迎程度值与所述总安全风险值的差值最大的所述多个推荐比例值。
为了考虑到不同的用户可能会有不同的风险容忍度偏好,例如:有的用户对应用程序的安全风险比较重视,容忍度较小;而有的用户对应用程序的安全风险没那么重视,因此容忍度较大。因此,如图6h所示,在本申请实施例另一种可能的实施方式中,所述比例值获取子模块521包括:
第二比例值获取单元5216,用于获取使得所述总受欢迎程度值与所述多个应用程序的一加权总安全风险值的差值最大的所述多个推荐比例值;
加权单元5217,用于根据一用户风险容忍度偏好和所述总安全风险值得到所述多个应用程序的所述加权总安全风险值。
例如,在一种可能的实施方式中,所述加权单元5217用于根据所述总安全风险值乘以一风险偏好系数得到多个应用程序的加权总安全风险值。在一种可能的实施方式中,所述风险偏好系数与一用户选择的风险容忍度等级相关。
可选地,如图6i所示,在本申请实施例又一种可能的实施方式中,所述比例值获取子模块521包括:
第三比例值获取单元5218,用于获取使得所述总安全风险值满足设定的一最高风险标准并且所述总受欢迎程度值最大的所述多个推荐比例值。
在本实施方式中,不一定需要所述总安全风险值最小,只要所述总安全风险值满足所述最高风险标准就行,那么此时所述多个应用程序的总受欢迎程度越高越好。所述最高风险标准可以是一固定值,也可以是根据用户的偏好进行设置的。
可选地,如图6j所示,在本申请实施例再一种可能的实施方式中,所述比例值获取子模块521包括:
第四比例值获取单元5219,用于获取使得所述总受欢迎程度值满足设定的一最低受欢迎标准并且所述总安全风险值最小的所述多个推荐比例值。
在本实施方式中,不一定需要所述应用程序的总受欢迎程度最大,只要所述总受欢迎程度值满足所述最低受欢迎标准就行,那么此时所述多个应用程序的总安全风险越低越好。所述最低受欢迎标准可以是一固定值,也可以是根据用户的偏好进行设置的。
如图6k所示,可选地,在本申请实施例另一种可能的实施方式中,所述排序模块520包括:
第一排序子模块523,用于根据所述每个应用程序的所述受欢迎程度值对所述多个应用程序进行第一排序;
第二排序子模块524,用于在所述多个应用程序中的至少两个应用程序的所述受欢迎程度值相同的情况下,根据所述至少两个应用程序的所述安全风险值对所述至少两个应用程序进行第二排序。
在本实施方式中,所述排序模块520通过所述第一排序子模块523根据所述受欢迎程度值对所述多个应用程序进行整体排序,其中,在有应用程序的受欢迎程度值相同时,例如,有三个应用程序的受欢迎程度值相同,此时再通过第二排序子模块524根据所述三个应用程序的安全风险值来对所述三个应用程序进行局部排序。
如图6l所示,可选地,在本申请实施例另一种可能的实施方式中,所述排序模块520包括:
第三排序子模块525,用于根据所述每个应用程序的所述安全风险值对所述多个应用程序进行第一排序;
第四排序子模块526,用于在所述多个应用程序中的至少两个应用程序的所述安全风险值相同的情况下,根据所述至少两个应用程序的所述受欢迎程度值对所述至少两个应用程序进行第二排序。
在本申请实施例中,所述排序模块520通过所述第三排序子模块525根据应用程序的安全风险值对所有应用程序进行整体排序,在有两个以上应用程序的安全风险值相同时,再通过所述第四排序子模块526根据这两个以上应用程序的受欢迎程度来对着两个以上的应用程序进行局部的排序。
本领域的技术人员可以知道,当采用图6k和图6l所示的排序模块520来对所述多个应用程序进行排序时,所述每个应用程序的受欢迎程度值可以就为上面所述受欢迎程度信息,例如所述应用程序的下载量;所述每个应用程序的安全风险值可以就为上面所述的安全风险信息,例如所述应用安全风险评分。
一种可能的应用场景中,本申请实施例的上述的装置可以应用在应用分发平台端,用于根据所述应用分发平台的多个应用程序的安全风险值和受欢迎程度值来对所述多个应用程序进行排序,进而基于受欢迎程度和安全风险向用户做应用程序的推荐。
在另一种可能的应用场景中,本申请实施例的上述的装置可以应用在用户设备端,用于对所述用户设备中的多个应用程序的安全风险值和受欢迎程度值来对所述多个应用程序进行排序,帮助用户确定合适的应用程序。
其中,在一种可能的实施方式中,所述多个应用程序为应用于移动用户设备(例如手机、平板电脑等)上的移动应用程序,所述应用分发平台为应用市场,例如可以为Google Play等安卓应用市场、以及苹果的App Store应用市场。
如图7所示,在本申请实施例一种可能的实施方式中提供了一种电子设备700,包括上面所述的应用程序推荐装置710。
其中,在一种可能的实施方式中,所述电子设备700可以为一用户设备,可选的,可以为一移动用户设备。在另一种可能的实施方式中,所述电子设备700还可以为一服务器。
图8为本申请实施例提供的又一种应用程序推荐装置800的结构示意图,本申请具体实施例并不对应用程序推荐装置800的具体实现做限定。如图8所示,该应用程序推荐装置800可以包括:
处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830、以及通信总线840。其中:
处理器810、通信接口820、以及存储器830通过通信总线840完成相互间的通信。
通信接口820,用于与比如客户端等的网元通信。
处理器810,用于执行程序832,具体可以执行上述方法实施例中的相关步骤。
具体地,程序832可以包括程序代码,所述程序代码包括计算机操作指令。
处理器810可能是一个中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。
存储器830,用于存放程序832。存储器830可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序832具体可以用于使得所述应用程序推荐装置800执行以下步骤:
获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值;
根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。
程序832中各步骤的具体实现可以参见上述实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上实施方式仅用于说明本申请,而并非对本申请的限制,有关技术领域的普通技术人员,在不脱离本申请的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本申请的范畴,本申请的专利保护范围应由权利要求限定。

Claims (42)

1.一种应用程序推荐方法,其特征在于,包括:
获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值;
根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。
2.如权利要求1所述的方法,其特征在于,所述根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序包括:
获取分别与所述多个应用程序一一对应的多个推荐比例值;其中,根据所述受欢迎程度值以及所述多个推荐比例值得到的所述多个应用程序的总受欢迎程度值和根据所述安全风险值和所述多个推荐比例值得到的所述多个应用程序的总安全风险值满足至少一设定标准;
根据所述多个推荐比例值对所述多个应用程序进行排序。
3.如权利要求2所述的方法,其特征在于,所述总受欢迎程度值和所述总安全风险值满足所述至少一设定标准包括:
所述总受欢迎程度值与所述总安全风险值的差值最大。
4.如权利要求2所述的方法,其特征在于,所述方法还包括:
根据一用户风险容忍度偏好和所述总安全风险值得到所述多个应用程序的加权总安全风险值;
所述总受欢迎程度值和所述总安全风险值满足所述至少一设定标准包括:
所述总受欢迎程度值与所述加权总安全风险值的差值最大。
5.如权利要求2所述的方法,其特征在于,所述总受欢迎程度值和所述总安全风险值满足所述至少一设定标准包括:
所述总安全风险值满足设定的一最高风险标准,所述总受欢迎程度值最大。
6.如权利要求2所述的方法,其特征在于,所述总受欢迎程度值和所述总安全风险值满足所述至少一设定标准包括:
所述总受欢迎程度值满足设定的一最低受欢迎标准,所述总安全风险值最小。
7.如权利要求2所述的方法,其特征在于,根据所述安全风险值和所述多个推荐比例值得到所述总安全风险值包括:
根据所述每个应用程序对应的推荐比例值和所述安全风险值得到所述每个应用程序的独立安全风险值;
根据所述每个应用程序对应的所述推荐比例值、所述安全风险值以及所述每个应用程序与所述多个应用程序中其它应用程序之间风险相关系数得到所述每个应用程序的相关安全风险值;
根据所述每个应用程序的所述独立安全风险值以及所述相关安全风险值得到所述总安全风险值。
8.如权利要求7所述的方法,其特征在于,所述方法还包括:
根据所述每个应用程序申请的所有权限的数量、所述其它应用程序中一应用程序申请的所有权限的数量、以及所述每个应用程序与所述其它应用程序中所述应用程序共同申请的所有权限的数量得到所述每个应用程序与所述其它应用程序中所述应用程序之间的风险相关系数。
9.如权利要求1所述的方法,其特征在于,所述获取所述多个应用程序中所述每个应用程序的所述受欢迎程度值包括:
获取所述每个应用程序的受欢迎程度信息;
根据所述每个应用程序的所述受欢迎程度信息得到所述每个应用程序的所述受欢迎程度值。
10.如权利要求1所述的方法,其特征在于,所述获取所述多个应用程序中所述每个应用程序的所述安全风险值包括:
获取所述每个应用程序的安全风险信息;
根据所述每个应用程序的所述安全风险信息得到所述每个应用程序的所述安全风险值。
11.如权利要求1所述的方法,其特征在于,所述获取所述多个应用程序中所述每个应用程序的所述安全风险值包括:
获取所述每个应用程序的应用安全风险评分;
根据所述每个应用程序的安全风险评分得到所述每个应用程序的所述安全风险值。
12.如权利要求11所述的方法,其特征在于,所述获取所述每个应用程序的应用安全风险评分包括:
确定所述多个应用程序与多个权限之间的多个申请关系;其中,所述多个申请关系中的每个申请关系对应于所述多个应用程序中的一应用程序申请所述多个权限中的一权限;
确定所述多个申请关系中每个申请关系的权值;
根据所述每个申请关系对应的所述权值确定所述多个应用程序中每个应用程序的所述应用安全风险评分。
13.如权利要求12所述的方法,其特征在于,根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述每个申请关系的权值。
14.如权利要求13所述的方法,其特征在于,根据所述每个申请关系对应的所述应用程序所属的一应用分类中所有应用程序的权限申请历史数据确定对应的所述权值。
15.如权利要求14所述的方法,其特征在于,根据所述应用分类中所述所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。
16.如权利要求12所述的方法,其特征在于,所述根据所述每个申请关系对应的所述权值确定所述多个应用程序中每个应用程序的所述应用安全风险评分包括:
根据所述每个申请关系对应的所述权值以及至少一约束确定所述每个应用程序的所述应用安全风险评分;
其中,所述至少一约束包括一第一约束,所述第一约束包括:
所述多个申请关系中一申请关系对应的权值越高,所述申请关系对应的一应用程序的应用安全风险评分与所述申请关系对应的一权限的权限安全风险评分越相近。
17.如权利要求16所述的方法,其特征在于,所述至少一约束还包括一第二约束,所述第二约束包括:
所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应用安全风险评分越相近。
18.如权利要求16所述的方法,其特征在于,所述至少一约束还包括一第三约束,所述第三约束包括:
对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限的权限安全风险评分越相近。
19.如权利要求16所述的方法,其特征在于,所述至少一约束还包括一第四约束,所述第四约束包括:
所述多个应用程序的应用安全风险评分分别与所述多个应用程序的先验应用安全风险评分一致;
所述多个权限的权限安全风险评分分别与所述多个权限的先验权限安全风险评分一致。
20.如权利要求1所述的方法,其特征在于,所述根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序包括:
根据所述每个应用程序的所述受欢迎程度值对所述多个应用程序进行第一排序;
其中,在所述多个应用程序中的至少两个应用程序的所述受欢迎程度值相同的情况下,根据所述至少两个应用程序的所述安全风险值对所述至少两个应用程序进行第二排序。
21.如权利要求1所述的方法,其特征在于,所述根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序包括:
根据所述每个应用程序的所述安全风险值对所述多个应用程序进行第一排序;
其中,在所述多个应用程序中的至少两个应用程序的所述安全风险值相同的情况下,根据所述至少两个应用程序的所述受欢迎程度值对所述至少两个应用程序进行第二排序。
22.一种应用程序推荐装置,其特征在于,包括:
获取模块,用于获取多个应用程序中每个应用程序的受欢迎程度值和安全风险值;
排序模块,用于根据所述受欢迎程度值和所述安全风险值对所述多个应用程序进行排序。
23.如权利要求22所述的装置,其特征在于,所述排序模块包括:
比例值获取子模块,用于获取分别与所述多个应用程序一一对应的多个推荐比例值;其中,根据所述受欢迎程度值以及所述多个推荐比例值得到的所述多个应用程序的总受欢迎程度值和根据所述安全风险值和所述多个推荐比例值得到的所述多个应用程序的总安全风险值满足至少一设定标准;
排序子模块,用于根据所述多个推荐比例值对所述多个应用程序进行排序。
24.如权利要求23所述的装置,其特征在于,所述比例值获取子模块包括:
第一比例值获取单元,用于获取使得所述总受欢迎程度值与所述总安全风险值的差值最大的所述多个推荐比例值。
25.如权利要求23所述的装置,其特征在于,所述比例值获取子模块包括:
第二比例值获取单元,用于获取使得所述总受欢迎程度值与所述多个应用程序的一加权总安全风险值的差值最大的所述多个推荐比例值;
加权单元,用于根据一用户风险容忍度偏好和所述总安全风险值得到所述多个应用程序的所述加权总安全风险值。
26.如权利要求23所述的装置,其特征在于,所述比例值获取子模块包括:
第三比例值获取单元,用于获取使得所述总安全风险值满足设定的一最高风险标准并且所述总受欢迎程度值最大的所述多个推荐比例值。
27.如权利要求23所述的装置,其特征在于,所述比例值获取子模块包括:
第四比例值获取单元,用于获取使得所述总受欢迎程度值满足设定的一最低受欢迎标准并且所述总安全风险值最小的所述多个推荐比例值。
28.如权利要求23所述的装置,其特征在于,所述比例值获取子模块包括:
独立风险值获取单元,用于根据所述每个应用程序对应的推荐比例值和所述安全风险值得到所述每个应用程序的独立安全风险值;
相关风险值获取单元,用于根据所述每个应用程序对应的所述推荐比例值、所述安全风险值以及所述每个应用程序与所述多个应用程序中其它应用程序之间风险相关系数得到所述每个应用程序的相关安全风险值;
总风险值获取单元,用于根据所述每个应用程序的所述独立安全风险值以及所述相关安全风险值得到所述总安全风险值。
29.如权利要求28所述的装置,其特征在于,所述相关风险值获取单元包括:
风险相关系数获取子单元,用于根据所述每个应用程序申请的所有权限的数量、所述其它应用程序中一应用程序申请的所有权限的数量、以及所述每个应用程序与所述其它应用程序中所述应用程序共同申请的所有权限的数量得到所述每个应用程序与所述其它应用程序中所述应用程序之间的风险相关系数。
30.如权利要求22所述的装置,其特征在于,所述获取模块包括:
受欢迎程度信息获取子模块,用于获取所述每个应用程序的受欢迎程度信息;
受欢迎程度值获取子模块,用于根据所述每个应用程序的所述受欢迎程度信息得到所述每个应用程序的所述受欢迎程度值。
31.如权利要求22所述的装置,其特征在于,所述获取模块包括:
风险信息获取子模块,用于获取所述每个应用程序的安全风险信息;
风险值获取子模块,用于根据所述每个应用程序的所述安全风险信息得到所述每个应用程序的所述安全风险值。
32.如权利要求22所述的装置,其特征在于,所述获取模块包括:
风险评分获取子模块,用于获取所述每个应用程序的应用安全风险评分;
风险值获取子模块,用于根据所述每个应用程序的安全风险评分得到所述每个应用程序的所述安全风险值。
33.如权利要求32所述的装置,其特征在于,所述风险评分获取子模块包括:
申请关系确定单元,用于确定所述多个应用程序与多个权限之间的多个申请关系;其中,所述多个申请关系中的每个申请关系对应于所述多个应用程序中的一应用程序申请所述多个权限中的一权限;
权值确定单元,用于确定所述多个申请关系中每个申请关系的权值;
风险评分确定单元,用于根据所述每个申请关系对应的所述权值确定所述多个应用程序中每个应用程序的所述应用安全风险评分。
34.如权利要求33所述的装置,其特征在于,所述权值确定单元进一步用于,
根据所述每个申请关系对应的所述应用程序申请所述权限的概率确定所述每个申请关系的权值。
35.如权利要求34所述的装置,其特征在于,所述权值确定单元包括:
权值确定子单元,用于根据所述应用分类中所述所有应用程序申请所述权限的频率与所述所有应用程序分别申请所述多个权限的多个频率之和的比值得到所述权值。
36.如权利要求33所述的装置,其特征在于,所述风险评分确定单元包括:
风险评分确定子单元,用于根据所述每个申请关系对应的所述权值以及至少一约束确定所述每个应用程序的所述应用安全风险评分;
其中,所述至少一约束包括一第一约束,所述第一约束包括:
所述多个申请关系中一申请关系对应的权值越高,所述申请关系对应的一应用程序的应用安全风险评分与所述申请关系对应的一权限的权限安全风险评分越相近。
37.如权利要求36所述的装置,其特征在于,所述至少一约束还包括一第二约束,所述第二约束包括:
所述多个应用程序中的两个应用程序的权限申请状况越相似,所述两个应用程序的应用安全风险评分越相近。
38.如权利要求36所述的装置,其特征在于,所述至少一约束还包括一第三约束,所述第三约束包括:
对于所述多个权限中的两个权限,所述两个权限的被申请状况越相似,所述两个权限的权限安全风险评分越相近。
39.如权利要求36所述的装置,其特征在于,所述至少一约束还包括一第四约束,所述第四约束包括:
所述多个应用程序的应用安全风险评分分别与所述多个应用程序的先验应用安全风险评分一致;
所述多个权限的权限安全风险评分分别与所述多个权限的先验权限安全风险评分一致。
40.如权利要求22所述的装置,其特征在于,所述排序模块包括:
第一排序子模块,用于根据所述每个应用程序的所述受欢迎程度值对所述多个应用程序进行第一排序;
第二排序子模块,用于在所述多个应用程序中的至少两个应用程序的所述受欢迎程度值相同的情况下,根据所述至少两个应用程序的所述安全风险值对所述至少两个应用程序进行第二排序。
41.如权利要求22所述的装置,其特征在于,所述排序模块包括:
第三排序子模块,用于根据所述每个应用程序的所述安全风险值对所述多个应用程序进行第一排序;
第四排序子模块,用于在所述多个应用程序中的至少两个应用程序的所述安全风险值相同的情况下,根据所述至少两个应用程序的所述受欢迎程度值对所述至少两个应用程序进行第二排序。
42.一种电子设备,其特征在于,包括权利要求22-41中任一项所述的应用程序推荐装置。
CN201410339323.3A 2014-07-16 2014-07-16 应用程序推荐方法及推荐装置 Active CN104090967B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201410339323.3A CN104090967B (zh) 2014-07-16 2014-07-16 应用程序推荐方法及推荐装置
PCT/CN2015/083632 WO2016008383A1 (en) 2014-07-16 2015-07-09 Application recommendation method and application recommendation apparatus
US15/326,024 US10474827B2 (en) 2014-07-16 2015-07-09 Application recommendation method and application recommendation apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410339323.3A CN104090967B (zh) 2014-07-16 2014-07-16 应用程序推荐方法及推荐装置

Publications (2)

Publication Number Publication Date
CN104090967A true CN104090967A (zh) 2014-10-08
CN104090967B CN104090967B (zh) 2017-08-25

Family

ID=51638683

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410339323.3A Active CN104090967B (zh) 2014-07-16 2014-07-16 应用程序推荐方法及推荐装置

Country Status (3)

Country Link
US (1) US10474827B2 (zh)
CN (1) CN104090967B (zh)
WO (1) WO2016008383A1 (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095411A (zh) * 2015-07-09 2015-11-25 中山大学 一种基于app质量的app排名预测方法及系统
WO2016008383A1 (en) * 2014-07-16 2016-01-21 Beijing Zhigu Ruituo Tech Co., Ltd Application recommendation method and application recommendation apparatus
CN105956044A (zh) * 2016-04-26 2016-09-21 北京邮电大学 一种基于用户隐私保护的移动应用程序算法
CN106096035A (zh) * 2016-06-23 2016-11-09 维沃移动通信有限公司 一种应用程序的推荐方法及移动终端
CN106202427A (zh) * 2016-07-12 2016-12-07 腾讯科技(深圳)有限公司 应用处理方法及装置
CN106294788A (zh) * 2016-08-11 2017-01-04 湖南警察学院 安卓应用的推荐方法
CN106354371A (zh) * 2016-09-06 2017-01-25 深圳市金立通信设备有限公司 一种应用排序的方法及终端
CN106503025A (zh) * 2015-09-08 2017-03-15 北京搜狗科技发展有限公司 一种应用推荐方法和系统
CN106649549A (zh) * 2016-10-31 2017-05-10 北京奇虎科技有限公司 一种终端应用app的排序方法及装置
CN106886711A (zh) * 2015-12-15 2017-06-23 北京奇虎科技有限公司 权限请求响应方法及相应的装置
CN106886715A (zh) * 2015-12-15 2017-06-23 北京奇虎科技有限公司 权限请求响应方法及相应的装置
CN107168986A (zh) * 2017-03-23 2017-09-15 国家计算机网络与信息安全管理中心 新闻app应用活跃度的分析方法
CN107193829A (zh) * 2016-03-14 2017-09-22 百度在线网络技术(北京)有限公司 应用程序推荐方法和装置
CN107305569A (zh) * 2016-04-21 2017-10-31 北京搜狗科技发展有限公司 一种信息处理方法及装置
CN107735766A (zh) * 2015-06-05 2018-02-23 苹果公司 用于向计算设备的用户前摄性地提供推荐的系统和方法
CN109255715A (zh) * 2018-09-03 2019-01-22 平安科技(深圳)有限公司 电子装置、产品推荐方法和计算机可读存储介质
CN109727109A (zh) * 2018-12-28 2019-05-07 深圳市华云中盛科技有限公司 涉税服务机构推荐方法、装置、计算机设备及存储介质
CN110309382A (zh) * 2019-06-17 2019-10-08 暨南大学 基于多维特征的移动应用同源性边聚类方法

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9767102B2 (en) * 2014-12-01 2017-09-19 Comcast Cable Communications, Llc Content recommendation system
CN104750798B (zh) * 2015-03-19 2020-09-29 腾讯科技(深圳)有限公司 一种应用程序的推荐方法和装置
CN108430050B (zh) * 2018-01-30 2021-04-09 西安电子科技大学 基于信任融合与过滤的具有隐私保护的移动应用推荐方法
US10855711B2 (en) 2018-06-06 2020-12-01 Reliaquest Holdings, Llc Threat mitigation system and method
US11709946B2 (en) 2018-06-06 2023-07-25 Reliaquest Holdings, Llc Threat mitigation system and method
US11093618B2 (en) * 2018-10-23 2021-08-17 Jpmorgan Chase Bank, N.A. Systems and methods for using an application control prioritization index
USD926809S1 (en) 2019-06-05 2021-08-03 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
USD926810S1 (en) 2019-06-05 2021-08-03 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
USD926811S1 (en) 2019-06-06 2021-08-03 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
USD926200S1 (en) 2019-06-06 2021-07-27 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
USD926782S1 (en) 2019-06-06 2021-08-03 Reliaquest Holdings, Llc Display screen or portion thereof with a graphical user interface
US11163889B2 (en) * 2019-06-14 2021-11-02 Bank Of America Corporation System and method for analyzing and remediating computer application vulnerabilities via multidimensional correlation and prioritization
US11675855B2 (en) 2019-11-18 2023-06-13 Deepmind Technologies Limited Variable thresholds in constrained optimization
US11531765B2 (en) 2020-07-16 2022-12-20 Allstate Insurance Company Dynamic system profiling based on data extraction
US20220159029A1 (en) * 2020-11-13 2022-05-19 Cyberark Software Ltd. Detection of security risks based on secretless connection data
CN114860918A (zh) * 2022-05-25 2022-08-05 重庆邮电大学 一种融合多源可靠信息的移动应用推荐方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120096435A1 (en) * 2010-10-18 2012-04-19 Microsoft Corporation Capability-based application recommendation
CN102467642A (zh) * 2010-11-17 2012-05-23 北大方正集团有限公司 用于应用软件的权限控制方法和装置
CN103902729A (zh) * 2014-04-14 2014-07-02 广州金山网络科技有限公司 一种应用程序推荐的方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8713684B2 (en) 2012-02-24 2014-04-29 Appthority, Inc. Quantifying the risks of applications for mobile devices
US9372901B2 (en) * 2012-04-27 2016-06-21 Quixey, Inc. Searching for software applications based on application attributes
US9152674B2 (en) * 2012-04-27 2015-10-06 Quixey, Inc. Performing application searches
CN103024606B (zh) 2012-12-10 2016-02-10 乐视网信息技术(北京)股份有限公司 网络视频播放器中添加扩展应用的方法和装置
US10789594B2 (en) * 2013-01-31 2020-09-29 Moshir Vantures, Limited, LLC Method and system to intelligently assess and mitigate security risks on a mobile device
CN103338223B (zh) * 2013-05-27 2016-08-10 清华大学 一种移动应用的推荐方法及服务器
US20150186940A1 (en) * 2013-12-31 2015-07-02 Quixey, Inc. Techniques For Generating Advertisements
CN104090967B (zh) 2014-07-16 2017-08-25 北京智谷睿拓技术服务有限公司 应用程序推荐方法及推荐装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120096435A1 (en) * 2010-10-18 2012-04-19 Microsoft Corporation Capability-based application recommendation
CN102467642A (zh) * 2010-11-17 2012-05-23 北大方正集团有限公司 用于应用软件的权限控制方法和装置
CN103902729A (zh) * 2014-04-14 2014-07-02 广州金山网络科技有限公司 一种应用程序推荐的方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张叶慧等: "基于类别以及权限的Android恶意程序检测", 《计算机工程与设计》 *

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016008383A1 (en) * 2014-07-16 2016-01-21 Beijing Zhigu Ruituo Tech Co., Ltd Application recommendation method and application recommendation apparatus
US10474827B2 (en) 2014-07-16 2019-11-12 Beijing Zhigu Rui Tuo Tech Co., Ltd Application recommendation method and application recommendation apparatus
US10922094B2 (en) 2015-06-05 2021-02-16 Apple Inc. Systems and methods for proactively providing recommendations to a user of a computing device
CN107735766A (zh) * 2015-06-05 2018-02-23 苹果公司 用于向计算设备的用户前摄性地提供推荐的系统和方法
CN105095411B (zh) * 2015-07-09 2018-08-24 中山大学 一种基于app质量的app排名预测方法及系统
CN105095411A (zh) * 2015-07-09 2015-11-25 中山大学 一种基于app质量的app排名预测方法及系统
CN106503025A (zh) * 2015-09-08 2017-03-15 北京搜狗科技发展有限公司 一种应用推荐方法和系统
CN106886711A (zh) * 2015-12-15 2017-06-23 北京奇虎科技有限公司 权限请求响应方法及相应的装置
CN106886715A (zh) * 2015-12-15 2017-06-23 北京奇虎科技有限公司 权限请求响应方法及相应的装置
CN107193829A (zh) * 2016-03-14 2017-09-22 百度在线网络技术(北京)有限公司 应用程序推荐方法和装置
CN107305569A (zh) * 2016-04-21 2017-10-31 北京搜狗科技发展有限公司 一种信息处理方法及装置
CN105956044A (zh) * 2016-04-26 2016-09-21 北京邮电大学 一种基于用户隐私保护的移动应用程序算法
CN106096035B (zh) * 2016-06-23 2019-11-26 维沃移动通信有限公司 一种应用程序的推荐方法及移动终端
CN106096035A (zh) * 2016-06-23 2016-11-09 维沃移动通信有限公司 一种应用程序的推荐方法及移动终端
CN106202427A (zh) * 2016-07-12 2016-12-07 腾讯科技(深圳)有限公司 应用处理方法及装置
CN106202427B (zh) * 2016-07-12 2022-02-11 腾讯科技(深圳)有限公司 应用处理方法及装置、计算机存储介质
CN106294788A (zh) * 2016-08-11 2017-01-04 湖南警察学院 安卓应用的推荐方法
CN106354371A (zh) * 2016-09-06 2017-01-25 深圳市金立通信设备有限公司 一种应用排序的方法及终端
CN106649549A (zh) * 2016-10-31 2017-05-10 北京奇虎科技有限公司 一种终端应用app的排序方法及装置
CN107168986B (zh) * 2017-03-23 2020-05-26 国家计算机网络与信息安全管理中心 新闻app应用活跃度的分析方法
CN107168986A (zh) * 2017-03-23 2017-09-15 国家计算机网络与信息安全管理中心 新闻app应用活跃度的分析方法
CN109255715A (zh) * 2018-09-03 2019-01-22 平安科技(深圳)有限公司 电子装置、产品推荐方法和计算机可读存储介质
CN109727109A (zh) * 2018-12-28 2019-05-07 深圳市华云中盛科技有限公司 涉税服务机构推荐方法、装置、计算机设备及存储介质
CN110309382A (zh) * 2019-06-17 2019-10-08 暨南大学 基于多维特征的移动应用同源性边聚类方法
CN110309382B (zh) * 2019-06-17 2021-05-28 暨南大学 基于多维特征的移动应用同源性边聚类方法

Also Published As

Publication number Publication date
CN104090967B (zh) 2017-08-25
US10474827B2 (en) 2019-11-12
WO2016008383A1 (en) 2016-01-21
US20170206361A1 (en) 2017-07-20

Similar Documents

Publication Publication Date Title
CN104090967A (zh) 应用程序推荐方法及推荐装置
US11797838B2 (en) Efficient convolutional network for recommender systems
TWI360754B (en) Web page analysis using multiple graphs
CN110473083B (zh) 树状风险账户识别方法、装置、服务器及存储介质
CN104091071A (zh) 应用程序的风险确定方法及确定装置
CN104331411B (zh) 推荐项目的方法和装置
CN103718206B (zh) 推荐其他用户或对象的方法、系统和装置
US20200184515A1 (en) Audience expansion according to user behaviors
US20160357845A1 (en) Method and Apparatus for Classifying Object Based on Social Networking Service, and Storage Medium
CN104516897B (zh) 一种针对应用对象进行排序的方法和装置
CN104156472A (zh) 一种视频推荐方法及系统
CN105335409A (zh) 一种目标用户的确定方法、设备和网络服务器
WO2020114108A1 (zh) 聚类结果的解释方法和装置
CN104156467B (zh) Api推荐方法及api推荐装置
CN110750658B (zh) 一种媒体资源的推荐方法、服务器及计算机可读存储介质
CN111047410B (zh) 推荐方法、装置、终端设备以及存储介质
US20230267317A1 (en) Sign-aware recommendation apparatus and method using graph neural network
CN104091131A (zh) 应用程序与权限的关系确定方法及确定装置
CN113656699B (zh) 用户特征向量确定方法、相关设备及介质
CN104156468A (zh) Api推荐方法及api推荐装置
CN104091117A (zh) 基于安全风险的聚类方法及聚类装置
CN109902167B (zh) 嵌入结果的解释方法和装置
CN108984551A (zh) 一种基于多类别联合软聚类的推荐方法及系统
CN106815285A (zh) 基于视频网站的视频推荐的方法、装置及电子设备
Bauckhage A Purely Geometric Approach to Non-Negative Matrix Factorization.

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant