CN110046490A - 一种验证码生成方法及装置 - Google Patents

一种验证码生成方法及装置 Download PDF

Info

Publication number
CN110046490A
CN110046490A CN201910167578.9A CN201910167578A CN110046490A CN 110046490 A CN110046490 A CN 110046490A CN 201910167578 A CN201910167578 A CN 201910167578A CN 110046490 A CN110046490 A CN 110046490A
Authority
CN
China
Prior art keywords
identifying code
rule
create
user information
available
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910167578.9A
Other languages
English (en)
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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co 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 CN201910167578.9A priority Critical patent/CN110046490A/zh
Publication of CN110046490A publication Critical patent/CN110046490A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation

Abstract

公开了一种验证码生成方法及装置。一种验证码生成方法,该方法包括:当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则;根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。

Description

一种验证码生成方法及装置
技术领域
本说明书实施例涉及互联网技术领域,尤其涉及一种验证码生成方法及装置。
背景技术
验证码(CAPTCHA,Completely Automated Public Turing test to tellComputers and Humans Apart,全自动区分计算机和人类的图灵测试)是一种区分用户是计算机还是人的公共全自动程序。目前用于区分人机的验证码大致有如下几类:1、输入式的图形验证码:通过用户输入图片中的字母、数字、汉字等进行验证(目前应用最广泛的验证码);2、行为验证码:要求用户将备选碎片直线滑动到正确位置;3、图标选择与行为辅助验证码:给出一组图片,按要求点击其中一张或多张,借用万物识别的难度阻挡计算机;4、点击式的图文验证与行为辅助验证码:通过文字提醒用户点击图片中相同字的位置进行验证。
但是现有的这几类验证码整体抗破解能力比较差,以应用程序A为例,黑客可以利用脚本登录应用程序A,应用程序A生成验证码并返回给脚本,该脚本将该验证码上传至打码平台,打码平台将该验证码分发给真实的人进行识别,打码平台将解码后的验证码内容返还给脚本,后续脚本可以成功登录应用程序A。由此可以看出这几类验证码整体抗破解能力比较差,打码平台可以将验证码分发给真实的人进行识别,这几类验证码都可以被正确的识别出来,无法避免恶意行为的发生。
发明内容
针对上述技术问题,本说明书实施例提供一种验证码生成方法及装置,技术方案如下:
一种验证码生成方法,该方法包括:
当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;
从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,其中所述验证码生成规则库中包含的验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息;
根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;
对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;
调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。
一种验证码生成装置,该装置包括:
用户信息确定模块,用于当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;
生成规则确定模块,用于从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,其中所述验证码生成规则库中包含的验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息;
生成规则筛选模块,用于根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;
生成规则解析模块,用于对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;
验证码生成模块,用于调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。
本说明书实施例所提供的技术方案,通过生成与用户信息相匹配的验证码,不仅可以达到人机识别的效果,而且还提高了验证码整体抗破解能力。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。
此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本说明书实施例的打码平台破解验证码的流程示意图;
图2是本说明书实施例的验证码生成方法的实施流程图;
图3是本说明书实施例的生成的输入式验证码示意图;
图4是本说明书实施例的生成的点击式验证码示意图;
图5是本说明书实施例的验证码生成装置的结构示意图;
图6是用于配置本说明书实施例装置的一种设备的结构示意图。
具体实施方式
随着计算机和计算机网络的日益普及,互联网已经深入到人们工作、学习和生活的各个领域。网络的发展在为人们提供便利的同时也带来各种挑战。一些人会利用计算机程序大量的、非正常的使用网络资源,例如群发垃圾邮件等,使服务器效能大为降低,也有人利用计算机程序不断发出服务请求回应,进行“饱和攻击”以达到使服务器瘫痪的目的,甚至还有人尝试利用暴力破解等手段进行恶意破解密码等行为。为避免上述恶意行为,设计一套能够让计算机自动分辨信息是来自用户还是计算机程序的工具,就显得尤为重要。使用验证码是现在比较常用的方式,验证码(CAPTCHA)是“Completely Automated PublicTuring test to tell Computers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机还是人的公共全自动程序。使用验证码可以避免上述恶意行为。
目前用于区分人机的验证码有这么几类:1、输入式的图形验证码:通过用户输入图片中的字母、数字、汉字等进行验证(目前应用最广泛的验证码);2、行为验证码:要求用户将备选碎片直线滑动到正确位置;3、图标选择与行为辅助验证码:给出一组图片,按要求点击其中一张或多张,借用万物识别的难度阻挡计算机程序;4、点击式的图文验证与行为辅助验证码:通过文字提醒用户点击图中相同字的位置进行验证。这几类验证码都是用于区分人和计算机程序的,但是现有的这几类验证码整体抗破解能力比较差。
以黑客利用脚本登录支付宝为例,如图1所示的一示例性打码平台破解验证码的流程示意图,由此可以看出这几类验证码整体抗破解能力比较差,打码平台可以将验证码分发给真实的人进行识别,这几类验证码都可以被正确的识别出来,无法避免恶意行为的发生。
针对上述技术问题,本说明书实施例提供一种技术方案,通过生成与用户信息相匹配的验证码,由于用户信息难于破解,因此所生成的验证码不仅可以达到人机识别的效果,而且还提高了验证码整体抗破解能力。
具体的,本说明书实施例提供的技术方案如下:
当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,其中所述验证码生成规则库中包含的验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息;根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。
为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。
如图2所示,为本说明书实施例验证码生成方法的实施流程图,该方法具体可以包括以下步骤:
S201,当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;
在本说明书中,当用户登陆某一应用程序客户端时,应用程序客户端上设置有验证码验证机制,后台服务端则会接收到验证码生成请求,该验证码生成请求可以由用户主动发出,也可以由客户端自动生成,本说明书对此不作限定。此时需要确定验证码生成请求针对的用户账户,继而确定用户账户下已注册的用户信息。其中该验证码生成请求中携带用户账户标识,由此可以确定验证码生成请求针对的用户账户。
该用户账户下已注册的用户信息为用户注册用户账号时所注册的用户信息,该用户信息可以是用户姓名、用户性别、用户年龄、用户手机号、用户出生年月日、用户籍贯、用户工作单位名称、用户工作单位地址等任意用户特有的信息,本说明书实施例对此不作限定。
例如,李三登陆王五的用户账户,当接收到验证码生成请求时,由验证码生成请求中携带的用户账户标识,可以确定该验证码生成请求针对的是王五的用户账户,继而确定该用户账户下已注册的用户信息为:用户姓名(王五)、用户年龄(30)、用户性别(男)、用户手机号(13550523888),后续可以生成与该用户账户、该验证码生成请求对应的验证码,假设李三为黑客,并不知晓王五的个人用户信息,后续在验证码验证阶段可以阻止李三登陆王五的用户账户。
S202,从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,其中所述验证码生成规则库中包含的验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息;
在本说明书中,预先生成验证码生成规则库,该验证码生成规则库中包含多个验证码生成规则,验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息,验证码生成规则库中验证码生成规则是根据用户信息的最大范围来编写的,其中验证码生成规则可以如下表1所示:
表1
如上述表1所示,验证码生成规则库中任一验证码生成规则,用于定义验证码生成类型以及验证码提示信息,其中验证码生成类型除上述所说的输入式图片验证码、点击式图片验证码之外,还包括其它验证码生成类型,例如行为验证码,具体验证码生成类型存在很多种,本说明书实施例在此不再一一赘述。
另外,验证码提示信息与用户信息相匹配,是根据用户信息最大范围来进行编写的,如表1所示的验证码提示信息“请输入注册手机号第2到第4位”,与用户手机号相匹配,验证码提示信息“请输入用户姓名首字母”,与用户姓名相匹配,验证码提示信息的具体表现形式本说明在此不作限定,可以根据用户信息随意组合进行编写。
针对S201中所确定的用户信息,从上述验证码生成规则库中,可以确定与所确定的用户信息相匹配的验证码生成规则。例如所确定的用户信息为:用户姓名(李三)、用户年龄(30)、用户性别(男)、用户手机号(13550523888),则可以确定与上述用户信息相匹配的验证码生成规则,如上述表1所示的规则1、规则2、规则3……。
由于根据一条用户信息也可以编写多条验证码生成规则,优选的,可以对所确定的用户信息进行筛选,以缩小验证码生成规则的可选范围,具体为:根据预设的用户信息筛选条件,从所确定的用户信息中筛选至少一条可用用户信息,从预设的验证码生成规则库中,确定与所述可用用户信息相匹配的验证码生成规则。一般情况下,根据预设的用户信息筛选条件,从所确定的用户信息中筛选一条可用用户信息即可,如此可以进一步缩小验证码生成规则的可选范围。其中用户信息筛选条件存在很多种,本说明书实施例对其中两种进行举例说明,对于其它用户信息筛选条件,本说明书实施例在此不再一一赘述。
其中一种用户信息筛选条件可以是用户信息优先级,预先为用户信息设置优先级,根据预设的用户信息优先级,从所确定的用户信息中筛选至少一条高优先级的可用用户信息,一般情况下筛选一条高优先级的可用用户信息即可。例如,用户手机号优先级最高,筛选的可用用户信息为用户手机号,则确定与用户手机号相匹配的验证码生成规则。
另外一种用户信息筛选条件可以是随机筛选,即从所确定的用户信息中随机筛选至少一条可用用户信息,一般情况下从所确定的用户信息中随机(或者轮询,具体实现方法存在很多种,本说明书实施例在此不再一一赘述)筛选一条可用用户信息即可。例如,从所确定的用户信息中随机筛选的一条可用用户信息为用户手机号,则确定与用户手机号相匹配的验证码生成规则。
S203,根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;
针对S202中所确定的验证码生成规则,可以根据一定的验证码生成规则筛选条件筛选至少一条可用验证码生成规则,一般情况下筛选一条可用验证码生成规则即可,但为了进一步提高安全等级,可以筛选两条或两条以上的可用验证码生成规则,方便后续生成两个或两个以上的验证码,组成联合验证,可以有效提高安全等级。
在本说明书中,验证码生成规则筛选条件存在很多种,本说明书实施例对其中几种进行举例说明,至于其它验证码生成规则筛选条件,本说明书实施例在此不再一一赘述。
其中一种验证码生成规则筛选条件可以是验证码生成类型优先级,预先为每个验证码生成类型设置优先级,根据预设的验证码类型优先级,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则。例如,点击式图片验证码优先级最高,则从所确定的验证码生成规则中筛选至少一条可用验证码生成规则,其中可用验证码生成规则中的验证码生成类型为点击式图片验证码。
另外一种验证码生成规则筛选条件可以是验证码提示信息优先级,预先为验证码提示信息设置优先级,根据预设的验证码提示信息优先级,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则。例如,上述用户手机号优先级最高,则相应的与用户手机号相匹配的这类验证码提示信息优先级最高,则从所确定的验证码生成规则中筛选至少一条可用验证码生成规则,其中可用验证码生成规则中的验证码提示信息与用户手机号匹配。
另外一种验证码生成规则筛选条件可以是验证码生成规则使用次数或使用频率,可以统计历史上每个验证码生成规则的使用次数,或者在某一段时间内计算每个验证码生成规则的使用频率,根据验证码生成规则使用次数或使用频率,从所确定的验证码生成规则中筛选至少一条使用次数或使用频率满足预设要求的可用验证码生成规则,这里满足预设要求可以是验证码生成规则使用次数或使用频率超过预设阈值。例如,根据验证码生成规则使用次数或使用频率,从所确定的验证码生成规则中筛选一条使用次数或者使用频率超过10的可用验证码生成规则。
另外一种验证码生成规则筛选条件可以是业务要求,根据当前业务场景需求,设置业务要求,即设置可以使用的验证码生成类型,或者根据安全等级需求,设置可以使用的验证码生成类型,根据预设的业务要求,从所确定的验证码生成规则中剔除不满足预设业务要求的验证码生成规则,从剩余验证码生成规则中随机或轮询筛选至少一条可用验证码生成规则。例如,根据安全等级要求,设置可以使用的验证码生成类型为点击式图片验证码,其它的验证码生产类型一概不用,则可以根据此业务要求,剔除不满足预设业务要求的验证码生成规则,从剩余验证码生成规则中随机或轮询筛选至少一条可用验证码生成规则,其中可用验证码生成规则中的验证码生产类型为点击式图片验证码。
值得注意的是,本说明书实施例对验证码生成规则筛选条件仅仅是举例说明,并不是限定验证码生成规则筛选条件的具体表现形式。
S204,对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;
针对S203中筛选出的可用验证码生成规则,可以从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息。一般情况下,针对S203中筛选的结果,筛选出一条可用验证码生成规则即可。
例如,筛选出的可用验证码生成规则为如表1所示的规则1,则解析出的可用验证码生产类型为输入式图片验证码,可用验证码提示信息为“请输入注册手机号第2到第4位”。
S205,调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。
在解析出可用验证码生成类型以及可用验证码提示信息之后,调用验证码生成器,该验证码生成器为传统验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息可以生成与所述用户账户、所述验证码生成请求对应的验证码,其中所生成的验证码会对文字做变形,并且印有水印,防止OCR识别,具体调用验证码生成器生成验证码的过程与现有技术类似,本说明书实施例在此不再一一赘述。
例如,解析出的可用验证码生产类型为输入式图片验证码,可用验证码提示信息为“请输入注册手机号第2到第4位”,则调用验证码生成器生成与所述用户账户、所述验证码生成请求对应的验证码,如图3所示,解析出的可用验证码生产类型为点击式图片验证码,可用验证码提示信息为“请点击注册手机号第2到第4位”,则调用验证码生成器生成与所述用户账户、所述验证码生成请求对应的验证码,如图4所示。
通过上述对本说明书实施例提供的技术方案的描述,通过生成与用户信息相匹配的验证码,由于用户信息难于破解,因此所生成的验证码不仅可以达到人机识别的效果,而且还提高了验证码整体抗破解能力。
与上述方法实施例相对应,本说明书实施例还提供一种验证码生成装置,如图5所示,该装置可以包括:用户信息确定模块510、生成规则确定模块520、生成规则筛选模块530、生成规则解析模块540、验证码生成模块550。
用户信息确定模块510,用于当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;
生成规则确定模块520,用于从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,其中所述验证码生成规则库中包含的验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息;
生成规则筛选模块530,用于根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;
生成规则解析模块540,用于对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;
验证码生成模块550,用于调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。
在本说明书的一种具体实施方式中,所述生成规则确定模块520具体包括:
用户信息筛选子模块521,用于根据预设的用户信息筛选条件,从所确定的用户信息中筛选至少一条可用用户信息;
生成规则确定子模块522,用于从预设的验证码生成规则库中,确定与所述可用用户信息相匹配的验证码生成规则。
在本说明书的一种具体实施方式中,所述用户信息筛选子模块521具体用于:
根据预设的用户信息优先级,从所确定的用户信息中筛选至少一条可用用户信息。
在本说明书的一种具体实施方式中,所述用户信息筛选子模块521具体用于:
从所确定的用户信息中随机筛选至少一条可用用户信息。
在本说明书的一种具体实施方式中,所述生成规则筛选模块530具体用于:
根据预设的验证码类型优先级,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则。
在本说明书的一种具体实施方式中,所述生成规则筛选模块530具体用于:
根据预设的验证码提示信息优先级,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则。
在本说明书的一种具体实施方式中,所述生成规则筛选模块530具体用于:
根据验证码生成规则使用次数或使用频率,从所确定的验证码生成规则中筛选至少一条使用次数或使用频率满足预设要求的可用验证码生成规则。
在本说明书的一种具体实施方式中,所述生成规则筛选模块530具体用于:
根据预设的业务要求,从所确定的验证码生成规则中剔除不满足预设业务要求的验证码生成规则;
从剩余验证码生成规则中随机筛选至少一条可用验证码生成规则。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
通过上述对本说明书实施例提供的技术方案的描述,通过生成与用户信息相匹配的验证码,由于用户信息难于破解,因此所生成的验证码不仅可以达到人机识别的效果,而且还提高了验证码整体抗破解能力。
本说明书实施例还提供一种计算机设备,如图6所示,该设备可以包括:处理器610、存储器620、输入/输出接口630、通信接口640和总线650。其中处理器610、存储器620、输入/输出接口630和通信接口640通过总线650实现彼此之间在设备内部的通信连接。
处理器610可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器620可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器620可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器620中,并由处理器610来调用执行。
输入/输出接口630用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口640用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线650包括一通路,在设备的各个组件(例如处理器610、存储器620、输入/输出接口630和通信接口640)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器610、存储器620、输入/输出接口630、通信接口640以及总线650,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现前述的验证码生成方法。该方法至少包括:
一种验证码生成方法,该方法包括:
当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;
从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,其中所述验证码生成规则库中包含的验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息;
根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;
对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;
调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书实施例可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书实施例各个实施例或者实施例的某些部分所述的方法。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,在实施本说明书实施例方案时可以把各模块的功能在同一个或多个软件和/或硬件中实现。也可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。

Claims (17)

1.一种验证码生成方法,该方法包括:
当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;
从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,其中所述验证码生成规则库中包含的验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息;
根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;
对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;
调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。
2.根据权利要求1所述的方法,所述从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,包括:
根据预设的用户信息筛选条件,从所确定的用户信息中筛选至少一条可用用户信息;
从预设的验证码生成规则库中,确定与所述可用用户信息相匹配的验证码生成规则。
3.根据权利要求2所述的方法,所述根据预设的用户信息筛选条件,从所确定的用户信息中筛选至少一条可用用户信息,包括:
根据预设的用户信息优先级,从所确定的用户信息中筛选至少一条可用用户信息。
4.根据权利要求2所述的方法,所述根据预设的用户信息筛选条件,从所确定的用户信息中筛选至少一条可用用户信息,包括:
从所确定的用户信息中随机筛选至少一条可用用户信息。
5.根据权利要求1所述的方法,所述根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则,包括:
根据预设的验证码类型优先级,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则。
6.根据权利要求1所述的方法,所述根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则,包括:
根据预设的验证码提示信息优先级,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则。
7.根据权利要求1所述的方法,所述根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则,包括:
根据验证码生成规则使用次数或使用频率,从所确定的验证码生成规则中筛选至少一条使用次数或使用频率满足预设要求的可用验证码生成规则。
8.根据权利要求1所述的方法,所述根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则,包括:
根据预设的业务要求,从所确定的验证码生成规则中剔除不满足预设业务要求的验证码生成规则;
从剩余验证码生成规则中随机筛选至少一条可用验证码生成规则。
9.一种验证码生成装置,该装置包括:
用户信息确定模块,用于当接收到验证码生成请求时,确定所述验证码生成请求针对的用户账户,确定所述用户账户下已注册的用户信息;
生成规则确定模块,用于从预设的验证码生成规则库中,确定与所确定的用户信息相匹配的验证码生成规则,其中所述验证码生成规则库中包含的验证码生成规则,用于定义验证码生成类型以及与用户信息相匹配的验证码提示信息;
生成规则筛选模块,用于根据预设的验证码生成规则筛选条件,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则;
生成规则解析模块,用于对于任一可用验证码生成规则,从可用验证码生成规则中解析出可用验证码生成类型以及可用验证码提示信息;
验证码生成模块,用于调用验证码生成器,根据所述可用验证码生成类型以及所述可用验证码提示信息生成与所述用户账户、所述验证码生成请求对应的验证码。
10.根据权利要求9所述的装置,所述生成规则确定模块具体包括:
用户信息筛选子模块,用于根据预设的用户信息筛选条件,从所确定的用户信息中筛选至少一条可用用户信息;
生成规则确定子模块,用于从预设的验证码生成规则库中,确定与所述可用用户信息相匹配的验证码生成规则。
11.根据权利要求10所述的装置,所述用户信息筛选子模块具体用于:
根据预设的用户信息优先级,从所确定的用户信息中筛选至少一条可用用户信息。
12.根据权利要求10所述的装置,所述用户信息筛选子模块具体用于:
从所确定的用户信息中随机筛选至少一条可用用户信息。
13.根据权利要求9所述的装置,所述生成规则筛选模块具体用于:
根据预设的验证码类型优先级,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则。
14.根据权利要求9所述的装置,所述生成规则筛选模块具体用于:
根据预设的验证码提示信息优先级,从所确定的验证码生成规则中筛选至少一条可用验证码生成规则。
15.根据权利要求9所述的装置,所述生成规则筛选模块具体用于:
根据验证码生成规则使用次数或使用频率,从所确定的验证码生成规则中筛选至少一条使用次数或使用频率满足预设要求的可用验证码生成规则。
16.根据权利要求9所述的装置,所述生成规则筛选模块具体用于:
根据预设的业务要求,从所确定的验证码生成规则中剔除不满足预设业务要求的验证码生成规则;
从剩余验证码生成规则中随机筛选至少一条可用验证码生成规则。
17.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1至8任一项所述的方法。
CN201910167578.9A 2019-03-06 2019-03-06 一种验证码生成方法及装置 Pending CN110046490A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910167578.9A CN110046490A (zh) 2019-03-06 2019-03-06 一种验证码生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910167578.9A CN110046490A (zh) 2019-03-06 2019-03-06 一种验证码生成方法及装置

Publications (1)

Publication Number Publication Date
CN110046490A true CN110046490A (zh) 2019-07-23

Family

ID=67274508

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910167578.9A Pending CN110046490A (zh) 2019-03-06 2019-03-06 一种验证码生成方法及装置

Country Status (1)

Country Link
CN (1) CN110046490A (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104917612A (zh) * 2014-03-14 2015-09-16 腾讯科技(深圳)有限公司 身份验证方法及装置
CN107742067A (zh) * 2016-10-31 2018-02-27 腾讯科技(深圳)有限公司 一种身份验证方法、装置和系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104917612A (zh) * 2014-03-14 2015-09-16 腾讯科技(深圳)有限公司 身份验证方法及装置
CN107742067A (zh) * 2016-10-31 2018-02-27 腾讯科技(深圳)有限公司 一种身份验证方法、装置和系统

Similar Documents

Publication Publication Date Title
US20180329703A1 (en) Method, apparatus and system for verifying code integrity on clients
CN104184587A (zh) 声纹生成方法、服务器、客户端及系统
US20190197639A1 (en) System, method, and program for managing contract
CN105262760A (zh) 一种防止恶意访问登录/注册接口的行为的方法和装置
CN108804908B (zh) 一种设备指纹生成方法、装置及计算设备
US10579837B2 (en) Method, device and electronic apparatus for testing capability of analyzing a two-dimensional code
CN113268336B (zh) 一种服务的获取方法、装置、设备以及可读介质
CN104793870A (zh) 数据分享方法和装置
CN104283682A (zh) 一种利用验证码进行校验的方法、装置及系统
CN107294999A (zh) 信息验证处理方法、装置、系统、客户端及服务器
CN105100029A (zh) 对用户进行身份验证的方法和装置
CN110324344A (zh) 账号信息认证的方法及装置
US10657326B2 (en) Removable spell checker device
CN106685945B (zh) 业务请求处理方法、业务办理号码的验证方法及其终端
CN108809896A (zh) 一种信息校验方法、装置和电子设备
CN111027065B (zh) 一种勒索病毒识别方法、装置、电子设备及存储介质
CN111062490B (zh) 一种包含隐私数据的网络数据的处理、识别方法及装置
CN110278241B (zh) 一种注册请求处理方法及装置
CN110046490A (zh) 一种验证码生成方法及装置
CN111382051A (zh) 一种api自动测试方法及测试装置
CN112395194B (zh) 一种接入测试平台的方法和装置
CN112182520B (zh) 非法账号的识别方法、装置、可读介质及电子设备
TWI665622B (zh) 充值提示方法和充值提示裝置
CN113873450A (zh) 短信配置方法、装置、计算机设备和存储介质
CN109543398B (zh) 一种应用程序账户迁移方法、装置和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20200925

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.