CN1894882A - 认证系统 - Google Patents

认证系统 Download PDF

Info

Publication number
CN1894882A
CN1894882A CNA2004800365946A CN200480036594A CN1894882A CN 1894882 A CN1894882 A CN 1894882A CN A2004800365946 A CNA2004800365946 A CN A2004800365946A CN 200480036594 A CN200480036594 A CN 200480036594A CN 1894882 A CN1894882 A CN 1894882A
Authority
CN
China
Prior art keywords
user
formula
variable
result
local
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.)
Granted
Application number
CNA2004800365946A
Other languages
English (en)
Other versions
CN1894882B (zh
Inventor
L·金兹伯格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RD Cable
SYPHERLOCK TECHNOLOGY CORP
Original Assignee
Grid Data Security Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Grid Data Security Inc filed Critical Grid Data Security Inc
Publication of CN1894882A publication Critical patent/CN1894882A/zh
Application granted granted Critical
Publication of CN1894882B publication Critical patent/CN1894882B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

用户认证方法包括以用户公式的形式创建认证密钥,向用户提供变量布置,每个变量被赋了值,将所赋的值应用于用户公式中相匹配的变量并计算第一结果,以及如果第一结果与用户公式的另外独立计算的第二结果匹配,则认证用户。

Description

认证系统
技术领域
本发明涉及数据安全,具体涉及用户认证。
背景技术
计算机系统可向用户提供各种应用或服务。通常,对系统的访问可限于授权的用户。用户认证的一个实例是登录过程,其中要求用户输入用户名和密码。
虽然技术上有新的开发,但是用户名和密码的组合仍然是最常用的访问控制装置的方法其中之一。然而,密码可能是不利的,因为那些容易记住的密码是最容易确定的,而那些复杂且难以确定的密码又容易遗忘。
这些类型的系统的完整性通常是以使密码保密为基础的。然而,存在许多确定密码的已知方法,包括猜测、应用常用密码甚至所有已知词的字典、包括应用所有字符组合的暴力破解、在与服务器交换期间监控密码的网络业务、“肩窥”(在登录期间从用户的肩膀上方查看)、键盘输入记录(存储或传递登录期间用户的按键)、等等。
已知针对这些攻击类型的防御措施包括将密码加长以使其难以猜测、并且使字典应用和暴力破解更困难。其他防御措施包括禁止使用“有含义的”密码(比如与用户相关的名字、电话号码、生日等)、当用户输入密码时显示无含义的字符(如星号)、肩窥只能看到星号、在网络上发送密码之前对密码加密以防止通过网络监控的侦查。
访问控制和认证的一种方法是使用一次性密码(OTP),其中用户每次登录时使用不同的密码,从而致使许多上述攻击技术无效。因为所获得的密码不能再使用,因此截取、键盘输入记录、或采用其他方式来确定密码不具有优势。
大多数通常利用的OTP系统或多或少共享相同的协议。作为登录过程的一部分,服务器向用户发送所谓的口令,其可能只是较大的随机数。用户将这个数输入OTP发生器,例如生成OTP的专用物理装置或软件。用户输入OTP。服务器也将该口令输入其自身的OTP发生器。如果服务器OTP和用户OTP匹配,则用户被确认。
在OTP发生器是物理装置(如智能卡、令牌、生物特征辨识装置等)时,丢失、坏掉或失窃的OTP发生器的成本和不便之处可能是令人关注的事情。
在密码产生算法对所有用户来说都相同的情形中,每个用户被分配一个密钥以便使结果唯一。这个密钥通常包含在用户的OTP发生器内并且还被存储在服务器的数据库中。还存在该OTP生成方案的若干变更,例如,时间而不是口令可用来使用户和服务器同步。在大多数情形下,安全性取决于用户密钥的完整性。如果密钥被泄密,则系统将变为无效。结果,象密码一样,密钥成了各类攻击的对象,其中暴力破解是最普遍的做法之一。保护计算OTP的算法提供了额外的安全层,然而,持续一段时间,算法可被确定并且其不再是可靠的安全因素。
在网络环境中,服务器通常向众多的网络用户提供各种服务和应用。服务器可用来验证用户以便正确地授权使用特定的服务或应用。这通常由上述的标准登录过程来完成,其中服务器将刚输入的用户名和密码与所存储的用户名和密码匹配。
提供一种对字典应用、暴力破解、业务监控、肩窥、键盘输入记录以及各种其他类型的攻击来说坚固且耐用的认证系统将是有利的。
发明内容
本发明针对用于验证用户的方法和设备。在一个实施例中,本发明包括以用户公式的形式创建认证密钥,向用户提供变量布置(每个变量被赋了值),将所赋的值应用于用户公式中相匹配的变量并计算第一结果,如果第一结果与用户公式的另外独立计算的第二结果匹配则授权用户。
在另一个实施例中,本发明包括用于用户认证的系统,该系统包括用户公式、变量布置(每个变量被赋了值)、将与变量布置相关联的值应用于用户公式中相匹配的变量所得的第一结果(第一结果由用户输入)、以及用于使用用户公式执行另外独立计算而获得第二结果并且如果第一结果与第二结果匹配则认证用户的电路。
附图说明
结合附图的下面的描述解释了本发明的前述方面以及其他特征,附图中:
图1示出根据本发明的用户认证系统的一个实例;
图2示出与本发明相关联的操作的流程图;
图3示出与用户认证系统一起使用的用户界面屏幕的一个实例;
图4示出与用户认证系统一起使用的管理屏幕的一个实例;
图5示出包含在企业网络中的本发明;
图6说明在用于电子业务交易或电子商务的分布式系统中的本发明的另一个实施例;
图7示出用于保护通过消息发送的数据的本发明的一个实施例;以及
图8示出示范性消息的框图。
具体实施方式
参见图1,说明了结合本发明特征的用户认证系统100。尽管将参考图中所示实施例来描述本发明,但是应当理解,本发明可包含许多实施例的备选形式。另外,可使用任何适当的尺寸、形状或类型的元件或材料。
如图1所示,系统100通常包括用户接口功能和认证控制功能,在这个实例中,用户接口功能由用户接口110表示,认证控制功能由控制器115表示。
本发明包括以用户公式的形式创建认证密钥。在启动认证会话时,向用户提供变量布置,每个变量都被赋了值。用户将与提供的变量相关联的值应用于用户公式中相匹配的变量并输入结果。
参考图2的流程图进行详细解释,在如图所示的块310中生成用户公式。用户公式可以由用户根据一组变量和操作来构建。认证系统可提供应用来帮助用户,即提供从中选择的变量和操作列表。认证系统还可提供能自动为用户生成用户公式的应用。由此得到的公式通常被用户记忆并由认证系统存储,如块315所示。
用户请求对装置、服务、应用或功能进行访问,并且接着在如图所示的块320中启动认证会话。在启动认证会话时,在如图所示的块325中认证系统向用户提供变量布置,每个变量被赋了值。用户确认与用户公式中的变量相匹配的布置中提供的变量。接着,在如图所示的块330中,用户将赋给变量的值应用于用户公式并且在如图所示的块335中输入结果。
值可以是随机生成并赋给变量的,并且通常随每个认证会话而改变。在如图所示的块340中,认证系统独立地将赋给变量的值应用于用户公式并生成独立结果。在如图所示的块345中,认证系统将独立结果与输入的结果进行比较,如果结果匹配,则认证系统授权用户访问服务或应用(块350)。如果结果不匹配,则拒绝访问(块355)。
作为实例,用户可构建下列用户公式:3*(2*Q+3*T)。在认证会话期间,向用户提供变量布置和值。如果布置中的变量Q赋值为32,布置中的变量T赋值为9,则用户公式产生3*(2*32+3*9)即数字273。接着用户输入数字273。因为认证系统生成了变量布置和值并已经存储了用户公式,所以认证系统利用用户公式进行相同的计算。如果结果匹配,则用户被授权。
除了上述的认证会话之外,系统100还提供了管理过程作为认证系统的一部分。如上所述,认证会话包括限定用户对装置、服务、应用或功能的访问。管理过程通常向用户提供允许用户建立公式的工具、记录用于随后认证会话的公式以及操控其他建立和管理过程(如空间和目录的分配、加密过程、程序间的通信,等等)。
如上所述,作为认证会话的一部分,可将变量布置呈现给用户。图3示出的是示范性布置。在这个实例中,布置360包括网格365、输入用户名的区域370以及输入密码的区域375,依照本发明,密码是应用用户公式的结果。网格365由单元380组成,其中每个单元由表示用户公式的变量的字母或字母组合385指示。每个变量被赋了一个值390。如上所述,每当将布置呈现给用户时,赋给每个变量的值可改变。在一个实施例中,每当呈现布置时,每个值由随机数发生器产生。
利用上述示范公式3*(2*Q+3*T),用户将检查布置360并确认变量Q被赋值为69并且变量T被赋值为49。用户将应用公式并输入结果。
在这个实例中,每个单元包括两个要素,即变量和值。虽然变量用字母的上下文描述而值用数字的上下文描述,但是应当理解,变量和值可表示为任何可识别的标记、符号或图像。
还是在这个实例中,变量布置示为10×10单元网格。然而,布置可以具有任何形状并且可包括任何数量的单元或位置。
用户公式可包括任何数学和非数学运算符,例如加、减、乘、除、幂、取最大、取最小、取模、并置、等等,并且可包括括号以改变操作顺序。认证系统还可提供自定义运算符以允许用户对所期望的公式的变量执行任何功能。
图4示出了可作为管理过程的一部分向用户呈现的管理屏幕400的一个实例。管理过程可为用户提供各种工具,例如可使用户完成用户建立过程的每一步的“向导”以及帮助用户建立公式的公式生成器。在一个实施例中,公式生成器可为用户提供用于从中挑选变量和运算符的菜单并帮助用户编辑对该用户来说是唯一的公式。
管理屏幕400可包括变量布置405、数字键区410、数学功能键415和非数学功能键420以及测试公式的键425和保存公式的键430。管理屏幕400还可包括输入用户名的区域370和输入用户公式的区域440。通过在变量和各种运算符当中选择,用户可输入用户公式。
例如,用户可利用键盘145(图1)键入用户公式。当用户键入公式时,可在用户公式区域440内显示公式。另外,用户可使用指示器将光标定位于字符、变量或运算符上并且单击鼠标键或按下回车键来选择所期望的字符、变量或运算符。选择可在用户公式区域440内显示。用户继续操作直至用户公式已经如期望地构建完毕。当用户公式完成时,接着,用户可激活“保存”按钮430来存储并使用公式。
在一个实施例中,可向用户提供工具来构建一个或多个自定义运算符。例如,其中一个运算符可包括偏移函数,其中该函数与用户公式中的变量相关联并且应用来自偏离相关联变量的布置中的变量的值。偏移函数可表述为(offset(x,y)),其中x指x轴偏移量而y指y轴偏移量。包括偏移函数的示范用户公式可以是A+B(offset(1,1))。参见图3,用户将首先找到并使用赋给变量A的值,然后将找到变量B,但是在该认证会话中将使用偏移了坐标(1,1)的变量M的值。
用户可使用任何所期望的偏移,只要该偏移指向出现在布置365中的变量。在一个示范实现中,通过在用户公式所期望之处简单键入“(offset(x,y))”,用户输入偏移函数。在另一个示范实现中,非数学函数420其中之一可包括标有“偏移”的按钮。按下偏移按钮可启动请求用户输入偏移坐标的会话框。当输入坐标时,偏移指示、例如(offset(1,1))可出现在用户公式区域440内显示的用户公式中。
在偏移函数的另一个派生中,可确定称为IX函数的特定偏移。IX函数利用与变量相关联的值作为指向布置左上部分的坐标。例如,用户可能希望利用用户公式2*B并且可能希望指定变量K作为对布置365左上角的说明。在按下偏移按钮之后,响应对坐标的请求,用户可采用IX(K)或对特定偏移的其他适当的指示和指示来响应。
接下来,当用户使用布置365来确定用户公式的结果时,用户将观察到变量K值被赋值为“43”并且接着将坐标(4,3)作为变量A的偏移位置、将坐标(5,3)作为指示变量B的偏移位置、将坐标(6,3)作为指示变量C的偏移位置、等等。利用坐标(5,3)处的值,用户公式2*B产生“104”,“104”接着可被输入密码区域375。
可创建用以执行任何函数、运算或者函数或运算组合的其他自定义运算符。
作为另一实例,管理屏幕400可包括用于创建操作一个或多个变量的自定义函数的选择。自定义函数可包括任何数量的数学、逻辑(与、或、“异”或)、三角法、统计等类型的运算。可向用户提供能够用作设计自定义函数的模板的脚本。还可提供脚本用来向用户呈现按钮或菜单项以调用自定义函数并在用户公式中使用自定义函数。
能够创建自定义函数是有利的,因为它允许为特定用户或一部分企业定制系统。系统的购买者通过创建对其他系统购买者来说无效或未知的自定义函数和运算符从而具备了提高系统安全性的能力。
通过提供在公式中创建公式的称为AutoTokenTM函数的函数,认证系统可提供足够的安全性。例如,通过选择AutoTokenTM键435(图4),用户调用AutoTokenTM函数。AutoTokenTM函数向用户提示用户在用户公式区域440中输入的用户公式。
AutoTokenTM函数自动创建两个公式,分别称为本地公式和远程公式。本地公式和远程公式中的每一个包括可任意选择以及任意排序的变量、常数和运算,只要它们形成了运算公式即可。变量、常数和运算可包括来自向用户呈现的变量布置中的变量以及由管理过程提供的运算。本地公式和远程公式可以具有任何复杂性和长度并且它们通常是相同的,除非本地公式包括用于接收将由用户输入的用户公式的结果的结果变量,而远程用户公式包括用户公式本身。
可将远程公式存储在由认证系统指定的任何位置并且可将本地公式存储在用户本地位置。在一个实施例中,可将本地公式存储在由用户指定或选择的任何位置。
本地公式是可移动的以用于访问不同位置的装置、服务、应用或函数。例如,可存储本地公式使得它为可移动的,这包括将本地公式存储在任何类型可移动介质上,如磁的、光学的、半导体的或其他适当的介质。可将本地公式存储在比如软盘、光盘、闪存、USB驱动器或用于存储和访问本地公式的任何适当的装置(如下面描述的图5中的247)。
在一个实施例中,可能没有必要存储本地公式但是可以将其传送或传输至另一个位置供用户使用。
已经实施了AutoTokenTM函数的用户的认证会话进行如下。用户请求对装置、服务、应用或函数进行访问,并且启动认证会话。系统向用户提供变量布置并且用户输入他的用户公式的结果。如果本地公式已经存储在可移动介质上,则在此时或在该点之前的任何时间,将可移动介质耦合至系统,以使认证系统可访问本地公式。认证系统插入结果来代替本地公式中的结果变量、将来自变量布置的值插入本地公式的其余项、并计算本地公式的结果。认证系统还将来自变量布置的值插入远程公式中的用户公式以及远程公式的其余项、并计算远程公式的结果。
认证系统比较结果,并且如果它们匹配,则用户被授权访问所期望的装置、服务、应用或函数。
如果出于某种原因,用户的用户公式被泄密,则用户可再次调用AutoTokenTM函数来创建新的本地、远程和用户公式,而无需额外的支持资源,从而确保了安全访问的继续。
作为另一个特征,认证系统通常允许用户将函数嵌入其他函数中以扩展用户公式的安全性。例如,用户公式可包括A+(AVEB+C+(AVE D+E+F))+G+H)。特定函数可用来将虚字符嵌入用户公式内,所述用户公式以赋给来自布置365中的变量的值为基础。这个函数可称为“集”函数。使用集函数的示范性用户公式可能是:
(set Z,1)[用户公式]。
在变量Z被赋值为5的布置中,在输入用户公式的结果的第一个值之前,用户可键入五个虚字符。因此,可在任何位置在用户公式的结果内插入任何数量的虚字符。
作为额外的安全特征,用户公式可使用赋给布置365的变量的值来指示保密短语的特定字内的特定字母。例如,用户可确定其保密短语为“the dog is lazy”并且可选定ABCD的用户公式。当构建其用户公式时,用户可将指示其保密短语及其用户公式的命令键入用户公式区域440。
或者,非数学函数420可包括使用户选择指示的函数。在认证期间,可提供布置,例如,其中A被赋值为31、B被赋值为14、C被赋值为21并且D被赋值为13。将布置的值应用于短语,A=31将产生第一字的第三字母,B=14产生第四字的第一字母,C=21产生第一字的第二字母,D=13产生第三字的第一字母。因此,用户会键入ELHI。给定布置和短语的保密性质,解密这种结果的企图将很可能导致失败。
通过在用户公式内提供复位函数,认证系统可提供更大的安全性。这个复位函数可用来使呈现给用户的变量布置复位。例如,作为认证会话的一部分,如图3所示的变量布置被呈现给用户。用户检查布置、识别用户公式的第一变量的值并输入第一变量。在输入第一变量之后,例如通过用户公式中的命令或键入命令而激活复位函数,并且值和变量被改变以便向用户提供新的布置。用户继续利用用户公式,识别来自新布置的公式中的下一个变量的值。当用户识别完所有值、计算并输入了用户公式的结果,如期望地允许用户访问。
使用复位函数的用户公式的一个实例可以是:
A‖B‖<reset>C
其中与变量A相关联的值和与变量B相关联的值并置,变量布置被复位并且A和B的并置与变量C的新值并置。
应当理解,可将复位函数插入用户公式中的任何地方并且可将其插入用户公式中的一个或多个位置。通过各种方法可激活复位函数,例如作为对按下特定键的响应来激活、或者在输入值之后自动激活。
参见图4的管理屏幕,可将复位函数作为公式生成器的一部分呈现给用户,或者作为向用户提供插入复位函数的逐步过程的“向导”呈现给用户。
如上所述,复位函数可用来使呈现给用户的变量布置复位。这可采用重新生成布置中变量的新值、改变变量的位置或两者的组合的形式。复位函数可使用基于在公式生成器或向导过程期间由用户提供的种子数或变量的公式生成新布置。变量种子可以是来自呈现给用户的变量布置中的变量。
因此,复位函数为本发明提供了提高的安全级别。例如,在网络环境中,如果台式机和服务器之间的通信被截取,则关于变量布置的数据可被提取。例如,某人可能试图(虽然未成功)从所截取的数据中导出变量布置。复位函数可用来使变量布置在本地复位,而不需要外部通信。因此,使通过截取通信导出变量布置的企图无效,因为生成了新变量布置并且不存在与复位或新变量布置相关联的通信。
再次参见图1,系统100可以是包括用户接口110和控制器115的台式机。控制器115可包括用于执行来自存储器125的认证程序135的一个或多个处理器120并且还可包括用于存储信息、数据和程序的存储装置130。控制器115还可包括用于和其他装置通信的接口。用户接口110可包括用于向用户呈现信息的显示装置140以及用于输入信息、询问、回答和命令的一个或多个输入装置145(比如键盘和指示器)。
在认证程序135的控制下,处理器120可提供认证服务,并且根据认证,处理器120可允许所确认的用户访问或利用服务150。在这个实施例中,服务150可以是本地服务,也就是说,服务150可驻留在台式机100内。服务150可以是系统100的用户可能要求访问的任何装置、服务、应用或函数。例如,服务150可以是数据处理系统、计算服务、内容递送系统、资料库、文件系统、等等。
在运行过程中,用户可能试图通过控制器115访问服务150。如上所述,控制器115启动认证会话来确定用户是否符合条件、具有权限、或通常被允许访问服务150。如果用户提供了正确的证明,也就是说,如本文所述的赋给用户公式的值的正确应用,则控制器115允许访问服务150。
图5说明了示为分布式系统500的本发明的另一个实施例。系统500可以是企业或公司广域网或局域网的一部分并且通常包括用户接口210、控制器215和通过通信网络225连接的应用或服务220。用户接口210通常是本地计算装置230的一部分并且控制器215和服务220通常距计算装置230较远。本地计算装置230可包括一个或多个处理器235,用于执行存储在存储装置245中的程序240。计算装置230还可包括用于存储本地公式的外部可移动存储装置247。用户接口210可包括用于向用户呈现信息的显示装置250以及用于输入信息、询问、回答和命令的一个或多个输入装置255(比如键盘和指示器)。
控制器215可起到认证服务器的作用并可包括一个或多个处理器260和用于存储控制认证过程和会话的程序的存储工具265。作为认证服务器,控制器215可用来验证计算装置230或计算装置230的用户。根据认证,控制器215可用来为计算装置230提供服务220或允许计算装置230访问服务220。在存储于存储工具265中的指令或程序的控制下,控制器230还用来引导系统220的各部件中的业务。控制器215还可在存储工具265内为计算装置230提供存储容量。作为认证服务器,控制器215可用来验证其他计算装置2751…275n并根据认证向其他计算装置2751…275n提供对服务220以及对其他服务2701…270n访问。
在这个实施例中,控制认证过程和会话的程序可在存储装置245和存储工具265之中分布。在存储于存储装置245和存储工具265中的程序的控制下,认证过程和会话的部分可分别由处理器235和260执行。
服务220可以是计算装置230和计算装置230的用户可能要求访问的任何应用或服务。例如,服务220可能是数据处理系统、计算服务、内容递送系统、资料库、文件系统、等等。服务220可驻留在计算装置230、控制器215内,或者可以驻留在系统220内的任何地方或者与系统200的任何部件结合。
通信网络225可包括适于通信的任何链路或网络,例如互联网、公共开关电话网络(PSTN)、无线网络、有线网络、虚拟个人网络(VPN)等。利用任何适当的协议,包括x.25、ATM、TCP/CP等,可执行通信。
在运行过程中,用户可能试图访问服务220。控制器215监控或被通知有企图的访问。例如,在存储于存储工具265中的程序的控制下,控制器215可监控并截取访问服务220的所有企图。作为另一例,服务220可自动将所有的访问企图发送到控制器215供处理。还可实施利用控制器215控制访问服务220的任何其他适当的方法。
控制器215启动认证会话来确定用户是否符合条件、具有权限或通常被允许访问服务220。控制器215为计算装置230提供数据和命令以将变量布置显示在显示器250上并提示用户提供用户公式的结果。计算装置将结果传递至控制器215。控制器215还利用用户公式和来自变量布置的值计算结果。如果传递的结果和由控制器215计算的结果匹配的话,则控制器215允许访问服务220。
在这个实施例中,当用户已经实施了如前所述的AutoTokenTM函数,则可将本地公式存储在外部可移动的存储装置247上。对本地公式的操作、包括插入用户公式的结果代替本地公式中的结果变量、将来自变量布置的值插入本地公式的其余项并计算本地公式的结果,可由在计算装置230上运行的客户程序来实施。对远程公式的操作、包括将来自变量布置的值插入远程公式中的用户公式以及远程公式的其余项并计算远程公式的结果,可由控制器215上的服务器程序来实施。
图6说明示为用于电子业务交易或电子商务的分布式系统600的本发明的另一个实施例。系统600可以基于互联网或者可以使用万维网作为常用的通信介质。系统600通常提供前述实施例的所有特征并包括许多用户6101…610n、控制器620以及许多应用或服务6501…650n。用户6101…610n、服务6501…650n、以及控制器620通常表示独立的实体(如业务实体),它们通过互联网660连接。例如,用户6101…610n可以是访问服务的个体或者可以是在程序的控制下访问服务的计算装置。在一个实施例中,用户6101…610n可付费以访问服务6501…650n中的一种或多种并且控制器620可用来控制这种访问通过认证。服务6501…650n的运营商又可付费至用于访问和认证服务的控制器运营商。也可设想在用户、服务运营商和控制器运营商之中的其他业务安排。控制器620可包括一个或多个处理器425,用于执行控制用户认证和对服务6501…650n的访问的程序630。控制器620可用来验证用户6101…610n并向已确认的用户提供一种或多种服务6501…650n。服务6501…650n可包括用户6101…610n可能请求访问的任何服务(包括电子商务交易)。例如,服务6501…650n可包括购货系统、数据处理系统、计算服务、用于传递文字、音频或视频等的内容递送系统、在网络(如互联网)上参与商务交易的所有事务。
在系统600中,一个或多个用户6101…610n可例行访问服务6501…650n。控制器620监控或被通知有企图的访问。例如,控制器620可监控并截取访问任何服务6501…650n的所有企图。在另一个实例中,服务6501…650n可自动将所有的访问企图发送到控制器620供处理或以其他方式通知控制器620有企图的访问。
作为响应,控制器620启动同每个用户610的认证会话来确定特定用户是否符合条件、具有权限或通常被允许访问一种或多种服务6501…650n。如果用户610提供了正确的证明,就是说,如本文所述的用户公式的正确结果,则控制器620允许访问所期望的一种或多种服务。
在另一个实施例中,用户610试图访问一种或多种服务6501…650n,其中的对服务的访问是在一次性基础上被授权的。控制器620被通知或者主动监控有企图的访问。作为响应,控制器620启动同用户610的认证会话。管理员(可能是程序或运营商)将只对单次使用有效的用户公式传递给用户610。用户610输入一次性用户公式的结果并且通常被允许访问一种或多种服务6501…650n
图7示出利用本发明实施例用于保护作为消息的一部分被发送(如通过email)的数据的系统700。系统700包括利用本发明认证系统710的消息始发器705、接受器715和通信网络。消息始发器705和接受器715包括一个或多个处理器、存储装置和支持消息传送以及本发明认证操作的程序。消息始发器705构建消息(如email),该消息包括消息始发器705希望保护的数据。图8示出这种消息810的框图。数据820可作为消息的一部分或作为附在消息中的文件而被包括。认证系统710包括消息810和数据820的包装825,该包装将启动认证会话并且除非接受器715产生了适当的证明否则将阻止访问数据820。接着,例如使用标准email协议将消息传递至接受器715。
在接收时,接受器715试图打开消息。包装启动认证会话,显示如图3所示的布置。还生成了返回始发器的回执,其导致始发器705启动相同的认证会话。
始发器705确定始发器的用户公式的结果然后通常通过与用来传递消息的方法所不同的方法将结果传递至接受器715。接受器输入结果,并且如果正确,则包装825允许访问数据820。一旦数据被关闭,则认证会话结束。每当企图打开消息时,另一个认证伴随新的布置开始。因此,布置包括赋给变量的新值并要求始发器705再次确定用于始发器的用户公式的结果。因此,如果接受器715试图再次打开消息或将消息发送至另一个,则用户公式以前的结果不再可用来打开消息并且可通知始发器705。
应当理解,前面的描述仅仅是对本发明的说明。在没有背离本发明的前提下,本领域的技术人员可进行各种替换和修改。因此,本发明要包含属于所附权利要求范围内的所有这样的替换、修改和变更。

Claims (32)

1.一种用户认证方法,包括:
以用户公式的形式创建认证密钥;
向用户提供变量布置,每个变量被赋了值;
将所赋的值应用于所述用户公式中相匹配的变量并计算第一结果;以及
如果所述第一结果与所述用户公式的另外独立计算的第二结果匹配,则认证所述用户。
2.如权利要求1所述的方法,其中所述变量包括字母。
3.如权利要求1所述的方法,其中所述变量布置包括按字母顺序的字母。
4.如权利要求1所述的方法,其中所赋的值包括数值。
5.如权利要求1所述的方法,其中所赋的值包括随机生成的数值。
6.如权利要求1所述的方法,其中所述变量设置在10×10矩阵中。
7.如权利要求1所述的方法,包括在创建用户公式中为所述用户提供帮助。
8.如权利要求1所述的方法,其中所述用户公式包括一个或多个自定义运算符。
9.如权利要求8所述的方法,其中所述一个或多个自定义运算符包括与用户公式变量相关联的函数,所述函数应用从相关联变量偏移的布置中的变量的值。
10.如权利要求1所述的方法,其中所述用户公式包括一个或多个函数,所述一个或多个函数包括用于所述用户公式的操作。
11.如权利要求1所述的方法,包括:
创建具有用于接收所述第一结果的变量的本地公式和具有所述用户公式的远程公式;以及
如果所述本地公式的计算与所述远程公式的计算匹配,则认证所述用户。
12.如权利要求11所述的方法,其中所述本地和远程公式包括可任意选择和排序的变量、常数和操作中的至少一个。
13.如权利要求11所述的方法,其中所述本地公式是可移动的。
14.如权利要求11所述的方法,其中所述本地公式的计算由本地计算装置执行,而所述远程公式的计算由远离所述本地计算装置的控制器执行。
15.如权利要求1所述的方法,其中构建所述用户公式,使得所述第一结果包括虚字符。
16.如权利要求1所述的方法,其中所述用户公式利用赋给所述布置的变量的值来指定保密短语中的特定字母。
17.如权利要求1所述的方法,其中所述用户公式包括在激活时向所述用户提供新的布置的复位函数。
18.如权利要求1所述的方法,其中根据认证,所述用户被允许访问本地服务。
19.如权利要求1所述的方法,其中向所述用户提供所述变量布置由本地计算装置执行,其中所述用户公式的另外独立计算由远离所述本地计算装置的控制器执行,并且其中根据认证,所述用户被授权访问服务。
20.如权利要求19所述的方法,其中所述用户、服务和控制器是参与网络上的商务交易的业务实体。
21.如权利要求1所述的方法,还包括:
提供启动根据权利要求1所述的认证会话的包装;
将具有数据的消息封装进所述包装;
一试图打开所述消息,就启动用于消息接受器的第一认证会话和用于消息始发器的第二认证会话;
根据所述第二认证会话确定用户公式结果;
向所述第一认证会话提供所述结果;以及
根据认证,允许所述接受器访问所述消息和数据。
22.一种用于用户认证的系统,包括:
用户公式;
变量布置,每个变量被赋了值;
第一结果,由将与所述变量布置相关联的值应用于用户公式中相匹配的变量而获得,所述第一结果由用户输入;以及
电路,用于利用所述用户公式执行另外独立计算以获得第二结果,并用于如果所述第一结果匹配所述第二结果则认证用户。
23.如权利要求22所述的系统,其中所述变量包括字母。
24.如权利要求22所述的系统,其中所述变量布置包括按字母顺序的字母。
25.如权利要求22所述的系统,其中所赋的值包括数值。
26.如权利要求22所述的系统,其中所赋的值包括随机生成的数值。
27.如权利要求22所述的系统,其中所述变量设置在10×10矩阵中。
28.如权利要求22所述的系统,其中一个或多个自定义运算符包括与用户公式变量相关联的函数,所述函数应用从相关联变量偏移的布置中的变量的值。
29.如权利要求22所述的系统,其中所述用户公式包括一个或多个函数,所述一个或多个函数包括用于所述用户公式的操作。
30.如权利要求22所述的系统,包括:
本地计算装置,用于存储并计算具有用于接收所述第一结果的变量的本地公式的结果;
控制器,远离所述本地计算装置,用于存储并计算具有所述用户公式的远程公式的结果,并用于如果所述本地公式的结果匹配所述远程公式的结果则认证所述用户。
31.如权利要求30所述的系统,其中所述本地和远程公式包括可任意选择和排序的变量、常数和操作中的至少一个。
32.如权利要求30所述的系统,其中所述本地公式是可移动的。
CN2004800365946A 2003-10-14 2004-10-04 认证系统 Expired - Fee Related CN1894882B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US51097103P 2003-10-14 2003-10-14
US60/510,971 2003-10-14
US54116004P 2004-02-02 2004-02-02
US60/541,160 2004-02-02
US54440004P 2004-02-13 2004-02-13
US60/544,400 2004-02-13
PCT/US2004/032507 WO2005038573A2 (en) 2003-10-14 2004-10-04 Authentication system

Publications (2)

Publication Number Publication Date
CN1894882A true CN1894882A (zh) 2007-01-10
CN1894882B CN1894882B (zh) 2012-04-04

Family

ID=34468364

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004800365946A Expired - Fee Related CN1894882B (zh) 2003-10-14 2004-10-04 认证系统

Country Status (10)

Country Link
US (1) US7143440B2 (zh)
EP (1) EP1676393B1 (zh)
JP (1) JP5086640B2 (zh)
KR (1) KR101108660B1 (zh)
CN (1) CN1894882B (zh)
AU (1) AU2004282865B2 (zh)
CA (1) CA2542985C (zh)
IL (1) IL175062A (zh)
TW (1) TWI355838B (zh)
WO (1) WO2005038573A2 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725712B2 (en) * 2003-10-14 2010-05-25 Syferlock Technology Corporation User authentication system and method
WO2005038573A2 (en) * 2003-10-14 2005-04-28 Grid Data Security, Inc. Authentication system
JP4547210B2 (ja) * 2004-08-27 2010-09-22 株式会社エヌ・ティ・ティ・ドコモ クライアント端末、サービス提供装置及びサービス発見方法
US7689831B2 (en) * 2004-08-30 2010-03-30 Passrules Canadian Security Inc. Method and system for securing interface access via visual array paths in combination with hidden operators
US20100199100A1 (en) * 2004-08-30 2010-08-05 Norman Frank Goertzen Secure Access by a User to a Resource
JP2009528601A (ja) * 2006-03-01 2009-08-06 ゲールツェン,ノーマン,フランク 隠し演算と組み合わせて視覚的配列経路を介するインタフェースアクセスを保護するためのシステム
EP1868126B1 (en) * 2006-06-16 2011-08-10 Thomson Licensing Device and method for discovering emulated clients
US8301897B2 (en) * 2006-08-23 2012-10-30 Cisco Technology, Inc. Challenge-based authentication protocol
US8327420B2 (en) * 2006-10-30 2012-12-04 Girish Chiruvolu Authentication system and method
CN101803272B (zh) 2007-06-26 2013-08-14 豌豆制造技术有限公司 认证系统和方法
JP2009272737A (ja) * 2008-05-01 2009-11-19 Panasonic Corp 秘匿認証システム
US9177162B2 (en) * 2010-06-15 2015-11-03 Thomson Licensing Method and device for secured entry of personal data
TW201310959A (zh) * 2011-08-31 2013-03-01 Ibm 動態提供演算式密碼/盤問鑑定的方法與電腦裝置
US20140157382A1 (en) * 2012-11-30 2014-06-05 SunStone Information Defense, Inc. Observable authentication methods and apparatus
US9473465B2 (en) 2014-09-29 2016-10-18 Utah State University Lingual transformation based encryption
US9391962B2 (en) 2014-09-29 2016-07-12 Utah State University Multi-node encryption
JP6322549B2 (ja) * 2014-10-28 2018-05-09 株式会社野村総合研究所 認証システム、認証方法および認証プログラム
US11151243B1 (en) * 2018-06-22 2021-10-19 Thomas M. McNamara, Jr. Password hopping system and method

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4184148A (en) 1975-05-22 1980-01-15 Id Code Industries, Inc. Identification devices and systems
US4198619A (en) 1976-10-28 1980-04-15 Atalla Technovations Corporation Programmable security system and method
FR2469760A1 (fr) 1979-11-09 1981-05-22 Cii Honeywell Bull Procede et systeme d'identification de personnes demandant l'acces a certains milieux
GB2112190B (en) 1981-12-23 1985-12-18 Omron Tateisi Electronics Co Personal identification system
US4779224A (en) 1985-03-12 1988-10-18 Moseley Donald R Identity verification method and apparatus
US4964163A (en) 1988-04-04 1990-10-16 Motorola, Inc. Method and apparatus for controlling access to a communication system
US5265162A (en) 1990-01-16 1993-11-23 George Bush Portable pin card
US5130519A (en) 1990-01-16 1992-07-14 George Bush Portable pin card
US5239583A (en) 1991-04-10 1993-08-24 Parrillo Larry A Method and apparatus for improved security using access codes
US5163097A (en) 1991-08-07 1992-11-10 Dynamicserve, Ltd. Method and apparatus for providing secure access to a limited access system
CA2074769C (en) 1991-08-09 2001-03-20 International Business Machines Corporation Formula processor
US5251259A (en) 1992-08-20 1993-10-05 Mosley Ernest D Personal identification system
US5428349A (en) 1992-10-01 1995-06-27 Baker; Daniel G. Nondisclosing password entry system
US5754652A (en) 1994-12-14 1998-05-19 Lucent Technologies Inc. Method and apparatus for secure pin entry
US5682475A (en) * 1994-12-30 1997-10-28 International Business Machines Corporation Method and system for variable password access
US5793866A (en) * 1995-12-13 1998-08-11 Motorola, Inc. Communication method and device
US6154841A (en) * 1996-04-26 2000-11-28 Canon Kabushiki Kaisha Digital signature method and communication system
JPH10307799A (ja) * 1997-02-28 1998-11-17 Media Konekuto:Kk コンピュータ通信網における身元確認方法及び身元確認装置
US5971272A (en) 1997-08-19 1999-10-26 At&T Corp. Secured personal identification number
JP3781874B2 (ja) * 1997-09-05 2006-05-31 富士通株式会社 画像指示による電子情報管理装置、秘密鍵管理装置及び方法、並びに、秘密鍵管理プログラムを記録した記録媒体
US6571336B1 (en) 1998-02-12 2003-05-27 A. James Smith, Jr. Method and apparatus for securing a list of passwords and personal identification numbers
US6253328B1 (en) 1998-02-12 2001-06-26 A. James Smith, Jr. Method and apparatus for securing passwords and personal identification numbers
US7111324B2 (en) * 1999-01-15 2006-09-19 Safenet, Inc. USB hub keypad
US6587853B1 (en) * 1999-05-19 2003-07-01 Plum Software Associates, Inc. System that employs inferencing for troubleshooting complex user authentication problems
US6833847B1 (en) 1999-12-21 2004-12-21 International Business Machines Corporation Visual wizard launch pad
US6246769B1 (en) 2000-02-24 2001-06-12 Michael L. Kohut Authorized user verification by sequential pattern recognition and access code acquisition
KR100402358B1 (ko) 2001-03-02 2003-10-22 설동석 간접적인 패스워드 입력을 통한 사용자 확인방법 및 그 장치
US20030037261A1 (en) * 2001-03-26 2003-02-20 Ilumin Corporation Secured content delivery system and method
US6944663B2 (en) * 2002-03-06 2005-09-13 Sun Microsystems, Inc. Method and apparatus for using client puzzles to protect against denial-of-service attacks
WO2005038573A2 (en) * 2003-10-14 2005-04-28 Grid Data Security, Inc. Authentication system
US7923526B2 (en) * 2004-09-01 2011-04-12 Eastman Chemical Company Sulfopolyesters having improved clarity in water-dispersible formulations and products made therefrom

Also Published As

Publication number Publication date
CN1894882B (zh) 2012-04-04
JP2007516512A (ja) 2007-06-21
IL175062A0 (en) 2006-08-20
KR20060132824A (ko) 2006-12-22
TW200520508A (en) 2005-06-16
EP1676393A4 (en) 2011-10-26
WO2005038573A3 (en) 2005-12-22
US20050114675A1 (en) 2005-05-26
AU2004282865B2 (en) 2009-05-28
AU2004282865A1 (en) 2005-04-28
EP1676393A2 (en) 2006-07-05
JP5086640B2 (ja) 2012-11-28
WO2005038573A2 (en) 2005-04-28
TWI355838B (en) 2012-01-01
IL175062A (en) 2010-11-30
EP1676393B1 (en) 2018-12-05
CA2542985C (en) 2015-04-21
CA2542985A1 (en) 2005-04-28
KR101108660B1 (ko) 2012-01-25
US7143440B2 (en) 2006-11-28

Similar Documents

Publication Publication Date Title
US8752147B2 (en) System and method for two-factor user authentication
CN101427510B (zh) 用于网络功能描述的数字通行
CN1894882A (zh) 认证系统
US20130185778A1 (en) System, method and program for off-line two-factor user authentication
CN107736001A (zh) 设备的动态组成员身份
WO2013117019A1 (zh) 基于用户自主产生的动态口令对系统登录的方法和装置
EP2150915B1 (en) Secure login protocol
CN112425114A (zh) 受公钥-私钥对保护的密码管理器
WO2012159486A1 (zh) 密码保护载体生成方法和装置
AU2007309051B2 (en) User authentication system and method
TW201544983A (zh) 資料通訊方法和系統及客戶端和伺服器
US20230057862A1 (en) Fraud resistant passcode entry system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: R.D. INHAUL CABLE

Free format text: FORMER OWNER: INGRID DATA SECURITY CO.,LTD.

Effective date: 20090710

Owner name: SYFLORK SCIENTIFIC + TECHNICAL CORPORATION

Free format text: FORMER OWNER: R.D. INHAUL CABLE

Effective date: 20090710

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20090710

Address after: American Connecticut

Applicant after: R.D. cable

Address before: American Connecticut

Applicant before: GRID DATA SECURITY, Inc.

Effective date of registration: 20090710

Address after: American Connecticut

Applicant after: Sypherlock Technology Corp.

Address before: American Connecticut

Applicant before: R.D. cable

C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120404

Termination date: 20201004