CN101467387A - 基于时间和事件的一次性密码 - Google Patents

基于时间和事件的一次性密码 Download PDF

Info

Publication number
CN101467387A
CN101467387A CNA2007800214969A CN200780021496A CN101467387A CN 101467387 A CN101467387 A CN 101467387A CN A2007800214969 A CNA2007800214969 A CN A2007800214969A CN 200780021496 A CN200780021496 A CN 200780021496A CN 101467387 A CN101467387 A CN 101467387A
Authority
CN
China
Prior art keywords
tec
value
otp
incident
token
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.)
Pending
Application number
CNA2007800214969A
Other languages
English (en)
Inventor
D·姆雷希
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 CN101467387A publication Critical patent/CN101467387A/zh
Pending legal-status Critical Current

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/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
    • 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
    • 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
    • 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/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种根据值TEC来产生一次性密码(OTP)的系统和方法,所述值TEC可根据事件的发生以及经过的时间来改变。OTP可以在令牌上被计算并且被发送至证实者。证实者保存了用于从包括TEC的令牌中计算一个或多个预期OTP所需要的准确或估计参数。值TEC可以在令牌与证实者之间进行同步。

Description

基于时间和事件的一次性密码
相关申请
本申请涉及2004年10月15日提交的美国临时专利申请60/618,600以及2005年10月17日提交的PCT申请PCT/US05/37113。
发明领域
本发明的领域是认证(authentication),尤其是使用一次性密码的认证。
发明背景
用户可以利用保存了只与认证服务共享的秘密的令牌来被认证。该令牌根据共享秘密以及其他值来为每一次认证产生一次性密码(“OTP”)。当在认证服务上接收到OTP时,该服务计算至少一个预期OTP值,并且将其与接收到的OTP值相比较。如果它们匹配,则用户通过认证。否则用户未通过认证。
根据共享秘密以及随时间函数改变的值,可以自动并周期性地产生OTP。例如,在每一分钟都可以根据共享秘密以及与天的日期和时刻相应的值来自动产生新的OTP。认证服务根据共享秘密以及某个日期/时间值范围来计算一系列预期OTP,其中所述日期/时间值范围意味着包含了令牌上使用的日期/时间值。这会考虑在令牌时钟与服务时钟之间的、导致令牌与服务失去同步的任何漂移。如果服务计算的OTP之一与接收到的OTP匹配,那么用户通过认证。由于用以计算OTP的其中一个参数会随着时间改变,从而导致其很难猜测,因此安全性得到增强。
OTP可以根据共享秘密以及事件特性来计算。例如,事件特性可以是用户每次按下令牌上的按钮时递增的计数器值。认证服务根据共享秘密以及该计数器值来计算OTP范围,其中该计数器值始于令牌上的最后一个已知计数器值。这考虑了那些导致未被发送至服务的OTP的按钮按压(button-pushes)。如果在服务上计算的OTP之一与接收到的OTP相匹配,则用户通过认证。
已知了很多种用于产生OTP的算法,包括在RFC4226中规定的HOTP算法。下列符号可以在描述HOTP算法的过程中使用。
符号        表示
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
C           8字节计数器值,移动因子。这个计数器必须在HOTP生成器(证明者)与HOTP验证器(证实者)之间被同步。
K           证明者与证实者之间的共享秘密;每一个HOTP生成器都具有不同并且唯一的秘密K。
Digit     HOTP值中的数字数量;系统参数。
HOTP算法是以递增的计数器值以及仅仅为令牌和验证服务所知的静态对称密钥为基础的。为了创建HOTP值,我们将会使用如RFC2104中定义的HMAC-SHA-1算法。由于HMAC-SHA-1计算的输出是160比特,因此,我们必须将这个值截断成某个可以易于被用户输入的值。
HOTP(K,C)=Truncate(HMAC-SHA-1(K,C))
其中“Truncate”代表可以将HMAC-SHA-1值转换成HOTP值的函数。密钥(K)、计数器(C)以及数据值首先可以是被散列的高阶字节。由HOTP生成器产生的HOTP值可以被视为大端字节序(big endian)。
产生OTP可以分以下四个步骤来进行。
步骤1:产生HMAC-SHA-1值
假设HS=HMAC-SHA-1(K,C)//HS是一个20字节字串
步骤2:产生一个4字节字串(动态截断)
假设Sbits=DT(HS)//DT,如下定义的DT返回31比特字串
步骤3:计算HOTP值
假设Snum=StToNum(Sbits)//将S转换成0...2^{32}-1中的数字
返回D=Snum mod 10^Digit//D是范围0...10^{Digit}-1中的数字
截断函数可以执行步骤2和步骤3,也就是动态截断,然后,该函数可以执行以模10^Digit为的减法模数计算。这种动态偏移截断技术可以从160比特(20字节)的HMAC-SHA-1结果中提取4字节的动态二进制码。
DT(String)//String=String[0]...String[19]
  假设OffsetBits是String[19]的低阶4比特
  Offset=StToNum(OffsetBits)//0<=OffSet<=15
  假设P=String[OffSet]...String[OffSet+3]
  返回P的最后32个比特。
屏蔽P的最高有效位,可以避免有符号和无符号的模数计算的冲突。不同的处理器可以采用不同方式来执行这些运算,此外,通过遮住有符号的比特,可以消除不确定性。
RFC4226需要实施的是,提取至少6个数字码并且可能地提取7和8个数字码。在不同的环境中有可能会违反这个需要,但是结果未必与该RFC相符合。取决于安全需要,为了提取更长的HOTP值结果,应当考虑Digit=7或是更多。
在这里给出了一个将这种技术用于Digit=6的实例,也就是从HMAC值中计算6数字的HOTP值。以下代码实例描述了在hmac_result是具有HMAC-SHA-1结果的字节阵列的情况下动态二进制代码的提取:
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-I HMAC Bytes(例子)
------------------------------------------------------------
|Byte Number                                                |
------------------------------------------------------------
|00|01|02|03|04|05|06|07|08|09|10|11|12|13|14|15|16|17|18|19|
------------------------------------------------------------
|Byte Value                                                 |
------------------------------------------------------------
|1f|86|98|69|0e|02|ca|16|61|85|50|of|7f|19|da|8e|94|5b|55|5a|
-------------------------------***********----------------++|
最后一个字节(字节19)具有十六进制值0x5a。
较低的4个比特的值是0xa(偏移值)。
偏移值是字节10(0xa)。
始于字节10的4个字节的值是0x50ef7f19,它是对称二进制码DBC1。
DBC1的MSB是0x50,因此DBC2=DBC1=0x50ef7f19。
HOTP=DBC2模10^6=872921。
动态二进制码可以被视为一个31比特的无符号的大端字节序整数;第一个字节是用0x7f屏蔽的。然后,将这个数对1,000,000(10^6)取模,以便产生6位数字的十进制HOTP值872921。
使用计数器值作为输入来计算OTP的一个缺点是它有可能会长时间保持不变。例如,如果用户数月没有使用其令牌,那么计数器值会在使用中间的整个时段中持续保持在相同的值。在某些环境中,这会允许第三方有足够时间来分析令牌,猜测计数器的确切或近似值,并且有可能会危及认证系统的安全性。
附图简述
图1示出一个根据本发明实施例的设备。
图2示出根据本发明实施例的方法。
详细描述
根据本发明的实施例,计数器值C可以作为时间函数来改变。关于时间的任何适当函数都是可以使用的。基于事件的发生并且基于时间的流逝而改变的计数器C被称为基于时间和事件的计数器或TEC。例如,
TEC=F(X,Y,W,Z)
其中F是任何适当的函数或其他映射,X是TEC的基于时间的增量的大小,Y涉及将增量X添加至TEC的频率,W是TEC的基于事件的增量的大小,Z是在将TEC增加W之前需要发生的事件发生的次数。应该指出的是,X和W可以是正数或负数,并且一般来说,TEC可以是整数或是其他任何类型的适当的数。例如,在证明者(例如令牌)和证实者(例如认证设备)这两方,TEC可以每Y秒增加X。同样,TEC可以在每当事件E或是来自事件集合{E}的事件发生Z次的时候增加W。实际OTP值可以在发生了增加TEC的事件之后在令牌上被计算。例如,在如下所述的背景中,TEC可以每60秒增加1。
时间                         事件          TEC           OTP计算
23:41:00                     无            341           无
23:42:00                     无            342           无
23:43:00                     无            343           无
23:43:17                     按下按钮      344           872921
23:44:00                     无            345           无
这个实例示出是一个用于增加TEC的线性函数,但是任何用于X和Y的适当函数或映射都是可以使用的。
X=G(Xi),i=1,2,...
Y=H(Yj),j=1,2,...
Xi和Yi可以是数字或变量。例如,X可以是共享秘密的函数的对8的模,Y可以等于在证明者和证实者上产生的伪随机数的对10的模。X和/或Y可以基于先前OTP计算的中间或最终结果,所述OTP计算例如使用从为在先OTP所计算的完整值、例如截断之前的值中得到的最后一个字节的全部或者部分。例如,先前HMAC计算的最后一个字节(字节19)可以在每次计算之后加以存储并且可以用于这个目的。
X和Y也可以采用其他方式来确定。举例来说,Y可以基于一个系统参数、例如在证明者方的时钟值。不同的令牌族可以具有不同的时间步长。用于访问银行账户的令牌可以以Y的较小值例如2或3分钟工作,但是用于访问电子邮件账户的令牌可以以一个较大的值例如30分钟来工作。
在证明者和证实者这两方,TEC都可以“在后台”增加。任何适当的事件都可以触发TEC的增加和OTP的计算。例如,当按下了令牌上的按钮时,可以在令牌上计算OTP值。同样,令牌可以是“软令牌”,所述“软令牌”被实施为在移动电话中、在PC上运行的应用等等中的java小应用程序。在这些情况下,触发OTP计算的事件可以包括:按下手机键盘或计算机键盘上的指定按键,按下某个按键序列,按下特殊按钮,生物扫描等等。同样,OTP可以通过如下方式来触发:在屏幕显示上的图形用户界面中选择工具栏上的项目,选择下拉菜单上的项目,激活应用程序,激活应用程序的某个特征,或是其他任何适当的事件。
在证明者一端,TEC的初始值可以是1或是其他任何适当的值。TEC的初始值可以由用户设置、由认证服务设置、由应用程序设置、由已授权的第三方等等来设置。当设置了证明者一端的初始值时,该初始值(或是足以推导出该初始值的信息)应该被发送到证实者。这样,证实者可以将其关于证明者的TEC值与证明者自身的C值同步。如果没有重新设置TEC,那么可以为TEC值规定一个默认值。可以采用相同的方式来为X和Y设置初始和默认值。这些初始值可以作为证明者与证实者之间的秘密来保持。
证明者和证实者应该被同步,并且还可能被再同步。在一个实施例中,当令牌被激活时,时钟可以开始增加TEC。在另一个实施例中,在制造令牌的时候,时钟可以开始增加TEC;在以验证服务激活令牌的时候,可发生再同步过程。在这里可以有简单的处理来启动时钟、增加所述值以及计算OTP值,例如将按钮按下整5秒、在三秒内将按钮按下四次等等。证实者可以基于该证实者最近得知的证明者的TEC值以及证实者所知的当前时间来为指定证明者计算一组候选OTP。这些最近已知的值附近的范围可以被使用。如果证实者计算得到的OTP与从证明者接收的OTP相匹配,那么证实者可以更新和存储用于TEC的值和用于该证明者的时间。
根据本发明的实施例,通过根据事件的出现来增加TEC值,以及通过根据经过的时间来增加该值,可以产生OTP。这个OTP可以根据TEC来确定。该OTP也可以根据TEC以及附加的值“AV”被计算。这个附加的值AV可以是共享秘密,例如密码加密密钥、密码等等。AV可以基于秘密和公共信息。这种公共信息可以是一个质询、一个问题等等。TEC可以根据诸如按下按钮、选择对话框、满足某个条件(例如正确回应某个质询)等等的任何适当事件的出现而递增。经过的时间可以由一个值T来量度,其中对每一个应用来说,所述值可以是不同的。TEC可以在T秒、T分钟等等之后递增。此外,该TEC还可以增加某个值TI,其中在T秒之后,TEC可以增加TI。例如,在T=60秒之后,TEC可以增加TI=1。TEC可以借助值EI被控制,其中在每一次发生事件E之后,TEC可以增加EI。例如,在用户按下按钮之后,TEC可以增加EI=3。在一个实施例中,一次性密码是利用RFC4226中规定的算法来计算的。
根据本发明的实施例,用户可以通过连接至激活网站来激活令牌。该激活网站可以使用任何适当的技术来认证用户,例如通过请求和证实用户名及密码来进行认证。用户还可以提供任何适当的附加信息,例如令牌标识符、令牌序列号、相关的证书等等。该信息可以(与令牌产生并且发送至激活的网站的一个或多个OTP值一起)被用于证明所述用户实际具有该令牌的事实。由此,所述令牌(例如令牌标识符)可以与特定用户(例如用户名)相联系,并且可以例如根据由令牌时钟产生的数据在令牌中发起时间值的存储和/或更新。作为替换,时钟信号可以源于令牌外部。该时间值可以帮助证实者来确定用户获取OTP值的时刻与证实者一端接收OTP值的时间之间的时间差。
本发明的一个实施例还可以根据计数器(C)、密钥(K)和附加的值(AV)来计算HOTP值。附加的值AV可以基于私有秘密(例如私钥)、共享秘密(例如密码)或是秘密(私有或共享的)与某些公共信息的组合。公共信息是非共享或私有秘密的任何信息。公共信息的一个实例是用户标识符、质询、问题的答案等等。
在这里可以为令牌或令牌组设置一个时间窗。当在证实者(在令牌上)实际产生OTP与接收OTP值之间经过的时间长于为特定令牌或令牌组设置的时间窗时,可发生令牌的再同步。当令牌关闭时,例如当手机、PC等等上的软令牌关闭时,必须将软令牌值与证实者值进行同步。假设具有软令牌的设备在时间T0被关闭并且一直处于休眠直至其在时间T1再次开启。假设t是将TEC增大EI的时间段。例如,值TEC每t秒即被增加EI。再同步可以如下地被执行:
1-计算T=T1-T0
2-计算Count=Floor(T/t)*EI
3-将TEC增加Count
4-再同步令牌时钟(相对于差(differential)T)。
在这个再同步过程之后,TEC通常每隔t时间段增加EI。
另一种基于TEC的再同步方法可以在证明者可发送OTP值以及其他信息、尤其是TEC值的时候被使用。证明者可以发送其OTP(表示为OTP.prover)以及TEC(表示为TEC.prover)值,并且OTP可以充当TEC的短消息认证码。
证实者可以在由TEC的作为系统参数的上限值(表示为TEC.bound)所确定的某个值范围内进行再同步。
如果下面的情况全都成立,那么证实者可以接受OTP,其中TEC.verifier是证实者的与证明者相关联的当前TEC值。
1.证明者可以发送OTP.prover和TEC.prover
2.证实者可以检查TEC.prover≥TEC.verifier
3.证实者可以检查(TEC.prover-TEC.verifier)≤TEC.bound
4.证实者可以检查OTP.pover对于TEC.prover而言是正确的
5.如果成立的话,证实者可以将TEC.verifier设置成TEC.prover
在这个再同步过程之后,TEC通常会在每当经过t时间段时增加EI。同样,相同或相似的协议也可以用于在证明者一端再同步TEC值。
即使装置没有关闭,该装置上的时钟也有可能会偏离与其他时钟例如证实者一端的时钟同步。一种在没有来自最终用户的特殊干预的情况下进行再同步方法是保持一个围绕正常TEC值的“窗口”。当证实者接收到来自令牌的OTP、例如在令牌上计算并被发送至证实者的OTP的时候,它可以根据其为发送令牌而存储的参数、例如该令牌的当前事件发生数量(例如在令牌上按钮被按下的次数的数量,所述数量例如基于由证实者迄今为止接收的关于该令牌的OTP证实请求的数量)、时间等等来计算预期的TEC值。如果认定其存储的参数相对于在令牌上用以产生OTP的参数而言稍不精确,那么证实者可以根据这些参数的预期幅度附近的参数幅度范围来计算若干个候选OTP。举例来说,证实者可以检查OTP,如果它不正确,则计算针对C+1、C-1、C+2等等的OTP,直至发现匹配或是超出窗口大小(例如在所预期的C的正负10以内)。
证实者可以实施不同的安全性等级:
1-简单地接受这个窗口中的OTP值;或者
2-要求用户提供另一个OTP(即使时隙是相同的,但由于按下按钮(导致事件发生)将会修改计数器值并且产生与先前OTP不同的OTP,因此该OTP将是不同的);或者
3-以不同方式接受对于某些动作的OTP,拒绝对于其他动作的OTP,最终也接受前2-3个再同步,然后则请求另一个OTP、建议替换令牌和/或向技术支持告知存在与特定用户的同步问题等等。
在图1中示出了一个根据本发明实施例的系统。令牌101可以包括与存储器103、显示器104、时钟105以及按钮106相耦合的处理器102。存储器103可以存储数据107,例如密码之类的共享秘密、个人标识号码(PIN)、密码加密的密钥等等。存储器103还可以存储计数器C和基于公共信息的值。此外,存储器103还可以存储指令108,所述指令适于由处理器102执行以实现根据本发明的方法的至少一部分。
处理器102可以是在其硬件和/或固件中实施了本发明的方法的至少一部分的通用微处理器或专用集成电路。关于通用处理器的一个实例是由Santa Rosa,California的Intel公司制造的Pentium IV处理器。关于ASIC的一个实例是数字信号处理器。
存储器103可以是任何能够存储器电子信息的装置。关于存储器103的实例包括随机存取存储器、只读存储器、电可擦写可编程只读存储器、闪存存储器、硬盘、CD等等。此外还存在可以存储指令107和数据(例如秘密、计数器值等等)的介质的实例。
按钮106可以是任何能在被按下或以其他方式被用户激活的时候发送信号的装置。关于按钮的实例包括膜片开关、压力传感器、生物读取器、压力开关等等。
时钟105可以是适于指示所经过的时间的任何设备。时钟的实例包括发出公知频率的石英晶体,所述公知频率可被用作随时间来以一致的方式改变变量值的基础。在本发明的某些实施例中,令牌101并未包括时钟105,而是从令牌101外部的信源接收定时信号。
显示器104可以是能向用户显示信息、例如文字数字信息的任何装置。显示器104的实例包括液晶显示器、TFT显示器、等离子显示器等等。该显示器104还可以向用户显示OTP。
在图2中示出了根据本发明实施例的方法。在步骤201,值C被分配一个初始值,并且时间T被设置成零。在步骤202,如果确定发生了事件E,则在步骤203将C增加数量B,并且在步骤204中计算OTP。如果确定未发生事件E,则在步骤205确定是否经过了时间量T。如果经过了时间T,则在步骤206将C增加数量B,并且在步骤207将T复位成零。
以上描述旨在解释而不是限制本发明的范围。本领域技术人员将会了解,权利要求包含了前述实例之外的众多变化。

Claims (19)

1.一种用于产生一次性密码的方法,包括:
根据事件的发生以及经过的时间来增加值TEC;以及
根据TEC来确定所述一次性密码。
2.根据权利要求1所述的方法,其中所述一次性密码进一步根据附加的值来确定。
3.根据权利要求2所述的方法,其中所述附加的值以共享秘密为基础。
4.根据权利要求2所述的方法,其中所述附加的值以共享秘密和公共信息为基础。
5.根据权利要求1所述的方法,其中所述事件是按压按钮。
6.根据权利要求1所述的方法,其中所述事件是选择对话框。
7.根据权利要求1所述的方法,其中所述事件是满足条件。
8.根据权利要求1所述的方法,其中,在T秒之后,使TEC增加。
9.根据权利要求1所述的方法,其中,在T秒之后,使TEC增加TI。
10.根据权利要求1所述的方法,其中,在发生事件E之后,使TEC增加EI。
11.根据权利要求1所述的方法,其中根据RF4226中规定的算法来计算所述一次性密码。
12.一种用于产生一次性密码的设备,包括被构造和设置成根据经过的时间以及事件的发生使TEC增加并且根据TEC来计算一次性密码。
13.根据权利要求12所述的设备,进一步包括与处理器相耦合的存储器和显示器。
14.根据权利要求13所述的设备,其中所述处理器进一步被构造和设置成使显示器显示所述一次性密码。
15.根据权利要求12所述的设备,其中,所述处理器被构造和设置成在所述处理器检测到经过T秒的时候将TEC增加TI。
16.根据权利要求12所述的设备,其中所述处理器被构造和设置成在所述处理器检测到事件E发生的时候将TEC增加EI。
17.根据权利要求12所述的设备,其中所述处理器被构造和设置成根据RFC4226中规定的算法来计算所述一次性密码。
18.一种存储了指令的介质,其中所述介质适于由处理器来执行,以便根据基于事件的出现和经过的时间来增加的值来计算一次性密码。
19.根据权利要求18所述的介质,其中所述一次性密码是根据附加的值来计算的。
CNA2007800214969A 2006-04-21 2007-03-27 基于时间和事件的一次性密码 Pending CN101467387A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/407,996 2006-04-21
US11/407,996 US9258124B2 (en) 2006-04-21 2006-04-21 Time and event based one time password

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201410333778.4A Division CN104135369A (zh) 2006-04-21 2007-03-27 基于时间和事件的一次性密码

Publications (1)

Publication Number Publication Date
CN101467387A true CN101467387A (zh) 2009-06-24

Family

ID=38620978

Family Applications (2)

Application Number Title Priority Date Filing Date
CNA2007800214969A Pending CN101467387A (zh) 2006-04-21 2007-03-27 基于时间和事件的一次性密码
CN201410333778.4A Pending CN104135369A (zh) 2006-04-21 2007-03-27 基于时间和事件的一次性密码

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201410333778.4A Pending CN104135369A (zh) 2006-04-21 2007-03-27 基于时间和事件的一次性密码

Country Status (9)

Country Link
US (1) US9258124B2 (zh)
EP (1) EP2016703B1 (zh)
JP (1) JP2009534742A (zh)
KR (1) KR101527226B1 (zh)
CN (2) CN101467387A (zh)
AU (1) AU2007243649B2 (zh)
CA (1) CA2649686C (zh)
HK (1) HK1203714A1 (zh)
WO (1) WO2007126763A2 (zh)

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2902253B1 (fr) * 2006-06-13 2009-04-03 Ingenico Sa Procede et dispositif d'authentification d'un utilisateur
GB2442249B (en) * 2007-02-20 2008-09-10 Cryptomathic As Authentication device and method
US8117648B2 (en) * 2008-02-08 2012-02-14 Intersections, Inc. Secure information storage and delivery system and method
US8402522B1 (en) 2008-04-17 2013-03-19 Morgan Stanley System and method for managing services and jobs running under production IDs without exposing passwords for the production IDs to humans
DE102008037794A1 (de) 2008-08-14 2010-02-18 Giesecke & Devrient Gmbh Einmalpasswort-Generator
CA2734496A1 (en) * 2008-08-20 2010-02-25 Wherepro, Llc Data packet generator for generating passcodes
US9158905B2 (en) * 2008-09-28 2015-10-13 Feitian Technologies Co., Ltd. Method for computer startup protection and system thereof
FR2941833B1 (fr) * 2009-02-03 2011-04-01 Oberthur Technologies Serveur, systeme et procede d'authentification a partir de mots de passe dynamiques.
EP2273416A1 (en) * 2009-06-25 2011-01-12 Gemalto SA Method of managing a one-time password in a portable electronic device
DE102009027686A1 (de) * 2009-07-14 2011-01-20 Bundesdruckerei Gmbh Verfahren zum Lesen von Attributen aus einem ID-Token
DE102009036706C5 (de) 2009-08-08 2017-04-13 Friedrich Kisters Sicherheitselement mit einer elektronischen Anzeigevorrichtung zur Darstellung von sicherheitsrelevanten Informationen oder Mustern, seine Verwendung als Bestandteil einer elektronischen Telekommunikationseinrichtung sowie ein Verfahren zur Kennzeichnung, Identifikation oder Authentifikation von Gegenständen oder Lebewesen
KR100972152B1 (ko) * 2009-12-31 2010-07-26 주식회사 미래테크놀로지 듀얼모드로 작동하는 시간동기방식 원타임패스워드 발생장치
US8452980B1 (en) * 2010-03-29 2013-05-28 Emc Corporation Defeating real-time trojan login attack with delayed interaction with fraudster
GB2481587B (en) * 2010-06-28 2016-03-23 Vodafone Ip Licensing Ltd Authentication
US8885833B2 (en) 2011-04-11 2014-11-11 Microsoft Corporation One-time recovery credentials for encrypted data access
US9628875B1 (en) * 2011-06-14 2017-04-18 Amazon Technologies, Inc. Provisioning a device to be an authentication device
US9292668B1 (en) * 2011-09-01 2016-03-22 Google Inc. Systems and methods for device authentication
CN104321776A (zh) * 2012-03-23 2015-01-28 安比恩特公司 具有嵌入式授权属性的离线认证
US8683570B1 (en) 2012-03-30 2014-03-25 Emc Corporation Scheduling soft token data transmission
US8752156B1 (en) 2012-03-30 2014-06-10 Emc Corporation Detecting soft token copies
CN102684881B (zh) * 2012-05-03 2016-05-25 飞天诚信科技股份有限公司 一种动态口令的认证方法和装置
GB2505678B (en) * 2012-09-06 2014-09-17 Visa Europe Ltd Method and system for verifying an access request
US9208354B2 (en) * 2013-03-12 2015-12-08 Intel Corporation Techniques for securing use of one-time passwords
US20140281523A1 (en) * 2013-03-13 2014-09-18 Vector Vex Inc. System and method of secure remote authentication of acquired data
US9917694B1 (en) * 2013-11-27 2018-03-13 EMC IP Holding Company LLC Key provisioning method and apparatus for authentication tokens
US9721248B2 (en) * 2014-03-04 2017-08-01 Bank Of America Corporation ATM token cash withdrawal
EP2924914A1 (en) * 2014-03-25 2015-09-30 Gemalto SA Method to manage a one time password key
US9332008B2 (en) * 2014-03-28 2016-05-03 Netiq Corporation Time-based one time password (TOTP) for network authentication
US11461766B1 (en) 2014-04-30 2022-10-04 Wells Fargo Bank, N.A. Mobile wallet using tokenized card systems and methods
US9652770B1 (en) 2014-04-30 2017-05-16 Wells Fargo Bank, N.A. Mobile wallet using tokenized card systems and methods
JP6181015B2 (ja) * 2014-08-22 2017-08-16 株式会社東芝 Icカード、icモジュール、及びicカードシステム
NL2013502B1 (en) * 2014-09-19 2016-09-01 Skopei Holding Ip And Brands B V A method for providing a user authorization allowing operating a lock selected from a series of locks, and a lock system.
KR102252396B1 (ko) * 2014-10-13 2021-05-13 삼성에스디에스 주식회사 Otp 기반 인증 시스템 및 방법
US9560030B2 (en) 2014-11-07 2017-01-31 Kaiser Foundation Hospitals Nodal random authentication
US9560046B2 (en) 2014-11-07 2017-01-31 Kaiser Foundation Hospitals Device notarization
US10129220B2 (en) 2015-06-13 2018-11-13 Avocado Systems Inc. Application and data protection tag
US10193889B2 (en) 2015-06-14 2019-01-29 Avocado Systems Inc. Data socket descriptor attributes for application discovery in data centers
US10270810B2 (en) 2015-06-14 2019-04-23 Avocado Systems Inc. Data socket descriptor based policies for application and data behavior and security
US10397277B2 (en) 2015-06-14 2019-08-27 Avocado Systems Inc. Dynamic data socket descriptor mirroring mechanism and use for security analytics
US9697340B2 (en) * 2015-06-14 2017-07-04 Guardtime IP Holdings, Ltd. System and methods with assured one-time, replay-resistant passwords
US10148697B2 (en) 2015-06-16 2018-12-04 Avocado Systems Inc. Unified host based security exchange between heterogeneous end point security agents
US10193930B2 (en) 2015-06-29 2019-01-29 Avocado Systems Inc. Application security capability exchange via the application and data protection layer
US10356068B2 (en) * 2015-07-14 2019-07-16 Avocado Systems Inc. Security key generator module for security sensitive applications
US10354070B2 (en) 2015-08-22 2019-07-16 Avocado Systems Inc. Thread level access control to socket descriptors and end-to-end thread level policies for thread protection
US10257198B2 (en) * 2015-09-11 2019-04-09 Arris Enterprises Llc Password input method for devices with limited user interface
CN113411317B (zh) * 2016-05-11 2023-05-26 创新先进技术有限公司 一种验证身份的方法和系统、智能穿戴设备
JP6935802B2 (ja) * 2016-12-09 2021-09-15 ソニーグループ株式会社 情報処理装置、および中継装置
US10992648B2 (en) * 2017-02-16 2021-04-27 Blue Armor Technologies, LLC Secure time communication system
US10586033B2 (en) * 2017-08-29 2020-03-10 International Business Machines Corporation Automatic upgrade from one step authentication to two step authentication via application programming interface
EP3531615B1 (fr) * 2018-02-21 2024-04-10 EM Microelectronic-Marin SA Procede d'authentification d'un transpondeur en communication avec un serveur
US20190342101A1 (en) * 2018-05-04 2019-11-07 John William Hayes Secure time communication system
CN112913186A (zh) * 2018-06-18 2021-06-04 数据逻辑软件公司 用于一次性密码认证的系统和方法
US11599862B1 (en) 2018-08-30 2023-03-07 Wells Fargo Bank, N.A. User interface for a biller directory and payments engine
KR20210068028A (ko) * 2018-10-02 2021-06-08 캐피탈 원 서비시즈, 엘엘씨 비접촉식 카드의 암호화 인증을 위한 시스템 및 방법
US11551190B1 (en) 2019-06-03 2023-01-10 Wells Fargo Bank, N.A. Instant network cash transfer at point of sale
CN110517389B (zh) * 2019-08-30 2021-11-09 联永智能科技(上海)有限公司 设备密码的生成、验证方法、装置、设备和存储介质
US11811760B2 (en) * 2021-04-14 2023-11-07 Citrix Systems, Inc. Sessionless validation of client connections while mitigating cookie hijack attacks
US20230046788A1 (en) * 2021-08-16 2023-02-16 Capital One Services, Llc Systems and methods for resetting an authentication counter
US11995621B1 (en) 2021-10-22 2024-05-28 Wells Fargo Bank, N.A. Systems and methods for native, non-native, and hybrid registration and use of tags for real-time services

Family Cites Families (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4998279A (en) 1984-11-30 1991-03-05 Weiss Kenneth P Method and apparatus for personal verification utilizing nonpredictable codes and biocharacteristics
US5168520A (en) 1984-11-30 1992-12-01 Security Dynamics Technologies, Inc. Method and apparatus for personal identification
US5448045A (en) 1992-02-26 1995-09-05 Clark; Paul C. System for protecting computers via intelligent tokens or smart cards
JP3053527B2 (ja) * 1993-07-30 2000-06-19 インターナショナル・ビジネス・マシーンズ・コーポレイション パスワードを有効化する方法及び装置、パスワードを生成し且つ予備的に有効化する方法及び装置、認証コードを使用して資源のアクセスを制御する方法及び装置
FR2741465B1 (fr) 1995-11-20 1997-12-19 Bull Sa Procede d'authentification d'un utilisateur travaillant dans un environnement distribue en mode client/serveur
WO1997036264A1 (fr) 1996-03-22 1997-10-02 Activcard Systeme de controle d'acces a une fonction, dans lequel le chiffrement implique plusieurs variables dynamiques
US5937068A (en) 1996-03-22 1999-08-10 Activcard System and method for user authentication employing dynamic encryption variables
US5802176A (en) * 1996-03-22 1998-09-01 Activcard System for controlling access to a function, using a plurality of dynamic encryption variables
US5887065A (en) * 1996-03-22 1999-03-23 Activcard System and method for user authentication having clock synchronization
US6178236B1 (en) 1996-03-27 2001-01-23 Siemens Information And Communication, Networks, Inc. Method and system for providing password protection
US5768373A (en) * 1996-05-06 1998-06-16 Symantec Corporation Method for providing a secure non-reusable one-time password
KR100213188B1 (ko) 1996-10-05 1999-08-02 윤종용 사용자 인증 장치 및 방법
US6292896B1 (en) * 1997-01-22 2001-09-18 International Business Machines Corporation Method and apparatus for entity authentication and session key generation
US6272631B1 (en) * 1997-06-30 2001-08-07 Microsoft Corporation Protected storage of core data secrets
US6891819B1 (en) 1997-09-05 2005-05-10 Kabushiki Kaisha Toshiba Mobile IP communications scheme incorporating individual user authentication
US6370649B1 (en) * 1998-03-02 2002-04-09 Compaq Computer Corporation Computer access via a single-use password
JPH11282982A (ja) 1998-03-31 1999-10-15 Oki Electric Ind Co Ltd 利用者カード、通信端末機、通信サーバ、通信システム、および、通信システムの利用者認証方法
JPH11316740A (ja) 1998-05-06 1999-11-16 Meidensha Corp ワンタイムパスワード認証システム
IL142119A0 (en) 1998-09-22 2002-03-10 Cybex Computer Prod Corp System and method for accessing and operating personal computers remotely
US6829356B1 (en) * 1999-06-29 2004-12-07 Verisign, Inc. Server-assisted regeneration of a strong secret from a weak secret
JP2001067320A (ja) 1999-08-25 2001-03-16 Railway Technical Res Inst 情報提供支援方法及びその手順を記録した記録媒体
JP2001175599A (ja) 1999-12-15 2001-06-29 Metro Inc 認証システム
ATE311063T1 (de) 2000-02-08 2005-12-15 Swisscom Mobile Ag Vereinter einloggungsprozess
CN1142653C (zh) * 2000-04-28 2004-03-17 杨宏伟 动态口令认证系统及方法
JP2001352324A (ja) 2000-06-07 2001-12-21 Nec Corp ワンタイムパスワード生成装置、認証方法およびワンタイムパスワード生成プログラムを記録した記録媒体
AU7182701A (en) 2000-07-06 2002-01-21 David Paul Felsher Information record infrastructure, system and method
EP1327321A4 (en) 2000-10-20 2005-08-17 Wave Sys Corp CRYPTOGRAPHIC DATA SECURING METHOD AND SYSTEM
US20040059952A1 (en) 2000-12-14 2004-03-25 Peter Newport Authentication system
JP2002259344A (ja) 2001-02-28 2002-09-13 Mitsubishi Electric Corp ワンタイムパスワード認証システム及び携帯電話及びユーザ認証サーバ
GB0119629D0 (en) 2001-08-10 2001-10-03 Cryptomathic As Data certification method and apparatus
US7363494B2 (en) * 2001-12-04 2008-04-22 Rsa Security Inc. Method and apparatus for performing enhanced time-based authentication
US7661129B2 (en) * 2002-02-26 2010-02-09 Citrix Systems, Inc. Secure traversal of network components
JP4090251B2 (ja) 2002-03-05 2008-05-28 パスロジ株式会社 認証装置、認証方法、ならびに、プログラム
GB0210692D0 (en) 2002-05-10 2002-06-19 Assendon Ltd Smart card token for remote authentication
US7523490B2 (en) * 2002-05-15 2009-04-21 Microsoft Corporation Session key security protocol
US7069438B2 (en) 2002-08-19 2006-06-27 Sowl Associates, Inc. Establishing authenticated network connections
US7171564B2 (en) * 2002-08-29 2007-01-30 International Business Machines Corporation Universal password generation method
AU2003293125A1 (en) 2002-11-27 2004-06-23 Rsa Security Inc Identity authentication system and method
US7318235B2 (en) 2002-12-16 2008-01-08 Intel Corporation Attestation using both fixed token and portable token
US7519989B2 (en) 2003-07-17 2009-04-14 Av Thenex Inc. Token device that generates and displays one-time passwords and that couples to a computer for inputting or receiving data for generating and outputting one-time passwords and other functions
US20050050330A1 (en) 2003-08-27 2005-03-03 Leedor Agam Security token
US7762470B2 (en) * 2003-11-17 2010-07-27 Dpd Patent Trust Ltd. RFID token with multiple interface controller
EP1723594B1 (en) 2004-02-23 2017-11-29 Symantec International Token authentication system and method
US7529371B2 (en) 2004-04-22 2009-05-05 International Business Machines Corporation Replaceable sequenced one-time pads for detection of cloned service client
US7886345B2 (en) 2004-07-02 2011-02-08 Emc Corporation Password-protection module
US7373516B2 (en) 2004-08-19 2008-05-13 International Business Machines Corporation Systems and methods of securing resources through passwords
CN1731721A (zh) * 2004-08-22 2006-02-08 西安海星现代科技股份有限公司 动态口令生成方法
US20060059344A1 (en) * 2004-09-10 2006-03-16 Nokia Corporation Service authentication
WO2006044717A2 (en) 2004-10-15 2006-04-27 Verisign, Inc. One time password
KR100611304B1 (ko) * 2005-01-27 2006-08-10 삼성전자주식회사 기 입력된 버튼의 코드값을 이용하여 1회용 비밀키를생성하는 제어기기, 상기 1회용 비밀키를 이용하여 상기제어기기를 인증하는 홈서버, 및, 상기 1회용 비밀키를이용한 제어기기 인증방법
WO2006119184A2 (en) 2005-05-04 2006-11-09 Tricipher, Inc. Protecting one-time-passwords against man-in-the-middle attacks
US7904946B1 (en) * 2005-12-09 2011-03-08 Citicorp Development Center, Inc. Methods and systems for secure user authentication
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
KR100645401B1 (ko) * 2006-05-01 2006-11-15 주식회사 미래테크놀로지 휴대폰에서의 시간동기 방식 오티피 발생장치와 방법
WO2011050745A1 (zh) * 2009-10-30 2011-05-05 北京飞天诚信科技有限公司 认证方法及系统
KR101198120B1 (ko) * 2010-05-28 2012-11-12 남궁종 홍채정보를 이용한 양방향 상호 인증 전자금융거래시스템과 이에 따른 운영방법
US8990905B1 (en) * 2012-09-28 2015-03-24 Emc Corporation Protected resource access control utilizing intermediate values of a hash chain
US8984602B1 (en) * 2013-06-28 2015-03-17 Emc Corporation Protected resource access control utilizing credentials based on message authentication codes and hash chain values

Also Published As

Publication number Publication date
AU2007243649A1 (en) 2007-11-08
US9258124B2 (en) 2016-02-09
EP2016703A2 (en) 2009-01-21
WO2007126763A3 (en) 2008-10-16
JP2009534742A (ja) 2009-09-24
CA2649686C (en) 2016-10-11
US20070250923A1 (en) 2007-10-25
KR101527226B1 (ko) 2015-06-08
EP2016703A4 (en) 2013-01-16
EP2016703B1 (en) 2020-02-26
KR20080112386A (ko) 2008-12-24
HK1203714A1 (zh) 2015-10-30
CA2649686A1 (en) 2007-11-08
AU2007243649B2 (en) 2011-07-07
CN104135369A (zh) 2014-11-05
WO2007126763A2 (en) 2007-11-08

Similar Documents

Publication Publication Date Title
CN101467387A (zh) 基于时间和事件的一次性密码
CN104104517B (zh) 一次性密码验证的方法和系统
US9525549B2 (en) Method and apparatus for securing a mobile application
EP2158717B1 (en) Remote authentication and transaction signatures
US9467293B1 (en) Generating authentication codes associated with devices
CN100492966C (zh) 基于智能卡和动态密码的身份认证系统
US11063749B2 (en) Cryptographic key management based on identity information
CN101789864B (zh) 一种网上银行后台身份认证方法、装置及系统
CA2417770A1 (en) Trusted authentication digital signature (tads) system
CN102255917A (zh) 动态令牌的密钥更新及同步方法、系统及装置
CN101651675A (zh) 提高网络交易安全性的方法和系统
CA2809144A1 (en) Encryption device and method
WO2007030043A1 (en) Method and arrangement for user friendly device authentication
CN101800645B (zh) 一种身份认证方法、装置及系统
CN201717873U (zh) 一种身份认证装置及系统
US8756666B1 (en) Generating authentication codes
US9398005B1 (en) Managing seed provisioning
CN111414653A (zh) 一种基于rsa非对称加密算法的电脑开机启动方法
CN201717874U (zh) 一种网上银行后台身份认证装置及系统
WO2021229584A1 (en) System and method to support message authentication

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1132859

Country of ref document: HK

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20090624

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1132859

Country of ref document: HK