CN100557556C - 在线数据加密与解密 - Google Patents
在线数据加密与解密 Download PDFInfo
- Publication number
- CN100557556C CN100557556C CNB2005800298378A CN200580029837A CN100557556C CN 100557556 C CN100557556 C CN 100557556C CN B2005800298378 A CNB2005800298378 A CN B2005800298378A CN 200580029837 A CN200580029837 A CN 200580029837A CN 100557556 C CN100557556 C CN 100557556C
- Authority
- CN
- China
- Prior art keywords
- user
- image
- identifier
- server
- data
- 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.)
- Active
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
为计算机实现的网络上所传输的数据提供加密与解密的***与方法,较佳的做法是,在输入于用户计算机时,为诸如口令的用户认证标识符数据提供加密与解密。所述***与方法使最终用户能够根据一个图形图像(202)的一个第一部分上随机排列的元素之一,理智地选择一个标记(214)。图形图像的一个第二部分(200)包括任何单独的认证标识符序列的可能的元素的一个排列(230),并且将其相邻第一部分加以定位。所述***与方法通过移动所选择的标记和把所选择的标记与出现在较外部分的认证标识符的一个所选择的元素基本对齐所需的第一部分,促使用户输入标识符的每一元素。根据一个实施例,图像部分为同心轮盘(200,202)。根据另一个实施例,把图像部分按相邻的行(226,230)加以排列。
Description
本专利文献所公开的一部分内容包括受到版权保护的内容。当本专利文档,即本专利所公开的内容出现在专利接收局的专利文件或记录中时,本版权拥有者不反对任何人对本专利文档,即本专利所公开的内容的复制,但在其它任何情况下均保留有所有版权。
技术领域
总体上讲,本发明涉及用于对将在Internet或其它网络上进行的事务处理提供加密与解密包括认证的***与方法,并且涉及适合于在这样的***与方法中使用的用户接口。
背景技术
公司与个人通过Internet所进行的在线事务处理的量一直在以惊人的速度不断地增长。敏感的私人身份信息通常用于对进行在线事务处理的用户的认证。Internet事务处理对身份信息使用的增加,同时导致了这些信息被拦截与被盗取的危险性的增加。身份盗取指的是某人在未经他人同意的情况下使用他人的口令、用户名、社会保险号码、信用***码或其它标识个人的信息时所犯欺诈行为。根据2003年9月美国联邦贸易委员会(FTC)的调查,2730万美国人在最近5年期间曾遭遇过身份盗取,其中,仅2002年就有990万人遭遇过身份盗取。根据FTC的调查,2002年身份盗取致使公司和金融机构损失总共约480亿美元,据称受害的消费者蒙受了50亿美元的经济损失。
身份盗取的一种形式是,使用称为“phishing”的社会工程攻击所实施的犯罪行为。根据Internet百科全书Wikipedia,把phishing定义为通过伪装成对这样的信息具有真实需求的可信赖的人,以欺骗手段对诸如口令和***细节等敏感个人信息的欺诈性的获取。通常,phishing欺诈阴谋使用一个伪装Web站点生成电子邮件消息,使电子邮件消息像最初来自一个可信任的服务提供商,例如来自某一银行或某一商家的要求提供必要信息的请求那样,出现在Web站点上。phishing电子邮件消息通常包括与Web站点的链接,好像这些链接也属于服务提供商,但事实上,这些链接由“phisher”加以使用。伪装的Web站点试图欺骗用户,诱使用户提供他们的口令或其它敏感的个人信息。
身份盗取的另一种形式是,使用称为“pharming”的攻击所实施的犯罪行为。在这种类型的攻击中,仅旨在实施罪行的软件,通常通过DNS劫持或投毒的方式,把无知的用户误导于欺诈性的站点或代理服务器。pharming利用了DNS服务器软件的易受攻击性,这一易受攻击性为黑客获取站点的域名,致使导向该Web站点的业务被重新导向另一个Web站点,提供了可能。DNS服务器为负责把Internet名字解算为它们的实际地址的机器,它们用作Internet的“路标(signposts)”。如果接收所重新导向的业务的Web站点为一个伪Web站点,例如为某一银行站点的一个拷贝,则可将其用于“phish”或者用于盗窃计算机用户的口令、PIN号码、账户号码与/或其它保密信息。
用于获取用户所输入的保密信息的各种其它欺诈性机制是人们所熟悉的。例如,包括键盘记录器、鼠标点击记录器以及屏幕捕获记录器的刺探软件是人们十分熟悉的,并且被用于此目的。另外,其它类型的刺探软件,例如,窥视件、侦察件、非病毒疾病件、黑客实用程序、监视实用程序以及特洛伊也是人们十分了解的。又例如,“邪恶双胞胎”攻击也正变得日趋普遍。邪恶双胞胎是一种自制的无线存取点,也称为“热点”,其伪装为一个合法的无线存取点,以在不为最终用户所察觉的情况下收集个人或公司信息。攻击者把其自己定位在存取点的附近,并且让其计算机发现合法存取点所使用的名字和无线电频率。然后其使用相同的名字,按该频率发射他自己的射频信号。对于本发明而言,刺探软件为任何有助于未经授权地获取诸如关于个人或机构的信息的软件程序。通常刺探软件也把自己隐藏起来,不为用户所发现。典型的情况是,刺探软件未经用户同意地将其自己安装在用户的计算机上,然后监视或控制对该设备的使用。用户的每次击键、所有的聊天对话、所有被访问的Web站点、每次用户与浏览器的交互、每一被执行的应用、每一被打印的文档以及所有文本和图像,都可能被刺探软件所捕获。通常,刺探软件能够局部地保存所捕获的数据,与/或把所捕获的数据传输于Internet上的第三方,最常见的情况是,在不为用户所察觉或未经用户同意的情况下,进行这一保存与/或传输。键盘记录器和鼠标点击记录器也可能呈连接在键盘/鼠标器电缆和计算机之间的硬件或键盘/鼠标器设备内部的硬件的形式。
将其用于进行欺诈的另一种保密、敏感个人信息的获取者称为“背后(over the shoulder)”侦察者。这一侦察者暗中阅读用户的显示器,以获取诸如字母数字的信息或其它形式的信息。例如,把小键盘与/或键盘图像用于用户数据输入的传统的图形用户接口,也易受鼠标点击记录器、屏幕捕获记录器等方案的攻击。由一个唯一的图形图像,例如由包括数值1的像素表示图形接口中的每一字母数字字符。屏幕捕获记录器利用光字符识别(OCR)技术,对鼠标点击和相应的字母数字图形进行译解,以探知用户的ID和口令的实际的字母数字文本字符。完善的屏幕捕获记录器还具有利用图形图像的检查和和大小特征,以探知哪一标识符字母数字字符相应于数据输入期间用户的鼠标点击所选择的每一图形图像的能力。在这些方式下,甚至是当图形用户接口已经重新排列了小键盘或键盘上的字母数字字符的次序时,屏幕捕获记录器也可以获取个人信息。
已知的抗病毒和抗侦察件软件产品试图使用户能够防范某些身份盗取。然而,这些产品不能够提供对盗取的安全防范,因为它们是本能反应的。因此,它们全都依赖于一个可复制的签名。必须不断地对它们加以更新,而且仅可用至它们已被更新的程度。它们总是易受新病毒或攻击形式的攻击。因此,对过期的抗病毒和抗侦察件文件的使用,提供的是最小程度的保护,充其量,可用于防止计算机数据受到外部威胁。因此,这些产品的一个缺点是,必须不断地更新抗病毒和抗侦察件程序所使用的信息,以反映新发现的方案。除了保持病毒信息的当前性外,所述***还必须周期性地扫描潜在的感染。
防火墙软件向用户提供了一条可用的附加防线。把防火墙软件安装在用户的计算机上(个人或公司防火墙),以警告用户:用户的计算机中的一个程序是否在用户不知或用户未同意的情况下正在访问网络。然而,如果一个特洛伊危及一个经过授权的程序和端口的安全,则防火墙允许特洛伊通过端口传输数据。
传输控制协议/Internet协议(TCP/IP)是Internet和某些专用网络的基本通信协议。超文本传送协议安全(HTTPS)是一种基于TCP/IP的安全Internet通信协议,其使用了一个允许使用加密的数据流进行安全数据传送的安全套接层(SSL)协议。HTTPS的主要目的是,以一种安全的方式,从诸如Web页的远程宿主获取超文本对象。SSL协议允许客户机,包括Web浏览器和HTTP服务器,在一个安全连接上进行通信。SSL把加密、源认证以及数据完整性作为一种在不安全的公共网络上用于保护所交换的信息的机制加以提供。许多电子商务应用都使用了这些协议,以确保服务器和Internet之间的安全传输。
人们所熟悉的***的另一个缺点是,它们不同程度地依赖人去维持它们的安全状态。如以上所描述的,尽管采取了安全预防措施,但仍可能危及用户的信息与/或***的安全。其它防范身份盗取的人们所熟悉的方法包括:要求用户在用户的***中使用一个“令牌”或者保持一个数字证书,以用于注册过程期间的认证。令牌通常为存取某一服务提供商的***所需的一个***或一个钥匙链大小的认证装置。令牌通常显示随时间改变的、与网络上的一个认证服务器同步的数值。令牌也可以使用一种针对服务器的询问/答复方案。这一方法要求用户具有令牌,并且根据令牌还输入除口令与/或个人身份号码(PIN)之外的用于认证的信息。使用令牌的一个问题是,除了保持所要求的口令与/或PIN的安全外,用户还必须保持令牌的安全。另外,与令牌的丢失或损坏相关的消费者支持开销也引发了更多的问题。因此,还需要一种可为保密信息提供安全保障,但不需要创建和维持昂贵的硬件设备以防止身份盗取的***与方法。
发明内容
通过提供能够在把数据输入于用户的计算机中时对用户认证凭证进行加密的用户接口,以及在计算机实现的网络上实际提供对任何可以由符号表示的数据的加密与解密,根据本发明的***与方法,克服了已知***与方法的缺点,其中,表示数据的符号,例如,可以为通常由文字处理或其它软件所提供的字母数字或其它符号,以及能够在这样的网络中或这样的网络上加以处理的其它符号。
根据本发明的***与方法的一个优点在于,它们提供了在输入时对用户认证凭证的加密,因此避免了信息以原始形式存在于用户的计算机的任何地方,从而防止了信息在用户的计算机中易受拦截的弱点,以及易受相继的欺诈性使用的伤害。
另一个优点在于,这些***与方法不依赖于用于防止最终用户在线身份被盗的令牌、卡以及其它类似的硬件装置、数字证书、抗病毒软件、或者个人防火墙方案。
宽泛地讲,本发明提供了这样的方法、***以及接口:用于在输入于一个客户机计算机中时进行数据加密,并且一旦已针对网络上的一个具体的事务处理或对话把一个用户名提供于一个远程、合法的服务器,则在该服务器上进行数据解密。较佳的做法是令所述数据为用于对该用户进行认证的身份数据,其中,针对所述用户创建一个正确的认证标识符,并且将其存储在一个远程服务器中,即在其中其试图进行一个具体的事务处理的对话之前,将这一正确的身份标识符存储在该远程服务器中。认证标识符为按某一预先确定的顺序与/或某一预先确定的空间、数值或其它关系排列的预先确定数目的元素、字符或者符号。一种加密方法与***包括选择一个基图形图像,生成基加密的键数据值,通过把图形接口随机地和有限地在x轴和y轴上位移、随机地畸变图形接口、随机地畸变图形接口的文件大小与/或随机地畸变图形接口的检查和中的任何一或多个动作,随机地把键值赋予图形属性。总体上讲,针对该方法与***的解密包括用户点击图形小键盘或键盘上的一个键,发送针对字母数字接口的预先赋予的加密的键数据值和针对动态接口的位移值,然后从相应的加密的数据中查找相应的键数据值。另一种发明性的***与方法包括一个计算机实现的***,用于提供在把标识符的输入于与某一计算机网络进行通信的一个用户计算机中的时刻对用户标识符的加密,以及使用一个图形轮盘接口向位于网络上一个远程地点中的一个服务器处对标识符的解密,其中,图形轮盘接口由计算机显示器上的两个预先定义的区域组成,其中,在第一个区域中,用户标识符包括从按某一顺序排列的一组预先确定的字母数字字符中所选择的一个以上的字母数字元素。第二区域包括称为标记的一组元素或标识符,较佳的做法是每一扇段一个标记,以及较佳的做法是为一个非字母数字字符。然后,由最终用户位移这一第二区域,以使其位置与第一区域中的每一所希望的标识符顺序地相匹配,即通过从一组预先确定的标记中选取一个已知的预先确定的标记,然后把所选择的标记输入于***中,实现这一匹配。在每次用户输入一个标识符元素之后,对所述预先确定的标记集合进行随机化处理。由于在对话开始时知道提供于服务器的用户名、位移以及用户标识符,所以服务器可以反推用户所采取的动作,以标识所选择的标记,并且相继地把用户所输入的标识符与预先确定的标识符相关联,从而可以对用户进行认证。
服务器适合于通过把位移与针对先前所提供的用户名的用户标识符的第一元素相关联,初始确定一个与第一用户所选择的扇段相关的用户所选择的标记。
参照以下的描述、所附权利要求以及附图,将可以更好地理解本发明的这些以及其它实施例、特性、方面以及优点。
附图说明
当与附图1~30相结合时,参照以下的详细描述,本发明的上述方面、特性、及其显著的优点,将会变得更加易于理解,在这些图中:
图1说明了一个用于输入用户认证的示范性的现有技术***;
图2说明了一个可输入认证信息的示范性的现有技术小键盘图形用户接口;
图3说明了一个可输入认证信息的示范性的现有技术键盘图形用户接口;
图4是一个方框图,说明了一个可使用户把经由某一网络连接的一个用户计算机上的信息输入于一个计算机/服务器的典型的现有技术***;
图5说明了一个现有技术键盘图像,这一键盘图像将有助于对图6~10中所说明的本发明的实施例的新特性的解释;
图6说明了根据本发明的一个实施例的一个优选的、畸变类型的较高安全性的键盘图形认证接口;
图7说明了根据本发明的一个可选实施例的一个优选的、畸变类型的较高安全性的键盘图形认证接口;
图8说明了根据本发明的一个可选实施例的一个优选的、畸变类型的较高安全性的键盘图形认证接口;
图9说明了根据本发明的一个可选实施例的一个优选的、文件大小类型的较高安全性的键盘图形认证接口;
图10说明了根据本发明的一个可选实施例的一个优选的、文件大小类型的较高安全性的键盘图形认证接口;
图11说明了根据本发明的一个可选实施例的一个优选的、杂凑类型的较高安全性的键盘图形认证接口;
图12说明了根据本发明的一个可选实施例的一个优选的、杂凑类型的较高安全性的键盘图形认证接口;
图13说明了一个现有技术键盘图像,这一键盘图像将有助于对图14~18中所说明的本发明的实施例的新特性的解释;
图14说明了根据本发明的一个可选实施例的一个优选的、偏移类型的较高安全性的键盘图形认证接口;
图15说明了根据本发明的一个可选实施例的一个优选的、偏移类型的较高安全性的键盘图形认证接口;
图16说明了根据本发明的一个可选实施例的一个优选的、偏移类型的较高安全性的键盘图形认证接口;
图17说明了根据本发明的一个可选实施例的一个优选的、检查和类型的较高安全性的键盘图形认证接口;
图18说明了根据本发明的一个可选实施例的一个优选的、检查和类型的较高安全性的键盘图形认证接口;
图19是一个方框图,说明了针对图6~18的实施例的用户端和服务器端上的一个优选的加密与解密过程;
图20说明了根据本发明的一个可选实施例的一个优选的、动态图形轮盘类型的较高安全性的键盘图形认证接口;
图21说明了根据本发明的一个可选实施例的一个优选的、动态滑板类型的较高安全性的键盘图形认证接口;
图22是一个方框图,说明了针对本发明的非用户个性化标记实施例的一个优选的加密与解密过程;
图23是一个方框图,说明了针对本发明的用户个性化标记实施例的一个优选的加密与解密过程;
图24是一个方框图,说明了用于本发明的实施例的加密与解密的一个优选的客户机处理流程;
图25是一个方框图,说明了一个用于认证过程的现有技术客户机/服务器交互;
图26是一个方框图,说明了一个加密的和用于本发明的实施例的优选的客户机/服务器交互;
图27是一个方框图,说明了一个认证过程;
图28是一个方框图,说明了一个用于本发明的实施例的优选的认证过程;
图29为列出了加密与解密过程的一个优选实现的伪源代码;
图30为列出了本发明的图形的一个优选实现的伪源代码;
各图中使用参照符号或名字指示其中所描述的某些部件、方面或特性。公共于一个以上的图的参照符号指示了各图中所示的相同的部件、方面或特性。
本发明在产业上的可应用性与实现本发明的方式
在根据本发明的实施例中,对于在Internet或其它网络上的事务处理,通过一个实时的图像处理过程与/或通过在加以使用时间之前随机实时地创建图像,而且没有因其使通过接口实际输入的数据不可预测的集合顺序,从而可有效地使图像免受对其所进行任何非法的或未经授权的译码尝试,尽可能早地,即不晚于把信息输入于用户的计算机中的时刻,实现对信息或数据的加密与解密,其中的信息或数据,例如,可以为用户认证信息、与/或代表其它信息的数据。因此,在任何这样的网络上,信息与数据不易受到盗取。以下,将参照图1~30,与现有技术的***与方法相对照,描述本发明的加密和解密***与方法的几个实施例。如将加以解释的,本发明的大多数优选实施例用于对用户的认证,以确保Internet或其它网络事务处理的安全性。然而,本发明具有相当宽的范围,并且可对易受伤害的、由符号加以表示的信息进行加密与解密,而且还可以将它们在一个计算机实现的网络上加以传输。
为了在Internet或其它计算机网络上进行在线事务处理,用户通常使用键盘、鼠标器或者其它输入设备,利用一个连接于Internet或其它计算机网络的Web浏览器,输入他或她的敏感的个人信息。图1说明了用于对用户的基于一个唯一用户名(用户ID)和口令的凭证进行验证的一个示范性的传统***[20]和一个认证过程。在这一例子中,将由用户加以输入的认证信息包括一个用户ID和口令,其中用户ID和口令均包括多个元素。
对于本发明的各实施例而言,术语“标识符”实际可指任何与用户所知道的数据与/或用户所拥有的或者与用户相关的某些属性相关的信息。例如,这样的标识符可以包括名字、账户号码、社会安全号码、地址、口令、个人身份号码(PIN)。另外,对于本发明的各实施例而言,术语“元素”用于标识符的上下文中,实际可为所述***所识别的任何符号。
通常情况下,在传统的***与方法中,为了用作用户ID与/或口令,较佳的做法是令元素为按某一特定顺序设置的字母数字符号。典型的用户ID和口令由在计算设备[24]上执行一个Web浏览器时经由键盘[22]所输入的一个字符串构成。在[28]处所示的一个显示器上,由浏览器向用户提供一个典型的用户输入接口[26]。作为选择,也可以经由对数字小键盘[30]的一个图形图像的鼠标点击,进行用户的数据输入,如图2中所示,或者经由对键盘[32]的一个图像的鼠标点击,进行用户的数据输入,如图3中所示。图2是最终用户为输入口令/代码/PIN可使用的数字接口的一个典型的表示,其中,最终用户通过点击该接口的相应部位,实现这一输入。这一接口准许输入唯字母数字的信息(当把每一个键用于表示若干字母或其它符号时),但可以把小键盘修改为可提供其它符号或图标。图3是最终用户为输入口令/代码/PIN可使用的字母数字键盘接口的一个典型的表示,其中,最终用户通过点击该接口,实现这一输入。
图4是一个方框图,说明了一种典型的示范性现有技术***[39],其包括一个用户计算机[40],以及一个在计算机[40]上输入信息的计算机用户[42]。计算机和Internet的设计均未考虑安全问题。安全问题只是一种事后考虑,该图说明性地描述了用户使用他或她的计算机在Internet上进行通常的事务处理的一个典型***中不同的弱点,或易受到攻击的可能的数据点。经由一个网络,把计算机[40]连接于一个计算机/服务器[49]。如图4中所说明的,可以在[47]处,例如使用HTTPS,在通过网络从用户的计算机***[39]传输到远程服务器[49]之前,对敏感信息进行加密。然而,***[39]和计算机[40]易受信息盗取,因为在输入于计算机[40]的点和调用加密过程的点之间,信息仍处于其原始形式。就本发明而言,把数据输入点和数据加密点之间的所有点统称为一个漏洞(loophole)[41]。如图4中所示意性描述的,用户在[42]处创建保密数据,并且在[41A]处,通过一或多个IO设备[43],按一种未加密的形式将其输入于用户的计算机***中,接下来,在[41B]处,经由[45]处的CPU和一或多个内核以及一或多个支持芯片,流入操作***(OS)[44],然后在[41C]处流入一或多个应用[46]。在41D处,未加密的数据接着向外流动,其中,在[47]处对其进行加密,并且经由路径[41E]、[41F]将其传递至OS[44]和一或多个I/O设备[43],接下来,使用[48]中所示的一或多个路由器或其它网络连接装置,经由路径[41H],由计算机[40]在[41G]处将其传输于服务器[49]。作为一个说明性的结果,对于以上所描述的具体的漏洞[41A~41H],以及网络的易受攻击点,会受到诸如跨站点脚本程序、键盘记录器、鼠标点击记录器、屏幕捕捉器以及中间软件中的操作的捕获威胁,即它们可以捕获处于其原始的、预先加密形式的敏感信息。因此,可能危及网络的安全,即使在已对离开用户计算机***的数据进行了加密的情况下。这是因为可以在漏洞中的任何地方,例如在位置[41A~41H]处所示的漏洞中的任何地方,例如在沿数据流的任何点,旁路加密协议或者危及加密协议的安全。
本发明的实施例提供了这样的***与方法:能够输入诸如用户认证凭证的数据,其对认证信息的加密不晚于输入点,因此封堵了这些漏洞。
图5说明了用于描述本发明的几个实施例的一个传统的图形小键盘[52]。图6~8说明了几种优选的安全小键盘图形接口[54]、[56]、[58],通过包括用于数据输入选择的小键盘的畸变,对这些安全小键盘图形接口进行改变或配置,以提供高于传统安全的安全性。较佳的做法是频繁地用其它畸变的图像取代畸变的小键盘图像,例如,针对每一对话,取代畸变的小键盘图像。由于它们的“图像畸变”,把这些实施例称为畸变类型。与图5的传统小键盘接口[52]相比,已经畸变了用户的小键盘接口。
畸变可使人类用户很容易地标识图像中的数值或其它符号,但却防止或阻碍了屏幕捕捉器/OCR和x-y坐标记录器把鼠标器或其它定位设备点击与所述接口的一个具体的键相链接。尽管图6描述了一种示范性的畸变,但沿x轴或y轴在计算机显示器窗口的限定范围内可以生成畸变数值、字母或者其它符号的图像的实际上无限大量的置换和畸变的组合,最终结果是减小了对所述图像的未经授权的译码的可能性。例如,与图5的现有技术小键盘中所示的空间关系相比,图7说明了这样的一个小键盘[56]:已对其进行了畸变,以提供或显示小键盘上所描述的数值与特性的相互间的一个不同的空间关系。在图8中,描述了另一个畸变的图形小键盘[58]接口。在这一实施例中,由虚线表示小键盘[58]的背景特性,以表明已使用了与图5的传统小键盘中所使用的颜色或灰度级阴影设置不同的颜色或灰度级阴影设置。在这些畸变类型的小键盘或键盘数据输入接口中,在每一对话中,由服务器向用户提供一个不同畸变的接口。每一对话,对接口的不同畸变和置换可能或多或少不止一次地加以进行。
对计算机屏幕显示信息成功盗取的基础是,捕获屏幕显示,然后使用其它来预测信息的未来输入。当每次一个认证对话开始时,服务器向客户机发送一个不同的图像,从而使把所捕获的信息用作预测未来行为的基础变得困难。
对于图6~8的实施例,使用各种传统的数学方法和算法,例如使用质地/畸变/噪音/像素/等过滤方法,畸变一个图像是可能的。接下来,可以在服务器上实时随机地选取这些图像,然后将它们向最终用户加以显示。可以实时地使用各种不同的算法,也可以将它们预先施加于图像,并且将它们存储在一个数据库中。
图9和10说明了本发明的可用、优选、可选实施例的另一种类型的图形接口。在图9中,描述了接口[60],其具有一个围绕键的小键盘表面的灰色背景[62],其中每一键包含一个数值。在这种类型的实施例中,对接口[60]加阴影,并且通过一或多种随机图像处理算法确定加阴影的程度。在这一方式下,提供了对小键盘的大量可能的置换和组合,另外,较佳的做法是针对每一用户对话提供一个不同的接口。任何图形图像的文件的实际的大小,仅为图像的分辨率或者一个图像中所表示的像素/英寸的一个函数。这些分辨率或者像素/英寸也确定了图像的质量。然后,服务器可向同一图像随机地填充必需的额外的值,以生成不同的文件大小,而一个欺诈性实体不能够将它们有效地用于精确地标识向最终用户加以显示的图像,因为每次所述视觉上类似的图像的文件大小可能不相同。
也很容易地看出,图6~10的实施例的类型不局限于对小键盘的使用。而是,也可以使用键盘或其它类型的接口。另外,在此处所讨论的这一类型以及其它类型的接口实施例(但未示出)中,在计算机屏幕中可以把x轴与/或y轴位移一个很小的量。这样的一个位移加大了数据记录器类型软件精确捕获屏幕上所示数据的难度,而用户以及经由网络与把用户的计算机与其相连接的合法服务器,很容易意识到这一位移。参照图10,图10说明了加密/解密的加阴影类型的另一个例子。此处,小键盘[64]具有一个被描绘为不同于图9或图5的小键盘的背景的一个背景[66]。
可以使用传统的程序设计技术,生成本发明中所使用的,并且如此处所描述的计算机屏幕图像中的位移、背景变化、抖动以及畸变。与用户和合法服务器知道所述数据的图像将如何出现在传统的图像显示器上相比,当所输入数据的图像的空间或文件内容关系出现在用户的屏幕上时,这些位移、背景变化、抖动以及畸变对于改变所输入数据的图像的空间或文件内容关系是有效的。较佳的做法是令这些空间与/或文件内容关系变化很小,即将它们全部保持在主窗口与/或用于生成主窗口的一或多个文件中,而且较佳的做法是随机地进行这些变化,如将加以描述的。因此,可以充分隐藏这些空间与文件内容关系变化,以阻止计算机程序对所加密的数据的译码。
将参照图11和12,描述本发明的另一种类型的图形接口实施例。这些图像描述了响应用户对数值的点击,在网络上所发送的实际数据。由服务器实时地生成这些值,然后随图像一起将它们发送于客户机。当对点击进行解释时,则客户机把预先被赋予的数据发送回服务器。服务器根据预先存储的值很容易标识相应的图像。因此,这两张图说明了本发明的一种杂凑型加密/解密方法与***。在图11的左侧,显示了一个传统的小键盘图像[68]。在右侧,按虚线描述了一个杂凑的显示[70],其每一个键具有按随机次序排列的若干字母。在这一实施例中,服务器用于向客户机发送映像指令,以致,例如,当用户输入一个‘0’时,客户机把‘0’映像为‘ej’,并且把‘ej’传输于服务器。对于每一认证对话,服务器发送一个不同的映像指令集合,以致对于每一认证对话,可以进行一个完全不同的映像和认证数据的传输。图12在左侧描述了同样的传统的小键盘信息[68],以说明这一特性,但其具有一个不同的杂凑显示[72],以表示服务器向用户的客户机计算机所发送的一个不同的映像指令集合。与图11的显示相比,凑显示[72]具有针对每一键的一个不同的、最好为随机化的字母集合。可以明显看出,其它标识显示,例如键盘或其它类型的图像、以及其它符号,也可用于所示实线的和杂凑的小键盘。另外,由于在每一认证对话期间按较佳做法使用了随机的、不同的映像,所以盗取用户的安全信息几乎是不可能的。
参照图13~16,图13~16描述了使用一个偏移型加密/解密的本发明的其它优选实施例。这些图像代表了在一个较大的外部背景中位移数值接口的x和y值的效果。随机地把x和y值“抖动”或调整一个有限的值,以致净效果为:当捕获时,不容易将鼠标位置的x、y坐标的值用于推断/标识最终用户所点击的精确的数值。例如,在图13中,把一个现有技术小键盘[74]描述为图14~16的一个参照点。在图14中,服务器向客户机计算机发送表示按实线在[76]处所描绘的位置的小键盘(如在[78]处按虚线所描述的)数据。对于每一认证对话,使用一个使用一种映像算法所生成的、最好是随机生成的不同的图像,以致不能容易地复制用户的标识符的输入。在该图中,把所映像的小键盘描述为实线小键盘图像显示[76],与客户机计算机上所显示的小键盘位置[78]相比,将其示为向下、向右偏移。图15代表了针对一个不同认证对话的一个不同的映像,在图15中,已把在服务器上所创建的实线小键盘图像[80]从客户机计算机显示上的小键盘图像[82]向右、向上偏移。在图16中,已把在服务器上所创建的所映像的实线图像[84]向客户机计算机显示器上所显示的小键盘图像[86]的下、左方偏移。对于本发明而言,把术语“抖动”定义为意指图14~16中所示的畸变类型,并且把该术语用于“抖动”接口过程。
图17~18说明了针对本发明的另一个实施例的另一种类型的数据输入接口,将这种类型的数据输入接口称为检查和类型的加密/解密数据输入接口。一个图像中的每一像素具有一个唯一的二维标识符,这一二维标识符由其在图像中的位置所确定的‘x’和‘y’值加以定义。每一个像素还具有与其颜色成分相关的值,在一个R、G、B***中,颜色成分包括针对每一种颜色的一个值。图17描述了用于表示数值接口中的数值7中的一个样本像素的像素的RGB值。通过取R、G、B的唯一的值,并且把这些值添加于x、y值,可以确定该像素所表示的总值。一个像素、一组像素与/或一个完整的图像的总值可能不等于另一个图像的总值,即使是在一个具体像素的R、G或B值之一中仅存在稍微的差别的情况下。如图17中所示,小键盘[88]具有一个载有按某一预先确定的颜色所描绘的数值7的键[90]。该数值7已与其x和y位置和红(R或‘r’)、绿(G或‘g’)以及蓝(B或‘b’)颜色值相关联。通过取赋予R、G、B中每一颜色的唯一的值,并且把这些值添加于x、y值,可以确定表示所述像素一个值。通过针对每一像素、或者一个所选数目的像素重复该过程,可以确定图像或图像的一部分的一个总值。图17中的框[92]代表6个相邻的像素,它们具有不同的阴影设置,表明在5个值中的至少一个值中存在一些差别。如图17中所说明的,在框[94]中,所赋予的‘x’值为‘70’、所赋予的‘y’值为‘111’、所赋予的红,即‘r’值为‘211’、所赋予的绿,即‘g’值为211、以及所赋予的蓝,即‘b’值为‘211。由一个‘j’表示针对这一像素的值。已按同样的方式把值赋予一个相邻的像素,如框[96]中所示,其中,唯一的差别在于,对于为‘71’的‘x’值,‘x’值中的变化为1,于是,得到针对该像素的一个不同的值,即差为1的‘w’。相类似,图18说明了一个小键盘图像[98],以及其位于同样位置的‘7’,但具有不同的‘r’、‘g’以及‘b’值,因此,其‘j’值不同。另外,与图17中的相应的像素‘w’相比,所述相邻的像素具有不同的‘r’、‘g’以及‘b’值。于是,一个图像的文件大小可能不等于另一个图像的文件大小,即使是在一个像素的R、G或B值之一中存在微小的差别的情况下。利用这些微小的差别,通过随机地改变屏幕显示的属性,最好针对每一用户对话随机地改变屏幕显示的属性,则在这些***上实施未经授权的信息盗取是相当困难的,以致是不可能的。也可把这些变化应用于灰度级图像或非RGB类型的彩色图像。
使用图9~10和17~18中所说明的文件大小和检查和类型的加密,可以畸变小键盘或键盘或其它形式的图像,以致键盘上的整个图像与/或每一单个键的图像将得到一个不同的检查和与/或文件大小,以避免完善的屏幕捕获记录器捕获每一单个的键的标识。
图19是一个方框图,说明了针对图5~18中所说明的加密与解密类型的一个典型的实现过程,以及针对图20~21中所说明的动态加密/解密方法与***的一个典型的实现过程,如将加以描述的。如所说明的,与客户机计算机上、即如图5-18所示的用于小键盘和/或键盘图形认证接口实施例的***的客户端和服务器端所使用的过程相比,在服务器上使用了一个独立的过程。从图19中可以看出,加密与解密过程实际上是非对称的,因为与加密方相比,解密方涉及了较少的步骤。
较佳的做法是,使用一个3个步骤的过程创建图5~18中所说明的类型的安全、唯一的键盘图形认证接口。在第一步骤中,生成一个加密的键,并且将其映像于键盘的一个唯一的图形字符。在下一个步骤中,在一个较大的X、Y轴的限定范围内,随机地位移键盘图形图像。在第三步骤中,使用已知的图像处理算法,有限地畸变图形图像。在这一情况下,术语“畸变”及其变体,指的是针对用于生成客户机与/或服务器计算机上的图形图像显示的一或多个文件的属性所进行的以上所描述的变化中的任何一种变化。畸变,即加密这些图像的水平或程度,仅受到最终用户视觉上译解各个键盘键图像的能力的限制。较佳的做法是令以上的加密步骤对接口的使用的每一示例是唯一的,以增大译解随时间变化的图像的难度。
在图19中可以看出,较佳的做法是令解密过程包括两个步骤。在第一解密步骤中,用户可视地译解所加密的键盘(X、Y位移和图形畸变是用于加密的两个步骤),并且选择键盘接口上的一个键,以输入认证信息。在第二解密步骤中,通过查找精确的映像,在服务器上对键盘映像进行解密。从以上的描述中可以明显看出,一个具体的用户认证对话包括:把一个用户名提供于服务器,因此,一旦某人使他/她自己作为具体用户出现,并且已使用本发明的加密/解密***与方法中的任何一种***与方法成功地输入了认证数据(或其它代码),则服务器可以把具体的认证数据(或其它代码)与该用户加以匹配。对于本发明的各实施例,较佳的做法是,把用户名信息输入于网络中,并且在一个对话开始时,使用传统的128个比特的加密方式,将其发送至服务器。在这一方式下,可以对标称的用户进行认证,以致(1)可由认证的用户,而不是未经授权的用户,即冒名的用户,进行相继的网络事务处理;以及(2)已使认证数据本身避免,或实质地避免未经授权的软件、人或其它实体的滥用。
图20说明了根据本发明的另一个实施例的一个动态图形轮盘多因子接口,该接口能够最佳地对输入于计算机***的认证信息进行加密/解密,其中所述的输入于计算机***的认证信息是使用鼠标点击与/或键盘导航加以输入的,用于把一系列预先确定的字母数字元素(标识符)与一系列图形符号之一对齐。
也可以根据最终用户预先确定的或者服务供应商预先决定的逻辑,生成用作轮盘上的标记的颜色/图标/形状/形式。从而可使最终用户创建所述轮盘,并且此后可将所述轮盘标识为她或他的个性化的轮盘。
由于用户选择了一个运动中的标记,所以把本实施例称为动态***与方法。使用传统的技术,在服务器上生成图20中所示的轮盘图形用户接口(GUI)[200],而且较佳的做法是令其包括用于在数据输入点进行加密的两个同心轮盘[202]和[204]。用户经由在一个“右箭头”按钮[206]上的导航鼠标点击与/或使用逆时针旋转的键盘以及一个用于顺时针旋转的“左箭头按钮”[208]上的导航鼠标点击,简单地把内轮盘[202]上的参照点导向外轮盘[204]上的用户名字段[210]或口令字段[212]的下一个元素,以输入数据的每一个元素。由用户选择位于内轮盘[202]上的一个参照点,也将其称为标记,该参照点也是输入时该用户唯一所知的。于是,用户ID、口令等的一个具体元素的标识不为外人所见,包括不为各种刺探软件和“背后”侦察者所见。换句话说,用户选择一个他/她的想像的参照点标记,即一个虚拟的标记。用户简单地把内轮盘[202]上所选择的参照点/虚拟标记导向外轮盘[204]上的标识符的一个所选择的元素,例如用户名字段[210]或口令字段[212]中的用户ID的第一个字母,以输入标识符元素。此处,也把标识符称为代码或存取代码。标记为计算机用户唯一所知,较佳的做法是令其在对话期间,在把标识符的所有元素输入于***期间保持不变。用户首先输入代码的第一个元素,例如用户ID。然后,用户顺序地输入代码的每下一个元素。在把所选择的标记与n个元素的第一个标识符元素相对齐之后,用户点击‘NEXT(下一个)’按钮,以输入代码的一个如此加密的元素。较佳的做法是,此时,接着对轮盘[202]与/或[204]上符号进行随机化处理,然后,用户再次旋转内轮盘[202],以致内轮盘上的所选择的符号与代码的下一个元素相匹配,或者依次将其与代码的下一个元素相邻地加以定位,并且再次点击‘NEXT’。然后,***向服务器传输数据,即向服务器传输对应于从选择和输入了第一个元素之后已经对屏幕显示进行了随机化处理时的那一点开始,直至轮盘[202]已经静止,内轮盘[202]已移动过的实际度数,或旋转位移的数据。换句话说,把位移信息作为度数发送于服务器,或者按代表用户已选择了第二元素时所产生的轮盘[202]的位移的某种其它形式,把位移信息发送于服务器。重复点击‘NEXT’、对所述显示进行随机化处理、旋转内轮盘[202]以把所选择的标记与下一个代码元素依次加以匹配的过程,直至已把针对所述具体标识符的所有n个代码元素输入到***中为止。
通常,由服务器把标识符元素和标记符号的排列顺序存放在一个数据库中,并且按一个阵列形式通过网络将其发送至GUI,以加以显示。还可以对服务器进行编程,以在通过网络将它们加以发送之前,把其它加密形式中的任何一种加密形式施加于符号图像,如先前所描述的,参照图5~19。在一个优选实施例中,较佳的做法是,每次把代码的一个元素输入于***中时,对标记符号的排列顺序进行随机化处理,可以通过传统的技术实现这一处理。尽管也可以对标识符元素的排列顺序进行随机化处理,但在这一实施例中,较佳的做法是,对于大多数应用而言,在每一对话期间不对它们进行随机化处理。
对于另一个未加以说明的实施例,可以对标记的符号与/或数据元素的集合进行个性化处理,或者使其唯一化,并且基于用户的偏好,或者由服务提供商加以设置。这一唯一性还可以确保用户正在使用正确的认证设备/GUI。这一可选的特性有效地清除了向最终用户发送一个用于输入他或她的凭证、认证数据或其它代码的相同的、非法的或伪装的GUI的可能性。
在一个优选的实现中,通过相对于标识符阵列来偏移标记阵列的索引,计算或确定用户交互所导致的GUI上的位移。然后,通过网络,把所得到的针对每一元素的每一标记索引的位移值发送于服务器。在使用已对其进行编程,以使其知道正确代码的服务器的情况下,接下来,服务器可以使用相应于标识符的第一个元素的输入的位移,确定针对该对话用户已选择了哪一标记。然后,服务器可以通过验证:相继的位移仅相应于用户针对该对话所选择的标记的位移,对每一相继的元素进行认证。
作为选择,从图20中可以看出,也可以使用一个‘ENTER(输入)’按钮指明已输入了用户名字段[210]或口令字段[212]的所有元素。所示的这些按钮指示符仅为示范性的,在本发明的实施例中,也可以使用其它的按钮指示符。作为选择,在其它应用中,也可以去除‘ENTER’按钮。例如,对于其中诸如用户名或口令的认证标识符为预先确定的、固定长度的***而言,‘ENTER’按钮可能是不需要的。
同样就图20中所说明的加密/解密的类型而言,较佳的做法是,不把所输入的元素显示在用户名字段[210]或口令字段[212]中,这样做有助于防止‘背后’侦察者看到这一信息。可以把一个星号或其它合适的符号显示在每一个字段中,以表示元素的输入。就本发明的图20类型的实施例而言,较佳的做法是令术语“标识符”指的是用户ID、口令与/或PIN。然而,如以上所描述的,实际上该术语可以指用户希望进行加密的以及输入于***中的任何信息。例如,这样的标识符可以包括名字、账户号码、社会保险号码、地址以及电话号码。另外,如以上所描述的,术语“元素”实际上可以为任何由***加以识别的符号。典型的情况是,为了用于用户ID和口令的上下文,元素为按某一特定顺序设置的字母数字符号。就本发明的各实施例而言,术语“标记”实际上也可以意指***所识别的任何符号。为了方便起见,较佳的做法是令标记为非字母数字符号。
根据图20中所示类型的优选实施例,令服务器把随机化的标记序列预装于标记阵列中。作为选择,考虑到要使用众多的标识符,也可以生成多个随机生成的标记候选集合,并且提供多个可在使用RESET(复位)按钮的情况下使用的额外集合,如图20中所示,但并未在图20中加以编号的标记候选集合,以下将参照图21对此进一步加以解释。例如,较佳的做法是,对于一个4个元素的标识符,例如“BANK”,候选标记集合的数目至少为二十(20),因此,针对每一标记,提供五(5)个重新设置标记。
如以上所讨论的,把表示与一个标识符的每一个元素的输入相关的位移的值发送于服务器,并且由服务器加以译码。由于服务器知道用户针对具体认证信息所选取的任何具体标记的正确的元素和可能的标记行为,以及图像的细节,例如“抖动”、文件大小、检查和、畸变、偏移以及这些类型的图像细节的组合,所以服务器可以根据所期望的逻辑推断标记元素。在这样的一些应用中,图19的方框图也是适用的,但其必须包括与此处所描述的轮盘类型加密/解密动作相关、并且施用这些动作的步骤。
轮盘类型过程的逻辑是:知道所预期的标识符的第一字母的服务器,查找用户选择输入第一个标识符元素的标记。然后,服务器还知道将用于该对话的可能的标记。对于标识符的第二个、以及每一个相继的输入,服务器标识并验证是否使用了相同的和正确的标记。于是,***能够判断用户是否已针对所述对话输入了正确的认证标识符。位移坐标是针对具体对话的,而且一旦对话结束,就不能再能够使用。可以看出,这样的加密与解密总是能够使用在输入于***时唯一的、随机生成的、以及可有效防盗取的位移信息。
就针对每一对话创建随机化的标记的多个集合的一个例子而言,图20的显示描述了具有最初按随机次序组织的可能的标记的第一个集合的内轮盘[202]。在对标识符数据的一个元素的输入的每一次取例之后,用下一个集合中已进行了随机化处理的标记取代内轮盘上的标记,其中的下一个集合中的标记由服务器定义或者加以随机化,如以上所描述的。
作为输入一个标识符的一个元素的一个例子,并且参照图20,假设用户的标识符为单词‘BANK’。根据本发明,对于这一标识符的输入,用户明智地选择了环状区域的十六(16)个所描绘的部分,即包括所有标记的接口的扇段之一中的一个标记,以上这一包括所有标记的接口称为内轮盘[202]。如图20中所示,使用了16个这样的扇段,然而,也可以使用一个具有较多或较少扇段的接口,而且这样的接口也处于本发明的范围。对于一个使用了60个标识符元素的应用而言,最佳的标记数目为16,因此最佳的扇段数目也为16。
又如图20中所示,,即‘心’标记位于扇段[214]中。扇段[214]相邻于外轮盘[204]的内侧,并且从[214A]延伸至[214B]。图20中所示的轮盘上的元素和扇段的类型、特性、形状、颜色、配置以及数目为示范性的。实际上,可以使用任何类型、特性以及数目的元素,而且它们实际上可以具有无限数目的形状、大小以及配置。也如图20中所示,内轮盘[202]的扇段[214]相邻于一组随机选择的已被定位在外轮盘[204]的一个扇段中的标识符元素‘baZY’,元素‘baZY’径向地位于扇段[214]的外侧,并且具有基本相同的形状和大小。总之,这种类型的动态***是可操作的,只要把标识符元素放置在接口的一个区域中,把标记放置在接口的一个第二区域中即可,这些区域可互相相对地移动,并且可以使标识符元素和用户所选择的标记相互对应。
在这一例子中,用户通过启动按钮[206]与/或[208],引导内轮盘[202],以旋转内轮盘[202],以致可以把用户选择的标记与标识符的第一个元素对齐,即把与‘B’对齐。较佳的做法是对该***进行编程,以致可以把标记沿每一方向定在标识符的元素的几度的范围内,并且仍处于所考虑的对齐范围内。换句话说,可把用户所选择的标记和标识符的每一元素之间的距离范围定义为可接受的。一旦得以对齐,用户停止对内轮盘[202]的旋转,并且点击‘NEXT’按钮。然后,***提供标记的第二集合,即相同的标记,但在顺序方面,服务器已对它们进行了随机化处理。然后,***准备好,允许用户输入标识符的下一个元素。接下来,用户再次启动用于旋转内轮盘的按钮[206]与/或[208],以把所选择的标记与下一个元素对齐,然后点击‘NEXT’按钮,如以上所描述的。接下来,用户针对标识符的每一个其余元素,重复这一过程,以致可按适当的顺序逐一输入每一其余的元素。
较佳的做法是,向用户提供一个‘ENTER’按钮,启动该按钮表示已经输入了标识符的上一个,即第n个元素。作为选择,在不需要的场合,例如在标识符为预先确定的、固定长度的情况下,不需要‘ENTER’按钮。
根据一个可选的实施例,内和外轮盘,以及扇段可以为可互换的。换句话说,可以把标记放置在外轮盘的一个扇段上,并且可以从外轮盘的一个扇段加以选择,而且内轮盘将包括标识符元素。在另一个可选的实施例中,可以把外轮盘制作为可旋转的。
图21说明了另一种类型的动态、图形认证接口,其中用户选择运动过程中的标记,包括标识符元素的区域的相对运动,相对标记的运动为线性的,而不是旋转的。根据可以由最终用户或者由服务提供商预先确定的逻辑,生成用作下部条上的标记的颜色/图标/形状/形式,或者赋予最终用户的PIN。这也可使最终用户标识个性化的滑板。
在图21的实施例中,把所述接口称为滑板显示器或滑板加密[216]。图20中以及图21中所示的字母数字或非字母数字符号为示范性的,即,也可以使用其它图形符号和图像实践本发明。另外,各个区域的形状、风格、配置、着色、方位也可不同,只要提供了标识符元素和标记之间的相对运动,并且可加以测量即可。滑板显示器[216]可选择地包括一个用户名输入字段[218]、口令输入字段[220]以及可选的箭头按钮[222]和[224],当启动时,箭头按钮[222]和[224]用于相对另一个部分或区域移动显示器的一个部分或区域。在图21的实施例中,按行、一个在另一个之上地定位两个区域。把每一区域或行划分成单元,较佳的做法是令它们具有大约为相同的尺寸,能够把一个定位在另一个之上。于是,滑板显示器[216]包括一个可移动的下行[226],下行[226]具有多个单元,每一个单元具有一个标记,例如黑桃或王牌符号[228],对于这一例子,即为字母‘B’下的一个‘’;以及一个固定的上行[230]。在操作过程中,通过使用对‘左箭头’按钮[222]和‘右箭头’按钮[224]的导航鼠标点击,可位移地滑动位移下行[226]。按与图20中所示的和以上所讨论的轮盘实施例的位移相同的方式,相对于固定的上行[230],测量滑板显示器[216]的可移动的下行[226]的位移,所不同的是这一类型的位移为线性的,而不是径向的。一旦用户通过使用‘NEXT’按钮[232]表明输入了数据,则把针对每一把一个标识符元素输入于***中的示例的位移值发送于服务器,并且由服务器加以译码。于是,针对滑板显示器[216]向服务器传输位移信息的动作,类似于图20的轮盘实施例的动作,所不同的是,滑板显示器[216]的位移为线性的,而轮盘显示器[200]的位移为旋转的。
较佳的做法是提供一个‘RESET’按钮[234],以使用户能够重新开始输入用户名、口令或其它标识符或代码。也可以随其它实施例,例如随图20中所示的,但未加以编号的实施例,使用类似的重新设置能力。作为选择,也可以提供图标[236],较佳的做法是在图像中提供,用于显示标识符字段的元素的输入状态,以表明已输入了用户名或口令的多少个元素。较佳的做法是不在用户名字段[218]或口令字段[220]中显示所输入的元素,因为这有助于防止“背后”侦察者观察到所述字段信息。作为选择,可以在输入输入部分中显示一个星号,以表示每一元素的输入。
根据一个可选的实施例,可以互换图21中所示的行,即可以把标记构造为可从顶行加以选择,可以将顶行构造为可由用户将其滑动,以引导标记,并且可以把底行构造为包括标识符的可能的元素。
作为选择,也可以针对某一用户定制化图20的轮盘上的元素与/或标记与/或图21的各行中的元素与/或标记,例如,定制化为动物、人、风景的照片,或者任何其它的图像。作为选择,标记也可以使用用户所知的和服务器预先定义的逻辑。
把图20和21中的用户接口描述为具有两个标识符,例如,用户名和口令。然而,本发明并局限于两个因子,也可以把更多的因子包括在本发明的范围内。例如,还可以添加一个PIN代码,以使加密/解密***成为一个3个标识符的***。
较佳的做法是生成以上各图中所示的每一图形接口,并且使用本发明的领域中的普通熟练技术人员所熟悉的传统的软件,例如使用MACROMEDIA FLASH类型软件或JAVA类型软件,或者使用SVG标准,将其发送于用户设备。在此处所公开的各优选实施例中,把FLASH软件用于生成图形接口。
可以根据在显示接口以前所输入的用户名,对本发明中所使用的接口进行个性化处理。个性化属性可以由显示在该接口上的颜色/形状/实际数据构成。接口的个性化允许用户知道:这不是在不知情的情况下创建的接口,而在phishing情况下,会出现这样的接口。在phishing中,欺诈性实体试图重新创建一个接口,使该接口个性化有助于防止phishing,由于phisher面临巨大困难,或者无能力复制这样的个性化的接口,因此有助于实现最终用户的保密。把这样的应用称为互相认证过程。
另外,尽管已描述了本发明的具体实施例,但对本发明的各种修改、变更、可选的结构以及等效的结构,也包括在本发明的范围内。
因此,本说明书及附图应被视为说明性的,而不是限制性的。然而,可以明显看出,可以在不背离权利要求书中所阐述的本发明的宽泛的构思与范围的情况下,对本发明进行添加、缩减、删除以及其它的修改与变化。
以下,将参照图22~30,描述本发明的各种处理特性的方框图。在图22中,服务器得到用于图20或21的实施例和图20或21实施例中所描述的非用户个性化的标记,并且从可用的标记中随机地选择一定数目的‘z’个标记,然后将这些标记返回至客户机计算机的显示器。如图23中所示,使用了基本上相同的过程,除了在获取标记的过程中,存取了一个包含用户个性化标记的数据库,并且选择了所述标记集合,以及在把这些标记集合返回至客户机计算机之前对它们进行了随机化处理。在图24的方框图中,说明了在客户机计算机处的一个优选的处理流程,其中,过程开始于用户进入注册页。然后,客户机从服务器,或者从局部机器加载应用,并且取回随机化的标记列表之一。接下来,用户输入标识符或其它代码的元素,然后,客户机计算机通过网络把数据传输于服务器。接下来,服务器处理这些数据,而且如果针对所述标识符的数据输入成功,则转向下一页。如果不成功,则服务器把控制返回至客户机计算机,以获取另一个随机化的标记列表,并且像先前那样继续该过程。
图25是一个方框图,说明了在未经加密的情况下所进行的客户机/服务器交互,而图26说明了在加密的情况下的这一交互。在图25中,客户机计算机发出一个请求,服务器获取标记列表,并且将该列表返回至客户机。在图26中,执行了类似的交互,所不同的是,服务器还在得到标记列表并且把该标记列表返回至客户机之前,对从客户机所接收的数据进行解密。图27说明了所述认证交互,其中,一旦已可选地对从客户机所接收的数据进行了解密,对该数据进行认证并然后服务器向客户机返回一个成功或失败的指示信息。在图28中,详细地描述了认证过程,因此,当开始这一过程时,针对该对话,使用所选择的标记列表,把位移映像至标记下的字符。然后,把存储在数据库中的口令用作试探性判断的依据,判断用户已经针对标识符,例如针对口令的第一个元素选择了哪一个标记。接下来,***通过比较标记所产生的位移,确认其余的标识符元素,并确定标识符的正确元素是否与每一元素依次匹配。如果进行了全部正确的匹配,则服务器发送一个‘成功’的指示信息,以指示认证是成功的。如果没有实现全部正确的匹配,则服务器发送一个‘失败’的指示信息,并且重新开始这一过程。
作为可用于图6~19、图29的实施例中所使用的映像类型的代码的一个例子,并且针对图20~21、图30,提供了可加以使用的一些典型的、优选的伪代码。然而,就实现此处参照各附图所描述的本发明的特性所需的编码而言,可以认为,这一领域的普通熟练技术人员对所有这样的编码是熟悉的,并且能够很容易地提供具体的应用。
Claims (17)
1.一种计算机实现的加密和解密***,包括:
服务器,其被配置为生成图形用户接口,其中,图形用户接口包括与第二图像相邻地设置的第一图像,第一图像和第二图像包括多个部分,第一图像中的每一部分包括表示预先确定的标识符元素的集合的子集的图像,第二图像中的每一部分包括预先确定的标记符号的集合中的至少一个标记符号的图像,图形用户接口还包括第一定位按钮的图像,第一定位按钮在被启动时导致第二图像的第一部分从相对于第一图像的第一位置移至相对于第一图像的第二位置;
与服务器通信的计算机,其中,该计算机被配置用来:
从服务器接收图形用户接口;
向用户显示图形用户接口;
从用户处接收用于输入与用户名相关联的用户标识符的多个用户输入,其中,用户标识符包括从所述预先确定的标识符元素的集合中选择的n个用户标识符元素,所述多个用户输入包括第一定位按钮的多个启动,所述多个启动导致第二图像发生位移,使得第二图像的用户所选择部分与对应于用户标识符中的标识符元素的第一图像的部分连续地对准;以及
通过传输表示第二图像的位移的数据,将用户标识符以加密的形式传输到服务器,其中,响应接收该数据,服务器被配置用来:
从该数据确定第二图像的位移,并且确定用户标识符的第一用户标识符元素,和
通过将第二图像的位移与用户标识符的第一用户标识符元素相关联,确定与用户所选择部分相关联的用户所选择的标记符号。
2.根据权利要求1所述的***,其中,预先确定的标识符元素为字母数字的。
3.根据权利要求1所述的***,其中,在网络上的一个用户对话期间,至少一次按一个随机选择的顺序排列所述预先确定的标识符元素。
4.根据权利要求1所述的***,其中,第一图像为轮盘形。
5.根据权利要求4所述的***,其中,轮盘形图像包括一个以上的扇段。
6.根据权利要求4所述的***,其中,轮盘形图像径向地扩展第二图像的外形。
7.根据权利要求1所述的***,其中,第二图像为轮盘形。
8.根据权利要求7所述的***,其中,轮盘形图像包括一个以上的扇段。
9.根据权利要求1所述的***,其中,预先确定的标记符号包括非字母数字的符号。
10.根据权利要求1所述的***,其中,所述预先确定的标记符号的集合中的预先确定的标记符号是在网络上的一个用户对话期间至少一次按随机选择的顺序排列的。
11.根据权利要求1所述的***,其中,所述预先确定的标记符号的集合仅包括非字母数字符号。
12.根据权利要求1所述的***,其中,第二图像的每一个部分仅包括一个标记符号。
13.根据权利要求1所述的***,其中,第一图像为直线形的。
14.根据权利要求1所述的***,其中,第二图像为直线形的。
15.根据权利要求13所述的***,其中,第一图像具有一个以上的段。
16.根据权利要求14所述的***,其中,第二图像具有一个以上的段。
17.根据权利要求1所述的***,还包括适合于通过根据用户名、位移数据以及用户选择的标记符号,确定n个用户标识符元素中的每一个用户标识符元素,对以加密的形式从计算机接收的用户标识符进行解密的服务器。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US58581804P | 2004-07-07 | 2004-07-07 | |
US60/585,818 | 2004-07-07 | ||
US11/169,564 | 2005-06-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101027630A CN101027630A (zh) | 2007-08-29 |
CN100557556C true CN100557556C (zh) | 2009-11-04 |
Family
ID=38744860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005800298378A Active CN100557556C (zh) | 2004-07-07 | 2005-07-07 | 在线数据加密与解密 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100557556C (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499907B (zh) * | 2009-02-19 | 2011-04-06 | 西安电子科技大学 | 基于动态图形口令的防肩窥身份认证***及方法 |
CN101882188B (zh) * | 2010-06-07 | 2012-11-07 | 天地融科技股份有限公司 | 增强电子签名工具数据输入安全性的方法及装置 |
US9576122B2 (en) | 2011-04-25 | 2017-02-21 | Softlayer Technologies, Inc. | System and method for secure data entry |
CN103597428B (zh) * | 2012-06-14 | 2017-02-15 | 软质层科技公司 | 用于安全数据输入的***和方法 |
CN103580861B (zh) * | 2012-07-24 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 一种动态安全认证方法和*** |
GB201520760D0 (en) * | 2015-05-27 | 2016-01-06 | Mypinpad Ltd And Licentia Group Ltd | Encoding methods and systems |
KR101710998B1 (ko) * | 2015-09-23 | 2017-03-02 | 주식회사 하렉스인포텍 | 가변키패드를 이용한 본인 인증 방법 및 시스템 |
CN110213043A (zh) * | 2019-05-09 | 2019-09-06 | 国家计算机网络与信息安全管理中心 | 一种基于Java的集群功能测试方法 |
CN112367555B (zh) * | 2020-11-11 | 2023-03-24 | 深圳市睿鑫通科技有限公司 | gps数据加密与gps视频轨迹播放*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5428349A (en) * | 1992-10-01 | 1995-06-27 | Baker; Daniel G. | Nondisclosing password entry system |
US5949348A (en) * | 1992-08-17 | 1999-09-07 | Ncr Corporation | Method and apparatus for variable keyboard display |
US6658574B1 (en) * | 1999-06-21 | 2003-12-02 | International Business Machines Corporation | Method for non-disclosing password entry |
-
2005
- 2005-07-07 CN CNB2005800298378A patent/CN100557556C/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5949348A (en) * | 1992-08-17 | 1999-09-07 | Ncr Corporation | Method and apparatus for variable keyboard display |
US5428349A (en) * | 1992-10-01 | 1995-06-27 | Baker; Daniel G. | Nondisclosing password entry system |
US6658574B1 (en) * | 1999-06-21 | 2003-12-02 | International Business Machines Corporation | Method for non-disclosing password entry |
Also Published As
Publication number | Publication date |
---|---|
CN101027630A (zh) | 2007-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101601222B (zh) | 在线数据加密和解密 | |
JP5153327B2 (ja) | オンラインデータ暗号化及び暗号解読 | |
CN100557556C (zh) | 在线数据加密与解密 | |
US7908645B2 (en) | System and method for fraud monitoring, detection, and tiered user authentication | |
US10555169B2 (en) | System and method for dynamic multifactor authentication | |
JP2017507552A (ja) | クライアント側のスコアベース認証を与える方法及び装置 | |
JP2006520047A (ja) | 遠隔メッセージ作成を可能にする方法及びシステム | |
Pakojwar et al. | Security in online banking services-A comparative study | |
Zhou et al. | Beware of your screen: Anonymous fingerprinting of device screens for off-line payment protection | |
JP2007065789A (ja) | 認証システム及び方法 | |
Slyman et al. | An evaluation of hypothetical attacks against the PassWindow authentication method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |