经由多个设备的多因子认证的制作方法

文档序号:24398488发布日期:2021-03-27 00:01阅读:225来源:国知局
经由多个设备的多因子认证的制作方法

1.本发明一般涉及多因子认证领域,尤其涉及使用多于一个计算设备提供多因子认证。


背景技术:

2.今天,当使用智能手机时,通过网站访问你的银行只需轻按几次。通常,所需要的是用户名和密码。一旦用户提交了这些凭证,用户就“进入”并且可以访问他们的银行,就像他们站在柜员面前一样。一些银行需要多因子认证(mfa)。简单地说,mfa是认证方法,其中,在授权用户访问之前,由用户向认证机制呈现两条或更多条“证据”(或因子)。这些因子包括:(i)知识,即用户并且只有用户知道的事物;(ii)财产,例如,用户并且只有用户拥有的事物;以及(iii)固有性,即,用户并且只有用户是。


技术实现要素:

3.本发明的实施例包括一种用于用多于一个计算设备提供多因子认证的方法,在一个实施例中,识别用户对于多个计算设备的使用信息。基于所识别的所述用户的使用信息来开发所述用户的所述多个计算设备中的每个计算设备的使用模式。接收所述用户访问所述多个计算设备中的第一计算设备上的应用的指示。所述应用需要用于与所述应用相关联的认证过程的一个或多个凭证。确定所述用户使用所述第一计算设备访问所述应用是否遵循所述用户的所述开发的使用模式。响应于确定所述用户使用所述第一计算设备访问所述应用不遵循所述用户的所述开发的使用模式,中断与所述应用相关联的所述认证过程。
附图说明
4.图1描绘了根据本发明实施例的计算环境的功能框图;
5.图2描绘了根据本发明实施例的用于使用多于一个计算设备提供多因子认证的程序的流程图;以及
6.图3示出了根据本发明的实施例的图1的计算环境的组件的框图。
具体实施方式
7.本发明的实施例认识到,当使用因特网时,尤其是当可能涉及敏感的个人信息时,安全性是最重要的。在过去的几年中已经发生了若干高度公共的数据泄漏;在所述泄漏中,诸如出生日期、地址、社会安全号码和信用卡号码的个人信息已经被盗取。这些数据泄漏使公司花费数百万美元。除了财务花费之外,消费者对遭受数据泄漏的公司失去信心。此外,当用户的个人数据被窃取时,数据泄漏可能在更个人化的级别上发生。寻找减少(如果不能消除)数据泄漏的方式实际上影响了智能电话的每个人。
8.本发明的实施例认识到可以存在一种用于使用多于一个计算设备提供多因子认证的方法、计算机程序产品和计算机系统。在实施例中,该方法、计算机程序产品和计算机
系统注册用户所利用的多个设备,学习用户的习惯,并且基于用户的习惯为用户开发使用模式。进一步,当确定异常使用时,所述方法、计算机程序产品和计算机系统能够中断设备使用并且要求在网站的授权认证之前使用用于提交第二因子凭证的新设备。对新设备的需求有助于防止例如发现智能手机上有银行网站缓存凭证的个人对网站的欺诈性访问。当个人试图在智能手机所有者的正常使用模式之外访问银行网站时,该方法、计算机程序产品和计算机系统将在授权访问该网站之前要求来自某个其他计算设备的第二因子凭证。
9.说明书中对“一个实施例”、“示例实施例”等的引用指示所描述的实施例可以包括特定特征、结构或特性。此外,这些短语不一定是指相同的实施例。此外,当结合实施例描述特定特征、结构或特性时,认为结合其它实施例来影响这种特征、结构或特性是在本领域技术人员的知识范围内的,而不管是否明确描述。
10.现在将参照附图详细描述本发明。
11.图1是根据本发明的一个实施例,说明计算环境(通常指定为100)的功能框图。图1仅提供了一种实现的图示,并不暗示对其中可实现不同实施例的系统和环境的任何限制。在不背离权利要求书所陈述的本发明的范围的情况下,所属领域的技术人员可对所描绘的实施例作出许多修改。
12.在一个实施例中,计算环境100包括通过网络110互连的计算设备120-1、计算设备120-2、计算设备120-n和服务器设备130。在示例实施例中,计算环境100包括通过网络110与计算设备120-1、计算设备120-2、计算设备120-n和服务器设备130互连的其他计算设备(图1中未示出),诸如智能手表、蜂窝电话、附加智能电话、可穿戴技术、平板电脑、附加膝上型计算机、附加台式计算机、其他计算机服务器或本领域已知的任何其他计算机系统。为了便于阅读,当讨论计算设备120-1、计算设备120-2、计算设备120-n中的任何一个的特征时,将使用术语计算设备120-n。
13.在本发明的实施例中,计算设备120-n和服务器设备130连接到网络110,这使得计算设备120-n和服务器设备130能够访问其它计算设备和/或不直接存储在计算设备120-n和服务器设备130上的数据。网络110可以是例如短程、低功率无线连接、局域网(lan)、电信网络、诸如因特网的广域网(wan)、或这三者的任何组合,并且包括有线、无线、或光纤连接。在一个实施例中,网络110包括一个或多个有线和/或无线网络,其能够接收和发送数据、语音和/或视频信号,包括多媒体信号,其包括语音、数据和视频信息。通常,根据本发明的实施例,网络110是支持计算设备120-n和服务器设备130以及连接到网络110的任何其它计算设备(图1中未示出)之间的通信的连接和协议的任何组合。在一个实施例中,由计算环境100中的另一计算设备(图1中未示出)接收的数据经由网络110被传送到计算设备120-n和服务器设备130。
14.在本发明的实施例中,计算设备120-n和服务器设备130可以是膝上型、平板或上网本个人计算机(pc)、台式计算机、个人数字助理(pda)、智能电话、标准蜂窝电话、智能手表或任何其他可穿戴技术、或能够与计算环境100内的任何其他计算设备通信的任何其他手持式可编程电子设备中的一个。根据实施例,计算设备120和服务器设备130可以是独立的计算设备、管理服务器、web服务器、移动计算设备、或能够接收、传送和处理数据的任何其他电子设备或计算系统。在其他实施例中,计算设备120-n和服务器设备130可以表示诸如在云计算环境中利用多个计算机作为服务器系统的计算系统。在某些实施例中,计算设
备120-n和服务器设备130表示利用集群计算机和组件(例如,数据库服务器计算机、应用服务器计算机等)的计算机系统,当由计算环境100的元素访问时,集群计算机和组件充当单个无缝资源池。通常,计算设备120-n和服务器设备130代表能够执行计算机可读程序指令的任何电子设备或电子设备的组合。在一个实施例中,计算环境100包括任何数量的计算设备120-n和服务器设备130。根据本发明的实施例,计算设备120-n和服务器设备130可以包括如参考图3进一步详细描绘和描述的内部和外部硬件组件。计算设备120-n和服务器设备130还可以包括显示器140、用户接口(ui)150、应用160、存储器170和智能认证程序180。
15.根据本发明的实施例,显示器140是用于台式计算机、膝上型计算机、平板计算机、智能电话、智能手表等的电子可视设备。显示器140可以包括触摸屏,该触摸屏是层叠在显示器顶部的输入设备,用于允许用户通过利用特殊触笔和/或一个或多个手指触摸显示器140,经由简单或多触摸手势来控制电子设备。显示器140显示用户接口150以及打开的程序和应用,允许服务器设备130的用户经由键盘和鼠标(图1中未示出)与打开的程序和应用交互。显示器140可以是薄膜晶体管液晶显示器(tft-lcd)、平板led(发光二极管)显示器或阴极射线管(crt)。显示器140可以经由vga(视频图形阵列)、dvi(数字视频接口)、hdmi(高清多媒体接口)或本领域已知的任何其他连接类型连接到服务器设备130。
16.在实施例中,用户接口150在用户计算设备120-n、服务器设备130和智能认证程序180之间提供接口。用户接口150可以是图形用户接口(gui)或web用户接口(wui),并且可以显示文本、文档、web浏览器窗口、用户选项、应用接口和用于操作的指令,并且包括程序呈现给用户的信息(诸如图形、文本和声音)以及用户采用来控制程序的控制序列。用户接口150还可以是在用户计算设备120-n、服务器设备130和智能认证程序180之间提供接口的移动应用软件。移动应用软件或“app”是被设计成在智能电话、平板计算机和其他移动设备上运行的计算机程序。用户接口150使得服务器设备130的用户能够与计算设备120-n、智能认证程序180和图1中未示出的其他计算设备交互。
17.根据本发明的实施例,应用160包括需要来自用户的至少一个凭证来访问的多个应用。在实施例中,应用160的示例包括但不限于银行应用、医疗门户、医疗保险应用、虚拟专用网络、购物应用、政府应用、社交媒体应用等。根据本发明的实施例,来自用户的至少一个凭证包括但不限于用户标识(用户id)、密码、个人识别号码(pin)、软件密钥等。
18.在实施例中,存储器170是由智能认证程序180和计算设备120-n和服务器设备130上的任何其他程序和应用写入和/或读取的存储装置。在一个实施例中,存储器170驻留在服务器设备130上。在其他实施例中,存储器170驻留在计算环境100中的计算设备120-n或任何其他设备(未示出)上、云存储中或经由网络110可访问的另一计算设备上。在又一实施例中,存储器170表示服务器装置130内的多个存储装置。如本领域已知的,可以使用用于存储信息的任何易失性或非易失性存储介质来实现存储器170。例如,存储器170可以用磁带库、光学库、一个或多个独立硬盘驱动器、独立磁盘冗余阵列(raid)中的多个硬盘驱动器、固态驱动器(ssd)或随机存取存储器(ram)来实现。类似地,存储器170可用本领域中已知的任何合适的存储架构来实现,诸如关系数据库、面向对象的数据库或一个或多个表。在本发明的实施例中,在服务器设备130上操作的智能认证程序180和任何其他程序和应用(图1中未示出)可以将数据存储、读取、修改或写入到存储器170。在本发明的实施例中,存储到存储器170的数据包括但不限于存储到应用数据库172的数据和使用模式174。
19.根据本发明的实施例,应用数据库172是存储器170内存储关于多个应用160中的每个应用的特定信息的存储器位置。在一个实施例中,存储到应用数据库172中的信息的实例包括但不限于用户信息,如用于一个或多个应用160的用户的名称、凭证和设备注册信息。
20.在实施例中,使用模式174是存储器170内存储应用160中的至少一个应用的个体用户的使用历史信息的存储器位置。根据实施例,基于使用历史信息,智能认证程序180可以为每个单独的用户开发唯一的使用模式;每个开发的使用模式也被存储到使用模式174。存储到使用模式174的使用模式可包括诸如用户何时(例如,一天中的时间、(一个或多个)特定日期等)访问某个应用、用户利用什么设备(例如,智能电话、膝上型计算机、台式计算机、智能手表等)来访问所述应用、以及用户通常访问所述网站的位置(例如,家庭位置、工作位置、全球定位系统(gps)位置等)的信息。
21.根据本发明的实施例,智能认证程序180可以是程序、更大程序的子程序、应用、多个应用或移动应用软件,其功能是使用多于一个计算设备提供多因子认证。程序是由程序员编写的指令序列,以执行特定任务。在一个实施例中,智能认证程序180自己运行。在其他实施例中,智能认证程序180依赖于系统软件(图1中未示出)来执行。在一个实施例中,智能认证程序180用作驻留在服务器设备130上的独立程序。在另一实施例中,智能认证程序180与在计算环境100中找到的其它程序、应用等协同工作。在又一实施例中,智能认证程序180驻留在计算设备120-n上。在又一实施例中,智能认证程序180驻留在计算环境100中的其他计算设备(图1中未示出)上,其通过网络110与计算设备120-n和服务器设备130互连。
22.在一个实施例中,智能认证程序180基于用户的历史开发访问多个应用的用户的使用模式。在该实施例中,当确定访问应用的用户的异常使用时,智能认证程序180中断用户对应用的认证。此外,在该实施例中,智能认证程序180确定用户是否已经经由新的计算设备输入了用于应用的认证信息。基于该确定,智能认证程序180可以(i)处理认证或(ii)向用户发送通知。
23.图2是描绘用于使用多于一个计算设备提供多因子认证的方法的工作流200的流程图。在一个实施例中,工作流200的方法由智能认证程序180执行。在替代实施例中,工作流200的方法由与智能认证程序180一起工作的任何其他程序执行。在实施例中,用户经由用户接口150在向网站提供凭证时调用工作流200。在替代实施例中,用户在经由网络110访问服务器设备130上的智能认证程序180时调用工作流200。
24.在一个实施例中,智能认证程序180识别使用信息(步骤202)。换句话说,智能认证程序180识别用户如何访问因特网以及用户使用哪些需要认证访问的网站。根据一个实施例,智能认证程序180在用户连接到因特网时监视用户以识别用户访问的网站。在一个实施例中,当计算设备120-n的用户通过因特网经由网络110访问服务器设备130上的应用160时,智能认证程序180识别该用户的使用信息。例如,ann(安)拥有的智能电话上的程序在ann访问因特网上需要认证以充分利用的以下三个网站时识别ann的网站使用:(i)她的信用联盟;(ii)她的医疗保险公司的申请;以及(iii)她的大型在线零售商的账户。同样在ann使用的膝上型计算机和台式计算机上找到的程序也识别ann对膝上型计算机和台式计算机的使用。
25.根据本发明的实施例,智能认证程序180开发使用模式(步骤204)。换言之,智能认
证程序180建立一段时间内用户的使用信息的历史。在一个实施例中,该时间段由智能认证程序180确定。在另一实施例中,该时间段由用户确定。在又一个实施例中,该时间段由用户访问的网站的数量确定。根据实施例,智能认证程序180通过基于用户的历史经由机器学习算法分析监视的用户的使用信息来开发用户的使用模式。在实施例中,智能认证程序180在用户经由网络110访问互联网时监视计算设备120-n的用户的网站使用。基于针对用户的网站使用,智能认证程序180开发针对用户的使用模式。例如,在三个月的过程中,ann具有用于三个不同计算设备上的三个网站的以下网站使用:(i)ann在一周的任何一天、在任何位置和在一天的任何时间访问智能电话和台式计算机上的信用联合网站;(ii)ann仅使用膝上型计算机在家工作之后的每周五访问她的医疗保险公司的应用;以及(iii)ann在工作周期间(总是在工作之后并且在家中)大约两次地在膝上型计算机和台式计算机上访问在线零售商的网站,并且在周末期间(在白天或夜晚的任何时间,在任何位置处)在膝上型计算机、台式计算机和智能电话上访问在线零售商的网站。
26.在一个实施例中,智能认证程序180接收设备注册(步骤206)。换句话说,智能验证程序180从用户接收关于用户所使用的计算设备的信息。根据一个实施例,智能认证程序180直接从用户接收设备注册信息。根据另一个实施例,智能认证程序180直接从计算设备接收设备注册信息。根据又一实施例,智能认证程序180通过在智能认证程序180正在识别关于用户的使用信息的时间帧期间确定设备信息来接收设备注册信息。在实施例中,示例设备注册信息包括但不限于媒体访问控制(mac)地址、通用唯一标识(uuid)、传输控制协议/因特网协议(tcp/ip)等。在一个实施例中,计算设备120-n的用户经由网络110向服务器设备130上的智能认证程序180提交关于该用户所使用的多个计算设备120-n的设备注册信息。例如,ann向ann所使用的智能电话上的程序提供以下设备注册信息:(i)ann使用的台式计算机的mac地址是00:0d:83:b1:c0:8e,以及(ii)ann所使用的膝上型计算机的mac地址是00:a0:c9:14:c8:29。智能手机上的程序能够直接确定智能手机的mac地址为00:d1:77:a2:01:6b。
27.根据本发明的实施例,智能认证程序180接收指示(步骤208)。换言之,智能认证程序180接收用户正在访问互联网上要求一个或多个认证凭证以便完全访问的网站的指示。在实施例中,智能认证程序180通过网络110接收计算设备120-n的用户正尝试访问服务器设备130上的应用160之一的指示。例如,ann使用的台式计算机上的程序接收ann正在周四晚上使用她的台式计算机访问她的医疗保险公司的指示。
28.在一个实施例中,智能认证程序180确定使用是否正常(判定步骤210)。换句话说,智能认证程序180确定所指示的计算设备是否正常(即,适合所开发的用户的使用模式)。在一个实施例中,智能验证程序180通过将指示使用的情况与用户的开发使用模式进行比较来做出确定。在一个实施例中(判定步骤210,是分支),智能验证程序180确定所指示的使用是正常的;因此,智能验证程序180前进到步骤212,以处理访问网站的认证。在该实施例中(判定步骤210,否分支),智能认证程序180确定所指示的使用不正常;因此,智能验证程序180前进到步骤214,以中断网站的认证过程。
29.根据本发明的实施例,智能认证程序180处理认证(步骤212)。换言之,响应于确定所指示的使用是正常的,智能认证程序180处理用于访问网站的认证。在实施例中,用户提交用于访问网站的一个或多个认证凭证(诸如在多因子认证的情况下),并且智能认证程序
180允许凭证到达应用以用于验证。在实施例中,当凭证正确时,用户被授权访问网站或用户被请求提交多因子授权。进一步在该实施例中,当凭据不正确时,从网站向用户发送指示提交了错误的凭证的通知。根据一实施例,智能认证程序180允许由计算设备120-n的用户通过网络110提交的凭证到达服务器设备130上的应用160的特定应用以供认证。例如,如果已经针对ann确定了正常使用(例如,ann在星期五晚上使用她的注册的膝上型计算机来访问医疗保险公司应用),则ann所使用的膝上型计算机上的程序将允许来自ann的所提交的凭证到达医疗保险公司应用。
30.在一个实施例中,智能认证程序180中断认证(步骤214)。换句话说,响应于确定所指示的使用不正常,智能认证程序180通过防止用户提交的凭证到达应用来中断用户的网站访问。根据本发明的实施例,智能认证程序180确定访问网站的初始凭证是否正确;当凭证正确时,智能认证程序180存储适当的访问以供稍后使用。当凭证不正确时,智能认证程序180向用户通知不正确的凭证。在一个实施例中,智能认证程序180防止计算设备120-n的用户提交的凭证通过网络110到达服务器设备130上的应用160的特定应用。例如,ann的开发的使用模式显示ann在使用膝上型计算机工作之后在周五访问医疗保险公司应用。因为ann访问应用的当前实例是不正常的(即,ann试图使用她的台式计算机在星期四晚上访问该应用),所以ann所使用的台式计算机上的程序阻止ann提交的凭证到达医疗保险公司应用。
31.根据本发明的实施例,智能认证程序180传输请求(步骤216)。换言之,响应于中断用于访问网站的认证过程,智能认证程序180将请求发送到托管应用的服务器设备,请求执行智能认证以授权访问网站。在实施例中,智能认证要求当与用于初始提交原始凭证以便访问网站的计算设备相比时,从不同的计算设备提交第二因子访问代码或其他凭证。在一个实施例中,智能认证程序180使用网络110将对智能认证的请求发送到托管应用160的服务器设备130。例如,ann使用的台式计算机上的程序将请求发送到托管医疗保险公司应用的服务器,请求用于向ann授权对应用的访问的智能认证。
32.在一个实施例中,智能认证程序180接收请求(步骤218)。换句话说,智能认证程序180从托管用户正在访问的应用的服务器接收请求。根据实施例,该请求是针对智能认证的,并且该请求在用户的与用于初始尝试访问的原始计算设备不同的注册设备上被接收。此外,根据实施例,所接收的请求包括第二因子凭证,例如六字符字母数字码,在被授权访问网站或应用之前,将要求用户从另一注册的计算装置提交该第二因子凭证作为智能认证的一部分。在一个实施例中,该请求可以是文本消息(短消息服务或多媒体消息)或电子邮件(其中,在一个示例中,打开电子邮件触发将用于打开电子邮件的计算设备的mac地址添加到所提供的第二因子凭证的动作,从而确保使用不同的计算设备,因为智能认证程序180知道原始计算设备的mac地址)的形式。根据一个实施例,智能认证程序180通过网络110从托管应用160的服务器设备130接收对智能认证的请求,并且该请求包括多因子代码。例如,ann使用的台式计算机上的程序接收ann遵循智能认证以访问医疗保险公司应用的电子邮件请求。此外,在该示例中,该请求包括第二因子认证码“ia-ann-hbd7opx8”。
33.根据实施例,智能认证程序180接收输入(步骤220)。换言之,响应于接收到对智能认证的请求,智能认证程序180从尝试访问网站的用户接收输入,并且该输入包括多因子代码。在实施例中,输入从相同的计算设备接收并且包括正确的多因子代码。在另一实施例
中,输入从不同的计算设备接收并包括正确的多因子代码。在又一实施例中,如果提交了不正确的多因子代码,则不准许网站访问,而不管用户所使用的计算设备如何。根据本发明的实施例,服务器设备130上的智能认证程序180通过网络110从计算设备120-n的用户接收输入;包括在所述输入中的是多因子代码。例如,ann使用她的智能电话而不是她的台式计算机提交多因子代码“ia-ann-hbd7opx8”。
34.在一个实施例中,智能认证程序180确定是否使用新设备(判定步骤222)。换句话说,响应于从用户接收到包括多因子代码的输入,智能认证程序180确定该输入是否是从新设备发送的。根据本发明的实施例,智能认证程序180通过确保原始计算设备(例如,台式计算机)的注册信息不同于用于发送输入的计算设备(例如,智能电话)的注册信息来做出确定。在一个实施例中(判定步骤222,是分支),智能认证程序180确定计算设备是不同的(即,使用了新设备);因此,智能验证程序180返回到步骤212以处理认证。在该实施例中(判定步骤222,否分支),智能认证程序180确定计算设备不是不同的(即,没有使用新设备);智能验证程序180前进到步骤224,以向用户传输通知。
35.根据实施例,智能认证程序180传输通知。换言之,响应于确定未使用新的(即,不同的)计算设备,智能认证程序180将包括要求用户使用不同的计算设备重新提交多因子代码以便被授权对网站的访问的评论的第一通知传输至用户。在第一实施例中,如果重新提交多因子代码并且智能认证程序180确定是使用新计算设备重新提交多因子代码,则智能认证程序180将返回到步骤212以处理认证。在第二实施例中,如果重新提交多因子代码并且智能认证程序180确定不是使用新的计算设备重新提交多因子代码,则智能认证程序180关闭用户正尝试访问的应用或网站,因为所尝试的访问可能是欺骗性的。在第二实施例中,智能认证程序180可以将通知传输至(i)用户的优选计算设备(其在设备注册过程期间由用户指示)或(ii)由用户注册的所有注册的计算设备;该通知可以包含与该多个计算设备中的至少一个计算设备相关联的一个欺诈活动通知。根据本发明的实施例,智能认证程序180通过网络110将通知传输至计算设备120-n的用户,通知用户用不同的计算设备120-n重新提交多因子代码。例如,由于ann从她的智能电话提交多因子代码“ia-ann-hbd7opx8”,该程序基于mac地址比较确定该智能电话是新计算设备而不是台式计算机。因此,向ann授权对医疗保险公司应用的访问,并且不向ann发送第一通知。
36.在新的示例中,如果ann已经从她的台式计算机传送了多因子代码“ia-ann-hbd7opx8”,则ann将已经接收到指示ann应当使用不同的计算设备来重新提交多因子代码的第一通知。在新示例的第一场景中,如果ann假设她简单地不正确地键入多因子代码并且再次使用台式计算机重新提交它,则ann拥有的所有注册计算设备将接收第二通知,该第二通知指示对医疗保险公司应用的访问已被拒绝并且ann的敏感个人信息可能被损害。在新示例的第二场景中,如果ann认识到多因子代码应在不同的计算设备上重新提交,并且ann使用注册的膝上型计算机重新提交“ia-ann-hbd7opx8”,则ann将被授权对医疗保险公司应用的访问,并且将不会接收到第二通知。
37.图3描绘了计算机系统300,其是包括智能认证程序180的系统的示例。计算机系统300包括处理器301、高速缓存器303、存储器302、永久性存储器305、通信单元307、(一个或多个)输入/输出(i/o)接口306和通信结构304。通信结构304提供高速缓存器303、存储器302、永久性存储器305、通信单元307和输入/输出(i/o)接口306之间的通信。通信结构304
可以使用被设计用于在处理器(诸如微处理器、通信和网络处理器等)、系统存储器、外围设备和系统内的任何其它硬件组件之间传递数据和/或控制信息的任何体系结构来实现。例如,通信结构304可以用一个或多个总线或纵横开关来实现。
38.存储器302和永久性存储器305是计算机可读存储介质。在该实施例中,存储器302包括随机存取存储器(ram)。通常,存储器302可以包括任何合适的易失性或非易失性计算机可读存储介质。高速缓存器303是通过保存来自存储器302的最近访问的数据和最近访问的数据附近的数据来增强处理器301的性能的快速存储器。
39.用于实施本发明的实施例的程序指令和数据可以存储在永久存储器305和存储器302中,以便由一个或多个相应的处理器301经由高速缓存器303执行。在一个实施例中,永久性存储器305包括磁硬盘驱动器。作为磁硬盘驱动器的替代或补充,永久性存储器305可包括固态硬盘驱动器、半导体存储设备、只读存储器(rom)、可擦除可编程只读存储器(eprom)、闪存或能够存储程序指令或数字信息的任何其它计算机可读存储介质。
40.永久性存储器305使用的介质也可以是可移动的。例如,可移动硬盘驱动器可以用于永久性存储305。其它示例包括光盘和磁盘、拇指驱动器和智能卡,它们被插入到驱动器中以便传输到也是持久存储器305的一部分的另一计算机可读存储介质上。
41.在这些示例中,通信单元307提供与其他数据处理系统或设备的通信。在这些示例中,通信单元307包括一个或多个网络接口卡。通信单元307可以通过使用物理和无线通信链路中的一种或两种来提供通信。用于实施本发明的实施例的程序指令和数据可以通过通信单元307下载到永久存储器305。
42.i/o接口306允许与可连接到每个计算机系统的其它设备输入和输出数据。例如,i/o接口306可以提供到诸如键盘、小键盘、触摸屏和/或一些其它合适的输入设备的外部设备308的连接。外部设备308还可以包括便携式计算机可读存储介质,例如拇指驱动器、便携式光盘或磁盘、以及存储卡。用于实践本发明的实施例的软件和数据可以存储在这样的便携式计算机可读存储介质上,并且可以经由(一个或多个)i/o接口306加载到永久性存储器305上。(一个或多个)i/o接口306也连接到显示器309。
43.显示器309提供向用户显示数据的机制,并且可以是例如计算机监视器。
44.在任何可能的技术细节结合层面,本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
45.计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
46.这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
47.用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路配置数据或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
48.这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
49.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
50.也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
51.附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施方案中,框中所注明的功能可不按图中所注明的次序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统
来实现。
52.这里描述的程序是基于在本发明的特定实施例中实现它们的应用来识别的。然而,应当理解,这里的任何特定程序术语仅是为了方便而使用,因此本发明不应当限于仅在由这样的术语标识和/或暗示的任何特定应用中使用。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1