[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

CN104125064B - 一种动态密码认证方法、客户端及认证系统 - Google Patents

一种动态密码认证方法、客户端及认证系统 Download PDF

Info

Publication number
CN104125064B
CN104125064B CN201310156443.5A CN201310156443A CN104125064B CN 104125064 B CN104125064 B CN 104125064B CN 201310156443 A CN201310156443 A CN 201310156443A CN 104125064 B CN104125064 B CN 104125064B
Authority
CN
China
Prior art keywords
challenge
key
user
certified
ciphertext
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.)
Active
Application number
CN201310156443.5A
Other languages
English (en)
Other versions
CN104125064A (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201310156443.5A priority Critical patent/CN104125064B/zh
Publication of CN104125064A publication Critical patent/CN104125064A/zh
Application granted granted Critical
Publication of CN104125064B publication Critical patent/CN104125064B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本申请公开了一种动态密码认证方法、客户端及认证系统;所述方法包括:接收挑战问题的密文;解密挑战问题的密文,得到挑战问题的明文;将成功解密挑战问题所使用的密钥作为首选密钥;根据所述挑战问题的明文及首选密钥产生新的首选密钥;根据所述新的首选密钥产生动态密码并显示。本申请能够更好地进行互联网应用中的身份认证。

Description

一种动态密码认证方法、客户端及认证系统
技术领域
本发明涉及网络安全领域,尤其涉及一种动态密码认证方法、客户端及认证系统。
背景技术
随着互联网对社会的影响日益深入,越来越多的交易转移到网络上进行,然而网络环境安全性则不容乐观,病毒、木马横行,身份、账户被盗的情况屡见不鲜。虽然现有方案中有些会根据不同场景采用不同密码(比如登录或查询时用一个密码,支付时用另一个密码),但支付时采用的密码本质上还是静态密码,并且该密码也用于任何一笔交易,被盗后对用户的资金安全将造成重大威胁。
互联网上目前的身份认证系统大致有下列几种:
静态口令认证,缺陷在于一个密码多次使用,若密码被窃取,则很容易被假冒身份。
基于硬件动态口令认证(事件、时间同步型),如RSA SecurID;缺陷在于需要购买硬件设备,成本较高,存在同步问题,且产生的密码与业务无关,存在中间人窃取密码或篡改交易信息的可能。
基于硬件动态口令认证(挑战应答型),带数字键盘,用户将挑战问题在令牌中输入,将得到的动态密码提交给后台系统认证身份,优点是密码与交易内容绑定;缺陷在于需要购买硬件设备,需要用户手工输入交易信息,不太方便,硬件的使用寿命一般是3-5年,成本较高。
数字证书硬件(第一代USBKey),借助USBKey来保存密钥,安全性较高;缺陷在于需要购买USBKey,成本较高;而且对客户端系统有要求,下载安全补丁、安装证书对用户电脑操作水平要求较高;另外通过USB接口与电脑连接,存在被木马控制的风险。
数字证书硬件(第二代USBKey),,安全性较高,带液晶屏,可显示交易内容,并且有用户确认键,需用户手工操作才可生成数字签名,可防范木马控制。缺陷在于需要购买USBKey,成本较高,还需要安装相关软件、驱动程序,下载证书等,对用户电脑操作水平要求较高。
基于手机短信的动态密码认证,服务端向用户手机发一条短信,包含用于认证身份的动态密码。此方案缺陷在于运营成本较高,发送短信需要向移动运营商支付费用,并且受移动通信网络影响,短信接收存在延迟,甚至接收不到短信;而且同样存在被中途被截获后假冒用户身份问题。
发明内容
本申请要解决的技术问题是如何更好地进行互联网应用中的身份认证。
为了解决上述问题,本申请提供了一种动态密码认证方法,包括:
接收挑战问题的密文;
解密挑战问题的密文,得到挑战问题的明文;将成功解密挑战问题所使用的密钥作为首选密钥;
根据所述挑战问题的明文及首选密钥产生新的首选密钥;
根据所述新的首选密钥产生动态密码并显示。
进一步地,所述从网络侧接收挑战问题的密文的步骤包括:
扫描网络侧生成的二维码图片,该二维码图片通过对挑战问题的密文编码产生;
对所述二维码图片解码得到挑战问题的密文。
进一步地,所述挑战问题中至少包括交易数据;
所述根据挑战问题的明文及首选密钥产生新的首选密钥的步骤前还包括:
从所述挑战问题的明文中提取交易数据;
显示所述交易数据;
收到用户输入的确认信息后,进行所述根据挑战问题的明文及产生新的首选密钥的步骤。
进一步地,所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述显示所述交易数据的步骤前还包括:
从所述挑战问题的明文中提取起始时间;
判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;
如果大于,则提示用户是否继续;
如果不大于,或接收到用户要求继续的指令则进行所述显示交易数据的步骤。
进一步地,所述解密挑战问题的密文,得到挑战问题的明文,将成功解密挑战问题所使用的密钥作为首选密钥的步骤包括:
采用首选密钥解密挑战问题的密文,如果解密成功则得到挑战问题的明文;如果失败,则采用次选密钥解密所述挑战问题的密文,如果解密成功则得到挑战问题的明文,将次选密钥作为首选密钥;如果解密失败则结束认证;
当采用首选密钥解密成功时,所述根据所述挑战问题的明文及首选密钥产生新的首选密钥的步骤前还包括:
将原先的首选密钥作为新的次选密钥。
本申请还提供了一种动态密码认证方法,包括:
当需要对用户进行认证时,产生对应于待认证用户的挑战问题,并根据该待认证用户对应的首选密钥加密所述挑战问题;
发送挑战问题的密文;
当接收到所述待认证用户输入的动态密码后,根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥;根据该新的首选密钥生成动态密码,并与接收的动态密码比对;如果一致,则完成认证。
进一步地,所述发送挑战问题的密文的步骤包括:
根据挑战问题的密文进行编码,生成二维码图片数据;
发送所生成的二维码图片数据。
进一步地,所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥的步骤前还包括:
从所述挑战问题的明文中提取起始时间;
判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则结束认证;如果不大于,则进行根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥的步骤。
本申请还提供了一种客户端,包括:
接收单元,用于接收挑战问题的密文;
解密单元,用于解密挑战问题的密文,得到挑战问题的明文;将成功解密挑战问题所使用的密钥作为首选密钥;
更新单元,用于根据所述挑战问题的明文及首选密钥产生新的首选密钥;
动态密码生成单元,用于根据所述新的首选密钥产生动态密码并显示。
进一步地,所述接收单元从网络侧接收挑战问题的密文是指:
所述接收单元扫描网络侧生成的二维码图片,该二维码图片通过对挑战问题的密文编码产生;对所述二维码图片解码得到挑战问题的密文。
进一步地,所述挑战问题中至少包括交易数据;
所述客户端还包括:
验证单元,用于在所述更新单元根据挑战问题的明文及首选密钥产生新的首选密钥前,从所述挑战问题的明文中提取交易数据,显示所述交易数据;收到用户输入的确认信息后,指示所述更新单元根据挑战问题的明文及产生新的首选密钥。
进一步地,所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述验证单元还用于在显示所述交易数据前,从所述挑战问题的明文中提取起始时间;判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则提示用户是否继续;如果不大于,或接收到用户要求继续的指令则显示交易数据。
进一步地,所述解密单元解密挑战问题的密文,得到挑战问题的明文,将成功解密挑战问题所使用的密钥作为首选密钥是指:
所述解密单元采用首选密钥解密挑战问题的密文,如果解密成功则得到挑战问题的明文;如果失败,则采用次选密钥解密所述挑战问题的密文,如果解密成功则得到挑战问题的明文,将次选密钥作为首选密钥;如果解密失败则结束认证;
所述更新单元还用于当所述解密单元采用首选密钥解密成功时,在根据所述挑战问题的明文及首选密钥产生新的首选密钥前,将原先的首选密钥作为新的次选密钥。
本申请还提供了一种认证系统,包括:
生成单元,用于当需要对用户进行认证时,产生对应于待认证用户的挑战问题;
加密单元,用于根据该待认证用户对应的首选密钥加密所述挑战问题;
通信单元,用于发送挑战问题的密文,接收所述待认证用户输入的动态密码;
认证单元,用于当所述通信单元接收到动态密码后,根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥;根据该新的首选密钥生成动态密码,并与接收的动态密码比对;如果一致,则完成认证。
进一步地,所述通信单元发送挑战问题的密文是指:
所述通信单元根据挑战问题的密文进行编码,生成二维码图片数据;发送所生成的二维码图片数据。
进一步地,所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述认证系统还包括:
判断单元,用于在所述认证单元根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥前,从所述挑战问题的明文中提取起始时间,判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则结束认证;如果不大于,则指示所述认证单元根据待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥。
本申请的至少一个备选方案在每次正确的认证后,双方同步更换密码,因此用户密钥被盗用后,用户下次使用时能够发现,可避免更大损失,防范密钥被盗。本申请的一个优选方案可利用用户现有智能手机,在手机中安装客户端软件,扫描二维码图片即可产生动态密码,对交易客户端无其他要求,如浏览器、补丁、控件等;无需联网,无需购买其他认证终端,无额外运营成本,成本低廉,使用方便。本申请的又一个优选方案使用客户独有密钥加密挑战问题,其他网站不可能产生有效的二维码图片,防范钓鱼网站。本申请的又一个优选方案在二维码图片中含有交易信息,用户可再次确认;含有交易时间,可用于提醒用户,并且由于动态密码与用户进行的交易绑定,即使密码被盗,对攻击者也毫无用处,防范中间人攻击。当然,实施本申请的任一产品必不一定需要同时达到以上所述的所有优点。
附图说明
图1是实施例一的动态密码认证方法的流程示意图;
图2是实施例三的动态密码认证方法的流程示意图;
图3是实施例四的例子的流程示意图。
具体实施方式
下面将结合附图及实施例对本申请的技术方案进行更详细的说明。
需要说明的是,如果不冲突,本申请实施例以及实施例中的各个特征可以相互结合,均在本申请的保护范围之内。另外,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在一个典型的配置中,客户端或认证系统的计算设备可包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM),快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
实施例一、一种动态密码认证方法,如图1所示,包括:
S101、接收挑战问题的密文;
S102、解密挑战问题的密文,得到挑战问题的明文;将成功解密挑战问题所使用的密钥作为首选密钥;
S103、根据所述挑战问题的明文及首选密钥产生新的首选密钥;
S104、根据所述新的首选密钥产生动态密码并显示。
本实施例中,产生的动态密码只能使用一次,用后将被废弃,因为下次认证时将会产生新的动态密码;因此能够有效防范密码被盗的问题。
本实施例的一种备选方案中,所述步骤S101具体可以包括:
扫描网络侧生成的二维码图片,该二维码图片通过对挑战问题的密文编码产生;
对所述二维码图片解码得到挑战问题的密文。
该备选方案中,挑战问题不需要输入,而是可以在连接网络侧的电脑(比如但不限于台式机或笔记本电脑)上采用二维码形式展现出来,含有二维码解码软件的智能手机或其它终端通过自带的摄像头扫描,即可获得挑战问题,相对于只能输入有限几位数字的现有方案,该备选方案中挑战问题的信息量可以更大,因此可以包含更多交易信息,以便用户对交易内容进行确认。
该备选方案中的方法可以由一个客户端实现,用户只需要拿安装了该客户端的手机等终端对屏幕上的二维码拍照,即可得到动态密码,甚至不需要该客户端联网,对于手机等终端而言,运营成本几乎为零,用户成本也几乎为零,且没有延时情况。另外,该备选方案对用于展现二维码的电脑系统也没有特别的要求,操作相当简单;并且不需要客户端与电脑连接,不存在被电脑中的木马控制的问题。
本实施例的一种备选方案中,所述挑战问题中包括:已认证次数S、起始时间T、交易数据D、校验数据C;还可增加其他信息。所述起始时间为所述挑战问题的产生时间;所述校验数据C可以但不限于为对挑战问题中的其它信息连接而成的数据进行杂凑运算后所得到结果中部分指定位置的数据。所述挑战问题可以但不限于由上述信息连接而成;其它备选方案中,也可以设置只在挑战问题中包括上述信息中任一种或其任意组合。
该备选方案的一种实施方式中,所述步骤S103前还可以包括:
从所述挑战问题的明文中提取交易数据;
显示所述交易数据;
收到用户输入的确认信息后进行所述步骤S103。
本实施方式中,动态密码可与交易数据绑定,用户确认后才产生动态密码,因此该动态密码只对用户确认的交易有效,即使被中间人攻击,拿到这个动态密码对攻击者来说也没有用,不会给用户造成损失。
该实施方式中,所述显示所述交易数据的步骤前还可以包括:
从所述挑战问题的明文中提取起始时间;所述起始时间为所述挑战问题的产生时间;
判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;
如果大于,则提示用户是否继续;
如果不大于,或接收到用户要求继续的指令则进行所述显示交易数据的步骤。
当时间间隔是否大于预定时间阈值时,说明该挑战问题可能失效,提醒用户是否继续产生动态密码;如果用户要求继续则显示交易数据供用户确认;如果不要求继续则可以结束认证。
该备选方案中,在得到挑战问题的明文后还可以利用所述校验数据C验证所得到的挑战问题的明文是否有效;如果有效则进行步骤S103;如果无效且采用的是首选密钥解密,则使用次选密钥尝试解密后再验证所得到的挑战问题的明文是否有效;如果无效且采用的是次选密钥解密,则说明首选密钥和次选密钥都不正确,结束认证。
本实施例的一种备选方案中,所述步骤S102具体可以包括:
采用首选密钥解密挑战问题的密文,如果解密成功则得到挑战问题的明文;如果失败,则采用次选密钥解密所述挑战问题的密文,如果解密成功则得到挑战问题的明文,将次选密钥作为首选密钥;如果解密失败则结束认证;
当采用首选密钥解密成功时,步骤S103前还可以包括:
将原先的首选密钥作为新的次选密钥。
这里“原先的首选密钥”就是指解密挑战问题的密文成功时用的密钥;比如最初的首选密钥为密钥A,次选密钥为密钥B;如果步骤S102中采用密钥A时解密成功,则在进行步骤S103前,将次选密钥也替换为密钥A,步骤S103中是根据密钥A和挑战问题的明文产生新的首选密钥。如果步骤S102中采用密钥A解密不成功,采用密钥B解密成功,则以密钥B作为首选密钥,由于此时的次选密钥就是密钥B,因此不用再更新次选密钥;步骤S103中是根据密钥B和所述挑战问题的明文生成新的首选密钥。
在其它备选方案中,也可以保存解密成功时所使用的密钥,在生成动态密码后将解密成功时所使用的密钥作为次选密钥。
当采用首选密钥和次选密钥都无法解密挑战问题的密文时,说明密钥与网络侧不同步,密钥有可能被盗;可以进一步提示用户联系厂家更新密钥。
本实施例的一种备选方案中,所述步骤S103具体可以包括:
采用基于杂凑算法的MAC生成算法对所述挑战问题的明文及首选密钥进行计算,将计算结果作为新的首选密钥。
其它备选方案中,也可以采用其它算法或处理过程来得到新的首选密钥。
本实施例的一种备选方案中,所述步骤S104具体可以包括:
采用杂凑算法对所述新的首选密钥进行计算;
截取计算结果中的部分数据;
将截取的数据对10的N次方取模;其中N为动态密码的位数。
其它备选方案中,也可以采用其它算法或处理过程来得到动态密码。
实施例二、一种动态密码认证方法,包括:
当需要对用户进行认证时,产生对应于待认证用户的挑战问题,并根据该待认证用户对应的首选密钥加密所述挑战问题;
发送挑战问题的密文;
当接收到所述待认证用户输入的动态密码后,根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥;根据该新的首选密钥生成动态密码,并与接收的动态密码比对;如果一致,则完成认证。
本实施例的一种备选方案中,所述发送挑战问题的密文的步骤可以包括:
根据挑战问题的密文进行编码,生成二维码图片数据;
发送所生成的二维码图片数据。
该备选方案中,可以但不限于由待认证用户所登录的电脑显示二维码图片;在其它备选方案中不限于此,比如也可以是待认证用户事先设定的一个终端设备来显示二维码图片。
本实施例的一种备选方案中,所述挑战问题中包括:已认证次数S、起始时间T、交易数据D、校验数据C;还可增加其他信息。所述起始时间为所述挑战问题的产生时间;所述校验数据C可以但不限于为对挑战问题中的其它信息连接而成的数据进行杂凑运算后所得到结果中部分指定位置的数据。所述挑战问题可以但不限于由上述信息连接而成;其它备选方案中,也可以设置只在挑战问题中包括上述信息中任一种或其任意组合。
该备选方案的一种实施方式中,所述根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥的步骤前还可以包括:
从所述挑战问题的明文中提取起始时间;
判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则结束认证;如果不大于,则进行根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥的步骤。
本实施例的一种备选方案中,所述根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥的步骤中,是采用基于杂凑算法的MAC生成算法对所述挑战问题的明文及首选密钥进行计算,将计算结果作为新的首选密钥。其它备选方案中,也可以采用其它算法或处理过程来得到新的首选密钥,客户端和网络侧采用的算法或处理过程需相同。
本实施例的一种备选方案中,所述根据新的首选密钥产生动态密码的步骤具体可以包括:
采用杂凑算法对所述新的首选密钥进行计算;
截取计算结果中的部分数据;
将截取的数据对10的N次方取模;其中N为动态密码的位数。
其它备选方案中,也可以采用其它算法或处理过程来得到动态密码,客户端和网络侧采用的算法或处理过程需相同。
实施例三、一种动态密码认证方法,如图2所示,包括:
S201、当需要对用户进行认证时,网络侧产生对应于待认证用户的挑战问题,并根据该待认证用户对应的首选密钥加密所述挑战问题;
S202、发送挑战问题的密文;
S203、所述待认证用户的客户端接收所述挑战问题的密文;
S204、所述客户端解密挑战问题的密文,得到挑战问题的明文;将成功解密挑战问题所使用的密钥作为首选密钥;
S205、所述客户端根据所述挑战问题的明文及所述首选密钥产生新的首选密钥;
S206、所述客户端根据所述新的首选密钥产生动态密码并显示;
S207、所述网络侧接收所述待认证用户输入的动态密码;
S208、所述网络侧根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥;根据该新的首选密钥生成动态密码,并与接收的动态密码比对;如果一致,则所述网络侧完成认证。
本实施例在每次正确的认证后,网络侧和客户端同步更换密钥,因此用户的密钥被盗用后,在下次使用时能够发现,可避免更大损失。网络侧当生成的动态密码和接收的不一致时可结束认证。
本实施例的一种备选方案中,所述步骤S202具体可以包括:
根据挑战问题的密文进行编码,生成二维码图片数据;
根据所述二维码图片数据显示所生成的二维码图片;
相应地,所述步骤203具体可以包括:
所述待认证用户的客户端扫描所述二维码图片;
所述客户端对所述二维码图片解码得到挑战问题的密文。
该备选方案中,可以但不限于由待认证用户所登录的电脑显示二维码图片;在其它备选方案中不限于此,比如也可以是待认证用户事先设定的一个终端设备来显示二维码图片。
本实施例的一种备选方案中,所述挑战问题中包括:已认证次数S、起始时间T、交易数据D、校验数据C;还可增加其他信息。所述起始时间为所述挑战问题的产生时间;所述校验数据C可以但不限于为对挑战问题中的其它信息连接而成的数据进行杂凑运算后所得到结果中部分指定位置的数据。所述挑战问题可以但不限于由上述信息连接而成;其它备选方案中,也可以设置只在挑战问题中包括上述信息中任一种或其任意组合。
该备选方案的一种实施方式中,所述步骤S205前还可以包括:
所述客户端从所述挑战问题的明文中提取交易数据;
所述客户端显示所述交易数据;
所述客户端收到用户输入的确认信息后进行所述步骤S205。
该实施方式中,所述客户端显示所述交易数据的步骤前还可以包括:
所述客户端从所述挑战问题的明文中提取起始时间;
所述客户端判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;
如果大于,则所述客户端提示用户是否继续;
如果不大于,或接收到用户要求继续的指令则所述客户端进行所述显示交易数据的步骤。
所述步骤S208前还可以包括:
所述网络侧从所述挑战问题的明文中提取起始时间;所述起始时间为所述挑战问题的产生时间;
所述网络侧判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;
如果大于,则结束认证;
如果不大于,则进行所述步骤S208。
本实施例的一种备选方案中,所述步骤S204具体可以包括:
所述客户端采用首选密钥解密挑战问题的密文,如果解密成功则得到挑战问题的明文;如果失败,则采用次选密钥解密所述挑战问题的密文,如果解密成功则得到挑战问题的明文,将次选密钥作为首选密钥;如果解密失败则结束认证;
如果采用首选密钥解密成功,则所述步骤S205前还可以包括:
所述客户端将原先的首选密钥作为新的次选密钥。
这里“原先的首选密钥”就是指解密挑战问题的密文成功时用的密钥;比如客户端最初的首选密钥为密钥A,次选密钥为密钥B;如果步骤S204中采用密钥A时解密成功,则在进行步骤S205前,将次选密钥也替换为密钥A,步骤S205中是根据密钥A和挑战问题的明文产生新的首选密钥。如果步骤S204中采用密钥A解密不成功,采用密钥B解密成功,则以密钥B作为首选密钥,由于此时的次选密钥就是密钥B,因此不用再更新次选密钥;步骤S205中是根据密钥B和所述挑战问题的明文生成新的首选密钥。
在其它备选方案中,也可以保存解密成功时所使用的密钥,在生成动态密码后将解密成功时所使用的密钥作为次选密钥。
当采用首选密钥和次选密钥都无法解密挑战问题的密文时,说明密钥与网络侧不同步,密钥有可能被盗;可以进一步提示用户联系厂家更新密钥。
该备选方案中,所述客户端在得到挑战问题的明文后还可以利用所述校验数据C验证所得到的挑战问题的明文是否有效;如果有效则进行步骤S205;如果无效且采用的是首选密钥解密,则使用次选密钥尝试解密后再验证所得到的挑战问题的明文是否有效;如果无效且采用的是次选密钥解密,则说明首选密钥和次选密钥都不正确,结束认证。
本实施例的一种备选方案中,所述步骤S205和步骤208中,是采用基于杂凑算法的MAC生成算法对所述挑战问题的明文及首选密钥进行计算,将计算结果作为新的首选密钥。其它备选方案中,也可以采用其它算法或处理过程来得到新的首选密钥,客户端和网络侧采用的算法或处理过程需相同。
本实施例的一种备选方案中,所述步骤S206和步骤208中根据新的首选密钥产生动态密码的步骤具体可以包括:
采用杂凑算法对所述新的首选密钥进行计算;
截取计算结果中的部分数据;
将截取的数据对10的N次方取模;其中N为动态密码的位数。
其它备选方案中,也可以采用其它算法或处理过程来得到动态密码,客户端和网络侧采用的算法或处理过程需相同。
实施例四,一种动态密码认证方法,应用于网络支付情况下的认证;其它情况下的认证也可以参照本实施例进行。
本实施例涉及以下设备:
交易系统(Transcation Server,简写TS),具体业务系统,如:网上银行系统、购物网站等需要认证用户身份的系统。
认证服务器(Authentication Server,简写:AS),重要的核心服务,为交易系统提供动态密码的管理和验证功能,功能如下:
认证策略管理,包括动态密码长度、挑战问题有效期长度、认证失败锁定次数和时间等;
批量产生用户共享密钥,用户共享密钥是预先产生的,根据设定的策略,启动批量产生密钥任务,调用随机数算法,生成共享密钥,并加密保存到后台数据库;
用户共享密钥管理,提供密钥与用户账户绑定与解除绑定、信息查询统计、激活、冻结、解冻、作废管理等功能。
所述交易系统需要用到认证服务器的功能有:
获取新手机动态令牌密钥,与账号绑定;
获取二维码数据,当需要认证用户身份时,执行此操作,将账户、交易内容提交给认证服务器,得到二维码数据,调用二维码图片产生库函数,生成二维码图片,并在页面显示;
验证动态密码,将账号、交易内容、动态密码提交给认证服务器,并获取认证结果,根据认证结果,执行交易内容。
在认证时,认证服务器根据传入的账号、交易数据,组织挑战问题,并用账号对应的首选密钥加密,形成二维码图片数据;根据传入的账号、交易内容、动态密码等,进行合法性检查,更新该账号对应的首选密钥后根据新的首选密钥计算产生动态密码,与用户输入动态密码比对,并返回认证结果。
客户端(Mobile Application,简写MA),可安装在智能手机或其它终端上。具有以下功能:
利用二维码,导入用户密钥,安全保护密钥;
利用摄像头对电脑屏幕中二维码图片拍照,解码得到密文的挑战问题;
解密挑战问题的密文并验证其有效性;
从挑战问题中提取交易数据并显示,提示用户确认;
更新手机内保存的密钥,根据更新后的密钥产生动态密码。
本实施例的的一个例子中,用户通过电脑连接交易系统,进行网上支付;通过安装了所述客户端的手机产生用于认证的动态密码。该例子的认证过程如图3所示,包括步骤S301~S320。
S301、用户输入账号和登录密码,登录交易系统。
本例子的交易系统为每个用户分配两个密码:a、登录密码,初步验证用户身份,即使丢失也不能造成大的影响;b、支付密码,当用户进行下订单或转账时,涉及资金转移时认证用户身份的密码。在该种交易系统中,动态密码为支付密码。
S302、交易服务器验证用户身份,显示交易页面。根据交易系统不同,后续用户的操作也不同。
S303、当用户在交易系统中需要进行支付操作时,如:付款、转账等,交易系统进入支付环节,进行步骤S304。
S304、交易系统需要再次认证用户身份,根据该用户已有的账户信息,结合交易内容,向认证服务器发出“获取二维码”操作;
S305、认证服务器根据账号查询数据库,获取该用户的首选密钥,生成挑战问题(CQ)。
挑战问题是服务器向客户端提出的问题,客户端利用首选密钥,采用约定的算法,生成动态密码,来“回答”问题,证明身份。
本例子中挑战问题CQ包括已认证次数S、起始时间T、交易数据D、校验数据C;CQ=S|T|D|C;其中,“|”表示数据追加,如:“ab”|“cd”=“abcd”。
本例子中,认证次数S表示用户认证成功的次数,长度为两字节。
起始时间T可以但不限于是认证服务器产生挑战问题时的时间。客户端设置超时时间窗,当扫描二维码时,检查二维码图片中包含的时间与手机系统时间差值,若超出时间窗范围,则警告用户,挑战问题可能已过期。由于用户手机时间不一定准确,有可能是由于用户手机内置时钟不正确导致的超时,所以这里仅提醒,用户可选择继续向下进行。另外,加入时间信息后,即使交易内容相同,由于每次交易的时间不同,因此挑战问题CQ也是不同的,避免出现相同的CQ。
交易数据D指用户在业务进行中个性化操作内容。如:登录网上银行中,转账操作中的对方银行账户、姓名、转账金额等;登录购物网站中,选购的商品名称、店铺名称、收货地址等;其他网站预留的个性化信息等。交易数据将会在手机客户端显著位置显示,并提示用户确认,用户需手动按“确认”按钮后,才能产生认证码,防止被篡改。
校验位C,由认证次数S、起始时间T、交易数据D三部分计算得出,对应解密得到的挑战问题,用来验证挑战问题是否合法。
C=Truncate(Hash(S|T|D),4);
其中,Truncate(P1,P2)表示从指定数据P1中截取部分内容,长度由P2决定。如:设S=“abcde”,则Truncate(S,2)=“de”。截取方式有多种,如从P1的最前面开始截取,或者从P1的末尾开始截取,也可以根据某个字节内容,确定开始位置,进行截取。为了简单处理,本例子中是从P1的末尾截取。
S306、认证服务器使用该用户的首选密钥(FK),采用对称加密算法加密挑战问题(CQ),得到挑战问题的密文(ECQ),该密文就是二维码图片数据,即:
ECQ=Encrypt(FK,CQ);
Encrypt是对称加密算法中的加密操作,如:DES、TripleDES、AES等。
ECQ是用首选密钥加密后的挑战问题密文,也是二维码图片数据,以二维码图片形式展现。手机通过扫描二维码图片,解码得到此数据,实现了将交易系统的数据“传输”到手机客户端软件中过程,而这个过程,手机和电脑之间无须存在任何形式的物理连接,最大限度保证了电脑与手机的隔离,大大提高安全性。
S307、认证服务器发送ECQ给交易系统。
S308、交易系统根据ECQ,生成二维码图片并在页面显著位置显示,提示用户打开手机客户端,进行拍照扫描。
S309、用户打开手机中客户端软件,扫描二维码图片;
S310、客户端软件解码二维码图片得到挑战问题的密文,即ECQ;使用所述用户的FK(首选密钥)解密ECQ,得到挑战问题的明文,验证挑战问题的明文的有效性,若有效则进入步骤S311;
如果采用首选密钥无法解密,则采用SK(次选密钥)解密ECQ,得到挑战问题的明文,验证挑战问题的明文的有效性,若有效则将次选密钥作为首选密钥,进入步骤S311;
挑战问题的明文CQ为:
CQ=Decrypt(FK,ECQ),或CQ=Decrypt(SK,ECQ);
Decrypt是对称加密算法中的解密操作,如:DES、TripleDES、AES等。
如果采用次选密钥也无法解密,说明密钥与服务器不同步,密钥有可能被盗,提示用户联系厂家更新密钥,认证结束。
最初的首选密钥由认证服务器随机产生,并导入到手机客户端。作用:1、加密挑战问题;2、与挑战问题一同计算,得到新的首选密钥。本例子中,首选密钥是变化的,是当前最新产生的密钥;每次认证成功,双方将同步更新首选密钥。次选密钥是最新密钥产生前的上一个密钥。
在服务端,只需要保留最新密钥,每次认证成功,重新计算并更新;而在手机客户端,每次产生动态密码,也会生成新密钥,即:首选密钥,但是旧密钥还不能丢,因为此时动态密码还没有经过服务器认证,而服务器只有对这个动态密码验证通过后,才能将密钥更新到与手机客户端相同的值,即“密钥同步一致”,而用户生成动态密码后,处理提交服务器进行认证,并认证成功外,还有可能认证失败(若经过长时间才输入认证),或者根本就不提交到服务器,这样的话,服务器保存的还是旧密钥,而手机客户端已经更新了一代密钥,若再次进行交易,重新获取挑战问题时,双方使用的密钥将不一致,因此,为了保持一致,手机客户端需要保存两个版本的密码:最新密钥(即首选密钥),上一次使用的解密密钥(即次选密钥),解密二维码数据时,先用首选密钥解密,若解密失败,再用次选密钥解密,只要有一个解密成功就行;将解密成功的密钥作为首选密钥,供后面使用。
S311、客户端软件从CQ中提取起始时间,检查CQ是否在有效期内,若超时,则提醒用户该二维码已失效;若在有效期内,则进行步骤312。
S312、手机屏幕显示从CQ中提取的交易数据D,并提示用户核对。
S313、用户查看交易数据,并确认。
S314、客户端软件更新密钥FK和SK,并产生动态密码DP,显示到手机屏幕上;其中:
SK=FK;
FK=Hmac(FK,CQ);
DP=Trucate(Hash(FK),4)Mod 10n
Hash为消息杂凑算法,可选择MD5、SHA1、SHA256等算法;Hmac是基于Hash算法的MAC生成算法,可选择Hmac-SHA1或Hmac-SHA256等算法。Mod表示计算余数,如:134 Mod 100=34。
动态密码DP,也称认证密码。是用户使用手机扫描二维码图片并确认交易后得到的一串数字,用来向交易系统表明身份,由认证服务器来检查是否正确。计算产生过程中,由于加入交易内容要素,因此安全性大大提高。动态密码计算过程:先对计算首选密钥FK的Hash值,从里面截取部分数据,转换成大整数,最后对一个大整数取模,这里的大整数一般为10的n次方,n为动态密码的长度,比如:动态密码长度是6,则对1000000(10的6次方)取模,截取数据长度和动态密码位数可调整。
DP=Trucate(Hash(FK),4)Mod 10n
动态密码的取值除了数字外,还可以包含其他字符,如字母、数字、特殊符号等。计算时:1、将所有取值看作是数组(取值数组,将所有取值排序,每个取值对应一个下标);2、截取数据转换成大整数,对取值数组长度取模Mod运算,余数作为下标(index)去取值数组中取出对应的值,就是动态密码中一位;3、将大整数整除数组长度的商值作为下一次运算的大整数,重复第2步操作,产生动态密码中下一位。依次循环,直到得到要求长度的动态密码。
S315、用户将所显示的动态密码在电脑上的交易页面中输入,发送给交易系统。
S316、将该用户的账户、交易信息、动态密码传给认证服务器。
S317、认证服务器提取用户认证记录,核对交易信息是否一致;检查挑战问题是否超时。一致且未超时的话,进行步骤S318。
S318、认证服务器根据该用户的首选密钥和挑战问题的明文生成新的首选密钥,根据新的首选密钥产生动态密码,并与用户输入的动态密码比对;如果一致,则认证结果为完成认证,将认证次数S加1;如果不一致,则认证结果为未认证。
S319、认证服务器将认证结果返回给交易系统。
S320、交易系统接收认证服务器返回的认证结果,若认证结果为完成认证,则执行交易内容,在电脑的交易页面上显示交易成功;若认证结果为未认证,则在电脑的交易页面上显示交易失败。
实施例五、一种客户端,包括:
接收单元,用于接收挑战问题的密文;
解密单元,用于解密挑战问题的密文,得到挑战问题的明文;将成功解密挑战问题所使用的密钥作为首选密钥;
更新单元,用于根据所述挑战问题的明文及首选密钥产生新的首选密钥;
动态密码生成单元,用于根据所述新的首选密钥产生动态密码并显示。
本实施例的一种备选方案中,所述接收单元从网络侧接收挑战问题的密文是指:
所述接收单元扫描网络侧生成的二维码图片,该二维码图片通过对挑战问题的密文编码产生;对所述二维码图片解码得到挑战问题的密文。
本实施例的一种备选方案中,所述挑战问题中包括:已认证次数S、起始时间T、交易数据D、校验数据C;还可增加其他信息。所述起始时间为所述挑战问题的产生时间;所述校验数据C可以但不限于为对挑战问题中的其它信息连接而成的数据进行杂凑运算后所得到结果中部分指定位置的数据。所述挑战问题可以但不限于由上述信息连接而成;其它备选方案中,也可以设置只在挑战问题中包括上述信息中任一种或其任意组合。
该备选方案的一种实施方式中,所述客户端还包括:验证单元,用于在所述更新单元根据挑战问题的明文及首选密钥产生新的首选密钥前,从所述挑战问题的明文中提取交易数据,显示所述交易数据;收到用户输入的确认信息后,指示所述更新单元根据挑战问题的明文及产生新的首选密钥。
该实施方式中,所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述验证单元还用于在显示所述交易数据前,从所述挑战问题的明文中提取起始时间;判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则提示用户是否继续;如果不大于,或接收到用户要求继续的指令则显示交易数据。
该备选方案中,所述验证单元还可以用于在得到挑战问题的明文后利用所述校验数据C验证所得到的挑战问题的明文是否有效;如果有效则指示所述更新单元根据挑战问题的明文及产生新的首选密钥;如果无效且采用的是首选密钥解密,则使用次选密钥尝试解密后再验证所得到的挑战问题的明文是否有效;如果无效且采用的是次选密钥解密,则说明首选密钥和次选密钥都不正确,结束认证。
本实施例的一种备选方案中,所述解密单元解密挑战问题的密文,得到挑战问题的明文,将成功解密挑战问题所使用的密钥作为首选密钥是指:
所述解密单元采用首选密钥解密挑战问题的密文,如果解密成功则得到挑战问题的明文;如果失败,则采用次选密钥解密所述挑战问题的密文,如果解密成功则得到挑战问题的明文,将次选密钥作为首选密钥;如果解密失败则结束认证;
所述更新单元还用于当所述解密单元采用首选密钥解密成功时,在根据所述挑战问题的明文及首选密钥产生新的首选密钥前,将原先的首选密钥作为新的次选密钥。
这里“原先的首选密钥”就是指解密挑战问题的密文成功时用的密钥。
在其它备选方案中,解密单元也可以保存解密成功时所使用的密钥,在生成动态密码后将解密成功时所使用的密钥作为次选密钥。
其它实现细节可参考实施例一、三。
实施例六、一种认证系统,包括:
生成单元,用于当需要对用户进行认证时,产生对应于待认证用户的挑战问题;
加密单元,用于根据该待认证用户对应的首选密钥加密所述挑战问题;
通信单元,用于发送挑战问题的密文,接收所述待认证用户输入的动态密码;
认证单元,用于当所述通信单元接收到动态密码后,根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥;根据该新的首选密钥生成动态密码,并与接收的动态密码比对;如果一致,则完成认证。
本实施例的一种备选方案中,所述通信单元发送挑战问题的密文是指:
所述通信单元根据挑战问题的密文进行编码,生成二维码图片数据;发送所生成的二维码图片数据。
本实施例的一种备选方案中,所述挑战问题中包括:已认证次数S、起始时间T、交易数据D、校验数据C;还可增加其他信息。所述起始时间为所述挑战问题的产生时间;所述校验数据C可以但不限于为对挑战问题中的其它信息连接而成的数据进行杂凑运算后所得到结果中部分指定位置的数据。所述挑战问题可以但不限于由上述信息连接而成;其它备选方案中,也可以设置只在挑战问题中包括上述信息中任一种或其任意组合。
该备选方案的一种实施方式中,所述认证系统还可以包括:
判断单元,用于在所述认证单元根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥前,从所述挑战问题的明文中提取起始时间,判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则结束认证;如果不大于,则指示所述认证单元根据待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥。
其它实现细节可参考实施例二、三。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
当然,本申请还可有其他多种实施例,在不背离本申请精神及其实质的情况下,熟悉本领域的技术人员当可根据本申请作出各种相应的改变和变形,但这些相应的改变和变形都应属于本申请的权利要求的保护范围。

Claims (16)

1.一种动态密码认证方法,包括:
接收挑战问题的密文;
解密挑战问题的密文,得到挑战问题的明文;将成功解密挑战问题所使用的密钥作为首选密钥;
根据所述挑战问题的明文及首选密钥产生新的首选密钥;
根据所述新的首选密钥产生动态密码并显示。
2.如权利要求1所述的方法,其特征在于,所述接收挑战问题的密文的步骤包括:
扫描网络侧生成的二维码图片,该二维码图片通过对挑战问题的密文编码产生;
对所述二维码图片解码得到挑战问题的密文。
3.如权利要求1所述的方法,其特征在于:
所述挑战问题中至少包括交易数据;
所述根据挑战问题的明文及首选密钥产生新的首选密钥的步骤前还包括:
从所述挑战问题的明文中提取交易数据;
显示所述交易数据;
收到用户输入的确认信息后,进行所述根据挑战问题的明文及产生新的首选密钥的步骤。
4.如权利要求3所述的方法,其特征在于:
所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述显示所述交易数据的步骤前还包括:
从所述挑战问题的明文中提取起始时间;
判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;
如果大于,则提示用户是否继续;
如果不大于,或接收到用户要求继续的指令则进行所述显示交易数据的步骤。
5.如权利要求1到4中任一项所述的方法,其特征在于,所述解密挑战问题的密文,得到挑战问题的明文,将成功解密挑战问题所使用的密钥作为首选密钥的步骤包括:
采用首选密钥解密挑战问题的密文,如果解密成功则得到挑战问题的明文;如果失败,则采用次选密钥解密所述挑战问题的密文,如果解密成功则得到挑战问题的明文,将次选密钥作为首选密钥;如果解密失败则结束认证;
当采用首选密钥解密成功时,所述根据所述挑战问题的明文及首选密钥产生新的首选密钥的步骤前还包括:
将原先的首选密钥作为新的次选密钥。
6.一种动态密码认证方法,包括:
当需要对用户进行认证时,产生对应于待认证用户的挑战问题,并根据该待认证用户对应的首选密钥加密所述挑战问题;
发送挑战问题的密文;
当接收到所述待认证用户输入的动态密码后,根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥;根据该新的首选密钥生成动态密码,并与接收的动态密码比对;如果一致,则完成认证。
7.如权利要求6所述的方法,其特征在于,所述发送挑战问题的密文的步骤包括:
根据挑战问题的密文进行编码,生成二维码图片数据;
发送所生成的二维码图片数据。
8.如权利要求6或7所述的方法,其特征在于:
所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥的步骤前还包括:
从所述挑战问题的明文中提取起始时间;
判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则结束认证;如果不大于,则进行根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥的步骤。
9.一种客户端,其特征在于,包括:
接收单元,用于接收挑战问题的密文;
解密单元,用于解密挑战问题的密文,得到挑战问题的明文;将成功解密挑战问题所使用的密钥作为首选密钥;
更新单元,用于根据所述挑战问题的明文及首选密钥产生新的首选密钥;
动态密码生成单元,用于根据所述新的首选密钥产生动态密码并显示。
10.如权利要求9所述的客户端,其特征在于,所述接收单元接收挑战问题的密文是指:
所述接收单元扫描网络侧生成的二维码图片,该二维码图片通过对挑战问题的密文编码产生;对所述二维码图片解码得到挑战问题的密文。
11.如权利要求9所述的客户端,其特征在于:
所述挑战问题中至少包括交易数据;
所述客户端还包括:
验证单元,用于在所述更新单元根据挑战问题的明文及首选密钥产生新的首选密钥前,从所述挑战问题的明文中提取交易数据,显示所述交易数据;收到用户输入的确认信息后,指示所述更新单元根据挑战问题的明文及产生新的首选密钥。
12.如权利要求11所述的客户端,其特征在于:
所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述验证单元还用于在显示所述交易数据前,从所述挑战问题的明文中提取起始时间;判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则提示用户是否继续;如果不大于,或接收到用户要求继续的指令则显示交易数据。
13.如权利要求9到12中任一项所述的客户端,其特征在于,所述解密单元解密挑战问题的密文,得到挑战问题的明文,将成功解密挑战问题所使用的密钥作为首选密钥是指:
所述解密单元采用首选密钥解密挑战问题的密文,如果解密成功则得到挑战问题的明文;如果失败,则采用次选密钥解密所述挑战问题的密文,如果解密成功则得到挑战问题的明文,将次选密钥作为首选密钥;如果解密失败则结束认证;
所述更新单元还用于当所述解密单元采用首选密钥解密成功时,在根据所述挑战问题的明文及首选密钥产生新的首选密钥前,将原先的首选密钥作为新的次选密钥。
14.一种认证系统,其特征在于,包括:
生成单元,用于当需要对用户进行认证时,产生对应于待认证用户的挑战问题;
加密单元,用于根据该待认证用户对应的首选密钥加密所述挑战问题;
通信单元,用于发送挑战问题的密文,接收所述待认证用户输入的动态密码;
认证单元,用于当所述通信单元接收到动态密码后,根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥;根据该新的首选密钥生成动态密码,并与接收的动态密码比对;如果一致,则完成认证。
15.如权利要求14所述的认证系统,其特征在于,所述通信单元发送挑战问题的密文是指:
所述通信单元根据挑战问题的密文进行编码,生成二维码图片数据;发送所生成的二维码图片数据。
16.如权利要求14或15所述的认证系统,其特征在于:
所述挑战问题中至少包括起始时间;所述起始时间为所述挑战问题的产生时间;
所述认证系统还包括:
判断单元,用于在所述认证单元根据所述待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥前,从所述挑战问题的明文中提取起始时间,判断当前时刻和所述起始时间的时间间隔是否大于预定时间阈值;如果大于,则结束认证;如果不大于,则指示所述认证单元根据待认证用户的首选密钥、和对应于该待认证用户的挑战问题生成该待认证用户的新的首选密钥。
CN201310156443.5A 2013-04-28 2013-04-28 一种动态密码认证方法、客户端及认证系统 Active CN104125064B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310156443.5A CN104125064B (zh) 2013-04-28 2013-04-28 一种动态密码认证方法、客户端及认证系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310156443.5A CN104125064B (zh) 2013-04-28 2013-04-28 一种动态密码认证方法、客户端及认证系统

Publications (2)

Publication Number Publication Date
CN104125064A CN104125064A (zh) 2014-10-29
CN104125064B true CN104125064B (zh) 2018-04-03

Family

ID=51770337

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310156443.5A Active CN104125064B (zh) 2013-04-28 2013-04-28 一种动态密码认证方法、客户端及认证系统

Country Status (1)

Country Link
CN (1) CN104125064B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104598951B (zh) * 2015-01-09 2019-01-08 上海中彦信息科技股份有限公司 具有时间限定功能的码图及其生成方法与识读方法
CN104915701B (zh) * 2015-06-09 2018-06-08 广西中烟工业有限责任公司 一种自加密自校验的二维码编码解码方法
CN106339873A (zh) * 2016-08-30 2017-01-18 中国银联股份有限公司 基于Token的支付方法以及基于Token的支付系统
CN106686224B (zh) * 2016-12-20 2019-09-06 深圳升拓智能科技有限公司 多个手机号聚合方法及系统
CN109936552B (zh) * 2017-12-19 2021-06-15 方正国际软件(北京)有限公司 一种密钥认证方法、服务器及系统
CN110034926B (zh) * 2019-03-08 2021-11-05 平安科技(深圳)有限公司 物联网动态密码的生成及验证方法、系统和计算机设备
CN109934703A (zh) * 2019-03-18 2019-06-25 吴鹏翔 一种金融账号安全管理方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5937068A (en) * 1996-03-22 1999-08-10 Activcard System and method for user authentication employing dynamic encryption variables
CN102307180A (zh) * 2011-04-27 2012-01-04 上海动联信息技术有限公司 一种用于挑战应答令牌的交易确认方法
CN102737202A (zh) * 2011-04-08 2012-10-17 英飞凌科技股份有限公司 利用迭代加密/解密密钥更新的指令加密/解密设备和方法
CN102801724A (zh) * 2012-08-09 2012-11-28 长城瑞通(北京)科技有限公司 一种图形图像与动态密码相结合的身份认证方法
CN103020574A (zh) * 2012-11-22 2013-04-03 北京握奇数据系统有限公司 一种结合拍照和条形码识别技术的otp设备和方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5937068A (en) * 1996-03-22 1999-08-10 Activcard System and method for user authentication employing dynamic encryption variables
CN102737202A (zh) * 2011-04-08 2012-10-17 英飞凌科技股份有限公司 利用迭代加密/解密密钥更新的指令加密/解密设备和方法
CN102307180A (zh) * 2011-04-27 2012-01-04 上海动联信息技术有限公司 一种用于挑战应答令牌的交易确认方法
CN102801724A (zh) * 2012-08-09 2012-11-28 长城瑞通(北京)科技有限公司 一种图形图像与动态密码相结合的身份认证方法
CN103020574A (zh) * 2012-11-22 2013-04-03 北京握奇数据系统有限公司 一种结合拍照和条形码识别技术的otp设备和方法

Also Published As

Publication number Publication date
CN104125064A (zh) 2014-10-29

Similar Documents

Publication Publication Date Title
US9525550B2 (en) Method and apparatus for securing a mobile application
US9338163B2 (en) Method using a single authentication device to authenticate a user to a service provider among a plurality of service providers and device for performing such a method
US8365262B2 (en) Method for automatically generating and filling in login information and system for the same
RU158940U1 (ru) Токен строгой аутентификации с визуальным выводом подписей инфраструктуры открытых ключей (pki)
EP2220840B1 (en) Method of authentication of users in data processing systems
US8850218B2 (en) OTP generation using a camouflaged key
US20180144114A1 (en) Securing Blockchain Transactions Against Cyberattacks
CN104125064B (zh) 一种动态密码认证方法、客户端及认证系统
US10147092B2 (en) System and method for signing and authenticating secure transactions through a communications network
WO2008118966A1 (en) System and method for user authentication with exposed and hidden keys
CN107920052B (zh) 一种加密方法及智能装置
CN104322003A (zh) 借助实时加密进行的密码认证和识别方法
EP2758922A2 (en) Securing transactions against cyberattacks
US8806216B2 (en) Implementation process for the use of cryptographic data of a user stored in a data base
Khan et al. Offline OTP based solution for secure internet banking access
KR20160063250A (ko) 카드 디바이스를 사용한 네트워크 인증 방법
US20150302506A1 (en) Method for Securing an Order or Purchase Operation Means of a Client Device
Nashwan et al. Mutual chain authentication protocol for SPAN transactions in Saudi Arabian banking
TWM551721U (zh) 配合一行動裝置實現的無密碼登入系統
TWI670618B (zh) 配合一行動裝置實現的無密碼登入系統及方法
Oliveira Dynamic QR codes for Ticketing Systems
Molla Mobile user authentication system (MUAS) for e-commerce applications.
JP2012212405A (ja) アプリケーション認証システム、アプリケーション認証方法およびプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant