CN106506143A - 一种动态密码生成方法及装置 - Google Patents

一种动态密码生成方法及装置 Download PDF

Info

Publication number
CN106506143A
CN106506143A CN201610857304.9A CN201610857304A CN106506143A CN 106506143 A CN106506143 A CN 106506143A CN 201610857304 A CN201610857304 A CN 201610857304A CN 106506143 A CN106506143 A CN 106506143A
Authority
CN
China
Prior art keywords
dynamic password
challenge code
information
module
generating means
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
Application number
CN201610857304.9A
Other languages
English (en)
Other versions
CN106506143B (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.)
Tendyron Corp
Tendyron Technology Co Ltd
Original Assignee
Tendyron Technology 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 Tendyron Technology Co Ltd filed Critical Tendyron Technology Co Ltd
Priority to CN201610857304.9A priority Critical patent/CN106506143B/zh
Publication of CN106506143A publication Critical patent/CN106506143A/zh
Application granted granted Critical
Publication of CN106506143B publication Critical patent/CN106506143B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1483Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords

Landscapes

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

Abstract

本发明公开了一种动态密码生成方法及装置,其中,动态密码生成方法包括:动态密码生成装置上电初始化;缓存接收到的挑战码;判断挑战码是否接收完成,若接收完成则查找预存的与挑战码生成算法相匹配的第一算法,并利用查找到的第一算法对挑战码进行处理;若不能得到交易信息,则结束动态密码生成流程;若得到交易信息,显示交易信息;接收到第一指示信息时,判断第一指示信息的类型,若为第一取消信息,则结束动态密码生成流程;若为第一确认信息,则查找预存的第二算法,并利用查找到的第二算法对至少包括挑战码的密码生成信息进行计算,生成动态密码,显示动态密码。

Description

一种动态密码生成方法及装置
技术领域
本发明涉及一种电子技术领域,尤其涉及一种动态密码生成方法及装置。
背景技术
为了解决基于静态密码的认证方式的安全问题,动态密码认证技术被广泛应用于网银、网游、电信运营商等认证场景中。而动态密码生成装置可以基于时间同步、事件同步、挑战/应答这三种方式,其中,基于挑战/应答的动态密码生成装置是应用最为普遍的。基于挑战/应答的动态密码生成装置根据输入的挑战码,通过内置算法生成一次有效的动态密码,将该动态密码作为网络交易、登录等密码。但是,现有的动态密码生成装置接收到挑战码后,直接根据挑战码生成动态密码,全程不需要用户人为干预,这样,在伪装成银行或电子商务网站的钓鱼网站的诱骗下,用户很可能将生成的动态密码直接反馈给钓鱼网站,导致用户财产安全的损失。
发明内容
本发明旨在至少解决上述问题之一。
本发明的主要目的在于提供一种动态密码生成方法;
本发明的另一目的在于提供一种动态密码生成装置。
为达到上述目的,本发明的技术方案具体是这样实现的:
本发明一方面提供了一种动态密码生成方法,包括:步骤S1,动态密码生成装置上电初始化;步骤S2,动态密码生成装置等待接收挑战码;其中,挑战码是由挑战码生成算法对交易信息进行处理生成的;动态密码生成装置接收到挑战码时,执行步骤S3;步骤S3,动态密码生成装置缓存接收到的挑战码;步骤S4,动态密码生成装置判断挑战码是否接收完成;若挑战码接收完成,则执行步骤S5;若挑战码没有接收完成,则返回步骤S2;步骤S5,动态密码生成装置查找预存的与挑战码生成算法相匹配的第一算法,并利用查找到的第一算法对挑战码的各个字符按照第一预设规则进行划分,得到若干个字符块,对若干个字符块进行处理,得到若干个字符块各自所表示的可识别的交易子信息项,交易信息由得到的若干个交易子信息项组成;若得到交易信息,则执行步骤S6;若不能得到交易信息,则结束动态密码生成流程;步骤S6,动态密码生成装置对处理得到的交易信息进行显示;步骤S7,动态密码生成装置等待接收第一指示信息;动态密码生成装置接收到第一指示信息时,执行步骤S8;步骤S8,动态密码生成装置判断第一指示信息的类型,若为第一确认信息,则执行步骤S9;若为第一取消信息,则结束动态密码生成流程;步骤S9,动态密码生成装置查找预存的第二算法,并利用查找到的第二算法对至少包括挑战码的密码生成信息进行计算,生成动态密码;步骤S10,动态密码生成装置显示动态密码。
此外,动态密码生成装置通过NFC方式、蓝牙方式、射频方式、USB通信方式、音频通信方式或者按键输入方式接收到挑战码。
此外,在动态密码生成装置判断挑战码接收完成后,方法还包括:步骤S11,动态密码生成装置显示挑战码;步骤S12,动态密码生成装置等待接收第二指示信息;动态密码生成装置接收到第二指示信息时,执行步骤S13;步骤S13,动态密码生成装置判断第二指示信息的类型,若为第二确认信息,则执行步骤S5;若为第二取消信息,则结束动态密码生成流程。
此外,步骤S5中,若不能得到交易信息,则结束动态密码生成流程,方法还包括:步骤S14,动态密码生成装置提示报错信息,执行步骤S15或步骤S16;步骤S15,动态密码生成装置等待接收第三取消信息;动态密码生成装置接收到第三取消信息时,返回步骤S2;步骤S16,动态密码生成装置开始计算指示时长,并判断指示时长是否达到预设时长;指示时长达到预设时长时,返回步骤S2。
此外,交易信息至少包括交易账号;动态密码生成装置存储有N个预设账号,其中,N为正整数;在动态密码生成装置得到交易信息后,方法还包括:步骤S17,动态密码生成装置获取交易账号,并判断交易账号是否与N个预设账号中的一个预设账号相同;若交易账号与N个预设账号均不相同,则提示第一提醒信息;若交易账号与N个预设账号中的一个预设账号相同,则提示第二提醒信息。
本发明另一方面还提供了一种动态密码生成装置,包括:上电初始化模块,用于动态密码生成装置上电初始化;第一接收模块,用于等待接收挑战码;其中,挑战码是由挑战码生成算法对交易信息进行处理生成的;缓存模块,用于第一接收模块接收到挑战码时,缓存接收到的挑战码;第一判断模块,用于判断挑战码是否接收完成;第一接收模块,还用于在第一判断模块判断挑战码没有接收完成的情况下,执行等待接收挑战码的流程;处理模块,用于在第一判断模块判断挑战码接收完成的情况下,查找预存的与挑战码生成算法相匹配的第一算法,并利用查找到的第一算法对挑战码的各个字符按照第一预设规则进行划分,得到若干个字符块,对若干个字符块进行处理,得到若干个字符块各自所表示的可识别的交易子信息项,交易信息由得到的若干个交易子信息项组成;结束流程模块,用于在处理模块不能得到交易信息的情况下,结束动态密码生成流程;显示模块,用于在处理模块得到交易信息的情况下,对处理得到的交易信息进行显示;第二接收模块,用于在显示模块对处理得到的交易信息进行显示后,等待接收第一指示信息;第二判断模块,用于第二接收模块接收到第一指示信息时,判断第一指示信息的类型;结束流程模块,还用于在第二判断模块判断第一指示信息为第一取消信息的情况下,结束动态密码生成流程;动态密码生成模块,用于在第二判断模块判断第一指示信息为第一确认信息的情况下,查找预存的第二算法,并利用查找到的第二算法对至少包括挑战码的密码生成信息进行计算,生成动态密码;显示模块,还用于显示动态密码。
此外,第一接收模块包括:NFC模块,用于通过NFC方式接收挑战码;或,蓝牙模块,用于通过蓝牙方式接收挑战码;或,射频模块,用于通过射频方式接收挑战码;或,USB接口模块,用于通过USB通信方式接收挑战码;或,音频接口模块,用于通过音频通信方式接收挑战码;或,按键模块,用于通过按键输入方式接收挑战码。
此外,显示模块,还用于在第一判断模块判断挑战码接收完成后,显示挑战码;第二接收模块,还用于在显示模块显示挑战码后,等待接收第二指示信息;第二判断模块,还用于第二接收模块接收到第二指示信息时,判断第二指示信息的类型;处理模块,还用于在第二判断模块判断第二指示信息为第二确认信息的情况下,执行对挑战码进行处理的流程;结束流程模块,还用于在第二判断模块判断第二指示信息为第二取消信息的情况下,结束动态密码生成流程。
此外,装置还包括:提示模块,用于在处理模块不能得到交易信息、结束流程模块结束动态密码生成流程后,提示报错信息;第二接收模块,还用于在提示模块提示报错信息后,等待接收第三取消信息;第一接收模块,还用于第二接收模块接收到第三取消信息时,执行等待接收挑战码的流程;或者,计算判断模块,用于在提示模块提示报错信息后,开始计算指示时长,并判断指示时长是否达到预设时长;第一接收模块,还用于计算判断模块判断指示时长达到预设时长的情况下,执行等待接收挑战码的流程。
此外,交易信息至少包括交易账号;装置还包括:存储模块,用于存储N个预设账号,其中,N为正整数;第三判断模块,用于在处理模块得到交易信息后,获取交易账号,并判断交易账号是否与N个预设账号中的一个预设账号相同;提示模块,还用于在交易账号与N个预设账号均不相同的情况下,提示第一提醒信息;在交易账号与N个预设账号中的一个预设账号相同的情况下,提示第二提醒信息。
由上述本发明提供的技术方案可以看出,本发明提供了一种动态密码生成方法及装置,在根据输入的挑战码计算动态密码之前,能使用户进行人为干预,根据第一指示信息来决定是否继续执行动态密码生成流程,便于发现异常交易行为,自始至终不会产生用于异常交易行为的动态密码,防止动态密码被非法使用而导致用户财产安全的损失。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1至图6为本发明实施例1提供的动态密码生成方法的流程图;
图7、图9至图12为本发明实施例2提供的动态密码生成装置的结构示意图;
图8为本发明实施例2提供的动态密码生成装置的第一接收模块的结构示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或数量或位置。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
下面将结合附图对本发明实施例作进一步地详细描述。
实施例1
本实施例提供了一种动态密码生成方法,图1为本实施例提供的动态密码生成方法的流程图,如图1所示,该方法主要包括以下步骤:
步骤S101,动态密码生成装置上电初始化;
在本实施例中,动态密码生成装置可以是动态令牌。动态密码生成装置上电初始化可以包括:动态密码生成装置上电,并对系统时钟、缓存区等进行初始化。
步骤S102,动态密码生成装置等待接收挑战码;其中,挑战码是由挑战码生成算法对交易信息进行处理生成的;动态密码生成装置接收到挑战码时,执行步骤S103;
在本实施例中,用户通过终端(例如:PC机、移动终端等)在网站上发起交易请求,对应的银行服务器接收到交易请求后,根据预设的挑战码生成算法对交易请求中的交易信息进行处理,得到挑战码。银行服务器可以通过以下方式之一,将生成的挑战码下发给用户:
方式一:用户在银行服务器端预留了电话号码或邮箱号,银行服务器可以通过手机短信、电子邮件等方式将挑战码下发给用户,或者拨打用户的电话,待接通后自动语音播放该挑战码;
方式二:银行服务器将生成的挑战码发送给用户进行交易的终端,终端将挑战码显示在交易网页上,例如,弹出显示有该挑战码的对话框,以提醒用户记录该挑战码;
在通过上述方式得知挑战码后,用户可以通过动态密码生成装置的按键输入装置手动输入该挑战码,其中,该按键输入装置可以是实体按键键盘,也可以是显示虚拟按键区域的触摸显示屏。
当然,为了简化用户操作,银行服务器生成的挑战码也可以不需要用户输入,而直接由进行交易的终端发送至动态密码生成装置,具体的,该终端可以通过有线方式(例如:USB接口、音频接口)或者无线方式(例如:NFC方式、蓝牙方式、射频方式、光通信方式等)发送该挑战码到动态密码生成装置。
步骤S103,动态密码生成装置缓存接收到的挑战码;
在本实施例中,动态密码生成装置将接收到的挑战码按顺序存储到挑战码缓存区中,可以加快后续的挑战码数据的读取速度。其中,当用户通过按键方式(例如:实体键盘、虚拟键盘)输入挑战码时,动态密码生成装置采集被用户触发的按键所对应的键值,将键值存储到挑战码缓存区中,并更新输入数据长度(例如,输入数据长度的初始值为0,用户每触发一次按键,输入数据长度加1);当终端发送包含挑战码的光信号时,动态密码生成装置将采集到的光信号转换为电信号,并对电信号进行解码,将解码后的数据存储到挑战码缓存区中;当动态密码生成装置通过其它有线或无线方式接收挑战码时,动态密码生成装置将接收的数据存储到挑战码缓存区中。
步骤S104,动态密码生成装置判断挑战码是否接收完成;若挑战码接收完成,则执行步骤S105;若挑战码没有接收完成,则返回步骤S102;
作为本实施例的一种可选实施方式,动态密码生成装置可以采用以下方式之一来判断挑战码是否接收完成:
方式一:动态密码生成装置判断输入数据长度是否达到预设长度,若达到预设长度,则表示挑战码接收完成,停止接收挑战码。例如,动态密码生成装置通过按键输入方式接收挑战码,当输入数据长度达到预设长度6时,如果用户继续按下按键,则动态密码生成装置不再获取对应的键值,也不会更新输入数据长度。
方式二:当动态密码生成装置接收到用于指示动态密码生成装置挑战码接收完成的第三确认信息(例如:用户按下确认键)时,停止接收挑战码。例如,用户通过按键输入方式输入挑战码,当用户按下确认键后,动态密码生成装置不再获取对应的键值,也不会更新输入数据长度。
方式三:动态密码生成装置从接收挑战码开始计算第一指示时长,并判断第一指示时长是否达到第一预设时长,如果达到第一预设时长,则表示挑战码接收完成,停止接收挑战码。例如,从动态密码生成装置接收挑战码开始计时,如果达到一定时间(例如2分钟),则认定挑战码接收完成。
方式四:动态密码生成装置检测挑战码中是否有结束标识,若检测到结束标识,则表示挑战码接收完成,停止接收挑战码。例如:动态密码生成装置通过无线或有线方式接收挑战码,当检测到接收的数据中存在结束标识时,则停止接收数据。
作为本实施例的一种可选实施方式,如图2所示,在步骤S104中动态密码生成装置判断挑战码接收完成后,所述方法还包括:
步骤S111,动态密码生成装置判断挑战码的数据格式是否符合预设格式;若数据格式符合预设格式,则执行步骤S105;若数据格式不符合预设格式,则结束动态密码生成流程,执行步骤S112;
步骤S111中,动态密码生成装置可以采用以下方式判断挑战码的数据格式是否符合预设格式:
方式一:动态密码生成装置判断挑战码的数据长度是否与预设长度相等,例如:预设长度为6,如果动态密码生成装置接收到的挑战码的数据长度也是6,则说明该挑战码的数据格式符合要求;如果挑战码的数据长度大于或小于6,则说明该挑战码的数据格式不符合要求;
方式二:动态密码生成装置判断挑战码包含的字符是否为预设字符,例如:预设字符为纯数字,如果动态密码生成装置接收到的挑战码也是纯数字,则说明该挑战码的数据格式符合要求;如果挑战码既包含数字又包含字母,则说明该挑战码的数据格式不符合要求。
动态密码生成装置可以采用上述方式之一或者结合两种方式来对挑战码的数据格式是否符合要求进行判断,对此本实施例不做具体限定。
步骤S112,动态密码生成装置提示第一报错信息,执行步骤S113或步骤S114;
步骤S112中,当挑战码不符合数据格式要求时,动态密码生成装置可以生成第一报错信息,例如“输入挑战码格式不正确”,并通过语音播放、显示屏显示等方式提示第一报错信息。
步骤S113,动态密码生成装置等待接收第四取消信息;动态密码生成装置接收到第四取消信息时,返回步骤S102;
步骤S113中,在动态密码生成装置提示第一报错信息后,用户可以按下动态密码生成装置的用于接收第四取消信息的按键(例如取消键),该第四取消信息指示动态密码生成装置返回上述步骤S102,继续等待接收挑战码。
步骤S114,动态密码生成装置开始计算第二指示时长,并判断第二指示时长是否达到第二预设时长;第二时长达到第二预设时长时,返回步骤S102。
步骤S114中,动态密码生成装置从提示第一报错信息开始计时,如果达到一定时间(例如30秒),则自动返回上述步骤S102,继续等待接收挑战码,可以避免用户长时间不指示动态密码生成装置工作的情况。
在本可选实施方式中,动态密码生成装置提示第一报错信息后,动态密码生成装置清除挑战码缓存区中的挑战码。
作为本实施例的一种可选实施方式,如图3、图4所示,在动态密码生成装置判断挑战码接收完成后,所述方法还包括:
步骤S115,动态密码生成装置显示挑战码;
在本可选实施方式中,动态密码生成装置可以在上述步骤S104中判断挑战码接收完成后直接执行步骤S115(如图3所示),也可以在上述步骤S111中判断挑战码的数据格式符合预设格式后再执行步骤S115(如图4所示),对此本实施例不做具体限定。
步骤S116,动态密码生成装置等待接收第二指示信息;动态密码生成装置接收到第二指示信息时,执行步骤S117;
步骤S117,动态密码生成装置判断第二指示信息的类型,若为第二确认信息,则执行步骤S105;若为第二取消信息,则结束动态密码生成流程。
在本可选实施方式中,动态密码生成装置在显示挑战码后,需要等待用户触发的第二指示信息才能继续工作,如果接收到的是第二确认信息(例如,用户触发确认键)时,则继续动态密码生成流程;如果接收到的是第二取消信息(例如,用户触发取消键)时,则结束动态密码生成流程,返回步骤S102,可选的,在结束动态密码生成流程后,动态密码生成装置清除挑战码缓存区中的挑战码。通过本可选实施方式,动态密码生成装置显示接收到的挑战码,便于用户核对挑战码是否正确,只有在用户确认正确后,动态密码生成装置才能继续执行动态密码生成流程,如果挑战码不正确,则直接结束动态密码生成流程,不会对错误的挑战码进行后续处理,重新等待接收挑战码,从而节省整个动态密码生成过程的时间。
步骤S105,动态密码生成装置查找预存的与挑战码生成算法相匹配的第一算法,并利用查找到的第一算法对挑战码的各个字符按照第一预设规则进行划分,得到若干个字符块,对若干个字符块进行处理,得到若干个字符块各自所表示的可识别的交易子信息项,交易信息由得到的若干个交易子信息项组成;若得到交易信息,则执行步骤S106;若不能得到交易信息,则结束动态密码生成流程;
在本实施例中,第一算法与挑战码生成算法采用对称算法或可逆算法。可选的,挑战码包括算法标识,动态密码生成装置可以根据该算法标识查找预存的与挑战码生成算法相匹配的第一算法。
在本实施例中,挑战码包含多个字符,动态密码生成装置按照第一预设规则将挑战码的各个字符划分成若干个字符块,并对每个字符块分别进行处理,得到各自对应的可识别的交易子信息项。例如,接收到的挑战码为Mike625841000,将挑战码的13个字符划分为Mike、62584、1000这3个字符块,这3个字符块依次表示用户名、交易账号和交易金额这3个交易子信息项,因此,对该挑战码进行处理得到的交易信息为:用户名Mike,交易账号62584,交易金额1000;或者,接收到的挑战码为0102003004,将挑战码的10个字符划分为01、02、003、004这4个字符块,这4个字符块依次为付款方、收款方、付款方账号、收款方账号这4个交易子信息项的索引码,根据索引码查找预先存储的用户交易信息列表,得到每个索引码所对应的用户交易信息,其中,01对应李五,02对应王六,003对应112233,004对应445566,因此,对该挑战码进行处理得到的交易信息为:付款方李五,收款方王六,付款方账号112233,收款方账号445566。
在本实施例中,如果挑战码是由钓鱼网站所在服务器生成的,其使用的挑战码生成算法与动态密码生成装置预存的第一算法很可能是不匹配的,因此,动态密码生成装置利用第一算法对该挑战码进行处理,会产生乱码,不能得到正常的交易信息。
作为本实施例的一种可选实施方式,如图5所示,若不能得到交易信息,则结束动态密码生成流程,所述方法还包括:
步骤S118,动态密码生成装置提示第二报错信息,执行步骤S119或步骤S120;
步骤S118中,当动态密码生成装置对接收的挑战码进行处理,无法得到交易信息时,动态密码生成装置生成第二报错信息,例如:“交易信息获取失败”,并可以通过语音播放、显示屏显示等方式提示第二报错信息,提醒用户挑战码处理失败;
步骤S119,动态密码生成装置等待接收第三取消信息;动态密码生成装置接收到第三取消信息时,返回步骤S102;
步骤S119中,在动态密码生成装置提示第二报错信息后,用户可以按下动态密码生成装置的用于接收第三取消信息的按键(例如取消键),该第三取消信息指示动态密码生成装置返回上述步骤S102,等待接收挑战码。
步骤S120,动态密码生成装置开始计算第三指示时长,并判断第三指示时长是否达到第三预设时长;第三指示时长达到第三预设时长时,返回步骤S102。
步骤S120中,动态密码生成装置从提示第二报错信息开始计时,如果达到一定时间(例如30秒),则自动返回上述步骤S102,继续等待接收挑战码,可以避免用户长时间不指示动态密码生成装置工作的情况。
作为本实施例的一种可选实施方式,在动态密码生成装置利用查找到的第一算法对挑战码进行处理后,无论能否得到交易信息,都可以清除挑战码缓存区中的挑战码。
步骤S106,动态密码生成装置对处理得到的交易信息进行显示;
在本实施例中,交易信息可以包含交易账号、交易金额、交易编号、用户名、当前定位信息中的一种或几种,对此本实施例不做具体限定。
作为本实施例的一种可选实施方式,交易信息至少包括交易账号;动态密码生成装置存储有N个预设账号,其中,N为正整数;如图6所示,在步骤S105的动态密码生成装置得到交易信息后,所述方法还包括:步骤S121,动态密码生成装置获取交易账号,并判断交易账号是否与N个预设账号中的一个预设账号相同;若交易账号与N个预设账号均不相同,则执行步骤S1211;若交易账号与N个预设账号中的一个预设账号相同,则执行步骤S1212;步骤S1211,提示第一提醒信息;步骤S1212,提示第二提醒信息。在本可选实施方式中,交易信息中的交易账号可以是交易双方的账号信息,也可以是任意交易一方的账号信息;动态密码生成装置本地存储有预设账号,该预设账号可以由用户预先输入到动态密码生成装置中;如果将交易信息中的交易账号与动态密码生成装置本地存储的预设账号进行比对,如果比对不一致,则说明该交易账号不是可信的交易账号,继续交易或存在风险,因此,动态密码生成装置除了显示交易信息外,还生成并提示第一提醒信息,例如,显示或语音播报“当前交易账号为不可信账号”等信息,以提醒用户注意交易安全,降低交易风险。当然,如果交易信息中的交易账号是N个预设账号中的一个,则认为是可信的交易账号,动态密码生成装置可以生成第二提醒信息,提示用户当前交易账号为可信的交易账号,无需用户自己去核对当前交易账号是否为可信的交易账号,方便用户操作。
作为本实施例的一种可选实施方式,交易信息至少包括当前定位信息;动态密码生成装置存储有预设的地理范围;如图6所示,在步骤S105的动态密码生成装置得到交易信息后,所述方法还包括:步骤S122,动态密码生成装置获取当前定位信息,并判断当前定位信息是否在预设的地理范围内;若当前定位信息不在预设的地理范围内,则执行步骤S1221;若当前定位信息在预设的地理范围内,则执行步骤S1222;步骤S1221,提示第三提醒信息;步骤S1222,提示第四提醒信息。在本可选实施方式中,用户可以在动态密码生成装置端预先设置常用地理位置,例如,预设的地理范围为北京市,假设当前定位信息为西湖,则该定位信息不在预设的地理范围内,说明当前交易不是在可信的地理位置进行的,继续交易或存在风险,因此,动态密码生成装置还生成并提示第三提醒信息,例如,显示或语音播报“当前交易位置不是常用地址”等信息,以提醒用户注意交易安全,降低交易风险。当然,如果当前定位信息在预设的地理范围内,例如,预设的地理范围为北京市,假设当前定位信息为西直门,动态密码生成装置也可以生成第四提醒信息,提示用户当前交易是在常用地址进行的,无需用户自己去核对当前定位信息是否在预设的地理范围内,方便用户操作。
在本实施例中,动态密码生成装置将待显示的交易信息转换为符合预设显示格式的交易信息,并显示转换后的交易信息。
步骤S107,动态密码生成装置等待接收第一指示信息;动态密码生成装置接收到第一指示信息时,执行步骤S108;
步骤S108,动态密码生成装置判断第一指示信息的类型,若为第一确认信息,则执行步骤S109;若为第一取消信息,则结束动态密码生成流程;
在本实施例中,动态密码生成装置在显示交易信息后,需要等待用户触发的第一指示信息才能继续工作,如果接收到的是第一确认信息(例如,用户触发确认键)时,则继续动态密码生成流程;如果接收到的是第一取消信息(例如,用户触发取消键)时,则结束动态密码生成流程,返回步骤S102。动态密码生成装置显示交易信息,便于用户核对交易信息是否正确,只有在用户确认正确后,动态密码生成装置才能继续执行动态密码生成流程,如果交易信息不正确,则直接结束动态密码生成流程,重新等待接收挑战码,从而节省整个动态密码生成过程的时间。
作为本实施例的一种可选实施方式,在动态密码生成装置判断第一指示信息的类型为第一确认信息后,动态密码生成装置存储与N个预设账号均不相同的交易账号,使其成为可信的交易账号,以便后续交易中动态密码生成装置获取到该交易账号时,能够直接判断其为可信账号,无需用户再去亲自核对该账号是否为可信的交易账号,方便用户操作。
作为本实施例的一种可选实施方式,在动态密码生成装置判断第一指示信息的类型为第一确认信息后,动态密码生成装置存储不在预设的地理范围内的当前定位信息,并记录当前定位信息的地理范围,以便后续交易中动态密码生成装置获取到该定位信息时,能够直接判断其为可信信息,无需用户自己去核对当前定位信息是否在预设的地理范围内,方便用户操作。
步骤S109,动态密码生成装置查找预存的第二算法,并利用查找到的第二算法对至少包括挑战码的密码生成信息进行计算,生成动态密码;
作为本实施例的一种可选实施方式,密码生成信息还包括种子密钥;动态密码生成装置利用查找到的第二算法对至少包括挑战码和种子密钥的密码生成信息进行杂凑运算,得到杂凑值,对杂凑值按照第二预设规则进行截取处理,将截取后的杂凑值作为动态密码。在本可选实施方式中,动态密码生成装置预先存储种子密钥,将挑战码和种子密钥进行拼接,得到密码生成信息,利用第二算法对密码生成信息进行杂凑运算,得到杂凑值,按照第二预设规则对杂凑值的一个或多个部分进行截取,将截取后的杂凑值作为动态密码。
作为本实施例的一种可选实施方式,密码生成信息还包括当前时间参数;动态密码生成装置利用第二算法对挑战码和当前时间参数进行计算,生成动态密码。采用本可选实施方式,即使动态密码生成装置接收的挑战码相同,其生成的动态密码也是不相同的,可以有效避免相同的挑战码生成相同的动态密码,保证动态密码的安全性;同时,在后续银行服务器认证动态密码时,银行服务器会根据当前时间参数和挑战码生成动态密码,将该动态密码与动态密码生成装置生成的动态密码进行对比,其中,当银行服务器与动态密码生成装置生成动态密码的当前时间的差值在预设值(例如5分钟)内,银行服务器的当前时间参数与动态密码生成装置的当前时间参数是相同的,在这种情况下,动态密码认证通过,因此,根据当前时间参数计算动态密码可以使动态密码具有一定的时效性,如果超过一定时间再输入动态密码则会导致认证失败,这样能够提高动态密码的安全性。
步骤S110,动态密码生成装置显示动态密码。
在本实施例中,动态密码生成装置将待显示的动态密码转换为符合预设显示格式的动态密码,并显示转换后的动态密码,以便用户查看,至此动态密码生成流程结束。
通过本实施例提供的动态密码生成方法,在根据输入的挑战码计算动态密码之前,能使用户进行人为干预,根据第一指示信息来决定是否继续执行动态密码生成流程,便于发现异常交易行为,自始至终不会产生用于异常交易行为的动态密码,防止动态密码被非法使用而导致用户财产安全的损失。
实施例2
本实施例提供了一种动态密码生成装置,图7为本实施例提供的动态密码生成装置的结构示意图,如图7所示,该动态密码生成装置主要包括:上电初始化模块201,用于动态密码生成装置上电初始化;第一接收模块202,用于等待接收挑战码;其中,挑战码是由挑战码生成算法对交易信息进行处理生成的;缓存模块203,用于第一接收模块202接收到挑战码时,缓存接收到的挑战码;第一判断模块204,用于判断挑战码是否接收完成;第一接收模块202,还用于在第一判断模块204判断挑战码没有接收完成的情况下,执行等待接收挑战码的流程;处理模块205,用于在第一判断模块204判断挑战码接收完成的情况下,查找预存的与挑战码生成算法相匹配的第一算法,并利用查找到的第一算法对挑战码的各个字符按照第一预设规则进行划分,得到若干个字符块,对若干个字符块进行处理,得到若干个字符块各自所表示的可识别的交易子信息项,交易信息由得到的若干个交易子信息项组成;结束流程模块206,用于在处理模块205不能得到交易信息的情况下,结束动态密码生成流程;显示模块207,用于在处理模块205得到交易信息的情况下,对处理得到的交易信息进行显示;第二接收模块208,用于在显示模块207对处理得到的交易信息进行显示后,等待接收第一指示信息;第二判断模块209,用于第二接收模块208接收到第一指示信息时,判断第一指示信息的类型;结束流程模块206,还用于在第二判断模块209判断第一指示信息为第一取消信息的情况下,结束动态密码生成流程;动态密码生成模块210,用于在第二判断模块209判断第一指示信息为第一确认信息的情况下,查找预存的第二算法,并利用查找到的第二算法对至少包括挑战码的密码生成信息进行计算,生成动态密码;显示模块207,还用于显示动态密码。
在本实施例中,动态密码生成装置可以是动态令牌。上电初始化模块201上电初始化可以包括:动态密码生成装置上电,并对系统时钟、缓存区等进行初始化。
作为本实施例的一种可选实施方式,如图8所示,第一接收模块202可以包括至少一种下述模块:NFC模块2021,用于通过NFC方式接收挑战码;蓝牙模块2022,用于通过蓝牙方式接收挑战码;射频模块2023,用于通过射频方式接收挑战码;USB接口模块2024,用于通过USB通信方式接收挑战码;音频接口模块2025,用于通过音频通信方式接收挑战码;光采集模块2026,用于通过光通信方式接收所述挑战码;按键模块2027,用于通过按键输入方式接收挑战码。
在本实施例中,用户通过终端(例如:PC机、移动终端等)在网站上发起交易请求,对应的银行服务器接收到交易请求后,根据预设的挑战码生成算法对交易请求中的交易信息进行处理,得到挑战码。银行服务器可以通过以下方式之一,将生成的挑战码下发给用户:
方式一:用户在银行服务器端预留了电话号码或邮箱号,银行服务器可以通过手机短信、电子邮件等方式将挑战码下发给用户,或者拨打用户的电话,待接通后自动语音播放该挑战码;
方式二:银行服务器将生成的挑战码发送给用户进行交易的终端,终端将挑战码显示在交易网页上,例如,弹出显示有该挑战码的对话框,以提醒用户记录该挑战码;
在通过上述方式得知挑战码后,用户可以通过动态密码生成装置的按键模块2027手动输入该挑战码,其中,该按键模块2027可以是实体按键键盘,也可以是显示虚拟按键区域的触摸显示屏。
当然,为了简化用户操作,银行服务器生成的挑战码也可以不需要用户输入,而直接由进行交易的终端发送至动态密码生成装置,具体的,该终端可以通过有线方式(例如:USB接口模块2024、音频接口模块2025)或者无线方式(例如:NFC模块2021、蓝牙模块2022、射频模块2023、光采集模块2026等)发送该挑战码到动态密码生成装置。
在本实施例中,动态密码生成装置将接收到的挑战码按顺序存储到挑战码缓存区中,可以加快后续的挑战码数据的读取速度。其中,当用户通过按键模块2027(例如:实体键盘、虚拟键盘)手动输入挑战码时,动态密码生成装置采集被用户触发的按键所对应的键值,将键值存储到挑战码缓存区中,并更新输入数据长度(例如,输入数据长度的初始值为0,用户每触发一次按键,输入数据长度加1);当终端发送包含挑战码的光信号时,动态密码生成装置将光采集模块2026采集到的光信号转换为电信号,并对电信号进行解码,将解码后的数据存储到挑战码缓存区中;当动态密码生成装置通过其它有线或无线方式接收挑战码时,动态密码生成装置将接收的数据存储到挑战码缓存区中。
作为本实施例的一种可选实施方式,第一判断模块204可以采用以下方式之一来判断挑战码是否接收完成:
方式一:动态密码生成装置判断输入数据长度是否达到预设长度,若达到预设长度,则表示挑战码接收完成,停止接收挑战码。例如,动态密码生成装置通过按键模块2027接收挑战码,当输入数据长度达到预设长度6时,如果用户继续按下按键,则动态密码生成装置不再获取对应的键值,也不会更新输入数据长度。
方式二:当动态密码生成装置接收到用于指示动态密码生成装置挑战码接收完成的第三确认信息(例如:用户按下确认键)时,停止接收挑战码。例如,用户通过按键输入方式输入挑战码,当用户按下确认键后,动态密码生成装置不再获取对应的键值,也不会更新输入数据长度。
方式三:动态密码生成装置从接收挑战码开始计算第一指示时长,并判断第一指示时长是否达到第一预设时长,如果达到第一预设时长,则表示挑战码接收完成,停止接收挑战码。例如,从动态密码生成装置接收挑战码开始计时,如果达到一定时间(例如2分钟),则认定挑战码接收完成。
方式四:动态密码生成装置检测挑战码中是否有结束标识,若检测到结束标识,则表示挑战码接收完成,停止接收挑战码。例如:动态密码生成装置通过无线或有线方式接收挑战码,当检测到接收的数据中存在结束标识时,则停止接收数据。
作为本实施例的一种可选实施方式,如图9所示,动态密码生成装置还包括:第四判断模块213,用于在第一判断模块204判断挑战码接收完成后,判断挑战码的数据格式是否符合预设格式;处理模块205,还用于在第四判断模块213判断数据格式符合预设格式的情况下,查找预存的与挑战码生成算法相匹配的第一算法,并利用查找到的第一算法对挑战码进行处理;结束流程模块206,还用于在第四判断模块213判断数据格式不符合预设格式的情况下,结束动态密码生成流程;提示模块211,用于在第四判断模块213判断数据格式不符合预设格式、结束流程模块206结束动态密码生成流程后,提示第一报错信息;第二接收模块208,还用于提示模块211提示第一报错信息后,等待接收第四取消信息;所述第一接收模块202,还用于第二接收模块208接收到第四取消信息时,执行等待接收挑战码的流程;或者计算判断模块212,用于提示模块211提示第一报错信息后,开始计算第二指示时长,并判断第二指示时长是否达到第二预设时长;第一接收模块202,还用于在计算判断模块212判断第二时长达到第二预设时长的情况下,执行等待接收挑战码的流程。
在本可选实施方式中,第四判断模块213可以采用以下方式判断挑战码的数据格式是否符合预设格式:
方式一:第四判断模块213判断挑战码的数据长度是否与预设长度相等,例如:预设长度为6,如果动态密码生成装置接收到的挑战码的数据长度也是6,则说明该挑战码的数据格式符合要求;如果挑战码的数据长度大于或小于6,则说明该挑战码的数据格式不符合要求;
方式二:第四判断模块213判断挑战码包含的字符是否为预设字符,例如:预设字符为纯数字,如果动态密码生成装置接收到的挑战码也是纯数字,则说明该挑战码的数据格式符合要求;如果挑战码既包含数字又包含字母,则说明该挑战码的数据格式不符合要求。
第四判断模块213可以采用上述方式之一或者结合两种方式来对挑战码的数据格式是否符合要求进行判断,对此本实施例不做具体限定。当挑战码不符合数据格式要求时,提示模块211可以生成第一报错信息,例如“输入挑战码格式不正确”,并通过语音播放、显示屏显示等方式提示第一报错信息。
在本可选实施方式中,在提示模块211提示第一报错信息后,用户可以按下动态密码生成装置的用于接收第四取消信息的按键(例如取消键),该第四取消信息指示第一接收模块202继续执行等待接收挑战码的流程;或者计算判断模块212从提示模块211提示第一报错信息开始计时,如果达到一定时间(例如30秒),则第一接收模块202继续执行等待接收挑战码的流程,可以避免用户长时间不指示动态密码生成装置工作的情况。
在本可选实施方式中,提示模块211提示第一报错信息后,动态密码生成装置清除挑战码缓存区中的挑战码。
作为本实施例的一种可选实施方式,如图10所示,显示模块207,还用于在第一判断模块204判断挑战码接收完成后,显示挑战码;第二接收模块208,还用于在显示模块207显示挑战码后,等待接收第二指示信息;第二判断模块209,还用于第二接收模块208接收到第二指示信息时,判断第二指示信息的类型;处理模块205,还用于在第二判断模块209判断第二指示信息为第二确认信息的情况下,执行对挑战码进行处理的流程;结束流程模块206,还用于在第二判断模块209判断第二指示信息为第二取消信息的情况下,结束动态密码生成流程。
在本可选实施方式中,显示模块207可以在第一判断模块204判断挑战码接收完成后直接显示挑战码,也可以在第四判断模块213判断挑战码的数据格式符合预设格式后再显示挑战码,对此本实施例不做具体限定。
在本可选实施方式中,显示模块207显示挑战码后,需要等待用户触发的第二指示信息才能继续工作,如果接收到的是第二确认信息(例如,用户触发确认键)时,则继续动态密码生成流程;如果接收到的是第二取消信息(例如,用户触发取消键)时,则结束动态密码生成流程,第一接收模块202继续等待接收挑战码,可选的,在结束动态密码生成流程后,动态密码生成装置清除挑战码缓存区中的挑战码。通过本可选实施方式,动态密码生成装置显示接收到的挑战码,便于用户核对挑战码是否正确,只有在用户确认正确后,动态密码生成装置才能继续执行动态密码生成流程,如果挑战码不正确,则直接结束动态密码生成流程,不会对错误的挑战码进行后续处理,重新等待接收挑战码,从而节省整个动态密码生成过程的时间。
在本实施例中,第一算法与挑战码生成算法采用对称算法或可逆算法。可选的,挑战码包括算法标识,处理模块205可以根据该算法标识查找预存的与挑战码生成算法相匹配的第一算法。
在本实施例中,挑战码包含多个字符,处理模块205按照第一预设规则将挑战码的各个字符划分成若干个字符块,并对每个字符块分别进行处理,得到各自对应的可识别的交易子信息项。例如,接收到的挑战码为Mike625841000,将挑战码的13个字符划分为Mike、62584、1000这3个字符块,这3个字符块依次表示用户名、交易账号和交易金额这3个交易子信息项,因此,对该挑战码进行处理得到的交易信息为:用户名Mike,交易账号62584,交易金额1000;或者,接收到的挑战码为0102003004,将挑战码的10个字符划分为01、02、003、004这4个字符块,这4个字符块依次为付款方、收款方、付款方账号、收款方账号这4个交易子信息项的索引码,根据索引码查找预先存储的用户交易信息列表,得到每个索引码所对应的用户交易信息,其中,01对应李五,02对应王六,003对应112233,004对应445566,因此,对该挑战码进行处理得到的交易信息为:付款方李五,收款方王六,付款方账号112233,收款方账号445566。
在本实施例中,如果挑战码是由钓鱼网站所在服务器生成的,其使用的挑战码生成算法与动态密码生成装置预存的第一算法很可能是不匹配的,因此,动态密码生成装置利用第一算法对该挑战码进行处理,会产生乱码,不能得到正常的交易信息。
作为本实施例的一种可选实施方式,提示模块211,还用于在处理模块205不能得到交易信息、结束流程模块206结束动态密码生成流程后,提示第二报错信息;第二接收模块208,还用于在提示模块211提示第二报错信息后,等待接收第三取消信息;第一接收模块202,还用于第二接收模块208接收到第三取消信息时,执行等待接收挑战码的流程;或者,计算判断模块212,还用于在提示模块211提示第二报错信息后,开始计算指示时长,并判断指示时长是否达到预设时长;第一接收模块202,还用于计算判断模块212判断指示时长达到预设时长的情况下,执行等待接收挑战码的流程。
在本可选实施方式中,当处理模块205对接收的挑战码进行处理,无法得到交易信息时,提示模块211生成第二报错信息,例如:“交易信息获取失败”,并可以通过语音播放、显示屏显示等方式提示第二报错信息,提醒用户挑战码处理失败。
在本可选实施方式中,在提示模块211提示第二报错信息后,用户可以按下动态密码生成装置的用于接收第三取消信息的按键(例如取消键),该第三取消信息指示第一接收模块202继续等待接收挑战码;或者,计算判断模块212从提示模块211提示第二报错信息开始计时,如果达到一定时间(例如30秒),则第一接收模块202继续等待接收挑战码,可以避免用户长时间不指示动态密码生成装置工作的情况。
作为本实施例的一种可选实施方式,在处理模块205利用查找到的第一算法对挑战码进行处理后,无论能否得到交易信息,都可以清除挑战码缓存区中的挑战码。
在本实施例中,交易信息可以包含交易账号、交易金额、交易编号、用户名、当前定位信息中的一种或几种,对此本实施例不做具体限定。
作为本实施例的一种可选实施方式,交易信息至少包括交易账号;如图11所示,动态密码生成装置还包括;存储模块215,用于存储N个预设账号,其中,N为正整数;第三判断模块214,用于在处理模块205对挑战码得到交易信息后,获取交易账号,并判断交易账号是否与N个预设账号中的一个预设账号相同;提示模块211,还用于在交易账号与N个预设账号均不相同的情况下,提示第一提醒信息;在交易账号与N个预设账号中的一个预设账号相同的情况下,提示第二提醒信息。在本可选实施方式中,交易信息中的交易账号可以是交易双方的账号信息,也可以是任意交易一方的账号信息;动态密码生成装置本地存储有预设账号,该预设账号可以由用户预先输入到动态密码生成装置中;如果将交易信息中的交易账号与动态密码生成装置本地存储的预设账号进行比对,如果比对不一致,则说明该交易账号不是可信的交易账号,继续交易或存在风险,因此,提示模块211生成并提示第一提醒信息,例如,显示或语音播报“当前交易账号为不可信账号”等信息,以提醒用户注意交易安全,降低交易风险。当然,如果交易信息中的交易账号是N个预设账号中的一个,则认为是可信的交易账号,提示模块211可以生成第二提醒信息,提示用户当前交易账号为可信的交易账号,无需用户自己去核对当前交易账号是否为可信的交易账号,方便用户操作。
作为本实施例的一种可选实施方式,交易信息至少包括当前定位信息;如图12所示,动态密码生成装置还包括;存储模块215,还用于存储预设的地理范围;第五判断模块216,用于在处理模块205得到交易信息后,获取当前定位信息,并判断当前定位信息是否在预设的地理范围内;提示模块211,还用于在第五判断模块216判断当前定位信息不在预设的地理范围内的情况下,提示第三提醒信息;在第五判断模块216判断当前定位信息在预设的地理范围内的情况下,提示第四提醒信息。在本可选实施方式中,用户可以在动态密码生成装置端预先设置常用地理位置,例如,预设的地理范围为北京市,假设当前定位信息为西湖,则该定位信息不在预设的地理范围内,说明当前交易不是在可信的地理位置进行的,继续交易或存在风险,因此,提示模块211生成并提示第三提醒信息,例如,显示或语音播报“当前交易位置不是常用地址”等信息,以提醒用户注意交易安全,降低交易风险。当然,如果当前定位信息在预设的地理范围内,例如,预设的地理范围为北京市,假设当前定位信息为西直门,提示模块211也可以生成第四提醒信息,提示用户当前交易是在常用地址进行的,无需用户自己去核对当前定位信息是否在预设的地理范围内,方便用户操作。
在本实施例中,动态密码生成装置将待显示的交易信息转换为符合预设显示格式的交易信息,并显示转换后的交易信息。
在本实施例中,动态密码生成装置在显示模块207显示交易信息后,需要等待用户触发的第一指示信息才能继续工作,如果接收到的是第一确认信息(例如,用户触发确认键)时,则继续动态密码生成流程;如果接收到的是第一取消信息(例如,用户触发取消键)时,则结束动态密码生成流程,第一接收模块202继续等待接收挑战码。动态密码生成装置显示交易信息,便于用户核对交易信息是否正确,只有在用户确认正确后,动态密码生成装置才能继续执行动态密码生成流程,如果交易信息不正确,则直接结束动态密码生成流程,重新等待接收挑战码,从而节省整个动态密码生成过程的时间。
作为本实施例的一种可选实施方式,在第二判断模块209判断第一指示信息的类型为第一确认信息后,存储模块215,还用于存储与N个预设账号均不相同的交易账号,使其成为可信的交易账号,以便后续交易中动态密码生成装置获取到该交易账号时,能够直接判断其为可信账号,无需用户再去亲自核对该账号是否为可信的交易账号,方便用户操作。
作为本实施例的一种可选实施方式,在第二判断模块209判断第一指示信息的类型为第一确认信息后,存储模块215,还用于存储不在预设的地理范围内的当前定位信息,并记录当前定位信息的地理范围,以便后续交易中动态密码生成装置获取到该定位信息时,能够直接判断其为可信信息,无需用户自己去核对当前定位信息是否在预设的地理范围内,方便用户操作。
作为本实施例的一种可选实施方式,密码生成信息还包括种子密钥;动态密码生成模块210利用查找到的第二算法对至少包括挑战码和种子密钥的密码生成信息进行杂凑运算,得到杂凑值,对杂凑值按照第二预设规则进行截取处理,将截取后的杂凑值作为动态密码。在本可选实施方式中,动态密码生成装置预先存储种子密钥,动态密码生成模块210将挑战码和种子密钥进行拼接,得到密码生成信息,利用第二算法对密码生成信息进行杂凑运算,得到杂凑值,按照第二预设规则对杂凑值的一个或多个部分进行截取,将截取后的杂凑值作为动态密码。
作为本实施例的一种可选实施方式,密码生成信息还包括当前时间参数;动态密码生成模块210利用第二算法对挑战码和当前时间参数进行计算,生成动态密码。采用本可选实施方式,即使动态密码生成装置接收的挑战码相同,其生成的动态密码也是不相同的,可以有效避免相同的挑战码生成相同的动态密码,保证动态密码的安全性;同时,在后续银行服务器认证动态密码时,银行服务器会根据当前时间参数和挑战码生成动态密码,将该动态密码与动态密码生成装置生成的动态密码进行对比,其中,当银行服务器与动态密码生成装置生成动态密码的当前时间的差值在预设值(例如5分钟)内,银行服务器的当前时间参数与动态密码生成装置的当前时间参数是相同的,在这种情况下,动态密码认证通过,因此,根据当前时间参数计算动态密码可以使动态密码具有一定的时效性,如果超过一定时间再输入动态密码则会导致认证失败,这样能够提高动态密码的安全性。
在本实施例中,动态密码生成装置将待显示的动态密码转换为符合预设显示格式的动态密码,并显示转换后的动态密码,以便用户查看,至此动态密码生成流程结束。
通过本实施例提供的动态密码生成装置,在根据输入的挑战码计算动态密码之前,能使用户进行人为干预,根据第一指示信息来决定是否继续执行动态密码生成流程,便于发现异常交易行为,自始至终不会产生用于异常交易行为的动态密码,防止动态密码被非法使用而导致用户财产安全的损失。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求及其等同限定。

Claims (10)

1.一种动态密码生成方法,其特征在于,包括:
步骤S1,动态密码生成装置上电初始化;
步骤S2,所述动态密码生成装置等待接收挑战码;其中,所述挑战码是由挑战码生成算法对交易信息进行处理生成的;
所述动态密码生成装置接收到所述挑战码时,执行步骤S3;
步骤S3,所述动态密码生成装置缓存接收到的所述挑战码;
步骤S4,所述动态密码生成装置判断所述挑战码是否接收完成;
若所述挑战码接收完成,则执行步骤S5;
若所述挑战码没有接收完成,则返回步骤S2;
步骤S5,所述动态密码生成装置查找预存的与所述挑战码生成算法相匹配的第一算法,并利用查找到的所述第一算法对所述挑战码的各个字符按照第一预设规则进行划分,得到若干个字符块,对所述若干个字符块进行处理,得到所述若干个字符块各自所表示的可识别的交易子信息项,所述交易信息由得到的若干个所述交易子信息项组成;
若得到所述交易信息,则执行步骤S6;
若不能得到所述交易信息,则结束动态密码生成流程;
步骤S6,所述动态密码生成装置对处理得到的所述交易信息进行显示;
步骤S7,所述动态密码生成装置等待接收第一指示信息;
所述动态密码生成装置接收到所述第一指示信息时,执行步骤S8;
步骤S8,所述动态密码生成装置判断所述第一指示信息的类型,若为第一确认信息,则执行步骤S9;若为第一取消信息,则结束动态密码生成流程;
步骤S9,所述动态密码生成装置查找预存的第二算法,并利用查找到的所述第二算法对至少包括所述挑战码的密码生成信息进行计算,生成动态密码;
步骤S10,所述动态密码生成装置显示所述动态密码。
2.根据权利要求1所述的方法,其特征在于:所述动态密码生成装置通过NFC方式、蓝牙方式、射频方式、USB通信方式、音频通信方式、光通信方式或者按键输入方式接收到所述挑战码。
3.根据权利要求1或2所述的方法,其特征在于,在所述动态密码生成装置判断所述挑战码接收完成后,所述方法还包括:
步骤S11,所述动态密码生成装置显示所述挑战码;
步骤S12,所述动态密码生成装置等待接收第二指示信息;
所述动态密码生成装置接收到所述第二指示信息时,执行步骤S13;
步骤S13,所述动态密码生成装置判断所述第二指示信息的类型,若为第二确认信息,则执行步骤S5;若为第二取消信息,则结束动态密码生成流程。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述步骤S5中,若不能得到所述交易信息,则结束动态密码生成流程,所述方法还包括:
步骤S14,所述动态密码生成装置提示报错信息,执行步骤S15或步骤516;
步骤S15,所述动态密码生成装置等待接收第三取消信息;所述动态密码生成装置接收到所述第三取消信息时,返回步骤S2;
步骤S16,所述动态密码生成装置开始计算指示时长,并判断所述指示时长是否达到预设时长;所述指示时长达到所述预设时长时,返回步骤S2。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述交易信息至少包括交易账号;所述动态密码生成装置存储有N个预设账号,其中,N为正整数;
在所述动态密码生成装置得到所述交易信息后,所述方法还包括:
步骤S17,所述动态密码生成装置获取所述交易账号,并判断所述交易账号是否与所述N个预设账号中的一个预设账号相同;
若所述交易账号与所述N个预设账号均不相同,则提示第一提醒信息;
若所述交易账号与所述N个预设账号中的一个预设账号相同,则提示第二提醒信息。
6.一种动态密码生成装置,其特征在于,包括:
上电初始化模块,用于动态密码生成装置上电初始化;
第一接收模块,用于等待接收挑战码;其中,所述挑战码是由挑战码生成算法对交易信息进行处理生成的;
缓存模块,用于所述第一接收模块接收到所述挑战码时,所述缓存接收到的所述挑战码;
第一判断模块,用于判断所述挑战码是否接收完成;
所述第一接收模块,还用于在所述第一判断模块判断所述挑战码没有接收完成的情况下,执行等待接收挑战码的流程;
所述处理模块,用于在所述第一判断模块判断所述挑战码接收完成的情况下,查找预存的与所述挑战码生成算法相匹配的第一算法,并利用查找到的所述第一算法对所述挑战码的各个字符按照第一预设规则进行划分,得到若干个字符块,对所述若干个字符块进行处理,得到所述若干个字符块各自所表示的可识别的交易子信息项,所述交易信息由得到的若干个所述交易子信息项组成;
结束流程模块,用于在所述处理模块不能得到所述交易信息的情况下,结束动态密码生成流程;
显示模块,用于在所述处理模块得到所述交易信息的情况下,对处理得到的所述交易信息进行显示;
第二接收模块,用于在所述显示模块对处理得到的所述交易信息进行显示后,等待接收第一指示信息;
第二判断模块,用于所述第二接收模块接收到所述第一指示信息时,判断所述第一指示信息的类型;
所述结束流程模块,还用于在所述第二判断模块判断所述第一指示信息为第一取消信息的情况下,结束动态密码生成流程;
动态密码生成模块,用于在所述第二判断模块判断所述第一指示信息为第一确认信息的情况下,查找预存的第二算法,并利用查找到的所述第二算法对至少包括所述挑战码的密码生成信息进行计算,生成动态密码;
所述显示模块,还用于显示所述动态密码。
7.根据权利要求6所述的装置,其特征在于:所述第一接收模块包括:
NFC模块,用于通过NFC方式接收所述挑战码;或,
蓝牙模块,用于通过蓝牙方式接收所述挑战码;或,
射频模块,用于通过射频方式接收所述挑战码;或,
USB接口模块,用于通过USB通信方式接收所述挑战码;或,
音频接口模块,用于通过音频通信方式接收所述挑战码;或,
光采集模块,用于通过光通信方式接收所述挑战码;或,
按键模块,用于通过按键输入方式接收所述挑战码。
8.根据权利要求6或7所述的装置,其特征在于:
所述显示模块,还用于在所述第一判断模块判断所述挑战码接收完成后,显示所述挑战码;
所述第二接收模块,还用于在所述显示模块显示所述挑战码后,等待接收第二指示信息;
所述第二判断模块,还用于所述第二接收模块接收到第二指示信息时,判断所述第二指示信息的类型;
所述处理模块,还用于在所述第二判断模块判断所述第二指示信息为第二确认信息的情况下,执行对所述挑战码进行处理的流程;
所述结束流程模块,还用于在所述第二判断模块判断所述第二指示信息为第二取消信息的情况下,结束动态密码生成流程。
9.根据权利要求6至8任一项所述的装置,其特征在于,所述装置还包括:
提示模块,用于在所述处理模块不能得到所述交易信息、所述结束流程模块结束动态密码生成流程后,提示报错信息;
所述第二接收模块,还用于在所述提示模块提示所述报错信息后,等待接收第三取消信息;
所述第一接收模块,还用于所述第二接收模块接收到所述第三取消信息时,执行等待接收挑战码的流程;或者,
计算判断模块,用于在所述提示模块提示所述报错信息后,开始计算指示时长,并判断所述指示时长是否达到预设时长;
所述第一接收模块,还用于所述计算判断模块判断所述指示时长达到所述预设时长的情况下,执行等待接收挑战码的流程。
10.根据权利要求6至9任一项所述的装置,其特征在于,所述交易信息至少包括交易账号;所述装置还包括:
存储模块,用于存储N个预设账号,其中,N为正整数;
第三判断模块,用于在所述处理模块得到所述交易信息后,获取所述交易账号,并判断所述交易账号是否与所述N个预设账号中的一个预设账号相同;
所述提示模块,还用于在所述交易账号与所述N个预设账号均不相同的情况下,提示第一提醒信息;在所述交易账号与所述N个预设账号中的一个预设账号相同的情况下,提示第二提醒信息。
CN201610857304.9A 2016-09-27 2016-09-27 一种动态密码生成方法及装置 Active CN106506143B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610857304.9A CN106506143B (zh) 2016-09-27 2016-09-27 一种动态密码生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610857304.9A CN106506143B (zh) 2016-09-27 2016-09-27 一种动态密码生成方法及装置

Publications (2)

Publication Number Publication Date
CN106506143A true CN106506143A (zh) 2017-03-15
CN106506143B CN106506143B (zh) 2019-10-22

Family

ID=58291257

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610857304.9A Active CN106506143B (zh) 2016-09-27 2016-09-27 一种动态密码生成方法及装置

Country Status (1)

Country Link
CN (1) CN106506143B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110012048A (zh) * 2018-11-22 2019-07-12 阿里巴巴集团控股有限公司 信息识别码生成方法、装置、电子设备及计算机存储介质
CN111352357A (zh) * 2018-12-21 2020-06-30 深圳市优必选科技有限公司 机器人的控制方法、装置及终端设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1937498A (zh) * 2006-10-09 2007-03-28 网之易信息技术(北京)有限公司 一种动态密码认证方法、系统及装置
CN102158488A (zh) * 2011-04-06 2011-08-17 北京天地融科技有限公司 动态口令生成方法及装置、认证方法及系统
CN102202300A (zh) * 2011-06-14 2011-09-28 上海众人网络安全技术有限公司 一种基于双通道的动态密码认证系统及方法
CN102664736A (zh) * 2012-04-13 2012-09-12 天地融科技股份有限公司 电子密码生成方法、装置和设备以及电子密码认证系统
CN102684880A (zh) * 2012-05-03 2012-09-19 林顺来 一种usb挑战应答令牌认证方法及系统
CN103023643A (zh) * 2012-11-22 2013-04-03 天地融科技股份有限公司 一种动态口令牌及动态口令生成方法
CN103078738A (zh) * 2012-11-22 2013-05-01 天地融科技股份有限公司 一种动态口令生成装置及转接头
CN103475479A (zh) * 2013-09-03 2013-12-25 天地融科技股份有限公司 智能密钥设备、移动终端以及动态口令的输出方法和系统
CN103475658A (zh) * 2011-04-06 2013-12-25 天地融科技股份有限公司 动态口令生成方法及装置、认证方法及系统
CN103475486A (zh) * 2013-09-22 2013-12-25 天地融科技股份有限公司 智能密钥设备、移动终端以及动态口令的输出方法和系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1937498A (zh) * 2006-10-09 2007-03-28 网之易信息技术(北京)有限公司 一种动态密码认证方法、系统及装置
CN102158488A (zh) * 2011-04-06 2011-08-17 北京天地融科技有限公司 动态口令生成方法及装置、认证方法及系统
CN103475658A (zh) * 2011-04-06 2013-12-25 天地融科技股份有限公司 动态口令生成方法及装置、认证方法及系统
CN102202300A (zh) * 2011-06-14 2011-09-28 上海众人网络安全技术有限公司 一种基于双通道的动态密码认证系统及方法
CN102664736A (zh) * 2012-04-13 2012-09-12 天地融科技股份有限公司 电子密码生成方法、装置和设备以及电子密码认证系统
CN102684880A (zh) * 2012-05-03 2012-09-19 林顺来 一种usb挑战应答令牌认证方法及系统
CN103023643A (zh) * 2012-11-22 2013-04-03 天地融科技股份有限公司 一种动态口令牌及动态口令生成方法
CN103078738A (zh) * 2012-11-22 2013-05-01 天地融科技股份有限公司 一种动态口令生成装置及转接头
CN103475479A (zh) * 2013-09-03 2013-12-25 天地融科技股份有限公司 智能密钥设备、移动终端以及动态口令的输出方法和系统
CN103475486A (zh) * 2013-09-22 2013-12-25 天地融科技股份有限公司 智能密钥设备、移动终端以及动态口令的输出方法和系统

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110012048A (zh) * 2018-11-22 2019-07-12 阿里巴巴集团控股有限公司 信息识别码生成方法、装置、电子设备及计算机存储介质
CN110012048B (zh) * 2018-11-22 2021-11-12 创新先进技术有限公司 信息识别码生成方法、装置、电子设备及计算机存储介质
CN111352357A (zh) * 2018-12-21 2020-06-30 深圳市优必选科技有限公司 机器人的控制方法、装置及终端设备
CN111352357B (zh) * 2018-12-21 2021-09-17 深圳市优必选科技有限公司 机器人的控制方法、装置及终端设备

Also Published As

Publication number Publication date
CN106506143B (zh) 2019-10-22

Similar Documents

Publication Publication Date Title
EP3230917B1 (en) System and method for enabling secure authentication
CN107862527A (zh) 一种支付方法、终端及服务器
EP2552142A1 (en) Authentication method and system using portable terminal
CN106534572A (zh) 信息显示方法、装置及终端
CN105656627B (zh) 身份验证方法、装置、系统、处理方法、设备及存储介质
CN107346397B (zh) 信息处理方法及相关产品
CN105827656B (zh) 基于nfc支付的身份认证方法及装置
CN206522020U (zh) 一种智能门锁及系统
CN103955643B (zh) 一种网银交易安全判断与提示方法及系统
ES2828706T3 (es) Autenticación de usuario de centro de contacto
CN106531154A (zh) 认证方法及装置
CN106469370A (zh) 一种交易方法、系统以及电子签名设备
CN106850969A (zh) 闹钟信息交互的方法、装置及服务器
CN105991654A (zh) 一种授权认证方法、装置和系统
Stanislav Two-factor authentication
CN106506143A (zh) 一种动态密码生成方法及装置
CN103200325A (zh) 用于移动终端的外围设备及与移动终端进行通信的方法
CN107391989A (zh) 消息处理方法、装置、终端及存储介质
CN104123512B (zh) 实现智能密钥设备模式间切换的方法和装置
CN109005102A (zh) 信息处理方法、装置以及电子装置
CN107358127B (zh) 一种合法芯片的识别方法及系统
CN106295472A (zh) 一种指纹模式应用方法及装置
CN107862192A (zh) 登录界面解锁方法、装置、计算机设备及存储介质
KR100582389B1 (ko) Rf 결제시 중간 이벤트를 차단하는 모바일 커머스무선통신 단말기 및 그 방법
CN106529319A (zh) 文件保护方法、装置及终端

Legal Events

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