CN108846274B - 一种安全验证方法、装置及终端 - Google Patents
一种安全验证方法、装置及终端 Download PDFInfo
- Publication number
- CN108846274B CN108846274B CN201810312164.6A CN201810312164A CN108846274B CN 108846274 B CN108846274 B CN 108846274B CN 201810312164 A CN201810312164 A CN 201810312164A CN 108846274 B CN108846274 B CN 108846274B
- Authority
- CN
- China
- Prior art keywords
- picture
- verification
- stylized
- information
- image
- 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
Images
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Editing Of Facsimile Originals (AREA)
- Collating Specific Patterns (AREA)
Abstract
本发明公开了一种安全验证方法、装置及终端,属于互联网通信技术领域。该方法包括:发送验证请求;接收并显示图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是原始图片经过风格变换后的图片;接收用户对所述第二图片的验证操作并生成验证信息;根据所述验证信息的校验结果显示安全验证的结果。本发明基于风格变换后得到的风格化图片生成图像验证码,提高了图像验证码的抗机器破解能力。
Description
技术领域
本发明涉及互联网通信技术领域,特别涉及一种安全验证方法、装置及终端。
背景技术
目前,验证码的应用比较普遍,其用于区分使用者是机器还是人类,能够有效地防止恶意破解密码、刷票、论坛灌水等现象的发生。
图像验证码是验证码的一种类型,现有的图像验证码是通过在原始图像上抠除局部块形成的验证码,验证时需要用户将被抠除的局部块从新位置移动到原始位置,从而将图像验证码还原为原始图像。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
相关技术中,机器通过将抠除局部块之后的图像与原始图像进行比对得到差异图,基于该差异图能够直接得到被抠除的局部块的新位置和原始位置,从而可以通过将处于新位置的局部块移动到其原始位置进行破解,验证码的抗破解能力差。虽然现有技术中存在采取对原始图像加随机噪声处理以提高图像验证码的抗破解能力的手段,但是通过降噪等处理之后,机器还是能够比较容易的得到被抠除的局部块的新位置和原始位置,因此,其抗攻击能力仍然比较差。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种安全验证方法、装置、终端及存储介质。所述技术方案如下:
第一方面,提供了一种安全验证方法,所述方法包括:
发送验证请求;
接收并显示图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是原始图片经过风格变换后的图片;
接收用户对所述第二图片的验证操作并生成验证信息;
根据所述验证信息的校验结果显示安全验证的结果。
第二方面,提供了一种安全验证方法,所述方法包括:
接收验证请求;
响应于所述验证请求以获取图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是原始图片经过风格变换后的图片;
发送所述图像验证码,并接收验证信息;所述验证信息为根据用户对所述第二图片的验证操作而生成;
根据所述验证信息生成校验结果,并发送所述校验结果。
第三方面,提供了一种安全验证装置,所述装置包括:
请求发送模块,用于发送验证请求;
验证码接收模块,用于接收并显示图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是原始图片经过风格变换后的图片;
验证信息生成模块,用于接收用户对所述第二图片的验证操作并生成验证信息
验证结果显示模块,用于根据所述验证信息的校验结果显示安全验证的结果。
第四方面,提供了一种安全验证装置,所述装置包括:
请求接收模块,用于接收验证请求;
第二获取模块,用于响应于所述验证请求以获取图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是原始图片经过风格变换后的图片;
第一发送模块,用于发送所述图像验证码;
第二接收模块,用于接收验证信息;所述验证信息为根据用户对所述第二图片的验证操作而生成;
校验结果发送模块,用于根据所述验证信息生成校验结果,并发送所述校验结果。
第五方面,提供了一种终端,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行以下步骤:
发送验证请求;
接收并显示图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是原始图片经过风格变换后的图片;
接收用户对所述第二图片的验证操作并生成验证信息;
根据所述验证信息的校验结果显示安全验证的结果。
第六方面,提供了一种计算机存储介质,该计算机存储介质存储有计算机程序指令,该计算机程序指令被执行时,实现上述的安全验证方法。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,由于风格变换得到的风格化图片很难通过反变换获得原始图片,因此,基于风格化图片生成的图像验证码,能够使得机器通过比对图像验证码与原始图片获得差异化图像以确定第二图片在原始图片中的位置变得比较困难,提高了图像验证码的抗机器破解能力。
此外,在整个安全验证过程中,用户只能看到图像验证码,而无法看到完整的风格化图片,因此,对于机器来说无法实现通过比对完整的风格化图片和图像验证码来获得第二图片在风格化图片中的位置信息,从而提高了图像验证码的抗机器破解能力。
另外,本发明实施例中,人眼能够比较容易的辨识出第二图片在第一图片中的匹配位置,从而通过移动第二图片完成安全验证,不会对作为用户的人的体验产生影响。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的实施环境的示意图;
图2是本发明实施例提供的服务器的架构图;
图3是本发明实施例提供的一种安全验证方法的流程图;
图4是本发明实施例提供的图像验证码的生成方法流程图;
图5是本实施例提供的采用深度卷积神经网络模型对原始图片进行风格变换以生成风格化图片的示例图;
图6是本发明实施例提供的根据验证信息生成校验结果的方法流程图;
图7是本发明实施例提供的根据像素差值生成验证信息的校验结果的方法流程图;
图8是本发明实施例提供的另一种安全验证方法的流程图;
图9是本发明实施例提供的另一种安全验证方法的流程图;
图10是本发明实施例提供的另一种安全验证方法的流程图;
图11是本发明实施例提供的一种安全验证装置的框图;
图12是本发明实施例提供的验证码生成模块的框图;
图13是本发明实施例提供的校验结果生成模块的框图;
图14是本发明实施例提供的另一种安全验证装置的框图;
图15是本发明实施例提供的终端的结构示意图;
图16是本发明实施例提供的服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图1,其示出了本发明实施例提供的实施环境的示意图,该实施环境包括:终端01和服务器02。
需要说明的是,本发明实施例的安全验证方法可应用于本发明实施例的安全验证装置。其中,终端01可以包括支持网络功能的:智能手机、平板电脑、电子书阅读器、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机、车载电脑、可穿戴设备、台式计算机、机顶盒、智能电视、一体机等等。
服务器02可以是一台服务器,也可以是由若干台服务器组成的服务器集群。
服务器02可以通过网络与终端01建立通信连接。该网络可以是无线网络,也可以是有线网络。
在一个示例中,如图2所示,当服务器02为集群架构时,服务器02可以包括:网页服务器021、验证码服务器022、图片存储服务器023、风格化服务器024和验证服务器025,其中:
网页服务器021用于与终端01、验证码服务器022和验证服务器025进行交互。例如,网页服务器021接收用户通过终端01发送的验证请求,向终端01发送图像验证码等。网页服务器021还可以接收验证码服务器022发送的图像验证码以及验证服务器025发送的校验结果。
验证码服务器022用于提供生成图像验证码的功能。图片存储服务器023用于提供存储用于生成图像验证码的原始图片的功能。风格化服务器024用于提供对原始图片进行风格变换的功能。验证服务器025用于提供安全验证的功能。
上述各个服务器之间可通过网络建立通信连接。该网络可以是无线网络,也可以是有线网络。
请参考图3,其示出了本发明实施例提供的一种安全验证方法的流程图,该方法可应用于图1所示的实施环境中。如图3所示,该安全验证方法可以包括:
步骤301,发送验证请求。
当用户需要登录时,可以通过终端向服务器发送验证请求,通过该验证请求从服务器拉取验证码。
步骤302,接收并显示图像验证码。
在本发明实施例中,终端接收并显示基于上述验证请求而获得的图像验证码,该图像验证码包括第一图片和第二图片,该第二图片是从风格化图片中切取的图片,该第一图片是从风格化图片中切除上述第二图片后剩余的图片。
上述风格化图片是用于生成图像验证码的原始图片经过风格变换后得到的图片。
风格变换可以是指通过某种算法,将原始图片中的图像转换成拥有某种特定风格的图像,从而生成风格化图片。图像的风格主要是通过图像中的细节纹理,线条的表达方式和着色风格体现,所以图片的风格转换就是将原始图片中的纹理和着色风格转换为某种指定的风格,即将参考风格图像的风格转换到另一个输入图像中,比如,选择一种参考图像,可以将在不同光照,不同时段,不同季节拍摄的照片,艺术化地转移成不同的风格。
原始图片经过风格变换后得到该原始图片的风格化图片,一般机器较难将该风格化图片进行反变换以得到原始图片。
在本发明实施例中,上述图像验证码的生成方式可以采用图4所示的方法。图4所示为本发明实施例提供的图像验证码的生成方法流程图,如图4所示,该方法包括:
步骤401,获取用于生成图像验证码的原始图片。
在本发明实施例中,原始图片为数据库中预先存储的图片,获取原始图片的方式可以是随机获取,也可以是按照预先设定的规则获取。
步骤402,根据上述原始图片获得风格化图片。
在本发明实施例中,上述获得风格化图片可以是在验证请求的触发下,根据原始图片实时生成的风格化图片,也可以是根据原始图片获取预先生成的风格化图片,该预先生成的风格化图片可以存储在数据库中。
在本发明实施例中,可以采用深度卷积神经网络模型对原始图片进行风格变换以生成风格化图片。
例如,可以采用预先训练好的19层VGG网络(简称为VGG-19),该VGG网络包含16个卷积层和5个池化层提供的特征空间,每个卷积层的卷积核大小都是3,步长为1,同时每个卷积层后面都有一个ReLU的非线性激活层,经该函数处理后的输出即为图像风格化得到的特征图。
风格变换即将普通的图像变成另一张风格图像的风格,其基本原理为:给定一张图片X和一副风格图像S,找到一张图片Y,使得Y在内容上与X相近,同时在风格上与S相近。图片的内容和风格可以是通过已经训练好的VGG-19网络提取。
如图5所示是采用深度卷积神经网络模型对原始图片进行风格变换以生成风格化图片的示例图,其中,箭头所指向的图片为原始图片,箭头根部的图片为风格图片即用于风格变换的样本参考图,箭头下方的图片为深度卷积神经网络模型输出的风格化图片,可见,该风格化图片的内容与原始图片相近,而其风格与风格图片相近。
对于一个训练好的VGG-19网络,以图片A作为输入,就可以得到若干组特征图,这些特征图的结构为[H,W,C],其中,H和W分别代表特征图的高和宽,C代表特征图的个数,该[H,W,C]可以代表A的内容,经过变形以后得到结构为[H*W,C]的多维数组F(X),对该多维数组F(X)求格拉姆矩阵G=Gram(F(X)),可以得到X的纹理特征,即风格。
定义好内容和风格的提取方式以后,图像风格变换的问题可以通过优化的方式解决。假设Y是根据X的内容和S的风格合成的图像,Y与X的内容误差为:
Y与S的风格误差为:
从而总体误差为:
LA=α·LC+β·LS
其中,α是内容在整体误差中所占比重,β是风格在整体误差中所占比重,α和β取值大小的不同代表对内容和风格的侧重点不一样。
风格变换的算法可以基于迭代优化,具体为:1)随机初始化图像Y;2)求出整体误差LA;3)根据梯度下降算法调整Y的每一个点像素值;4)如果LA收敛或者小于预设阈值,则停止迭代,否则继续第2)步。
由于深度卷积神经网络通常具有至少几百万的参数,如此复杂的参数变换使得想要将风格变换后得到的风格化图片进行反变换以得到原始图片很难实现。
步骤403,从风格化图片中切取局部图片作为第二图片。
风格化图片切除上述第二图片后剩余的图片作为第一图片,需要说明的是,第二图片的形状和大小均可以随机产生,如该第二图片的形状可以为四边形、五边形、椭圆、圆、三角形以及不规则图形等,该第二图片的大小可以通过随机产生的形状参数进行改变,该随机产生的形状参数可以为圆的半径、椭圆的长轴和短轴、三角形的边长等。
在本发明实施例中,为了增加机器破解图像验证码的难度,在每次发起安全验证时,图像验证码中的第二图片的形状和/或大小以随机的方式产生,如此,将很难预测在各次安全验证中,终端所显示的图像验证码中的第二图片的形状和大小,有利于提高图像验证的抗破解能力。
步骤404,获取第二图片的第一位置信息,该第一位置为第二图片在上述风格化图片中的位置。
在从风格化图片中切取第二图片之后,获取该第二图片在风格化图片中的位置信息作为第一位置信息。可以理解的,该第一位置信息可以用于表示第二图片的原始位置。
需要说明的是,上述第一位置信息可以为第二图片的中心位置在风格化图片中的位置坐标。
步骤405,将第二图片从第一位置移动至第二位置以生成图像验证码,该第二位置为第一图片中的任意位置。
可以理解的,该第二位置即为第二图片新放置的位置。
需要说明的是,为了提高图像验证码的抗破解能力,在生成图像验证码之前,还可以对移动至第二位置的第二图片进行旋转一定角度或者翻转。当然,还可以对第一图片中的空白部位(即缺省部位)进行简单的图案或者颜色填充,以增加机器查找该部位的难度。
在本发明实施例中,为了增加机器破解图像验证码的难度,在每次发起安全验证时,图像验证码中的第二图片的原始位置(即第一位置)和新放置的位置(即第二位置)以随机的方式产生,如此将增加机器获得第二图片的原始位置和新放置的位置的难度,有利于提高图像验证码的抗破解能力。
在本发明实施例中,基于风格变换后得到的风格化图片生成的图像验证码包括上述第一图片和第二图片,第二图片能够相对于第一图片移动,或者对第二图片进行操作还能使其翻转,或者绕某一固定点旋转一定角度。比如,选中第二图片对其进行拖动可以使其相对于第一图片移动;点击第二图片能够使其翻转;点选第二图片中的某一点,可以使其旋转一定角度。
由于风格变换后的图片可能具有一定的抽象性,因此,用户看到的第一图片和第二图片在视觉感受上可能会不舒服,为了提高用户的体验效果,使得作为人的用户在看到图像验证码时不至于产生突兀的感觉,并确保作为人的用户能够顺利通过安全验证,本发明实施例中,在步骤302之前,终端还可以接收用于生成图像验证码的原始图片并显示该原始图片以使得用户在看到图像验证码(风格化的第二图片和第一图片)之前,能够先看到原始图片。
步骤303,接收用户对第二图片的验证操作并生成验证信息。
在本发明实施例中,用户对上述第二图片的验证操作包括移动第二图片,比如选中第二图片并将其拖动到第一图片的缺省部位。当然,可以理解的,上述验证操作还可以包括翻转第二图片以及旋转第二图片。
在本发明实施例中,验证信息包括上述第二图片的第三位置信息,该第三位置信息是用户操作上述第二图片之后,该第二图片的位置信息。
上述第三位置信息可以为移动之后的第二图片的中心位置在第一图片中的位置坐标。
需要说明的是,上述验证信息还可以包括第二图片的画面信息以及旋转角度信息。
步骤304,根据验证信息的校验结果显示安全验证的结果。
终端获取验证信息的校验结果并根据该校验结果显示本次安全验证的结果。可以理解的,安全验证的结果包括未通过安全验证和通过安全验证,终端可以将安全验证的结果以文字形式展示给用户,当然,还可以通过语音播报的方式告知用户。
在本发明实施例中,验证信息的校验结果可以采用图6所示的方法生成。图6所示为本发明实施例提供的根据验证信息生成校验结果的方法流程图,如图6所示,该方法包括:
步骤601,根据第二图片的第三位置信息获取第一像素信息。
终端在接收用户对第二图片的验证操作时生成并获取验证信息,该验证信息包括第二图片的第三位置信息,该第三位置信息是用户操作第二图片之后,该第二图片的位置信息。
终端根据获取的第二图片的第三位置信息进一步获取第一像素信息,如当该第三位置信息为移动之后的第二图片的中心位置在第一图片中的位置坐标时,该第一像素信息为该移动之后的第二图片的中心位置的像素值。
步骤602,根据第二图片的第一位置信息获取第二像素信息。
在生成图像验证码时,已获取第二图片的第一位置信息,即第二图片在风格化图片上的原始位置信息。在进行校验结果的生成过程中,终端根据获取的第二图片的第一位置信息进一步获取第二像素信息,如当该第一位置信息为第二图片的中心位置在风格化图片中的位置坐标时,该第二像素信息为该第二图片的中心位置的像素值。
步骤603,根据上述第一像素信息和第二像素信息计算像素差值。
终端在获取到第一像素信息和第二像素信息之后,计算第一像素值和第二像素值的像素差值。
步骤604,根据上述像素差值生成验证信息的校验结果。
在计算出第一像素值和第二像素值的像素差值之后,终端根据该像素差值生成相应的验证信息的校验结果。
在本发明实施例中,根据像素差值生成验证信息的校验结果可以采用图7所示的方法。图7所示为本发明实施例提供的根据像素差值生成验证信息的校验结果的方法流程图,如图7所示,该方法包括:
步骤701,判断上述像素差值是否大于预设阈值。
在计算出第一像素值和第二像素值的像素差值之后,终端判断该像素差值是否大于预设阈值,该预设阈值为预先设置的像素差值,如该预设阈值可以为5像素。
步骤702,若上述像素差值大于预设阈值,则生成校验未通过的结果。
若该像素差值大于预设阈值,例如,用户移动第二图片后,终端获取的移动之后的第二图片的中心位置的像素值与风格化图片中该第二图片的中心位置的像素值的差值大于预设阈值,即可判读出目前进行安全验证的用户为机器,从而生成校验未通过的结果。在生成校验未通过的结果后,终端即根据该结果向用户显示安全验证未通过。
步骤703,若上述像素差值小于或者等于预设阈值,则生成校验通过的结果。
若该像素差值小于或者等于预设阈值,例如,用户移动第二图片后,终端获取的移动之后的第二图片的中心位置的像素值与风格化图片中该第二图片的中心位置的像素值的差值小于或者等于预设阈值,即可判读出目前进行安全验证的用户并非机器,从而生成校验通过的结果。在生成校验通过的结果后,终端即根据该结果向用户显示安全验证通过。
需要说明的是,为了提高图像验证码的抗破解能力,还可以在根据像素差值进行安全验证的基础上,考虑根据第二图片的画面信息以及旋转角度进一步进行安全验证,当像素差值、画面信息、旋转角度均满足设定的要求时,生成当前校验通过的结果。
综上,本发明实施例所提供的安全验证方法,由于风格变换得到的风格化图片很难通过反变换获得原始图片,因此,基于风格化图片生成的图像验证码,能够使得机器通过比对图像验证码与原始图片获得差异化图像以确定第二图片在原始图片中的位置变得比较困难,提高了图像验证码的抗机器破解能力。
此外,在整个安全验证过程中,用户只能看到图像验证码,而无法看到完整的风格化图片,因此,对于机器来说无法实现通过比对完整的风格化图片和图像验证码来获得第二图片在风格化图片中的位置信息,从而提高了图像验证码的抗机器破解能力。
另外,本发明实施例中,人眼能够比较容易的辨识出第二图片在第一图片中的匹配位置,从而通过移动第二图片完成安全验证,不会对作为用户的人的体验产生影响。
请参考图8,其示出了本发明实施例提供的另一种安全验证方法的流程图,该方法可应用于图1所示的实施环境中。如图8所示,该安全验证方法可以包括:
步骤801,接收终端发送的验证请求。
服务器接收终端发送的用于拉取验证码的验证请求,该验证码可以用于对终端的用户进行安全验证。
步骤802,响应于上述验证请求以获取图像验证码。
服务器接收到验证请求后,响应于该验证请求以获取图像验证码。在本发明实施例中,图像验证码包括第一图片和第二图片,该第二图片是从风格化图片中切取的图片,该第一图片是从风格化图片中切除上述第二图片后剩余的图片。
上述风格化图片是用于生成图像验证码的原始图片经过风格变换后得到的图片。
该步骤中的图像验证码的生成方式可以参见图4所示的方法实施例,在此不再赘述。
步骤803,发送图像验证码,并接收验证信息。
服务器响应于验证请求生成并获取图像验证码之后,将该图像验证码发送给终端,以使得终端将该图像验证码显示给用户,并请求用户对上述第二图片进行验证操作以生成验证信息。
在本发明实施例中,终端用户对第二图片的验证操作包括用户对第二图片进行的移动操作,还可以包括用户对第二图片的翻转以及旋转操作。
在本发明实施例中,服务器接收的验证信息包括第二图片的第三位置信息,该第三位置信息是用户操作上述第二图片之后,该第二图片的位置信息。
上述第三位置信息可以为移动之后的第二图片的中心位置在第一图片中的位置坐标。
需要说明的是,上述验证信息还可以包括第二图片的画面信息以及旋转角度信息。
在本发明实施例中,终端可以响应于用户的操作指令发送上述验证信息,该操作指令可以是用户点击提交按钮,下发的提交指令。
需要说明的是,由于风格变换后的图片可能具有一定的抽象性,因此,终端展示给用户的第一图片和第二图片可能会使用户的视觉感受不舒服,为了提高用户的体验效果,使得作为人的用户在看到图像验证码时不至于产生突兀的感觉,并确保作为人的用户能够顺利通过安全验证,本发明实施例中,在步骤803之前,服务器还可以将用于生成图像验证码的原始图片发送给终端,以使得终端将该原始图片显示给用户。
在本发明实施例中,服务器可以根据终端发送的显示图像验证码的请求将上述获取的图像验证码发送给终端,也可以在获取完图像验证码之后就将该图像验证码发送给终端,还可以设定向终端发送原始图片与向终端发送图像验证码的时间间隔,当时间间隔达到时,服务器发送该图像验证码给终端。当然,可以理解的,该时间间隔内服务器应能完成上述图像验证码的生成操作。
步骤804,根据上述验证信息生成校验结果,并发送该校验结果。
服务器接收终端返回的验证信息之后,根据该验证信息生成校验结果,并把校验结果发送给终端,以使得终端根据其接收的验证信息的校验结果向用户显示安全验证的结果。
在该步骤中,校验结果的生成方式可以参见图6和图7所示的方法实施例,在此不再赘述。
在一个示例中,当服务器为图2所示的集群架构时,该安全验证方法可以如图9所示包括如下步骤:
步骤901,终端向网页服务器发送验证请求。
在用户需要登录服务器时,终端会向网页服务器021发送验证请求。
相应的,网页服务器021接收终端01发送的验证请求。
步骤902,网页服务器向验证码服务器发送拉取验证码的请求。
网页服务器021接收用户通过终端01发送的操作请求,根据该操作请求,向验证码服务器022发送拉取验证码的请求,该请求用于向验证码服务器022获取进行安全验证的验证码。
相应的,验证码服务器022接收网页服务器021发送的拉取验证码的请求。
步骤903,验证码服务器从图片存储服务器获取用于生成图像验证码的原始图片,并将该原始图片发送给网页服务器。
在本发明实施例中,图片存储服务器023中存储了大量的原始图片。验证码服务器022获取用于生成图像验证码的原始图片的方式可以是随机获取,也可以是按照预定的规则获取。
验证码服务器022从图片存储服务器023获取到原始图片之后,将该原始图片发送给网页服务器021。
在本发明实施例中,验证码服务器022还可以将上述原始图片发送给风格化服务器024。
相应的,网页服务器021和风格化服务器分别接收验证码服务器022发送的原始图片。
步骤904,网页服务器将上述原始图片发送给终端。
网页服务器021在接收到验证码服务器022发送的原始图片之后,将该原始图片发送给终端01,以使得终端01将该原始图片显示给用户。
步骤905,风格化服务器对上述原始图片进行风格变换以生成风格化图片。
风格化服务器024在接收到验证码服务器022发送的原始图片之后,对该原始图片进行风格变换,风格变换后的图片即为风格化图片。
在本发明实施例中,可以采用深度卷积神经网络模型对输入的原始图片进行风格变换。
例如,可以采用预先训练好的19层VGG网络(简称为VGG-19),该VGG网络包含16个卷积层和5个池化层提供的特征空间,每个卷积层的卷积核大小都是3,步长为1,同时每个卷积层后面都有一个ReLU的非线性激活层,经该函数处理后的输出即为图像风格化得到的特征图。
风格变换即将普通的图像变成另一张风格图像的风格,其基本原理为:给定一张图片X和一副风格图像S,找到一张图片Y,使得Y在内容上与X相近,同时在风格上与S相近。图片的内容和风格可以是通过已经训练好的VGG-19网络提取。
对于一个训练好的VGG-19网络,以图片A作为输入,就可以得到若干组特征图,这些特征图的结构为[H,W,C],其中,H和W分别代表特征图的高和宽,C代表特征图的个数,该[H,W,C]可以代表A的内容,经过变形以后得到结构为[H*W,C]的多维数组F(X),对该多维数组F(X)求格拉姆矩阵G=Gram(F(X)),可以得到X的纹理特征,即风格。
定义好内容和风格的提取方式以后,图像风格变换的问题可以通过优化的方式解决。假设Y是根据X的内容和S的风格合成的图像,Y与X的内容误差为:
Y与S的风格误差为:
从而总体误差为:
LA=α·LC+β·LS
其中,α是内容在整体误差中所占比重,β是风格在整体误差中所占比重,α和β取值大小的不同代表对内容和风格的侧重点不一样。
风格变换的算法可以基于迭代优化,具体为:1)随机初始化图像Y;2)求出整体误差LA;3)根据梯度下降算法调整Y的每一个点像素值;4)如果LA收敛或者小于预设阈值,则停止迭代,否则继续第2)步。
由于深度卷积神经网络通常具有至少几百万的参数,如此复杂的参数变换使得想要将风格变换后得到的风格化图片进行反变换以得到原始图片很难实现。
步骤906,风格化服务器向验证码服务器发送上述风格化图片。
风格化服务器024对原始图片进行风格变换生成风格化图片之后,将该风格化图片发送给验证码服务器022。
相应的,验证码服务器022接收风格化服务器024发送的风格化图片。
步骤907,验证码服务器根据上述风格化图片生成图像验证码。
验证码服务器022获取到风格化图片后,根据该风格化图片生成图像验证码,该图像验证码包括第一图片和第二图片,第二图片是从上述风格化图片中切取的图片,第一图片是从上述风格化图片中切除上述第二图片后剩余的图片。第二图片能够相对于第一图片移动,或者对第二图片进行操作还能使其翻转,或者绕某一固定点旋转一定角度。比如,选中第二图片对其进行拖动可以使其相对于第一图片移动;点击第二图片能够使其翻转;点选第二图片中的某一点,可以使其旋转一定角度。
上述图像验证码的生成方式可以参见图4所示的方法实施例,在此不再赘述。
需要说明的是,在生成图像验证码的过程中,验证码服务器022会获取上述第二图片的第一位置信息,该第一位置为第二图片在上述风格化图片中的位置。验证码服务器022将上述第二图片的第一位置信息发送给验证服务器025。
相应的,验证服务器025接收验证码服务器022发送的第二图片的第一位置信息。
步骤908,验证码服务器将上述图像验证码发送给网页服务器。
验证码服务器022在完成图像验证码的生成之后,将该图像验证码发送给网页服务器021。
相应的,网页服务器021接收验证码服务器022发送的图像验证码。
步骤909,网页服务器将上述图像验证码发送给终端,该终端用于接收对上述第二图片的验证操作并生成验证信息。
网页服务器021接收到图像验证码之后,将该图像验证码发送给终端01,以使得终端01将该图像验证码显示给用户,并接受用户对上述第二图片的验证操作并生成验证信息。
用户对上述第二图片的验证操作包括移动第二图片,比如选中第二图片并将其拖动到某一位置。当然,可以理解的,上述验证操作还可以包括翻转第二图片以及旋转第二图片。
验证信息包括上述第二图片的位置信息,该第二图片的位置信息是用户操作上述第二图片之后,该第二图片的位置信息。
当然,该验证信息还可以包括第二图片的画面信息以及旋转角度信息。
相应的,终端01接收网页服务器021发送的图像验证码。
在本发明实施例中,可以在网页服务器021设置定时器,该定时器用于设置网页服务器021发送原始图片与发送图像验证码的时间间隔,当预设的时间间隔达到时,网页服务器021才将图像验证码发送给终端。
可以理解的,网页服务器还可以在接收到终端发送的图像验证码发送请求之后,再将该图像验证码发送给终端。
步骤910,终端显示上述图像验证码。
终端01在接收到图像验证码之后,将该图像验证码进行显示,以使得用户能够看到图像验证码。
步骤911,终端监控第二图片,接收用户对上述第二图片的验证操作,生成验证信息。
上述验证信息包括第二图片的第三位置信息,该第二图片的第三位置信息是用户操作上述第二图片之后,该第二图片的位置信息。
当然,上述验证信息还可以包括第二图片的画面信息以及旋转角度信息。
步骤912,发送上述验证信息给网页服务器,并等待网页服务器发送的校验结果。
终端响应于用户的操作指令发送上述验证信息,如当终端用户点击提交按钮,下发提交指令后,终端将生成的验证信息发送给网页服务器021,并等待网页服务器021返回的校验结果。
相应的,网页服务器021接收终端01发送的验证信息。
步骤913,网页服务器将上述验证信息发送给验证服务器。
相应的,验证服务器接收上述验证信息。
步骤914,验证服务器根据上述验证信息进行安全验证,并将校验结果发送给网页服务器。
验证服务器025接收到验证信息之后,进行安全验证以生成校验结果,具体的校验结果的生成过程请参见图6和图7,在此不作赘述。
生成校验结果之后,验证服务器025将校验结果发送给网页服务器021。该校验结果包括校验未通过和校验通过。
相应的,网页服务器021接收校验结果。
步骤915,网页服务器将校验结果发送给终端。
相应的终端接收网页服务器发送的校验结果。
步骤916,终端根据校验结果显示安全验证的结果。
网页服务器021接收到校验结果后,将该校验结果发送给终端01,以使得终端根据该校验结果显示安全验证的结果。具体的,当校验结果为校验未通过时,终端向用户显示安全验证未通过的结果,当校验结果为校验通过时,终端向用户显示安全验证通过的结果。
请参阅图10,其所示为本发明实施例提供的另一种安全验证方法的流程图。本实施例可应用于图2所示的应用环境中,通过图2所示的终端与各服务器实现该安全验证方法。如图10所示,该安全验证方法包括:
步骤1001,风格化服务器从图片存储服务器获取原始图片。
步骤1002,风格化服务器对原始图片进行风格变换以生成风格化图片,并将生成的风格化图片发送给图片存储服务器。具体的对原始图片进行风格变换以生成风格化图片的相关细节可以参见步骤905,此处不作赘述。
相应的,图片存储服务器接收风格化服务器发送的风格化图片。
步骤1003,图片存储服务器存储风格化图片以及原始图片与风格化图片的对应关系。
图片存储服务器接收风格化图片之后,建立原始图片与风格化图片间的对应关系,并存储该对应关系,以使得后续能够根据获取的原始图片查找到与该原始图片相对应的风格化图片。
步骤1004,终端向网页服务器发送验证请求。
步骤1005,网页服务器向验证码服务器发送拉取验证码的请求。
步骤1006,验证码服务器从图片存储服务器获取用于生成图像验证码的原始图片,并将该原始图片发送给网页服务器。
步骤1007,网页服务器将上述原始图片发送给终端。
需要说明的是,网页服务器也可以不将原始图片发送给终端,即步骤1006后可以直接执行步骤1008。
步骤1008,验证码服务器从图片存储服务器获取与上述原始图片相对应的风格化图片。
步骤1009,验证码服务器根据上述风格化图片生成图像验证码。
步骤1010,验证码服务器将上述图像验证码发送给网页服务器。
步骤1011,网页服务器将上述图像验证码发送给终端。
步骤1012,终端接收并显示上述图像验证码。
步骤1013,终端接收用户对第二图片的验证操作,生成验证信息。
步骤1014,终端发送上述验证信息给网页服务器,并等待网页服务器发送的校验结果。
步骤1015,网页服务器将上述验证信息发送给验证服务器。
步骤1016,验证服务器根据上述验证信息进行安全验证,并将校验结果发送给网页服务器。
步骤1017,网页服务器将校验结果发送给终端。
步骤1018,终端根据校验结果显示安全验证的结果。
具体的,步骤1009至步骤1018可以参考前述步骤907至步骤916,在此不作赘述。
综上,本发明实施例所提供的安全验证方法,由于风格变换得到的风格化图片很难通过反变换获得原始图片,因此,基于风格化图片生成的图像验证码,能够使得机器通过比对图像验证码与原始图片获得差异化图像以确定第二图片在原始图片中的位置变得比较困难,提高了图像验证码的抗机器破解能力。
此外,在整个安全验证过程中,用户只能看到图像验证码,而无法看到完整的风格化图片,因此,对于机器来说无法实现通过比对完整的风格化图片和图像验证码来获得第二图片在风格化图片中的位置信息,从而提高了图像验证码的抗机器破解能力。
另外,本发明实施例中,人眼能够比较容易的辨识出第二图片在第一图片中的匹配位置,从而通过移动第二图片完成安全验证,不会对作为用户的人的体验产生影响。
请参阅图11,其所示为本发明实施例提供的一种安全验证装置的框图,该装置具有实现上述方法实施例中终端侧的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。如图11所示,该安全验证装置1100可以包括:请求发送模块1101,验证码接收模块1102,验证信息生成模块1103和验证结果显示模块1104。
请求发送模块1101,用于发送验证请求。
验证码接收模块1102,用于接收并显示图像验证码,该图像验证码包括第一图片和第二图片,其中,第二图片是从风格化图片中切取的图片,第一图片是从风格化图片中切除第二图片后剩余的图片;风格化图片是原始图片经过风格变换后的图片。
可选的,可以将原始图片输入至深度卷积神经网络模型中进行风格变换以获得风格化图片。
验证信息生成模块1103,用于接收用户对第二图片的验证操作并生成验证信息。
上述验证信息包括第二图片的第三位置信息,该第三位置信息是用户操作第二图片之后,第二图片的位置信息。
验证结果显示模块1104,用于根据验证信息的校验结果显示安全验证的结果。
可选的,如图11所示,该装置还可以包括用于生成图像验证码的验证码生成模块1105。如图12所示,该验证码生成模块1105可以包括:第一获取模块1105a,风格化图片获得模块1105b,切取模块1105c,第一位置模块1105d和第一生成子模块1105e,其中,
第一获取模块1105a,用于获取用于生成图像验证码的原始图片。
风格化图片获得模块1105b,用于根据所述原始图片获得风格化图片。
切取模块1105c,用于从风格化图片中切取局部图片作为所述第二图片。
第一位置模块1105d,用于获取第二图片的第一位置信息,该第一位置为第二图片在上述风格化图片中的位置。
第一生成子模块1105e,用于将第二图片从第一位置移动至第二位置以生成图像验证码,该第二位置为第一图片中的任意位置。
可选的,如图11所示,该装置还可以包括用于生成验证信息的校验结果的校验结果生成模块1106。如图13所示,该校验结果生成模块1106可以包括:第一像素获取模块1106a,第二像素获取模块1106b,像素差值计算模块1106c和第二生成子模块1106d,其中,
第一像素获取模块1106a,用于根据第二图片的第三位置信息获取第一像素信息。
在本发明实施例中,验证信息生成模块1103生成的验证信息包括第二图片的第三位置信息,该第三位置信息是用户操作第二图片之后,该第二图片的位置信息。
第二像素获取模块1106b,用于根据第二图片的第一位置信息获取第二像素信息。
像素差值计算模块1106c,用于根据上述第一像素信息和第二像素信息计算像素差值。
第二生成子模块1106d,用于根据上述像素差值生成验证信息的校验结果。
可选的,如图11所示,该装置还可以包括第一接收模块1107,该第一接收模块1107用于接收并显示用于生成图像验证码的原始图片。
请参阅图14,其所示为本发明实施例提供的另一种安全验证装置的框图,该装置具有实现上述方法实施例中服务器侧的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。如图14所示,该安全验证装置1400可以包括:请求接收模块1401,第二获取模块1402,第一发送模块1403,第二接收模块1404和校验结果发送模块1405。
请求接收模块1401,用于接收验证请求。
第二获取模块1402,用于响应于上述验证请求以获取图像验证码,该图像验证码包括第一图片和第二图片,其中,第二图片是从风格化图片中切取的图片,第一图片是从风格化图片中切除第二图片后剩余的图片;上述风格化图片是原始图片经过风格变换后的图片。
第一发送模块1403,用于发送上述图像验证码。
第二接收模块1404,用于接收验证信息;该验证信息为根据用户对第二图片的验证操作而生成。
校验结果发送模块1405,用于根据上述验证信息生成校验结果,并发送该校验结果。
综上,本发明实施例提供的安全验证装置,由于风格变换得到的风格化图片很难通过反变换获得原始图片,因此,基于风格化图片生成的图像验证码,能够使得机器通过比对图像验证码与原始图片获得差异化图像以确定第二图片在原始图片中的位置变得比较困难,提高了图像验证码的抗机器破解能力。
此外,在整个安全验证过程中,用户只能看到图像验证码,而无法看到完整的风格化图片,因此,对于机器来说无法实现通过比对完整的风格化图片和图像验证码来获得第二图片在风格化图片中的位置信息,从而提高了图像验证码的抗机器破解能力。
另外,本发明实施例中,人眼能够比较容易的辨识出第二图片在第一图片中的匹配位置,从而通过移动第二图片完成安全验证,不会对作为用户的人的体验产生影响。
本发明一示例性实施例还提供了一种安全验证***,该***包括:终端和服务器。
终端,用于向服务器发送验证请求;接收并显示图像验证码,该图像验证码包括第一图片和第二图片,该第二图片是从风格化图片中切取的图片,第一图片是从风格化图片中切除第二图片后剩余的图片,上述风格化图片是原始图片经过风格变换后的图片;接收用户对上述第二图片的验证操作并生成验证信息;根据上述验证信息的校验结果显示安全验证的结果。
服务器,用于接收终端发送的验证请求;响应于该验证请求以获取图像验证码,该图像验证码包括第一图片和第二图片,该第二图片是从风格化图片中切取的图片,第一图片是从风格化图片中切除上述第二图片后剩余的图片,上述风格化图片是原始图片经过风格变换后的图片;向终端发送上述图像验证码,并接收终端返回的验证信息,该验证信息为根据用户对上述第二图片的验证操作而生成;根据上述验证信息生成校验结果,并向终端发送该校验结果。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
请参阅图15,其所示为本发明一实施例提供的终端的结构示意图,该终端用于实施上述实施例中提供的终端侧的安全验证方法。具体来讲:
终端1500可以包括RF(Radio Frequency,射频)电路1510、包括有一个或一个以上计算机可读存储介质的存储器1520、输入单元1530、显示单元1540、视频传感器1550、音频电路1560、WiFi(wireless fidelity,无线保真)模块1570、包括有一个或者一个以上处理核心的处理器1580、以及电源150等部件。本领域技术人员可以理解,图15中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路1510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器1580处理;另外,将涉及上行的数据发送给基站。通常,RF电路1510包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路1510还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯***)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(Code Division Multiple Access,码分多址)、WCDMA(Wideband Code DivisionMultiple Access,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(Short Messaging Service,短消息服务)等。
存储器1520可用于存储软件程序以及模块,处理器1580通过运行存储在存储器1520的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器1520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端1500的使用所创建的数据(比如视频数据、电话本等)等。此外,存储器1520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器1520还可以包括存储器控制器,以提供处理器1580和输入单元1530对存储器1520的访问。
输入单元1530可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元1530可包括图像输入设备1531以及其他输入设备1532。图像输入设备1531可以是摄像头,也可以是光电扫描设备。除了图像输入设备1531,输入单元1530还可以包括其他输入设备1532。具体地,其他输入设备1532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1540可用于显示由用户输入的信息或提供给用户的信息以及终端1500的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元1540可包括显示面板1541,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,15有机发光二极管)等形式来配置显示面板1541。
终端1500可包括至少一种视频传感器1550,视频传感器用于获取用户的视频信息。终端1500还可以包括其它传感器(未示出),比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1541的亮度,接近传感器可在终端1500移动到耳边时,关闭显示面板1541和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端1500还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
视频电路1560、扬声器1561,传声器1562可提供用户与终端1500之间的视频接口。音频电路1560可将接收到的音频数据转换后的电信号,传输到扬声器1561,由扬声器1561转换为声音信号输出;另一方面,传声器1562将收集的声音信号转换为电信号,由音频电路1560接收后转换为音频数据,再将音频数据输出处理器1580处理后,经RF电路1511以发送给比如另一终端,或者将音频数据输出至存储器1520以便进一步处理。音频电路1560还可能包括耳塞插孔,以提供外设耳机与终端1500的通信。
WiFi属于短距离无线传输技术,终端1500通过WiFi模块1570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图15示出了WiFi模块1570,但是可以理解的是,其并不属于终端1500的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1580是终端1500的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器1520内的软件程序和/或模块,以及调用存储在存储器1520内的数据,执行终端1500的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器1580可包括一个或多个处理核心;优选的,处理器1580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1580中。
终端1500还包括给各个部件供电的电源150(比如电池),优选的,电源可以通过电源管理***与处理器1580逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源150还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端1500还可以包括蓝牙模块等,在此不再赘述。
具体在本实施例中,终端1500还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述终端侧的方法的指令。
请参阅图16,其所示为本发明实施例提供的服务器的结构示意图,该服务器用于实施上述实施例中提供的服务器侧的安全验证方法。具体来讲:
该服务器1600包括中央处理器(CPU)1601、包括随机存取存储器(RAM)1602和只读存储器(ROM)1603的***存储器1604,以及连接***存储器1604和中央处理器1601的***总线1605。所述服务器1600还包括帮助计算机内的各个器件之间传输信息的基本输入/输出***(I/O***)1606,和用于存储操作***1613、应用程序1614和其他程序模块1615的大容量存储设备16 07。
所述基本输入/输出***1606包括有用于显示信息的显示器1608和用于用户输入信息的诸如鼠标、键盘之类的输入设备1609。其中所述显示器1608和输入设备1609都通过连接到***总线1605的输入输出控制器1610连接到中央处理器1601。所述基本输入/输出***1606还可以包括输入输出控制器1610以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1610还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1607通过连接到***总线1605的大容量存储控制器(未示出)连接到中央处理器1301。所述大容量存储设备1607及其相关联的计算机可读介质为服务器1600提供非易失性存储。也就是说,所述大容量存储设备1607可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的***存储器1604和大容量存储设备1607可以统称为存储器。
根据本发明的各种实施例,所述服务器1600还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1600可以通过连接在所述***总线1605上的网络接口单元1611连接到网络1612,或者说,也可以使用网络接口单元1611来连接到其他类型的网络或远程计算机***(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行。上述一个或者一个以上程序包含用于执行上述服务器侧的方法的指令。
在本发明实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器,上述指令可由终端的处理器执行以完成上述方法实施例中终端侧的各个步骤,或者上述指令由服务器的处理器执行以完成上述方法实施例中服务器侧的各个步骤。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种安全验证方法,其特征在于,所述方法包括:
发送验证请求;
接收并显示图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是根据深度卷积神经网络模型提取的原始图片中的内容以及参考风格图片中的风格而生成的图片;所述参考风格图片中的风格包括所述参考风格图片的细节纹理、线条的表达方式和着色风格;
接收用户对所述第二图片的验证操作并生成验证信息;
根据所述验证信息的校验结果显示安全验证的结果;
其中,所述图像验证码的生成方式包括:
获取用于生成图像验证码的原始图片;根据所述原始图片获得风格化图片;从所述风格化图片中切取局部图片作为所述第二图片;获取所述第二图片的第一位置信息,所述第一位置为所述第二图片在所述风格化图片中的位置;将所述第二图片从所述第一位置移动至第二位置以生成所述图像验证码,所述第二位置为所述第一图片中的任意位置。
2.根据权利要求1所述的安全验证方法,其特征在于,所述根据所述原始图片获得风格化图片包括:
根据所述原始图片生成风格化图片,或者,
根据所述原始图片获取预先生成的风格化图片。
3.根据权利要求1所述的安全验证方法,其特征在于,所述验证信息包括所述第二图片的第三位置信息,所述第三位置信息是用户操作所述第二图片之后,所述第二图片的位置信息;
所述校验结果的生成方式包括:
根据所述第二图片的第三位置信息获取第一像素信息;
根据所述第二图片的第一位置信息获取第二像素信息;
根据所述第一像素信息和第二像素信息计算像素差值;
根据所述像素差值生成所述验证信息的校验结果。
4.根据权利要求3所述的安全验证方法,其特征在于,所述根据所述像素差值生成所述验证信息的校验结果包括:
判断所述像素差值是否大于预设阈值;
若所述像素差值大于所述预设阈值,则生成校验未通过的结果;
若所述像素差值小于或者等于所述预设阈值,则生成校验通过的结果。
5.根据权利要求1所述的安全验证方法,其特征在于,在接收并显示图像验证码之前,所述方法还包括:接收并显示用于生成图像验证码的原始图片。
6.根据权利要求1所述的安全验证方法,其特征在于,每次接收的所述图像验证码中,所述第二图片的形状和/或大小以随机的方式产生。
7.根据权利要求1所述的安全验证方法,其特征在于,每次接收的所述图像验证码中,所述第二图片的原始位置和新放置的位置以随机的方式产生。
8.一种安全验证装置,其特征在于,所述装置包括:
请求发送模块,用于发送验证请求;
验证码接收模块,用于接收并显示图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是根据深度卷积神经网络模型提取的原始图片中的内容以及参考风格图片中的风格而生成的图片;所述参考风格图片中的风格包括所述参考风格图片的细节纹理、线条的表达方式和着色风格;
验证信息生成模块,用于接收用户对所述第二图片的验证操作并生成验证信息验证结果显示模块,用于根据所述验证信息的校验结果显示安全验证的结果;
验证码生成模块,用于生成图像验证码;所述验证码生成模块包括:第一获取模块,用于获取用于生成图像验证码的原始图片;风格化图片获得模块,用于根据所述原始图片获得风格化图片;切取模块,用于从所述风格化图片中切取局部图片作为所述第二图片;第一位置模块,用于获取所述第二图片的第一位置信息,所述第一位置为所述第二图片在所述风格化图片中的位置;第一生成子模块,用于将所述第二图片从所述第一位置移动至第二位置以生成所述图像验证码,所述第二位置为所述第一图片中的任意位置。
9.根据权利要求8所述的安全验证装置,其特征在于,所述验证信息包括所述第二图片的第三位置信息,所述第三位置信息是用户操作所述第二图片之后,所述第二图片的位置信息;
所述装置还包括校验结果生成模块,用于生成所述验证信息的校验结果;所述校验结果生成模块包括:
第一像素获取模块,用于根据所述第二图片的第三位置信息获取第一像素信息;
第二像素获取模块,用于根据所述第二图片的第一位置信息获取第二像素信息;
像素差值计算模块,用于根据所述第一像素信息和第二像素信息计算像素差值;
第二生成子模块,用于根据所述像素差值生成所述验证信息的校验结果。
10.根据权利要求9所述的安全验证装置,其特征在于,所述根据所述像素差值生成所述验证信息的校验结果包括:
判断所述像素差值是否大于预设阈值;
若所述像素差值大于所述预设阈值,则生成校验未通过的结果;
若所述像素差值小于或者等于所述预设阈值,则生成校验通过的结果。
11.一种终端,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行以下步骤:
发送验证请求;
接收并显示图像验证码,所述图像验证码包括第一图片和第二图片,所述第二图片是从风格化图片中切取的图片,所述第一图片是从风格化图片中切除所述第二图片后剩余的图片;所述风格化图片是根据深度卷积神经网络模型提取的原始图片中的内容以及参考风格图片中的风格而生成的图片;所述参考风格图片中的风格包括所述参考风格图片的细节纹理、线条的表达方式和着色风格;
接收用户对所述第二图片的验证操作并生成验证信息;
根据所述验证信息的校验结果显示安全验证的结果;
其中,所述图像验证码的生成方式包括:
获取用于生成图像验证码的原始图片;根据所述原始图片获得风格化图片;从所述风格化图片中切取局部图片作为所述第二图片;获取所述第二图片的第一位置信息,所述第一位置为所述第二图片在所述风格化图片中的位置;将所述第二图片从所述第一位置移动至第二位置以生成所述图像验证码,所述第二位置为所述第一图片中的任意位置。
12.一种计算机存储介质,所述计算机存储介质存储有计算机程序指令,所述计算机程序指令被执行时,实现如权利要求1~7任一项所述的安全验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810312164.6A CN108846274B (zh) | 2018-04-09 | 2018-04-09 | 一种安全验证方法、装置及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810312164.6A CN108846274B (zh) | 2018-04-09 | 2018-04-09 | 一种安全验证方法、装置及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108846274A CN108846274A (zh) | 2018-11-20 |
CN108846274B true CN108846274B (zh) | 2020-08-18 |
Family
ID=64212064
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810312164.6A Active CN108846274B (zh) | 2018-04-09 | 2018-04-09 | 一种安全验证方法、装置及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108846274B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109559363B (zh) * | 2018-11-23 | 2023-05-23 | 杭州网易智企科技有限公司 | 图像的风格化处理方法、装置、介质和电子设备 |
CN109886010B (zh) * | 2019-01-28 | 2023-10-17 | 平安科技(深圳)有限公司 | 验证图片发送方法、合成方法及装置、存储介质和终端 |
CN110675308B (zh) * | 2019-08-21 | 2024-04-26 | 平安科技(深圳)有限公司 | 字符验证方法、装置、计算机设备及存储介质 |
CN110706221A (zh) * | 2019-09-29 | 2020-01-17 | 武汉极意网络科技有限公司 | 图片定制化的验证方法、验证设备、存储介质及装置 |
CN110942062B (zh) * | 2019-11-21 | 2022-12-23 | 杭州网易智企科技有限公司 | 图像验证码生成方法、介质、装置和计算设备 |
CN111447207B (zh) * | 2020-03-24 | 2022-11-01 | 咪咕文化科技有限公司 | 验证码验证方法、电子设备及存储介质 |
CN111859354B (zh) * | 2020-07-21 | 2023-09-01 | 百度在线网络技术(北京)有限公司 | 图片验证方法、装置、电子设备、存储介质和程序产品 |
TWI770947B (zh) * | 2021-04-20 | 2022-07-11 | 國立清華大學 | 基於攻擊型圖像風格轉換的驗證方法及系統 |
CN113158167B (zh) * | 2021-04-30 | 2024-02-23 | 腾讯音乐娱乐科技(深圳)有限公司 | 验证码实现方法及电子设备和计算机可读存储介质 |
CN114626047A (zh) * | 2022-03-04 | 2022-06-14 | 北京百度网讯科技有限公司 | 基于人机交互的验证方法、装置和设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105187206A (zh) * | 2014-05-28 | 2015-12-23 | 腾讯科技(深圳)有限公司 | 身份验证方法及装置 |
CN105323065A (zh) * | 2014-07-21 | 2016-02-10 | 腾讯科技(深圳)有限公司 | 一种安全验证方法及装置 |
CN105335645A (zh) * | 2015-09-23 | 2016-02-17 | 北京奇虎科技有限公司 | 图片验证码验证方法和装置 |
CN106886975A (zh) * | 2016-11-29 | 2017-06-23 | 华南理工大学 | 一种可实时运行的图像风格化方法 |
-
2018
- 2018-04-09 CN CN201810312164.6A patent/CN108846274B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105187206A (zh) * | 2014-05-28 | 2015-12-23 | 腾讯科技(深圳)有限公司 | 身份验证方法及装置 |
CN105323065A (zh) * | 2014-07-21 | 2016-02-10 | 腾讯科技(深圳)有限公司 | 一种安全验证方法及装置 |
CN105335645A (zh) * | 2015-09-23 | 2016-02-17 | 北京奇虎科技有限公司 | 图片验证码验证方法和装置 |
CN106886975A (zh) * | 2016-11-29 | 2017-06-23 | 华南理工大学 | 一种可实时运行的图像风格化方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108846274A (zh) | 2018-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108846274B (zh) | 一种安全验证方法、装置及终端 | |
CN107256555B (zh) | 一种图像处理方法、装置及存储介质 | |
CN106919918B (zh) | 一种人脸跟踪方法和装置 | |
JP6257848B1 (ja) | コンボリューションニューラルネットワークモデルの訓練方法及び装置 | |
CN104852885B (zh) | 一种进行验证码验证的方法、装置和*** | |
US10327015B2 (en) | Picture combining method, terminal, and picture combining system | |
CN108551519B (zh) | 一种信息处理方法、装置、存储介质及*** | |
CN105303149B (zh) | 人物图像的展示方法和装置 | |
US20170109756A1 (en) | User Unsubscription Prediction Method and Apparatus | |
WO2021121253A1 (zh) | 图像处理方法及电子设备 | |
CN105989572B (zh) | 图片处理方法及装置 | |
US20160328549A1 (en) | Authentication method and apparatus thereof | |
US20160292946A1 (en) | Method and apparatus for collecting statistics on network information | |
EP3382596A1 (en) | Human face model matrix training method and apparatus, and storage medium | |
CN110555171A (zh) | 一种信息处理方法、装置、存储介质及*** | |
CN111949239B (zh) | 一种屏幕共享方法、装置、存储介质及终端 | |
CN109166164B (zh) | 一种表情图片的生成方法及终端 | |
CN104915625B (zh) | 一种人脸识别的方法及装置 | |
US20150109210A1 (en) | Control method, and input device of touch screen terminal | |
CN108600544A (zh) | 一种单手控制方法及终端 | |
CN108287745A (zh) | 一种WebApp界面的显示方法及终端设备 | |
CN113609358B (zh) | 内容分享方法、装置、电子设备以及存储介质 | |
CN107967086B (zh) | 一种移动终端的图标排列方法及装置、移动终端 | |
CN113469923B (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN107734049B (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 |