CN102611556B - 一种动态令牌的工作方法 - Google Patents

一种动态令牌的工作方法 Download PDF

Info

Publication number
CN102611556B
CN102611556B CN201210094070.9A CN201210094070A CN102611556B CN 102611556 B CN102611556 B CN 102611556B CN 201210094070 A CN201210094070 A CN 201210094070A CN 102611556 B CN102611556 B CN 102611556B
Authority
CN
China
Prior art keywords
data
preset value
status indicator
buffer area
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.)
Expired - Fee Related
Application number
CN201210094070.9A
Other languages
English (en)
Other versions
CN102611556A (zh
Inventor
陆舟
于华章
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.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies Co Ltd
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 Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201210094070.9A priority Critical patent/CN102611556B/zh
Publication of CN102611556A publication Critical patent/CN102611556A/zh
Priority to PCT/CN2012/083828 priority patent/WO2013143281A1/zh
Priority to US14/233,245 priority patent/US9413752B2/en
Application granted granted Critical
Publication of CN102611556B publication Critical patent/CN102611556B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2137Time limited access, e.g. to a computer or data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开一种动态令牌的工作方法,包括:当动态令牌检测到有效按键时,判断被按下的按键的类型,若为开机键则检测当前开机标志是否被置位,是则将其复位,否则将其置位并检查锁定标志是否被置位,是则进入输入解锁码界面,否则进入信息界面;若为删除键则删除数据缓存区末端的数据;若为数字键且所述动态令牌未处于信息界面则存储相应数据至数据缓存区;若所述动态令牌处于信息界面则判断按键被按下时间是否超过预定时长,是则进入修改开机密码界面,否则存储相应数据至数据缓存区;若为确认键且所述动态令牌未处于信息界面则判断数据缓存区中的数据是否正确或是否符合要求,若所述动态令牌处于信息界面则生成动态口令并显示相应内容。

Description

一种动态令牌的工作方法
技术领域
本发明涉及信息安全领域,特别涉及一种动态令牌的工作方法。
背景技术
在现有技术中,动态令牌(One-time Password,OTP)是一种安全便捷的帐号防盗技术,根据专门的算法生成一个不可预测的随机数字组合,每个口令只能使用一次,用户进行认证时候,除输入账号和静态密码之外,必须要求输入动态密码,只有通过***验证,才可以正常登录或者交易,从而有效保证用户身份的合法性和唯一性。动态令牌最大的优点在于,用户每次使用的口令都不相同,使得不法分子无法仿冒合法用户的身份。动态口令认证技术被认为是目前能够最有效解决用户的身份认证方式之一,可以有效防范黑客木马盗窃用户账户口令、假网站等多种网络问题,导致用户的财产或者资料丢失的损失。目前被广泛运用在网银、网游、电信运营商、电子政务、企业等领域。
发明人在实现本发明的过程中,发现由于目前的动态令牌显示密码都是6位或者8位,当盗窃者得到了种子或者多个密码后进行反推有破解的风险,且动态令牌容易丢失或被盗用。
发明内容
鉴于现有技术的不足,为了有效的防止动态令牌被盗用、动态令牌丢失、种子文件丢失以及群举的可能,本发明提出了一种动态令牌的工作方法。
本发明采用的技术方案如下:
一种动态令牌的工作方法,其特征在于,当所述动态令牌检测到其按键标志被置位后包括:
步骤A:清除按键标志,扫描按键,判断被按下的按键的类型,若为电源键则执行步骤B,若为删除键则执行步骤D,若为第一数字键组中的任意按键则执行步骤E,若为第二数字键组中的任意按键则执行步骤F,若为确认键则执行步骤G;
步骤B:检查开机标志,当所述开机标志被置位时,将所述开机标志复位,进入休眠状态;当所述开机标志未被置位时,将所述开机标志置位,执行步骤C;
步骤C:检查锁定标志,若所述锁定标志被置位则将状态标识置为第一预设值,执行步骤L;若所述锁定标志未被置位则将所述状态标识置为第二预设值,执行步骤L;
步骤D:检查所述开机标志,当所述开机标志被置位时,删除数据缓存区末端的一个单元数据,显示相应数字,执行步骤L;当所述开机标志未被置位时,进入休眠状态;
步骤E:检查所述开机标志,当所述开机标志被置位时,保存相应数据到所述数据缓存区,并显示相应数字,执行步骤L;当所述开机标志未被置位时,进入休眠状态;
步骤F:检查所述开机标志,
当所述开机标志被置位且所述状态标识为第三预设值时,判断所述被按下的按键被连续按下的时间是否超过预设时长,是则将所述状态标识置为第五预设值,执行步骤L,否则直接执行步骤L;
当所述开机标志被置位且所述状态标识不为第三预设值时,保存相应的数据到所述数据缓存区,并显示相应数字,执行步骤L;
当所述开机标志未被置位时,进入休眠状态;
步骤G:检查所述开机标志,
当所述开机标志被置位时,检查所述状态标识,若所述状态标识为第一预设值则执行步骤H,若为第二预设值则执行步骤I,若为第三预设值则执行步骤J,若为第五预设值则执行步骤K;
当所述开机标志未被置位时,进入休眠状态;
步骤H:计算生成解锁码验证码,并判断所述数据缓存区中的数据与计算生成的解锁码验证码是否一致,是则将所述锁定标志复位,将所述状态标识置为第五预设值,清除所述数据缓存区中的数据,执行步骤L;否则清除所述数据缓存区中的数据,返回执行步骤C;
步骤I:判断所述数据缓存区中的数据与所述动态令牌内部当前存储的开机密码是否一致,是则将所述状态标识置为第三预设值,清除所述数据缓存区中的数据,执行步骤L;否则清除所述数据缓存区中的数据,将所述锁定标志置位,返回执行步骤C;
步骤J:计算生成动态口令,显示与所述动态口令相对应的内容,执行步骤L;
步骤K:判断所述数据缓存区中的数据是否符合预设条件,是则用所述数据缓存区中的数据替换所述动态令牌内部当前存储的开机密码,清除所述数据缓存区中的数据,将所述状态标识置为第三预设值,执行步骤L;否则清除所述数据缓存区中的数据,执行步骤L;
步骤L:判断在预定时间内是否检测到所述按键标志被置位,是则返回执行步骤A;否则将所述开机标志复位,进入休眠状态。
或者,
一种动态令牌的工作方法,其特征在于,当所述动态令牌检测到其按键标志被置位后包括:
步骤a:清除按键标志、扫描按键,判断被按下的按键的类型,若为电源键则执行步骤b,若为删除键则执行步骤d,若为第一数字键组中的任意按键则执行步骤e,若为第二数字键组中的任意按键则执行步骤f,若为确认键则执行步骤g;
步骤b:检查开机标志,当所述开机标志被置位时,将所述开机标志复位,进入休眠状态;当所述开机标志未被置位时,将所述开机标志置位,执行步骤c;
步骤c:检查锁定标志,若所述锁定标志被置位则将状态标识置为第一预设值,执行步骤l;若所述锁定标志未被置位则将所述状态标识置为第二预设值,执行步骤l;
步骤d:检查所述开机标志,当所述开机标志被置位时,检查状态标识,删除相应缓存区末端的一个单元数据,显示相应数字,执行步骤l;当所述开机标志未被置位时,进入休眠状态;
步骤e:检查所述开机标志,当所述开机标志被置位时,检查状态标识,保存相应数据到相应缓存区,并显示相应数字,执行步骤l;当所述开机标志未被置位时,进入休眠状态;
步骤f:检查所述开机标志,
当所述开机标志被置位且所述状态标识为第三预设值时,判断所述被按下的按键被连续按下的时间是否超过预设时长,是则将所述状态标识置为第五预设值,执行步骤l,否则直接执行步骤l;
当所述开机标志被置位且所述状态标识不为第三预设值时,检查状态标识,保存相应数据到相应缓存区,并显示相应数字,执行步骤l;
当所述开机标志未被置位时,进入休眠状态;
步骤g:检查所述开机标志,
当所述开机标志被置位时,检查所述状态标识,若所述状态标识为第一预设值则执行步骤h,若为第二预设值则执行步骤i,若为第三预设值则执行步骤j,若为第五预设值则执行步骤k;
当所述开机标志未被置位时,进入休眠状态;
步骤h:计算生成解锁码验证码,并判断解锁码数据缓存区中的数据与计算生成的解锁码验证码是否一致,是则将所述锁定标志复位,将所述状态标识置为第五预设值,清除所述解锁码缓存区中的数据,执行步骤l;否则清除所述解锁码缓存区中的数据,返回执行步骤c;
步骤i:判断开机密码缓存区中的数据与所述动态令牌内部当前存储的开机密码是否一致,是则将所述状态标识置为第三预设值,清除所述开机密码缓存区中的数据,执行步骤l;否则清除所述开机密码缓存区中的数据,将所述锁定标志置位,返回执行步骤c;
步骤j:计算生成动态口令,显示与所述动态口令相对应的内容,执行步骤l;
步骤k:判断新开机密码缓存区中的数据是否符合预设条件,是则用所述新开机密码缓存区中的数据替换所述动态令牌内部当前存储的开机密码,清除所述新开机密码缓存区中的数据,将所述状态标识置为第三预设值,执行步骤l;否则清除所述新开机密码缓存区中的数据,执行步骤l;
步骤l:判断在预定时间内是否检测到所述按键标志被置位,是则返回执行步骤A;否则将所述开机标志复位,进入休眠状态。
本发明的有益效果在于:可有效的防止动态令牌被盗用、防范动态令牌丢失或种子丢失后对用户造成损失,以及降低群举成功的概率。
附图说明
为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例二提供的一种动态令牌的工作方法的流程图;
图2为图1中步骤102至步骤117的流程图;
图3为图1中步骤118至步骤126的流程图;
图4为图1中步骤127至步骤138的流程图;
图5为图1中步骤139至步骤171的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
为了有效地防止动态令牌被盗用、动态令牌丢失、种子文件丢失以及群举的可能,本发明实施例提供了一种动态令牌的工作方法,其中,所述动态令牌通常情况下处于休眠状态,当有按键被按下时被唤醒,将按键标志置位,当电源键被连续按下超过预设时长,或在预定时间内没有按键输入时重新进入休眠状态,同时将状态标识恢复为默认值、保存当前可用密码重试次数以及锁定标志的当前状态。
当检测到所述按键标志被置位,且动态令牌未完成初始化时,所述动态令牌根据被按下的按键的类型检测液晶屏和键盘是否可用;
当检测到所述按键标志被置位,且动态令牌已经完成初始化时,动态令牌执行以下操作:
步骤S1:清除按键标志,扫描按键,判断被按下的按键的类型,若为电源键则执行步骤S2,若为删除键则执行步骤S4,若为第一数字键组中的任意按键则执行步骤S5,若为第二数字键组中的任意按键则执行步骤S6,若为确认键则执行步骤S9;
具体地,按键可以是按钮、触摸键、微型开关、光电开关、感应式开关等不同形式;
其中,所述电源键、所述删除键以及所述确认键可以是独立按键,也可以任意两者共用同一按键,还可以是第一数字键组中的任意按键:
相应地,当电源键为第一数字键组中的任意按键时,在本步骤中,当判断出被按下的按键为第一数字键组中的任意按键时,判断是否为第一预设按键,是则判断按键被按下的时间是否超过预设时长,且当超过预设时长时执行步骤S2,当未超过预设时长时执行步骤S5;否则执行步骤S5;
当删除键为第一数字键组中的任意键时,在本步骤中,当判断出被按下的按键为第一数字键组中的任意按键时判断是否为第二预设按键,是则判断按键被按下的时间是否超过预设时长,且当超过预设时长时执行步骤S4,当未超过预设时长时执行步骤S5;否则执行步骤S5;
当确认键为第一数字键组中的任意键时,在本步骤中,当判断出被按下的按键为第一数字键组中的任意按键时判断是否为第三预设按键,是则判断按键被按下的时间是否超过预设时长,且当超过预设时长时执行步骤S9,当未超过预设时长时执行步骤S5;否则执行步骤S5;
当电源键和删除键共用一个按键时,在本步骤中,当判断出被按下的按键为电源键时判断按键被按下的时间是否超过预设时长,是则执行步骤S2,否则执行步骤S4;
当确认键和电源键共用一个按键时,在本步骤中,当判断出被按下的按键为确认键时判断按键被按下的时间是否超过预设时长,是则执行步骤S2,否则执行步骤S9;
当确认键和删除键共用一个按键时,在本步骤中,当判断出被按下的按键为确认键时判断按键被按下的时间是否超过预设时长,是则执行步骤S4,否则执行步骤S9。
优选地,在本实施例中,为防止静电等干扰和按键本身的抖动引起的按键标志被置位,当令牌检测到按键标志被置位后还包括按键消抖处理,具体为:当检测到按键标志被置位后判断按键被按下的时间是否超过预设时间,是则执行步骤S1,否则清除按键标志,进入休眠状态,继续等待按键标志被置位,其中检测按键被按下的时间的办法可为多种,在此不做限定;
优选地,在本实施例中,所述预设时间为20毫秒;
还可以采用硬件电路实现按键消抖处理,具体可根据RS触发器的特性实现。
步骤S2:检查开机标志,当所述开机标志被置位时,将所述开机标志复位,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤S1;当所述开机标志未被置位时,将所述开机标志置位,顺序执行下一步;
步骤S3:检查锁定标志,当所述锁定标志被置位时,显示提示动态令牌已锁定的信息,将状态标识置为第一预设值,显示提示输入解锁码的信息,执行步骤S15;当所述锁定标志未被置位时,将所述状态标识置为第二预设值,显示提示输入开机密码的信息,执行步骤S15;
步骤S4:检查所述开机标志,当所述开机标志被置位时,删除数据缓存区末端的一个单元数据,显示相应数字,执行步骤S15,若所述数据缓存区中没有数据,则直接执行步骤S15;当所述开机标志未被置位时,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤S1;
其中,在所述数据缓存区中用一个单元数据表示一个数字,所述一个单元数据为经过编码的或未经编码的;
所述显示相应数字具体包括:显示所述数据缓存区中全部单元数据所对应的数字,显示的相应数字为数据明文或符号“-”或先显示固定时间数据明文后用符号“-”  代替所述数据明文,当所述状态标识的不同预设值对应不同的显示方式时,具体根据所述状态标识的当前值选择显示方式。
步骤S5:检查所述开机标志,当所述开机标志被置位时,保存相应数据到数据缓存区,并显示相应数字,执行步骤S15;当所述开机标志未被置位时,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤S1;
其中,
所述保存相应数据到数据缓存区具体包括:根据所述状态标识判断所述数据缓存区中单元数据的个数是否已超过预设个数,是则保存最先或最后的预设个数的单元数据,否则保存全部单元数据。
步骤S6:检查所述开机标志,当所述开机标志被置位时,顺序执行下一步,当所述开机标志未被置位时,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤S1;
步骤S7:检查所述状态标识,当所述状态标识为第三预设值时,顺序执行下一步,否则保存相应数据到数据缓存区,并显示相应数字,执行步骤S15;
步骤S8:判断所述按键被连续按下的时间是否超过预设时长,是则将所述状态标识置为第五预设值,显示提示重新设定开机密码的信息,执行步骤S15;否则直接执行步骤S15;
步骤S9:检查所述开机标志,当所述开机标志被置位时,顺序执行下一步,当所述开机标志未被置位时,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤S1;
步骤S10:检查所述状态标识,当所述状态标识为第一预设值时执行步骤S11,当所述状态标识为第二预设值时执行步骤S12,当所述状态标识为第三预设值时执行步骤S13,当所述状态标识为第五预设值时执行步骤S14;
步骤S11:计算生成解锁码验证码,并判断所述数据缓存区中的数据与计算生成的解锁码验证码是否一致,是则将所述锁定标志复位,将所述状态标识置为第五预设值,显示提示用户重新设定开机密码的信息,清除数据缓存区中的数据,执行步骤S15;否则清除所述数据缓存区中的数据,返回执行步骤S3;
步骤S12:判断所述数据缓存区中的数据与所述动态令牌当前存储的开机密码是否一致,是则将所述状态标识置为第三预设值,显示提示已进入信息界面的信息,清除数据缓存区中的数据,执行步骤S15;否则将所述锁定标志置位,清除数据缓存区中的数据,返回执行步骤S3;
优选地,所述动态令牌中可设置有可用密码重试次数;
相应地:当所述锁定标志未被置位时,判断所述数据缓存区中的数据与所述动态令牌当前存储的开机密码是否一致,是则将所述状态标识置为第三预设值,显示提示已进入信息界面的信息,并将所述可用密码重试次数置为初始值,清除数据缓存区中的数据,执行步骤S15;否则清除数据缓存区中的数据,计算所述可用密码重试次数减1,结果作为当前可用密码重试次数,判断当前可用密码重试次数是否为0,是则将所述锁定标志置位,返回执行步骤S3,否则直接返回执行步骤S3。
步骤S13:计算生成动态口令,显示与所述动态口令相对应的内容,执行步骤S15。
步骤S14:判断数据缓存区中的数据是否符合预设条件,是则用所述数据缓冲区中的数据替换当前所述令牌内部存储的开机密码,将所述状态标识置为第三预设值,显示提示已进入信息界面的信息,清除数据缓存区中的数据,执行步骤S15;否则清除数据缓存区中的数据,执行步骤S15;
步骤S15:判断在预定时间内是否检测到所述按键标志被置位,是则执行步骤S1,否则,将所述开机标志复位,进入休眠状态,且当重新检测到所述按键标志被置位后执行步骤S1。
优选地,所述步骤S10中还可以包括:当所述状态标识为第四预设值时执行步骤S16;当所述状态标识为第六预设值时执行步骤S17;当所述状态标识为第七预设值时执行步骤S18;其中所述步骤S16、步骤S17、步骤S18具体为:
步骤S16:判断所述数据缓存区中的数据与所述动态令牌当前存储的开机密码是否一致,是则将所述状态标识置为第五预设值,显示提示重新设定开机密码的信息,清除所述数据缓存区中的数据,执行步骤S15;否则清除所述数据缓存区中的数据,执行步骤S15;
相应地,步骤S8中当判断出所述被按下的按键被连续按下的时间是超过预设时长时包括:将所述状态标识置为第四预设值,显示提示输入当前开机密码的信息,执行步骤S15。
步骤S17:判断所述数据缓存区中的数据与新开机密码是否一致,是则用所述新开机密码替换当前所述动态令牌内部存储的开机密码,将所述状态标识置为第三预设值,显示提示已进入信息界面的信息,清除所述数据缓存区中的数据,执行步骤S15;否则将所述状态标识置为第五预设值,显示提示重新设定开机密码的信息,清除所述数据缓存区中的数据,执行步骤S15;
相应地,步骤S14中当判断出所述数据缓存区中的数据符合预设条件时,将所述数据缓存区中的数据存储为新开机密码,将所述状态标识置为第六预设值,显示提示确认重新设定的开机密码的信息,清除所述数据缓存区中的数据,执行步骤S15。
步骤S18:将所述状态标识置为第三预设值,执行步骤S15。
相应地,所述步骤S13中所述计算生成动态口令后还包括:将所述状态标识置为第七预设值,判断在所述动态口令失效前是否检测到所述按键标识被置位,是则返回执行步骤S1,否则当所述动态口令失效时将所述状态标识置为第三预设值,执行步骤S15。
实施例二
为了有效地防止动态令牌被盗用、动态令牌丢失、种子文件丢失以及群举的可能,本发明实施例以电源键和删除键共用一个按键、数字按键1~9作为第一数字键组、数字键0作为第二数字键组为例提供了一种实施例一中提供的一种动态令牌的具体实现方法,其中,所述动态令牌通常情况下处于休眠状态,当有按键被按下时被唤醒,并将按键标志置位,当电源键被连续按下超过预设时长,或在预定时间内没有按键输入时重新进入休眠状态,同时将状态标识恢复为默认值、保存当前可用密码重试次数以及锁定标志的当前状态。参见图1、图2、图3、图4和图5,当检测到按键标志被置位后,动态令牌执行以下操作:
步骤101:清除按键标志,扫描键盘,判断被按下的按键的类型,若为电源键则执行步骤102,若为数字键1~9中的任意键则执行步骤118,若为数字键0则执行步骤127,若为OK键则执行步骤139;
步骤102:判断设备是否初始化,是则执行步骤106,否则顺序执行下一步;
具体地,设备初始化的过程即为向动态令牌中写入用户信息的过程。
步骤103:液晶屏自检;
步骤104:判断预定时间内是否检测到按键标志被置位,是则返回执行步骤101,否则顺序执行下一步;
步骤105:进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤106:检查开机标志是否被置位,是则顺序执行下一步,否则执行步骤110;
步骤107:判断电源键被按下的时间是否超过预设时长,是则顺序执行下一步,否则执行步骤109;
优选地,本实施例中,所述预设时长为2秒。
步骤108:将开机标志复位,进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤109:删除数据缓存区末端的一个单元数据,显示相应数字,执行步骤116,若所述数据缓存区中没有数据,则跳过本步骤直接执行步骤116;
其中,在所述数据缓存区中用一个单元数据表示一个数字,所述一个字节数据为经过编码的或未经编码的,所述显示相应数字具体为显示数据缓存区中所有单元数据所对应的数字。
步骤110:判断电源键被按下的时间是否超过预设时长,是则顺序执行下一步,否则执行步骤112;
步骤111:进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤112:将开机标志置位;
步骤113:检查锁定标志是否被置位,是则顺序执行下一步,否则执行步骤115;
步骤114:将状态标识置为第一预设值,显示输入解锁码界面,执行步骤116;
步骤115:将状态标识置为第二预设值,显示输入开机密码界面;
步骤116:判断预定时间内是否检测到按键标志被置位,是则返回执行步骤101,否则顺序执行下一步;
步骤117:将开机标志复位,进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤118:判断设备是否初始化,是则执行步骤122,否则顺序执行下一步;
步骤119:显示相应数字;
步骤120:判断预定时间内是否检测到按键标志被置位,是则返回执行步骤101,否则顺序执行下一步;
步骤121:进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤122:检查开机标志是否被置位,是则执行步骤124,否则顺序执行下一步;
步骤123:进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤124:保存相应的数据到数据缓存区,并显示相应的数字;
优选地,在本实施例中,当所述状态标识为第二预设值或第四预设值或第五预设值或第六预设值时,判断数据缓存区中单元数据的个数是否已超过6个,是则保存最先或最后的6个单元数据,否则保存全部单元数据;当所述状态标识为第一预设值时,判断数据缓存区中单元数据的个数是否超过8个,是则保存最先或最后8个单元数据,否则保存全部单元数据;
所述显示相应数字具体为显示数据缓存区中全部单元数据对应的数字;
其中,所述显示相应数字时可以显示明文也可以用“-”或“*”等符号代替,或先显示一段时间明文后,用“-”或“*”等符号替换明文,当不同状态标识采用不同显示方式时,根据所述状态标识选择显示方式。
步骤125:判断预定时间内是否检测到按键标志被置位,是则返回执行步骤101,否则顺序执行下一步;
步骤126:将开机标志复位,进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤127:判断设备是否初始化,是则执行步骤131,否则顺序执行下一步;
步骤128:显示数字0;
步骤129:判断预定时间内是否检测到按键标志被置位,是则返回执行步骤101,否则顺序执行下一步;
步骤130:进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤131:检查开机标志是否被置位,是则执行步骤133,否则顺序执行下一步;
步骤132:进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤133:检查状态标识,若所述状态标识为第三预设值则执行步骤135,否则顺序执行下一步;
步骤134:保存相应的数据到数据缓存区,并显示相应的数字,执行步骤137;
具体地,本步骤的具体方法与步骤1 24相同,在此不再赘述。
步骤135:判断数字键0被按下的时间是否超过预设时长,是则顺序执行下一步,否则执行步骤137;
步骤136:将状态标识置为第四预设值,显示修改开机密码界面,执行步骤137;
步骤137:判断预定时间内是否检测到按键标志被置位,是则返回执行步骤101,否则顺序执行下一步;
步骤138:将开机标志复位,进入休眠状态,且当重新检测到按键标志被置位时执行步骤101;
步骤139:判断设备是否初始化,是则执行步骤143,否则顺序执行下一步;
步骤140:显示预设信息;
具体的,在本实施例中,所述预设信息为“成功”。
步骤141:判断预定时间内是否检测到按键标志被置位,是则执行步骤101,否则顺序执行下一步;
步骤142:进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤143:检查开机标志是否被置位,是则执行步骤145,否则顺序执行下一步;
步骤144:进入休眠状态,且当重新检测到按键标志被置位后执行步骤101;
步骤145:检查状态标识,若所述状态标识为第三预设值,则执行步骤146,若所述状态标识为第二预设值,则执行步骤149,若所述状态标识为第一预设值,则执行步骤151;若所述状态标识为第四预设值,则执行步骤157,若所述状态标识为第五预设值,则执行步骤160,若所述状态标识为第六预设值,则执行步骤163,若所述状态标识为第七预设值,则执行步骤166;
步骤146:计算生成动态口令,将状态标识置为第七预设值,显示与所述动态口令相对应的内容;
具体地,在本实施例中,所述动态令牌计算生成6位的动态口令,所述计算生成动态口令可以为根据时间因子(或事件因子)和预先存储在所述动态令牌中的静态因子生成动态口令,或根据时间因子(或事件因子)、数据缓存区中的数据和预先存储在所述动态令牌中的静态因子生成动态口令,在此不做限定;
优选地,在本实施例中,所述显示相应数据具体为显示所述动态口令的前4位,后2位用符号“-”代替;
进一步地,还可以显示时间条,用于表示当前动态口令剩余的有效时间。
步骤147:判断在所述动态口令有效时是否检测到按键标志被置位,是则返回执行步骤101,否则当所述动态口令失效时顺序执行下一步
步骤148:将状态标识设为第三预设值,显示信息界面,执行步骤167;
步骤149:计算生成解锁码验证码,并判断数据缓存区中的数据是否与所述解锁码验证码一致,是则顺序执行下一步,否则执行步骤155;
具体地,所述动态令牌根据静态因子和时间因子(或事件因子),或根据静态因子、时间因子(或事件因子)和数据缓存区中的数据,采用预设算法计算生成三个8位解锁码验证码,所述三个解锁码验证码分别对应当前时间因子的前一个时间因子,当前时间因子,当前时间因子的后一个时间因子或当前事件因子、后一个相邻事件因子、后一个间隔的事件因子;
进一步地,所述数据缓存区中的相应数字是否与所述解锁码验证码一致具体为与所述动态令牌计算生成的三个解锁码验证码中的任意一个相同。
步骤150:清除数据缓存区中的数据,将锁定标志复位,将状态标识置为第五预设值,显示设定新开机密码界面,执行步骤167;
步骤151:判断数据缓存区中的数据是否与所述动态令牌中存储的开机密码一致,是则执行步骤156,否则顺序执行下一步;
步骤152:清除数据缓存区中的数据,计算当前密码重试次数减1,结果作为可用密码重试次数;
具体地,在本实施例中,如果是第一次执行本步骤,所述当前密码重试次数的初始值为6,否则所述当前密码重试次数是上一次执行本步骤时计算得到的可用密码重试次数。
步骤153:判断所述可用密码重试次数是否为0,是则将锁定标志置位,顺序执行步骤154,否则直接执行步骤154;
步骤154:提示开机密码错误以及可用密码重试次数,顺序执行步骤155;
步骤155:清除数据缓存区中的数据,返回执行步骤113;
步骤156:清除数据缓存区中的数据,将状态标识置为第三预设值,显示信息界面,执行步骤167;
步骤157:判断数据缓存区中的数据是否与所述动态令牌中存储的开机密码一致,是则顺序执行下一步,否则执行步骤159;
步骤158:清除数据缓存区中的数据,将状态标识置为第五预设值,显示设定新开机密码界面,执行步骤167;
步骤159:清除数据缓存区中的数据,提示开机密码错误,执行步骤167;
步骤160:判断数据缓存区中的数据是否符合预设条件,是则顺序执行下一步,否则执行步骤162;
优选地,在本实施例中,所述数据缓存区中的数据满足预设条件具体为:所述数据缓存区中的数据对应6位0~9的数字。
步骤161:清除数据缓存区中的数据,将用户输入的数据存储为P1,将状态标识置为第六预设值,显示确认新开机密码界面,执行步骤167;
步骤162:清除数据缓存区中的数据,提示修改开机密码失败,执行步骤167;
步骤163:判断数据缓存区中的数据是否与P1相同,是则执行步骤165,否则顺序执行下一步;
步骤164:清除数据缓存区中的数据,提示修改开机密码失败,将状态标识置为第五预设值,显示设定新开机密码界面,执行步骤167;
步骤165:清除数据缓存区中的数据,用所述P1替换动态令牌内部存储的开机密码,将状态标识置为第三预设值,显示信息界面,执行步骤167;
步骤166:将状态标识置为第三预设值,显示信息界面;
步骤167:判断在预定时间内是否检测到按键标志被置位,是则返回执行步骤101,否则顺序执行下一步;
步骤168:将开机标志复位,进入休眠状态,且当重新检测到按键标志被置位后执行步骤101。
实施例三
为了有效地防止动态令牌被盗用、动态令牌丢失、种子文件丢失以及群举的可能,本发明实施例提供了另一种动态令牌的工作方法,其中,所述动态令牌通常情况下处于休眠状态,当有按键被按下时被唤醒,将按键标志置位,当电源键被连续按下超过预设时长,或在预定时间内没有按键输入时重新进入休眠状态,同时将状态标识恢复为默认值、保存当前可用密码重试次数以及锁定标志的当前状态。
当检测到所述按键标志被置位,且动态令牌未完成初始化时,所述动态令牌根据被按下的按键的类型检测液晶屏和键盘是否可用;
当检测到所述按键标志被置位,且动态令牌已经完成初始化时,动态令牌执行以下操作:
步骤201:清除按键标志,扫描按键,判断被按下的按键的类型,若为电源键则执行步骤202,若为删除键则执行步骤203,若为数字键则执行步骤204,若为确认键则执行步骤206;
优选地,在本实施例中,为防止静电等干扰和按键本身的抖动引起的按键标志被置位,当令牌检测到按键标志被置位后还包括按键消抖处理,具体为:当检测到按键标志被置位后判断按键被按下的时间是否超过预设时间,是则执行步骤S1,否则清除按键标志,进入休眠状态,继续等待按键标志被置位,其中检测按键被按下的时间的办法可为多种,在此不做限定;
优选地,在本实施例中,所述预设时间为20毫秒。
还可以采用硬件电路实现按键消抖处理,具体可根据RS触发器的特性实现。
步骤202:检查开机标志,
当所述开机标志被置位时,将所述开机标志复位,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤201;
当所述开机标志未被置位时,将所述开机标志置位,执行步骤203;
步骤203:检查锁定标志是否被置位,是则显示提示动态令牌已锁定的信息,将状态标识置为第一预设值,显示提示输入解锁码的信息,执行步骤212;否则将所述状态标识置为第二预设值,显示提示输入开机密码的信息,执行步骤212;
步骤204:检查所述开机标志,当所述开机标志被置位时,检查状态标识,删除相应缓存区末端的一个单元数据,显示相应数字,执行步骤212,若所述相应缓存区中没有数据,则直接执行步骤212;当所述开机标志未被置位时,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤201;
具体地,所述检查状态标识,删除相应缓存区末端的一个单元数据包括:
检查状态标识,若为第一预设值则删除解锁码缓冲区末端的一个单元数据;若为第二预设值或第四预设值则删除开机密码缓存区末端的一个单元数据;若为第五预设值则删除新开机密码缓存区末端的一个单元数据;若为第六预设值则删除确认新开机密码缓存区末端的一个单元数据;若为其它则不做处理;
其中,在所述数据缓存区中用一个单元数据表示一个数字,所述一个单元数据为经过编码的或未经编码的;
所述显示相应数字具体包括:显示所述数据缓存区中全部单元数据所对应的数字,显示的相应数字为数据明文或符号“-”或先显示固定时间数据明文后用符号“-”代替所述数据明文,当所述状态标识的不同预设值对应不同的显示方式时,具体根据所述状态标识的当前值选择显示方式。
步骤205:检查所述开机标志,当所述开机标志被置位时,检查状态标识,根据按键的键值保存相应数据到相应缓存区,执行步骤212;当所述开机标志未被置位时,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤201;
具体地,所述检查状态标识,根据按键的键值保存相应数据到相应缓存区包括:检查状态标识,若为第一预设值则保存相应数据到解锁码缓存区;若为第二或第四预设值则保存相应数据到开机密码缓存区;若为第五预设值则保存相应数据到新开机密码缓存区;若为第六预设值则保存相应数据到确认新开机密码缓存区;若为其它则不做处理;
其中,所述保存相应数据到相应数据缓存区具体包括:根据所述状态标识判断相应缓存区中单元数据的个数是否已超过预设个数,是则保存最先或最后的预设个数的单元数据,否则保存全部单元数据。
步骤206:检查所述开机标志,当所述开机标志被置位时,检查所述状态标识,当所述状态标识为第三预设值时判断所述按键被连续按下的时间是否超过预设时长,是则将所述状态标识置为第五预设值,显示提示重新设定开机密码的信息,执行步骤212,否则直接执行步骤212,当所述状态标识不为第三预设值时保存相应数据到相应缓存区,并显示相应数字,执行步骤212;当所述开机标志未被置位时,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤211;
具体地,所述当所述状态标识不为第三预设值时保存相应数据到相应缓存区包括:若为第一预设值则保存相应数据到解锁码缓存区;若为第二或第四预设值则保存相应数据到开机密码缓存区;若为第五预设值则保存相应数据到新开机密码缓存区;若为第六预设值则保存相应数据到确认新开机密码缓存区;若为其它则不做处理。
步骤207:检查所述开机标志,当所述开机标志被置位时,检查所述状态标识,当所述状态标识为第一预设值时执行步骤208,当所述状态标识为第二预设值时执行步骤209,当所述状态标识为第三预设值时执行步骤210;当所述状态标识为第五预设值时执行步骤211;  当所述开机标志未被置位时,进入休眠状态,当重新检测到所述按键标志被置位后执行步骤201;
步骤208:计算生成解锁码验证码,并判断解锁码缓存区中的数据与计算生成的解锁码验证码是否一致,是则将所述锁定标志复位,将所述状态标识置为第五预设值,显示提示用户重新设定开机密码的信息,清除解锁码缓存区中的数据,执行步骤212;否则清除解锁码缓存区中的数据,返回执行步骤203;
具体地,所述计算生成解锁码验证码的方法与实施例二中计算生成解锁码验证码的方法相同,在此不再赘述。
步骤209:判断所述开机密码缓存区中的数据与所述动态令牌当前存储的开机密码是否一致,是则将所述状态标识置为第三预设值,显示提示已进入信息界面的信息,清除开机密码缓存区中的数据,执行步骤212;否则将所述锁定标志置位,清除开机密码缓存区中的数据,返回执行步骤203;
优选地,所述动态令牌中可设置有可用密码重试次数;
相应地:当所述锁定标志未被置位时,判断所述开机密码缓存区中的数据与所述动态令牌当前存储的开机密码是否一致,是则将所述状态标识置为第三预设值,显示提示已进入信息界面的信息,并将所述可用密码重试次数置为初始值,清除开机密码缓存区中的数据,执行步骤212;否则清除开机密码缓存区中的数据,计算所述可用密码重试次数减1,结果作为当前可用密码重试次数,判断当前可用密码重试次数是否为0,是则将所述锁定标志置位,返回执行步骤203,否则直接返回执行步骤203。
步骤210:计算生成动态口令,显示与所述动态口令相对应的内容,执行步骤212;
具体地,所述计算生成动态口令的方法与实施例二中计算生成动态口令的方法相同,在此不再赘述。
步骤211:判断新开机密码缓存区中的数据是否符合预设条件,是则用所述新开机密码缓存区中的数据替换当前所述令牌内部存储的开机密码,将所述状态标识置为第三预设值,显示提示已进入信息界面的信息,清除新开机密码缓存区中的数据,执行步骤212;否则清除新开机密码缓存区中的数据,执行步骤212;
步骤212:判断在预定时间内是否检测到所述按键标志被置位,是则执行步骤201,否则,将所述开机标志复位,进入休眠状态,且当重新检测到所述按键标志被置位后执行步骤201。
优选地,所述步骤207中还可以包括:当所述状态标识为第四预设值时执行步骤213;当所述状态标识为第六预设值时执行步骤214;当所述状态标识为第七预设值时执行步骤215;其中所述步骤213、步骤214、步骤215具体为:
步骤213:判断开机密码缓存区中的数据与所述动态令牌当前存储的开机密码是否一致,是则将所述状态标识置为第五预设值,显示提示重新设定开机密码的信息,清除开机密码缓存区中的数据,执行步骤212;否则清除开机密码缓存区中的数据,执行步骤212;
相应地,步骤206中当判断出所述被按下的按键被连续按下的时间是超过预设时长时包括:将所述状态标识置为第四预设值,显示提示输入当前开机密码的信息,执行步骤212。
步骤214:判断确认开机密码缓存区中的数据与新开机密码是否一致,是则用所述新开机密码替换当前所述动态令牌内部存储的开机密码,将所述状态标识置为第三预设值,显示提示已进入信息界面的信息,清除确认开机密码缓存区中的数据,执行步骤212;否则将所述状态标识置为第五预设值,显示提示重新设定开机密码的信息,清除确认开机密码缓存区中的数据,执行步骤212;
相应地,步骤211中当判断出新开机密码缓存区中的数据符合预设条件时,将新开机密码缓存区中的数据存储为新开机密码,将所述状态标识置为第六预设值,显示提示确认重新设定的开机密码的信息,清除新开机密码缓存区中的数据,执行步骤212。
步骤215:将所述状态标识置为第三预设值,执行步骤212。
相应地,所述步骤210中所述计算生成动态口令后还包括:将所述状态标识置为第七预设值,判断在所述动态口令失效前是否检测到所述按键标识被置位,是则返回执行步骤201,否则当所述动态口令失效时将所述状态标识置为第三预设值,执行步骤212。
具体地,在本实施例中,所述解锁码缓存区和开机码缓存区使用同一个存储区域。此外也可以有其他的缓存区共享方式,如解锁码缓存区和新开机码缓存区共用一个存储区域等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (23)

1.一种动态令牌的工作方法,其特征在于,当所述动态令牌检测到其按键标志被置位后包括:
若所述动态令牌未完成初始化,则所述动态令牌根据被按下的按键的类型检测液晶屏和键盘是否可用;若所述动态令牌已完成初始化,则所述动态令牌执行以下操作:
步骤A:清除按键标志,扫描按键,判断被按下的按键的类型,若为电源键则执行步骤B,若为删除键则执行步骤D,若为第一数字键组中的任意按键则执行步骤E,若为第二数字键组中的任意按键则执行步骤F,若为确认键则执行步骤G;
步骤B:检查开机标志,当所述开机标志被置位时,将所述开机标志复位,设置状态标识为默认值,保存锁定标志的当前状态,进入休眠状态;当所述开机标志未被置位时,将所述开机标志置位,执行步骤C;
步骤C:检查锁定标志,若所述锁定标志被置位则将状态标识置为第一预设值,执行步骤L;若所述锁定标志未被置位则将所述状态标识置为第二预设值,执行步骤L;
步骤D:检查所述开机标志,当所述开机标志被置位时,删除数据缓存区末端的一个单元数据,显示相应数字,执行步骤L;当所述开机标志未被置位时,进入休眠状态;
步骤E:检查所述开机标志,当所述开机标志被置位时,保存相应数据到所述数据缓存区,并显示相应数字,执行步骤L;当所述开机标志未被置位时,进入休眠状态;
步骤F:检查所述开机标志,
当所述开机标志被置位且所述状态标识为第三预设值时,判断所述被按下的按键被连续按下的时间是否超过预设时长,是则将所述状态标识置为第五预设值,执行步骤L,否则直接执行步骤L;
当所述开机标志被置位且所述状态标识不为第三预设值时,保存相应的数据到所述数据缓存区,并显示相应数字,执行步骤L;
当所述开机标志未被置位时,进入休眠状态;
步骤G:检查所述开机标志,
当所述开机标志被置位时,检查所述状态标识,若所述状态标识为第一预设值则执行步骤H,若为第二预设值则执行步骤I,若为第三预设值则执行步骤J,若为第五预设值则执行步骤K;
当所述开机标志未被置位时,进入休眠状态;
步骤H:计算生成解锁码验证码,并判断所述数据缓存区中的数据与计算生成的解锁码验证码是否一致,是则将所述锁定标志复位,将所述状态标识置为第五预设值,清除所述数据缓存区中的数据,执行步骤L;否则清除所述数据缓存区中的数据,返回执行步骤C;
步骤I:判断所述数据缓存区中的数据与所述动态令牌内部当前存储的开机密码是否一致,是则将所述状态标识置为第三预设值,清除所述数据缓存区中的数据,执行步骤L;否则清除所述数据缓存区中的数据,将所述锁定标志置位,返回执行步骤C;
步骤J:计算生成动态口令,显示与所述动态口令相对应的内容,执行步骤L;
步骤K:判断所述数据缓存区中的数据是否符合预设条件,是则用所述数据缓存区中的数据替换所述动态令牌内部当前存储的开机密码,清除所述数据缓存区中的数据,将所述状态标识置为第三预设值,执行步骤L;否则清除所述数据缓存区中的数据,执行步骤L;
步骤L:判断在预定时间内是否检测到所述按键标志被置位,是则返回执行步骤A;否则将所述开机标志复位,设置状态标识为默认值,保存锁定标志的当前状态,进入休眠状态。
2.根据权利要求1所述的方法,其特征在于,当所述动态令牌判断出被按下的按键为所述电源键后还包括:判断所述电源键被连续按下的时间是否超过了预设时长,是则执行步骤B,否则认定被按下的按键为所述删除键,执行步骤D。
3.根据权利要求1所述的方法,其特征在于,所述动态令牌中设置有可用密码重试次数,相应地所述步骤I中:
当判断出所述数据缓存区中的数据与所述动态令牌内部当前存储的开机密码一致时还包括:将所述可用密码重试次数置为初始值;
当判断出所述数据缓存区中的数据与所述动态令牌内部当前存储的开机密码不一致时具体包括:清除所述数据缓存区中的数据,计算所述可用密码重试次数减1,结果作为当前可用密码重试次数,判断当前可用密码重试次数是否为0,是则将所述锁定标志置位,执行步骤L,否则直接执行步骤L。
4.根据权利要求3所述的方法,其特征在于,在所述步骤D中,当所述开机标志被置位时,若所述数据缓存区中没有数据,则直接执行步骤L。
5.根据权利要求4所述的方法,其特征在于,在所述数据缓存区中用一个单元数据表示一个数字,所述一个单元数据为经过编码的或未经编码的;
所述保存相应数据到数据缓存区具体包括:根据所述状态标识判断所述数据缓存区中单元数据的个数是否已超过预设个数,是则保存最先或最后的预设个数的单元数据,否则保存全部单元数据;
所述显示相应数字具体包括:显示所述数据缓存区中全部单元数据所对应的数字,显示的相应数字为数据明文或符号“-”或先显示固定时间数据明文后用符号“-”代替所述数据明文,当所述状态标识的不同预设值对应不同的显示方式时,具体根据所述状态标识的当前值选择显示方式。
6.根据权利要求1所述的方法,其特征在于,
所述计算生成解锁码验证码具体包括:所述动态令牌根据动态因子和所述动态令牌内部的静态因子,或根据动态因子、所述数据缓存区中的数据及所述动态令牌内部的静态因子,采用预设算法计算生成一个或多个预设位长的解锁码验证码,其中所述动态因子为时间因子或事件因子;
当生成一个解锁码验证码时,所述动态因子为当前动态因子;
当生成多个解锁码验证码时,所述动态因子为以当前动态因子为中点或为起点的多个动态因子;
判断所述数据缓存区中的数据与计算生成的解锁码验证码是否一致具体为:判断所述数据缓存区中的数据是否与所述一个解锁码验证码相同或是否与所述多个解锁码验证码中的任意一个相同。
7.根据权利要求1所述的方法,其特征在于,
所述计算生成动态口令具体包括:所述动态令牌根据动态因子和预先存储在所述动态令牌中的静态因子,或根据动态因子、所述数据缓存区中的数据和预先存储在所述动态令牌中的静态因子生成长度为6位的动态口令,其中,所述动态因子为时间因子或事件因子;
所述显示与所述动态口令相对应的内容具体为显示所述动态口令的前4位,其后2位用符号“-”代替。
8.根据权利要求1所述的方法,其特征在于,所述步骤G中还包括:当所述状态标识为第四预设值时执行步骤M,其中所述步骤M具体包括:判断所述数据缓存区中的数据与所述动态令牌当前存储的开机密码是否一致,是则将所述状态标识置为第五预设值,清除所述数据缓存区中的数据,执行步骤L;否则清除所述数据缓存区中的数据,执行步骤L;
相应地,步骤F中当判断出所述被按下的按键被连续按下的时间超过预设时长时包括:将所述状态标识置为第四预设值,执行步骤L。
9.根据权利要求1所述的方法,其特征在于,所述步骤G中还包括:当所述状态标识为第六预设值时执行步骤N,其中所述步骤N具体包括:
判断所述数据缓存区中的数据与新开机密码是否一致,是则用所述新开机密码替换当前所述动态令牌内部存储的开机密码,将所述状态标识置为第三预设值,清除所述数据缓存区中的数据,执行步骤L;否则清除所述数据缓存区中的数据,将所述状态标识置为第五预设值,执行步骤L;
相应地,步骤K中当判断出所述数据缓存区中的数据符合预设条件时,将所述数据缓存区中的数据存储为新开机密码,将所述状态标识置为第六预设值,清除所述数据缓存区中的数据,执行步骤L。
10.根据权利要求1所述的方法,其特征在于,所述步骤G中还包括:当所述状态标识为第七预设值时执行步骤O,其中所述步骤O具体包括:将所述状态标识置为第三预设值,执行步骤L;
相应地,所述步骤J中所述计算生成动态口令后还包括:将所述状态标识置为第七预设值,判断在所述动态口令失效前是否检测到所述按键标志被置位,是则返回执行步骤A,否则当所述动态口令失效时将所述状态标识置为第三预设值,执行步骤L。
11.根据权利要求8、9、10任一权利要求所述的方法,其特征在于,
当所述动态令牌检测到所述锁定标志被置位时还包括:显示提示动态令牌已锁定的信息;
所述将所述状态标识置为第一预设值时还包括:显示提示输入解锁码的信息;
所述将所述状态标识置为第二预设值时还包括:显示提示输入开机密码的信息;
所述将所述状态标识置为第三预设值时还包括:显示提示已进入信息界面的信息;
所述将所述状态标识置为第四预设值时还包括:显示提示输入当前开机密码的信息;
所述将所述状态标识置为第五预设值时还包括:显示提示重新设定开机密码的信息;
所述将所述状态标识置为第六预设值时还包括:显示提示确认重新设定的开机密码的信息。
12.根据权利要求1所述的方法,其特征在于,当所述动态令牌检测到按键标志被置位后还包括按键消抖处理,具体为:
当检测到按键标志被置位后判断按键被按下的时间是否超过预设时间,是则执行步骤A,否则清除按键标志,进入休眠状态,继续等待按键标志被置位。
13.一种动态令牌的工作方法,其特征在于,当所述动态令牌检测到其按键标志被置位后包括:
若所述动态令牌未完成初始化,则所述动态令牌根据被按下的按键的类型检测液晶屏和键盘是否可用;若所述动态令牌已完成初始化,则所述动态令牌执行以下操作:
步骤a:清除按键标志、扫描按键,判断被按下的按键的类型,若为电源键则执行步骤b,若为删除键则执行步骤d,若为第一数字键组中的任意按键则执行步骤e,若为第二数字键组中的任意按键则执行步骤f,若为确认键则执行步骤g;
步骤b:检查开机标志,当所述开机标志被置位时,将所述开机标志复位,设置状态标识为默认值,保存锁定标志的当前状态,进入休眠状态;当所述开机标志未被置位时,将所述开机标志置位,执行步骤c;
步骤c:检查锁定标志,若所述锁定标志被置位则将状态标识置为第一预设值,执行步骤l;若所述锁定标志未被置位则将所述状态标识置为第二预设值,执行步骤l;
步骤d:检查所述开机标志,当所述开机标志被置位时,检查状态标识,删除相应缓存区末端的一个单元数据,显示相应数字,执行步骤l;当所述开机标志未被置位时,进入休眠状态;
步骤e:检查所述开机标志,当所述开机标志被置位时,检查状态标识,保存相应数据到相应缓存区,并显示相应数字,执行步骤l;当所述开机标志未被置位时,进入休眠状态;
步骤f:检查所述开机标志,
当所述开机标志被置位且所述状态标识为第三预设值时,判断所述被按下的按键被连续按下的时间是否超过预设时长,是则将所述状态标识置为第五预设值,执行步骤l,否则直接执行步骤l;
当所述开机标志被置位且所述状态标识不为第三预设值时,检查状态标识,保存相应数据到相应缓存区,并显示相应数字,执行步骤l;
当所述开机标志未被置位时,进入休眠状态;
步骤g:检查所述开机标志,
当所述开机标志被置位时,检查所述状态标识,若所述状态标识为第一预设值则执行步骤h,若为第二预设值则执行步骤i,若为第三预设值则执行步骤j,若为第五预设值则执行步骤k;
当所述开机标志未被置位时,进入休眠状态;
步骤h:计算生成解锁码验证码,并判断解锁码缓存区中的数据与计算生成的解锁码验证码是否一致,是则将所述锁定标志复位,将所述状态标识置为第五预设值,清除所述解锁码缓存区中的数据,执行步骤l;否则清除所述解锁码缓存区中的数据,返回执行步骤c;
步骤i:判断开机密码缓存区中的数据与所述动态令牌内部当前存储的开机密码是否一致,是则将所述状态标识置为第三预设值,清除所述开机密码缓存区中的数据,执行步骤l;否则清除所述开机密码缓存区中的数据,将所述锁定标志置位,返回执行步骤c;
步骤j:计算生成动态口令,显示与所述动态口令相对应的内容,执行步骤l;
步骤k:判断新开机密码缓存区中的数据是否符合预设条件,是则用所述新开机密码缓存区中的数据替换所述动态令牌内部当前存储的开机密码,清除所述新开机密码缓存区中的数据,将所述状态标识置为第三预设值,执行步骤l;否则清除所述新开机密码缓存区中的数据,执行步骤l;
步骤l:判断在预定时间内是否检测到所述按键标志被置位,是则返回执行步骤a;否则将所述开机标志复位,设置状态标识为默认值,保存锁定标志的当前状态,进入休眠状态。
14.根据权利要求13所述的方法,其特征在于,当所述动态令牌判断出被按下的按键为所述电源键后还包括:判断所述电源键被连续按下的时间是否超过了预设时长,是则执行步骤b,否则认定被按下的按键为所述删除键,执行步骤d。
15.根据权利要求13所述的方法,其特征在于,所述动态令牌中设置有可用密码重试次数,相应地所述步骤i中:
当判断出所述开机密码缓存区中的数据与所述动态令牌内部当前存储的开机密码一致时还包括:将所述可用密码重试次数置为初始值;
判断出所述开机密码缓存区中的数据与所述动态令牌内部当前存储的开机密码不一致时具体包括:清除所述开机密码缓存区中的数据,计算所述可用密码重试次数减1,结果作为当前可用密码重试次数,判断当前可用密码重试次数是否为0,是则将所述锁定标志置位,执行步骤l,否则直接执行步骤l。
16.根据权利要求15所述的方法,其特征在于,在所述步骤d中,
当所述开机标志被置位时,若所述相应缓存区中没有数据,则直接执行步骤l;
所述检查状态标识,删除相应缓存区末端的一个单元数据包括:检查状态标识,若为第一预设值则删除解锁码缓存区末端的一个单元数据;若为第二预设值或第四预设值则删除开机密码缓存区末端的一个单元数据;若为第五预设值则删除新开机密码缓存区末端的一个单元数据;若为第六预设值则删除确认新开机密码缓存区末端的一个单元数据;若为其它则不做处理。
17.根据权利要求16所述的方法,其特征在于,
在所述相应缓存区中用一个单元数据表示一个数字,所述一个单元数据为经过编码的或未经编码的;
所述检查状态标识,保存相应数据到相应缓存区包括:检查状态标识,若为第一预设值则保存相应数据到解锁码缓存区;若为第二或第四预设值则保存相应数据到开机密码缓存区;若为第五预设值则保存相应数据到新开机密码缓存区;若为第六预设值则保存相应数据到确认新开机密码缓存区;若为其它则不做处理;
所述保存相应数据到相应缓存区具体包括:根据所述状态标识判断所述相应缓存区中单元数据的个数是否已超过预设个数,是则保存最先或最后的预设个数的单元数据,否则保存全部单元数据;
所述显示相应数字具体包括:显示相应缓存区中全部单元数据所对应的数字,显示的相应数字为数据明文或符号“-”或先显示固定时间数据明文后用符号“-”替代所述数据明文,当所述状态标识的不同预设值对应不同的显示方式时,具体根据所述状态标识的当前值选择显示方式。
18.根据权利要求13所述的方法,其特征在于,所述当所述状态标识不为第三预设值时保存相应数据到相应缓存区包括:若为第一预设值则保存相应数据到解锁码缓存区;若为第二或第四预设值则保存相应数据到开机密码缓存区;若为第五预设值则保存相应数据到新开机密码缓存区;若为第六预设值则保存相应数据到确认新开机密码缓存区;若为其它则不做处理。
19.根据权利要求13所述的方法,其特征在于,所述步骤g中还包括:当所述状态标识为第四预设值时执行步骤m,其中所述步骤m具体包括:判断所述开机密码缓存区中的数据与所述动态令牌当前存储的开机密码是否一致,是则将所述状态标识置为第五预设值,清除所述开机密码缓存区中的数据,执行步骤l;否则清除所述开机密码缓存区中的数据,执行步骤l;
相应地,步骤f中当判断出所述被按下的按键被连续按下的时间是超过预设时长时包括:将所述状态标识置为第四预设值,执行步骤l。
20.根据权利要求13所述的方法,其特征在于,所述步骤g中还包括:当所述状态标识为第六预设值时执行步骤n,其中所述步骤n具体包括:
判断确认新开机密码缓存区中的数据与新开机密码是否一致,是则用所述新开机密码替换当前所述动态令牌内部存储的开机密码,将所述状态标识置为第三预设值,清除所述确认新开机密码缓存区中的数据,执行步骤l;否则清除所述确认新开机密码缓存区中的数据,将所述状态标识置为第五预设值,执行步骤l;
相应地,步骤k中当判断出所述新开机密码缓存区中的数据符合预设条件时,将所述新开机密码缓存区中的数据存储为新开机密码,将所述状态标识置为第六预设值,清除所述新开机密码缓存区中的数据,执行步骤l。
21.根据权利要求13所述的方法,其特征在于,所述步骤g中还包括:当所述状态标识为第七预设值时执行步骤o,其中所述步骤o具体包括:将所述状态标识置为第三预设值,执行步骤l;
相应地,所述步骤j中所述计算生成动态口令后还包括:将所述状态标识置为第七预设值,判断在所述动态口令失效前是否检测到所述按键标志被置位,是则返回执行步骤a,否则当所述动态口令失效时将所述状态标识置为第三预设值,执行步骤l。
22.根据权利要求19、20、21任一权利要求所述的方法,其特征在于,
当所述动态令牌检测到所述锁定标志被置位时还包括:显示提示动态令牌已锁定的信息;
所述将所述状态标识置为第一预设值时还包括:显示提示输入解锁码的信息;
所述将所述状态标识置为第二预设值时还包括:显示提示输入开机密码的信息;
所述将所述状态标识置为第三预设值时还包括:显示提示已进入信息界面的信息;
所述将所述状态标识置为第四预设值时还包括:显示提示输入当前开机密码的信息;
所述将所述状态标识置为第五预设值时还包括:显示提示重新设定开机密码的信息;
所述将所述状态标识置为第六预设值时还包括:显示提示确认重新设定的开机密码的信息。
23.根据权利要求13所述的方法,其特征在于,当所述动态令牌检测到按键标志被置位后还包括按键消抖处理,具体为:
当检测到按键标志被置位后判断按键被按下的时间是否超过预设时间,是则执行步骤a,否则清除按键标志,进入休眠状态,继续等待按键标志被置位。
CN201210094070.9A 2012-03-31 2012-03-31 一种动态令牌的工作方法 Expired - Fee Related CN102611556B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201210094070.9A CN102611556B (zh) 2012-03-31 2012-03-31 一种动态令牌的工作方法
PCT/CN2012/083828 WO2013143281A1 (zh) 2012-03-31 2012-10-31 一种动态令牌的工作方法
US14/233,245 US9413752B2 (en) 2012-03-31 2012-10-31 One-time password operating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210094070.9A CN102611556B (zh) 2012-03-31 2012-03-31 一种动态令牌的工作方法

Publications (2)

Publication Number Publication Date
CN102611556A CN102611556A (zh) 2012-07-25
CN102611556B true CN102611556B (zh) 2014-10-29

Family

ID=46528728

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210094070.9A Expired - Fee Related CN102611556B (zh) 2012-03-31 2012-03-31 一种动态令牌的工作方法

Country Status (3)

Country Link
US (1) US9413752B2 (zh)
CN (1) CN102611556B (zh)
WO (1) WO2013143281A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102611556B (zh) 2012-03-31 2014-10-29 飞天诚信科技股份有限公司 一种动态令牌的工作方法
CN102801531B (zh) * 2012-09-04 2015-03-04 飞天诚信科技股份有限公司 一种基于声音传输的动态令牌的工作方法
CN103227720B (zh) * 2013-03-12 2015-09-23 飞天诚信科技股份有限公司 一种应用于动态令牌的按键处理方法
CN103209077B (zh) * 2013-04-15 2015-12-02 飞天诚信科技股份有限公司 一种适用于动态令牌的解锁方法
CN103312508A (zh) * 2013-05-15 2013-09-18 飞天诚信科技股份有限公司 一种动态令牌的工作方法
CN103312517B (zh) * 2013-06-28 2016-04-06 飞天诚信科技股份有限公司 一种双用途设备共用显示屏和按键的实现方法
CN103391195B (zh) * 2013-07-01 2016-04-06 飞天诚信科技股份有限公司 一种动态令牌的工作方法
CN105302653A (zh) * 2015-11-18 2016-02-03 合肥宝龙达光电技术有限公司 一种平板电脑防电源按键误触开机的电路结构
DE102016213104A1 (de) * 2016-07-18 2018-01-18 bitagentur GmbH & Co. KG Token-basiertes Authentisieren mit signierter Nachricht
CN106780921A (zh) * 2016-12-28 2017-05-31 深圳小熊管家科技有限公司 电子锁及其密码设置方法和设置装置
WO2019239834A1 (ja) * 2018-06-14 2019-12-19 京セラドキュメントソリューションズ株式会社 認証装置及び画像形成装置
CN110837628B (zh) * 2018-08-16 2023-03-14 比亚迪股份有限公司 终端设备的加解密方法、装置、计算机设备及存储介质
CN112907926B (zh) * 2019-12-04 2022-07-29 惠州视维新技术有限公司 一种遥控设备的控制方法、存储介质及遥控设备
CN113904892B (zh) * 2021-09-16 2022-12-30 浙江零跑科技股份有限公司 一种车辆操作密码重置的方法
CN113722720B (zh) * 2021-10-29 2022-02-18 苏州浪潮智能科技有限公司 一种***启动方法及相关装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101309268A (zh) * 2008-05-21 2008-11-19 北京飞天诚信科技有限公司 防止误触发的动态令牌及其控制方法
CN101789864A (zh) * 2010-02-05 2010-07-28 中国工商银行股份有限公司 一种网上银行后台身份认证方法、装置及***

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101390126A (zh) * 2005-05-19 2009-03-18 晟碟以色列有限公司 视个人存在而通过令牌的交易认证
US9137012B2 (en) * 2006-02-03 2015-09-15 Emc Corporation Wireless authentication methods and apparatus
US8661258B2 (en) * 2009-10-23 2014-02-25 Vasco Data Security, Inc. Compact security device with transaction risk level approval capability
CN102307101B (zh) 2011-09-09 2015-07-22 飞天诚信科技股份有限公司 动态令牌及其触发信号处理方法和装置
CN102611556B (zh) 2012-03-31 2014-10-29 飞天诚信科技股份有限公司 一种动态令牌的工作方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101309268A (zh) * 2008-05-21 2008-11-19 北京飞天诚信科技有限公司 防止误触发的动态令牌及其控制方法
CN101789864A (zh) * 2010-02-05 2010-07-28 中国工商银行股份有限公司 一种网上银行后台身份认证方法、装置及***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Activcard动态密码令牌操作说明书;深圳市同步网络安全技术有限公司;《Activcard动态密码令牌操作说明书》;20011130;第3-18页 *
深圳市同步网络安全技术有限公司.Activcard动态密码令牌操作说明书.《Activcard动态密码令牌操作说明书》.2001,

Also Published As

Publication number Publication date
CN102611556A (zh) 2012-07-25
WO2013143281A1 (zh) 2013-10-03
US9413752B2 (en) 2016-08-09
US20150304313A1 (en) 2015-10-22

Similar Documents

Publication Publication Date Title
CN102611556B (zh) 一种动态令牌的工作方法
US9117065B2 (en) Dynamic interactive identity authentication method and system
US10318717B2 (en) Message display method and apparatus
US9684780B2 (en) Dynamic interactive identity authentication method and system
US8271799B2 (en) System and method for generating a disguised password based on a real password
US20110034211A1 (en) Communication device and start up method thereof
US9384343B2 (en) Methods, devices and computer program supports for password generation and verification
CN104408363A (zh) 安全密码***
CN111028392A (zh) 组合密码验证方法、硬件终端及密码***
US20150199527A1 (en) Method of inputting confidential data on a terminal
CN103391195B (zh) 一种动态令牌的工作方法
Teh et al. NFC smartphone based access control system using information hiding
TW201441860A (zh) 多點觸碰方法與裝置
KR101392537B1 (ko) 사용자 설정 기억을 이용한 비밀번호 인증 방법
KR20180020245A (ko) 적어도 하나의 비밀번호의 제공
CN106033310B (zh) 一种应用解锁方法及装置
Anand et al. Security analysis and implementation of 3-level security system using image based authentication
WO2016023289A1 (zh) 一种移动终端屏幕解锁方法、装置及存储介质
KR20110057381A (ko) 위치 방식 일회용 비밀번호를 생성하고 입력하는 방법
Rao et al. Improved session based password security system
Rani et al. A Novel Session Password Security Technique using Textual Color and Images
KR102650238B1 (ko) 암호 유출을 방지하기 위한 전자기기의 암호 입력방법
Rajkumar et al. Password Protection and Recovery
US20240095331A1 (en) Apparatus, system and method for secure data entry
KR20120109429A (ko) 바둑판에 바둑돌을 배치하는 패턴을 이용한 비밀번호 설정 방법

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

Granted publication date: 20141029

CF01 Termination of patent right due to non-payment of annual fee