具体实施方式
使用现有的图形认证系统,可能发生“肩窥(shoulder surfing)”。例如,第三方观察者能够确定在认证过程结束时指针所处的位置。在一些情况下,第三方观察者可以观察到用户手指正在指向哪里。在其他情况下,可以使用计算机算法来确定在认证过程结束时覆盖图像上的特定点所处位置的模式。
本申请提出了一种用于认证计算设备的用户的方法,其中,必须满足针对移动图形认证的基本图像或覆盖图像的标准。
存在若干种方式来避免或劝阻用户直接触摸在覆盖图像或基本图像上的预先选择的参考点。将下面的实施例描述为应用于覆盖图像或基本图像。应当理解可以将这些实施例等价地应用于覆盖图像或基本图像中的另一个或同时应用于覆盖图像和基本图像(如果可行的话)。
一个非限制性示例包括在检测到显示器上的触摸时才呈现覆盖图像。该特征避免了用户首先触摸他的覆盖参考点,然后移动覆盖图像。在一些实施例中,呈现覆盖图像,使得预先选择的覆盖参考点不在用户触摸的显示器上的点处。用户触摸的后续移动将覆盖图像进行移动,且一旦覆盖参考点与基本图像参考点对准,则将指示肯定认证。在移动基本图像的情况下,也可以呈现基本图像,使得基本图像参考点不出现在用户触摸的点处。呈现相应图像,使得参考点不在触摸之下,这减少了第三方观察者可以确定用户的参考点的可能性,因为在本实施例中为了确定覆盖参考点,第三方观察者必须搞清哪个参考点永远不出现在用户触摸之下。
另一种避免或劝阻触摸一个图像上的预先选择的参考点的方式是使用用户触摸的移动来移动另一个图像。例如,如果认证系统识别出用户选择了他的覆盖参考点,则响应于用户触摸的移动,系统将允许基本图像移动,而不是覆盖图像移动。然后用户必须移动基本图像,使得基本图像参考点与覆盖图像参考点对准。类似地,如果用户触摸基本图像参考点,则用户触摸的移动将导致覆盖图像移动。在其他实施例中,在每次认证尝试时,响应于用户触摸的移动,哪个图像移动随机地交替。
在另一实施例中,必须触摸覆盖图像上的专用点,以移动覆盖图像。在非限制性示例中,在显示器上提供“标签(tab)”或“拖动”,必须使用它们来移动覆盖图像。在一些实施例中,提供多个专用点或标签,使得用户不始终在相同方向上移动网格。在一些实施例中,在每次登陆时,专用点改变位置。在一些实施例中,在显示器上提供专用导航区域。用户必须在该专用导航区域中触摸,以移动覆盖图像。专用导航区域的非限制性示例是空白正方形,比如虚拟触摸板、或在触摸屏的中心的区域。
另一种劝阻用户直接触摸覆盖参考点的方式是在检测到触摸时对覆盖图像进行随机化。例如,在数字网格覆盖图像(a number gridoverlay image)的情况下,一旦选择要移动的网格,则将整个网格随机化。当然,覆盖图像不限于数字,且可以出现在覆盖图像中的其他类型的参考点的非限制性示例包括:形状、图标和面部。
在一些实施例中,将触摸与键击移动相区分,且在触摸时随机化覆盖图像,但是在键击移动时保持稳定。可以通过在设置的容限中的其重复属性来区分键击和触摸。例如,在一些实施例中,在起点的最大距离中的矢量键击将不导致覆盖图像的随机化。在一些实施例中,存在与容限相关的时间元素。例如,如果在触摸之间的时间大于时间容限级别,将假设下一次触摸是新的起点,且不是键击模式的一部分。
在另一实施例中,仅在用户触摸除了覆盖图像参考点之外的某个位置的情况下,覆盖图像才移动。例如,如果用户在编号网格上选择参考点时挑选了它们的号码,什么也不发生,即网格将不移动。这劝阻了用户触摸它们的参考点。在另一实施例中,如果用户触摸覆盖图像的任一元素,则可以不移动覆盖图像。换言之,为了移动覆盖图像,用户必须在覆盖图像的元素之间或覆盖图像的边缘触摸。例如,在网格的情况下,可以要求用户触摸网格线以移动网格。
本申请的实施例不受限于任何特定的操作系统、移动设备架构、服务器架构或计算机编程语言。
首先参照图1,其以框图形式示出了通信系统100,在通信系统100中可以应用本公开的示例实施例。通信系统100包括一定数目的移动通信设备(移动设备)201,移动通信设备201可以用若干种不同方式中的任一种连接到系统100的其余部分。因此,在图1中示出了采用不同示例方式连接到系统100的移动通信设备201的若干实例。移动通信设备201连接到无线通信网络101,无线通信网络101可以包括一个或多个无线广域网(WWAN)102和无线局域网(WLAN)104或其他合适的网络配置。在一些实施例中,移动通信设备201被配置为通过WWAN 102和WLAN 104通信,且被配置为在这些网络之间漫游。在一些实施例中,无线网络101可以包括多个WWAN 102和WLAN 104。
可以将WWAN 102实现为任何合适的无线接入网技术。作为示例而不是限制,可以将WWAN 102实现为包括一定数目收发信机基站108(图1中示出其中之一)的无线网络,其中,每个基站108向对应区域或小区提供无线射频(RF)覆盖。一般由向移动通信设备201的用户提供订购包(subscription package)的移动网络服务提供方来操作WWAN 102。在一些实施例中,WWAN 102遵循以下无线网络类型中的一个或多个:Mobitex无线网络、DataTAC、GSM(全球移动通信系统)、GPRS(通用分组无线系统)、TDMA(时分多址)、CDMA(码分多址)、CDPD(蜂窝数字分组数据)、iDEN(综合数字增强网络)、EvDO(演进数据优化)CDMA2000、EDGE(GSM演进的增强数据速率)、UMTS(通用移动通信系统)、HSDPA(高速下行链路分组接入)、IEEE 802.16e(也被称作微波接入的全球可互操作性,即“WiMAX”)、或各种其他网络。尽管将WWAN 102描述为“广域”网,在本文中该术语还意在并入无线城域网(WMAN)和用于在比一般WLAN覆盖的区域更大的区域上以无线方式提供协调服务的其他类似技术。
WWAN 102还可以包括无线网关110,无线网关110将移动通信设备201连接到传输设施112,且通过传输设施112连接到无线连接器系统120。传输设施可以包括一个或多个私有网络或线路、公共互联网、虚拟私有网络、或任何其他合适的网络。可以由例如组织或企业(比如公司、大学、或政府部门)来操作无线连接器系统120,其允许接入网络124,比如内部或企业网络及其资源,或者无线连接器系统120可以由移动网络提供方来操作。在一些实施例中,可以使用互联网而不是内部或企业网来实现网络124。
无线网关110在无线连接器系统120和WWAN 102之间提供接口,其方便了在移动通信设备201和直接或间接连接到WWAN 102的其他设备(未示出)之间的通信。因此,将经由移动通信设备201发送的通信经由WWAN 102和无线网关110,通过传输设施112传输到无线连接器系统120。从无线连接器系统120发送的通信由无线网关110来接收,且经由WWAN 102传输到移动通信设备201。
WLAN 104包括无线网络,在一些实施例中,该无线网络遵循IEEE 802.11x标准(有时被称作Wi-Fi),比如,IEEE 802.11a、802.11b和/或802.11g标准。在其他实施例中,其他通信协议可以用于WLAN104,比如,IEEE 802.11n、IEEE 802.16e(也被称作微波接入的全球可互操作性,即“WiMAX”)、或IEEE 802.20(也被称作移动无线宽带接入)。WLAN 104包括统一提供WLAN覆盖区域的一个或多个无线RF接入点(AP)114(在图1中示出了其中之一)。
WLAN 104可以是例如用户的个人网络、企业网络、或互联网服务提供方(ISP)、移动网络提供方或公共或半公共区域的财产所有者提供的热点。接入点114连接到接入点(AP)接口116,接入点接口116可以直接连接到无线连接器系统120(例如,如果接入点114是无线连接器系统120所驻留的企业WLAN 104的一部分),或如果接入点114是个人Wi-Fi网络或Wi-Fi热点则经由传输设施112间接连接到无线连接器系统120(在该情况下,用于安全地连接到无线连接器系统120的机制(比如虚拟私有网络(VPN))可能是恰当的)。AP接口116提供在接入点114和无线连接器系统120之间的转换和路由服务,以方便与无线连接器系统120直接或间接的通信。
可以将无线连接器系统120实现为一个或多个服务器,且一般位于防火墙113之后。无线连接器系统120管理去往和来自一组被管理的移动通信设备201的包括电子邮件消息在内的通信。无线连接器系统120还提供对用户和可以连接到无线连接器系统120的移动通信设备201的管理控制和管理能力。
无线连接器系统120允许移动通信设备201接入网络124及相连的资源和服务,比如具有全局地址簿134的消息收发(messaging)服务器132(例如,微软ExchangeTM、IBM Lotus DominoTM、或NovellGroupWiseTM电子邮件消息收发服务器),以及可选的其他服务器142。其他服务器142可以包括用于向无线网络101中的移动通信设备201提供诸如互联网内容或来自组织的内部服务器的内容的内容,以及包括用于实现基于服务器的应用的应用服务器。
全局地址簿134包括由网络124的IT(信息技术)管理员产生和维护的电子联系人记录。一般地,全局地址簿由消息收发服务器132独自维护,且在移动设备201上不存在本地副本。此外,全局地址簿一般包括针对相应网络124(例如,企业)的所有用户的联系人记录。全局地址簿134中的联系人记录可以是一个或多个个人联系人记录(或用户记录)或列出了多个个人(用户)的组地址或分布列表。
无线连接器系统120一般提供与移动通信设备201的安全的数据交换(例如,电子邮件消息、个人信息管理器(PIM)数据和IM数据)。在一些实施例中,对在无线连接器系统120和移动通信设备201之间的通信加密。在一些实施例中,使用对称加密密钥对通信加密,该对称加密密钥是使用高级加密标准(AES)或三重数据加密标准(三重DES)加密来实现的。在安全的、双向认证的环境中产生私有加密密钥,且将其同时用于数据的加密和解密。
无线网关110适于向无线连接器系统120发送通过WWAN 102从移动设备201接收到的数据分组。然后无线连接器系统120向恰当的连接点(比如,消息收发服务器132、内容服务器132或应用服务器136)发送数据分组。相对地,无线连接器系统120向无线网关110发送从例如消息收发服务器132或其他服务器142接收到的数据分组,然后无线网关110向目的移动设备201发送该数据分组。WLAN 104的AP接口116在移动设备201、无线连接器系统120和网络连接点(比如,消息收发服务器132、内容服务器132和应用服务器136)之间提供类似的发送功能。
网络124可以包括私有局域网、城域网、广域网、公共互联网或他们的组合,且可以包括使用这些网络中任意一种单独或以组合方式构建的虚拟网络。计算机117可以直接或经由中间通信网络(比如互联网112)间接连接到网络124。当计算机117经由例如互联网112间接地连接到网络时,VPN或用于安全连接到网络124的其他机制可以是恰当的。计算机117可以具有任何合适的构造,且如本领域众所周知的,至少包括处理器、以及均连接到处理器的显示屏、一个或多个用户输入设备、以及存储器。计算机117可以是台式计算机、膝上型/笔记本/上网本计算机、或它们的任一组合,且可以具有用于连接到网络124的有线或无线的通信子系统。
移动设备201可以备选地使用计算机117经由网络124连接到无线连接器系统120。在至少一些实施例中,出于安全原因,移动设备201为了连接到无线连接器系统120所使用的计算机117被限制为直接连接到网络124的计算机117。可以提供链路106,用于在移动设备201和连接到无线连接器系统120的计算机117之间交换信息。链路106可以包括物理接口和短距离无线通信接口中的一项或两项。物理接口可以包括以下各项之一或它们的组合:以太网连接、通用串行总线(USB)连接、FirewireTM(也被称作IEEE 1394接口)连接、或其他串行数据连接,经由移动设备201和计算机117的相应端口或接口。短距离无线通信接口可以是个域网(PAN)接口。个域网是无线点对点连接,意味着不需要物理电缆来连接两个端点。
将意识到提供上述通信系统仅用于说明,且上述通信系统包括与移动通信设备201一起使用的大量可能的配置中的一种可能的通信网络配置。可以将本公开的教导与任何其他类型的网络及相关联的设备结合使用,在实现或方便无线通信方面是有效的。本领域技术人员将理解通信系统的合适变化,且这些变化预期落入本公开的范围中。
现在参见图2,其示出了可以应用本公开所述的示例实施例的移动设备201的示例实施例。移动设备201是具有数据和语音通信能力以及经由例如互联网与其他计算机系统通信的能力的双向通信设备。取决于移动设备201提供的功能,在各种实施例中,设备201可以是被配置为同时支持数据和语音通信的多模通信设备、智能电话、移动电话或支持无线通信的PDA(个人数字助理)、或具有无线调制解调器的计算机系统。
移动设备201包括将设备201的组件罩于其中的刚性外壳(未示出)。在印刷电路板(PCB)上构建设备201的内部组件。移动设备201包括控制器,控制器包括控制设备201的整体操作的至少一个处理器240(比如,微处理器)。处理器240与设备子系统交互,比如用于与无线网络101交换射频信号以执行通信功能的无线通信子系统211(有时被称作无线层)。处理器240与附加设备子系统交互,附加设备子系统包括:显示屏204(比如液晶显示(LCD)屏)、输入设备206(比如键盘和控制按钮)、闪存244、随机存取存储器(RAM)246、只读存储器(ROM)248、辅助输入/输出(I/O)子系统250、数据端口252(比如串行数据端口,比如通用串行总线(USB)数据端口)、扬声器256、麦克风258、短距离通信子系统262、以及统称为264的其他设备子系统。图2所示的一些子系统执行与通信相关的功能,反之,其他子系统可以提供“驻留”或设备上(on-device)功能。
在一些实施例中,设备201可以包括触摸屏显示器。可以使用连接到电子控制器的触敏输入面来构建触摸屏显示器,且该触敏输入面覆盖在显示屏204上。触敏覆盖和电子控制器提供了触敏输入设备,且处理器240经由电子控制器与触敏覆盖进行交互。在一些实施例中,将触摸屏与显示器直接集成。在其他实施例中,将触摸屏放在显示器之后。
通信子系统211包括接收机214、发射机216以及相关联组件,比如一个或多个天线单元218和220、本地振荡器(LO)222、以及处理模块,比如数字信号处理器(DSP)224。如本领域众所周知的,天线单元218和220可以嵌入或内置于移动设备201中,且接收机和发射机可以共享单一的天线。如对于本通信领域技术人员显而易见地,无线通信子系统211的具体设计取决于移动设备201预期操作所在的无线网络101。
移动设备201可以与无线网络101的多个固定收发信机基站108中任意一个在其地理覆盖区域中进行通信。移动设备201可以在完成所需网络注册或激活步骤之后通过无线网络101发送和接收通信信号。将由天线218通过无线网络101接收的信号输入至接收机214,接收机214可以执行常见的接收机功能,比如信号放大、下变频、滤波、信道选择等等,以及模数(A/D)转换。对接收信号的A/D转换允许更复杂的通信功能,比如要在DSP 224中执行的解调和解码。以类似方式,处理要发送的信号,包括由例如DSP 224执行的调制和编码。将这些DSP处理过的信号输出到发射机216,用于数模(D/A)转换、上变频、滤波、放大、以及经由天线220向无线网络101发送。DSP 224不仅处理通信信号,还可以提供对接收机和发射机的控制。例如,可以通过在DSP 224中实现的自动增益控制算法来自适应地控制对在接收机214和发射机216中的通信信号应用的增益。
处理器240在存储的程序控制下操作,且执行在存储器中存储的软件模块221,比如持久性存储器,例如在闪存244中。如图2所示,软件模块221包括操作系统软件223、软件应用225,软件应用225包括电子邮件消息收发应用272(也被称为电子邮件客户端272)、个人地址簿274、日历应用276、电话应用278、以及图形认证模块280。本文稍后将详细讨论图形认证模块280的示例实施例。认识到如本文所述的图形认证模块280及其各种组件可以形成在设备201上运行的分立模块,或可以根据需要将图形认证模块280的功能分布在设备201上作为分离的模块或在其他现有模块中集成。这种分立或分布式的实现都落入如本文所述的图形认证模块280的实施例中。
软件应用225还可以包括一定范围的应用,包括例如:记事本应用、互联网浏览器应用、语音通信(即,通话)应用、测绘应用、或媒体播放器应用、或它们的任意组合。每个软件应用225可以包括根据应用来定义用户界面(即,显示屏204)中的特定字段和图形单元(例如,文本字段、输入字段、图标等等)的摆放的布局信息。
本领域技术人员将意识到可以将软件模块221或其一部分临时加载到易失性存储器(比如RAM 246)中。如本领域技术人员显而易见地,RAM 246用于存储运行时间数据变量和其他类型的数据或信息。尽管针对各种类型的存储器描述了特定功能,其仅作为一个示例,且本领域技术人员将意识到还可以向各种类型的存储器以不同分配方式分配功能。
在一些实施例中,辅助I/O子系统250可以包括外部通信链路或接口,例如以太网连接。移动设备201可以包括:用于与其他类型无线网络通信的其他无线通信接口,例如,诸如正交频分复用(OFDM)网络的无线网络;或GPS(全球定位系统)子系统,包括用于与GPS卫星网络(未示出)通信的GPS接收机或收发信机。辅助I/O子系统250可以包括指向或导航输入设备,比如触摸板、可点击轨迹球或滚轮或指轮、或用于响应于设备201上的各种事件(比如电子消息的接收或呼入电话呼叫)来提供振动通知的振动器,或用于其它目的的指向或导航输入设备,比如触觉反馈(触摸反馈)。
在一些实施例中,移动设备201还包括可抽取式存储卡或模块230(一般包括闪存)以及存储卡接口232。网络接入一般经由存储卡230与移动设备201的订户或用户相关联,存储卡230可以是在GSM网络中使用的订户识别模块(SIM)卡或在相关无线网络类型中使用的其他类型的存储卡。存储卡230插入或连接到移动设备201的存储卡接口232,以在无线网络101中操作。
移动设备201还在可擦除持久性存储器中存储其他数据227,在一个示例实施例中,该可擦除持久性存储器为闪存244。在各种实施例中,数据227包括服务数据,服务数据包括移动设备201用于建立并维持与无线网络101的通信所需的信息。数据227还可以包括用户应用数据,比如电子邮件消息、地址簿和联系人信息、日历和日程信息、记事本文档、图像文件、以及在移动设备201上由其用户存储的其他一般存储的用户信息、以及其他数据。可以将存储在移动设备201的持久性存储器(例如闪存244)中的数据227至少部分地组织为一定数目的数据库,每个数据库包含具有相同数据类型的数据项或与相同应用相关联的数据项。例如,可以在设备存储器的各自数据库中存储电子邮件消息、联系人记录和任务项。
移动设备201还包括作为电源的电池238,其一般是可以通过例如耦合到电池接口(比如,串行数据端口252)的充电电路而充电的一个或多个可充电电池。电池238向移动设备201中的至少一些电路供电,且电池接口236向电池238提供机械和电子连接。电池接口236耦合到稳压器(未示出),该稳压器向移动设备201的电路提供功率V+。
短距离通信子系统262是附加可选的组件,其在移动设备201和不同的系统或设备(不一定是类似设备)之间提供通信。例如,子系统262可以包括红外设备及相关联电路和组件、或符合无线总线协议的通信机制,比如Bluetooth
通信模块,以提供与支持类似功能的系统和设备的通信。
一般在制造期间或之后在移动设备201上安装包括数据和语音通信应用在内的控制基本设备操作的应用的预定集合。也可以将附加应用和/或对操作系统221或软件应用225的升级通过无线网络101、辅助I/O子系统250、串口252、短距离通信子系统262、或其他合适的子系统264加载到移动设备201上。可以永久性地安装下载的程序或代码模块,例如,将其写到程序存储器(即,闪存244)中,或写入并在RAM 246中执行,用于由处理器240在运行时执行。应用安装上的这种灵活性增加了移动设备201的功能,且可以提供增强的设备上功能、通信相关功能、或二者同时。例如,安全的通信应用可能使得使用移动设备201来执行电子商务功能和其他这种金融交易成为可能。
移动设备201可以提供两种主要通信模式:数据通信模式和语音通信模式。在数据通信模式下,将由通信子系统211来处理诸如文本消息、电子邮件消息、或网页下载的接收数据信号,并将其输入到处理器240中用于进一步处理。例如,可以由浏览器应用来进一步处理已下载的网页,或可以由电子邮件消息收发应用来处理电子邮件消息,且输出至显示器204。移动设备201的用户还可以使用例如输入设备以及显示屏204来撰写数据项,比如电子邮件消息。可以通过通信子系统211在无线网络101上发送这些撰写的项。
在语音通信模式下,移动设备201提供通话功能,并作为典型的蜂窝电话操作。整体操作是类似的,除了将接收信号输出至扬声器256,且由诸如麦克风258的换能器来产生用于发送的信号。由软件/固件(即,电话应用278)和硬件(即,麦克风258、扬声器256和输入设备)的组合来提供通话功能。还可以在移动设备201上实现备选的语音或音频I/O子系统,比如语音消息记录子系统。尽管一般主要通过扬声器256来完成语音或音频信号输出,显示屏204也可以用于提供对主叫方的身份、语音呼叫的时间长度、或其他语音呼叫相关信息的指示。
可以将电话应用278分为多个应用或子模块,例如,一个或多个用户电话模块和呼叫控制模块。用户电话模块通过用户界面提供各种通话特征,而呼叫控制模块提供对用户电话模块所需的公共通话功能的接入,使得可以协调来自电话模块的电话请求,并使得用户电话模块不需要都提供无线通信子系统211理解的指令。呼叫控制功能一般通过应用编程接口(API)让通话特征对于用户电话模块可用。应当认识到,电话应用278的特征或功能的全部或一部分可以通过操作系统提供,或以其他方式分布在设备201上,同时依然落在术语电话应用278的范围内。
现在参见图3,将描述示例计算机可读介质310。计算机可读介质310具有存储于其上的计算机可读指令320,当实现时,引起处理器330执行本文所述任一方法。出于应用的目的,计算机可读介质包括任何有形的计算机存储器,比如(但不限于):闪存、只读存储器、CD、DVD、和存储器棒。上面结合图2所述的图形认证模块280是计算机可读介质310的示例实现。然而,应当理解计算机可读介质310不限于在移动设备(比如上述移动设备210)上使用。处理器330的非限制性示例包括以下各项上的CPU(中央处理单元):个人计算机、膝上型计算机、平板设备、个人数字助理(PDA)、移动电话、智能电话、银行机器、以及用于进入房间或建筑物的数字认证系统、或控制系统。具有处理器、显示器以及使得用户能够在显示器上移动图像的用户界面的任何设备可以可行地使用计算机可读介质310来认证用户。
图4a中示出了由处理器330实现的方法的流程图。该方法是认证计算设备的用户的方法,计算设备具有存储基本图像和覆盖图像的存储器,基本图像具有预先选择的基本图像参考点,以及覆盖图像具有预先选择的覆盖图像参考点。方法开始于产生410已修改基本图像以及产生420已修改覆盖图像。然后,方法继续,在触摸屏显示器上显示430由已修改覆盖图像所覆盖的已修改基本图像。方法的动作440是接收用于移动已修改基本图像和已修改覆盖图像之一的输入。然后方法继续,如果满足针对已修改基本图像和已修改覆盖图像中的所述一个的移动的标准,则移动450已修改基本图像和已修改覆盖图像中的所述一个。最后,响应于在移动之后,已修改基本图像上的基本图像参考点与已修改覆盖图像上的覆盖图像参考点在触摸屏上的点处的对准,方法以指示460肯定认证结束。指示肯定认证的非限制性示例包括:提供视觉指示符;提供听觉指示符;以及允许用户访问。
现在参见图4b,将描述另一示例方法。图4b中的方法开始于图4a的动作410、420和430。在动作435,方法有细微的不同。接收用于移动已修改基本图像和已修改覆盖图像中的至少一项的输入。然后,确定436是否已满足针对移动的标准。如果满足标准,则移动450图像。然后在移动之后,确定455基本图像参考点和覆盖图像参考点是否对准。如果确定存在对准,则方法进行至动作460,其与图4a的动作460相同,指示肯定认证。如果不存在对准,或如果未满足针对移动的标准,则方法进行至指示470认证失败。
在一些实施例中,对认证失败的指示是音频信号。在一些实施例中,对认证失败的指示是显示器上的视觉输出。在一些实施例中,如果认证失败,则方法重新开始。在一些实施例中,在设定数目的认证尝试失败之后,将用户锁定,且不允许其再次尝试认证。在一些实施例中,将用户锁定,直到管理员对该锁定进行越权(override)。在其他实施例中,该锁定是针对设置的时间段的。
在一些实施例中,方法还包括对认证尝试计时。如果在时间限制中未指示肯定认证,则方法进行至动作470,即指示认证失败。
在备选实施例中,当移动覆盖图像时,已修改基本图像消失。换言之,移动包括移动覆盖图像,且方法还包括:响应于接收到输入,从显示器上移除已修改基本图像。因此,用户必须记住基本图像参考点位于显示器上何处,且在不能看到它的情况下将覆盖图像参考点对准。这增加了安全性,因为第三方不能看到任何两个点对准。然而,相比于用户可以看到基本图像参考点的情况,针对对准的容限将不那么严格。
在一些实施例中,针对移动的标准是:输入是在除了预先选择的覆盖图像参考点之外的位置处的触摸。在一些实施例中,针对移动的标准是:输入是在除了预先选择的基本图像参考点之外的位置处的触摸。在一些实施例中,针对移动的标准是:输入是在已修改基本图像和已修改覆盖图像之一上的指定位置处的触摸。在一些实施例中,针对移动的标准是:输入是在覆盖图像上的网格线处的触摸。在一些实施例中,针对移动的标准是:输入是在覆盖图像上的标签(tab)处的触摸。在一些实施例中,针对移动的标准是:输入是具有长度小于最大长度的矢量键击(stroke)。在一些实施例中,矢量键击必须在方向容限中,以满足标准。
在一些实施例中,方法还包括:随机改变响应于输入,是覆盖图像移动还是基本图像移动。在其他实施例中,对哪个图像移动的判定不是随机的,而是基于逻辑的。在非限制性示例中,移动覆盖图像,除非接触是在覆盖图像参考点附近。
在一些实施例中,如果输入是在预先选择的基本图像参考点上的触摸,则系统允许移动覆盖图像;以及如果输入是在预先选择的覆盖图像参考点上的触摸,则移动基本图像。
在非限制性示例实施例中,基本图像是场景的相片,且预先选择的参考点时场景中的对象。在其他非限制性实施例中,基本图像包括多个抽象对象,且预先选择的参考点是抽象对象之一。在其它实施例中,基本图像是数字、字符或对象的网格。
在非限制性实施例中,覆盖图像是数字、字符或对象的网格。在一些实施例中,预先选择的数字、字符或对象在网格中出现多于一次。与基本图像一样,在一些实施例中,覆盖图像是相片或抽象图像。在一些情况下,当将图像覆盖在基本图像上时,呈现为基本图像或其一部分通过覆盖图像可见。
在一些实施例中,覆盖图像和基本图像中一项或两项是3-D图像。在一些实施例中,覆盖图像和基本图像中一项或两项具有针对三维的数据,但是在2-D屏幕上显示。可以选择在所有三个维度上的点,且在这些实施例中,在三个维度上的移动是可能的。在一些实施例中,在3-D屏幕上显示图像。
在一些实施例中,由在图像的可识别部分(比如数字、字符或对象)旁边的点、x或某种其他符号来表示基本图像或覆盖图像或二者上的参考点。在一些实施例中,由相应图像中的数字、字符或对象来表示参考点。在一些实施例中,将参考点对准包括将参考点之一带到其他参考点的预定距离内。换言之,可以存在容限区域。容限区域的示例是在参考点周围的区域,在该区域中,将把用户选择解释为对参考点的选择。可以让容限区域更小以增加安全性,或更大以使得较低的精度成为可能。在一些实施例中,容限区域是可变的,且在需要增加安全性时让其更小。
在一些实施例中,在存储器中存储的覆盖图像和基本图像之一或二者包括用于产生相应图像的数据或指令。例如,存储的图像可以包括产生从1至100的数字的2D网格的指令。
尽管参照图4a和4b所述的方法引用一个基本图像和一个覆盖图像以及每个图像上的单个参考点,应当理解可以使用任何数目的图像和参考点。应当理解本文所述的方法不限于本文所呈现的动作的顺序,且可以在其他实施例中以不同的顺序来实现各种动作。
在一些示例实施例中,计算机可读介质310位于计算设备上。图5示出了计算设备500,其具有安装在其上的计算机可读介质310。计算设备500还包括存储器510,在存储器510上存储基本图像511和覆盖图像521。用于存储基本图像511和覆盖图像521的格式的非限制性示例是:bitmap(位图)、PDF、JPEG和PNG。在一些实施例中,例如在使用网格的情况下,图像的格式可以包括不同的字体或字体技术。在一些实施例中,存储器510是外部存储器,比如存储器棒或服务器上的存储器。还提供显示器530用于显示基本图像511和覆盖图像521的表示或已修改版本。在一些实施例中,显示器是触摸屏。
在计算机可读介质310的一些实施例中,产生已修改基本图像包括:在显示器上随机改变基本图像参考点的位置。在一些实施例中,相对于基本图像的其余部分,改变基本图像参考点。在其他实施例中,产生已修改覆盖图像包括随机改变覆盖图像参考点的位置。在一些实施例中,同时改变基本图像参考点和覆盖图像参考点位置。
在一些实施例中,使覆盖图像和基本图像中一项或两项失真。使图像失真的示例包括(但不限于):拉长图像(橡皮筋效应),使图像一部分模糊,压缩图像以及使图像变形。另一示例涉及根据基本图像或覆盖图像来产生图像拼贴(a collage of images),其中,可以重新配置拼贴。在这种实施例中,在呈现拼贴或已修改图像时,相应参考点应当是可见的,且不重叠的。在一些实施例中,如果参考点是一定数目的字符,则可以改变字体。
在一些实施例中,产生已修改基本图像包括制造基本图像的副本。在一些实施例中,副本是精确的副本。类似地,在一些实施例中,产生已修改覆盖图像包括制造覆盖图像的副本,且覆盖图像的副本在一些情况下可以是覆盖图像的精确的副本。
呈现已修改图像的非限制性示例包括:每次执行指令时在不同位置处呈现相应图像,使得图像的外观失真,以及旋转已修改图像。
在计算机可读介质310的一些实施例中,输入包括对已修改基本图像的移动和对已修改覆盖图像的移动。在一些实施例中,用户使用计算设备上的导航控制来移动已修改图像。例如,可以使用鼠标来点击和拖拽要移动的图像。如果使用触摸屏,用户可以触摸和拖拽图像中的一或两个图像。其他非限制性导航控制包括键盘上的按键、触摸板、轨迹球、指轮和摇杆。在示例实施例中,输入包括对基本图像和覆盖图像的一系列移动。在一些实施例中,必须以特定顺序来移动图像的表示。例如,首先移动已修改基本图像和已修改覆盖图像之一,然后移动二者中的另一个,以对准相应参考点。在示例实施例中,单个触摸用于移动两个平面,即,基本图像平面和覆盖图像平面。在一些实施例中,如果支持多点触控输入,则可以由不同的手指来同时移动每个平面。一些实施例限制了每个表示在水平、对角线或垂直方向上的移动。
在一些实施例中,手势用于移动已修改基本图像或已修改覆盖图像或二者同时。例如,压力或加速计可以控制移动。
在一些实施例中,屏幕环绕(screen wrap)也可以用于混淆第三方观察者。可以至少以两种方式来使用屏幕环绕。在第一种中,当一部分图像移动到显示器的一个边缘之外时,该部分立刻出现在相对侧上。在第一种方式下,图像通常与显示器是相同大小的。在第二种方式下(在图像大于显示器时有时使用第二种方式),一部分图像移动出边缘,但是不在相对侧立刻看到。在该情况下,第三方观察者将看不到整个图像。在一些这种实施例中,一个或多个参考点可能在屏幕上不会首先可见,且用户必须移动相应图像的表示以将参考点带到视野中。
在一些实施例中,根据用户触摸显示器的位置,在显示器上将覆盖图像分割。例如,如果用户触摸显示器上非常接近显示器的右边缘处,则覆盖图像的一部分可以出现在显示器的右侧,且其余部分出现在显示器的左侧。
在一个实施例中,覆盖图像是数字网格,且当显示已修改覆盖图像时,网格可以向上或向下移动,同时仅一部分网格可见,即较高或较低的数字可能不可见。用户移动网格以将预先选择的数字与已修改基本图像上的参考点对准。在一些实施例中,必须将预先选择的数字向上或向下移动到正确的高度,然后向左或向右移动以对准基本图像上的参考点。可以在任何实施例中使用对垂直移动参考点然后水平移动参考点的要求,或使用对水平移动参考点然后垂直移动参考点的要求,且该要求不受限于数字网格。
也可以使用全景相片作为基本图像或覆盖图像或二者同时。在一些这种实施例中,可移动相片以对准参考点。在一些实施例中,可移动相片以将相片上的点对准网格上的数字。在一些实施例中,可移动相片以将相片上的点对准网格上的与预先选择的数字相对应的列和行。在其他实施例中,仅可以向左或向右移动相片。在其它实施例中,仅可以向上和向下移动相片。
在一些实施例中,覆盖图像是图像的网格,且呈现已修改覆盖图像包括:改变预先选择的覆盖图像参考点的位置,同时维持与具有公共特征的图像的列和行中的至少一项。在示例实施例中,该网格是数字的网格,且所有“x1”在一列中(1、11、21等等),且所有的“x2”在另一列(2、12、22等等),以此类推,但是每次执行指令时,每个数字与相应列的位置改变。例如,如果网格是数字的网格,且覆盖图像上预先选择的参考点是数字23,每次呈现网格时,参考点将处于不同的行和列,但是一直与“20s”在相同的列上,且与“x3s”在相同的行上。如果网格由具有变化大小的形状、颜色或其他特征构成,则特征(例如,正方形)可以一直在相同列上,但是在列中位置可以改变。在列或行中维持参考点与公共特征点向用户提供了在寻找参考点时的某种协助,同时维持了对随机改变参考点的位置的增加安全性。
在另一实施例中,响应于用户输入而随机产生网格,用户输入是比如(但不限于):手势、选择按键、以及键击序列。例如,对于具有加速计的设备,晃动可以重置网格。在另一示例中,在每次触摸显示器时,可以重置网格。在一些实施例中,网格不出现,直到触摸显示器。在其他实施例中,当触摸时,网格消失,然后网格中的对象以不同顺序重新出现。在其他实施例中,可以将已修改基本图像或已修改覆盖图像或二者同时编程为在预定时间段之后重置。
在一些实施例中,存在两个预先选择的覆盖图像参考点。为了认证,用户必须移动第一覆盖图像参考点,以与第一基本图像参考点对准,然后移动基本图像,以将第二基本图像参考点与第二覆盖图像参考点对准。在实施例中,第一和第二基本图像参考点是相同的。
参见图6,将描述计算设备600。在一些实施例中,计算设备600是移动通信设备,比如本文描述的移动设备201。然而,应当理解计算设备600可以是任何计算设备。非限制性示例包括:个人计算机、膝上型计算机、平板设备、个人数字助理(PDA)、移动电话、智能电话、银行机器、用于允许对建筑物或房间的出入的门禁设备、以及用于控制系统或设备的电子控制器。
计算设备600包括:图形计算机可读介质310、触摸屏620、以及处理器630。触摸屏620用于显示已修改基本图像和已修改覆盖图像,且用于接收用于移动已修改基本图像和已修改覆盖图像的输入。处理器630用于执行指令。在一些实施例中,计算设备600还包括存储器。计算设备600在一些实施例中还包括闪存,认证模块位于该闪存之上。
在一些实施例中,在计算设备600上配置了专用控制,以移动基本图像或覆盖图像的表示或二者同时。
应当理解本文所述的实施例不受限于一个基本图像和一个覆盖图像。多层图像是可能的。此外,每层上的多个参考点也是可能的。
现在参见图7a至7d的屏幕截图,将描述所提出的方法的具体实现。图7a示出了基本图像700,包括可以被选作参考点的一定数目的对象:树、花、人、鸟、太阳、以及云。在本示例中,用户已选择了花710作为基本图像参考点。在图7b中,示出了作为从1至12的数字网格的覆盖图像720。在该情况下,用户已选择数字8作为覆盖图像参考点722。在其他实施例中,不需要向用户呈现网格来进行选择。可以呈现对话框,提示用户选择在例如1和12之间的数字。参见图7c,为了开始对用户的认证,呈现由已修改覆盖图像740所覆盖的已修改基本图像730。在已修改基本图像730中,已改变了花710的位置。在一些实施例中,基本图像参考点710的位置随着每次认证尝试而变化。在已修改覆盖图像740中,已改变了网格中数字的顺序,使得覆盖参考点722在不同的位置上。应当理解,在一些实施例中,网格中的数字的顺序保持相同,且覆盖图像参考点722的位置可以保持相同,同时基本图像参考点710的位置变化。在一些实施例中,在已修改覆盖图像中,数字可以出现多于一次。参见图7d,通过满足移动标准,且移动已修改覆盖图像740,使得覆盖图像参考点722与基本图像参考点710对准,用户已成功地完成了认证。
尽管有时在方法方面来描述本公开,本领域技术人员将理解,本公开的目的还在于包括用于执行所述方法的至少一些方面和特征的组件在内的各种装置,其可以是硬件组件、软件或二者的任意组合,或其可以具有任何其他方式。此外,用于与该装置一起使用的制造产品,比如在其上记录有程序指令的预先记录的存储设备或其他类似的计算机可读介质,或携带计算机可读程序指令的计算机数据信号可以指导装置来方便所述方法的实现。应当理解这种装置、制造产品、以及计算机数据信号也在本公开的范围内。
上面呈现的各种实施例仅作为示例,且不以任何形式限制本公开的范围。对于本文描述的创新的变型对于本领域普通技术人员来说是显而易见的,这种变型在本申请的预期范围内。具体地,可以选择来自上述实施例中一个或多个实施例的特征,以产生由特征的子组合构成的上面未显式描述的备选实施例。此外,可以选择并组合来自上述实施例中一个或多个实施例的特征,以产生由特征的组合构成的上面未显式描述的备选实施例。适合这种组合和子组合的特征对于整体上考虑了本申请的本领域技术人员而言是显而易见的。在这里以及记载的权利要求中所描述的主题意在覆盖并包含在技术上的所有合适的改变。