信息处理系统和保护该信息处理系统的方法转让专利

申请号 : CN201610013312.5

文献号 : CN105787337B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : F·阿玛德A·贝洛G·J·博斯A·A·约翰

申请人 : 国际商业机器公司

摘要 :

本申请涉及信息处理系统和保护该信息处理系统的方法。更具体而言,提供了一种用于在信息处理系统的显示屏上显示移动图形对象的方法,这些移动图形对象在对象正在移动时被用户选择。该系统响应于用户选中的图形对象集合和选择次序与预期的图形对象的集合和预期的选择次序相匹配而被解锁。该系统的解锁允许用户与信息处理系统的一个或多个应用交互并且允许用户存取信息处理系统上存储的数据。

权利要求 :

1.一种保护信息处理系统的方法,该信息处理系统包括一个或多个处理器、存储器和显示屏,该方法包括:在所述信息处理系统的显示屏上显示多个移动图形对象;

从用户接收按照选中次序对所述多个移动图形对象的集合的选择,其中所述选择是在所述多个移动图形对象处于运动中时执行的;以及响应于所述用户选中的图形对象的集合和选择次序与预期的图形对象的集合和预期的选择次序相匹配而解锁所述信息处理系统,其中所述解锁允许所述用户与信息处理系统的一个或多个应用交互并且允许所述用户访问所述信息处理系统上存储的数据。

2.如权利要求1所述的方法,还包括:

在执行所述显示、接收和解锁之前配置所述多个移动图形对象,其中所述配置还包括:接收来自所述用户的解锁图案,其中该解锁图案包括所述预期的图形对象的集合和预期的选择次序;以及将所述预期的图形对象的集合和预期的选择次序存储在所述信息处理系统的存储器中。

3.如权利要求2所述的方法,其中所述配置还包括:由所述用户选择在所述显示屏上显示的所述多个图形对象。

4.如权利要求1所述的方法,其中,所述多个图形对象中的每一个以伪随机方向在所述显示屏上移动。

5.如权利要求1所述的方法,其中,从所述用户接收到的选择是持续轻扫运动,其中所述用户的手指按照所述选择次序触摸选中集合中包括的每一个移动图形对象而不离开所述显示屏的表面。

6.如权利要求1所述的方法,还包括:

用在正从所述用户接收选择的同时继续移动的多个移动图形对象来填充所述显示屏;

重复地将触摸屏幕的表面的输入设备的屏幕位置与每一个移动图形对象的当前位置相比较;以及基于所述比较来检测对所述多个移动图形对象的集合的选择,直到判定正从所述用户接收到的选择完成为止。

7.如权利要求1所述的方法,其中,显示的移动图形对象中的每一个在正从所述用户接收选择的同时继续跨所述显示屏移动,并且其中该方法还包括:在对集合中包括的每一个移动图形对象的选择之后,改变选中的移动图形对象的外观,其中所述改变是从由变更外观和从所述显示屏中除去所述选中的移动图形对象构成的组中选择的。

8.一种信息处理系统,包括:

一个或多个处理器;

与处理器中的至少一个相耦合的存储器;

能由处理器中的至少一个访问的显示屏;以及

在所述存储器中存储并且由处理器中的至少一个执行以保护该信息处理系统的指令集,其中该指令集执行以下动作:在所述信息处理系统的显示屏上显示多个移动图形对象;

从用户接收按照选中次序对所述多个移动图形对象的集合的选择,其中所述选择是在所述多个移动图形对象处于运动中时执行的;以及响应于所述用户选中的图形对象的集合和选择次序与预期的图形对象的集合和预期的选择次序相匹配而解锁所述信息处理系统,其中所述解锁允许所述用户与所述信息处理系统的一个或多个应用交互并且允许所述用户访问所述信息处理系统上存储的数据。

9.如权利要求8所述的信息处理系统,其中,所述动作还包括:在执行显示、接收和解锁之前配置所述多个移动图形对象,其中所述配置还包括:接收来自所述用户的解锁图案,其中该解锁图案包括所述预期的图形对象的集合和预期的选择次序;以及将所述预期的图形对象的集合和预期的选择次序存储在所述信息处理系统的存储器中。

10.如权利要求9所述的信息处理系统,其中所述配置还包括:由所述用户选择在所述显示屏上显示的多个图形对象。

11.如权利要求8所述的信息处理系统,其中,所述多个图形对象中的每一个以伪随机方向在所述显示屏上移动。

12.如权利要求8所述的信息处理系统,其中,从用户接收到的选择是持续轻扫运动,其中所述用户的手指按照所述选择次序触摸选中集合中包括的每一个移动图形对象而不离开所述显示屏的表面。

13.如权利要求8所述的信息处理系统,其中所述动作还包括:用在正从所述用户接收选择的同时继续移动的多个移动图形对象来填充所述显示屏;

重复地将触摸屏幕的表面的输入设备的屏幕位置与每一个移动图形对象的当前位置相比较;以及基于所述比较来检测对多个移动图形对象的集合的选择,直到判定正从所述用户接收到的选择完成为止。

14.如权利要求8所述的信息处理系统,其中,显示的移动图形对象中的每一个在正从所述用户接收选择的同时继续跨所述显示屏移动,并且其中所述动作还包括:在对集合中包括的每一个移动图形对象的选择之后,改变选中的移动图形对象的外观,其中所述改变是从由变更外观和从所述显示屏中除去选中的移动图形对象构成的组中选择的。

说明书 :

信息处理系统和保护该信息处理系统的方法

技术领域

[0001] 本公开涉及使用由用户选择的移动图形对象的连续变化解锁图案来解锁设备来保护该设备。

背景技术

[0002] 安全漏洞是公司和其他组织损失收入和信任损失的主要原因。当组织的敏感私有数据被入侵时,漏洞经常被广泛宣传并且可以导致对组织的声誉、信任度和收入的不可计算的损失。许多安全漏洞起源于作为“肩膀攻击”的结果而已被入侵的个人账户。肩膀攻击是这样一种攻击,其中观察者(黑客)使其自己位于目标的肩膀上以观察正在设备(电话/平板/计算机)上输入的密码或图案。这有时是社交工程形式的攻击,其中黑客与受害者有直接或者间接的接触。

发明内容

[0003] 提供了一种用于在信息处理系统的显示屏上显示移动图形对象的方法,这些移动图形对象在对象正在移动时被用户选择。该系统响应于用户选中的图形对象集合和选择次序与预期的图形对象的集合和预期的选择次序相匹配而被解锁。该系统的解锁允许用户与信息处理系统的一个或多个应用交互并且允许用户存取信息处理系统上存储的数据。
[0004] 前述是概要并且因而必然包含细节的简化、概括和省略;结果,本领域技术人员将认识到该概要只是例示性的并且不是旨在以任何方式限制。如由权利要求唯一地限定的本发明的其他方面、发明特征和优点在下面阐述的非限制性详细描述中将变得显而易见。

附图说明

[0005] 通过参考附图,本发明可得到更好理解,并且其许多目的、特征和优点对本领域技术人员变得明显,在附图中:
[0006] 图1示出了信息处理系统的处理器和组件的框图;
[0007] 图2是包括经由计算机网络互连的各种类型的信息处理系统的网络环境;
[0008] 图3是示出用户解锁用移动图标的变化解锁图案来保护的设备的示图;
[0009] 图4是示出利用移动图标的变化解锁图案来保护设备所采用的高级步骤的流程图;
[0010] 图5是示出在利用移动图标的变化解锁图案来保护设备的建立过程期间采用的步骤的流程图;
[0011] 图6是示出利用移动图标的变化解锁图案来挑战受保护设备的用户所采用的步骤的流程图;
[0012] 图7是示出利用移动图标的变化解锁图案来填充设备的屏幕所采用的步骤的流程图;
[0013] 图8是示出发起管理在屏幕上出现的图标的移动的线程所采用的步骤的流程图。

具体实施方式

[0014] 本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括一个或多个计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
[0015] 计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子的非穷举的列表包括以下:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、诸如其上存储有指令的打孔卡或凹槽内凸起结构之类的机械编码设备、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
[0016] 这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络—例如因特网、局域网、广域网和/或无线网—下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发这些计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
[0017] 用于执行本发明操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Java、Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”编程语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在后面的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户的计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
[0018] 这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0019] 这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
[0020] 也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
[0021] 附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的一个或多个逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续示出的方框实际上可以基本并行地执行,或者这些方框有时可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0022] 以下详细描述将总地遵循如在上面陈述的本发明的概要,从而在必要时进一步说明并扩展本发明的各个方面和实施例的定义。为此,该详细描述首先陈述适于实现与本发明相关联的软件和/或硬件技术的图1中的计算环境。联网环境在图2中被例示为基本计算环境的扩展,以强调现代计算技术可以跨多个分离设备执行。
[0023] 图1例示出信息处理系统100,其是能够执行在此描述的计算操作的计算机系统的简化示例。信息处理系统100包括被耦合到处理器接口总线112的一个或多个处理器110。处理器接口总线112将处理器110连接到也称为存储控制器集线器(MCH)的北桥115。北桥115连接到系统存储器120并且为一个或多个处理器110提供用来访问系统存储器的手段。图形控制器125也连接到北桥115。在一个实施例中,PCI Express总线118将北桥115连接到图形控制器125。图形控制器125连接到显示设备130,诸如计算机监视器。
[0024] 北桥115和南桥135使用总线119相互连接。在一个实施例中,总线是在北桥115与南桥135之间的每一个方向上以高速传输数据的直接媒体接口(DMI)总线。在另一实施例中,外围组件互连(PCI)总线连接北桥和南桥。也称为I/O控制器集线器(ICH)的南桥135是一种芯片,其总地实现相比北桥提供的能力以更慢速度工作的能力。南桥135通常提供用于连接各种组件的各种总线。这些总线例如包括PCI和PCI Express总线、ISA总线、系统管理总线(SMBus或者说SMB)和/或低管脚计数(LPC)总线。LPC总线经常连接低带宽设备,诸如引导(boot)ROM 196和“老式”I/O设备(使用“超级I/O”芯片)。“老式”I/O设备(198)例如可以包括串行和并行端口、键盘、鼠标和/或软盘控制器。LPC总线还将南桥135连接到可信平台模块(TPM)195。南桥135中经常包括的其他组件包括直接存储器访问(DMA)控制器、可编程中断控制器(PIC)和存储设备控制器,存储设备控制器使用总线184将南桥135连接到非易失性存储设备185,诸如硬盘驱动器。
[0025] ExpressCard 155是将可热拔插设备连接到信息处理系统的插槽。ExpressCard 155支持PCI Express和USB连通性两者,这是因为其使用通用串行总线(USB)和PCT Express总线两者连接到南桥135。南桥135包括向连接到USB的设备提供USB连通性的USB控制器140。这些设备包括网络摄影机(摄像机)150、红外(IR)接收器148、键盘和轨迹板144,以及提供无线个人区域网(PAN)的蓝牙设备146。USB控制器140还向其他各种USB连接设备
142提供USB连通性,USB连接设备142诸如是鼠标、可移动非易失性存储设备145、调制解调器、网络卡、ISDN连接器、传真机、打印机、USB集线器以及许多其他种类的USB连接设备。虽然可移动非易失性存储设备145被示出为USB连接设备,但是可移动非易失性存储设备145可以使用诸如火线(Firewire)接口等的不同接口来连接。
[0026] 无线局域网(LAN)设备175经由PCI或PCI Express总线172连接到南桥135。LAN设备175通常实现全部使用相同协议来在信息处理系统100与另一计算机系统或设备之间进行无线通信的空中调制技术的IEEE 802.11标准之一。光存储设备190使用串行ATA(SATA)总线188连接到南桥135。串行ATA适配器和设备通过高速串行链路通信。串行ATA总线还将南桥135连接到其他形式的存储设备,诸如硬盘驱动器。诸如声卡之类的音频电路160经由总线158连接到南桥135。音频电路160还提供诸如音频线路输入和光数字音频输入端口162、光数字输出和耳机插口164、内部扬声器166和内部麦克风168之类的功能。以太网控制器170使用诸如PCI或PCI Express总线之类的总线而连接到南桥135。以太网控制器170将信息处理系统100连接到计算机网络,诸如局域网(LAN)、因特网和其他公共和私有的计算机网络。
[0027] 虽然图1示出了一个信息处理系统,但是信息处理系统可采用许多形式。例如,信息处理系统可采用桌面、服务器、便携式、膝上型、笔记本或者其他外形的计算机或者数据处理系统的形式。此外,信息处理系统可采用其他外形,诸如个人数字助理(PDA)、游戏设备、ATM机、便携式电话设备、通信设备或者包括处理器和存储器的其他设备。
[0028] 在图1中示出并且在此描述的用来提供安全功能的可信平台模块(TPM 195)只是硬件安全模块(HSM)的一个示例。因此,在此描述并要求保护的TPM包括任何类型的HSM,包括但不限于符合可信计算组织(TCG)标准并且有“1.2版可信平台模块(TPM)规范”资格的硬件安全设备。TPM是可被合并到任意数目的信息处理系统(诸如在图2中概述的那些)中的硬件安全子系统。
[0029] 图2提供了图1中示出的信息处理系统环境的扩展以例示出在此描述的方法可以在在联网环境中操作的各种信息处理系统上执行。信息处理系统的种类的范围从诸如手持计算机/移动电话210之类的小型手持设备到诸如主机计算机270之类的大型主机系统。手持计算机210的示例包括个人数字助理(PDA)、个人娱乐设备,诸如MP3播放器、便携式电视机和紧凑盘播放器。信息处理系统的其他示例包括笔式或平板计算机220、膝上型或笔记本计算机230、工作站240、个人计算机系统250,以及服务器260。未在图2中单独示出的其他种类的信息处理系统由信息处理系统280表示。如图所示,各种信息处理系统可以使用计算机网络200而被联网在一起。可以用来使各种信息处理系统互连的计算机网络的种类包括局域网(LAN)、无线局域网(WLAN)、因特网、公共交换电话网(PSTN)、其他无线网络,以及可以用来使信息处理系统互连的任何其他网络拓扑。信息处理系统中的许多包括非易失性数据存储装置,诸如硬盘驱动器和/或非易失性存储器。图2中示出的信息处理系统中的一些示出了分开的非易失性数据存储装置(服务器260利用非易失性数据存储装置265,主机计算机270利用非易失性数据存储装置275,并且信息处理系统280利用非易失性数据存储装置285)。非易失性数据存储装置可以是位于各种信息处理系统外部的组件或者可以位于信息处理系统之一的内部。此外,可移动非易失性存储设备145可以使用诸如将可移动非易失性存储设备145连接到信息处理系统的USB端口或者其他连接器的各种技术而被在两个或更多信息处理系统之间共享。
[0030] 图3-图8示出了用于保护信息处理系统的方法。该系统以上面显示有随机移动的图形对象的解锁屏幕开始。这些对象具有足够的多样性以可以彼此区分,但是对象也可以被重复。对象可以由不同的属性(尺寸、形状、颜色、移动速度,等等)构成。解锁代码或图案是这些对象的有序列表。在配置期间,用户选择对象被连接以解锁设备的次序。因为对象处于经常的随机运动中,因此如观察者所见到的解锁图案将不会被重复。屏幕上的图标的移动使得黑客极其难以执行肩膀攻击,这是因为黑客将必须记忆用户所触摸的对象,而不是在手指已经离开对象之后观察对象。
[0031] 例如,名为汤姆的用户已经挑中以下解锁图案(红色三角、蓝色点、黄色感叹号、红色蘑菇)。汤姆打开他的平板并且未意识到社交工程黑客正在他的肩膀上面看以尝试学习他的密码。汤姆的10英寸设备正在将屏幕的3/4显示为图案解锁区域并且存在22个在屏幕四处随机浮动的对象。汤姆将其手指放在红色三角上并且开始将其手指拖动至移动的蓝点。一旦汤姆的手指通过蓝色点上方,汤姆的手指就继续通过黄色感叹号上方。汤姆的手指然后转回以触摸红色蘑菇并且随后抬起手指离开屏幕,那时红色蘑菇已经改变为略微更小的红色蘑菇。汤姆的设备解锁并且黑客不知道密码是什么,这是因为要观察以看起来随机的模式移动的22个对象是过于复杂的。在一个实施例中,图形对象一旦被选中就改变为不同的图形对象(例如,绿色蘑菇一旦被选中就改变为红色番茄,等等)。这给黑客学习被选中用来解锁设备的图形对象的正确顺序进一步添加了难度。
[0032] 图3是示出用户解锁用移动图标的变化解锁图案来保护的设备的示图。信息处理系统300——诸如移动电话、平板计算机、膝上型计算机等——包括上面显示有移动图形对象321、322、323、324和325的屏幕310。如图所示,图形对象无论其他对象如何都以伪随机路径移动(随机路径320)。在一个实施例中,图形对象意识到其他图形对象以避免视觉冲突。用户330使用输入设备——诸如手指、触控笔或者其他定点设备——以正确次序触摸图形对象。移动图形对象(321-325)被显示在信息处理系统300的显示屏310上。系统从用户330接收如用户触摸路径340所示的按照选中次序对移动图形对象集合的选择。信息处理系统响应于用户选中的图形对象集合和选择次序与预期的图形对象的集合和预期的选择次序相匹配而被解锁。信息处理系统的解锁允许用户与信息处理系统上存储的应用交互并且允许用户存取信息处理系统的存储器中存储的数据。
[0033] 图4是示出利用移动图标的变化解锁图案来保护设备所采用的高级步骤的流程图。处理在400处开始,于是,在步骤410处,信息处理系统被示出为处于锁定状态,在该状态下用户无法与信息处理系统上存储的应用和数据交互。该处理关于信息处理系统的用户是否已经请求解锁设备做出判定(判定420)。判定420继续分支到“否”分支并且仍处于锁定状态,直到解锁请求被接收到为止。当解锁请求被接收到时,判定420分支到“是”分支以处理该请求。
[0034] 在预定处理430处,系统执行向用户呈现移动图形对象集合的解锁图案挑战,并且用户按照正确次序选择图形对象来解锁设备(对于处理细节,见图6和对应的文本)。处理关于用户是否成功完成解锁图案挑战做出判定(判定440)。如果挑战未得到满足,则判定440分支到“否”分支,其沿环路回到设备仍处于锁定状态下的步骤410。另一方面,如果用户成功完成挑战,判定440分支到“是”分支以进行进一步处理。
[0035] 在步骤450处,信息处理系统被解锁并且用户被允许与系统上存储的应用交互并且还被允许存取信息处理系统上存储的数据。处理关于用户是否已经请求为设备建立新解锁图案做出判定(判定460)。如果用户请求新解锁图案的建立,则判定460分支到“是”分支,于是,在预定处理470处,系统执行建立新解锁图案处理(对于处理细节,见图5和对应的文本),然后处理沿环路回到步骤450以允许用户继续使用解锁设备。
[0036] 如果用户未请求为信息处理系统建立新解锁图案,则判定460分支到“否”分支,此时处理关于是否要锁定设备做出判定(判定480)。要锁定设备的判定可以基于闲置时间的量、要锁定设备的用户请求、用户的电源关闭等来做出。如果设备不是正被锁定,则判定480分支到“否”分支,该分支沿环路回到用户继续能够使用设备的步骤450。然而,如果设备正被锁定,则判定480分支到“是”分支,该分支沿环路回到设备正被返回锁定状态的步骤410。
[0037] 图5是示出在利用移动图标的变化解锁图案来保护设备的建立过程期间采用的步骤的流程图。处理在500处开始,于是,在步骤505处,处理从安全设定存储区域510中取回当前安全设定。处理关于是否已经为该设备建立解锁图案进行判定(判定515)。
[0038] 如果已经为该设备建立解锁图案,则判定515分支到“是”分支。另一方面,如果尚未为该设备建立解锁图案,则判定515分支到“否”分支。沿着“是”分支,在预定处理520处,处理执行解锁图案挑战例程(对于处理细节,见图6和对应的文本)。处理关于用户是否成功满足解锁挑战进行判定(判定525)。如果用户成功满足解锁挑战,则判定525分支到“是”分支。另一方面,如果用户未成功满足解锁挑战,则判定525分支到“否”分支并且处理在530处结束而不改变解锁图案。
[0039] 如果解锁图案尚未被建立(判定515分支到“否”分支)或者解锁挑战未得到满足(判定525分支到“是”分支),那么,在步骤535处,处理初始化或者重置用于该设备的解锁图案。在步骤540处,用户选择要在设备上出现的第一个图形对象及其属性(颜色、尺寸等)。可用的图标被从存储区域545中取回。在步骤550处,处理将用户选择的图形对象及其属性存储在存储区域555中。处理关于用户是否希望选择更多的图形对象进行判定(判定560)。如果更多的图形对象正被选择,则判定560分支到“是”分支,该分支沿环路回到步骤540以接收来自用户的下一个图形对象选择。该循环继续进行直到没有更多的图形对象正被用户选择为止,此时判定560分支到“否”分支以进行进一步处理。
[0040] 在步骤565处,用户选择来自存储区域555的第一个图形对象以用于设备的新解锁图案。选中的图形对象作为新解锁图案的一部分而被存储在存储区域590中。处理关于更多图形对象是否将被包括在解锁图案中进行判定(判定570)。如果更多图形对象将被包括在解锁图案中,则判定570分支到“是”分支,该分支沿环路返回以接收来自用户的下一个图形对象选择。该循环继续进行直到将被包括在解锁图案中的所有图形对象都已经被接收到为止,此时判定570分支到“否”分支。在步骤575处,处理接收图形对象速度范围(例如,快速、中等、缓慢,等等)和选择者移动类型选择(例如,在做出选择时手指总是压在屏幕的表面上,在选择之间手指可以离开屏幕的表面,等等)。步骤575将速度范围和移动类型存储在存储区域580中。在步骤585处,处理将图形对象和属性、解锁图案、图形对象速度范围和选择者移动类型存储在安全设定存储区域510中。图5的处理此后在595处结束。
[0041] 图6是示出利用移动图标的变化解锁图案来挑战受保护设备的用户所采用的步骤的流程图。处理在600处开始,于是,在预定处理605处,处理执行用随机移动图标填充屏幕的例程(对于处理细节,见图7和对应的文本)。
[0042] 在步骤615处,处理将用户的输入设备(例如,手指等)的位置与在屏幕上出现的正在以伪随机方式移动的随机移动图形对象的当前位置相比较。处理关于输入设备的位置是否位于移动图标所占用的位置进行判定(判定620)。如果输入设备的位置不位于移动图标所占用的位置,则判定620分支到“否”分支,该分支重复地沿环路回到步骤615直到输入设备的位置位于移动图标所占用的位置为止,此时判定620分支到“是”分支以处理该选择。
[0043] 在步骤625处,处理将用户选中的图形对象存储在存储区域630中。在一个实施例中,一旦被用户选中,图形对象就改变(例如,用户选中的红色三角改变为伪随机形状,诸如绿色圆圈或者蓝色方形,等等)。在另一个实施例中,图形对象可以出现为“爆炸”并且从屏幕中消失,或者只是在被用户选中之后从屏幕中消失。
[0044] 处理关于移动类型是否是滑动类型以及用户的手指是否已经离开显示器的表面进行判定(判定635)。如果移动类型是滑动类型并且用户的手指已经离开显示器的表面,则判定635分支到“是”分支,该分支发出用户对图形对象的选择完成的信号。另一方面,如果移动类型不是滑动类型或者用户的手指尚未离开显示器的表面,则判定635分支到“否”分支。
[0045] 处理关于图形对象的选择是否结束进行判定(判定640)。例如,设备可以要求选择一定数目(例如,4个等)的对象来解锁设备。如果用户对图形对象的选择结束,则判定640分支到“是”分支。另一方面,如果用户对图形对象的选择未结束,则判定640分支到“否”分支,该分支沿环路回到步骤615以继续将用户的输入设备位置与在屏幕上出现的图形对象的当前位置相比较。此外,“虚设(dummy)”图形对象的使用可以被使用,以使得用户可以在对预期者的选择之间选择一个或多个“虚设”对象,其中虚设对象被忽略并且选中图形对象仅包括按照预期选择次序选择的预期图形对象集合。在该实施例中,如果预期的图形对象被以错误次序选择,那么用户的图案输入被认为是不成功的。
[0046] 在步骤645处,处理将选中的图形对象和选择次序与包括按照预期选择次序选择的预期图形对象集合的解锁图案相比较。处理关于用户选中的图形对象是否与预期的图形对象相匹配以及是否是按照预期选择次序来选择的进行判定(判定650)。如果用户选中的图形对象和选择次序与预期的图形对象和预期的选择次序相匹配,则判定650分支到“是”分支,于是,在返回655处,处理用表明用户成功满足解锁挑战的返回码来回复调用例程(见图4和图5)。另一方面,如果用户选中的图形对象或选择次序与预期的图形对象和预期的选择次序不匹配,则判定650分支到“否”分支,于是,在返回660处,处理用表明用户未成功满足解锁挑战的返回码来回复调用例程(见图4和图5)。
[0047] 图7是示出利用移动图标的变化解锁图案来填充设备的屏幕所采用的步骤的流程图。处理在700处开始,于是,在步骤710处,处理选择来自存储区域510中的第一个图形对象及其对应属性。在预定处理720处,处理执行发起用来管理选中图标的移动的线程的例程(对于处理细节,见图8和对应的文本)。预定处理720发起将管理选中图形对象——包括其在显示屏上的伪随机移动——的线程。处理关于是否存在更多要选择的图形对象进行判定(判定730)。如果有更多要选择的图形对象,则判定730分支到“是”分支,该分支沿环路回到步骤710以选择来自存储区域510中的下一个图形对象并且发起用来管理图形对象的线程。该循环继续进行直到没有更多要选择的图形对象为止,此时判定730分支到“否”分支并且处理返回到795处的调用历程(见图6)。
[0048] 图8是示出发起管理在屏幕上出现的图标的移动的线程所采用的步骤的流程图。处理在800处开始,于是,在步骤810处,处理将该图形对象的当前位置初始化为显示屏上的随机生成的位置。在步骤820处,处理在用户在建立期间配置的速度范围内随机地生成该图形对象的速度。速度范围是从存储区域510中取回的并且随机生成的速度被存储在存储区域830中。
[0049] 在步骤840处,处理随机地生成该图形对象的移动图案。随机生成的移动图案被存储在存储区域850中。在一个实施例中,移动图案是从预定移动图案的集合中随机选择的(例如,“s”形、圆形、“z”形、三角形,等等)。可被部署的其他种类的移动图案包括图形对象的随机布朗型运动以及流体型运动两者,在流体型运动中图形对象从屏幕的一侧出现、行进穿过屏幕并且在屏幕的另一侧消失。在步骤860处,处理在当前位置处渲染该图形对象。在步骤870处,处理将该图形对象及其当前位置报告给存储区域610,存储区域610包括在屏幕上出现的所有图形对象的图形对象和当前位置。
[0050] 在步骤880处,处理在当前位置处等待一段时间,其中等待时间基于从存储区域830中取回的曾为该图形对象确立的随机生成速度。在步骤890处,在等待时段期满之后,处理将该图形对象的当前位置改变为沿着从存储区域850中取回的随机生成的移动图案的下一位置。处理然后沿环路回到步骤860以在图形对象的新当前位置处渲染该图形对象并且将该新当前位置报告给存储区域610。该循环继续进行直到图案挑战完成为止,此时为了管理单独图形对象而发起的每一个线程被销毁。
[0051] 虽然本发明的特定实施例已被示出和描述,但是本领域技术人员将会清楚基于这里的教导可以在不脱离本发明及其更广方面的情况下做出改变和修改。因此,所附权利要求将在其范围内包含在本发明的真实精神和范围内的所有这种改变和修改。另外,将明白本发明由所附权利要求唯一限定。本领域技术人员将明白如果希望特定数目个所介绍的权利要求要素,则这种意图将在权利要求中明确陈述,并且在没有这种陈述的情况下不存在这种限制。对于非限制示例,作为对理解的辅助,后附的权利要求包含对介绍性短语“至少一个”和“一个或多个”的使用以介绍权利要求要素。然而,这种短语的使用不应当被理解为暗示通过不定冠词“一个”介绍的权利要求要素将包含这样介绍的权利要求要素的任何特定权利要求限制为仅包含一个这种要素的发明,即使当同一权利要求包括介绍性短语“一个或多个”或者“至少一个”以及诸如“一个”的不定冠词也是如此;这同样适用于权利要求中对定冠词的使用。