WO2022156552A1 - 验证码图像加密方法、设备、存储介质和计算机程序产品 - Google Patents
验证码图像加密方法、设备、存储介质和计算机程序产品 Download PDFInfo
- Publication number
- WO2022156552A1 WO2022156552A1 PCT/CN2022/071004 CN2022071004W WO2022156552A1 WO 2022156552 A1 WO2022156552 A1 WO 2022156552A1 CN 2022071004 W CN2022071004 W CN 2022071004W WO 2022156552 A1 WO2022156552 A1 WO 2022156552A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- verification code
- code image
- gradient information
- original
- interference
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/36—User authentication by graphic or iconic representation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2133—Verifying human interaction, e.g., Captcha
Definitions
- the embodiments of the present disclosure relate to the field of communication technologies, and in particular, to a verification code image encryption method, device, storage medium, and computer program product.
- an embodiment of the present disclosure provides a computer program product, including a computer program, characterized in that, when the computer program is executed by a processor, the steps of the method described in the foregoing first aspect are implemented.
- FIG. 7 is a schematic diagram of model training provided by an embodiment of the present disclosure.
- the original captcha image after generating the original captcha image, specify a string similar to the actual corresponding character string of the original captcha image, and the original captcha image can also be adjusted according to the string to determine the interference gradient information to interfere with the attack
- the recognition results of the square neural network model can improve the security of the verification code image and effectively resist malicious registration behavior.
- the criterion that needs to be satisfied for determining the interference gradient information is: the neural network recognition result of the encrypted verification code image generated by using the interference gradient information and the original verification code image is the second character string.
- steps in the flowcharts of FIG. 3 and FIG. 5 are displayed in sequence according to the arrows, these steps are not necessarily executed in the sequence indicated by the arrows. Unless explicitly stated herein, the execution of these steps is not strictly limited to the order, and these steps may be performed in other orders. Moreover, at least a part of the steps in FIG. 3 and FIG. 5 may include multiple steps or multiple stages. These steps or stages are not necessarily executed at the same time, but may be executed at different times. The execution of these steps or stages The order is also not necessarily sequential, but may be performed alternately or alternately with other steps or at least a portion of the steps or phases within the other steps.
- FIG. 13 is a block diagram of a server 1300 according to an exemplary embodiment.
- server 1300 includes a processing component 1320, which further includes one or more processors, and a memory resource, represented by memory 1322, for storing instructions or computer programs, such as application programs, executable by processing component 1320.
- An application program stored in memory 1322 may include one or more modules, each corresponding to a set of instructions.
- the processing component 1320 is configured to execute instructions to perform the above-described captcha image encryption method.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Character Discrimination (AREA)
- Storage Device Security (AREA)
Abstract
本公开实施例涉及一种验证码图像加密方法、设备、存储介质和计算程序产品。所述方法包括:生成原始验证码图像;所述原始验证码图像对应第一字符串;根据第二字符串确定所述原始验证码图像的干扰梯度信息;所述干扰梯度信息包括所述原始验证码图像中每一个像素的调整梯度,所述第二字符串为所述第一字符串的干扰字符串;根据所述干扰梯度信息调整所述原始验证码图像,以生成加密验证码图像;所述加密验证码图像的神经网络识别结果为所述第二字符串。采用本方法可以提高验证码图像的安全性,有效阻挡恶意注册行为。
Description
交叉引用
本申请要求于2021年1月19日提交的中国专利申请No.202110069620.0的优先权,其全部内容通过引用结合于此。
本公开实施例涉及通信技术领域,特别是涉及一种验证码图像加密方法、设备、存储介质和计算机程序产品。
随着通信电子技术的飞速发展,智能手机得到了广泛应用。智能手机可以安装各种不同的应用程序(application,APP)向用户提供多样的互联网服务,用户注册或登陆APP时通常需要识别验证码图片中的字符,准确输入后验证码才能成功注册或登录。
但是在实际应用中,恶意黑产往往可以攻破验证码图片,进行恶意注册,干扰企业的正常运营。即便在验证码图像上增加很多干扰图案,黑产仍然能够快速破解验证码,无法有效阻挡恶意注册行为。
发明内容
本公开实施例提供一种验证码图像加密方法、设备、存储介质和计算程序产品,可以提高验证码图像的安全性,有效阻挡恶意注册行为。
第一方面,本公开实施例提供一种验证码图像加密方法,方法包括:
生成原始验证码图像;原始验证码图像对应第一字符串;
根据第二字符串确定原始验证码图像的干扰梯度信息;干扰梯度信息包括原始验证码图像中每一个像素的调整梯度,第二字符串为第一字符串的干扰字符串;
根据干扰梯度信息调整原始验证码图像,以生成加密验证码图像;加密验证码图像的神经网络识别结果为第二字符串。
第二方面,本公开实施例提供一种计算机设备,计算机设备包括:
验证码图像生成单元,用于生成原始验证码图像;原始验证码图像对应第一字符串;
干扰梯度信息生成单元,用于根据第二字符串确定原始验证码图像的干扰梯度信息;干扰梯度信息包括原始验证码图像中每一个像素的调整梯度,第二字符串为第一字符串的干扰字符串;
加密单元,用于根据干扰梯度信息调整原始验证码图像,以生成加密验证码图像;加密验证码图像的神经网络识别结果为第二字符串。
第三方面,本公开实施例提供一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述第一方面的方法。
第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述第一方面的方法。
第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现上述第一方面所述的方法的步骤。
本公开实施例提供的验证码图像加密方法、计算机设备和存储介质,生成原始验证码图像后,指定一个与原始验证码图像真实对应字符串相似的干扰字符串(例如,前文的第二字符串),还可以根据该干扰字符串确定干扰梯度信息调整原始验证码图像,以干扰攻击方神经网络模型的识别结果,提高验证码图像的安全性,有效抵抗恶意注册行为。
图1为本公开实施例提供的验证码图像加密方法的应用环境图;
图2为本公开实施例提供的验证码图像应用示意图;
图3为本公开实施例提供的验证码图像加密方法的流程示意图;
图4为本公开实施例提供的确定干扰梯度信息的流程示意图;
图5为本公开实施例提供的像素调整示意图;
图6为本公开实施例提供的训练数据集的示意图;
图7为本公开实施例提供的模型训练示意图;
图8为本公开实施例提供的损失值梯度示意图;
图9为本公开实施例提供的确定干扰梯度信息的迭代示意图;
图10为本公开实施例提供的验证码图像加密过程示意图;
图11为本公开实施例提供的加密效果示意图;
图12为本公开实施例提供的计算机设备的结构框图;
图13为本公开实施例提供的计算机设备的内部结构图。
为了使本公开实施例的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本公开实施例进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本公开实施例,并不用于限定本公开实施例。
首先,在具体介绍本公开实施例的技术方案之前,先对本公开实施例基于的技术背景或者技术演进脉络进行介绍。通常情况下,用户注册或登陆APP时通常需要输入用户名、密码和验证码,以帮助服务器识别机器行为,从而阻挡基于机器行为的恶意注册。基于该背景,申请人发现即使使用在验证码图像增加大量干扰元素,也无法抵抗恶意注册行为。攻击方还是可以利用神经网络学习算法识别出验证码图像中的字符,进行恶意注册。此外,在验证码图像中添加过多的干扰元素可能导致用户无法辨认出验证码中的文字,影响用户注册成功率。可见,如何抵抗恶意注册行为,成为目前亟待解决的难题。为解决这一问题,申请人付出了大量的创造性劳动,提出了下述实施例介绍的技术方案。
下面结合本公开实施例所应用的场景,对本公开实施例涉及的技术方案进行介绍。
本公开实施例提供的验证码图像加密方法,可以应用于如图1所示的应用环境中。其中,电子设备10通过网络与服务器20进行通信。电子设备可以安装APP向用户提供各种互联网服务,例如,提供网约车服务、网上购物服务等。服务器20可以是APP的应用服务器,用于支持APP所提供服务的后台实现。
具体实现中,电子设备10可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器20可以用独立的 服务器或者是多个服务器组成的服务器集群来实现。
参考图2,用户在APP或网页进行注册时,可以通过电子设备10输入用户名、密码后,还需要识别验证码图像中的验证码,根据识别结果输入验证码。电子设备10可以向服务器20发送用户输入的用户名、密码和验证码,服务器20可以根据接收到的用户名、密码和验证码完成用户注册。
目前,攻击方可以利用神经网络模型识别验证码图像,进行恶意注册。为了提高验证码图像的安全性,有效抵抗恶意注册行为,本公开实施例提供一种验证码图像加密方法。所述方法适用于图1所示系统,执行主体可以是图1所示系统中的服务器20。如图3所示,所述方法包括以下步骤:
步骤301、生成原始验证码图像;原始验证码图像对应第一字符串。
具体实现中,服务器可以在空白图像上添加字符串来生成验证码图像,还可以在验证码图像上添加干扰。验证码图像中的字符可以是任意数字、任意字母,也可以是数字和字母的组合,本公开实施例对此不做限制。
示例性的,根据第一字符串生成原始验证码图像,第一字符串为原始验证码图像对应的字符串,即人眼识别原始验证码图像的结果为第一字符串。第一字符串包括数字、字母。
步骤302、根据第二字符串确定原始验证码的干扰梯度信息;第二字符串为第一字符串的干扰字符串。
需要说明的是,改变验证码图像中各个像素的值可能影响神经模型对验证码图像的识别结果,黑产攻击方通常使用神经网络模型识别验证码图像中的字符,为了干扰黑产攻击方的对验证码图像的识别,可以对原始验证码图像中各个像素的值进行调整。
本公开实施例中,干扰梯度信息包括原始验证码图像中每一个像素的调整梯度,调整梯度用于指示像素值的调整幅度。示例性的,可以是像素值的调整数值。利用干扰梯度信息调整原始验证码图像的像素,以干扰神经网络模型的识别结果。具体地,可以指定一个干扰字符串,根据该干扰字符串确定干扰梯度信息,利用干扰梯度信息处理原始验证码图像,使得神经网络模型对原始验证码图像的识别结果为干扰字符串。其中,干扰字符串可以是与原始验证码图像真实对应的字符串相似的字符串,与原始 验证码图像真实对应的字符串不完全相同,其中某些字符相似度较高。
示例性的,在对包含第一字符串的原始验证码图像进行加密时,可以根据与第一字符串相似的第二字符串确定干扰梯度信息,以干扰神经网络模型的识别结果。例如,第一字符串、第二字符串均包括N个字符,第一字符串的前(N-1)个字符与第二字符串的前(N-1)个字符相同,第一字符串的第N个字符与第二字符串的第N个字符相似。例如,第一字符串为“32E8”,用于干扰的第二字符串为“32E3”。
步骤303、根据干扰梯度信息调整所述原始验证码图像,以生成加密验证码图像;加密验证码图像的神经网络识别结果为第二字符串。
具体实现中,针对原始验证码图像中的每一个像素,根据干扰梯度信息中该像素的调整梯度调整所述像素的值,调整后的图像为加密验证码图像。
表1
需要说明的是,加密验证码图像中各个像素的值较原始验证码有所改变,这会导致神经网络模型对加密验证码图像的识别结果不再是第一字符串,而是第二字符串,由此实现对黑产攻击方的干扰,提高验证码图像的安全性,有效抵抗恶意注册行为。
此外,针对原始验证码图像中各个像素的调整梯度往往较小,因此通过干扰梯度信息改变原始验证码图像中各个像素的值对原始验证码图像的视觉效果影响不大,因此不会对用户识别造成明显的干扰。
一种可能的实现方式中,为了避免通过干扰梯度信息改变原始验证码图像的边缘后对用户识别造成干扰,加密验证码图像和原始验证码图像的视觉识别结果相同。具体地,干扰梯度信息中的调整梯度的绝对值往往较小,可以保证加密验证码图像和原始验证码图像在视觉上不会存在明显差别,二者的视觉识别结果相同。
图3所示的方法中,生成原始验证码图像后,指定一个与原始验证码图像真实对应字符串相似的字符串,还可以根据该字符串确定干扰梯度信息调整原始验证码图像,以干扰攻击方神经网络模型的识别结果,提高验证码图像的安全性,有效抵抗恶意注册行为。
本公开实施例中,服务器20还可以根据神经网络模型的识别结果与干扰字符串的差异来确定最终用于加密的干扰梯度信息。参考图5,具体包括以下步骤:
步骤501、训练神经网络模型,该神经网络模型用于识别验证码图像。
需要说明的是,上述神经网络模型还以称为验证码图像识别模型,用于识别验证码图像,其输入可以是验证码图像,输出为验证码(例如,字符串)。示例性的,用于训练验证码图像识别模型的样本数据集包括验证码图像和验证码图像的标签,其中,验证码图像的标签可以是验证码图像包括的字符串。示例的,参考图6,验证码图像1对应的标签为“32E8”,验证码图像2对应的标签为“Trdk”。
一种可能的实现方式中,服务器在生成验证码图像(例如,前文所述的原始验证码图像)时,还可以生成标签信息,标签信息用于记录验证码图像与字符串的对应关系。在训练验证码图像识别模型时,可以根据标签信息获取大量的训练样本。
具体实现中,参考图7,将验证码图像输入初始的神经网络模型,将神经网络模型的输出(识别结果)与真实标签进行比较,获得损失值Loss。损失值Loss用于表征神经网络模型的输出相比于真实标签的差异。还可以以最小化Loss为优化目标,对神经网络模型的参数进行更新。当损失值 Loss取得最小值,获得稳定的验证码图像识别模型。
步骤502、根据神经网络模型对原始验证码图像的识别结果与第二字符串的差异确定干扰梯度信息。
其中,确定干扰梯度信息需要满足的准则是:利用干扰梯度信息和原始验证码图像生成的加密验证码图像的神经网络识别结果为第二字符串。
具体实现中,根据神经网络模型对原始验证码图像的识别结果与第二字符串的差异确定干扰梯度信息,具体包括以下步骤:
S1、将原始验证码图像输入上述神经网络模型模型,确定第二字符串相比于神经网络模型的输出的损失值。
其中,损失值用于表征第二字符串相比于神经网络模型的输出的差异。
S2、根据上述损失值确定梯度信息,包括原始验证码图像中每一个像素的调整梯度。
需要说明的是,损失值可以表征第二字符串相比于神经网络模型的输出的差异,神经网络模型的输出为神经网络模型对原始验证码图像的识别结果,为了保证神经网络模型对原始验证码图像的识别结果更接近第二字符,可以根据上述损失值来确定梯度信息。一种可能的实现方式中,神经网络模型的输入可以认为是原始验证码图像包括的所有像素,对损失值求导可以获得每一个像素的调整梯度。
S3、利用上述梯度信息更新原始验证码图像,直至上述损失值取得最小值,确定当前的梯度信息为干扰梯度信息。
具体实现中,针对原始验证码图像中的每一个像素,根据上述梯度信息中与该像素对应的调整梯度,对该像素的值进行调整。当对原始验证码图像中各个像素的值逐一进行调整后,完成了对原始验证码图像的更新。
需要说明的是,输入验证图像码识别模型的图像发生变化,验证码图像识别模型的输出结果也会发生变化,第二字符串相比于验证码图像识别模型的输出结果的损失值也会发生变化。为了使得神经网络模型对调整像素后的原始验证码图像的识别结果尽可能接近第二字符串,可以不断地迭代更新梯度信息,以更新原始验证码图像,直至上述损失值取得最小值。将使得上述损失值取得最小值的梯度信息确定为最终用于生成加密验证码 图像的干扰梯度信息。
一种可能的实现方式中,利用梯度信息中的调整梯度对原始验证码中各个像素的值进行调整,将调整后的图像输入神经网络模型,如果神经网络模型对输入图像的识别结果为上述第二字符串,则确定损失值取得最小值。本公开实施例中,确定干扰梯度信息的过程中对神经网络模型的参数不做调整,调整神经网络模型的输入,随着输入的变化,神经网络模型的输出与指定标签(例如前文所述的第二字符串)之间的损失值也会发生变化。当神经网络模型对输入图像的识别结果为上述第二字符串,神经网络模型的输出与指定标签之间的损失值最小。
示例性的,图8为损失值的示意图。参考图8,随着神经网络输入的改变,神经网络的输出与指定标签(例如,第二字符串)的损失值也会随之变化。当神经网络的输出为指定标签,神经网络模型的输出与指定标签之间的损失值最小。
示例性的,参考图9,将包括验证码“32E3”的原始验证码图像输入神经网络模型,计算神经网络模型的输出结果1和干扰字符串“32E8”(即前文所述的第二字符串)的损失值Loss1,根据损失值Loss1确定梯度信息1,包括原始验证码图像中各个像素的值的调整梯度。根据梯度信息1对原始验证码图像进行更新。
将更新后的验证码图像输入神经网络模型,如果神经网络模型的输出不是“32E8”,则继续迭代,根据当前的损失值确定新的梯度信息对原始验证码图像进行调整后输入神经网络模型,直至神经网络的输出为“32E8”。
示例性的,参考图9,根据梯度信息1对原始验证码图像进行更新后输入神经网络模型,神经网络模型的输出为输出结果2。计算神经网络模型的输出结果2和干扰字符串“32E8”的损失值Loss2,根据损失值Loss2确定梯度信息2,包括原始验证码图像中各个像素的值的调整梯度。
根据梯度信息2对原始验证码图像进行更新后输入神经网络模型,神经网络模型的输出为“32E8”,即损失值取得最小值。可以将梯度信息2确定为干扰梯度信息,利用干扰梯度信息对原始验证码图像进行处理,获得加密验证码图像。
本公开图5所示的实施例中,利用梯度信息更新原始验证码图像,为了保证神经网络模型对更新后的原始验证码图像的识别结果尽可能靠近干扰字符串,可以将最小化神经网络对作为优化目标迭代梯度信息。在此过程中,识别网络的参数是保持不变的,仅对梯度信息做调整。
示例的,参考图10,利用干扰梯度信息调整“原始验证码图像32E3”中各个像素的值,生成加密验证码图像。加密验证码图像人眼看上去仍然是字符“32E3”,但采用深度学习方法对其识别,识别结果就是“32E8”,这就导致攻击方的自动识别算法识别错误,从而达到加密的效果。
示例性的,参考图11,服务器生成的原始验证码图像包括“32E3”,利用“32E8”确定干扰梯度信息,例如干扰梯度信息调整原始验证码图像中各个像素的值,生成加密验证码图像,向电子设备发送加密验证码图像的图像信息。电子设备显示的是加密验证码图像,用户可以准确识别验证码“32E3”,准确输入验证码“32E3”。但如果当前注册行为是黑产的注册行为,黑产所使用神经网络模型(例如,前文所述的验证码图像模型)无法识别真实的验证码“32E3”,对验证码图像的识别结果为“32E8”,黑产控制点击器输入的验证码为“32E8”,无法成功注册,可见本公开能够有效阻挡恶意注册行为。
应该理解的是,虽然图3、图5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图3、图5的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
本公开实施例提供了一种计算机设备,可以是本公开实施例所述的服务器。如图11所示,该计算机设备包括:验证码图像生成单元1201、梯度信息生成单元1202以及加密单元1203。
验证码图像生成单元1201,用于生成原始验证码图像;原始验证码图像对应第一字符串;
干扰梯度信息生成单元1202,用于根据第二字符串确定原始验证码图像的干扰梯度信息;干扰梯度信息包括原始验证码图像中每一个像素的调整梯度,第二字符串为第一字符串的干扰字符串;
加密单元1203,用于根据干扰梯度信息调整原始验证码图像,以生成加密验证码图像;加密验证码图像的神经网络识别结果为第二字符串。
一种可能的实现方式中,干扰梯度信息生成单元1202用于,根据神经网络模型对原始验证码图像的识别结果与第二字符串的差异确定干扰梯度信息,使得根据干扰梯度信息和原始验证码图像生成的加密验证码图像的神经网络识别结果为第二字符串;神经网络模型的输入为验证码图像,输出为字符串。
一种可能的实现方式中,干扰梯度信息生成单元1202具体用于,将原始验证码图像输入神经网络模型,确定第二字符串相比于神经网络模型的输出的损失值;
根据损失值确定梯度信息,梯度信息包括原始验证码图像中每一个像素的调整梯度;
利用梯度信息更新原始验证码图像,直至损失值取得最小值,确定当前的梯度信息为干扰梯度信息。
一种可能的实现方式中,干扰梯度信息生成单元1202用于,针对原始验证码图像中的每一个像素,根据梯度信息中像素的调整梯度调整像素的值,以对原始验证码图像进行更新。
一种可能的实现方式中,加密单元1203具体用于,针对原始验证码图像中的每一个像素,根据干扰梯度信息中像素的调整梯度调整像素的值,调整后的图像为加密验证码图像。
一种可能的实现方式中,干扰梯度信息中的调整梯度用于保证加密验证码图像和原始验证码图像视觉识别结果相同。
关于上述计算机设备的具体限定可以参见上文中对于验证码图像加密方法的限定,在此不再赘述。上述计算机设备中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于电子设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
图13是根据一示例性实施例示出的一种服务器1300的框图。参照图13,服务器1300包括处理组件1320,其进一步包括一个或多个处理器,以及由存储器1322所代表的存储器资源,用于存储可由处理组件1320执行的指令或者计算机程序,例如应用程序。存储器1322中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1320被配置为执行指令,以执行上述验证码图像加密方法。
服务器1300还可以包括一个电源组件1324被配置为执行设备1300的电源管理,一个有线或无线网络接口1326被配置为将设备1300连接到网络,和一个输入输出(I/O)接口1328。服务器1300可以操作基于存储在存储器1322的操作系统,例如Window13 13erverTM,Mac O13XTM,UnixTM,LinuxTM,FreeB13DTM或类似。
本公开实施例还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由计算机设备(例如,前文所述的服务器)的处理器执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本公开实施例还提供了一种包括指令的存储介质,例如包括指令的存储器,上述指令可由服务器的处理器执行以完成上述方法。存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,该计算机程序被处理器执行时,可以实现上述方法。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行这些计算机指令时,可以全部或部分地按照本公开实施例所述的流程或功能实现上述方法中的部分或者全部。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本公开实施例所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包 括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本公开实施例的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本公开实施例构思的前提下,还可以做出若干变形和改进,这些都属于本公开实施例的保护范围。因此,本公开实施例专利的保护范围应以所附权利要求为准。
Claims (15)
- 一种验证码图像加密方法,其特征在于,所述方法包括:生成原始验证码图像;所述原始验证码图像对应第一字符串;根据第二字符串确定所述原始验证码图像的干扰梯度信息;所述干扰梯度信息包括所述原始验证码图像中每一个像素的调整梯度,所述第二字符串为所述第一字符串的干扰字符串;根据所述干扰梯度信息调整所述原始验证码图像,以生成加密验证码图像;所述加密验证码图像的神经网络识别结果为所述第二字符串。
- 根据权利要求1所述的方法,其特征在于,所述根据第二字符串确定所述原始验证码的干扰梯度信息,包括:根据神经网络模型对所述原始验证码图像的识别结果与所述第二字符串的差异确定所述干扰梯度信息,使得根据所述干扰梯度信息和所述原始验证码图像生成的加密验证码图像的神经网络识别结果为所述第二字符串;所述神经网络模型的输入为验证码图像,输出为字符串。
- 根据权利要求2所述的方法,其特征在于,所述根据神经网络模型对所述原始验证码图像的识别结果与所述第二字符串的差异确定所述干扰梯度信息,包括:将所述原始验证码图像输入所述神经网络模型,确定所述第二字符串相比于所述神经网络模型的输出的损失值;根据所述损失值确定梯度信息,所述梯度信息包括所述原始验证码图像中每一个像素的调整梯度;利用所述梯度信息更新所述原始验证码图像,直至所述损失值取得最小值,确定当前的梯度信息为所述干扰梯度信息。
- 根据权利要求3所述的方法,其特征在于,所述利用所述梯度 信息更新所述原始验证码图像,包括:针对所述原始验证码图像中的每一个像素,根据所述梯度信息中所述像素的调整梯度调整所述像素的值,以对所述原始验证码图像进行更新。
- 根据权利要求1-4任一项所述的方法,其特征在于,所述根据所述干扰梯度信息调整所述原始验证码图像,以生成加密验证码图像,包括:针对所述原始验证码图像中的每一个像素,根据所述干扰梯度信息中所述像素的调整梯度调整所述像素的值,调整后的图像为所述加密验证码图像。
- 根据权利要求1-4任一项所述的方法,其特征在于,所述干扰梯度信息中的调整梯度用于保证所述加密验证码图像和所述原始验证码图像视觉识别结果相同。
- 一种计算机设备,其特征在于,包括:验证码图像生成单元,用于生成原始验证码图像;所述原始验证码图像对应第一字符串;干扰梯度信息生成单元,用于根据第二字符串确定所述原始验证码图像的干扰梯度信息;所述干扰梯度信息包括所述原始验证码图像中每一个像素的调整梯度,所述第二字符串为所述第一字符串的干扰字符串;加密单元,用于根据所述干扰梯度信息调整所述原始验证码图像,以生成加密验证码图像;所述加密验证码图像的神经网络识别结果为所述第二字符串。
- 根据权利要求7所述的计算机设备,其特征在于,所述干扰梯度信息生成单元用于,根据神经网络模型对所述原始验证码图像的识别结果与所述第二字符串的差异确定所述干扰梯度信息,使得根据所 述干扰梯度信息和所述原始验证码图像生成的加密验证码图像的神经网络识别结果为所述第二字符串;所述神经网络模型的输入为验证码图像,输出为字符串。
- 根据权利要求8所述的计算机设备,其特征在于,所述干扰梯度信息生成单元具体用于,将所述原始验证码图像输入所述神经网络模型,确定所述第二字符串相比于所述神经网络模型的输出的损失值;根据所述损失值确定梯度信息,所述梯度信息包括所述原始验证码图像中每一个像素的调整梯度;利用所述梯度信息更新所述原始验证码图像,直至所述损失值取得最小值,确定当前的梯度信息为所述干扰梯度信息。
- 根据权利要求9所述的计算机设备,其特征在于,所述干扰梯度信息生成单元用于,针对所述原始验证码图像中的每一个像素,根据所述梯度信息中所述像素的调整梯度调整所述像素的值,以对所述原始验证码图像进行更新。
- 根据权利要求7-10任一项所述的计算机设备,其特征在于,所述加密单元具体用于,针对所述原始验证码图像中的每一个像素,根据所述干扰梯度信息中所述像素的调整梯度调整所述像素的值,调整后的图像为所述加密验证码图像。
- 根据权利要求7-10任一项所述的计算机设备,其特征在于,所述干扰梯度信息中的调整梯度用于保证所述加密验证码图像和所述原始验证码图像视觉识别结果相同。
- 一种服务器,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
- 一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6中任一项所述的方法的步骤。
- 一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-6中任一项所述的方法的步骤。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202110069620.0 | 2021-01-19 | ||
| CN202110069620.0A CN114817893A (zh) | 2021-01-19 | 2021-01-19 | 验证码图像加密方法、设备、存储介质和计算机程序产品 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022156552A1 true WO2022156552A1 (zh) | 2022-07-28 |
Family
ID=82523649
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2022/071004 Ceased WO2022156552A1 (zh) | 2021-01-19 | 2022-01-10 | 验证码图像加密方法、设备、存储介质和计算机程序产品 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN114817893A (zh) |
| WO (1) | WO2022156552A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114817893A (zh) * | 2021-01-19 | 2022-07-29 | 北京嘀嘀无限科技发展有限公司 | 验证码图像加密方法、设备、存储介质和计算机程序产品 |
| CN115495762A (zh) * | 2022-09-23 | 2022-12-20 | 上海高德威智能交通系统有限公司 | 一种图像处理方法、装置及电子设备 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109523611A (zh) * | 2018-11-28 | 2019-03-26 | 百度在线网络技术(北京)有限公司 | 验证码图片生成方法和装置 |
| CN109977980A (zh) * | 2017-12-28 | 2019-07-05 | 航天信息股份有限公司 | 一种验证码识别方法及装置 |
| CN110555298A (zh) * | 2019-08-30 | 2019-12-10 | 阿里巴巴(中国)有限公司 | 验证码识别模型训练及识别方法、介质、装置、计算设备 |
| CN110895691A (zh) * | 2018-09-12 | 2020-03-20 | 阿里巴巴集团控股有限公司 | 图像处理方法、装置及电子设备 |
| CN111783064A (zh) * | 2020-06-30 | 2020-10-16 | 平安国际智慧城市科技股份有限公司 | 图形验证码生成方法、装置、计算机设备及存储介质 |
| CN111967592A (zh) * | 2020-07-09 | 2020-11-20 | 中国电子科技集团公司第三十六研究所 | 基于分离正负扰动生成对抗图像机器识别的方法 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107360137A (zh) * | 2017-06-15 | 2017-11-17 | 深圳市牛鼎丰科技有限公司 | 用于验证码识别的神经网络模型的构建方法和装置 |
| CN114817893A (zh) * | 2021-01-19 | 2022-07-29 | 北京嘀嘀无限科技发展有限公司 | 验证码图像加密方法、设备、存储介质和计算机程序产品 |
-
2021
- 2021-01-19 CN CN202110069620.0A patent/CN114817893A/zh active Pending
-
2022
- 2022-01-10 WO PCT/CN2022/071004 patent/WO2022156552A1/zh not_active Ceased
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109977980A (zh) * | 2017-12-28 | 2019-07-05 | 航天信息股份有限公司 | 一种验证码识别方法及装置 |
| CN110895691A (zh) * | 2018-09-12 | 2020-03-20 | 阿里巴巴集团控股有限公司 | 图像处理方法、装置及电子设备 |
| CN109523611A (zh) * | 2018-11-28 | 2019-03-26 | 百度在线网络技术(北京)有限公司 | 验证码图片生成方法和装置 |
| CN110555298A (zh) * | 2019-08-30 | 2019-12-10 | 阿里巴巴(中国)有限公司 | 验证码识别模型训练及识别方法、介质、装置、计算设备 |
| CN111783064A (zh) * | 2020-06-30 | 2020-10-16 | 平安国际智慧城市科技股份有限公司 | 图形验证码生成方法、装置、计算机设备及存储介质 |
| CN111967592A (zh) * | 2020-07-09 | 2020-11-20 | 中国电子科技集团公司第三十六研究所 | 基于分离正负扰动生成对抗图像机器识别的方法 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114817893A (zh) * | 2021-01-19 | 2022-07-29 | 北京嘀嘀无限科技发展有限公司 | 验证码图像加密方法、设备、存储介质和计算机程序产品 |
| CN115495762A (zh) * | 2022-09-23 | 2022-12-20 | 上海高德威智能交通系统有限公司 | 一种图像处理方法、装置及电子设备 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN114817893A (zh) | 2022-07-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12126631B2 (en) | Detecting compromised credentials in a credential stuffing attack | |
| US9871813B2 (en) | Method of and system for processing an unauthorized user access to a resource | |
| US8549314B2 (en) | Password generation methods and systems | |
| US20140033267A1 (en) | Type mining framework for automated security policy generation | |
| US11102245B2 (en) | Deception using screen capture | |
| US10079855B2 (en) | Password breach registry | |
| US9178903B1 (en) | Simulating a bot-net spanning a plurality of geographic regions | |
| US10212189B2 (en) | Authentication of client devices using modified images | |
| US20170244718A1 (en) | Method of and system for processing an unauthorized user access to a resource | |
| CN112508200B (zh) | 处理机器学习模型文件的方法、装置、设备、介质和程序 | |
| CN108875404A (zh) | 基于机器学习的数据脱敏方法、装置及存储介质 | |
| CN112534431A (zh) | 基于公开可用数据提高受密码保护资源的安全性 | |
| US12450366B2 (en) | Data access control for user devices using a blockchain | |
| WO2022156552A1 (zh) | 验证码图像加密方法、设备、存储介质和计算机程序产品 | |
| CN107294931B (zh) | 调整限制访问频率的方法和装置 | |
| US12177251B1 (en) | Identifying and blocking fraudulent websites | |
| CN117459327A (zh) | 一种云数据透明加密保护方法、系统及装置 | |
| US11949787B2 (en) | Systems and methods for linking an authentication account to a device | |
| EP4660854A1 (en) | Cyber-attack detection in a logging system | |
| JP7320462B2 (ja) | アクセス権に基づいてコンピューティングデバイス上でタスクを実行するシステムおよび方法 | |
| US12368754B2 (en) | Snapshot phishing detection and threat analysis | |
| WO2022156609A1 (zh) | 键盘加密方法、设备、存储介质及计算机程序产品 | |
| WO2024221440A1 (zh) | 图像处理方法及装置 | |
| CN116152884A (zh) | 人脸图像的识别方法、装置、处理器及电子设备 | |
| CN113761576A (zh) | 隐私保护方法、装置、存储介质及电子设备 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22742031 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 03/11/2023) |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 22742031 Country of ref document: EP Kind code of ref document: A1 |
