CN112287324B - 图片验证方法、服务器、终端设备及存储介质 - Google Patents
图片验证方法、服务器、终端设备及存储介质 Download PDFInfo
- Publication number
- CN112287324B CN112287324B CN202011296590.9A CN202011296590A CN112287324B CN 112287324 B CN112287324 B CN 112287324B CN 202011296590 A CN202011296590 A CN 202011296590A CN 112287324 B CN112287324 B CN 112287324B
- Authority
- CN
- China
- Prior art keywords
- verification
- picture
- image block
- password
- defect map
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012795 verification Methods 0.000 title claims abstract description 476
- 238000000034 method Methods 0.000 title claims abstract description 60
- 230000007547 defect Effects 0.000 claims abstract description 98
- 230000004044 response Effects 0.000 claims abstract description 8
- 238000004590 computer program Methods 0.000 claims description 22
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000001788 irregular Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 101100217298 Mus musculus Aspm gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001680 brushing effect Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供一种图片验证方法、服务器、终端设备及存储介质,该方法包括:在接收到终端设备发送的验证码获取请求时,获取验证图片,并将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块;根据所述图像块在所述验证图片中的初始坐标和所述验证码获取请求中的验证标识,生成第一验证密码;将所述缺陷图和所述图像块发送至所述终端设备,以供所述终端设备显示所述缺陷图,并在所述缺陷图中的设定位置处显示所述图像块,响应于用户对所述图像块的拖拽操作,生成第二验证密码;根据所述第一验证密码和所述终端设备发送的第二验证密码,确定所述验证码获取请求的验证结果。本申请提高通过图片验证码进行验证的安全性。
Description
技术领域
本申请涉及安全验证的技术领域,尤其涉及一种图片验证方法、服务器、终端设备及存储介质。
背景技术
随着计算机网络的普及和发展,互联网在深入人们生活的同时也带来了各种挑战,为了保证互联网的安全,不少网站采用了验证码技术,其基本形式是:在每次向网页提交信息的时候,系统会自动随机生成一串数字或符号(即验证码),只有在指定的位置正确地输入系统生成的验证码才能完成验证。其中,验证码的验证过程大致包括两个方面:一是提示用户验证内容;二是用户输入验证内容对应的答案并提交。然而,传统的验证系统中,在这两个方面易被破解。例如,在传统的图片验证码的验证过程中,通过词语提示告诉用户验证内容,如扇子,然后再提供一组图片给用户选取有扇子的图片并提交,这个过程中,词语提示和图片内容很容易被基于机器的图像识别算法自动破解,识别系统无法识别出验证对象是机器还是自然人,导致图片验证码的验证安全性不高。
发明内容
本申请的主要目的在于提供一种图片验证方法、服务器、终端设备及存储介质,旨在提高通过图片验证码进行验证的安全性。
第一方面,本申请提供一种图片验证方法,应用于服务器,所述方法包括:
在接收到终端设备发送的验证码获取请求时,获取验证图片,并将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块;
根据所述图像块在所述验证图片中的初始坐标和所述验证码获取请求中的验证标识,生成第一验证密码;
将所述缺陷图和所述图像块发送至所述终端设备,以供所述终端设备显示所述缺陷图,并在所述缺陷图中的设定位置处显示所述图像块,响应于用户对所述图像块的拖拽操作,生成第二验证密码;
根据所述第一验证密码和所述终端设备发送的第二验证密码,确定所述验证码获取请求的验证结果。
第二方面,本申请提供一种图片验证方法,应用于终端设备,所述方法包括:
向服务器发送验证码获取请求,以使所述服务器在接收到所述验证码获取请求时获取验证图片并将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块,且根据所述图像块在所述验证图片中的初始坐标和所述验证码获取请求中的验证标识,生成第一验证密码;
接收所述服务器发送的所述缺陷图和图像块,显示所述缺陷图,并在所述缺陷图中的设定位置显示所述图像块;
响应于用户对所述图像块的拖拽操作,根据所述图像块的当前坐标和所述验证标识,生成第二验证密码;
根据所述第二验证密码和所述服务器发送的第一验证密码,确定所述用户对所述图像块的拖拽操作的验证结果。
第三方面,本申请还提供一种服务器,所述服务器包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上所述的应用于服务器的图片验证方法的步骤。
第四方面,本申请还提供一种终端设备,所述终端设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如上所述的应用于终端设备的图片验证方法的步骤。
第五方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如上所述的图片验证方法的步骤。
本申请提供一种图片验证方法、服务器、终端设备及存储介质,本申请在接收到终端设备发送的验证码获取请求时,获取验证图片,并将验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块;然后根据图像块在验证图片中的初始坐标和验证码获取请求中的验证标识,生成第一验证密码;之后将缺陷图和图像块发送至终端设备,以供终端设备显示缺陷图,并在缺陷图中的设定位置处显示图像块,响应于用户对图像块的拖拽操作,生成第二验证密码;最后根据第一验证密码和终端设备发送的第二验证密码,确定验证码获取请求的验证结果,通过第一验证密码和第二验证密码实现图片验证码的安全验证,不容易被图像识别算法破解,极大地提高通过图片验证码进行验证的安全性。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种图片验证方法的步骤流程示意图;
图2为实施本实施例提供的一验证图片的示意图;
图3为实施本实施例提供的一缺陷图和图像块的示意图;
图4为实施本实施例提供的图片验证方法的一场景示意图;
图5为本申请实施例提供的另一种图片验证方法的步骤流程示意图;
图6为本申请实施例提供的一种服务器的结构示意性框图;
图7为本申请实施例提供的一种终端设备的结构示意性框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
附图中所示的流程图仅是示例说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解、组合或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本申请实施例提供一种图片验证方法、服务器、终端设备及存储介质。下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
请参照图1,图1为本申请实施例提供的一种图片验证方法的步骤流程示意图。其中,该图片验证方法可应用于服务器中,该服务器可以为单台的服务器,也可以为由多台服务器组成的服务器集群。
如图1所示,该图片验证方法包括步骤S101至步骤S104。
步骤S101、在接收到终端设备发送的验证码获取请求时,获取验证图片,并将验证图片裁剪为缺陷图以及与缺陷图匹配的图像块。
当终端设备需要显示图片验证码,以提示用户完成图片验证时,终端设备生成验证码获取请求,并将生成的验证码获取请求发送至服务器,服务器根据终端设备发送的验证码获取请求能够生成图片验证码,并将生成的图片验证码返还至终端设备,以使终端设备获取并显示图片验证码。
其中,验证码获取请求携带有终端设备的验证标识,该验证标识为终端设备的唯一标识,具有唯一性,示例性的,验证标识为终端设备的Mac地址、当前时间戳等信息,终端设备的验证标识用于对图片验证码的安全验证,通过具有唯一性的验证标识进行图片验证,能够有效地提高图片验证的安全性,避免盗刷验证。
在一实施例中,服务器在接收到终端设备发送的验证码获取请求时,获取验证图片。其中,验证图片即为原始的图片验证码,原始的图片验证码用于进行图片验证。服务器可以从图库中随机选取验证图片,或是按照预设顺序选取验证图片,选取的验证图片可以是一张或者多张,本申请实施例不做具体限定。
在一实施例中,服务器将验证图片裁剪为缺陷图以及与缺陷图匹配的图像块,包括以下步骤:确定待裁剪的图像块在验证图片中的裁剪区域和裁剪形状;基于预设裁剪算法,在裁剪区域内按照裁剪形状对验证图片进行裁剪,得到裁剪形状的图像块以及与裁剪形状的图像块相匹配的缺陷图。需要说明的是,裁剪区域和裁剪形状并非固定的,可以随机地进行变更,提升图片验证的安全性。
其中,裁剪区域包括待裁剪的图像块在验证图片中的裁剪位置和裁剪范围,裁剪位置和裁剪范围可通过坐标进行表示,例如裁剪区域为验证图片中的以坐标P点(5,5)为中心的(30*30)的裁剪范围。裁剪形状包括但不限于圆形、三角形、矩形、五边形、六边形、棱形等规则形状或不规则形状。预设裁剪算法包括但不限于直接求交点裁剪算法、编码裁剪(Cohen-Sutherland)算法、中点分割算法、梁友栋裁剪(Liang-Barskey)算法、Nicholl-Lee-Nicholl算法、参数化裁剪(Cyrus-Beck)算法等。
示例性的,如图2所示,服务器获取验证图片10,并基于预设裁剪算法将验证图片10裁剪为缺陷图20以及与缺陷图20匹配的图像块30,缺陷图20与图像块30能够进行组合拼凑得到完整的验证图片10。
步骤S102、根据图像块在验证图片中的初始坐标和验证码获取请求中的验证标识,生成第一验证密码。
其中,验证标识包括终端设备的Mac地址和/或当前时间戳。终端设备的Mac地址唯一,当前时间戳可以是终端设备生成验证码获取请求时签发的一个电子凭证,在一定时间段内的时间戳有且仅有一个。初始坐标为图像块被裁剪时在验证图片中的坐标,初始坐标可以是图像块的中心点在验证图片中的坐标,也可以是图像块的多个边缘点的坐标组成的坐标集。需要说明的是,通过初始坐标和验证标识生成第一验证密码,极大地增加了第一验证密码的唯一性,第一验证密码不容易被破解,通过当前时间戳生成第一验证密码能够有效地避免批量图片验证以及绕过图片验证的缺陷,提高通过图片验证码进行验证的安全性。
在一实施例中,根据图像块在验证图片中的初始坐标和验证码获取请求中的验证标识,生成第一验证密码,包括:通过第一预设加密算法,将图像块在验证图片中的初始坐标和终端设备的Mac地址进行加密,得到第一加密信息;通过第二预设加密算法,将图像块在验证图片中的初始坐标和当前时间戳进行加密,得到第二加密信息;将第一加密信息和第二加密信息作为第一验证密码。
其中,第一加密信息和第二加密信息为由数字、字母和/或符号组成的字符串,第一加密信息和第二加密信息共同组成第一验证密码,第一验证密码用于对验证码获取请求进行验证。第一预设加密算法和第二预设加密算法可以是相同或者不同的加解密算法,第一预设加密算法和第二预设加密算法可以是一个加解密算法或者多个加解密算法的组合,例如,加解密算法包括AES(Advanced Encryption Standard,高级加密标准)算法、RSA算法(Rivest Shamir Adleman),SHA1算法(Secure Hash Algorithm 1,安全散列算法1),MD5算法(MD5 Message-Digest Algorithm,MD5信息摘要算法),B64算法(Base64Algorithm)。通过这些加解密算法或加解密算法的不同组合可以生成验证图片的第一验证密码,提高图片验证的安全性。
在一实施例中,通过预设加密算法将图像块在验证图片中的初始坐标、终端设备的Mac地址和当前时间戳进行加密,得到第一验证密码;或者,将图像块在验证图片中的初始坐标和终端设备的Mac地址进行加密,得到第一加密信息,并将第一加密信息作为第一验证密码;或者,将图像块在验证图片中的初始坐标和当前时间戳进行加密,得到第二加密信息,并将第二加密信息作为第一验证密码。通过将唯一标识的初始坐标和验证标识进行加密得到用于对验证码获取请求进行验证的第一验证密码,安全性较高,不容易被破解。
步骤S103、将缺陷图和图像块发送至终端设备,以供终端设备显示缺陷图,并在缺陷图中的设定位置处显示图像块,响应于用户对图像块的拖拽操作,生成第二验证密码。
在一实施例中,服务器将缺陷图和图像块发送至终端设备,以供终端显示在显示界面显示缺陷图,并在缺陷图的设定位置显示图像块,该设定位置为缺陷图中的除初始坐标之外的其他位置,可由用户灵活设置,此时图像块不位于缺陷图的缺陷位置(初始坐标),且图像块能够移动至缺陷图中的任意位置。终端设备响应于用户对图像块的拖拽操作,在缺陷图中移动图像块,并根据停止移动的图像块的当前坐标和验证标识,生成第二验证密码。第二验证密码用于与第一验证密码共同对验证码获取请求进行验证,第二验证密码的生成方式可参照第一验证密码的生成方式,在此不再赘述。
示例性的,如图3所示,终端显示在显示界面显示缺陷图20,并在缺陷图20的设定位置显示图像块30,该设定位置可以随机生成,终端设备响应于用户对图像块30的拖拽操作,移动图像块30,并获取停止移动的图像块30的当前坐标,通过预设加密算法将图像块30在验证图片中的当前坐标、终端设备的Mac地址和当前时间戳进行加密,得到第二验证密码。
步骤S104、根据第一验证密码和终端设备发送的第二验证密码,确定验证码获取请求的验证结果。
其中,服务器接收终端设备发送的第二验证密码,第一验证密码和第二验证密码为加密的由数字、字母和/或符号组成的字符串,通过第一验证密码和第二验证密码对终端设备发送的验证码获取请求进行验证,得到验证结果。需要说明的是,验证结果包括验证通过和验证不通过。通过加密的第一验证密码和第二验证密码确定验证码获取请求的验证结果,由于一验证密码和第二验证密码是加入了唯一标识进行加密生成的加密效果较好,不易被破解,能够有效提高通过图片验证码进行验证的安全性。
在一实施例中,通过预设解密算法对第一验证密码进行解密,得到第一解密信息;通过预设解密算法对终端设备发送的第二验证密码进行解密,得到第二解密信息;验证第一解密信息与第二解密信息是否相匹配;若验证第一解密信息与第二解密信息相匹配,则确定验证码获取请求的验证结果为验证通过;若验证第一解密信息与第二解密信息不相匹配,则确定验证码获取请求的验证结果为验证不通过。
其中,预设解密算法与前述预设加密算法相对应,即对第一验证密码进行解密的预设解密算法与对第一验证密码进行加密的预设加密算法匹配,对第二验证密码进行解密的预设解密算法与对第二验证密码进行加密的预设加密算法匹配,属于一个加解密算法或者多个加解密算法的组合,保证能够成功地对第一验证密码和第二验证密码进行解密。
其中,第一解密信息包括图像块在验证图片中的初始坐标以及终端设备的Mac地址和/或当前时间戳,第二解密信息包括图像块在验证图片中的当前坐标以及终端设备的Mac地址和/或当前时间戳,将第一解密信息与第二解密信息进行比较,若第一解密信息与第二解密信息相同或者属于设定的误差范围之内,确定验证码获取请求的验证结果为验证通过,若第一解密信息与第二解密信息之间的误差超出了设定的误差范围,则确定验证码获取请求的验证结果为验证不通过。
在一实施例中,服务器确定验证码获取请求的验证结果之后,将验证结果对应的指令返回至终端设备,以供终端设备基于将验证结果对应的指令执行后续操作,例如重新发送验证码获取请求。
请参照图4,图4为实施本实施例提供的图片验证方法的一场景示意图。
如图4所示,用户100在使用终端设备200登陆网站时,需要进行图片验证码的安全验证,终端设备200生成验证码获取请求,并将验证码获取请求发送至服务器300。服务器300在接收到终端设备200发送的验证码获取请求时,获取验证图片,并将验证图片裁剪为缺陷图以及与缺陷图匹配的图像块。服务器300将缺陷图和图像块发送至终端设备200,终端设备200显示缺陷图,并在缺陷图中的设定位置处显示图像块,终端设备200响应于用户对图像块的拖拽操作,生成第二验证密码,并将第二验证密码发送至服务器300。服务器300根据图像块在验证图片中的初始坐标和验证码获取请求中的验证标识,生成第一验证密码,并根据第一验证密码和终端设备发送的第二验证密码,确定验证码获取请求的验证结果。
上述实施例提供的图片验证方法,在接收到终端设备发送的验证码获取请求时,获取验证图片,并将验证图片裁剪为缺陷图以及与缺陷图匹配的图像块;然后根据图像块在验证图片中的初始坐标和验证码获取请求中的验证标识,生成第一验证密码;之后将缺陷图和图像块发送至终端设备,以供终端设备显示缺陷图,并在缺陷图中的设定位置处显示图像块,响应于用户对图像块的拖拽操作,生成第二验证密码;最后根据第一验证密码和终端设备发送的第二验证密码,确定验证码获取请求的验证结果,通过第一验证密码和第二验证密码实现图片验证码的安全验证,不容易被图像识别算法破解,极大地提高通过图片验证码进行验证的安全性。
请参照图5,图5为本申请实施例提供的另一种图片验证方法的步骤流程示意图。该图片验证方法可应用于终端设备中,该终端设备可以为手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等电子设备。
如图5所示,该图片验证方法包括步骤S201至S204。
步骤S201、向服务器发送验证码获取请求,以使服务器在接收到验证码获取请求时获取验证图片并将验证图片裁剪为缺陷图以及与缺陷图匹配的图像块,且根据图像块在验证图片中的初始坐标和验证码获取请求中的验证标识,生成第一验证密码。
当终端设备需要进行图片验证时,首先生成验证码获取请求,并向服务器发送生成的验证码获取请求。服务器在接收到验证码获取请求时获取验证图片并将验证图片裁剪为缺陷图以及与缺陷图匹配的图像块,且根据图像块在验证图片中的初始坐标和验证码获取请求中的验证标识,生成第一验证密码。并且,服务器会将生成的第一验证密码、缺陷图以及与缺陷图匹配的图像块发送至终端设备,以使终端设备更加安全地进行图片验证。
其中,验证标识包括终端设备的Mac地址和/或当前时间戳。终端设备的Mac地址唯一,当前时间戳可以是终端设备生成验证码获取请求时签发的一个电子凭证,在一定时间段内的时间戳有且仅有一个。需要说明的是,通过初始坐标和验证标识生成第一验证密码,极大地增加了第一验证密码的唯一性,不容易被破解,提高通过图片验证码进行验证的安全性。
步骤S202、接收服务器发送的缺陷图和图像块,显示缺陷图,并在缺陷图中的设定位置显示图像块。
终端设备接收服务器发送的缺陷图和图像块,并在显示界面中显示缺陷图,在缺陷图的设定位置显示图像块。其中,图像块的形状包括但不限于圆形、三角形、矩形、五边形、六边形、棱形等规则形状或不规则形状,设定位置可由用户灵活设置活着随机生成,但设定位置不为缺陷图中的初始坐标的位置。
示例性的,终端设备显示缺陷图和显示图像块的方式如图3所示。
步骤S203、响应于用户对图像块的拖拽操作,根据图像块的当前坐标和验证标识,生成第二验证密码。
其中,图像块能够在缺陷图中进行移动。终端设备响应于用户对图像块的拖拽操作,将图像块移动至当前坐标,并根据图像块的当前坐标和验证标识,生成第二验证密码。需要说明的是,第二验证密码用于与第一验证密码共同对验证码获取请求进行验证,不容易被破解,提高图片验证的安全性。
在一实施例中,通过第三预设加密算法,将图像块在验证图片中的当前坐标和终端设备的Mac地址进行加密,得到第三加密信息;通过第四预设加密算法,将图像块在验证图片中的当前坐标和当前时间戳进行加密,得到第四加密信息;将第三加密信息和第四加密信息作为第二验证密码。其中,第三预设加密算法和第四预设加密算法可以是相同或者不同的加解密算法,也可以是一个加解密算法或者多个加解密算法的组合,本实施例不做具体限定。通过第三预设加密算法和第四预设加密算法可以生成验证图片的第二验证密码,提高图片验证的安全性。
在一实施例中,通过预设加密算法将图像块在验证图片中的当前坐标、终端设备的Mac地址和当前时间戳进行加密,得到第二验证密码;或者,将图像块在验证图片中的初始坐标和终端设备的Mac地址进行加密,得到第三加密信息,并将第三加密信息作为第二验证密码;或者,将图像块在验证图片中的初始坐标和当前时间戳进行加密,得到第四加密信息,并将第四加密信息作为第一验证密码。通过将当前坐标和唯一标识的验证标识进行加密得到用于对验证码获取请求进行验证的第二验证密码,安全性较高,不容易被破解。
步骤S204、根据第二验证密码和服务器发送的第一验证密码,确定用户对图像块的拖拽操作的验证结果。
其中,终端设备接收服务器发送的第一验证密码,第一验证密码和第二验证密码为加密的由数字、字母和/或符号组成的字符串,通过第一验证密码和第二验证密码对用户对图像块的拖拽操作进行验证,得到验证结果。需要说明的是,验证结果包括验证通过和验证不通过。通过加密的第一验证密码和第二验证密码确定用户对图像块的拖拽操作的验证结果,由于一验证密码和第二验证密码是加入了唯一标识进行加密生成的加密效果较好,不易被破解,能够有效提高通过图片验证码进行验证的安全性。
在一实施例中,通过预设解密算法对第一验证密码进行解密,得到第一解密信息;通过预设解密算法对终端设备发送的第二验证密码进行解密,得到第二解密信息;验证第一解密信息与第二解密信息是否相匹配;若验证第一解密信息与第二解密信息相匹配,则确定验证码获取请求的验证结果为验证通过;若验证第一解密信息与第二解密信息不相匹配,则确定验证码获取请求的验证结果为验证不通过。
其中,预设解密算法与前述预设加密算法相对应,即对第一验证密码进行解密的预设解密算法与对第一验证密码进行加密的预设加密算法匹配,对第二验证密码进行解密的预设解密算法与对第二验证密码进行加密的预设加密算法匹配,属于一个加解密算法或者多个加解密算法的组合,保证能够成功地对第一验证密码和第二验证密码进行解密。
其中,第一解密信息包括图像块在验证图片中的初始坐标以及终端设备的Mac地址和/或当前时间戳,第二解密信息包括图像块在验证图片中的当前坐标以及终端设备的Mac地址和/或当前时间戳,将第一解密信息与第二解密信息进行比较,若第一解密信息与第二解密信息相同或者属于设定的误差范围之内,确定验证码获取请求的验证结果为验证通过,若第一解密信息与第二解密信息之间的误差超出了设定的误差范围,则确定验证码获取请求的验证结果为验证不通过。
在一实施例中,确定用户对图像块的拖拽操作的验证结果之后,还包括:若验证结果为验证不通过,则重置图像块的位置,使得图像块返回至缺陷图中的设定位置,并执行响应于用户对图像块的拖拽操作的步骤。可以理解的是,若验证不通过,说明用户对图像块的拖拽操作无效,需要再次进行验证,因此重置图像块的位置,使得图像块返回至缺陷图中的设定位置,并重新响应于用户对图像块的拖拽操作,提高方案可行性。
上述实施例提供的图片验证方法,通过图像块的当前坐标和验证标识生成第二验证密码,该第二验证密码是经过加密的字符串,并通过第二验证密码和服务器发送的第一验证密码确定用户对图像块的拖拽操作的验证结果,极大地提高通过图片验证码进行验证的安全性,该图片验证方法不容易被图像识别算法破解,避免盗刷验证。
请参照图6,图6为本申请实施例提供的一种服务器的结构示意性框图。
如图6所示,该服务器包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种应用于服务器的图片验证方法。
处理器用于提供计算和控制能力,支撑整个服务器的运行。
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种应用于服务器的图片验证方法。
该网络接口用于进行网络通信,如向终端设备发送分配的任务等。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解的是,处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
在接收到终端设备发送的验证码获取请求时,获取验证图片,并将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块;
根据所述图像块在所述验证图片中的初始坐标和所述验证码获取请求中的验证标识,生成第一验证密码;
将所述缺陷图和所述图像块发送至所述终端设备,以供所述终端设备显示所述缺陷图,并在所述缺陷图中的设定位置处显示所述图像块,响应于用户对所述图像块的拖拽操作,生成第二验证密码;
根据所述第一验证密码和所述终端设备发送的第二验证密码,确定所述验证码获取请求的验证结果。
在一个实施例中,所述验证标识包括所述终端设备的Mac地址和/或当前时间戳。
在一个实施例中,所述处理器在实现所述根据所述图像块在所述验证图片中的初始坐标和所述验证码获取请求中的验证标识,生成第一验证密码时,用于实现:
通过第一预设加密算法,将所述图像块在所述验证图片中的初始坐标和所述终端设备的Mac地址进行加密,得到第一加密信息;
通过第二预设加密算法,将所述图像块在所述验证图片中的初始坐标和所述当前时间戳进行加密,得到第二加密信息;
将所述第一加密信息和所述第二加密信息作为第一验证密码。
在一个实施例中,所述处理器在实现所述将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块时,用于实现:
确定待裁剪的图像块在所述验证图片中的裁剪区域和裁剪形状;
基于预设裁剪算法,在所述裁剪区域内按照所述裁剪形状对所述验证图片进行裁剪,得到所述裁剪形状的图像块以及与所述裁剪形状的图像块相匹配的缺陷图。
在一个实施例中,所述处理器在实现所述根据所述第一验证密码和所述终端设备发送的第二验证密码,确定所述验证码获取请求的验证结果时,用于实现:
通过预设解密算法对第一验证密码进行解密,得到第一解密信息;
通过预设解密算法对所述终端设备发送的所述第二验证密码进行解密,得到第二解密信息;
验证所述第一解密信息与所述第二解密信息是否相匹配;
若验证所述第一解密信息与所述第二解密信息相匹配,则确定所述验证码获取请求的验证结果为验证通过;
若验证所述第一解密信息与所述第二解密信息不相匹配,则确定所述验证码获取请求的验证结果为验证不通过。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的服务器的具体工作过程,可以参考前述应用于服务器的图片验证方法实施例中的对应过程,在此不再赘述。
请参阅图7,图7为本申请实施例提供的一种终端设备的结构示意性框图。
如图7所示,该终端设备包括通过系统总线连接的处理器、存储器和网络接口,其中,存储器可以包括非易失性存储介质和内存储器。
非易失性存储介质可存储操作系统和计算机程序。该计算机程序包括程序指令,该程序指令被执行时,可使得处理器执行任意一种应用于终端设备的图片验证方法。
处理器用于提供计算和控制能力,支撑整个终端设备的运行。
内存储器为非易失性存储介质中的计算机程序的运行提供环境,该计算机程序被处理器执行时,可使得处理器执行任意一种应用于终端设备的图片验证方法。
该网络接口用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端设备的限定,具体的终端设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,在一个实施例中,所述处理器用于运行存储在存储器中的计算机程序,以实现如下步骤:
向服务器发送验证码获取请求,以使所述服务器在接收到所述验证码获取请求时获取验证图片并将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块,且根据所述图像块在所述验证图片中的初始坐标和所述验证码获取请求中的验证标识,生成第一验证密码;
接收所述服务器发送的所述缺陷图和图像块,显示所述缺陷图,并在所述缺陷图中的设定位置显示所述图像块;
响应于用户对所述图像块的拖拽操作,根据所述图像块的当前坐标和所述验证标识,生成第二验证密码;
根据所述第二验证密码和所述服务器发送的第一验证密码,确定所述用户对所述图像块的拖拽操作的验证结果。
在一个实施例中,所述处理器在实现所述根据所述第二验证密码和所述服务器发送的第一验证密码,确定所述用户对所述图像块的拖拽操作的验证结果之后,还用于实现:
若所述验证结果为验证不通过,则重置所述图像块的位置,使得所述图像块返回至所述缺陷图中的设定位置,并执行所述响应于用户对所述图像块的拖拽操作的步骤。
需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述终端设备的具体工作过程,可以参考前述应用于终端设备的图片验证方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序中包括程序指令,所述程序指令被执行时所实现的方法可参照本申请图片验证方法的各个实施例。
其中,所述计算机可读存储介质可以是前述实施例所述的服务器或终端设备的内部存储单元,例如所述服务器或终端设备的硬盘或内存。所述计算机可读存储介质也可以是所述服务器或终端设备的外部存储设备,例如所述服务器或终端设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种图片验证方法,其特征在于,应用于服务器,所述方法包括:
在接收到终端设备发送的验证码获取请求时,获取验证图片,并将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块;
通过第一预设加密算法,将所述图像块在所述验证图片中的初始坐标和所述终端设备的Mac地址进行加密,得到第一加密信息;
通过第二预设加密算法,将所述图像块在所述验证图片中的初始坐标和当前时间戳进行加密,得到第二加密信息;
将所述第一加密信息和所述第二加密信息作为第一验证密码;
将所述缺陷图和所述图像块发送至所述终端设备,以供所述终端设备显示所述缺陷图,并在所述缺陷图中的设定位置处显示所述图像块,响应于用户对所述图像块的拖拽操作,生成第二验证密码;
根据所述第一验证密码和所述终端设备发送的第二验证密码,确定所述验证码获取请求的验证结果。
2.如权利要求1所述的图片验证方法,其特征在于,所述将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块,包括:
确定待裁剪的图像块在所述验证图片中的裁剪区域和裁剪形状;
基于预设裁剪算法,在所述裁剪区域内按照所述裁剪形状对所述验证图片进行裁剪,得到所述裁剪形状的图像块以及与所述裁剪形状的图像块相匹配的缺陷图。
3.如权利要求1所述的图片验证方法,其特征在于,所述根据所述第一验证密码和所述终端设备发送的第二验证密码,确定所述验证码获取请求的验证结果,包括:
通过预设解密算法对第一验证密码进行解密,得到第一解密信息;
通过预设解密算法对所述终端设备发送的所述第二验证密码进行解密,得到第二解密信息;
验证所述第一解密信息与所述第二解密信息是否相匹配;
若验证所述第一解密信息与所述第二解密信息相匹配,则确定所述验证码获取请求的验证结果为验证通过;
若验证所述第一解密信息与所述第二解密信息不相匹配,则确定所述验证码获取请求的验证结果为验证不通过。
4.一种图片验证方法,其特征在于,应用于终端设备,所述方法包括:
向服务器发送验证码获取请求,以使所述服务器在接收到所述验证码获取请求时获取验证图片并将所述验证图片裁剪为缺陷图以及与所述缺陷图匹配的图像块,且通过第一预设加密算法,将所述图像块在所述验证图片中的初始坐标和所述终端设备的Mac地址进行加密,得到第一加密信息,通过第二预设加密算法,将所述图像块在所述验证图片中的初始坐标和当前时间戳进行加密,得到第二加密信息,将所述第一加密信息和所述第二加密信息作为第一验证密码;
接收所述服务器发送的所述缺陷图和图像块,显示所述缺陷图,并在所述缺陷图中的设定位置显示所述图像块;
响应于用户对所述图像块的拖拽操作,根据所述图像块的当前坐标和验证标识,生成第二验证密码;
根据所述第二验证密码和所述服务器发送的第一验证密码,确定所述用户对所述图像块的拖拽操作的验证结果。
5.如权利要求4所述的图片验证方法,其特征在于,所述根据所述第二验证密码和所述服务器发送的第一验证密码,确定所述用户对所述图像块的拖拽操作的验证结果之后,还包括:
若所述验证结果为验证不通过,则重置所述图像块的位置,使得所述图像块返回至所述缺陷图中的设定位置,并执行所述响应于用户对所述图像块的拖拽操作的步骤。
6.一种服务器,其特征在于,所述服务器包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求1至3中任一项所述的图片验证方法的步骤。
7.一种终端设备,其特征在于,所述终端设备包括处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中所述计算机程序被所述处理器执行时,实现如权利要求4至5中任一项所述的图片验证方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,其中所述计算机程序被处理器执行时,实现如权利要求1至5中任一项所述的图片验证方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011296590.9A CN112287324B (zh) | 2020-11-18 | 2020-11-18 | 图片验证方法、服务器、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011296590.9A CN112287324B (zh) | 2020-11-18 | 2020-11-18 | 图片验证方法、服务器、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112287324A CN112287324A (zh) | 2021-01-29 |
CN112287324B true CN112287324B (zh) | 2024-02-09 |
Family
ID=74399229
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011296590.9A Active CN112287324B (zh) | 2020-11-18 | 2020-11-18 | 图片验证方法、服务器、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112287324B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113301019B (zh) * | 2021-04-23 | 2023-04-07 | 杭州安恒信息技术股份有限公司 | 验证码漏洞检测方法、装置、电子装置和存储介质 |
CN115150186A (zh) * | 2022-07-27 | 2022-10-04 | 张瑜 | 验证码校验方法、系统、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104104514A (zh) * | 2014-07-25 | 2014-10-15 | 小米科技有限责任公司 | 使用验证码进行验证的方法及装置 |
CN105471808A (zh) * | 2014-05-28 | 2016-04-06 | 北京搜狗科技发展有限公司 | 生成验证码的方法以及安全验证的方法、装置及系统 |
CN110417740A (zh) * | 2019-06-27 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 用户数据的处理方法、智能终端、服务器及存储介质 |
CN111680284A (zh) * | 2020-05-22 | 2020-09-18 | 泰康保险集团股份有限公司 | 滑块验证方法、装置及可读存储介质 |
-
2020
- 2020-11-18 CN CN202011296590.9A patent/CN112287324B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105471808A (zh) * | 2014-05-28 | 2016-04-06 | 北京搜狗科技发展有限公司 | 生成验证码的方法以及安全验证的方法、装置及系统 |
CN104104514A (zh) * | 2014-07-25 | 2014-10-15 | 小米科技有限责任公司 | 使用验证码进行验证的方法及装置 |
CN110417740A (zh) * | 2019-06-27 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 用户数据的处理方法、智能终端、服务器及存储介质 |
CN111680284A (zh) * | 2020-05-22 | 2020-09-18 | 泰康保险集团股份有限公司 | 滑块验证方法、装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112287324A (zh) | 2021-01-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102493744B1 (ko) | 생체 특징에 기초한 보안 검증 방법, 클라이언트 단말, 및 서버 | |
US10305889B2 (en) | Identity authentication method and device and storage medium | |
US20130067228A1 (en) | Method and device for securely sharing images across untrusted channels | |
WO2020215568A1 (zh) | 更换通信号码的方法、装置、系统、计算机设备及存储介质 | |
US20200021448A1 (en) | Public-private key pair account login and key manager | |
WO2020181809A1 (zh) | 基于接口校验的数据处理的方法、系统和计算机设备 | |
WO2021114614A1 (zh) | 应用程序安全启动方法、装置、计算机设备和存储介质 | |
CN101443774A (zh) | 优化的完整性验证过程 | |
CN108462700B (zh) | 后台服务器、终端设备、适用于人脸识别的安全预警方法及存储介质 | |
CN112287324B (zh) | 图片验证方法、服务器、终端设备及存储介质 | |
TWI529641B (zh) | 驗證行動端動態顯示之資料之系統及其方法 | |
US20200233947A1 (en) | System and method for facilitating authentication via a short-range wireless token | |
CN107666470B (zh) | 一种验证信息的处理方法及装置 | |
CN113557508A (zh) | 用于转让数字资产的所有权的方法、计算机程序产品和设备 | |
EP2547135A2 (en) | Apparatus and method for preventing copying of terminal unique information in portable terminal | |
CN106487758B (zh) | 一种数据安全签名方法、业务终端以及私钥备份服务器 | |
CN115859267A (zh) | 一种应用程序安全启动的方法、存储控制芯片和电子设备 | |
CN110659474B (zh) | 应用间通信方法、装置、终端及存储介质 | |
CN112866987B (zh) | 组网验证方法、设备及计算机可读存储介质 | |
CN111818087B (zh) | 区块链的节点接入方法、装置、设备及可读存储介质 | |
CN111949996B (zh) | 安全私钥的生成方法、加密方法、系统、设备及介质 | |
CN113542187A (zh) | 文件上传下载方法、装置、计算机装置及介质 | |
CN111177674A (zh) | 设备验证方法及设备 | |
US11803539B2 (en) | Method of improving efficiency of updating data as to rules stored in block chain, electronic device, and computer readable storage medium applying the method | |
CN115442046A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |