基于相似装置中的恶意代码检测来确定装置上的模型保护等级的制作方法

文档序号:11293336阅读:206来源:国知局
基于相似装置中的恶意代码检测来确定装置上的模型保护等级的制造方法



背景技术:

近几年来,蜂窝技术和无线通信技术迅猛增长。更好的通信硬件、更大的网络和更可靠的协议促进了这种增长。现在,无线服务提供商能够为其客户提供不断扩展的特征和服务,并且为用户提供对信息、资源和通信的史无前例的水平的存取。为了与这些服务改善保持同步,移动电子装置(例如,蜂窝式电话、平板计算机、膝上型计算机等)变得前所未有的更加强大和复杂。这种复杂度为恶意软件、软件冲突、硬件故障和其它相似错误或现象创造了新的机会从而不利地影响移动装置的长期的和持续的性能以及功率利用水平。因此,识别和校正可能不利地影响移动装置的长期和持续性能以及功率利用水平的状况和/或移动装置行为对于消费者而言是有益的。



技术实现要素:

所述各种实施例包括分析计算装置中行为的方法,包括在计算装置的处理器中执行第一类型的分析操作以确定是否存在增大的安全风险,第一类型的分析操作包括针对增大的安全风险或先前出现的风险的指示监测所述计算装置,并且响应于确定存在增大的安全风险执行第二类型的分析操作,其中第二类型的分析操作与第一类型的分析操作相比是更加计算密集的。

在一个实施例中,执行第一类型的分析操作可以包括执行轻量分析操作,并且执行第二类型的分析操作可以包括执行稳健分析操作。在另一实施例中,执行稳健分析操作可以包括识别不同于经由轻量分析操作检测到的增大的安全风险的另一安全风险。在另一实施例中,针对增大的安全风险或先前出现的风险的指示监测所述计算装置可以包括针对来自另一计算装置的指示增大的安全风险的通知消息监测所述计算装置。

在另一实施例中,针对增大的安全风险或先前出现的风险的指示监测所述计算装置可以包括监测内部计算、文件、功能性行为和数据存取请求中的一或多个。在另一实施例中,针对增大的安全风险或先前出现的风险的指示监测所述计算装置可以包括监测所述计算装置以识别与非良性动作相关联的数据模式。在另一实施例中,针对增大的安全风险或先前出现的风险的指示监测所述计算装置可以包括针对恶意代码感染的常见后果监测所述计算装置。在另一实施例中,针对恶意代码感染的常见后果监测所述计算装置可以包括执行以下项中的一个:监测在时间周期中发送的收费短信的数量;监测与恶意行为相关联的网站的流量的增大;监测在时间周期中传送的地址簿联系人的数量;监测在时间周期中密码修改的数量;以及监测装置配置的改变。

在另一实施例中,所述方法可以包括响应于确定存在增大的安全风险产生包括风险信息的通知消息,并且将所述通知消息发送到一或多个计算装置。在另一实施例中,所述方法可以包括从另一计算装置中接收包括风险信息的通知消息,并且基于包括在接收到的通知消息中的风险信息确定存在增大的安全风险。在另一实施例中,基于包括在接收到的通知消息中的风险信息确定存在增大的安全风险可以包括至少部分地基于发送接收到的通知消息的另一计算装置之间的距离确定存在增大的安全风险,其中所述距离包括以下项中的一或多个:物理距离、检测到的安全风险与接收到的通知消息之间的时间差、网络分离距离、计算装置已经重启的次数、软件应用程序已经更新的次数、软件版本之间的差异,以及发射计算装置与接收计算装置之间的制造、模型、版本、特征或硬件差异。

在另一实施例中,执行轻量分析操作可以包括:监测装置行为以收集行为信息;基于所收集的行为信息产生行为向量数据结构;将行为向量数据结构应用到精益分类器模型以获取第一装置行为是否是非良性的确定;并且响应于确定第一装置行为是非良性的而确定存在增大的安全风险。在另一实施例中,执行稳健分析操作可以包括执行计算装置的全扫描。

在另一实施例中,执行稳健分析操作可以包括将行为向量数据结构应用到完整分类器模型以获取另一安全风险是否存在于计算装置中的确定。在另一实施例中,执行稳健分析操作可以包括监测额外装置行为以收集额外行为信息、基于所收集的额外行为信息产生多个行为向量数据结构,并且将多个行为向量数据结构中的每一个应用到分类器模型。在另一实施例中,响应于确定存在增大的安全风险执行稳健分析操作可以包括在动态地确定的时间周期中执行稳健分析操作。在另一实施例中,所述方法可以包括基于计算装置与第二计算装置之间的距离动态地确定时间周期。

另外的实施例可以包括计算装置,所述计算装置具有用于执行对应于上文所论述的方法操作的功能的各种装置(例如,处理器、存储器等),包括:用于执行第一类型的分析操作以确定是否存在增大的安全风险的装置,第一类型的分析操作包括针对增大的安全风险或先前出现的风险的指示监测所述计算装置;以及用于响应于确定存在增大的安全风险执行第二类型的分析操作的装置,其中第二类型的分析操作与第一类型的分析操作相比是更加计算密集的。在一个实施例中,用于执行第一类型的分析操作的装置可以包括用于执行轻量分析操作的装置,并且用于执行第二类型的分析操作的装置可以包括用于执行稳健分析操作的装置。在另一实施例中,用于执行稳健分析操作的装置可以包括用于识别不同于经由轻量分析操作检测到的增大的安全风险的另一安全风险的装置。

另外的实施例可以包括计算装置,所述计算装置具有配置有处理器可执行软件指令的处理器以执行操作,所述操作包括执行第一类型的分析操作以确定是否存在增大的安全风险,第一类型的分析操作包括针对增大的安全风险或先前出现的风险的指示监测所述计算装置,并且响应于确定存在增大的安全风险执行第二类型的分析操作,其中第二类型的分析操作与第一类型的分析操作相比是更加计算密集的。

在一个实施例中,处理器可以配置有处理器可执行软件指令以执行操作使得执行第一类型的分析操作包括执行轻量分析操作,并且执行第二类型的分析操作包括执行稳健分析操作。在另一实施例中,处理器可以配置有处理器可执行软件指令以执行操作使得执行稳健分析操作包括识别不同于经由轻量分析操作检测到的增大的安全风险的另一安全风险。在另一实施例中,处理器可以配置有处理器可执行软件指令以执行操作使得执行轻量分析操作包括:监测装置行为以收集行为信息;基于所收集的行为信息产生行为向量数据结构;将行为向量数据结构应用到精益分类器模型以获取第一装置行为是否是非良性的确定;并且响应于确定第一装置行为是非良性的确定存在增大的安全风险。

在另一实施例中,处理器可以配置有处理器可执行软件指令以执行操作使得执行稳健分析操作包括:监测额外装置行为以收集额外行为信息;基于所收集的额外行为信息产生多个行为向量数据结构;并且将多个行为向量数据结构中的每一个应用到分类器模型。在另一实施例中,处理器可以配置有处理器可执行软件指令以执行进一步包括以下项的操作:从另一计算装置中接收包括风险信息的通知消息;并且基于包括在接收到的通知消息中的风险信息以及计算装置与发送接收到的通知消息的另一计算装置之间的距离确定存在增大的安全风险。

另外的实施例可以包括非暂时性计算机可读存储媒体,在所述非暂时性计算机可读存储媒体上存储有处理器可执行软件指令,所述处理器可执行软件指令经配置以使得计算装置的处理器执行包括以下项的操作:执行第一类型的分析操作以确定是否存在增大的安全风险,第一类型的分析操作包括针对增大的安全风险或先前出现的风险的指示监测所述计算装置;以及响应于确定存在增大的安全风险执行第二类型的分析操作,其中第二类型的分析操作与第一类型的分析操作相比是更加计算密集的。

在一个实施例中,所存储的处理器可执行软件指令可经配置以使得处理器执行操作,使得执行第一类型的分析操作包括执行轻量分析操作,并且执行第二类型的分析操作包括执行稳健分析操作。在另一实施例中,所存储的处理器可执行软件指令可经配置以使得处理器执行操作,使得执行稳健分析操作包括识别不同于经由轻量分析操作检测到的增大的安全风险的另一安全风险。在另一实施例中,所存储的处理器可执行软件指令可经配置以使得处理器执行进一步包括以下项的操作:从另一计算装置中接收包括风险信息的通知消息;并且基于包括在接收到的通知消息中的风险信息以及到发送接收到的通知消息的另一计算装置的距离确定存在增大的安全风险。

另外的实施例可以包括计算装置,所述计算装置具有处理器,所述处理器配置有处理器可执行指令以执行对应于上文所论述的方法的各种操作。另外的实施例可以包括具有用于执行对应于上文所论述的方法操作的功能的各种装置的计算装置。另外的实施例可以包括非暂时性处理器可读存储媒体,在所述非暂时性处理器可读存储媒体上存储有处理器可执行指令,所述处理器可执行指令经配置以使得处理器执行对应于上文所论述的方法操作的各种操作。

附图说明

并入本文中并且构成本说明书一部分的附图说明本发明的例示性实施例,并且与上文给出的一般描述和下文给出的详细描述一起用来解释本发明的特征。

图1是说明适合用于各种实施例中的实例电信系统的网络组件的通信系统框图。

图2是说明在一个实施例移动装置中的实例逻辑组件和信息流的框图,所述移动装置经配置以确定特定移动装置行为、软件应用程序或过程是否是性能降级、可疑或良性的。

图3是说明根据一个实施例在计算装置中执行行为分析的方法的过程流程图。

图4是说明在移动装置中产生精益分类器模型的另一实施例移动装置方法的过程流程图。

图5是根据一个实施例可以产生并且用于产生精益分类器模型的实例决策节点的说明。

图6是说明根据一个实施例用于在计算装置中执行自适应观测的方法的过程流程图。

图7是适合在一个实施例中使用的移动装置的组件框图。

图8是适合在一个实施例中使用的服务器装置的组件框图。

具体实施方式

将参考附图详细描述各种实施例。在可能的情况下,整个附图中将使用相同的参考标号来指代相同或相似零件。对特定实例和实施方案进行的参考是出于说明性目的,且不希望限制本发明或权利要求书的范围。

词语“示例性”在本文中使用意指“充当实例、例子或说明”。本文中描述为“示例性”的任何实施方案未必应解释为比其它实施方案优选或有利。

总而言之,各种实施例包括有效地识别、归类、建模、防止和/或校正通常随时间推移而降级计算装置的性能、功率利用水平、网络使用水平、安全性和/或保密性的状况和行为的方法以及经配置以实施所述方法的计算装置。计算装置可经配置以执行第一类型的分析操作(例如,轻量分析操作)以确定是否存在增大的安全风险,并且响应于确定存在增大的安全风险而执行第二类型的分析操作(例如,稳健分析操作)以便确定是否存在不同于经由第一类型的分析操作的性能检测到的安全风险的额外的安全风险。

已经观测到当计算装置已经通过非良性行为(例如,发生故障的存储器、恶意代码、未授权的访问等)的一个例子受损时,可以存在非良性行为的其它例子,并且计算装置可能易受其它形式的恶意代码的影响以及未经授权方的攻击,例如,通过非良性行为启用的或告知计算装置的弱点。还观测到的是当装置受到恶意代码影响时,更加有可能下载或执行其它类型的恶意代码和/或尝试通过恶意代码感染其它计算装置。鉴于这些观测,计算装置可经配置以使用轻量过程执行第一类型的分析操作以监测和分析各种状况和装置行为以在所述计算装置中检测非良性活动、行为、操作、动作、状况、事件、应用程序或过程(共同地“行为”)的例子。计算装置可响应于检测到非良性行为的一个例子而增大其执行将警示非良性行为的其它例子的第二类型的分析操作的安全等级或审查。

增大安全等级或审查可涉及使用特征检测技术运行重量或计算密集行为分析和扫描引擎、在计算装置中收集更详细的行为信息、使用更加稳固的分类器模型来执行观测到的装置行为的加强分析等。举例来说,增大安全等级/审查可以包括:执行至少一个测试以确定装置是否具有隐匿程序(rootkit);执行至少一个测试以确定装置是否具有木马(trojan);执行至少一个测试以确定装置是否具有不希望的软件;并且查阅与装置相关联的事件的历史以确定是否存在不希望的事件的指示、软件的更新或警示消息的产生。在一个实施例中,计算装置可经配置以响应于识别非良性行为的例子通知增大安全风险的所选计算装置。在一个实施例中,计算装置可经配置以响应于从另一计算装置中接收增大安全风险的通知增大其安全/审查等级。

在一个实施例中,计算装置可以配备有通信模块、基于行为的安全模块、风险检测模块、扫描模块和致动器模块。通信模块可经配置以将安全风险信息发送到所选的其它计算装置(例如,非常接近于所述装置的计算装置)以及从所选的其它计算装置中接收安全风险信息、与类似于所述计算装置配备的计算装置共享资源等。风险检测模块可经配置以执行第一类型的分析操作,所述第一类型的分析操作可以包括使用从其它计算装置接收的风险信息和/或由装置的基于行为的安全模块产生的分析信息以确定是否存在增大的安全风险。响应于确定存在增大的安全风险,扫描模块可执行第二类型的分析操作,所述第二类型的分析操作可以包括执行加强分析操作(例如,通过运行计算密集型全扫描过程、收集更多信息、使用更加稳固的分类器模型等)以识别装置中的非良性行为的其它例子。全扫描可以包括使用常规的恶意代码扫描技术来分析大量的文件以识别非良性行为的其它例子。如果在所述计算装置中检测到非良性行为的其它例子,那么计算装置可以告知其它装置增大的安全风险,并且使得致动器模块执行各种安全操作以校正、缓解或以其它方式响应于在所述装置中的所识别的非良性行为的原因或来源。

在一个实施例中,计算装置可经配置以执行包括使用精益分类器模型的轻量分析操作以评估在所述装置上操作的所选过程直至检测到非良性行为的单个例子为止。计算装置可响应于检测到非良性行为的例子切换到完整分类器模型并且评估在装置上操作的所有过程。计算装置可保持在这种加强分析模式中(并且因此继续执行更加稳固的分析操作)达静态地或动态地确定的时间周期。计算装置还可以告知其它类似计算装置(例如,经由云中的网络服务器等)非良性行为的检测到的例子以便使得那些装置进入加强的分析模式。计算装置或网络服务器可基于多种因素识别将被告知的非良性行为的检测到的例子的“类似”计算装置,例如所述装置是否配备有基于行为的安全系统、包括相同版本的操作系统、已经下载了相同的软件应用程序、具有类似作用(例如,装置由在伊拉克的军队使用等)、订阅保险费服务等。

在一个实施例中,计算装置可经配置以执行包括使用轻量过程和/或精益分类器模型的轻量分析操作(例如,第一类型的分析操作)以连续或重复地评估所选择的装置行为;使用这些评估的结果更新风险参数的值,并且切换到执行包括使用重量过程和/或完整分类器模型的稳健分析操作(例如,第二类型的分析操作)以评估大量的装置行为达风险参数的值超过阈值时的时间周期。在各种实施例中,计算装置可经配置以基于“距离”确定风险参数值、阈值和/或时间周期。这种距离可以是当前装置与检测到非良性行为的例子的装置(即,受影响的装置)之间的物理距离。替代地或此外,距离可以是自检测到非良性行为的例子起经过的时间的量、计算装置已经重启的次数、软件应用程序已经更新的次数、软件版本之间的差异、发射计算装置与接收计算装置之间的制造/模型/版本/特征/硬件差异等。所述距离还可以是识别在当前装置与受影响的装置之间的中间节点或组件的数量的网络距离,或识别在当前装置与受影响的装置之间的配置、用途、作用、所使用的服务等中的相似度的逻辑距离。

因此,各种实施例允许计算装置执行包括使用轻量低功率过程的轻量分析操作(例如,第一类型的分析操作)以重复或连续地监测装置的风险,并且当存在加强的安全风险时执行更加稳固的扫描、监测和分析操作(例如,第二类型的分析操作)。这通过改善计算装置的性能和功率消耗特征而改善了计算装置的机能。另外,通过与其它计算装置共享风险信息,每个计算装置可以与在每个装置中执行加强分析相比快的多的且以较低功率消耗识别性能限制和不希望的操作状况并且对其做出反应。这进一步改善了计算装置的机能。

计算装置的功能、功能性和/或机能的额外的改善从下文所提供的实施例的详细描述中是显而易见的。

术语“移动计算装置”和“移动装置”在本文中互换地使用以指代以下各项中的任何一者或全部:蜂窝式电话、智能电话、个人或移动多媒体播放器、个人数据助理(pda)、膝上型计算机、平板计算机、智能本、超级本、掌上型计算机、无线电子邮件接收器、具多媒体互联网功能的蜂窝式电话、无线游戏控制器,以及包括存储器和可编程处理器的类似的个人电子装置,对于所述电子装置性能是重要的,并且所述电子装置在电池电源下运行使得节约电力的方法是有益的。虽然各种实施例对于移动计算装置(例如,具有有限的资源且通过电池运行的智能电话)是尤其有用的,但是实施例通常在包括处理器且执行应用程序的任何电子装置中都是有用的。

术语“性能降级”在本申请中用于指代多种多样的计算装置的不希望的操作和特性,例如较长处理时间、较慢实时响应性、较低的电池寿命、私人数据的损失、恶意经济活动(例如,发送未经授权的收费短信)、拒绝服务(dos)、不充分地编写或设计的软件应用程序、恶意软件、恶意代码、病毒、分段存储器、涉及强占计算装置或利用所述装置从事间谍或僵尸网络活动的操作等。并且,出于这些原因中的任一个的降级性能的行为、活动和状况在本文中被称作“不是良性”或“非良性”。

一般而言,移动装置的性能和功率效率随时间推移降级。近年来,杀毒软件公司(例如,mcafee、symantec等)已经开始营销旨在减缓这种降级的手机杀毒软件、防火墙和加密产品。然而,这些解决方案中的许多解决方案依赖于移动装置上的计算密集型扫描引擎的周期性执行(或执行全扫描),这可能消耗移动装置的许多处理和电池资源、减缓移动装置或使得移动装置无用达很长一段时间,和/或另外使用户体验降级。另外,这些解决方案通常限制在检测已知的病毒和恶意代码,且并不解决通常结合以导致移动装置的随时间推移的降级的多个复杂的因素和/或相互作用(例如,当性能降级并不是由病毒或恶意代码引起的时)。出于这些和其它原因,现有杀毒软件、防火墙和加密产品并不提供可以胜任以下问题的解决方案:识别可以造成移动装置随时间推移降级的多个因素、防止移动装置降级或者有效恢复老化的移动装置到其初始状态。

移动装置是具有相对地受限制的处理、存储器和能量资源的资源受限制的系统。现代移动装置还是复杂的系统,并且存在可能造成移动装置随时间推移的性能和功率利用水平的降级的多种多样的因素,包括不充分地设计的软件应用程序、恶意代码、病毒、分段存储器、后台进程等。由于这些因素的数量、种类和复杂度,通常来说评估可能有助于现代移动装置的复杂而又资源受限制的系统的性能和/或功率利用水平的降级的所有因素是并不可行的。

为了克服现有解决方案的限制,各种实施例包括配备有行为监视和分析系统的计算装置,所述系统经配置以快速且高效地识别非良性软件应用程序(例如,恶意的、不良写入的、与装置不兼容的应用程序等),且防止这些应用程序使计算装置的性能、功率利用水平、网络使用水平、安全性和/或隐私随时间而降级。所述行为监视和分析系统可经配置以识别、防止且校正所识别的问题而对计算装置的响应性、性能或电力消耗特性没有显著、不利或用户可察觉的影响。

为了进一步改善性能,计算装置可经配置以与其它计算装置结合工作以智能地且有效地确定它们是否易受非良性行为的影响,例如,恶意代码、网络攻击、发生故障的软件等。多个计算装置中的每一个可经配置以执行轻量安全操作(例如,基于行为的观测和分析操作等)以识别具有造成计算装置随时间推移的降级的高潜力的软件应用程序或过程。此类基于行为的操作可以包括观测器过程、后台程序、模块或子系统(本文中统称为“模块”),这些模块在计算装置系统的各种水平处指示或协调各种应用程序编程接口(api),并且从所指示的api中收集行为信息。

观测器模块可以将所收集的行为信息传送(例如,经由存储器写入操作、函数调用等)到计算装置的行为提取器模块(例如,经由存储器写入操作等),所述模块可使用行为信息(即,通过观测器模块所收集的信息)以产生表示或表征装置行为的行为向量。每个行为向量可以为包括或囊封一或多个“行为特征”的信息结构。行为特征可以为表示在计算装置中观测到的事件、状况、活动、操作、关系、相互作用或行为的全部或一部分的抽象的数字或符号。每个行为特征可以与识别一系列可能值的数据类型以及可以在那些值、值的含义和其它类似信息上执行的操作相关联。数据类型可以由计算装置使用以确定应当如何测量、分析、加权或使用对应的行为特征(或特征值)。

行为提取器模块可以(例如,经由存储器写入操作、函数调用等)将所产生的行为向量传送到分析仪模块,所述分析仪模块可以将行为向量应用到分类器模型以确定应用程序的装置行为是否是非良性的。分类器模型可以为包括数据、表项、决策节点、决策标准和/或信息结构的行为模型,所述信息结构可以由装置处理器使用以快速地且有效地测试或评估特定的特征、因素、数据点、表项、api、状态、状况、行为、软件应用程序、过程、操作、组件等(本文中统称为“特征”)或装置行为的其它实施例。分类器模型还可以包括可以由装置处理器使用以确定软件应用程序之间关系的本质和/或在计算装置中所监测的行为的信息。

每个分类器模型可以分类为完整分类器模型或精益分类器模型。完整分类器模型可以为稳固数据模型,所述数据模型是作为大量训练数据集的函数产生的,其可以包括数千特征和数十亿表项。精益分类器模型可以为更为集中的数据模型,所述数据模型由简化数据集产生,所述简化数据集包括或优先考虑与确定特定计算装置行为是否是非良性的最为相关的特征/表项上的测试。本地分类器模型可以为在计算装置中产生的精益分类器模型。装置特定的分类器模型可以为包括集中数据模型的本地分类器模型,所述集中数据模型仅包括/测试计算装置特定的特征/表项,所述特征/表项被确定为与在所述特定装置中对活动或行为进行分类最为相关。应用程序特定的分类器模型可以为包括集中数据模型的本地分类器模型,所述集中数据模型包括或优先考虑在与确定特定软件应用程序(或特定类型的软件应用程序)是否是非良性的最为相关的特征/表项上的测试。

因此,分析仪模块可以将行为向量应用到分类器模型以确定特定计算装置行为、软件应用程序或过程是否是非良性的。装置处理器可随后执行各种操作以校正、治愈、解决、隔离或者另外修复所识别的问题(例如,确定为非良性的行为)。装置处理器还可以增大其安全/审查等级以识别在所述装置中的非良性行为的其它例子,并且通知其它计算装置增大的安全风险。

在一个实施例中,计算装置可经配置以增大它们的相应的安全/审查等级达在识别非良性行为的例子或从另一装置中接收风险信息之后的时间周期或持续时间,并且在第一时间周期/持续时间之后返回到正常监测和分析操作。计算装置可经配置以使用精益分类器模型以评估装置行为直至识别到非良性行为的第一例子、在识别到非良性行为的第一例子之后开始使用完整分类器模型达第一时间周期/持续时间,并且如果没有识别到非良性行为的额外的例子,那么在第一时间周期/持续时间之后恢复回到使用精益分类器模型。此时间周期/持续时间可以是固定持续时间或基于度量动态地确定的,所述度量例如先前分类为良性的行为向量的数量、检测到的恶意代码的置信级、检测到的非良性行为的关键性或严重程度等。

在一个实施例中,可以动态地确定加强的安全/审查的时间周期/持续时间使得它与到初始受影响装置的距离成反比。这种距离可以是当前装置与检测到非良性行为的例子的装置(即,受影响的装置)之间的物理距离。所述距离还可以是或替代地是识别在当前装置与受影响的装置之间的中间节点或组件的数量的网络距离,或识别在当前装置与受影响的装置之间的配置、用途、作用、所使用的服务等中的相似度的逻辑距离。

在一个实施例中,计算装置可经配置以建立或连接包括多个预筛选或信任的计算装置的信任网络。在各种实施例中,建立或接合信任网络可以包含每个计算装置执行群组形成操作,所述操作包含另外经由同级间、wifi直接或其它类似技术建立到其它计算装置的通信链路。计算装置还可以经由共享安全网络、企业虚拟专用网络和其它类似技术或群组分类连接。在一个实施例中,信任网络可以包含是相同网络或具有直接通信链路的计算装置。信任网络中的每个计算装置可经配置以执行合作学习操作,所述操作包含与信任网络中的其它计算装置共享风险信息、行为向量、分类器模型、分析操作的结果以及其它类似信息。

在一个实施例中,计算装置经配置以与服务器结合工作以更有效地对通常随时间推移而降低性能和/或功率利用水平的状况和/或行为进行识别、分类、建模、防止和/或校正。服务器(可以是通信网络中的服务器或可经由互联网访问的服务器)可经配置以从中心数据库(例如,“云”)中和/或从许多计算装置中接收关于各种风险水平、功能、状态、状况、特征、行为和校正性动作的信息,并且使用这些信息以产生完整分类器模型(即,数据或行为模型),所述模型以可以快速地转换成一或多个精益分类器模型的格式或结构(例如,有限状态机等)描述行为信息的大型语料库。

在一个实施例中,完整分类器模型可以是行为信息的大型语料库的有限状态机描述或表示。在一个实施例中,有限状态机可以包括适用于表达为多个节点、增强型决策树或各自测试一或多个特征的决策柱的信息。举例来说,有限状态机可以是可以表示为增强的决策柱的家族的信息结构,所述增强的决策柱的家族共同地识别、描述、测试或评估与确定计算装置行为是否是良性的或造成计算装置的性能随时间推移而降级相关的所有或许多的特征和数据点。服务器可随后将完整或精益分类器模型(即,包括有限状态机和/或增强的决策柱的家族等的信息结构)发送到计算装置。

计算装置可经配置以接收和使用这些分类器模型以识别、防止和/或校正造成计算装置的性能和/或功率利用水平随时间推移而降低的状况、因素和/或计算装置行为。计算装置还可以使用分类器模型以在计算装置中本地产生更加精益的分类器模型。为了实现这一点,计算装置可以删除或剔除包含于从服务器接收的分类器模型中的增强的决策树的稳固家族以产生包括减少数量的增强型决策树的更加精益的分类器模型和/或评估有限数量的测试状况或特征。计算装置可随后使用这种分类器模型以执行实时行为监测和分析操作并且识别不希望的来源或原因或性能降级计算装置行为。

计算装置处理器可经配置以执行轻量分析操作以确定是否存在增大的安全风险,并且响应于确定存在增大的安全风险而执行稳健分析操作。轻量分析操作可以包括针对增大的安全风险或先前出现的风险的指示监测所述装置。在一个实施例中,这可以通过针对来自另一计算装置的通知消息监测装置而实现。举例来说,计算装置可经配置以将行为向量信息结构应用到精益分类器模型、使用轻量过程以监测和分析各种状况和装置行为,并且针对包括风险信息的通知消息监测端口。计算装置可以响应于接收包括指示升高的风险的风险信息的通知消息而执行稳健分析操作(例如,计算装置附近的另一装置已经感染了病毒)。

在一些实施例中,计算装置处理器可经配置以执行包括识别增大的安全风险/威胁的指示的轻量分析操作,方法是:监测内部计算、文件、功能性行为、数据存取请求等;监测所述装置以识别与非良性动作相关联的数据模式;针对恶意代码感染的常见后果监测所述装置;和/或执行其它类似操作。为了识别恶意代码的常见后果,所述计算装置可以监测在时间周期中发送的收费短信的数量;监测与恶意活动/行为相关联的网站的流量的增大;监测在时间周期中传送的地址簿联系人的数量;监测在时间周期中密码已经被修改的次数;监测计算装置的配置的改变(例如,改变的数量、改变的频率、改变的重要性/程度等);和/或执行其它类似操作。

各种实施例可以在多种通信系统(例如,图1中所说明的实例通信系统100)内实施。典型小区电话网络104包括多个小区基站106,所述小区基站耦接到网络操作中心108,所述网络操作中心操作以连接移动装置102(例如,蜂窝电话、膝上型计算机、平板计算机等)与其它网络目的地之间的语音呼叫和数据,例如,经由电话陆地线路(例如,pots网络,未示出)和互联网110。移动装置102与电话网络104之间的通信可以经由双向无线通信链路112实现,所述双向无线通信链路例如是4g、3g、cdma、tdma、lte和/或其它小区电话通信技术。电话网络104还可以包括耦合到网络操作中心108或在网络操作中心108内的一或多个服务器114,所述一或多个服务器提供到互联网110的连接。

每个移动装置102可经配置以与系统100中的其它移动装置102共享风险信息、行为向量、数据/行为模型、实时行为分析操作的结果、成功速率和其它类似信息。移动装置102之间的通信可以通过直接或同级间通信链路122、电话网络104或经由互联网110实现。

通信系统100可以进一步包括连接到电话网络104及互联网110的网络服务器116。网络服务器116与电话网络104之间的连接可以通过互联网110或通过专用网络(如虚线箭头所示)。网络服务器116还可实施为云服务提供商网络118的网络基础结构内的服务器。网络服务器116与移动装置102之间的通信可以通过电话网络104、互联网110、专用网络(未示出)或其任何组合实现。

在一个实施例中,网络服务器116可经配置以将数据/行为模型发送到移动装置102,所述移动装置可以接收和使用所述数据/行为模型以识别可疑或性能降级的移动装置行为、软件应用程序、过程等。网络服务器116还可以将分类和建模信息发送到移动装置102以替换、更新、形成和/或维持移动装置数据/行为模型。

图2说明在一个实施例移动计算装置102中的实例逻辑组件和信息流,所述移动计算装置包括经配置以使用行为分析技术来识别和响应于非良性装置行为的基于行为的安全系统200。在图2中说明的实例中,计算装置是移动计算装置102,其包括配置有包含行为观测器模块202、行为提取器模块204、行为分析仪模块208和致动器模块210的可执行指令模块的装置处理器(即,移动装置处理器)。模块202-210中的每一个可以为线程、过程、后台程序、模块、子系统,或在软件、硬件或其组合中实施的组件。在各种实施例中,模块202-210可在操作系统的部分内(例如,内核内、内核空间中、用户空间中等)、单独程序或应用程序内、专用硬件缓冲器或处理器中或其任何组合内实施。在一个实施例中,模块202-210中的一或多个可以实施为在移动计算装置102的一或多个处理器或处理核心上执行的软件指令。

行为观测器模块202可经配置以在装置的各种层级/模块处仪表化应用程序编程接口(api)、计数器、硬件监测器等,且监测在一时间周期内在各种层级/模块处的活动、状况、操作和事件(例如,系统事件、状态改变等)。举例来说,行为观测器模块202可以经配置以监测移动计算装置102的各种软件和硬件组件,以及收集关于相互作用、通信、交易、事件或与移动计算装置102的活动相关联的所监测的和可测量的组件的操作的行为信息。此类活动包括软件应用程序使用硬件组件、操作或任务的性能、软件应用程序在移动计算装置102的处理核心中的执行、过程的执行、任务或操作的性能、装置行为等。

行为观测器模块202可以收集关于所监测的活动、状况、操作或事件的行为信息,并且将所收集的信息存储在存储器中(例如,在日志文件中等)。行为观测器模块202可随后将所收集的行为信息传送(例如,经由存储器写入操作、函数调用等)到行为提取器模块204。行为提取器模块204可经配置以接收或检索所收集的行为信息,并且使用这一信息以产生一或多个行为向量。

在各种实施例中,行为提取器模块204可经配置以产生行为向量以包括软件应用程序的所观测到的行为、关系或相互作用的简洁定义。举例来说,每个行为向量可以在值或向量数据结构中简明地描述软件应用程序的共同行为。向量数据结构可以包括编号的序列,其中的每一个表示装置的特征或行为,例如,计算装置的相机是否在使用中(例如,作为零或一)、已经从计算装置中传输多少网络流量或多少网络流量通过计算装置产生(例如,20kb/秒等)、已经传送多少互联网消息(例如,sms消息的数量等),和/或通过行为观测器模块202收集的任何其它行为信息。在一个实施例中,行为提取器模块204可经配置以产生行为向量使得它们充当标识符,所述标识符使得计算装置系统(例如,行为分析仪模块208)能够快速地认出、识别或分析应用程序之间的关系。

行为分析仪模块208还可经配置以将行为向量应用于分类器模块以确定装置行为(即,在装置上运行的两个或大于两个软件应用程序的共同活动)是否是造成(或可能地造成)装置的随时间推移的降级和/或可能另外在装置上造成问题的非良性行为。行为分析仪模块208可以通知致动器模块210活动或行为不是良性的。作为响应,致动器模块210可以执行各种动作或操作以治愈、解决、隔离或者修复所识别的问题。举例来说,致动器模块210可经配置以在将行为向量应用于分类器模型(例如,通过分析仪模块)的结果指示软件应用程序的共同行为并不是良性的时停止或终止软件应用程序中的一或多个。

在各种实施例中,行为观测器模块202可经配置以监测移动计算装置102的活动,方法是收集关于应用程序框架或运行时间库中的库应用程序编程接口(api)调用、系统调用api、文件系统和网络连接子系统操作、装置(包括传感器装置)状态改变和其它类似事件的信息。另外,行为观测器模块202可以监测文件系统活动,文件系统活动可以包括搜索文件名称、文件存取的类别(个人信息或普通数据文件)、创建或删除文件(例如,类型exe、zip等)、文件读取/写入/寻找操作、改变文件许可等。

行为观测器模块202也可以通过监测数据网络活动监测移动计算装置102的活动,其可以包括装置所连接到的连接、协议、端口号、服务器/客户端的类型、连接的数量、通信的容积或频率等。行为观测器模块202可以监测电话网络活动,其可以包括监测发出、接收或拦截的呼叫或消息(例如,sms等)的类型和数量(例如,拨打的收费呼叫的数量)。

行为观测器模块202也可以通过监测系统资源使用来监测移动计算装置102的活动,其可以包括监测叉路的数量、存储器存取操作、文件打开的数量等。行为观测器模块202可以监测移动计算装置102的状态,其可以包括监测各种因素,例如,显示器是否是开启或关闭的、装置是否是锁定或解锁的、剩余的电池的量、相机的状态等。行为观测器模块202也可以监测过程间通信(ipc),例如,监测到关键服务(浏览器、合同提供商等)的意图、过程间通信的程度、弹出窗口等。

行为观测器模块202也可以通过监测一或多个硬件组件的驱动器统计数据和/或状态来监测移动计算装置102的活动,这些硬件组件可以包括相机、传感器、电子显示器、wifi通信组件、数据控制器、存储器控制器、系统控制器、存取端口、计时器、外围装置、无线通信组件、外部存储器芯片、电压调节器、振荡器、锁相环、外围桥接和用于支持在移动计算装置102上运行的处理器和客户端的其它类似组件。

行为观测器模块202也可以通过监测一或多个硬件计数器来监测移动计算装置102的活动,所述硬件计数器表示移动计算装置102和/或计算装置子系统的状态或情况。硬件计数器可以包括经配置以存储发生在移动计算装置102中的硬件相关活动或事件的计数值或状态的处理器/核心的特殊目的寄存器。

行为观测器模块202也可以通过监测软件应用程序的动作或操作、从应用程序下载服务器(例如,应用商城服务器)下载的软件、由软件应用程序使用的计算装置信息、呼叫信息、文本消息传送信息(例如,发送sms、阻断sms、读取sms等)、媒体消息传送信息(例如,接收mms)、用户帐户信息、位置信息、相机信息、加速计信息、浏览器信息、基于浏览器通信的内容、基于语音通信的内容、短程无线电通信(例如,蓝牙、wifi等)、基于文本通信的内容、所记录的音频文件的内容、电话簿或联系人信息、联系人列表等来监测移动计算装置102的活动。

行为观测器模块202也可以通过监测移动计算装置102的传输或通信来监测移动计算装置102的活动,所述通信包括包含以下项的通信:语音邮件(voicemailcomm)、装置标识符(deviceidcomm)、用户帐户信息(useraccountcomm)、日历信息(calendarcomm)、位置信息(locationcomm)、所记录的音频信息(recordaudiocomm)、加速计信息(accelerometercomm)等。

行为观测器模块202也可以通过监测指南针信息、计算装置设置、电池寿命、陀螺仪信息、压力传感器、磁传感器、屏幕活动等的使用和更新/改变来监测移动计算装置102的活动。行为观测器模块202可以监测传送到软件应用程序(appnotification)和来自软件应用程序(appnotification)的通知、应用程序更新等。行为观测器模块202可以监测关于第一软件应用程序的状况或事件,所述第一软件应用程序请求第二软件应用程序的下载和/或安装。行为观测器模块202可以监测关于用户验证的状况或事件,例如,密码的输入等。

行为观测器模块202也可以通过监测在移动计算装置102的多个层级处的状况或事件来监测移动计算装置102的活动,所述移动计算装置102的多个层级包括应用程序层级、无线电层级和传感器层级。应用程序层级观测可以包括经由面部辨识软件来观测用户、观测社交流、观测用户输入的笔记、观测关于wallet、和其它类似应用程序或服务的使用的事件。应用程序层级观测还可以包括观测涉及虚拟专用网络(vpn)的使用的事件和关于同步、语音搜索、语音控制(例如,通过说出一个词语来锁定/解锁电话)、语言翻译程序、为了计算的数据的卸载、视频串流、在无用户活动的情况下的相机使用、在无用户活动的情况下的麦克风使用等的事件。

无线电层级观测可以包括在建立无线电通信链路或传输信息、双重/多个订户识别模块(sim)卡、互联网无线电、移动电话网络共享、为了计算卸载数据、装置状态通信、作为游戏控制器或家庭控制器的使用、媒介通信、计算装置同步等之前确定与移动计算装置102的用户交互中的任何一个或多个的出现、存在或数量。无线电层级观测还可以包括监测无线电(wifi、wimax、蓝牙等)的使用以用于定位、同级间(p2p)通信、同步、媒介间通信和/或机器间(m2m)。无线电层级观测可以进一步包括监测网络流量使用、统计数据或配置文件。

传感器层级观测可以包括监测磁传感器或其它传感器以确定移动计算装置102的使用和/或外部环境。举例来说,计算装置处理器可经配置以确定装置是否在皮套中(例如,经由经配置以感测皮套内磁体的磁传感器)或在用户的口袋中(例如,经由通过相机或光传感器检测到的光的量)。检测移动计算装置102在皮套中可以与识别可疑行为相关,举例来说,因为与通过用户的活跃使用相关的活动和功能(例如,拍摄照片或视频、发送消息、进行语音呼叫、记录声音等)在移动计算装置102装在皮套中的同时发生可以是在装置上执行违法过程(例如,跟踪或监视用户)的征兆。

与使用或外部环境相关的传感器层级观测的其它实例可以包括:检测近场通信(nfc)信令、从信用卡扫描仪、条形码扫描仪或移动标签读取器中收集信息、检测通用串行总线(usb)电力充电源的存在、检测已经耦合到移动计算装置102的键盘或辅助装置、检测移动计算装置102已经耦合到另一计算装置(例如,经由usb等)、确定led、闪光、手电筒或光源是否已经是经修改或停用的(例如,恶意停用紧急信令应用程序等)、检测扬声器或麦克风已经开启或供电、检测充电或电源事件、检测移动计算装置102被用作游戏控制器等。传感器层级观测还可以包括:从医学或医疗传感器中收集信息或者通过扫描用户的身体收集信息、从插入到usb/音频插孔中的外部传感器中收集信息、从触感或触觉传感器中收集信息(例如,经由振动器接口等)、收集关于移动计算装置102的热状态的信息等。

为了减少监测到可管理层级的因素的数量,在一个实施例中,行为观测器模块202可经配置以通过监测/观测行为或因素的初始集合来执行粗略观测,所述行为或因素的初始集合是可以造成计算装置的降级的全部因素的较小子集。在一个实施例中,行为观测器模块202可以从云服务或网络中的服务器和/或组件中接收行为和/或因素的初始集合。在一个实施例中,可以在机器学习分类器模型中指定行为/因数的初始集合。

每个分类器模型可以是包括数据和/或信息结构(例如,特征向量、行为向量、组件列表等)的行为模型,所述数据和/或信息结构可以由计算装置处理器使用以评估计算装置的行为的特定特征或实施例。每个分类器模型还可以包括用于监测计算装置中的多个特征、因素、数据点、表项、api、状态、条件、行为、应用程序、过程、操作、组件等(本文中统称为“特征”)的决策标准。分类器模型可以预先安装在计算装置上、从网络服务器中下载或接收、产生于计算装置中,或其任何组合。分类器模型可以通过使用众包解决方案、行为模拟技术、机器学习算法等产生。

每个分类器模型可以分类为完整分类器模型或精益分类器模型。完整分类器模型可以为稳固数据模型,所述数据模型是作为大量训练数据集的函数产生的,其可以包括数千特征和数十亿表项。精益分类器模型可以是从简化数据集中产生的更集中的数据模型,其仅包括/测试与用于确定特定活动是否是进行中的关键活动和/或特定计算装置行为是否并不是良性的最为相关的特征/表项。作为一个实例,装置处理器可以是可经配置以从网络服务器中接收完整分类器模型、在计算装置中基于完整分类器产生精益分类器模型,并且使用本地产生的精益分类器模型来将装置的行为分类为良性或非良性的(即,恶意、性能降低等)。

本地产生的精益分类器模型是产生于计算装置中的精益分类器模型。也就是说,由于现代计算装置(例如,移动装置等)是高度可配置的且复杂的系统,所以用于确定特定装置行为是否是非良性的(例如,恶意或性能降低)的最重要特征在每个装置中可以是不同的。另外,可能需要在每个装置中监测和/或分析特征的不同组合以便所述装置快速地且有效地确定特定行为是否为非良性的。然而,需要监测和分析的特征的精确组合和每个特征或特征组合的相对优先级或重要性通常仅可以使用从其中行为待监测或分析的特定的装置中获得的信息来确定的。出于这些和其它原因,各种实施例可以在其中使用模型的计算装置中产生分类器模型。这些本地分类器模型使得装置处理器能够准确地识别在确定特定的装置上的行为是否是非良性的(例如,造成装置性能降级)中最重要的特定特征。本地分类器模型还允许装置处理器根据特征的相对重要性将所测试或评估的特征优先化以对所述特定装置中的行为进行分类。

装置特定的分类器模型是包括集中数据模型的分类器模型,所述集中数据模型仅包括/测试计算装置特定的特征/表项,所述特征/表项被确定为与在特定计算装置中对活动或行为进行分类最为相关。应用程序特定的分类器模型是包括集中数据模型的分类器模型,所述集中数据模型仅包括/测试与用于评估特定软件应用程序最为相关的特征/表项。通过在计算装置中本地地动态地产生应用程序特定的分类器模型,各种实施例使得装置处理器能够将其监测和分析操作集中于用于确定特定软件应用程序的操作是否有助于该装置的不希望的或性能降级行为的最重要的少量特征。

多应用程序分类器模型可以是包括集中数据模型的本地分类器模型,所述集中数据模型包括或优先化关于与用于确定两个或大于两个特定软件应用程序(或特定类型的软件应用程序)的共同行为是非良性的最为相关的特征/表项的测试。多应用程序分类器模型可以包括测试/评估特征的聚集的集合的聚集特征集合和/或决策节点。装置处理器可经配置以产生多应用程序分类器模型,方法是:识别用于识别在计算装置上运行的两个或大于两个软件应用程序之间的关系、相互作用和/或通信的最为相关的装置特征、识别评估所识别的装置特征中的一个的测试条件、确定所识别的测试条件的优先级、重要性或成功率、根据它们的重要性或成功率优先化或排序所识别的测试条件,并且产生分类器模型以包括所识别的测试条件使得它们是根据它们的所确定的优先级、重要性或成功率排序的。装置处理器还可经配置以通过组合两个或大于两个应用程序特定的分类器模型产生多应用程序分类器模型。

在各种实施例中,装置处理器可经配置以响应于确定两个或大于两个应用程序是串通或协同工作的或应用程序应当作为一组一起得到分析而产生多应用程序分类器模型。装置处理器可经配置以产生用于应用程序的每个所识别群组或类别的多应用程序分类器模型。然而,分析每个群组可能消耗大量的装置的有限的资源。因此,在一个实施例中,装置处理器可经配置以确定应用程序参与串通行为的概率(例如,基于其与其它应用程序的相互作用等),并且仅针对包括存在高概率的串通行为的软件应用程序的群组智能地产生分类器模型。

行为分析仪模块208可经配置以将由行为提取器模块204产生的行为向量应用于分类器模型以确定所监测的活动(或行为)是否是良性或非良性的。在一个实施例中,当行为的行为分析操作的结果并不能提供将行为分类为良性或非良性的足够的信息时行为分析仪模块208可以将行为分类为“可疑”。

行为分析仪模块208可经配置以响应于识别串通软件应用程序、确定某些应用程序应当被评估为一组和/或响应于确定所监测的活动或行为是可疑的而通知行为观测器模块202。作为响应,行为观测器模块202可调整其观测的间隔尺寸(即,监测到计算装置特征的详细的层级)和/或改变基于从行为分析仪模块208接收的信息(例如,实时分析操作的结果)监测的应用程序/因素/行为,产生或收集新的或额外的行为信息,并且发送新的/额外的信息到行为分析仪模块208以用于进一步的分析/分类。

行为观测器模块202与行为分析仪模块208之间的此类反馈通信使得移动计算装置102能够以递归方式增大观测的间隔尺寸(即,进行更加细致或更加详细的观测)或改变所观测到的特征/行为直至共同行为被分类为良性或非良性的、识别可疑或性能降级行为的来源为止;直至达到处理或电池消耗阈值为止;或直至装置处理器确定可疑或性能降级装置行为的来源无法通过观测间隔尺寸的进一步的改变、调整或增大来识别为止。此类反馈通信还使得移动计算装置102能够调整或修改行为向量和分类器模型而不会消耗过量的计算装置的处理、存储器或能源资源。

行为观测器模块202和行为分析仪模块208可单独地或共同地提供计算系统的行为的实时行为分析以从有限的且粗略的观测中识别可疑行为、以动态地确定行为以更详细地观测,并且以动态地确定观测所需要的详细的层级。这使得移动计算装置102能够有效地识别和防止问题而无需装置上的大量的处理器、存储器或电池资源。

在各种实施例中,移动计算装置102的装置处理器可经配置以识别需要密切监测的关键数据资源、监测(例如,经由行为观测器模块202)当存取关键数据资源时软件应用程序所进行的api调用、识别api调用的模式为指示通过两个或大于两个软件应用程序的非良性行为、基于api调用的所识别的模式和资源使用产生行为向量、使用行为向量来执行行为分析操作(例如,经由行为分析仪模块208),并且基于行为分析操作确定软件应用程序中的一或多个是否是非良性的。

在一个实施例中,装置处理器可经配置以识别通过在计算装置运行的软件应用程序使用的最频繁的api、存储关于在装置的存储器中的api记录中的所识别的热门api的使用的信息,并且基于存储在api记录中的信息执行行为分析操作以识别非良性行为。

在各种实施例中,移动计算装置102可经配置以结合网络服务器工作以智能地且有效地识别与确定活动或行为是否是非良性的最相关的特征、因素和数据点。举例来说,装置处理器可经配置以从网络服务器接收完整分类器模型,并且使用接收到的完整分类器模型来产生特定针对于在装置上运行的计算装置或软件应用程序的特征和功能性的精益分类器模型(即,数据/行为模型)。装置处理器可使用完整分类器模型来产生不同复杂度水平(或“精益度”)的精益分类器模型的家族。可以常规地应用精益分类器模型的最精益家族(即,基于最少数量的测试条件的精益分类器模型)直至遇到模型无法将其分类为良性或非良性(并且因此被模型分类为可疑)的行为,此时可以应用更加稳固(即,不太精益)的精益分类器模型以尝试对行为进行分类。可以应用在所述家族的所产生精益分类器模型内的甚至更加稳固的精益分类器模型的应用直至实现行为的确定性分类。以此方式,装置处理器可以通过将最完整但是资源密集型精益分类器模型的使用限制于其中需要稳固分类器模型以确定性地对行为进行分类的那些情况而在效率与准确性之间形成平衡。

在各种实施例中,装置处理器可经配置以通过将包含于完整分类器模型中的有限状态机表示/表达转换到增强的决策柱中产生精益分类器模型。装置处理器可基于装置特定的特征、条件或配置删除或挑选增强的决策柱的完整集合以产生包括包含于完整分类器模型中的增强的决策柱的子集的分类器模型。装置处理器可随后使用精益分类器模型以智能地监测、分析和/或对计算装置行为进行分类。

增强的决策柱是具有恰好一个节点(并且因此一个测试问题或测试条件)和权重值的一个层级决策树,并且因此较适合于在数据/行为的二进制分类中使用。也就是说,将行为向量应用于增强的决策柱引起二进制回答(例如,是或否)。举例来说,如果通过增强的决策柱测试的问题/条件是“短消息服务(sms)传输的频率小于每分钟x”,那么将“3”的值应用于增强的决策柱将引起“是”的回答(对于“小于3”的sms传输)或“否”的回答(对于“3或大于3的”sms传输)。

增强的决策柱是高效的因为它们是非常简单且原始的(并且因此并不需要相当大的处理资源)。增强的决策柱也是非常可并行化的,并且因此许多柱可以并行/同时应用或测试(例如,通过计算装置中的多个核心或处理器)。

在一个实施例中,装置处理器可经配置以产生包括分类器标准的子集的精益分类器模型,所述分类器标准的子集包含于完整分类器模型中并且仅那些分类器标准对应于与计算装置配置、功能性和连接的/包括的硬件相关的特征。装置处理器可以使用这一精益分类器模型来仅监测存在或与装置相关的那些特征和功能。装置处理器可随后周期性修改或重新产生精益分类器模型以基于计算装置的当前状态和配置包括或去除各种特征和对应的分类器标准。

作为一个实例,装置处理器可经配置以接收包含与行为模型(例如,分类器)的完整特征集合相关联的决策柱的大型增强的决策柱分类器模型,并且从大型分类器模型中导出一或多个精益分类器模型,方法是仅从与计算装置的当前配置、功能性、操作状态和/或连接的/包含的硬件相关的大型分类器模型中选择特征,并且在精益分类器模型中包含对应于所选择的特征的增强的决策柱的子集。在此实施例中,对应于与计算装置相关的特征的分类器标准可以是包含于测试所选择的特征中的至少一个的大型分类器模型中的那些增强的决策柱。装置处理器可随后周期性地修改或重新产生增强的决策柱精益分类器模型以基于计算装置的当前状态和配置包含或去除各种特征以使得精益分类器模型继续包含应用程序特定的或装置特定的特征增强的决策柱。

此外,装置处理器也可以动态地产生应用程序特定的分类器模型,所述应用程序特定的分类器模型识别与特定的软件应用程序(钱包和)相关和/或与特定类型的软件应用程序(例如,游戏、导航、金融、新闻、生产率等)相关的条件或特征。这些分类器模型可以产生为包含包含于完整分类器模型中的决策节点的简少的且更集中的子集(或包含包含于从接收到的完整分类器模型中产生的更精益的分类器模型中的那些的简少的且更集中的子集)。这些分类器模型可以组合以产生多应用程序分类器模型。

在各种实施例中,装置处理器可经配置以针对在系统中的每个软件应用程序和/或针对在系统中的每种类型的软件应用程序产生基于应用程序的分类器模型。所述装置处理器还可经配置以动态地识别高风险或易受滥用影响的软件应用程序和/或应用程序类型(例如,金融应用程序、销售点应用程序、生物计量传感器应用程序等),并且产生基于应用程序的分类器模型以仅用于被识别为高风险或易受滥用影响的软件应用程序和/或应用程序类型。在各种实施例中,装置处理器可经配置以动态地、反应性地、主动地和/或每次安装或更新新应用程序时产生基于应用程序的分类器模型。

每个软件应用程序通常在计算装置上执行多个任务或活动。在其中某些任务/活动在计算装置中执行的特定的执行状态可以是行为或活动是否有益于额外的或更接近的审查、监测和/或分析的较强指示。因而,在各种实施例中,装置处理器可经配置以使用识别实际执行状态的信息,在实际执行状态中执行某些任务/活动以集中其行为监测和分析操作,并且更好的确定活动是否是关键活动和/或活动是否是非良性的。

在各种实施例中,装置处理器可经配置以使通过软件应用程序执行的活动/任务与其中执行那些活动/任务的执行状态相关联。举例来说,装置处理器可经配置以产生行为向量,所述行为向量包括从监测子向量或数据结构中的所指示的组件中收集的行为信息,所述行为信息列出了执行状态与之相关的软件的特征、活动或操作(例如,位置存取、sms读取操作、传感器存取等)。在一个实施例中,这一子向量/数据结构可以结合识别其中观测到每个特征/活动/操作的执行状态的阴影特征值子向量/数据结构来存储。作为一个实例,装置处理器可产生包括“location_background”数据字段的行为向量,当装置处理器在背景状态中运行时所述数据字段的值识别软件应用程序存取位置信息的数量或速率。这使得装置处理器能够分析此执行状态信息而不不依赖于计算装置的其它所观测到的/所监测的活动和/或与计算装置的其它所观测到的/所监测的活动并行。以此方式产生行为向量还可以使得系统能够随时间推移聚集信息(例如,频率或速率)。

在各种实施例中,装置处理器可经配置以产生行为向量以包括可以输入到机器学习分类器中的决策节点的信息以产生对关于监测活动的查询的回答。

在各种实施例中,装置处理器可经配置以产生行为向量以包括执行信息。执行信息可以包含于行为向量中作为行为的一部分(例如,通过后台过程相机在3秒中使用5次,通过前台过程相机在3秒中使用3次等)或者作为独立特征的一部分。在一个实施例中,执行状态信息可以包含于行为向量中作为阴影特征值子向量或数据结构。在一个实施例中,行为向量可存储与同执行状态相关的特征、活动、任务相关联的阴影特征值子向量/数据结构。

图3说明根据一个实施例的分析计算装置中的行为的方法的方法300。在块302中,计算装置的硬件模块或处理器可以执行轻量分析操作以确定是否存在非良性行为的例子。在确定块304中,硬件模块或处理器可以基于在块302中执行轻量分析操作的结果确定是否存在增大的安全风险。响应于基于轻量分析操作确定不存在增大的安全风险(即,确定块304=“否”),在确定块308中硬件模块或处理器可以确定是否已经从另一计算装置中接收指示存在增大的安全风险的消息。响应于确定未接收到此类消息(即,确定框304和308=“否”),在302块中硬件模块或处理器可以继续执行轻量分析操作。

响应于基于轻量分析操作确定存在增大的安全风险(即,确定块304=“是”),例如响应于检测到非良性行为,在306块中硬件模块或处理器可以发送消息到其它计算装置以通知它们增大的安全风险,并且在310块中执行更加稳固的分析操作。响应于从另一计算装置中接收指示存在增大的安全风险的消息(即,确定块308=“是”)在310块中计算装置还可以执行更加稳固的分析操作。在块310中执行更加稳固的分析操作可以包括运行重量或计算密集型扫描引擎或过程、使用特征检测技术、收集装置中的更详细的行为信息、使用更加稳固的分类器模型来执行加强分析操作等。

在一个实施例中,在块310中执行更加稳固的分析操作的同时,硬件模块或处理器可以监测自识别到非良性行为的另一例子起的时间(或响应于来自另一计算装置的消息当初始更加稳固的分析时识别到的任何非良性行为)。如果在限定的时间量内没有观测到非良性行为的其它例子(或例子),那么硬件模块或处理器可以恢复到正常层级的审查以节省处理资源。处理器可以在其之后返回到执行轻量分析操作的所限定的时间周期可以是预定义时间周期或动态地确定的时间周期。预定义时间周期可以由装置制造商、服务提供商(例如,部分的装置供应信息)或安全服务(例如,通过安全服务的服务器传送到计算装置)限定。动态地确定的时间周期可以基于可用于计算装置的信息通过计算装置的处理器来确定。举例来说,基于非良性行为的检测到的本质或数量时间周期可以增大或减小。因此,如果硬件模块或处理器检测到对计算装置具有相对地严重的影响或指示易受攻击的非良性行为,那么硬件模块或处理器可以动态地增大将执行更加稳固的分析操作的所限定的时间周期。类似地,如果识别到若干非良性行为,那么处理器可以动态地增大将执行更加稳固的分析操作的所限定的时间周期。另一方面,如果所识别的非良性行为是轻微本质的或不大可能使得计算装置易受攻击,那么硬件模块或处理器可以动态地减小将执行更加稳固的分析操作的所限定的时间周期。当响应于从另一计算装置中接收消息(即,确定块308=“是”)在块310中执行稳健分析操作时,硬件模块或处理器可以动态地确定将基于计算装置与第二计算装置之间的距离执行更加稳固的分析操作的时间周期。因此,作为在块310中的操作的部分可以包括动态地确定将基于安全风险的本质执行更加稳固的分析操作的所限定的时间周期、所识别的非良性行为例子的数量、所识别的非良性行为的本质或严重程度和/或计算装置与第二计算装置之间的距离。

图4说明使用精益分类器模型以对计算装置的行为进行分类的实施例方法400。在各种实施例中,方法400可以执行为轻量分析操作的部分或稳健分析操作的部分。在块402中,计算装置的处理器或处理核心可以执行观测以从在装置系统的各种层级处所指示的各种组件中收集行为信息。在一个实施例中,这可以经由上文参考图2所论述的行为观测器模块202实现。在块404中,处理核心可以产生表征观测、所收集的行为信息和/或移动装置行为的行为向量。另外,在块404中,处理核心可以使用从网络服务器中接收的完整分类器模型以产生不同复杂度水平(或“精益度”)的精益分类器模型或精益分类器模型的家族。在一个实施例中,处理核心可以通过剔除包含于完整分类器模型中的增强的决策柱的家族以产生包含减少的数量的增强的决策柱和/或评估有限数量的测试条件的精益分类器模型来实现这一点。

在块406中,处理核心可以选择在所述精益分类器模型的家族中的最精益的分类器(即,基于最少数量的不同的移动装置状态、特征、行为或条件的模型),但所述最精益的分类器尚未由移动装置评估或应用。在一个实施例中,这可以通过选择分类器模型的有序列表中的第一分类器模型的处理核心实现。

在块408中,处理核心可以将所收集的行为信息或行为向量应用于所选择的精益分类器模型中的每个增强的决策柱。因为增强的决策柱是二进制决策并且精益分类器模型是通过基于相同测试条件选择许多二进制决策产生的,所以将行为向量应用于精益分类器模型中的增强的决策柱的过程可以在并行操作中执行。替代地,行为向量可经截断或过滤以仅包含有限数量的包含于精益分类器模型中的测试条件参数,从而进一步减少应用所述模型时的计算努力。

在块410中,处理核心可以计算或确定将所收集的行为信息应用于精益分类器模型中的每个增强的决策柱的结果的加权平均值。在块412中,处理核心可以比较所计算的加权平均值与阈值。在确定块414中,处理核心可以确定这一比较的结果和/或由应用所选择的精益分类器模型产生的结果是否是可疑的。举例来说,处理核心可以确定这些结果是否可用于以较高程度的置信度将行为分类为恶意或良性的,并且如果不是则将行为作为可疑的对待。

如果处理核心确定结果是可疑的(例如,确定块414=“是”),那么处理核心可以重复在块406-412中的操作以选择和应用评估更多装置状态、特征、行为或条件的较强(即,不太精益)分类器模型直至行为以较高程度的置信度被分类为恶意或良性的为止。如果处理核心确定结果不是可疑的(例如,确定块414=“否”),例如通过确定行为可以较高程度的置信度被分类为恶意或良性的,那么在块416中,处理核心可以使用产生于块412中的比较的结果以将移动装置的行为分类为良性或潜在地恶意的。

在替代实施例方法中,上文所述的操作可以依序通过以下各项而实现:选择并非已经在精益分类器模型中的增强的决策柱;识别取决于与所选择的决策柱相同的移动装置状态、特征、行为或条件(且因此可以基于一个确定结果应用)的全部其它增强的决策柱;在精益分类器模型中包含所选择的和取决于相同移动装置状态、特征、行为或条件的全部所识别的其它增强的决策柱;并且以等于测试条件的所确定数量的次数重复所述过程。因为取决于与所选择的增强的决策柱相同的测试条件的全部增强的决策柱每次被添加到精益分类器模型,所以限制执行这一过程的次数将限制包含于精益分类器模型中的测试条件的数量。

图5说明适用于各种实施例中的适用于产生增强的决策树/分类器的实例增强方法500。在操作502中,处理器可以产生和/或执行决策树/分类器、从决策树/分类器的执行中收集训练样本,并且基于训练样本产生新的分类器模型(h1(x))。训练样本可以包括从移动装置行为、软件应用程序或移动装置中的过程的先前观测或分析中收集的信息。训练样本和/或新分类器模型(h1(x))可以基于包含于先前分类器中的问题的类型或测试条件和/或基于从行为分析仪模块208的先前数据/行为模型或分类器的执行/应用程序中收集的准确性或性能特性产生。在操作504中,处理器可以增强(或增大)通过所产生的决策树/分类器(h1(x))错分类的表项的加权以产生第二新树/分类器(h2(x))。在一个实施例中,训练样本和/或新分类器模型(h2(x))可以基于分类器的先前执行或使用(h1(x))的错误率而产生。在一个实施例中,训练样本和/或新分类器模型(h2(x))可以基于确定为造成分类器的先前执行或使用中的错误率或数据点的错分类的属性而产生。

在一个实施例中,错分类表项可以基于它们的相对准确性或有效性加权。在操作506中,处理器可以增强(或增大)通过所产生的第二树/分类器(h2(x))错分类的表项的加权以产生第三新树/分类器(h3(x))。在操作508中,可重复504-506的操作以产生“t”数量的新树/分类器(ht(x))。

通过增强或增大通过第一决策树/分类器(h1(x))错分类的表项的加权,第二树/分类器(h2(x))可以更准确地对通过第一决策树/分类器(h1(x))错分类的实体进行分类,但是也可能对通过第一决策树/分类器(h1(x))正确地分类的实体中的一些进行错分类。类似地,第三树/分类器(h3(x))可准确地对由第二决策树/分类器(h2(x))错分类的实体进行分类并且对通过第二决策树/分类器(h2(x))正确地分类的实体中的一些进行错分类。也就是说,产生树/分类器h1(x)-ht(x)的家族可能未引起系统作为整体聚集,而是引起多个决策树/分类器可以并行地执行。

图6说明根据一个实施例用于执行动态和自适应观测的实例方法600。在各种实施例中,方法600可以执行为轻量分析操作的部分或稳健分析操作的部分。在块602中,移动装置处理器(或处理核心)可以通过监测/观测可以造成移动装置的降级的大量因素/行为的子集而执行粗略观测。在块603中,移动装置处理器可以基于粗略观测产生表征粗略观测和/或移动装置行为的行为向量。在块604中,移动装置处理器可识别与粗略观测相关联的可能潜在地造成移动装置的降级的子系统、过程和/或应用程序。举例来说,这可以通过比较从多个来源接收的信息与从移动装置的传感器接收的情境信息而实现。在块606中,移动装置处理器可基于粗略观测执行行为分析操作。在一个实施例中,作为块603和604的部分,移动装置处理器可以执行上文参考图2-5所论述的操作中的一或多个。

在确定块608中,移动装置处理器可以确定可疑行为或潜在问题是否可以基于行为分析的结果得到识别和校正。当移动装置处理器确定可疑行为或潜在问题可以基于行为分析的结果得到识别和校正时(即,确定块608=“是”),在块618中,处理器可以起始过程以校正行为并且返回到块602以执行额外的粗略观测。

当移动装置处理器确定可疑行为或潜在问题无法基于行为分析的结果得到识别和/或校正时(即,确定块608=“否”),在确定块609中移动装置处理器可以确定是否存在问题的可能性。在一个实施例中,移动装置处理器可以确定存在问题的可能性,方法是计算移动装置遇到潜在问题和/或参与可疑行为的概率,并且确定计算出的概率是否大于预定阈值。当移动装置处理器确定计算出的概率并不大于预定阈值和/或并不存在可疑行为或潜在问题存在和/或可检测的可能性(即,确定块609=“否”)时,处理器可以返回到块602以执行额外的粗略观测。

当移动装置处理器确定存在可疑行为或潜在问题存在和/或可检测的可能性(即,确定块609=“是”)时,在块610中,移动装置处理器可以执行包括在所识别的子系统、过程或应用程序上执行更深入的记录/观测或最终记录的更加稳固的分析操作。在块612中,移动装置处理器可在所识别的子系统、过程或应用程序上执行更深入且更详细的观测。在块614中,移动装置处理器可以基于更深入且更详细的观测执行进一步和/或更深入的行为分析。在确定块608中,移动装置处理器可以同样确定可疑行为或潜在问题是否可以基于更深入的行为分析的结果得到识别和校正。当移动装置处理器确定可疑行为或潜在问题无法基于更深入的行为分析的结果得到识别和校正时(即,确定块608=“否”),处理器可以重复在块610-614中的操作直至细节水平足够精细以识别问题或直至确定所述问题无法通过额外的细节得到识别或不存在问题为止。

当移动装置处理器确定可疑行为或潜在问题可以基于更深入的行为分析的结果得到识别和校正时(即,确定块608=“是”),在块618中,移动装置处理器可以执行操作以校正问题/行为,并且处理器可以返回到块602以执行额外的操作。

在一个实施例中,作为方法600的块602-618的部分,移动装置处理器可以执行系统的行为的实时行为分析以从有限的且粗略的观测中识别可疑行为、以动态地确定行为以更详细地观测,并且以动态地确定观测所需要的细节的精确层级。这使得移动装置处理器能够有效地识别问题并且防止问题的发生,而无需使用装置上的大量的处理器、存储器或电池资源。

各种实施例可以在多种计算装置上实施,在图7中以智能电话的形式说明所述计算装置的一个实例。智能电话700可以包括处理器702,所述处理器耦合到内部存储器704、显示器712和扬声器714。另外,智能电话700可以包括用于发送和接收电磁辐射的天线,所述天线可连接到耦合到处理器702的无线数据链路和/或蜂窝式电话收发器708。智能电话700通常还包括用于接收用户输入的菜单选择按钮或摇臂开关720。

典型智能电话700还包括声音编码/解码(codec)电路706,所述电路将从麦克风接收的声音数字化为适合于无线发射的数据包,且解码所接收的声音数据包以产生提供到扬声器以产生声音的模拟信号。而且,处理器702、无线收发器708及编解码器706中的一或多个可以包括数字信号处理器(dsp)电路(未单独地示出)。

实施例方法的部分可以在客户服务器架构中实现,其中处理中的一些发生在服务器中,例如,维持普通操作性行为的数据库,这可以通过移动装置处理器存取同时执行实施例方法。此类实施例可以在多种市售服务器装置中的任一者上实施,例如,图8中说明的服务器800。此类服务器800通常包括耦合到易失性存储器802和例如磁盘驱动器803等大容量非易失性存储器的处理器801。服务器800还可以包括软盘驱动器、压缩光盘(cd)或dvd光盘驱动器804,其耦合到处理器801。服务器800还可以包括网络接入端口806,其耦合到处理器801以用于建立与网络805(例如耦合到其它广播系统计算机和服务器的局域网)的数据连接。

处理器702、801可为可通过软件指令(应用程序)配置以执行多种功能(包含下文所描述的各种实施例的功能)的任何可编程微处理器、微型计算机或多处理器芯片。在一些移动装置中,可以提供多个处理器702,例如,一个处理器专用于无线通信功能,并且一个处理器专用于运行其它应用程序。通常,软件应用程序在被存取及加载到处理器702、801中之前可存储于内部存储器704、802、803中。处理器702、801可以包括足以存储应用程序软件指令的内部存储器。

在将来可使用或预期若干不同蜂窝式及移动通信服务及标准,其全部可实施并受益于各种实施例。此类服务及标准包括(例如)第三代合作伙伴计划(3gpp)、长期演进(lte)系统、第三代无线移动通信技术(3g)、第四代无线移动通信技术(4g)、全球移动通信系统(gsm)、全球移动电信系统(umts)、3gsm、通用包无线电服务(gprs)、码分多址(cdma)系统(例如,cdmaone、cdma1020tm)、gsm演进增强数据速率(edge)、高级移动电话系统(amps)、数字amps(is-136/tdma)、演进数据优化(ev-do)、数字增强型无绳电信(dect)、全球微波接入互操作性(wimax)、无线局域网(wlan)、wi-fi安全访问协议i&ii(wpa、wpa2),以及集成数字增强型网络(iden)。这些技术中的每一个涉及(例如)语音、数据、信令和/或内容消息的发射及接收。应理解,对与个别电信标准或技术相关的术语及/或技术细节的任何参考是仅出于说明性目的,且并不意图将权利要求书的范围限制为特定通信系统或技术,除非在权利要求语言中具体叙述。

术语“性能降级”在本申请中用于指代多种多样的不希望的移动装置操作和特征,例如较长处理时间、较慢实时响应性、降低的电池寿命、私人数据的损失、恶意经济活动(例如,发送未经授权的收费短信)、拒绝服务(dos)、与征用移动装置或利用电话以用于间谍或僵尸网络活动相关的操作等。

用于在可编程处理器上执行以用于执行各种实施例的操作的计算机程序代码或“程序代码”可以例如c、c++、c#、smalltalk、java、javascript、visualbasic、结构化查询语言(例如,transact-sql)、perl或各种其它编程语言等高级编程语言编写。存储在计算机可读存储媒体上的程序代码或程序如在本申请中所使用可以指机器语言代码(例如,目标代码),所述机器语言代码的格式可由处理器理解。

许多移动计算装置操作系统内核被组织到用户空间(其中运行非特许代码)和内核空间(其中运行特许代码)中。这一分离在和其它通用公共许可证(gpl)环境中是尤其重要的,在所述环境中作为内核空间的一部分的代码必须是gpl授权的,而在用户空间中运行的代码可以不是gpl授权的。应理解除非另外明确地陈述,否则此处所讨论的各种软件组件/模块可以在内核空间或用户空间中实施。

上述方法描述和过程流程图仅仅作为说明性实例提供,并且其并不意图要求或暗示各种实施例的步骤必须以所呈现的顺序进行。如所属领域的技术人员将了解,可以任何次序执行前述实施例中的步骤的次序。例如“此后”、“接着”、“接下来”等词无意限制步骤的次序;这些词仅用于引导读者浏览对方法的描述。另外,举例来说,使用冠词“一”、“一个”或“所述”对单数形式的权利要求要素的任何参考不应被解释为将所述要素限制为单数。

如本申请中所使用,术语“组件”、“模块”、“系统”、“引擎”、“发生器”、“管理器”等等意图包括计算机相关的实体,例如(但不限于)硬件、固件、硬件与软件的组合、软件或执行中的软件,其被配置成执行特定操作或功能。举例来说,组件可为但不限于在处理器上运行的过程、处理器、对象、可执行程序、执行线程、程序和/或计算机。借助于说明,在计算装置上运行的应用程序以及所述计算装置可被称为组件。一或多个组件可以驻留在过程和/或执行线程内,并且组件可以局部化于一个处理器或核心上和/或分布在两个或大于两个处理器或核心之间。另外,这些组件可以从具有存储在其上的各种指令和/或数据结构的各种非暂时性计算机可读媒体中执行。组件可以借助于本地和/或远程过程、功能或过程调用、电子信号、数据包、存储器读取/写入和其它已知的网络、计算机、处理器和/或过程相关通信方法进行通信。

结合本文揭示的实施例所描述的各种说明性逻辑块、模块、电路及算法步骤可实施为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件与软件的此可互换性,上文已大体上就其功能性来说描述了各种说明性组件、块、模块、电路和步骤。此类功能性是实施为硬件还是软件取决于具体应用及强加于整个系统的设计约束。所属领域的技术人员可以针对每一特定应用程序以不同方式来实施所描述的功能性,但此类实施方案决策不应被解释为会导致脱离本发明的范围。

用于实施结合本文中所揭示的实施例而描述的各种说明性逻辑、逻辑块、模块和电路的硬件可用以下各项来实施或执行:通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或经设计以执行本文中所描述的功能的其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件,或其任何组合。通用处理器可为多处理器,但在替代方案中,处理器可为任何常规的处理器、控制器、微控制器或状态机。处理器也可以被实施为计算装置的组合,例如,dsp和多处理器的组合、多个多处理器、一或多个多处理器结合dsp核心,或任何其它此类配置。替代地,可由特定地针对给定功能的电路来执行一些步骤或方法。

在一或多个示例性实施例中,所描述的功能可以在硬件、软件、固件或其任何组合中实施。如果在软件中实施,那么所述功能可以作为一或多个处理器可执行指令或代码存储在非暂时性计算机可读储存媒体或非暂时性处理器可读存储媒体上。本文揭示的方法或算法的步骤可体现于可驻留在非暂时性计算机可读或处理器可读存储媒体上的处理器可执行软件模块中。非暂时性计算机可读或处理器可读媒体可为可由计算机或处理器存取的任何存储媒体。借助实例但非限制,此类非暂时性计算机可读或处理器可读媒体可包含ram、rom、eeprom、快闪存储器、cd-rom或其它光盘存储器、磁盘存储器或其它磁性存储装置,或可用于以指令或数据结构的形式存储所要的程序代码且可由计算机存取的任何其它媒体。如本文中所使用的磁盘和光盘包括压缩光盘(cd)、激光光盘、光学光盘、数字多功能光盘(dvd)、软盘和蓝光光盘,其中磁盘通常以磁性方式再现数据,而光盘用激光以光学方式再现数据。以上各者的组合还包含在非暂时性计算机可读和处理器可读媒体的范围内。另外,方法或算法的操作可作为代码和/或指令中的一者或任何组合或集合而驻留在可并入到计算机程序产品中的非暂时性处理器可读媒体和/或计算机可读媒体上。

提供对所揭示的实施例的先前描述以使所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易了解对这些实施例的各种修改,且可在不脱离本发明的精神或范围的情况下将本文定义的一般原理应用于其它实施例。因此,本发明并不意图限于本文中所示的实施例,而应被赋予与随附权利要求书和本文中所揭示的原理和新颖特征相一致的最广泛范围。

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