CN1922845B - 令牌验证系统和方法 - Google Patents

令牌验证系统和方法 Download PDF

Info

Publication number
CN1922845B
CN1922845B CN2005800057314A CN200580005731A CN1922845B CN 1922845 B CN1922845 B CN 1922845B CN 2005800057314 A CN2005800057314 A CN 2005800057314A CN 200580005731 A CN200580005731 A CN 200580005731A CN 1922845 B CN1922845 B CN 1922845B
Authority
CN
China
Prior art keywords
time password
token
authentication server
secret
received
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.)
Expired - Fee Related
Application number
CN2005800057314A
Other languages
English (en)
Other versions
CN1922845A (zh
Inventor
N·波普
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.)
FLISAEN Co
Original Assignee
FLISAEN Co
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 FLISAEN Co filed Critical FLISAEN Co
Publication of CN1922845A publication Critical patent/CN1922845A/zh
Application granted granted Critical
Publication of CN1922845B publication Critical patent/CN1922845B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • 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
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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
    • H04L9/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • 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
    • H04L9/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • 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
    • H04L9/3234Cryptographic 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 involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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
    • H04L9/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3242Cryptographic 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 using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一种计算一次性口令的方法。秘密与一个计数相联系,其中秘密被唯一地分配给令牌。秘密可以是私有密钥或者共享的秘密对称密钥。所述计数是一个随在令牌处所生成的一次性口令数量而在所述令牌处单调增加的数目。也可以在验证服务器处跟踪计数,其中该计数随在验证服务器处对一次性口令的每次计算而单调增加。可以通过散列所联系的秘密和计数来计算OTP。所得结果可被截断。

Description

令牌验证系统和方法
技术领域
本发明的领域是验证,尤其是使用硬件设备的验证。
发明内容
一种计算一次性口令(One Time Password)的方法。秘密与一个计数相联系,其中秘密被唯一地分配给令牌。秘密可以是私有密钥或者共享的秘密对称密钥。所述计数是一个随在令牌处所生成的一次性口令数量而在所述令牌处单调增加的数目。也可以在验证服务器处跟踪计数,其中该计数随在验证服务器处对一次性口令的每次计算而单调增加。可以通过散列所联系的秘密和计数来计算OTP。所得结果可被截断。
背景技术
在判断是否准许访问网络中的数据或服务的请求中的普通步骤是识别和验证作出请求的用户。验证包括检验用户的身份的过程。已知的识别和验证系统包括将用户标识符(“用户id”)与用户的秘密(“口令”)相关联。口令可以是用户和验证服务之间的共享秘密。用户可将他的用户id和口令提交给验证服务,验证服务将它们与存储在服务的用户id和关联口令进行比较。如果它们匹配,那么可以说用户已经被验证。如果没有,那么可以说用户没有被验证。
令牌是可用于验证用户的装置。它可包括一个或多个秘密,其中的一些秘密可与确认中心共享。例如,令牌可存储秘密密钥,所述秘密密钥可用作为计算一次性口令(OTP)的基础。OTP可以是生成一次并不再被重新使用的数字(或字母串)。令牌可生成OTP并且将其连同唯一的令牌序列号发送给验证服务器。验证服务器可利用具有所接收的序列号的令牌的秘密密钥的拷贝来计算OTP。如果OTP匹配,那么可以说用户被验证。为了进一步加强从用户到令牌的链接,用户可建立与令牌共享的秘密的个人识别号码(PIN),该秘密的个人识别号码必须由用户录入以便解锁令牌。可替换地,PIN可在用户、令牌和验证服务器之间共享,并且可连同其它因素用来生成OTP。令牌通常实现了防篡改措施以便防止秘密被未授权的公开。
发明内容
根据本发明的一个方面,一种计算一次性口令的方法,包括:
使秘密与计数相联系,其中所述秘密被唯一分配给令牌并且在令牌和验证服务器之间共享,并且所述计数是一个随在令牌处所生成的一次性口令数量而在所述令牌处单调增加并且随在验证服务器处对一次性口令的每次计算而在验证服务器处单调增加的数目;
根据相联系的秘密和计数来计算散列;和
截断散列结果以便获得一次性口令。
根据本发明的另一个方面,一种对访问资源的请求进行验证的方法,包括:
在验证服务器处接收验证请求,所述验证请求包括与令牌唯一关联的序列号、与用户关联的个人识别号以及在令牌处生成的一次性口令,其中一次性口令基于在令牌处的计数值以及在令牌和验证服务器之间共享的秘密;
基于序列号在验证服务器处获取与令牌对应的计数值;
基于序列号在验证服务器处获取与令牌对应的秘密;
基于所获取的与令牌对应的计数值和秘密来在验证服务器上计算一次性口令的值;
比较所计算的一次性口令与所接收的一次性口令;并且
如果所计算的一次性口令对应于所接收的一次性口令,那么确定请求被验证;
如果所计算的一次性口令不对应于所接收的一次性口令,那么递增在验证服务器处的计数值并且根据递增的计数值和秘密来重新计算一次性口令,并且比较重新计算的一次性口令与所接收的一次性口令;
如果重新计算的一次性口令不对应于所接收的一次性口令,那么使递增计数和重新计算一次性口令重复进行直到重新计算的一次性口令对应于所接收的一次性口令。
根据本发明的再一个方面,一种对访问资源的请求进行验证的方法,包括:
在验证服务器处接收验证请求,所述验证请求包括与用户唯一关联的用户名、与用户关联的个人识别号以及在令牌处生成的一次性口令,其中一次性口令基于在令牌处的计数值以及在令牌和验证服务器之间共享的秘密;
基于用户名在验证服务器处获取与令牌对应的计数值;
基于用户名在验证服务器处获取与令牌对应的秘密;
基于所获取的与令牌对应的计数值和秘密来在验证服务器上计算一次性口令的值;
比较所计算的一次性口令与所接收的一次性口令;并且
如果所计算的一次性口令对应于所接收的一次性口令,那么确定请求被验证;
如果所计算的一次性口令不对应于所接收的一次性口令,那么递增在验证服务器处的计数值并且根据递增的计数值和秘密来重新计算一次性口令,并且比较重新计算的一次性口令与所接收的一次性口令;
如果重新计算的一次性口令不对应于所接收的一次性口令,那么使递增计数和重新计算一次性口令重复进行直到重新计算的一次性口令对应于所接收的一次性口令。
附图说明
图1示出了根据本发明的一个实施例的验证过程。
图2示出了根据本发明的另一个实施例的验证过程。
具体实施方式
本发明的实施例包括用于在可用来验证用户的硬件设备处生成一次性口令(“OTP”)的协议。OTP由令牌生成,令牌可以是物理设备,包括防止未授权修改或公开其所包含的软件和信息以及帮助确保其适当工作的机构。
该协议的一个实施例可以是基于顺序的,并可以是双因素的,例如基于用户所知道的东西(诸如个人识别号码,在用户和验证服务之间共享的秘密)以及用户所拥有的具有特定属性(例如,诸如私有密钥的唯一秘密密钥,或共享的秘密对密钥)的物理设备(例如,令牌)。用于生成OTP的协议可基于计数器,例如基于例如从令牌已经请求OTP的次数而单调增加的数目。OTP的值可以显示在令牌上,并且可由用户很容易地经由与计算机耦合的键盘来读取和录入,所述计算机转而与网络耦合。OTP在RADIUS系统上是可移植的。
根据本发明的协议的实施例可基于增加的计数器值以及只有令牌和验证服务(“强验证”服务)知道的静态对称密钥。可通过在RFC2104中定义的HMAC-SHA1算法或者任何其它适当的散列算法来创建OTP的值。该散列的MAC算法具有SHA-1的强度,但是允许在输出计算期间添加秘密。
HMAC-SHA1计算的输出是160位。但是,该值可以被截断为用户方便录入的长度。因此,
OTP=截断(HMAC-SHA1(计数,秘密))
客户端和验证服务器可计算OTP值,如果由服务器接收的值匹配由服务器计算的值,那么可以说用户被验证。一旦在服务器处验证出现,那么服务器将计数器值递增一。
尽管服务器计数器值可在成功的OTP验证之后递增,在令牌上的计数器可在每次按下按钮时递增。由此,服务器和令牌上的计数器值可经常不同步。实际上,给定了用户环境(例如,用户不需要按下按钮,按钮突然被按下,用户错误输入OTP等等),则存在令牌总是无法与服务器同步的好机会。
因为只有在有效OTP存在时服务器的计数器才递增,因此令牌上的服务器计数器值被期望总是小于令牌上的计数器值。确保重新同步不会成为加重用户或者企业IT部门负担的保证是十分重要的。
在该情况下的计数器同步可通过使服务器计算下n个OTP值以及确定是否匹配来实现,其中n是整数。如果我们假设令牌上的计数和服务器上的计数的差是50,那么取决于强验证服务器的实现,服务器最多必须计算下50个OTP值。因此,例如,如果在n+12值处找到正确的OTP,那么服务器可验证用户并接着将计数器递增12。
仔细挑选可由服务器很容易计算的n值是很重要的。应当存在上界以便确保服务器永远不会检查的OTP值,由此屈服于拒绝服务攻击。
将HMAC-SHA1值截断为6字符值可使强力攻击容易得逞,尤其在只使用数字的情况下。由此,可在强验证服务器处检测和停止这种攻击。每次服务器计算无效的OTP,它应当将此记录并且实现措施来防止被覆盖(swamp),例如在某个点处,防止来自同一源的将来的检验请求。可替换地,在检验尝试之间,可强迫用户等待更长的时间。
一旦用户被锁定,用户可通过提供网络接口而处于“自解锁”,该网络接口例如将请求用户按顺序录入多个OTP,因而证明它们具有令牌。
一旦共享的秘密已经与计数器组合,可获得160位(20字节)的HMAC-SHA1结果。在一个实施例中,对于我们的OTP最多该信息的四个字节。HMAC RFC(RFC 2104-HMAC:消息验证的键控散列)还警告,我们应当使用部分5中至少一半的HMAC结果。所截断的输出:
HMAC的应用可选择来通过输出HMAC计算的最左边的t个位来截断HMAC的输出...我们建议输出长度t不小于散列输出的长度的一半...并且不小于80位(需要由攻击者来预测的位数的适当下边界)。因此,需要另一方式来在不会削弱HMAC或SHA1的方式下,只选择HMAC结果的四个或更少的字节。
动态偏移截断
该技术的目的在于从HMAC-SHA1结果中提取4个字节的动态二进制码,同时仍保持大多数的MAC密码强度。
1.获取最后的字节(字节19)
2.屏蔽低位的四个位作为偏移值
3.使用偏移值以便索引到HMAC-SHA1结果的字节中。
4.返回随后的四个字节作为动态二进制码。
随后的代码例子描述了在给定hmac_result是具有HMAC-SHA1结果的字节阵列时提取动态二进制码:
int offset  =hmac_result[19]&0xf;
int bin_code=(hmac_result[offset]&0x7f)<<24
           |(hmac_result[offset+1]&0xff)<<16
           |(hmac_result[offset+2]&0xff)<<8
           |(hmac_result[offset+3]&0xff);
下面是使用该技术的例子:
SHA-1散列
字节
1.最后的字节(字节19)具有十六进制值0x5a。
2.较低的四个位的值是0xa(偏移值)。
3.偏移值是字节10(0xa)。
4.在字节10处开始的四个字节的值是0x50ef7f19,其是动态二进制码。
我们将动态二进制码当作为一个31位、无符号、大端字节(big-endian)的整数;第一字节用0x7f来掩码。
用于给定秘密和移动因素的一次性口令可根据三个参数来变化:编码基数、码数位和Has校验和。10作为编码基数,7个码数位以及Has校验和被设置为真,我们继续上面的例子:
●十六进制值0x50ef7f19转换为基10的1357872921。
●最后7个数位是7872921
●码数位的信用卡校验和将7计算为校验和。
10-((5+8+5+2+9+2+2)mod10)=10-(33mod10)=10-3=7
●产生下列OTP:78729217
下面是在该应用中使用的术语词汇表:
校验和数位-将信用卡校验和算法应用于码数位的结果。该数位是可选的。该校验应当捕获任何单个的换位或任何单个的字符错误输入。
码数位-该参数指明从二进制码获得的位数。我们通过将二进制码转换成编码基数、零填充作为最低的码数位,并获得右边(低位)数位来计算码数位。将10作为编码基数,31位的二进制码可支持不超过9个的码数位。
信用卡校验和算法-该校验和算法具有将捕获任何单个错误输入数位,或两个数位的任何单个相邻换位的优点。这些是用户错误中最普通的类型。
编码基数-该参数指明以什么基数来使用口令。基数10是优选的基数,因为其可以通过数字键盘来录入。
Has校验和数位-该布尔参数指明校验和数位是否应当被添加以便创建OTP。如果不存在校验和数位,那么仅仅将码数位作为OTP使用。如果存在校验和数位,那么将码数位作为到信用卡校验和算法的输入来计算它。
OTP-一次性口令。这个值通过把校验和数位(如果有的话)附加到码数位的右边来构建。如果不存在校验和数位,OTP与码数位相同。
通过在散列位中的第一次移位、接着在同步位中的移位并接着在先前中间值的check_function()的结果中移位来计算一次性数值。
二进制值接着被转换为适当的字符值。存在三种可能的口令字符表示:十进制、十六进制和字母数字。
                十进制      十六进制    字母数字
请求的显示类型  7段         7段         字母数字
转换代价        中等        微不足道    简单的
每字符的位      3.2         4           5
键盘录入        简单        容易        容易
手机录入        容易        难          难
十进制
令牌将动态二进制码转换为十进制并接着显示最后的码数位加上可选的校验和。例如,对于六数位,没有校验和,十进制令牌将二进制码转换成十进制并显示最后六个数位。
十六进制
令牌可将动态二进制码转换成十六进制并接着显示最后的码数位加上可选的校验和。例如,对于六数位,没有校验和,十六进制令牌将二进制码转换为十六进制并显示最后六个数位。
字母数字
令牌可将动态二进制码转换成基数32并接着显示最后的码数位加上可选的校验和。例如,对于六数位,没有校验和,基数为32的令牌将二进制码转换为32基数并显示最后六个数位。
PIN
为了成为真的双因素验证令牌,除了OTP的“你有什么”值之外还可能存在“你知道什么”值。这个值通常是只有用户知道的静态PIN或口令。该部分讨论了三个用于根据本发明确认静态PIN的可替换体系结构。
在中途(in the cloud)的PIN确认
使得能够在途中进行PIN确认能够将单个PIN与单个令牌绑定。PIN应当在线路中被保护以确保其不被泄漏。PIN管理(设置、改变)应当由强验证服务来实现。
企业处的PIN确认
使得能够在途中进行PIN确认意味着单个令牌多个口令。
PIN从不需要离开企业的“安全世界”。PIN管理可由企业来实现。
在令牌处的PIN确认
该实施例可通过使用令牌上的小键盘来实现。PIN从不用通过线路来发送,并可用作为OTP算法的种子。PIN可用于简单地解锁令牌。
示例数据流
这个部分描述了两个数据流场景。第一个场景假设了强验证服务不知道与令牌关联的用户名。在该场景中,假设了PIN管理操作需要用户录入他们的令牌SN,而不是他们的用户名。
第二场景非常类似于第一场景,除了用户名代替令牌SN成为强验证服务中的密钥的事实之外。在该情况下,存在一些问题。首先,用户名对于服务是知道的,其次,我们必须跟上方案以确保从用户名到令牌SN的唯一映射。
图1示出了根据本发明的一个实施例的验证过程。其作了如下假设:
●分布到强验证服务的令牌SN和S
●与每个令牌关联的消费者帐户
●与一个特定令牌关联的PIN
●强验证服务在DB中只保存了PIN的SHA-1散列。
●在企业处作为属性添加到用户帐户的令牌SN,插件将用户名映射到SN。
强验证服务器110、企业验证服务器120和客户端130例如通过网络(未示出)耦合。如图1所示,客户端处的用户向企业服务器120发送访问受保护资源的请求。该服务器确定对资源的访问是否要求验证。如果是,它发送“要求验证”的消息给客户端130。可向用户提示用户名和口令。用户可按下他的令牌上的按钮(未示出),以便获得OTP。OTP可按照上面所述的例如通过散列令牌秘密和在令牌处所存储的计数的当前值的组合来生成。用户接着录入他的用户名和他的与令牌提供的OTP相联系的个人识别号码(PIN)。该信息被发送到企业服务器120。企业服务器120基于用户名来查找令牌序列号,并且将序列号和PIN+OTP发送到验证服务器110。验证服务器110根据序列号来查找记录以获得PIN和秘密的本地散列值以及假设的计数。这是可以完成的,因为令牌秘密可在它被唯一分配给的令牌和验证服务器110之间共享。验证服务器接着根据令牌的秘密和在验证服务器处所存储的令牌的计数的当前值来计算OTP。如果所计算的OTP匹配所接收的OTP,那么在验证服务器110处的计数值递增一。否则,验证服务器可再次尝试通过递增令牌的计数并将其与令牌的秘密进行散列来计算OTP。这是可以完成的,因为如上所述,验证服务器110处的计数值可不同于令牌处的计数值(未示出)。该过程可合情理地重复任意次数,以使计数值能够“跟上”令牌处的计数值。在一个实施例中,这种试图对验证服务器上的令牌进行验证的重复次数在进行了同样的预定次数例如12后终止。如果令牌不能够成功由验证服务器110验证,那么验证服务器发送“未验证”消息给企业服务器120。如果令牌被成功验证,那么验证服务器发送“已验证”消息给企业服务器120。基于从验证服务器110所得的结果,企业服务器分别拒绝或同意来自客户端的对资源进行访问的请求许可。
图2示出了根据本发明的另一个实施例的验证过程。其作了如下假设:
●分布到强验证服务的令牌SN和S
●与每个令牌关联的消费者帐户和用户名
●与一个特定令牌关联的PIN
●强验证服务在DB中只保存了PIN的SHA-1散列。
●用户名从企业转发到强验证服务。
图2的验证过程与图1的一样,直到用户名和PIN+OTP从客户端130刚发送到企业服务器120之后。不是根据用户名来查找序列号,企业服务器120将验证请求(包括用户名和PIN+OTP)转发到验证服务器110。验证服务器根据用户名来查找记录,能够检验PIN并接着在剩下的处理中按照图1所示的相同过程来进行。

Claims (9)

1.一种计算一次性口令的方法,包括:
使秘密与计数相联系,其中所述秘密被唯一分配给令牌并且在令牌和验证服务器之间共享,并且所述计数是一个随在令牌处所生成的一次性口令数量而在所述令牌处单调增加并且随在验证服务器处对一次性口令的每次计算而在验证服务器处单调增加的数目;
根据相联系的秘密和计数来计算散列;和
截断散列结果以便获得一次性口令。
2.一种对访问资源的请求进行验证的方法,包括:
在验证服务器处接收验证请求,所述验证请求包括与令牌唯一关联的序列号、与用户关联的个人识别号以及在令牌处生成的一次性口令,其中一次性口令基于在令牌处的计数值以及在令牌和验证服务器之间共享的秘密;
基于序列号在验证服务器处获取与令牌对应的计数值;
基于序列号在验证服务器处获取与令牌对应的秘密;
基于所获取的与令牌对应的计数值和秘密来在验证服务器上计算一次性口令的值;
比较所计算的一次性口令与所接收的一次性口令;并且
如果所计算的一次性口令对应于所接收的一次性口令,那么确定请求被验证;
如果所计算的一次性口令不对应于所接收的一次性口令,那么递增在验证服务器处的计数值并且根据递增的计数值和秘密来重新计算一次性口令,并且比较重新计算的一次性口令与所接收的一次性口令;
如果重新计算的一次性口令不对应于所接收的一次性口令,那么使递增计数和重新计算一次性口令重复进行直到重新计算的一次性口令对应于所接收的一次性口令。
3.权利要求2的方法,其中利用SHA-1散列函数计算一次性口令。
4.权利要求2的方法,其中秘密是对称密钥。
5.权利要求2的方法,其中递增计数和重新计算一次性口令被重复预定次数,并且如果在预定次数结束后重新计算的一次性口令不对应于所接收的一次性口令,那么确定请求没有被验证。
6.一种对访问资源的请求进行验证的方法,包括:
在验证服务器处接收验证请求,所述验证请求包括与用户唯一关联的用户名、与用户关联的个人识别号以及在令牌处生成的一次性口令,其中一次性口令基于在令牌处的计数值以及在令牌和验证服务器之间共享的秘密;
基于用户名在验证服务器处获取与令牌对应的计数值;
基于用户名在验证服务器处获取与令牌对应的秘密;
基于所获取的与令牌对应的计数值和秘密在验证服务器上计算一次性口令的值;
比较所计算的一次性口令与所接收的一次性口令;并且
如果所计算的一次性口令对应于所接收的一次性口令,那么确定请求被验证;
如果所计算的一次性口令不对应于所接收的一次性口令,那么递增在验证服务器处的计数值并且根据递增的计数值和秘密来重新计算一次性口令,并且比较重新计算的一次性口令与所接收的一次性口令;
如果重新计算的一次性口令不对应于所接收的一次性口令,那么使递增计数和重新计算一次性口令重复进行直到重新计算的一次性口令对应于所接收的一次性口令。
7.权利要求6的方法,其中利用SHA-1散列函数计算一次性口令。
8.权利要求6的方法,其中秘密是对称密钥。
9.权利要求6的方法,其中递增计数和重新计算一次性口令被重复预定次数,并且如果在预定次数结束后重新计算的一次性口令不对应于所接收的一次性口令,那么确定请求没有被验证。
CN2005800057314A 2004-02-23 2005-02-23 令牌验证系统和方法 Expired - Fee Related CN1922845B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US54619404P 2004-02-23 2004-02-23
US60/546,194 2004-02-23
PCT/US2005/005481 WO2005083610A1 (en) 2004-02-23 2005-02-23 Token authentication system and method

Publications (2)

Publication Number Publication Date
CN1922845A CN1922845A (zh) 2007-02-28
CN1922845B true CN1922845B (zh) 2010-10-06

Family

ID=34910755

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800057314A Expired - Fee Related CN1922845B (zh) 2004-02-23 2005-02-23 令牌验证系统和方法

Country Status (6)

Country Link
US (2) US8639628B2 (zh)
EP (1) EP1723594B1 (zh)
JP (3) JP2007523431A (zh)
CN (1) CN1922845B (zh)
CA (1) CA2556148C (zh)
WO (1) WO2005083610A1 (zh)

Families Citing this family (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7308482B2 (en) * 2002-02-12 2007-12-11 At&T Bls Intellectual Property, Inc. Methods and systems for communicating with service technicians in a telecommunications system
US8166311B1 (en) * 2002-06-20 2012-04-24 At&T Intellectual Property I, Lp Methods and systems for promoting authentication of technical service communications in a telecommunications system
SG121908A1 (en) * 2004-10-13 2006-05-26 Encentuate Pte Ltd A predictive method for multi-party strengthening of authentication credentials with non-real time synchronization
US9191198B2 (en) 2005-06-16 2015-11-17 Hewlett-Packard Development Company, L.P. Method and device using one-time pad data
GB0519814D0 (en) * 2005-09-29 2005-11-23 Hewlett Packard Development Co Methods and apparatus for managing and using one-time pads
US8842839B2 (en) 2005-09-29 2014-09-23 Hewlett-Packard Development Company, L.P. Device with multiple one-time pads and method of managing such a device
US20070101152A1 (en) * 2005-10-17 2007-05-03 Saflink Corporation Token authentication system
US9768963B2 (en) 2005-12-09 2017-09-19 Citicorp Credit Services, Inc. (Usa) Methods and systems for secure user authentication
US9002750B1 (en) * 2005-12-09 2015-04-07 Citicorp Credit Services, Inc. (Usa) Methods and systems for secure user authentication
US20070150744A1 (en) * 2005-12-22 2007-06-28 Cheng Siu L Dual authentications utilizing secure token chains
EP1833219B1 (en) * 2006-03-08 2014-10-08 Monitise Limited Methods, apparatus and software for using a token to calculate time-limited password within cellular telephone
IL174619A (en) 2006-03-29 2013-12-31 Nds Ltd Password protection
US9258124B2 (en) 2006-04-21 2016-02-09 Symantec Corporation Time and event based one time password
FR2902253B1 (fr) * 2006-06-13 2009-04-03 Ingenico Sa Procede et dispositif d'authentification d'un utilisateur
US8959596B2 (en) 2006-06-15 2015-02-17 Microsoft Technology Licensing, Llc One-time password validation in a multi-entity environment
DE102006034535A1 (de) * 2006-07-26 2008-01-31 Carl Zeiss Meditec Ag Verfahren zur Generierung eines Einmal-Zugangscodes
DE102006034536A1 (de) * 2006-07-26 2008-01-31 Carl Zeiss Meditec Ag Verfahren zum Erzeugen von Zugangsdaten für ein medizinisches Gerät
US11762972B1 (en) * 2006-08-13 2023-09-19 Tara Chand Singhal System and methods for a multi-factor remote user authentication
JP5053617B2 (ja) * 2006-10-20 2012-10-17 株式会社リコー ソフトウェア実行制御プログラム及びソフトウェア実行制御方法
US8418235B2 (en) * 2006-11-15 2013-04-09 Research In Motion Limited Client credential based secure session authentication method and apparatus
US8041954B2 (en) * 2006-12-07 2011-10-18 Paul Plesman Method and system for providing a secure login solution using one-time passwords
AU2008202090A1 (en) * 2007-06-07 2009-01-08 Aristocrat Technologies Australia Pty Limited Method of credit input and a gaming system
US8839383B2 (en) * 2007-08-20 2014-09-16 Goldman, Sachs & Co. Authentification broker for the securities industry
US8875259B2 (en) * 2007-11-15 2014-10-28 Salesforce.Com, Inc. On-demand service security system and method for managing a risk of access as a condition of permitting access to the on-demand service
US8438622B2 (en) * 2008-07-10 2013-05-07 Honesty Online, Llc Methods and apparatus for authorizing access to data
US20110022837A1 (en) * 2009-07-18 2011-01-27 Stevens William M Method and Apparatus For Performing Secure Transactions Via An Insecure Computing and Communications Medium
WO2011027352A1 (en) 2009-09-03 2011-03-10 Mcafee, Inc. Network access control
US8397281B2 (en) 2009-12-30 2013-03-12 Symantec Corporation Service assisted secret provisioning
US8412928B1 (en) * 2010-03-31 2013-04-02 Emc Corporation One-time password authentication employing local testing of candidate passwords from one-time password server
US9342832B2 (en) 2010-08-12 2016-05-17 Visa International Service Association Securing external systems with account token substitution
US8312519B1 (en) * 2010-09-30 2012-11-13 Daniel V Bailey Agile OTP generation
KR20120051344A (ko) * 2010-11-12 2012-05-22 한국전자통신연구원 휴대형 통합 보안 저장장치와 이를 이용하는 서비스 처리 장치 및 방법
US8590030B1 (en) * 2011-04-14 2013-11-19 Symantec Corporation Credential seed provisioning system
US8868921B2 (en) * 2011-07-20 2014-10-21 Daon Holdings Limited Methods and systems for authenticating users over networks
US8789150B2 (en) 2011-09-22 2014-07-22 Kinesis Identity Security System Inc. System and method for user authentication
CN102627491A (zh) * 2012-04-23 2012-08-08 云南省农业科学院经济作物研究所 一种促进薯类作物茎叶快速生长的叶面肥
US9413587B2 (en) 2012-05-02 2016-08-09 Box, Inc. System and method for a third-party application to access content within a cloud-based platform
US9691051B2 (en) 2012-05-21 2017-06-27 Box, Inc. Security enhancement through application access control
US8914900B2 (en) 2012-05-23 2014-12-16 Box, Inc. Methods, architectures and security mechanisms for a third-party application to access content in a cloud-based platform
US9712510B2 (en) * 2012-07-06 2017-07-18 Box, Inc. Systems and methods for securely submitting comments among users via external messaging applications in a cloud-based platform
US9887992B1 (en) 2012-07-11 2018-02-06 Microstrategy Incorporated Sight codes for website authentication
US9264415B1 (en) 2012-07-11 2016-02-16 Microstrategy Incorporated User credentials
US9135462B2 (en) 2012-08-29 2015-09-15 Box, Inc. Upload and download streaming encryption to/from a cloud-based platform
US9959420B2 (en) 2012-10-02 2018-05-01 Box, Inc. System and method for enhanced security and management mechanisms for enterprise administrators in a cloud-based environment
FR2996947B1 (fr) * 2012-10-11 2015-09-04 Openways Sas Procede securise de commande d'ouverture de dispositifs de serrure a partir de messages mettant en oeuvre un cryptage symetrique
US9172698B1 (en) * 2012-10-12 2015-10-27 Ut-Battelle, Llc System and method for key generation in security tokens
US8775807B1 (en) 2012-10-26 2014-07-08 Microstrategy Incorporated Credential tracking
US8839353B2 (en) * 2012-11-09 2014-09-16 Microsoft Corporation Attack protection for trusted platform modules
US9640001B1 (en) * 2012-11-30 2017-05-02 Microstrategy Incorporated Time-varying representations of user credentials
GB2509322A (en) * 2012-12-28 2014-07-02 Securenvoy Plc Time-based two factor authentication
US9871785B1 (en) * 2013-03-14 2018-01-16 EMC IP Holding Company LLC Forward secure one-time authentication tokens with embedded time hints
US9154303B1 (en) 2013-03-14 2015-10-06 Microstrategy Incorporated Third-party authorization of user credentials
US9787669B2 (en) 2013-03-14 2017-10-10 Comcast Cable Communications, Llc Identity authentication using credentials
US9306943B1 (en) * 2013-03-29 2016-04-05 Emc Corporation Access point—authentication server combination
US20140304789A1 (en) * 2013-04-05 2014-10-09 International Business Machines Corporation Convenient one-time password
CN103218865B (zh) * 2013-04-17 2016-01-27 孙添平 一种动态密码电子锁系统及其认证方法
GB201314231D0 (en) * 2013-08-08 2013-09-25 Harwood William T Data Comparator Store
US9077711B2 (en) * 2013-09-05 2015-07-07 Verizon Patent And Licensing Inc. Selective complex data entry from one time passwords for authentication
US9917694B1 (en) * 2013-11-27 2018-03-13 EMC IP Holding Company LLC Key provisioning method and apparatus for authentication tokens
US10015153B1 (en) * 2013-12-23 2018-07-03 EMC IP Holding Company LLC Security using velocity metrics identifying authentication performance for a set of devices
US9332008B2 (en) * 2014-03-28 2016-05-03 Netiq Corporation Time-based one time password (TOTP) for network authentication
US9419968B1 (en) * 2014-04-30 2016-08-16 Symantec Corporation Mobile push user authentication for native client based logon
CN105429928A (zh) * 2014-05-30 2016-03-23 阿里巴巴集团控股有限公司 数据通信方法和系统及客户端和服务器
CN104077690B (zh) * 2014-06-24 2020-08-28 北京安讯奔科技有限责任公司 一次性密码生成的方法、装置及认证方法、认证系统
US10298588B2 (en) * 2014-07-29 2019-05-21 BlackSands, Inc. Secure communication system and method
CN105991612A (zh) * 2015-03-03 2016-10-05 阿里巴巴集团控股有限公司 用户身份认证方法和装置
US9697340B2 (en) * 2015-06-14 2017-07-04 Guardtime IP Holdings, Ltd. System and methods with assured one-time, replay-resistant passwords
KR101572111B1 (ko) * 2015-07-01 2015-11-27 주식회사 이노스코리아 랜덤하면서 유일한 코드를 생성하는 전자 장치 및 방법
JP6516009B2 (ja) * 2015-07-10 2019-05-22 富士通株式会社 機器認証システム、管理装置及び機器認証方法
US9641509B2 (en) 2015-07-30 2017-05-02 Ca, Inc. Enterprise authentication server
CN107294909B (zh) * 2016-04-04 2020-10-02 汪风珍 一种电子身份实名认证的产品和方法
KR101746102B1 (ko) * 2016-04-28 2017-06-13 주식회사 센스톤 무결성 및 보안성이 강화된 사용자 인증방법
US10607001B2 (en) * 2016-06-29 2020-03-31 Hancom Inc. Web-based electronic document service apparatus capable of authenticating document editing and operating method thereof
WO2018019838A1 (en) * 2016-07-25 2018-02-01 Telefonaktiebolaget Lm Ericsson (Publ) Proof-of-presence indicator
US10380359B2 (en) 2016-08-05 2019-08-13 Sensoriant, Inc. Software-based switch for providing products and/or services to users without compromising their privacy
US10860735B2 (en) 2016-08-05 2020-12-08 Sensoriant, Inc. Database system for protecting and securing stored data using a privacy switch
JP2019531532A (ja) * 2016-08-05 2019-10-31 センソリアント・インコーポレイテッド 製品および/またはサービスを提供するアプリケーションにおいてユーザのプライバシーを維持するためのシステムおよび方法
US10528947B2 (en) 2016-09-18 2020-01-07 Howard H Sheerin Locking an online account based on a public cryptocurrency address
CN106302546B (zh) * 2016-10-18 2019-09-13 青岛海信电器股份有限公司 实现服务器访问的方法和装置
US10958424B1 (en) * 2017-11-02 2021-03-23 Amazon Technologies, Inc. Mechanism to allow third party to use a shared secret between two parties without revealing the secret
US11316693B2 (en) * 2018-04-13 2022-04-26 Microsoft Technology Licensing, Llc Trusted platform module-based prepaid access token for commercial IoT online services
WO2019216950A1 (en) * 2018-05-08 2019-11-14 Visa International Service Association Password based threshold token generation
CN108900471B (zh) * 2018-05-31 2022-02-25 北京证大向上金融信息服务有限公司 用于传输数据的服务器、客户端、网络系统及方法
US10554411B1 (en) 2018-10-02 2020-02-04 Capital One Services, Llc Systems and methods for cryptographic authentication of contactless cards
CN111523905A (zh) * 2020-04-26 2020-08-11 北京中关村银行股份有限公司 一种验证码的安全认证方法、装置、存储介质及电子设备
US11777941B2 (en) * 2020-09-30 2023-10-03 Mideye Ab Methods and authentication server for authentication of users requesting access to a restricted data resource using authorized approvers
TWI810853B (zh) * 2022-03-21 2023-08-01 安研科技股份有限公司 具有工業物聯網模型預測與行動稽核功能的雲端平台

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327658B1 (en) * 1997-05-11 2001-12-04 Hitachi, Ltd. Distributed object system and service supply method therein
US6615353B1 (en) * 1997-07-23 2003-09-02 Yokogawa Digital Computer Corporation User authentication method and user authentication system
CN1466061A (zh) * 2002-07-04 2004-01-07 张东旭 自动随机一次性密码提高网络交易安全的认证方法
CN1469583A (zh) * 2002-07-16 2004-01-21 北京创原天地科技有限公司 因特网上不同应用系统间用户认证信息共享的方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4731575A (en) * 1986-12-08 1988-03-15 Sloan Joseph W Prepayment metering system using encoded purchase cards
US5892900A (en) * 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US5937068A (en) * 1996-03-22 1999-08-10 Activcard System and method for user authentication employing dynamic encryption variables
US5737421A (en) * 1996-03-22 1998-04-07 Activcard System for controlling access to a function having clock synchronization
US5802176A (en) * 1996-03-22 1998-09-01 Activcard System for controlling access to a function, using a plurality of dynamic encryption variables
US5953420A (en) * 1996-10-25 1999-09-14 International Business Machines Corporation Method and apparatus for establishing an authenticated shared secret value between a pair of users
US5961593A (en) * 1997-01-22 1999-10-05 Lucent Technologies, Inc. System and method for providing anonymous personalized browsing by a proxy system in a network
US6829356B1 (en) * 1999-06-29 2004-12-07 Verisign, Inc. Server-assisted regeneration of a strong secret from a weak secret
US20010056409A1 (en) * 2000-05-15 2001-12-27 Bellovin Steven Michael Offline one time credit card numbers for secure e-commerce
US20040139028A1 (en) * 2001-03-23 2004-07-15 Fishman Jayme Matthew System, process and article for conducting authenticated transactions
JP2002297547A (ja) 2001-04-03 2002-10-11 Sony Corp 情報処理装置および方法、情報処理システム、記録媒体、並びにプログラム
US7392390B2 (en) * 2001-12-12 2008-06-24 Valve Corporation Method and system for binding kerberos-style authenticators to single clients
GB0210692D0 (en) * 2002-05-10 2002-06-19 Assendon Ltd Smart card token for remote authentication

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6327658B1 (en) * 1997-05-11 2001-12-04 Hitachi, Ltd. Distributed object system and service supply method therein
US6615353B1 (en) * 1997-07-23 2003-09-02 Yokogawa Digital Computer Corporation User authentication method and user authentication system
CN1466061A (zh) * 2002-07-04 2004-01-07 张东旭 自动随机一次性密码提高网络交易安全的认证方法
CN1469583A (zh) * 2002-07-16 2004-01-21 北京创原天地科技有限公司 因特网上不同应用系统间用户认证信息共享的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CN 1466061 A,全文.

Also Published As

Publication number Publication date
CN1922845A (zh) 2007-02-28
EP1723594A4 (en) 2014-03-05
JP2007523431A (ja) 2007-08-16
JP2011192310A (ja) 2011-09-29
EP1723594A1 (en) 2006-11-22
EP1723594B1 (en) 2017-11-29
CA2556148C (en) 2014-04-29
CA2556148A1 (en) 2005-09-09
US8639628B2 (en) 2014-01-28
JP4843114B2 (ja) 2011-12-21
US20070050635A1 (en) 2007-03-01
US20140115677A1 (en) 2014-04-24
JP2011108275A (ja) 2011-06-02
WO2005083610A8 (en) 2006-09-21
WO2005083610A1 (en) 2005-09-09

Similar Documents

Publication Publication Date Title
CN1922845B (zh) 令牌验证系统和方法
US10929524B2 (en) Method and system for verifying an access request
Chen et al. Mobile device integration of a fingerprint biometric remote authentication scheme
CN1197030C (zh) 鉴别用户的装置及其方法
CN101495956A (zh) 扩展一次性密码方法和装置
TWI578253B (zh) 使用行動通訊裝置申請金融憑證之系統及其方法
KR20200020382A (ko) 암호화폐 전자지갑 시스템
KR102089044B1 (ko) 복약 정보 관리 방법
Yaseen et al. Secure Electronic Healthcare Record Using Robust Authentication Scheme
KR20230004312A (ko) Did를 이용한 개인정보의 인증 및 식별 시스템과 그 방법
CN117353913A (zh) 用户签名的生成方法及装置、非易失性存储介质
Haraldsson Strong user authentication mechanisms

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101006

Termination date: 20140223