CN114465762A - 一种基于语境的验证码生成方法、装置及存储介质 - Google Patents
一种基于语境的验证码生成方法、装置及存储介质 Download PDFInfo
- Publication number
- CN114465762A CN114465762A CN202111600226.1A CN202111600226A CN114465762A CN 114465762 A CN114465762 A CN 114465762A CN 202111600226 A CN202111600226 A CN 202111600226A CN 114465762 A CN114465762 A CN 114465762A
- Authority
- CN
- China
- Prior art keywords
- chinese character
- verification
- sentence
- character set
- chinese
- 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
Links
- 238000012795 verification Methods 0.000 title claims abstract description 296
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000003860 storage Methods 0.000 title claims abstract description 20
- 238000004590 computer program Methods 0.000 claims description 9
- 238000000605 extraction Methods 0.000 claims description 6
- 230000002452 interceptive effect Effects 0.000 claims description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 16
- 238000005336 cracking Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 6
- 230000004438 eyesight Effects 0.000 description 4
- 208000006992 Color Vision Defects Diseases 0.000 description 3
- 201000007254 color blindness Diseases 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 201000000761 achromatopsia Diseases 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 201000009487 Amblyopia Diseases 0.000 description 1
- 241000590419 Polygonia interrogationis Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000003973 irrigation Methods 0.000 description 1
- 230000002262 irrigation Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/211—Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/18—Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Document Processing Apparatus (AREA)
Abstract
本发明提供了一种基于语境的验证码生成方法、装置及存储介质,该方法包括步骤:从预设的句子库中随机选择一条句子作为验证句子,随机选择验证句子中的至少一个汉字作为验证汉字,所有验证汉字组成验证汉字集,并将验证句子中的各个验证汉字替换为待填空的提示符号,获得替换后的验证句子;从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对验证汉字集和干扰汉字集进行合并处理和去重处理,生成待选汉字集;从预设的图片库中随机选择一张图片作为目标图片,基于目标图片,根据替换后的验证句子和待选汉字集中的各个汉字生成验证码。本发明能够有效降低人工智能对验证码的破解概率,提高了验证用户身份时的安全性。
Description
技术领域
本发明涉及用户验证技术领域,具体而言,涉及一种基于语境的验证码生成方法、装置及存储介质。
背景技术
在用户注册账号和登录网站等特定场景,存在恶意破解密码、刷票和论坛灌水等现象,例如通过暴力破解方式对目标账户进行不断的登陆尝试,利用爬虫恶意爬取网站信息等,其会造成信息泄漏和利益损失等。验证码是一种区分用户是计算机还是人的公共全自动程序,能够有效避免网站防止刷票、论坛灌水、暴力破解和爬虫恶意或高频请求等,是目前大多数网站验证用户身份的常用手段。
目前,常用的验证码种类包括手机短信验证码、手机语音验证码和文字点选验证码等。其中,手机短信验证码和手机语音验证码需要开发者向移动网络运营商支付相关费用,成本较高;文字点选验证码指的是:在一张底图上放置多个文字和提示语,提示语类似于“请按顺序点击【某,某,某】”,但是,由于现在的人工智能算法对于文字的识别准确率很高,而提示语中提示了文字的点击顺序,使得文字点选验证码容易被人工智能算法破解,难以有效验证用户身份。综上所述,现有验证码用于验证用户身份时存在安全性较差的问题。
发明内容
本发明解决的问题是如何提高采用验证码验证用户身份时的安全性。
为解决上述问题,本发明提供一种基于语境的验证码生成方法、装置及存储介质。
第一方面,本发明提供一种基于语境的验证码生成方法,包括:
从预设的句子库中随机选择一条句子作为验证句子,随机选择所述验证句子中的至少一个汉字作为验证汉字,所有所述验证汉字组成验证汉字集,并将所述验证句子中的各个所述验证汉字替换为待填空的提示符号,获得替换后的验证句子;
从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对所述验证汉字集和所述干扰汉字集进行合并处理和去重处理,生成待选汉字集;
从预设的图片库中随机选择一张图片作为目标图片,基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码。
在本发明中,从预设的句子库中随机选择一条句子作为验证句子,再随机从验证句子中选择至少一个验证汉字,并将其替换为待填空的提示符号,该提示符号用于提示用户选择最符合替换后的验证句子语境的汉字对该位置进行填空。多个验证汉字构成验证汉字集,从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对验证汉字集和干扰汉字中的所有汉字进行合并和去重,避免生成的待选汉字集中包括多个相同汉字,对用户根据验证码验证身份时形成干扰。最后,基于从图片库中随机选择的目标图片,根据替换后的验证句子和待选汉字集的各个汉字生成验证码,例如将替换后的验证句子和待选汉字集中的各个汉字添加到目标图片上。本发明选择的验证汉字在验证句子中存在一定的中文语境关系,对于人工智能算法较为死板的文字识别能力来说,无法准确识别中文语境,能够有效降低人工智能对验证码的破解概率,提高了验证用户身份时的安全性。
进一步地,所述根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码之前,还包括:
确定所述待选汉字集中的汉字数量,并将所述汉字数量与预设数量进行对比,根据对比结果判断是否继续生成所述验证码。
进一步地,所述根据对比结果判断是否继续生成验证码,具体包括:
若所述汉字数量小于所述预设数量,则重新从所述汉字库中再选择至少一个汉字以更新所述干扰汉字集,对所述验证汉字集和更新后的干扰汉字集进行合并处理和去重处理,直至生成的所述待选汉字集中的所述汉字数量达到所述预设数量,则继续生成所述验证码;
若所述待选汉字数量不小于所述预设数量,则继续生成所述验证码。
进一步地,所述基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码包括:
将所述替换后的验证句子和所述待选汉字集中的各个汉字添加到所述目标图片上,生成所述验证码;其中,所述替换后的验证句子和所述待选汉字集中的各个汉字在所述目标图片上的位置随机。
进一步地,所述基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码包括:
随机选择所述待选汉字集中的至少一个汉字为待处理汉字,确定各个所述待处理汉字的第一拼音;
将所述替换后的验证句子、所述待处理汉字的第一拼音和所述待选汉字集中除所述待处理汉字以外的其它汉字,添加到所述目标图片上,生成所述验证码。
进一步地,所述从预设的汉字库中选择至少一个汉字以生成干扰汉字集包括:
确定各个所述验证汉字的第二拼音;
根据所述第二拼音在所述汉字库中选择至少一个对应的汉字,以生成所述干扰汉字集。
进一步地,本发明基于语境的验证码生成方法还包括:
在所述目标图片上添加提示信息,所述提示信息用于提示用户选择最符合所述替换后的验证句子语境的汉字和/或所述第一拼音。
第二方面,本发明还提出了一种基于语境的验证码生成装置,包括:
抽取模块,用于从预设的句子库中随机选择一条句子作为验证句子,随机选择所述验证句子中的至少一个汉字作为验证汉字,所有所述验证汉字组成验证汉字集,并将所述验证句子中的各个所述验证汉字替换为待填空的提示符号,获得替换后的验证句子;从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对所述验证汉字集和所述干扰汉字集进行合并处理和去重处理,生成待选汉字集;
处理模块,用于从预设的图片库中随机选择一张图片作为目标图片,基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码。
本发明所述的基于语境的验证码生成装置与上述基于语境的验证码生成方法的有益效果相近似,在此不再进行赘述。
第三方面,本发明还提出了一种电子设备,包括存储有计算机程序的计算机可读存储介质和处理器,所述计算机程序被所述处理器读取并运行时,实现如第一方面任一项所述的基于语境的验证码生成方法。
本发明所述电子设备的与上述基于语境的验证码生成装置及基于语境的验证码生成方法的有益效果相近似,在此不再进行赘述。
第四方面,本发明还提出了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被处理器执行时,实现如第一方面任一项所述的基于语境的验证码生成方法。
本发明所述的计算机可读存储介质与上述基于语境的验证码生成方法的有益效果相近似,在此不再进行赘述。
附图说明
图1为本发明实施例中的基于语境的验证码生成方法的流程图;
图2为本发明实施例中基于语境的验证码生成方法所生成的一种验证码的示意图;
图3为本发明实施例的中基于语境的验证码生成方法所生成的另一种验证码的示意图;
图4为本发明实施例的基于语境的验证码生成装置的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。应当理解,本发明的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”;术语“可选地”表示“可选的实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本发明中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
现有技术中,为了提高采用验证码验证用户身份时的安全性,常对验证码中的底图进行复杂化处理,使得底图上具有复杂纹理或干扰特征,例如在底图上添加各种起干扰作用的线条、色彩或采用具有复杂场景的图片,以降低人工智能算法识别验证码中汉字的准确率,但是这种验证码对视力不好的用户体验不佳,色盲和色弱等视力不好的用户同样难以准确识别验证码中的汉字。
参照图1所示,本发明实施例提供了一种基于语境的验证码生成方法,包括:
从预设的句子库中随机选择一条句子作为验证句子,随机选择所述验证句子中的至少一个汉字作为验证汉字,所有所述验证汉字组成验证汉字集,并将所述验证句子中的各个所述验证汉字替换为待填空的提示符号,获得替换后的验证句子;
从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对所述验证汉字集和所述干扰汉字集进行合并处理和去重处理,生成待选汉字集;
从预设的图片库中随机选择一张图片作为目标图片,基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码。
本发明基于语境的验证码生成方法,主要用于生成点选式验证码,验证码上包括验证句子和待选汉字,验证句子和待选汉字以不规则位置添加在目标图片上,生成验证码,进行对用户身份的验证。
具体地,预设的句子库中存有多条常用句子,从句子库中随机选择一条句子,将此句子作为验证句子,随机选择验证句子中的至少一个汉字,构成验证汉字集,采用随机选择的验证句子中至少一个汉字作为验证汉字,使验证汉字在验证句子中存在一定的中文语境关系,可以有效防止人工智能对验证码的识别破解,将验证句子中所选择的验证汉字位置替换为待填空的提示符号,提示用户此处为验证汉字,便于用户进行验证,例如,参照图2进行说明,从预设的句子库中选择一条句子“他是一个非常和蔼的老人”作为验证句子,从此句子中随机选择两个汉字“非”和“和”作为验证汉字,生成验证汉字集“非、和”,并将验证句子中所选择的验证汉字位置替换为提示符号,获得替换后的验证句子“他是一个()常()蔼的老人”。
预设的汉字库中存有多个常用汉字,从汉字库中选择至少一个常用汉字作为干扰汉字,生成干扰汉字集,对上述验证汉字集和干扰汉字集进行去重处理和合并处理,去除干扰汉字集中与验证汉字集中重复的汉字,并将剩余的汉字进行合并,生成待选汉字集,例如,从预设的汉字库中选择多个汉字并生成干扰汉字集“非、常、怒、优、无”,将上述验证汉字集“非、和”与干扰汉字集进行去重处理,删除干扰汉字集中重复的“非”字,并对剩余的汉字进行合并处理,获得待选汉字集“非、常、怒、优、无、和”。
随机选择一张图片作为点选式验证码的底图,即目标图片,将上述替换后的验证句子和待选汉字集中的各个汉字添加至底图上,例如图2所示,生成完整的点选式验证码,有助于用户进行验证。
其中,验证句子中替换验证汉字的提示符号为能够指示该位置为待填空位置的符号,包括括号、空格和问号等,例如“他是一个()常()蔼的老人”、“他是一个常蔼的老人”或“他是一个?常?蔼的老人”,均可提示用户此处为待选汉字,进行验证码验证。
在本发明中,从预设的句子库中随机选择一条句子作为验证句子,再随机从验证句子中选择至少一个验证汉字,并将其替换为待填空的提示符号,该提示符号用于提示用户选择最符合替换后的验证句子语境的汉字对该位置进行填空。多个验证汉字构成验证汉字集,从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对验证汉字集和干扰汉字中的所有汉字进行合并和去重,避免生成的待选汉字集中包括多个相同汉字,对用户根据验证码验证身份时形成干扰。最后,基于从图片库中随机选择的目标图片,根据替换后的验证句子和待选汉字集的各个汉字生成验证码,例如将替换后的验证句子和待选汉字集中的各个汉字添加到目标图片上。本发明选择的验证汉字在验证句子中存在一定的中文语境关系,对于人工智能算法较为死板的文字识别能力来说,无法准确识别中文语境,能够有效降低人工智能对验证码的破解概率,提高了验证用户身份时的安全性。
相较于现有技术中在底图上增加复杂纹理或干扰特征,本发明的技术方案不需要对底图进行复杂化处理,通过验证句子的语境关系来验证用户身份,在提高用户身份验证安全性的同时,提高了对色盲和色弱等视力不好的用户的友好度。
另外地,生成验证码之前,可预先建立支持验证码生成的内容库,内容库包括句子库、汉字库和图片库。
收集多条不同的中文短句,并对多条短句进行对比,去除相似度较大的短句,并将剩余句子保存进句子库,用于为本发明实施例基于语境的验证码生成方法提供所需句子;收集多个不同的常用汉字,将常用汉字保存进汉字库中,同时获取句子库中每条句子所应用的汉字,将这些汉字进行去重处理,并保存进汉字库,用于为本发明实施例基于语境的验证码生成方法提供所需的验证汉字和干扰汉字,保证验证码在生成时的汉字需求,采用常用句子和常用汉字可以便于用户进行验证码的识别;获取多张不同的照片,并构建图片库,该图片库可为验证码的生成提供底图,其中验证句子和待选汉字均添加至底图上,在美化点选式验证码的同时,也增加了点选式验证码的完整度,使其成为一个整体,更便于用户进行验证。
进一步地,在所述根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码之前,还包括:
确定所述待选汉字集中的汉字数量,并将所述汉字数量与预设数量进行对比,根据对比结果判断是否继续生成所述验证码。
设置待选汉字的预设数量,在形成待选汉字集后,若继续生成验证码,需对待选汉字集中的待选汉字数量进行检测,并将检测所得结果与预设数量进行比较,根据待选汉字数量与预设数量的对比结果判断是否继续生成验证码。
若待选汉字数量小于所述预设数量,则重新选择至少一个汉字作为干扰汉字,对原有干扰汉字集进行更新,对验证汉字集和干扰汉字集进行去重处理和合并处理,重新构建待选汉字集;假设预设数量为6,经检测,待选汉字集中待选汉字数量为5个,经比较,5<6,即待选汉字数量小于预设数量,则不能继续生成验证码,需重新完成选择干扰汉字步骤,更新原有干扰汉字集,将干扰汉字集和验证汉字集进行去重处理和合并处理,生成新的待选汉字集,随后重复检测待选汉字数量步骤,对待选汉字集中汉字数量进行检测并与预设数量进行比较,直至待选汉字数量达到预设数量,方可继续生成验证码。
若所述待选汉字数量不小于所述预设数量,则在所述目标图片上添加所述替换后的验证句子和所述待选汉字集中的所有汉字,生成所述验证码;假设假设预设数量为6,经检测,待选汉字集中待选汉字数量为7个,经比较,6<7,即待选汉字数量不小于预设数量,则可以继续进行选择底图步骤,完成验证码的生成。
点选式验证码的待选汉字数量与验证码的安全性有着巨大的关系,人工智能通过识别汉字对验证码进行破解,当待选汉字数量较少时,该点选式验证码被人工智能破解的概率较大,验证码安全性较低,而当待选汉字数量大于或等于一定数量时(即预设数量),该点选式验证码被人工智能破解的概率较小,验证码安全性较高;在本发明中,完成待选汉字集的构建后,增加对待选汉字集中待选汉字数量的检测步骤及与预设数量对比步骤,进而判断待选汉字数量是否达到验证码安全要求,若未达到,则重新生成待选汉字集,直至达到验证码安全标准,本发明实施例使点选式验证码在生成之时做到了自检功能,实时检测验证码是否存在安全隐患,并及时处理,有效提高了点选式验证码的安全性,降低了人工智能对验证码的破解概率。
进一步地,所述基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码包括:
将所述替换后的验证句子和所述待选汉字集中的各个汉字添加到所述目标图片上,生成所述验证码;其中,所述替换后的验证句子和所述待选汉字集中的各个汉字在所述目标图片上的位置随机。
具体地,随机选择一张目标图片作为点选式验证码的底图,将上述验证句子和待选汉字集中的每个待选汉字添加至底图上,如图2所示,且验证句子和待选汉字集中的每个汉字在底图上的位置均为随机分布,及每一个汉字在地图上的坐标均不同,为随机分配,可以有效避免人工智能通过坐标识别汉字分布规律进而推测出正确汉字,破解验证码,提高了点选式验证码的验证难度,增加了安全性,同时,现有技术对验证码中的底图进行复杂化处理,使得底图上具有复杂纹理或干扰特征,增加验证码难度,而本发明实施例未对底图进行复杂化处理,而是此采用随机分配待选汉字位置的方法增加验证码的验证难度,在视觉上使点选式验证码更加清晰,为色弱或色盲等视力不好的用户提供便利。
可选地,在本实例中,采用文字与拼音相结合的方式进行验证,具体包括:随机选择所述待选汉字集中的至少一个汉字为待处理汉字,确定各个所述待处理汉字的第一拼音;将所述替换后的验证句子、所述待处理汉字的第一拼音和所述待选汉字集中除所述待处理汉字以外的其它汉字,添加到所述目标图片上,生成所述验证码。
具体地,根据待选汉字集,从待选汉字集中随机选择至少一个汉字作为待处理汉字,获取待处理汉字的第一拼音,第一拼音可为带有音调的拼音,也可为不带音调的拼音,并将替换后的验证句子、待处理汉字的第一拼音和其他待选汉字添加至目标图片上生成完整的点选式验证码,如图3所示,抽取待选汉字集“非、飞、怒、合、无、和”中的“怒”字作为待处理汉字,获取其拼音“nù”,将验证句子、“nù”和剩余待选汉字“非”、“飞”、“无”、“和”、“合”以随机位置添加至底图上,生成汉字与拼音结合的点选式验证码,基于中文语境,在验证码中加入拼音选项的干扰,增加了点选式验证码的难度,使人工智能较难对验证码进行破解,同时对于真实用户来说该验证码可轻松进行验证,可以有效验证用户的身份。
进一步地,所述从预设的汉字库中选择至少一个汉字以生成干扰汉字集包括:确定各个所述验证汉字的第二拼音;根据所述第二拼音在所述汉字库中选择至少一个对应的汉字,以生成所述干扰汉字集。
可以理解为,在本实施例中,不仅加入拼音进行干扰,同时也采用多音字干扰加大验证码难度;获取所有验证汉字的拼音(需要注意的是,若验证汉字为多音字,应选取验证汉字在验证句子中所引用的拼音),并根据拼音从汉字库中选择至少一个对应汉字来生成干扰汉字集,如图3所示,验证汉字为“非”和“和”,获取二者的拼音“fēi”和“hé”,对照汉字库,可从中选择出“飞”和“合”作为新的干扰汉字,与其他的干扰汉字生成干扰汉字集“非、飞、nù、合、无、和”,构成了多音字与拼音相结合的点选式验证码,避免人工智能通过拼音识别验证码并对其进行破解,保证了验证码的安全性。
进一步地,在目标图片上添加提示信息,用于提示用户选择最符合替换后的验证句子语境的汉字和/或第一拼音,如图2和图3所示,提示信息可为文本模式,文本内容为“请按顺序点击最符合上述语句语境的汉字”或“请按顺序点击最符合上述语句语境的汉字或拼音”,在提示用户按顺序进行点选式验证码验证的同时,也避免了为人工智能提供验证码点选顺序上的提示提高了验证码的安全性。
如图4所示,本发明另一实施例提出了一种基于语境的验证码生成装置,包括:
抽取模块,用于从预设的句子库中随机选择一条句子作为验证句子,随机选择所述验证句子中的至少一个汉字作为验证汉字,所有所述验证汉字组成验证汉字集,并将所述验证句子中的各个所述验证汉字替换为待填空的提示符号,获得替换后的验证句子;从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对所述验证汉字集和所述干扰汉字集进行合并处理和去重处理,生成待选汉字集;
处理模块,用于从预设的图片库中随机选择一张图片作为目标图片,基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码。
本发明实施例所述的基于语境的验证码生成装置与上述基于语境的验证码生成方法的有益效果相近似,在此不再进行赘述。
本发明又一实施例提出了一种电子设备,包括存储有计算机程序的计算机可读存储介质和处理器,所述计算机程序被所述处理器读取并运行时,实现上述所述的基于语境的验证码生成方法。
本发明实施例所述电子设备的与上述基于语境的验证码生成装置及基于语境的验证码生成方法的有益效果相近似,在此不再进行赘述。
本发明实施例又一实施例提出了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序被处理器执行时,实现上述所述的基于语境的验证码生成方法。
本发明实施例所述的计算机可读存储介质与上述基于语境的验证码生成方法的有益效果相近似,在此不再进行赘述。
一般来说,用于实现本发明方法的计算机指令的可以采用一个或多个计算机可读的存储介质的任意组合来承载。非临时性计算机可读存储介质可以包括任何计算机可读介质,除了临时性地传播中的信号本身。
计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言,特别是可以使用适于神经网络计算的Python语言和基于TensorFlow、PyTorch等平台框架。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
虽然本公开披露如上,但本公开的保护范围并非仅限于此。本领域技术人员在不脱离本公开的精神和范围的前提下,可进行各种变更与修改,这些变更与修改均将落入本发明的保护范围。
Claims (10)
1.一种基于语境的验证码生成方法,其特征在于,包括:
从预设的句子库中随机选择一条句子作为验证句子,随机选择所述验证句子中的至少一个汉字作为验证汉字,所有所述验证汉字组成验证汉字集,并将所述验证句子中的各个所述验证汉字替换为待填空的提示符号,获得替换后的验证句子;
从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对所述验证汉字集和所述干扰汉字集进行合并处理和去重处理,生成待选汉字集;
从预设的图片库中随机选择一张图片作为目标图片,基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码。
2.根据权利要求1所述的基于语境的验证码生成方法,其特征在于,所述根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码之前,还包括:
确定所述待选汉字集中的汉字数量,并将所述汉字数量与预设数量进行对比,根据对比结果判断是否继续生成所述验证码。
3.根据权利要求2所述的基于语境的验证码生成方法,其特征在于,所述根据对比结果判断是否继续生成验证码,具体包括:
若所述汉字数量小于所述预设数量,则重新从所述汉字库中再选择至少一个汉字以更新所述干扰汉字集,对所述验证汉字集和更新后的干扰汉字集进行合并处理和去重处理,直至生成的所述待选汉字集中的所述汉字数量达到所述预设数量,则继续生成所述验证码;
若所述待选汉字数量不小于所述预设数量,则继续生成所述验证码。
4.根据权利要求1至3任一项所述的基于语境的验证码生成方法,其特征在于,所述基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码包括:
将所述替换后的验证句子和所述待选汉字集中的各个汉字添加到所述目标图片上,生成所述验证码;其中,所述替换后的验证句子和所述待选汉字集中的各个汉字在所述目标图片上的位置随机。
5.根据权利要求1至3任一项所述的基于语境的验证码生成方法,其特征在于,所述基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码包括:
随机选择所述待选汉字集中的至少一个汉字为待处理汉字,确定各个所述待处理汉字的第一拼音;
将所述替换后的验证句子、所述待处理汉字的第一拼音和所述待选汉字集中除所述待处理汉字以外的其它汉字,添加到所述目标图片上,生成所述验证码。
6.根据权利要求1至3任一项所述的基于语境的验证码生成方法,其特征在于,所述从预设的汉字库中选择至少一个汉字以生成干扰汉字集包括:
确定各个所述验证汉字的第二拼音;
根据所述第二拼音在所述汉字库中选择至少一个对应的汉字,以生成所述干扰汉字集。
7.根据权利要求5所述的基于语境的验证码生成方法,其特征在于,还包括:
在所述目标图片上添加提示信息,所述提示信息用于提示用户选择最符合所述替换后的验证句子语境的汉字和/或所述第一拼音。
8.一种基于语境的验证码生成装置,其特征在于,包括:
抽取模块,用于从预设的句子库中随机选择一条句子作为验证句子,随机选择所述验证句子中的至少一个汉字作为验证汉字,所有所述验证汉字组成验证汉字集,并将所述验证句子中的各个所述验证汉字替换为待填空的提示符号,获得替换后的验证句子;从预设的汉字库中选择至少一个汉字以生成干扰汉字集,对所述验证汉字集和所述干扰汉字集进行合并处理和去重处理,生成待选汉字集;
处理模块,用于从预设的图片库中随机选择一张图片作为目标图片,基于所述目标图片,根据所述替换后的验证句子和所述待选汉字集中的各个汉字生成验证码。
9.一种电子设备,其特征在于,包括存储有计算机程序的计算机可读存储介质和处理器,所述计算机程序被所述处理器读取并运行时,实现如权利要求1-7任一项所述的基于语境的验证码生成方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序被处理器执行时,实现如权利要求1-7中任一项所述的基于语境的验证码生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111600226.1A CN114465762A (zh) | 2021-12-24 | 2021-12-24 | 一种基于语境的验证码生成方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111600226.1A CN114465762A (zh) | 2021-12-24 | 2021-12-24 | 一种基于语境的验证码生成方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114465762A true CN114465762A (zh) | 2022-05-10 |
Family
ID=81407188
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111600226.1A Pending CN114465762A (zh) | 2021-12-24 | 2021-12-24 | 一种基于语境的验证码生成方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114465762A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075507A (zh) * | 2010-07-30 | 2011-05-25 | 百度在线网络技术(北京)有限公司 | 一种用于基于词句验证图进行用户验证的方法与设备 |
CN106156597A (zh) * | 2015-04-16 | 2016-11-23 | 深圳市腾讯计算机系统有限公司 | 一种验证码的实现方法,及装置 |
CN106899411A (zh) * | 2016-12-08 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种基于验证码的校验方法及装置 |
CN107908946A (zh) * | 2017-10-27 | 2018-04-13 | 链家网(北京)科技有限公司 | 图片验证码生成方法、图片验证码、验证方法及装置 |
CN108875349A (zh) * | 2017-05-10 | 2018-11-23 | 广州爱九游信息技术有限公司 | 基于拼音的验证码生成方法及装置 |
CN109450646A (zh) * | 2018-12-10 | 2019-03-08 | 珠海格力电器股份有限公司 | 验证请求处理方法和系统 |
WO2021156956A1 (ja) * | 2020-02-04 | 2021-08-12 | 日本電信電話株式会社 | オフロードサーバ、オフロード制御方法およびオフロードプログラム |
-
2021
- 2021-12-24 CN CN202111600226.1A patent/CN114465762A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102075507A (zh) * | 2010-07-30 | 2011-05-25 | 百度在线网络技术(北京)有限公司 | 一种用于基于词句验证图进行用户验证的方法与设备 |
CN106156597A (zh) * | 2015-04-16 | 2016-11-23 | 深圳市腾讯计算机系统有限公司 | 一种验证码的实现方法,及装置 |
CN106899411A (zh) * | 2016-12-08 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种基于验证码的校验方法及装置 |
CN108875349A (zh) * | 2017-05-10 | 2018-11-23 | 广州爱九游信息技术有限公司 | 基于拼音的验证码生成方法及装置 |
CN107908946A (zh) * | 2017-10-27 | 2018-04-13 | 链家网(北京)科技有限公司 | 图片验证码生成方法、图片验证码、验证方法及装置 |
CN109450646A (zh) * | 2018-12-10 | 2019-03-08 | 珠海格力电器股份有限公司 | 验证请求处理方法和系统 |
WO2021156956A1 (ja) * | 2020-02-04 | 2021-08-12 | 日本電信電話株式会社 | オフロードサーバ、オフロード制御方法およびオフロードプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3554000B1 (en) | Validation code based verification method and device | |
CN109523611B (zh) | 验证码图片生成方法和装置 | |
US8483518B2 (en) | Image-based CAPTCHA exploiting context in object recognition | |
US8832804B1 (en) | Password pre-verification in client-server applications | |
US9129100B2 (en) | Verification code generation and verification method and apparatus | |
WO2019184122A1 (zh) | 一种登录验证方法、装置、终端设备及存储介质 | |
CN106098069B (zh) | 一种身份认证方法、及终端设备 | |
US20120272302A1 (en) | Human User Verification | |
CN103312512A (zh) | 一种图片验证码的生成方法及装置、身份验证方法及装置 | |
WO2014107618A1 (en) | Cognitive-based captcha system | |
CN112187702A (zh) | 一种对客户端进行验证的方法和装置 | |
CN109902459B (zh) | Web页面的人机识别验证方法、系统、设备和存储介质 | |
US20080028205A1 (en) | Method and apparatus for authenticating a user | |
EP3189472B1 (en) | Managing registration of user identity using handwriting | |
CN107357824B (zh) | 信息处理方法、服务平台及计算机存储介质 | |
EP2892003A1 (en) | Method and apparatus for input verification | |
US20130191641A1 (en) | Captcha (completely automated public test to tell computers and humans apart) data generation methods and related data management systems and computer program products thereof | |
KR101267229B1 (ko) | 입력패턴을 이용한 인증 방법 및 시스템 | |
US20170032137A1 (en) | Method and system for providing access to a device for a user | |
US20240214374A1 (en) | Multi-factor authentication using symbols | |
CN106098070B (zh) | 一种身份认证方法、及网络系统 | |
CN111090849A (zh) | 存储器、验证码实现方法、装置和设备 | |
CN107231330B (zh) | 一种密码确定、登录验证方法和设备 | |
CN114465762A (zh) | 一种基于语境的验证码生成方法、装置及存储介质 | |
US11163869B2 (en) | Identity authentication without entry of password |
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 |