CN102843236A - 一种动态口令的生成及认证方法与系统 - Google Patents
一种动态口令的生成及认证方法与系统 Download PDFInfo
- Publication number
- CN102843236A CN102843236A CN2012103373086A CN201210337308A CN102843236A CN 102843236 A CN102843236 A CN 102843236A CN 2012103373086 A CN2012103373086 A CN 2012103373086A CN 201210337308 A CN201210337308 A CN 201210337308A CN 102843236 A CN102843236 A CN 102843236A
- Authority
- CN
- China
- Prior art keywords
- data
- dynamic
- dynamic password
- factor
- password
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0846—Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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/3228—One-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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0853—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/108—Network architectures or network communication protocols for network security for controlling access to devices or network resources when the policy decisions are valid for a limited amount of time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/61—Time-dependent
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Storage Device Security (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明公布了一种动态口令生成及认证的方法及系统,涉及身份认证领域,包括:令牌接收到生成动态口令命令,根据第一计时器生成第一动态因子;根据第一偏移指针从第一数据组中获取当前数据,并根据第一动态因子、当前数据生成第一动态口令;服务器接收到用户输入的第二动态口令,根据第二计时器得到第二动态因子;根据第二动态因子及认证窗口值,得到认证窗口;根据所述认证窗口中的动态因子及第二数据组中的各数据,计算生成一组动态口令,验证所述一组动态口令中是否存在与所述第二动态口令一致的动态口令。通过上述方案,解决了时间型令牌不能在短时间内多次生成的问题,又避免了事件型令牌不断生成动态口令与服务器产生失步的情况。
Description
技术领域
本发明涉及身份认证领域,特别涉及一种动态口令的生成及认证方法与系统
背景技术
动态口令在身份认证领域的应用日益广泛,现有技术中,动态口令分为时间型动态口令、事件型动态口令及挑战应答型动态口令。普通时间型动态口令或者带时间参与计算的挑战应答型动态口令,在一个动态口令变化周期仅能产生一个动态口令,出于安全性考虑,如果口令被认证服务器认证通过后,就不能重复使用了。如果想进行认证,必须等待一段时间,等到达下一个时间周期开始,生成下一个不同的动态口令才能进行,不能满足在短时间内进行多次身份认证的场合的需要;
普通事件型的动态口令,存在动态令牌不断产生动态口令而不与服务器做认证时,令牌与服务器失步的情况,且普通事件型的动态口令引入的次数为可预测动态因子,存在一定的安全隐患。
发明内容
为解决现有技术中存在的问题,本发明提供了一种动态口令的生成及认证方法及系统,引入一组数据,参与时间型动态口令的产生,且在一个时间周期内该组数据中的各个数据可以循环参与动态口令的生成。
根据本发明的一方面,提供了一种动态口令生成及认证的方法,包括:
S1:令牌接收到生成动态口令命令,根据所述令牌内部的第一计时器所计时间生成第一动态因子;
所述令牌检查到预设条件时,对所述第一偏移指针进行初始化;
S2:所述令牌判断第一偏移指针是否为无效状态,是则报错,否则继续;
S3:所述令牌根据所述第一偏移指针从第一数据组中获取当前数据,调用预设算法,根据所述第一动态因子、所述当前数据,计算得到第一动态口令,并判断所述当前数据是否为所述第一组数据组中的最后一个数据,是则将所述第一偏移指针设为无效状态,否则将所述第一偏移指针指向当前数据的下一个数据;
S4:服务器接收到用户输入的第二动态口令,根据服务器内部的第二计时器所计时间得到第二动态因子;
S5:根据所述第二动态因子及认证窗口值,生成一组动态因子,得到认证窗口;
S6:调用所述预设算法,根据所述认证窗口中的动态因子及服务器内部存储的第二数据组中的各数据,计算生成一组动态口令,验证所述一组动态口令中是否存在与所述第二动态口令一致的动态口令,是则认证通过,否则认证失败。
具体地,所述第一数据组与所述第二数据组一致,包含预设个数的有顺序且各不相同的数据;
所述当前数据为所述第一偏移指针指向的数据。
进一步地,所述步骤S1中根据所述令牌内部的第一计时器所计时间生成第一动态因子具体为:用所述第一计时器所计秒数除以第一预设时长值,对得到的商取整得到所述第一动态因子;
所述步骤S4中,根据服务器内部的第二计时器所计时间得到第二动态因子具体为:用所述第二计时器所计秒数除以所述第一预设时长值,对得到的商取整得到所述第二动态因子。
其中,所述令牌检查到预设条件时,对所述第一偏移指针进行初始化具体为:所述令牌实时监测所述第一计时器所计时间,每隔所述第一预设时长,对所述第一偏移指针进行初始化;
所述对所述第一偏移指针进行初始化具体为:将所述第一偏移指针指向所述第一数据组中的第一个数据。
或者,所述令牌检查到预设条件时,对所述第一偏移指针进行初始化具体为:所述令牌生成第一动态因子之后,判断所述第一动态因子与第一缓存区中的数据是否一致,若不一致则对所述第一偏移指针进行初始化;
所述令牌对所述第一偏移指针进行初始化之后,用所述第一动态因子更新所述第一缓存区中的数据;
所述对所述第一偏移指针进行初始化具体为:将所述第一偏移指针指向所述第一数据组中的第一个数据。
进一步地,所述步骤S6中计算生成一组动态口令具体为:调用所述预设算法,对所述认证窗口中的每个动态因子与第二数据中的各个数据的组合得到的数据分别进行计算,得到所述一组动态口令。
或者,所述步骤S6具体包括:
步骤a:按预设顺序调用所述认证窗口中的第一个动态因子;
步骤b:依次将所述第二数据组中的各个数据与调用的动态因子组合,调用预设算法对组合得到的各个数据进行计算得到所述一组动态口令;
步骤c:验证所述一组动态口令中是否存在与所述第二动态口令一致的动态口令,是则认证通过,否则执行步骤d;
步骤d:判断所述调用的动态因子是否为所述认证窗口中的最后一个动态因子,是则认证失败,否则调用下一个动态因子,返回步骤b。
进一步地,所述步骤S6中,当验证所述一组动态口令中存在与所述第二动态口令一致的动态口令时,还包括:
S7:所述服务器调用第二缓存区中的数据,将与所述第二动态口令一致的动态口令对应的动态因子与所述第二缓存区中的数据进行比较,若大于,则认证通过,执行步骤S8;若小于,则认证失败;若等于则执行S9;
S8:用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并设置第二偏移指针指向第二数据组中与所述第二动态口令一致的动态口令对应的数据;
S9:判断与所述第二动态口令一致的动态口令对应的数据在第二数据组中的顺序是否在所述第二偏移指针指向的数据之后,是则认证通过,设置第二偏移指针指向第二数据组中与所述第二动态口令一致的动态口令对应的数据,否则认证失败。
优选地,所述步骤S1之后还包括令牌提示用户输交易账号、交易金额、挑战码的步骤;
所述步骤S4之前还包括服务器生成挑战码的步骤;
所述步骤S3中根据所述第一动态因子、所述当前数据,计算得到第一动态口令具体为:
将所述第一动态因子、所述当前数据与令牌密钥、用户输入令牌的账号、金额、挑战码进行组合,并用所述预设算法对组合得到的数据进行计算得到所述第一动态口令;
所述步骤S6中调用所述预设算法,根据所述认证窗口中的动态因子及服务器内部存储的第二数据组中的各数据,计算生成一组动态口令具体为:
依次将所述认证窗口中的各个动态因子与第二数据组中的各数据、令牌密钥、服务器接收到的用户输入的账号、金额、服务器生成的挑战码分别进行组合,并用所述预设算法对组合得到的各数据分别进行计算得到所述一组动态口令。
或者,所述步骤S6中生成一组动态口令具体包括:
将第二缓存区中的数据与所述认证窗口中的动态因子进行比对,从所述认证窗口中获取等于或大于所述第二缓存区中的数据的动态因子;
依次将大于所述第二缓存区中的数据的各动态因子与所述第二数据组中的各个数据分别进行组合,调用所述预设算法对组合得到的数据分别进行计算,得到第一部分动态口令;将等于所述第二缓存区中的数据的动态因子分别与所述第二数据组中第二偏移指针指向的数据之后的各个数据分别进行组合,调用所述预设算法,对组合得到各数据分别进行计算得到第二部分动态口令;
所述第一部分动态口令与所述第二部分动态口令组成所述一组动态口令。
进一步地,所述步骤S6中,当验证所述一组动态口令中存在与所述第二动态口令一致的动态口令时,还包括:
用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并将所述第二偏移指针指向与所述第二动态口令一致的动态口令对应的第二数据组中的数据。
根据本发明的另外一个方面,提供了一种动态口令生成及认证的系统,包括:令牌和服务器;
所述令牌包括:
第一接收模块,用于接收生成动态口令命令;
第一生成模块,用于当所述第一接收模块接收到生成动态口令命令时,根据令牌内部的第一计时器所计时间生成第一动态因子;
操作模块,用于每隔第一预设时长,对所述第一偏移指针初始化一次;或者当判断所述第一动态因子与第一缓存区中的数据不一致时,对所述第一偏移指针进行初始化,并用所述第一动态因子更新第一缓存区中的数据;
第一计算模块,用于根据所述第一偏移指针从第一数据组中获取当前数据,调用预设算法,根据所述第一动态因子及所述当前数据,计算得到第一动态口令;
第一判断模块,用于在所述第一计算模块计算得到第一动态口令后,判断当前数据是否为第一数据组中的最后一个数据;
设置模块,用于当所述当前数据不为最后一个数据时,将所述第一偏移指针指向所述第一数据组中当前数据的下一个数据;当所述当前数据为最后一个数据时,将所述第一偏移指针设为无效状态,等待初始化;
所述服务器包括:
第二接收模块,用于接收用户通过主机输入的第二动态口令;
第二生成模块,用于根据所述服务器内部的第二计时器所计时间得到第二动态因子;并根据所述第二动态因子及认证窗口值,生成一组动态因子,得到认证窗口;
第二计算模块,用于调用所述预设算法,根据所述认证窗口中的动态因子及服务器内部存储的第二数据组中的各数据,计算生成一组动态口令;
验证模块:用于验证所述一组动态口令中是否存在与所述第二动态口令一致的动态口令。
进一步地,所述第二计算模块包括:
第一调用单元,用于调用所述预设算法及所述认证窗口中的第一动态因子;
第一组合单元,用于依次将所述认证窗口中的各个动态因子与所述第二数据组中的各个数据分别进行组合;
第一处理单元,用于用所述预设算法对所述第一组合单元组合得到的各数据分别进行计算,得到所述一组动态口令。
或者,所述第二计算模块包括:
第二调用单元,用于调用所述预设算法及依次调用所述认证窗口中的动态因子;
第二组合单元,用于将所述第二数据组中的各个数据分别与调用的动态因子组合;
第二处理单元,用于用所述预设算法对所述组合单元组合得到的数据进行计算得到所述一组动态口令;
所述验证模块包括:
第一验证单元,用于验证所述第二处理单元计算得到的所述一组动态口令中,是否存在与所述第二动态口令一致的动态口令;
第一判断单元,用于当所述第一验证单元验证所述一组动态口令中不存在与所述第二动态口令一致的动态口令时,判断调用的动态因子是否为所述认证窗口中的最后一个动态因子,当判断当前动态因子不为最后一个动态因子时,调用下一个动态因子,所述第二组合单元工作。
进一步地,所述系统还包括:
比较模块,用于当所述验证模块验证所述一组动态口令中有与所述第二动态口令一致的动态口令时,将与所述第二动态口令一致的动态口令对应的动态因子与第二缓存区中的数据进行比较,若大于则认证通过,第一更新模块工作,若小于则认证失败,若等于则第二判断模块工作;
所述第一更新模块,用于用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并设置第二偏移指针指向所述第二数据组中与所述第二动态口令一致的动态口令对应的数据;
所述第二判断模块,用于判断在所述第二数据组中与所述第二动态口令一致的动态口令对应的数据在第二数据组中的顺序是否在所述第二偏移指针指向的数据之后,是则认证通过,设置第二偏移指针指向第二数据组中与所述第二动态口令一致的动态口令对应的数据,否则认证失败。
或者,所述第二计算模块包括:
查找单元,用于从所述认证窗口中查找到等于或大于第二缓存区中的数据的动态因子;
第三处理单元,用于将大于所述第二缓存区中的数据的动态因子依次分别与所述第二数据组中的各个数据进行组合,调用所述预设算法对组合得到的数据分别进行计算,得到第一部分动态口令;将等于所述第二缓存区中的数据的动态因子分别与所述第二数据组中第二偏移指针指向的数据之后的各个数据进行组合,调用所述预设算法,对组合得到各数据分别进行计算得到第二部分动态口令;将所述第一部分动态口令与所述第二部分动态口令组成所述一组动态口令。
进一步地,所述系统还包括:
第二更新模块,用于当所述验证模块验证所述一组动态口令中存在与所述第二动态口令一致的动态口令时,用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并将所述第二偏移指针指向与所述第二动态口令一致的动态口令对应的第二数据组中的数据。
所述第一接收模块还用于接收用户输入令牌的数据;
所述第二接收模块还用于接收用户通过主机输入到服务器的数据;
所述第二生成模块还用于生成挑战码。
进一步地,所述第一计算模块包括:
第三组合单元,用于将所述第一动态因子、所述当前数据、令牌密钥与用户输入令牌的数据进行组合;
第四处理单元,用于调用所述预设算法对所述第三组合单元组合得到的数据进行计算得到所述第一动态口令。
通过本发明提供的方案,在时间型动态令牌及事件型动态令牌的基础上,提高了动态口令认证的安全性,且满足了短时间内需要进行多次身份认证的场合的需要,为身份认证过程中认证模式提供了多种选择。
附图说明
图1为本发明实施例1提供的一种动态口令的生成及认证方法流程图;
图2为本发明实施例1提供的一种动态口令的生成及认证方法的另一种实现过程流程图;
图3为本发明实施例1提供的一种动态口令的生成及认证方法的再一种实现过程流程图;
图4为本发明实施例2提供的一种动态口令的生成及认证系统方框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
本发明实施例1提供了一种动态口令的生成及认证方法,具体包括:
步骤101:令牌接收到触发生成动态口令的命令;
优选地,在本实施例中,所述生成动态口令的命令可以为按键触发信息,该步骤之后还可以包括令牌提示用户输入到令牌的挑战码、交易账号、交易金额等数据。
在本实施例中,所述令牌可以有多种动态口令类型选择,例如有不同的按键以供用户选择生成登录账户、修改账户信息、转账、交易等类型的动态口令,并按照与服务器事先约定,提示用户输入相应的数据。
步骤102:令牌根据内部第一计时器所计时间及第一预设时长,生成第一动态因子;
优选地,在本实施例中,所述第一动态因子为所述第一计时器所计时间包含的完整的所述第一预设时长的个数,具体地,在本实施例中,生成动态因子具体为:用所述计时器所计时间值除以所述第一预设时长值,对得到的商取整即得到所述第一动态因子。
步骤103:判断所述第一动态因子是否与第一缓存区中的数据一致,是则执行步骤104,否则初始化第一偏移指针,并用所述第一动态因子更新所述第一缓存区中的数据,执行步骤104;
优选地,在本实施例中,所述第一偏移指针指向第一数据组中的某个数据,当所述第一偏移指针被初始化后,所述第一偏移指针指向所述第一数据组中的第一个数据。
所述第一缓存区中存储的数据可以为令牌上一次生成动态口令时所生成的动态因子,还可以为上一次初始化第一偏移指针时对应的动态因子。
在本实施例中,所述第一偏移指针还可以根据所述计时器所计时间进行初始化,根据所述计时器,每隔所述第一预设时长将所述第一偏移指针初始化一次,相应地,删除步骤103,步骤102之后直接执行步骤104。
步骤104:根据第一偏移指针从所述第一数据组中获取当前数据,并调用预设算法对当前数据与第一动态因子进行计算,生成第一动态口令,所述第一偏移指针指向所述第一数据组中当前数据的下一数据;
优选地,在本实施例中,当步骤101之前还包括令牌提示用户输入挑战码、交易账号、交易金额等数据时,用户输入到令牌的数据、当前数据、所述第一动态因子、令牌密钥均参与生成动态口令。生成第一动态口令的具体为:调用预设的算法如SHA1、SM3等,对上述数据组合得到的数据进行计算,从计算结果中提取预设位数的数据得到所述第一动态口令。
特别地,在本实施例中,本步骤中所述第一偏移指针指向当前数据的下一个数据之前还包括:验证当前数据是否为第二数据组中的最后一个数据,是则将所述第一偏移指针设为无效状态,等待初始化,否则再将所述第一偏移指针执行当前数据的下一数据。相应地,该步骤之前还包括令牌判断所述第一偏移指针是否为无效状态的步骤,若为无效状态则报错,若不为无效状态再执行步骤104。
所述第一数据组中的数据各不相同,顺序、个数固定,可以为一组不规则的数据,也可以为一组规则变化的数据,如递增、递减的数据等。
步骤105:服务器接收到用户输入的第二动态口令,根据服务器内部的第二计时器所计时间及第一预设时长生成第二动态因子;
优选地,在本实施例中,服务器通过主机接收到用户输入的第二动态口令。
生成第二动态因子具体为:第二计时器所计时间除以所述预设时长得到的商取整后加服务器记录的漂移值得到。
步骤105之前还包括,服务器接收到用户发送的操作请求,通过主机提示用户输入动态口令的步骤,特别地,当事先约定需要挑战码参与生成动态口令时,该步骤前还包括服务器生成挑战码的步骤。
步骤106:根据所述第二动态因子及认证窗口值,生成一组动态因子,得到认证窗口;
优选地,在本实施例中,以所述认证窗口值为2为例,则生成的一组动态因子包括:所述第二动态因子的值减1得到的第三动态因子、第二动态因子、所述第二动态因子的值加1得到的第四动态因子。
步骤107:服务器调用认证窗口中的第二动态因子,根据所述第二动态因子及服务器内部的第二数据组中的各数据,生成第一组动态口令;
优选地,在本实施例中,所述第二数据组中的数据、数据个数及数据顺序与所述第一数据组相同。服务器生成第一组动态口令具体为:调用预设的算法,将第二动态因子与第二数据组中的各个数据分别进行组合,对组合得到的各数据分别进行计算得到第一组动态口令;生成每个动态口令的算法及过程与步骤104中生成方式一致。特别地,当所述令牌与所述服务器事先约定用户输入的信息或挑战码参与生成动态口令时,则该步骤中,与令牌生成第一动态口令的实现过程相同,用户通过主机输入到服务器中的数据及服务器生成的挑战码中相应的数据参与生成第一组动态口令。
本实施例提供一种优选地方式以清楚说明该生成动态口令的过程,以所述第二数据组中各数据依次为:0x 00 00 00 00~ 00 00 00 09十个数据、第二动态因子为0x 00 00 00 00 01 56 5601、挑战码为0x 31 32 33 34 35 36 37 38-39 30、令牌密钥为0x 80 d0 3f 19 3f e5 0c 2d-de 8a 84 46 bf a2 88 dc 35 92 65 1c,所述预设算法SM3为例,具体过程为:将所述密钥与所述第二动态因子顺序拼接、 再分别与第二数据组中的10个数据分别进行顺序拼接得到10个拼接数据、分别在10个拼接数据后再拼接挑战码得到10个组合数据,用所述预设算法对上述10个组合数据分别进行计算,得到10份摘要,分别从各份摘要中截取低位端4个字节数据,均转化为十进制数,分别从10个十进制数中截取低位8位数据得到所述第一组动态口令。
步骤108:服务器验证第一组动态口令中是否存在与第二动态口令一致的动态口令,是则执行步骤111,否则执行步骤109;
步骤109:所述服务器调用认证窗口中的第二动态因子的下一个动态因子,并根据调用的动态因子及第二数据组,生成第二组动态口令,判断所述第二组动态口令中是否有与第二动态口令一致的动态口令,是则执行步骤111,否则执行步骤110;
本实施例中,生成第二组动态口令的过程参见步骤107。
步骤110:所述服务器调用认证窗口中当前调用的动态因子的下一个动态因子,根据当前调用的动态因子及所述第二数据组生成第三组动态口令,判断所述第三组动态口令中是否有与所述第二动态口令一致的动态口令,是则执行步骤111;否则认证失败,报错;
生成第三组动态口令的过程参见步骤107。
优选地,在本实施例中,所述认证窗口值为2, 从而认证窗口中有三个动态因子,调用动态因子的先后顺序为:先调用第二动态因子、再第二动态因子加减1得到的动态因子。所述认证窗口值还可以为其他值,则相应地,所述认证窗口中还包括其他动态因子,在该步骤中第三组动态口令中没有与所述第二动态口令一致的动态口令时,逐次调用所述其他动态因子来生成动态口令并认证,调用其余动态因子的顺序按与第二动态因子差值的绝对值由小到大的顺序。
步骤111:用与所述第二动态口令一致的动态口令对应的动态因子与服务器中第二缓存区中的数据比较;
若对应的动态因子小于第二缓存区中的数据,则认证失败,报错;
若等于,则执行步骤112;
若大于,则认证通过,用所述对应的动态因子更新第二缓存区中的数据,并将第二偏移指针初始化。
优选地,在本实施例中,所述第二偏移指针初始化后指向第二数据组中的第一个数据。
步骤112:判断与所述第二动态口令一致的动态口令对应的第二数据组中的数据在第二数据组中的顺序是否在第二偏移指针指向的数据之后,是则认证通过,用所述对应的动态因子的值更新第二缓存区中的数据,并将第二偏移指针指向所述对应的第二数据组中的数据,否则认证失败,报错。
优选地,在本实施例中,所述第二偏移指针指向的数据为上一次认证通过的动态口令对应的第二数据组中的数据。
参见图2,步骤107——步骤110可以替换为:
步骤207:根据第二数据组及认证窗口中的动态因子,生成第四组动态口令;
优选地,在本实施例中,根据所述认证窗口中的各个动态因子、第二数据组中的各个数据得到上述第四组动态口令组,具体地,所述第四组动态口令包括第一组动态口令、第二组动态口令及第三组动态口令的所有动态口令,生成动态口令的方式参见步骤107。
具体地,在本实施例中,所述认证窗口值为2,所述第二数据组中有10个数据,则相应地,将第二动态因子上下浮动1得到三个不同的动态因子,分别根据三个动态因子与第二数据组中的各个数据生成的第四组动态口令,得到的所述第四组动态口令组中包含30个动态口令。
步骤208:判断上述第四组动态口令中是否存在与所述第二动态口令一致的动态口令,是则继续执行步骤111,否则认证失败,报错。
参见图3,优选地,在本实施例中,步骤107——112还可以替换为:
步骤307:判断所述认证窗口中是否存在与所述第二缓存区中的数据一致的动态因子,
若否,则执行步骤308;
若是,则执行步骤309;
步骤308:根据第二数据组及认证窗口中的各个动态因子,生成第四组动态口令,执行步骤310;
优选地,该步骤具体参见步骤207。
步骤309:获取所述认证窗口中大于或等于第二缓存区中的数据的动态因子,根据获取到的各动态因子、第二偏移指针及第二数据组中的各数据,生成第五组动态口令,执行步骤310;
具体地,在本实施例中,所述认证窗口的值为2,若所述认证窗口中的第二动态因子与所述第二缓存区中的数据一致,则该步骤具体为:对第二动态因子与第二数据组中各个数据分别进行计算得到第一部分动态口令;根据第二偏移指针指向的数据,取该数据之后的各个数据分别与获取到的大于第二动态因子的各动态因子生成第二部分动态口令,所述第一部分动态口令与第二部分动态口令组成所述第五组动态口令。
步骤310:判断生成的一组动态口令中是否存在与所述第二动态口令一致的动态口令,是则认证通过,用与所述第二动态口令一致的动态口令对应的动态因子更新第二缓存区中的数据,并将第二偏移指针指向第二数据组中与第二动态口令一致的动态口令对应的数据,否则认证失败,报错。
实施例2
参见图4,本发明实施例2提供了一种动态口令的生成及认证系统,包括令牌和服务器,其中令牌包括:
第一接收模块401,用于接收生成动态口令命令;
第一生成模块402,用于当所述第一接收模块401接收到生成动态口令命令时,根据令牌内部的第一计时器所计时间生成第一动态因子;
操作模块403,用于每隔第一预设时长,对所述第一偏移指针初始化一次;或者当判断所述第一动态因子与第一缓存区中的数据不一致时,对所述第一偏移指针进行初始化,并用所述第一动态因子更新第一缓存区中的数据;
第一计算模块404,用于根据第一偏移指针从第一数据组中获取当前数据,调用预设算法,根据所述第一动态因子及所述当前数据,计算得到第一动态口令;
第一判断模块405,用于在所述第一计算模块404计算得到第一动态口令后,判断当前数据是否为第一数据组中的最后一个数据;
设置模块406,用于当所述当前数据不为最后一个数据时,将所述第一偏移指针指向第一数据组中当前数据的下一个数据;当所述当前数据为最后一个数据时,将所述第一偏移指针设为无效状态,等待初始化;
其中,服务器包括:
第二接收模块407,用于接收用户通过主机输入的第二动态口令;
第二生成模块408,用于根据服务器内部的第二计时器所计时间得到第二动态因子;并根据所述第二动态因子及认证窗口值,生成一组动态因子,得到认证窗口;
第二计算模块409,用于调用所述预设算法,根据所述认证窗口中的动态因子及服务器内部存储的第二数据组中的各数据,计算生成一组动态口令;
验证模块410,用于验证所述一组动态口令中是否存在与所述第二动态口令一致的动态口令。
本实施例系统中的服务器还包括:
比较模块411,用于当所述验证模块410验证所述一组动态口令中有与所述第二动态口令一致的动态口令时,将与所述第二动态口令一致的动态口令对应的动态因子与第二缓存区中的数据进行比较,若大于则认证通过,第一更新模块工作412,若小于则认证失败,若等于则第二判断模块413工作;
所述第一更新模块412,用于用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并设置第二偏移指针指向所述第二数据组中与所述第二动态口令一致的动态口令对应的数据;
所述第二判断模块413,用于判断与所述第二动态口令一致的动态口令对应的数据在第二数据组中的顺序是否在所述第二偏移指针指向的数据之后,是则认证通过,设置第二偏移指针指向第二数据组中与所述第二动态口令一致的动态口令对应的数据,否则认证失败。
所述第一接收模块401还用于接收用户输入的令牌数据;
所述第二接收模块407还用于接收用户通过主机输入到服务器的数据;
所述第二生成模块408还用于生成挑战码。
所述第一计算模块404包括:
第三组合单元4041,用于将所述第一动态因子、所述当前数据、令牌密钥与用户输入令牌的数据进行组合;
第四处理单元4042,用于调用所述预设算法对所述第三组合单元4041组合得到的数据进行计算得到所述第一动态口令。
所述第二计算模块409包括:
第一调用单元4091,用于调用所述预设算法及所述认证窗口中的第一动态因子;
第一组合单元4092,用于将所述第二数据组中的各个数据依次分别与所述认证窗口中的各个动态因子进行组合;
第一处理单元4093,用于用所述预设算法对所述第一组合单元4092组合得到的各数据分别进行计算,得到所述一组动态口令。
优选地,在本实施例中所述第二计算模块409还可以替换为包括:
第二调用单元,用于调用所述预设算法,用于依次调用所述认证窗口中的动态因子;
第二组合单元,用于将所述第二数据组中的各个数据分别与调用的动态因子组合;
第二处理单元,用于用所述预设算法对所述第一组合单元组合得到的数据进行计算得到所述一组动态口令;
相应地,所述验证模块410包括:
第一验证单元,用于验证所述第二处理单元计算得到的所述一组动态口令中是否存在与所述第二动态口令一致的动态口令;
第一判断单元,用于当所述第一验证单元4101验证所述一组动态口令中不存在与所述第二动态口令一致的动态口令时,判断当前调用的动态因子是否为所述认证窗口中的最后一个动态因子,当判断当前动态因子不为最后一个动态因子时,调用下一个动态因子,所述第二组合单元工作。
或者,所述第二计算模块409包括:
查找单元,用于从所述认证窗口中查找到等于或大于第二缓存区中的数据的动态因子;
第三处理单元,用于将大于所述第二缓存区中的数据的动态因子依次分别与所述第二数据组中的各个数据进行组合,调用所述预设算法对组合得到的数据分别进行计算,得到第一部分动态口令;将等于所述第二缓存区中的数据的动态因子分别与所述第二数据组中第二偏移指针指向的数据之后的各个数据进行组合,调用所述预设算法,对组合得到各数据分别进行计算得到第二部分动态口令;将所述第一部分动态口令与所述第二部分动态口令组成所述一组动态口令。
相应地,所述系统还包括:
第二更新模块,用于当所述验证模块410验证所述一组动态口令中存在与所述第二动态口令一致的动态口令时,用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并将所述第二偏移指针指向与所述第二动态口令一致的动态口令对应的第二数据组中的数据。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (19)
1.一种动态口令的生成及认证方法,其特征在于, 包括:
S1:令牌接收到生成动态口令命令,根据所述令牌内部的第一计时器所计时间生成第一动态因子;
所述令牌检查到预设条件时,对所述第一偏移指针进行初始化;
S2:所述令牌判断第一偏移指针是否为无效状态,是则报错,否则继续;
S3:所述令牌根据所述第一偏移指针从第一数据组中获取当前数据,调用预设算法,根据所述第一动态因子、所述当前数据,计算得到第一动态口令,并判断所述当前数据是否为所述第一组数据组中的最后一个数据,是则将所述第一偏移指针设为无效状态,否则将所述第一偏移指针指向当前数据的下一个数据;
S4:服务器接收到用户输入的第二动态口令,根据服务器内部的第二计时器所计时间得到第二动态因子;
S5:根据所述第二动态因子及认证窗口值,生成一组动态因子,得到认证窗口;
S6:调用所述预设算法,根据所述认证窗口中的动态因子及服务器内部存储的第二数据组中的各数据,计算生成一组动态口令,验证所述一组动态口令中是否存在与所述第二动态口令一致的动态口令,是则认证通过,否则认证失败。
2.如权利要求1所述的方法,其特征在于,所述第一数据组与所述第二数据组一致,包含预设个数的有顺序且各不相同的数据;
所述当前数据为所述第一偏移指针指向的数据。
3.如权利要求2所述的方法,其特征在于,所述步骤S1中根据所述令牌内部的第一计时器所计时间生成第一动态因子具体为:用所述第一计时器所计秒数除以第一预设时长值,对得到的商取整得到所述第一动态因子;
所述步骤S4中,根据服务器内部的第二计时器所计时间得到第二动态因子具体为:用所述第二计时器所计秒数除以所述第一预设时长值,对得到的商取整得到所述第二动态因子。
4.如权利要求3所述的方法,其特征在于,所述令牌检查到预设条件时,对所述第一偏移指针进行初始化具体为:所述令牌实时监测所述第一计时器所计时间,每隔所述第一预设时长,对所述第一偏移指针进行初始化;
所述对所述第一偏移指针进行初始化具体为:将所述第一偏移指针指向所述第一数据组中的第一个数据。
5.如权利要求3所述的方法,其特征在于,所述令牌检查到预设条件时,对所述第一偏移指针进行初始化具体为:所述令牌生成第一动态因子之后,判断所述第一动态因子与第一缓存区中的数据是否一致,若不一致则对所述第一偏移指针进行初始化;
所述令牌对所述第一偏移指针进行初始化之后,用所述第一动态因子更新所述第一缓存区中的数据;
所述对所述第一偏移指针进行初始化具体为:将所述第一偏移指针指向所述第一数据组中的第一个数据。
6.如权利要求2所述的方法,其特征在于,所述步骤S6中计算生成一组动态口令具体为:调用所述预设算法,对所述认证窗口中的每个动态因子与第二数据中的各个数据的组合得到的数据分别进行计算,得到所述一组动态口令。
7.如权利要求2所述的方法,其特征在于,所述步骤S6具体包括:
步骤a:按预设顺序调用所述认证窗口中的第一个动态因子;
步骤b:依次将所述第二数据组中的各个数据与调用的动态因子组合,调用预设算法对组合得到的各个数据进行计算得到所述一组动态口令;
步骤c:验证所述一组动态口令中是否存在与所述第二动态口令一致的动态口令,是则认证通过,否则执行步骤d;
步骤d:判断所述调用的动态因子是否为所述认证窗口中的最后一个动态因子,是则认证失败,否则调用下一个动态因子,返回步骤b。
8.如权利要求6或7所述的方法,其特征在于,所述步骤S6中,当验证所述一组动态口令中存在与所述第二动态口令一致的动态口令时,还包括:
S7:所述服务器调用第二缓存区中的数据,将与所述第二动态口令一致的动态口令对应的动态因子与所述第二缓存区中的数据进行比较,若大于,则认证通过,执行步骤S8;若小于,则认证失败;若等于则执行S9;
S8:用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并设置第二偏移指针指向第二数据组中与所述第二动态口令一致的动态口令对应的数据;
S9:判断与所述第二动态口令一致的动态口令对应的数据在第二数据组中的顺序是否在所述第二偏移指针指向的数据之后,是则认证通过,设置第二偏移指针指向第二数据组中与所述第二动态口令一致的动态口令对应的数据,否则认证失败。
9.如权利要求1所述的方法,其特征在于,所述步骤S1之后还包括令牌提示用户输交易账号、交易金额、挑战码的步骤;
所述步骤S4之前还包括服务器生成挑战码的步骤;
所述步骤S3中根据所述第一动态因子、所述当前数据,计算得到第一动态口令具体为:
将所述第一动态因子、所述当前数据与令牌密钥、用户输入令牌的账号、金额、挑战码进行组合,并用所述预设算法对组合得到的数据进行计算得到所述第一动态口令;
所述步骤S6中调用所述预设算法,根据所述认证窗口中的动态因子及服务器内部存储的第二数据组中的各数据,计算生成一组动态口令具体为:
依次将所述认证窗口中的各个动态因子与第二数据组中的各数据、令牌密钥、服务器接收到的用户输入的账号、金额、服务器生成的挑战码分别进行组合,并用所述预设算法对组合得到的各数据分别进行计算得到所述一组动态口令。
10.如权利要求1所述的方法,其特征在于,所述步骤S6中生成一组动态口令具体包括:
将第二缓存区中的数据与所述认证窗口中的动态因子进行比对,从所述认证窗口中获取等于或大于所述第二缓存区中的数据的动态因子;
依次将大于所述第二缓存区中的数据的各动态因子与所述第二数据组中的各个数据分别进行组合,调用所述预设算法对组合得到的数据分别进行计算,得到第一部分动态口令;将等于所述第二缓存区中的数据的动态因子分别与所述第二数据组中第二偏移指针指向的数据之后的各个数据分别进行组合,调用所述预设算法,对组合得到各数据分别进行计算得到第二部分动态口令;
所述第一部分动态口令与所述第二部分动态口令组成所述一组动态口令。
11.如权利要求10所述的方法,其特征在于,所述步骤S6中,当验证所述一组动态口令中存在与所述第二动态口令一致的动态口令时,还包括:
用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并将所述第二偏移指针指向与所述第二动态口令一致的动态口令对应的第二数据组中的数据。
12.一种动态口令的生成及认证系统,其特征在于,包括令牌和服务器,所述令牌包括:
第一接收模块,用于接收生成动态口令命令;
第一生成模块,用于当所述第一接收模块接收到生成动态口令命令时,根据令牌内部的第一计时器所计时间生成第一动态因子;
操作模块,用于每隔第一预设时长,对所述第一偏移指针初始化一次;或者当判断所述第一动态因子与第一缓存区中的数据不一致时,对所述第一偏移指针进行初始化,并用所述第一动态因子更新第一缓存区中的数据;
第一计算模块,用于根据所述第一偏移指针从第一数据组中获取当前数据,调用预设算法,根据所述第一动态因子及所述当前数据,计算得到第一动态口令;
第一判断模块,用于在所述第一计算模块计算得到第一动态口令后,判断当前数据是否为第一数据组中的最后一个数据;
设置模块,用于当所述当前数据不为最后一个数据时,将所述第一偏移指针指向所述第一数据组中当前数据的下一个数据;当所述当前数据为最后一个数据时,将所述第一偏移指针设为无效状态,等待初始化;
所述服务器包括:
第二接收模块,用于接收用户通过主机输入的第二动态口令;
第二生成模块,用于根据所述服务器内部的第二计时器所计时间得到第二动态因子;并根据所述第二动态因子及认证窗口值,生成一组动态因子,得到认证窗口;
第二计算模块,用于调用所述预设算法,根据所述认证窗口中的动态因子及服务器内部存储的第二数据组中的各数据,计算生成一组动态口令;
验证模块:用于验证所述一组动态口令中是否存在与所述第二动态口令一致的动态口令。
13.如权利要求12所述的系统,其特征在于,所述第二计算模块包括:
第一调用单元,用于调用所述预设算法及所述认证窗口中的第一动态因子;
第一组合单元,用于依次将所述认证窗口中的各个动态因子与所述第二数据组中的各个数据分别进行组合;
第一处理单元,用于用所述预设算法对所述第一组合单元组合得到的各数据分别进行计算,得到所述一组动态口令。
14.如权利要求12所述的系统,其特征在于,所述第二计算模块包括:
第二调用单元,用于调用所述预设算法及依次调用所述认证窗口中的动态因子;
第二组合单元,用于将所述第二数据组中的各个数据分别与调用的动态因子组合;
第二处理单元,用于用所述预设算法对所述组合单元组合得到的数据进行计算得到所述一组动态口令;
所述验证模块包括:
第一验证单元,用于验证所述第二处理单元计算得到的所述一组动态口令中,是否存在与所述第二动态口令一致的动态口令;
第一判断单元,用于当所述第一验证单元验证所述一组动态口令中不存在与所述第二动态口令一致的动态口令时,判断调用的动态因子是否为所述认证窗口中的最后一个动态因子,当判断当前动态因子不为最后一个动态因子时,调用下一个动态因子,所述第二组合单元工作。
15.如权利要求13或14所述的系统,其特征在于,所述系统还包括:
比较模块,用于当所述验证模块验证所述一组动态口令中有与所述第二动态口令一致的动态口令时,将与所述第二动态口令一致的动态口令对应的动态因子与第二缓存区中的数据进行比较,若大于则认证通过,第一更新模块工作,若小于则认证失败,若等于则第二判断模块工作;
所述第一更新模块,用于用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并设置第二偏移指针指向所述第二数据组中与所述第二动态口令一致的动态口令对应的数据;
所述第二判断模块,用于判断在所述第二数据组中与所述第二动态口令一致的动态口令对应的数据在第二数据组中的顺序是否在所述第二偏移指针指向的数据之后,是则认证通过,设置第二偏移指针指向第二数据组中与所述第二动态口令一致的动态口令对应的数据,否则认证失败。
16.如权利要求12所述的系统,其特征在于,所述第二计算模块包括:
查找单元,用于从所述认证窗口中查找到等于或大于第二缓存区中的数据的动态因子;
第三处理单元,用于将大于所述第二缓存区中的数据的动态因子依次分别与所述第二数据组中的各个数据进行组合,调用所述预设算法对组合得到的数据分别进行计算,得到第一部分动态口令;将等于所述第二缓存区中的数据的动态因子分别与所述第二数据组中第二偏移指针指向的数据之后的各个数据进行组合,调用所述预设算法,对组合得到各数据分别进行计算得到第二部分动态口令;将所述第一部分动态口令与所述第二部分动态口令组成所述一组动态口令。
17.如权利要求16所述的系统,其特征在于,所述系统还包括:
第二更新模块,用于当所述验证模块验证所述一组动态口令中存在与所述第二动态口令一致的动态口令时,用与所述第二动态口令一致的动态口令对应的动态因子更新所述第二缓存区中的数据,并将所述第二偏移指针指向与所述第二动态口令一致的动态口令对应的第二数据组中的数据。
18.如权利要求12所述的系统,其特征在于,
所述第一接收模块还用于接收用户输入令牌的数据;
所述第二接收模块还用于接收用户通过主机输入到服务器的数据;
所述第二生成模块还用于生成挑战码。
19.如权利要求18所述的系统,其特征在于,所述第一计算模块包括:
第三组合单元,用于将所述第一动态因子、所述当前数据、令牌密钥与用户输入令牌的数据进行组合;
第四处理单元,用于调用所述预设算法对所述第三组合单元组合得到的数据进行计算得到所述第一动态口令。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210337308.6A CN102843236B (zh) | 2012-09-12 | 2012-09-12 | 一种动态口令的生成及认证方法与系统 |
PCT/CN2013/082714 WO2014040501A1 (zh) | 2012-09-12 | 2013-08-30 | 一种动态口令的生成及认证方法与系统 |
US14/423,537 US9350728B2 (en) | 2012-09-12 | 2013-08-30 | Method and system for generating and authorizing dynamic password |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210337308.6A CN102843236B (zh) | 2012-09-12 | 2012-09-12 | 一种动态口令的生成及认证方法与系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102843236A true CN102843236A (zh) | 2012-12-26 |
CN102843236B CN102843236B (zh) | 2014-12-10 |
Family
ID=47370315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210337308.6A Active CN102843236B (zh) | 2012-09-12 | 2012-09-12 | 一种动态口令的生成及认证方法与系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9350728B2 (zh) |
CN (1) | CN102843236B (zh) |
WO (1) | WO2014040501A1 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103354499A (zh) * | 2013-06-21 | 2013-10-16 | 樊晓东 | 一种动态口令的合法性实时验证方法 |
WO2014040501A1 (zh) * | 2012-09-12 | 2014-03-20 | 飞天诚信科技股份有限公司 | 一种动态口令的生成及认证方法与系统 |
CN103905195A (zh) * | 2012-12-28 | 2014-07-02 | 中国电信股份有限公司 | 基于动态口令的用户卡认证方法和系统 |
CN104618112A (zh) * | 2015-01-19 | 2015-05-13 | 北京海泰方圆科技有限公司 | 一种对动态令牌的动态口令校验的方法 |
CN106161029A (zh) * | 2015-04-20 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 动态令牌控制方法和装置 |
CN106952378A (zh) * | 2017-04-11 | 2017-07-14 | 徐士兰 | 开锁方法及装置、电子锁 |
CN107194285A (zh) * | 2017-04-29 | 2017-09-22 | 苏州芯动科技有限公司 | 一种基于puf的密钥生成方法及数据存储方法 |
CN108123796A (zh) * | 2016-11-29 | 2018-06-05 | 展讯通信(上海)有限公司 | 指纹比对的方法及装置、指纹令牌及其控制方法和装置 |
CN108777615A (zh) * | 2018-09-17 | 2018-11-09 | 上海并擎软件科技有限公司 | 动态口令认证方法和装置 |
CN110098923A (zh) * | 2019-04-08 | 2019-08-06 | 浙江大华技术股份有限公司 | 一种生成和验证临时密码的方法及设备 |
CN113676452A (zh) * | 2021-07-15 | 2021-11-19 | 北京思特奇信息技术股份有限公司 | 基于一次性密钥的重放攻击抵御方法及系统 |
CN114996676A (zh) * | 2022-08-01 | 2022-09-02 | 北京云成金融信息服务有限公司 | 一种基于历史数据分析的供应链金融平台的认证系统及方法 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102801531B (zh) * | 2012-09-04 | 2015-03-04 | 飞天诚信科技股份有限公司 | 一种基于声音传输的动态令牌的工作方法 |
KR20160109151A (ko) * | 2015-03-10 | 2016-09-21 | 노틸러스효성 주식회사 | 현금 입출금에 관한 거래를 처리하는 장치 및 방법 |
US9842205B2 (en) * | 2015-03-30 | 2017-12-12 | At&T Intellectual Property I, L.P. | Time-varying passwords for user authentication |
US10541992B2 (en) | 2016-12-30 | 2020-01-21 | Google Llc | Two-token based authenticated session management |
US10462124B2 (en) | 2016-12-30 | 2019-10-29 | Google Llc | Authenticated session management across multiple electronic devices using a virtual session manager |
US10803022B2 (en) | 2017-09-08 | 2020-10-13 | ULedger, Inc. | Systems and methods of providing immutable records |
CN109840404A (zh) * | 2019-02-14 | 2019-06-04 | 阳江核电有限公司 | 一种基于事件同步算法的工业计算机登录方法和系统 |
CN110034926B (zh) * | 2019-03-08 | 2021-11-05 | 平安科技(深圳)有限公司 | 物联网动态密码的生成及验证方法、系统和计算机设备 |
US11194897B2 (en) * | 2019-04-10 | 2021-12-07 | Mastercard International Incorporated | System and methods for generating and authenticating dynamic usernames replication |
CN110533410B (zh) * | 2019-07-30 | 2022-02-15 | 河南兄弟科技发展有限公司 | 一种支付方法 |
JP7338386B2 (ja) * | 2019-10-04 | 2023-09-05 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置、情報処理システム及びプログラム |
US20230097407A1 (en) * | 2020-05-01 | 2023-03-30 | Visa International Service Association | Digital tag |
CN112349003A (zh) * | 2020-11-17 | 2021-02-09 | 深圳Tcl新技术有限公司 | 门锁密码的传输方法、锁体、服务器及可读存储介质 |
US20220217136A1 (en) * | 2021-01-04 | 2022-07-07 | Bank Of America Corporation | Identity verification through multisystem cooperation |
CN114095154B (zh) * | 2021-10-12 | 2023-06-27 | 福建升腾资讯有限公司 | 一种App登录的动态口令实现方法、装置、设备和介质 |
CN114039755B (zh) * | 2021-10-29 | 2024-03-22 | 中国银联股份有限公司 | 一种权限控制方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004051585A2 (en) * | 2002-11-27 | 2004-06-17 | Rsa Security Inc | Identity authentication system and method |
CN101355426A (zh) * | 2008-09-10 | 2009-01-28 | 中国工商银行股份有限公司 | 基于动态口令的身份认证方法及系统 |
CN101783731A (zh) * | 2009-12-28 | 2010-07-21 | 北京飞天诚信科技有限公司 | 动态口令的显示方法及动态令牌 |
CN102377783A (zh) * | 2011-11-07 | 2012-03-14 | 飞天诚信科技股份有限公司 | 一种动态口令生成及认证的方法和系统 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5694539A (en) * | 1994-08-10 | 1997-12-02 | Intrinsa Corporation | Computer process resource modelling method and apparatus |
US6311276B1 (en) * | 1998-08-25 | 2001-10-30 | 3Com Corporation | Secure system for remote management and wake-up commands |
US6607136B1 (en) * | 1998-09-16 | 2003-08-19 | Beepcard Inc. | Physical presence digital authentication system |
US20020198848A1 (en) * | 2001-06-26 | 2002-12-26 | Michener John R. | Transaction verification system and method |
KR100611304B1 (ko) * | 2005-01-27 | 2006-08-10 | 삼성전자주식회사 | 기 입력된 버튼의 코드값을 이용하여 1회용 비밀키를생성하는 제어기기, 상기 1회용 비밀키를 이용하여 상기제어기기를 인증하는 홈서버, 및, 상기 1회용 비밀키를이용한 제어기기 인증방법 |
US9002750B1 (en) * | 2005-12-09 | 2015-04-07 | Citicorp Credit Services, Inc. (Usa) | Methods and systems for secure user authentication |
US8667285B2 (en) * | 2007-05-31 | 2014-03-04 | Vasco Data Security, Inc. | Remote authentication and transaction signatures |
US8789166B2 (en) * | 2009-10-30 | 2014-07-22 | Feitian Technologies Co., Ltd. | Verification method and system thereof |
CN102123148B (zh) * | 2011-03-02 | 2014-01-15 | 天地融科技股份有限公司 | 基于动态口令的认证方法、系统和装置 |
KR101838560B1 (ko) * | 2011-07-27 | 2018-03-15 | 삼성전자주식회사 | 뉴로모픽 칩에서 스파이크 이벤트를 송수신하는 송수신 장치 및 방법 |
CN102843236B (zh) * | 2012-09-12 | 2014-12-10 | 飞天诚信科技股份有限公司 | 一种动态口令的生成及认证方法与系统 |
-
2012
- 2012-09-12 CN CN201210337308.6A patent/CN102843236B/zh active Active
-
2013
- 2013-08-30 US US14/423,537 patent/US9350728B2/en active Active
- 2013-08-30 WO PCT/CN2013/082714 patent/WO2014040501A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2004051585A2 (en) * | 2002-11-27 | 2004-06-17 | Rsa Security Inc | Identity authentication system and method |
CN101355426A (zh) * | 2008-09-10 | 2009-01-28 | 中国工商银行股份有限公司 | 基于动态口令的身份认证方法及系统 |
CN101783731A (zh) * | 2009-12-28 | 2010-07-21 | 北京飞天诚信科技有限公司 | 动态口令的显示方法及动态令牌 |
CN102377783A (zh) * | 2011-11-07 | 2012-03-14 | 飞天诚信科技股份有限公司 | 一种动态口令生成及认证的方法和系统 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014040501A1 (zh) * | 2012-09-12 | 2014-03-20 | 飞天诚信科技股份有限公司 | 一种动态口令的生成及认证方法与系统 |
CN103905195A (zh) * | 2012-12-28 | 2014-07-02 | 中国电信股份有限公司 | 基于动态口令的用户卡认证方法和系统 |
CN103354499A (zh) * | 2013-06-21 | 2013-10-16 | 樊晓东 | 一种动态口令的合法性实时验证方法 |
CN103354499B (zh) * | 2013-06-21 | 2016-05-11 | 樊晓东 | 一种动态口令的合法性实时验证方法 |
CN104618112A (zh) * | 2015-01-19 | 2015-05-13 | 北京海泰方圆科技有限公司 | 一种对动态令牌的动态口令校验的方法 |
CN106161029A (zh) * | 2015-04-20 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 动态令牌控制方法和装置 |
CN106161029B (zh) * | 2015-04-20 | 2019-12-03 | 阿里巴巴集团控股有限公司 | 动态令牌控制方法和装置 |
CN108123796A (zh) * | 2016-11-29 | 2018-06-05 | 展讯通信(上海)有限公司 | 指纹比对的方法及装置、指纹令牌及其控制方法和装置 |
CN106952378A (zh) * | 2017-04-11 | 2017-07-14 | 徐士兰 | 开锁方法及装置、电子锁 |
CN107194285A (zh) * | 2017-04-29 | 2017-09-22 | 苏州芯动科技有限公司 | 一种基于puf的密钥生成方法及数据存储方法 |
CN107194285B (zh) * | 2017-04-29 | 2020-05-12 | 苏州芯动科技有限公司 | 一种基于puf的密钥生成方法及数据存储方法 |
CN108777615A (zh) * | 2018-09-17 | 2018-11-09 | 上海并擎软件科技有限公司 | 动态口令认证方法和装置 |
CN110098923A (zh) * | 2019-04-08 | 2019-08-06 | 浙江大华技术股份有限公司 | 一种生成和验证临时密码的方法及设备 |
CN110098923B (zh) * | 2019-04-08 | 2021-08-27 | 浙江大华技术股份有限公司 | 一种生成和验证临时密码的方法及设备 |
CN113676452A (zh) * | 2021-07-15 | 2021-11-19 | 北京思特奇信息技术股份有限公司 | 基于一次性密钥的重放攻击抵御方法及系统 |
CN113676452B (zh) * | 2021-07-15 | 2024-01-09 | 北京思特奇信息技术股份有限公司 | 基于一次性密钥的重放攻击抵御方法及系统 |
CN114996676A (zh) * | 2022-08-01 | 2022-09-02 | 北京云成金融信息服务有限公司 | 一种基于历史数据分析的供应链金融平台的认证系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
US20150207790A1 (en) | 2015-07-23 |
CN102843236B (zh) | 2014-12-10 |
US9350728B2 (en) | 2016-05-24 |
WO2014040501A1 (zh) | 2014-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102843236B (zh) | 一种动态口令的生成及认证方法与系统 | |
CN110473105B (zh) | 一种区块链交易结算方法、系统及相关设备 | |
CN110113167A (zh) | 一种智能终端的信息保护方法、系统以及可读存储介质 | |
US9800574B2 (en) | Method and apparatus for providing client-side score-based authentication | |
CN105260635B (zh) | 一种移动终端基于指纹的身份验证方法及系统 | |
US20140237565A1 (en) | Method and system for generation of dynamic password | |
CN106453205B (zh) | 一种身份验证方法和装置 | |
CN102300182A (zh) | 一种基于短信的身份验证方法、系统和装置 | |
CN109936552B (zh) | 一种密钥认证方法、服务器及系统 | |
EP2936277B1 (en) | Method and apparatus for information verification | |
CN104104672A (zh) | 基于身份认证建立动态授权码的方法 | |
CN103634328A (zh) | 用于网络平台认证服务器的认证方法、装置和系统 | |
KR102227578B1 (ko) | 블록체인 네트워크를 이용한 영지식 증명 기반의 인증서 서비스 방법, 이를 이용한 인증 지원 서버 및 사용자 단말 | |
CN101964789A (zh) | 安全访问受保护资源的方法及系统 | |
CN106845181A (zh) | 一种密码的获取方法及电子设备 | |
CN103971048A (zh) | 一种输入密码的方法及其密码输入系统 | |
CN114444134A (zh) | 一种数据使用授权方法、系统及装置 | |
CN106612265A (zh) | 即时通信方法及服务器 | |
CN102761419A (zh) | 电子签名工具及使用该装置的认证系统、方法 | |
CN105139543B (zh) | 一种智能卡自助充值方法 | |
CN113411188A (zh) | 电子合同签署方法、装置、存储介质及计算机设备 | |
CN113709115A (zh) | 认证方法及装置 | |
US9300661B1 (en) | Method, apparatus, and computer program product for determining whether to suspend authentication by an authentication device | |
CN102164036A (zh) | 动态令牌、具有该动态令牌的双向认证方法及系统 | |
CN105187421A (zh) | 一种账户密码口令保护方法 |
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 |