CN114584327B - 一种客户端生成的图形验证码的验证方法及*** - Google Patents
一种客户端生成的图形验证码的验证方法及*** Download PDFInfo
- Publication number
- CN114584327B CN114584327B CN202210495601.9A CN202210495601A CN114584327B CN 114584327 B CN114584327 B CN 114584327B CN 202210495601 A CN202210495601 A CN 202210495601A CN 114584327 B CN114584327 B CN 114584327B
- Authority
- CN
- China
- Prior art keywords
- verification code
- verification
- client
- picture
- character string
- 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
-
- 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
-
- 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/0807—Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
-
- 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
-
- 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/321—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 involving a third party or a trusted authority
- H04L9/3213—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 involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种客户端生成的图形验证码的验证方法及***,属于图形验证码生成及验证领域。该方法包括:确定公钥和私钥;通过随机数算法生成验证码原始字符串;通过所述公钥对所述验证码原始字符串进行加密,生成验证token;基于所述验证码原始字符串生成验证码图片;基于所述验证码图片确定输入验证码;基于所述验证token对所述输入验证码进行验证。通过本发明提供的方法和***能够将图形验证码生成校验流程中客户端与服务端的交互次数降至1次,减少对网络的依赖和服务器压力,提升响应速度和用户体验。
Description
技术领域
本发明涉及图形验证码生成及验证技术领域,特别是涉及一种客户端生成的图形验证码的验证方法及***。
背景技术
目前在软件领域,包括但不限于企业应用、门户网站、手机app等应用均需要图形验证码校验的功能。现有技术和方法,通过客户端向服务端发出生成验证码请求,服务端生成验证码后,将验证码原始值保存于服务端本地,以图片形式向客户端发送验证码生成结果。用户输入验证码后再向服务端发送请求,服务端将用户输入的内容与提前保存的验证码原始值进行比对,再返回比对结果。这种方法客户端与服务端交互次数多,图片在网络传输过程中占用网络资源大,网络条件不佳时容易刷新不出验证码,影响用户体验。
发明内容
本发明的目的是提供一种客户端生成的图形验证码的验证方法及***,用以减少对网络的依赖并减少服务器压力,提升响应速度和用户体验。
为实现上述目的,本发明提供了如下方案:
一种客户端生成的图形验证码的验证方法,包括:
确定公钥和私钥;
通过随机数算法生成验证码原始字符串;
通过所述公钥对所述验证码原始字符串进行加密,生成验证token;
基于所述验证码原始字符串生成验证码图片;
基于所述验证码图片确定输入验证码;
基于所述验证token对所述输入验证码进行验证。
可选地,所述基于所述验证码原始字符串生成验证码图片,具体包括:
基于所述验证码原始字符串,采用图片生成算法生成验证码原始图片;
对所述验证码原始图片进行变形并增加干扰图像,生成验证码图片。
可选地,所述基于所述验证token对所述输入验证码进行验证,具体包括:
通过所述私钥对所述验证token进行解密,得到解密后的验证码;
将所述解密后的验证码与所述输入验证码进行对比,完成验证。
本发明还提供了一种客户端生成的图形验证码的验证***,包括客户端和服务端;所述客户端存储有公钥,所述服务端存储有私钥;
所述客户端通过随机数算法生成验证码原始字符串;
所述客户端通过所述公钥对所述验证码原始字符串进行加密,生成验证token;
所述客户端基于所述验证码原始字符串生成验证码图片;
所述客户端获取用户根据所述验证码图片提交的输入验证码,并将所述输入验证码与所述验证token传输至所述服务端,并提交验证请求;
所述服务端根据所述验证请求进行验证。
可选地,所述客户端基于所述验证码原始字符串,采用图片生成算法生成验证码原始图片,对所述验证码原始图片进行变形并增加干扰图像,生成验证码图片。
可选地,所述客户端将所述输入验证码与所述验证token通过超文本传输协议接口传输至所述服务端。
可选地,所述服务端根据所述验证请求进行验证,具体包括:
所述服务端接收到所述客户端提交的验证请求后,通过所述私钥对所述验证token进行解密,将解密后的验证码与所述输入验证码进行比对,并返回比对结果。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明通过在客户端生成验证码原始字符串及对应的验证码图片,使用加密算法将验证码原始字符串加密为token,与输入验证码内容一同传输至服务端校验,实现验证码验证功能。本发明将图形验证码生成校验流程中客户端与服务端的交互次数降至1次,减少了对网络的依赖和服务器压力,提升了响应速度和用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的客户端生成的图形验证码的验证方法的流程图;
图2为本发明提供的客户端生成的图形验证码的验证***的工作流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种客户端生成的图形验证码的验证方法及***,用以减少对网络的依赖并减少服务器压力,提升响应速度和用户体验。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
如图1所示,本发明提供的客户端生成的图形验证码的验证方法,包括以下步骤:
步骤101:确定公钥和私钥。
客户端与服务端提前约定好加密所需的公钥和私钥,私钥存放于服务端,公钥存放于客户端。
步骤102:通过随机数算法生成验证码原始字符串。
步骤103:通过所述公钥对所述验证码原始字符串进行加密,生成验证token。
步骤104:基于所述验证码原始字符串生成验证码图片。
基于验证码原始字符串,采用图片生成算法生成验证码原始图片,并通过预设策略对验证码原始图片进行变形并增加干扰图像等处理,生成最终的验证码图片。
步骤105:基于所述验证码图片确定输入验证码。
步骤106:基于所述验证token对所述输入验证码进行验证。
通过所述私钥对所述验证token进行解密,得到解密后的验证码;将所述解密后的验证码与所述输入验证码进行对比,完成验证。
如图2所示,本发明还提供了一种客户端生成的图形验证码的验证***,所述验证***包括客户端和服务端。客户端可以为带有联网功能的智能手机、平板电脑、个人电脑等设备。服务端为服务器设备。客户端与服务端提前约定好加密所需的公钥和私钥,私钥存放于服务端,公钥存放于客户端。
1、所述客户端通过随机数算法生成验证码原始字符串。
2、所述客户端通过所述公钥对所述验证码原始字符串进行加密,生成验证token。
3、所述客户端基于所述验证码原始字符串生成验证码图片。
客户端采用图片生成算法生成验证码原始图片,并通过预设策略对验证码原始图片进行变形以及增加干扰图像等处理,生成最终的验证码图片,并显示在用户界面上。
4、用户在所述客户端基于所述验证码图片输入验证码并提交,所述客户接收用户提交的输入验证码,并将所述输入验证码与所述验证token通过超文本传输协议(HyperText Transfer Protocol,简称HTTP)传输至所述服务端,并提交验证请求。
5、所述服务端根据所述验证请求进行验证。
服务端接收到客户端提交的验证请求后,通过私钥对验证token进行解密,使用解密后验证码与所述输入验证码进行比对,并返回比对结果。
本发明在客户端完成验证码的生成,将生成和校验流程中客户端与服务端的交互次数减少至1次,用户刷新验证码全部在客户端实现,减少了对网络的依赖和服务器压力,提升了响应速度和用户体验。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (7)
1.一种客户端生成的图形验证码的验证方法,其特征在于,包括:
从客户端确定公钥,从服务端确定私钥;
所述客户端通过随机数算法生成验证码原始字符串;
所述客户端通过所述公钥对所述验证码原始字符串进行加密,生成验证token;
所述客户端基于所述验证码原始字符串生成验证码图片;
所述客户端获取用户根据所述验证码图片提交的输入验证码,并将所述输入验证码与所述验证token传输至所述服务端;
所述服务端基于所述验证token对所述输入验证码进行验证。
2.根据权利要求1所述的客户端生成的图形验证码的验证方法,其特征在于,所述基于所述验证码原始字符串生成验证码图片,具体包括:
基于所述验证码原始字符串,采用图片生成算法生成验证码原始图片;
对所述验证码原始图片进行变形并增加干扰图像,生成验证码图片。
3.根据权利要求1所述的客户端生成的图形验证码的验证方法,其特征在于,所述基于所述验证token对所述输入验证码进行验证,具体包括:
通过所述私钥对所述验证token进行解密,得到解密后的验证码;
将所述解密后的验证码与所述输入验证码进行对比,完成验证。
4.一种客户端生成的图形验证码的验证***,其特征在于,包括客户端和服务端;所述客户端存储有公钥,所述服务端存储有私钥;
所述客户端通过随机数算法生成验证码原始字符串;
所述客户端通过所述公钥对所述验证码原始字符串进行加密,生成验证token;
所述客户端基于所述验证码原始字符串生成验证码图片;
所述客户端获取用户根据所述验证码图片提交的输入验证码,并将所述输入验证码与所述验证token传输至所述服务端,并提交验证请求;
所述服务端根据所述验证请求进行验证。
5.根据权利要求4所述的客户端生成的图形验证码的验证***,其特征在于,所述客户端基于所述验证码原始字符串,采用图片生成算法生成验证码原始图片,对所述验证码原始图片进行变形并增加干扰图像,生成验证码图片。
6.根据权利要求4所述的客户端生成的图形验证码的验证***,其特征在于,所述客户端将所述输入验证码与所述验证token通过超文本传输协议接口传输至所述服务端。
7.根据权利要求4所述的客户端生成的图形验证码的验证***,其特征在于,所述服务端接收到所述客户端提交的验证请求后,通过所述私钥对所述验证token进行解密,将解密后的验证码与所述输入验证码进行比对,并返回比对结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210495601.9A CN114584327B (zh) | 2022-05-09 | 2022-05-09 | 一种客户端生成的图形验证码的验证方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210495601.9A CN114584327B (zh) | 2022-05-09 | 2022-05-09 | 一种客户端生成的图形验证码的验证方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114584327A CN114584327A (zh) | 2022-06-03 |
CN114584327B true CN114584327B (zh) | 2022-08-12 |
Family
ID=81769295
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210495601.9A Active CN114584327B (zh) | 2022-05-09 | 2022-05-09 | 一种客户端生成的图形验证码的验证方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114584327B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115225362A (zh) * | 2022-07-13 | 2022-10-21 | 南京元贝信息技术有限公司 | 人机行为的验证方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594806A (zh) * | 2012-01-31 | 2012-07-18 | 华为技术有限公司 | 验证方法和广告投放服务器 |
CN104468616A (zh) * | 2014-12-24 | 2015-03-25 | 广州华多网络科技有限公司 | 一种图片验证码的生成方法及客户端 |
CN106878024A (zh) * | 2017-03-08 | 2017-06-20 | 北京科摩仕捷科技有限公司 | 一种基于缓存的验证码校验方法和*** |
WO2018059480A1 (zh) * | 2016-09-29 | 2018-04-05 | 腾讯科技(深圳)有限公司 | 网络攻击防御方法、装置以及*** |
CN113918898A (zh) * | 2021-08-31 | 2022-01-11 | 暨南大学 | 基于轨迹绘制交互的安全验证码生成方法、***及介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010037429A1 (de) * | 2008-09-30 | 2010-04-08 | Novelty Group Limited | Verfahren zum erzeugen eines verifikationscodes, verifikationscode, verfahren und vorrichtung zum verifizieren der echtheit von gegenständen |
CN104104664A (zh) * | 2013-04-11 | 2014-10-15 | 腾讯科技(深圳)有限公司 | 对验证码进行验证的方法、服务器、客户端和*** |
CN106899610A (zh) * | 2017-03-22 | 2017-06-27 | 世纪恒通科技股份有限公司 | 一种无需存储的验证码验证方法 |
CN112039890A (zh) * | 2020-08-31 | 2020-12-04 | 重庆可兰达科技有限公司 | 一种验证码校验方法、装置、终端及介质 |
-
2022
- 2022-05-09 CN CN202210495601.9A patent/CN114584327B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102594806A (zh) * | 2012-01-31 | 2012-07-18 | 华为技术有限公司 | 验证方法和广告投放服务器 |
CN104468616A (zh) * | 2014-12-24 | 2015-03-25 | 广州华多网络科技有限公司 | 一种图片验证码的生成方法及客户端 |
WO2018059480A1 (zh) * | 2016-09-29 | 2018-04-05 | 腾讯科技(深圳)有限公司 | 网络攻击防御方法、装置以及*** |
CN106878024A (zh) * | 2017-03-08 | 2017-06-20 | 北京科摩仕捷科技有限公司 | 一种基于缓存的验证码校验方法和*** |
CN113918898A (zh) * | 2021-08-31 | 2022-01-11 | 暨南大学 | 基于轨迹绘制交互的安全验证码生成方法、***及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114584327A (zh) | 2022-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10999257B2 (en) | Secure delivery and storage of content | |
JP7520798B2 (ja) | オンラインアイデンティティの分散検証のためのシステムと方法 | |
KR101776635B1 (ko) | 클라이언트 단말을 위한 전자서명 대행 수행 장치 및 그 동작 방법 | |
CN111064757B (zh) | 应用访问方法、装置、电子设备以及存储介质 | |
CN108322416B (zh) | 一种安全认证实现方法、装置及*** | |
KR101982237B1 (ko) | 클라우드 컴퓨팅 환경에서의 속성 기반 암호화를 이용한 데이터 공유 방법 및 시스템 | |
CN113489585A (zh) | 终端设备的身份认证方法、***、存储介质、电子设备 | |
CN111970109B (zh) | 一种数据传输方法及*** | |
CN112035827B (zh) | 密码数据处理方法、装置、设备以及可读存储介质 | |
CN110036615B (zh) | 经由参数传递帐号认证信息的方法、***和计算机可读介质 | |
CN103414727A (zh) | 针对input密码输入框的加密保护***及其使用方法 | |
CN114584327B (zh) | 一种客户端生成的图形验证码的验证方法及*** | |
CN111249740A (zh) | 一种资源数据的访问方法及*** | |
Hussain et al. | Secure password transmission for web applications over internet using cryptography and image steganography | |
CN114095165B (zh) | 密钥更新方法、服务端设备、客户端设备及存储介质 | |
JP2022172251A (ja) | データを保護するためのシステムおよび方法 | |
CN112565156B (zh) | 信息注册方法、装置和*** | |
CN107872312A (zh) | 对称密钥动态生成方法、装置、设备及*** | |
CN113271306B (zh) | 数据请求、发送方法、设备以及*** | |
CN115473690A (zh) | 数据传输方法、装置、电子设备、介质及程序产品 | |
CN113742671A (zh) | 在线协同信息处理方法、***、电子装置和存储介质 | |
CN115580470A (zh) | 一种基于可搜索加密技术的密态文件查询方法、***及设备 | |
CN112769912A (zh) | 物联网设备的数据同步方法及计算机可读存储介质 | |
CN113656811A (zh) | 一种基于内存的动态密钥数据加密的方法 | |
CN114297594A (zh) | 一种在web应用中进行身份认证的方法 |
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 |