WO2018103564A1 - 一种基于验证码的校验方法及装置 - Google Patents

一种基于验证码的校验方法及装置 Download PDF

Info

Publication number
WO2018103564A1
WO2018103564A1 PCT/CN2017/113595 CN2017113595W WO2018103564A1 WO 2018103564 A1 WO2018103564 A1 WO 2018103564A1 CN 2017113595 W CN2017113595 W CN 2017113595W WO 2018103564 A1 WO2018103564 A1 WO 2018103564A1
Authority
WO
WIPO (PCT)
Prior art keywords
verification
character
character string
verification code
user
Prior art date
Application number
PCT/CN2017/113595
Other languages
English (en)
French (fr)
Inventor
修超
王磊
陈星�
李传智
张永志
Original Assignee
阿里巴巴集团控股有限公司
修超
王磊
陈星�
李传智
张永志
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 阿里巴巴集团控股有限公司, 修超, 王磊, 陈星�, 李传智, 张永志 filed Critical 阿里巴巴集团控股有限公司
Priority to SG11201905215TA priority Critical patent/SG11201905215TA/en
Priority to EP17879427.7A priority patent/EP3554000B1/en
Priority to ES17879427T priority patent/ES2882535T3/es
Priority to JP2019531108A priority patent/JP6894511B2/ja
Priority to KR1020197019777A priority patent/KR102194072B1/ko
Priority to PL17879427T priority patent/PL3554000T3/pl
Publication of WO2018103564A1 publication Critical patent/WO2018103564A1/zh
Priority to US16/393,839 priority patent/US10719599B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3226Cryptographic 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/3228One-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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing 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/2133Verifying human interaction, e.g., Captcha
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Definitions

  • the present application relates to the field of computer technologies, and in particular, to a verification method and apparatus based on a verification code.
  • the verification code (Completely Automated Public Turing test to tell Computers and Humens Apart, CAPTCHA, also known as the fully automatic distinction between computer and human Turing test) has been widely used as a security verification method. It is possible to distinguish whether the operator is a user or an illegal program, and the verification code can prevent illegal operations such as malicious attempt to log in to the user account, enumeration of the user password, or script control for swiping, speaking, and the like.
  • the display mode adopted by the verification code is more and more complicated and varied, and is usually displayed in the following manner: Method 1, as shown in FIG. 1a, the verification code uses numbers. Or textual expressions, and add background to the captcha display area, or distorted for numbers or text to enhance the interference level of the captcha.
  • Method 1 as shown in FIG. 1a, the verification code uses numbers. Or textual expressions, and add background to the captcha display area, or distorted for numbers or text to enhance the interference level of the captcha.
  • FIG. 1b multiple pictures and prompt information are provided, so that the user identifies a corresponding number of specific pictures from multiple similar pictures based on the prompt information.
  • the verification code adopts a relatively complicated display manner, and although it can interfere with the automatic identification of the illegal script, it also increases the interference to the user, in other words, when the above verification code is displayed to the user.
  • the probability of user identification error increases. Once an error occurs, the user needs to refresh the verification code and continue to recognize the newly generated verification code until it passes the verification.
  • the above verification process in the prior art may take a long time, especially in the case of identifying an error, which will cause the user to repeat the verification.
  • the embodiment of the present application provides a verification code verification method for solving a user in the prior art.
  • the possibility that the verification code identifies a large error causes the verification process to take a long time.
  • the embodiment of the present application provides a verification code-based verification device, which is used to solve the problem that the verification process is prone to be long and the verification process takes a long time.
  • Receiving a module receiving a verification request
  • the replacement module replaces part or all of the variable characters with the alternate characters according to the pre-established correspondence between the variable characters and the alternate characters to obtain the second character string;
  • the verification module generates a verification code according to the second character string, and performs verification on the user corresponding to the verification request.
  • the server performs a character replacement operation on the verification code.
  • the verification code generated by the character replacement method does not affect the user's knowledge. Meaning, and the characters in the verification code of the embodiment of the present application do not adopt such methods as glyph distortion, color conversion, adding background, etc., so that the user can identify the verification code more conveniently and accurately, and for the computer program,
  • the verification code after the character is replaced It can contain multiple types of characters and does not conform to the usual grammar, which makes it difficult for a computer program to effectively recognize the content represented by the verification code according to the recognition algorithm, thereby effectively reducing the possibility of the computer program performing an illegal operation.
  • the verification method provided in the embodiment of the present application improves the identifiability of the verification code, so that the user can intuitively know the meaning of the representation, thereby increasing user identification.
  • the accuracy of the verification code reduces the time consuming of the verification process. At the same time, it increases the difficulty in recognizing the verification code by the computer program, and can effectively reduce the possibility of illegal operation of the computer program.
  • FIG. 1a and 1b are schematic diagrams of verification codes in the prior art
  • FIG. 2a is a schematic structural diagram of a verification code based verification process according to an embodiment of the present application
  • 2b is a schematic diagram of a verification code based verification process provided by an embodiment of the present application.
  • FIG. 3 is a schematic structural diagram of generating a character replacement verification code according to an embodiment of the present disclosure
  • 4a and 4b are schematic diagrams of verification interfaces of different verification modes provided by embodiments of the present application.
  • FIG. 5 is a schematic structural diagram of a verification code based verification apparatus according to an embodiment of the present application.
  • the verification process may be based on the architecture shown in FIG. 2a, and the verification process may be implemented by a server in the background of the online service provider, where the online service provider includes but is not limited to: a website Business providers that can provide online services, such as telecom operators and data centers.
  • the server used to implement the verification process may specifically be a security maintenance function server, such as a security center server in the background of the online service provider. This does not constitute a limitation on the present application.
  • the servers in the background of the online system are collectively referred to as: servers.
  • the user can be understood as an operator who uses the service provided by the online service provider. It should be noted that in the verification scenario in the embodiment of the present application, the legal operator should be a natural person and illegal.
  • the operators are computer scripts, programs, and the like.
  • FIG. 1 a verification code based verification process in the implementation of the present application is shown, and the process specifically includes the following steps:
  • the verification request is usually generated after the trigger is triggered.
  • the verification may be triggered by the user, or may be triggered by the server according to the needs of the actual application.
  • the user may actively send a verification request.
  • the verification request is used to trigger a verification process of the verification code.
  • the verification process of the verification code can be applied in the scenario of account login, in other words, when the user enters the login interface (for example, the account login interface of the website), the user can be regarded as issuing a verification.
  • the request accordingly, the server receives a verification request sent by the user.
  • the server may perform identity verification on the user according to the corresponding security rules, such as: the server actively generates the verification code according to the set period; or the server determines that some operations of the user are risky. At this time, the verification code is actively generated, and a verification is initiated to the user to determine that the operator is not issued by the computer program.
  • the server may perform identity verification on the user according to the corresponding security rules, such as: the server actively generates the verification code according to the set period; or the server determines that some operations of the user are risky.
  • the verification code is actively generated, and a verification is initiated to the user to determine that the operator is not issued by the computer program.
  • this does not constitute a limitation on the present application.
  • S102 Acquire a pre-generated first character string after receiving the verification request.
  • the first string includes at least one variable character.
  • the first character string can be understood as a calibration character string composed of numbers, characters, and the like and having an indication function.
  • the calibrated string is easier to be recognized by the computer program, thereby increasing the risk of the verification process. Therefore, in the embodiment of the present application, the first character string includes a variable character, and the variable character can be replaced with other characters to play a role of interference.
  • the alternate character that is, a character that can belong to the same category as the variable character, for example, the alternate character and the variable character belong to a Chinese character, an English character, a numeric character, or may belong to a different character category from the variable character.
  • a Chinese character can be converted into a pinyin, such as: converting "red” to "hong”, and as another way, converting a certain character (or phrase) into Homophones (or phrases), such as: Convert "blue” to "blue”.
  • the meaning of the second character string after the character replacement does not change, that is, the corresponding character of the verification code can still be known to the user, and the corresponding code can be executed according to the verification code. Operation.
  • S104 Generate a verification code according to the second character string, and perform verification on the user corresponding to the verification request.
  • the verification code may be displayed in a format such as a picture or a text message in an actual operation, and is used to instruct the user to perform a specific operation, and does not constitute a limitation on the present application.
  • the verification code generated by the second character string can play a disturbing role, compared with the prior art, which relies on glyph distortion, discoloration, background, etc.
  • the meaning of the verification code replaced by the character in the embodiment of the present application does not change, and the user can be informed of the meaning of the verification code by not adopting an excessively complicated change manner. This makes it easier for the user to identify and, in addition, the difficulty of machine recognition due to character substitution.
  • the verification code After the foregoing content, after the verification code is generated, it can be targeted to the corresponding operator (ie, the user). A check is made to distinguish whether the operator is a user or a computer program.
  • the verification code may be displayed to the user in a corresponding verification interface (such as a login interface), and the user performs a corresponding operation according to the verification code, according to the calibration school.
  • the verification information verifies the user's operation.
  • the server of the service provider performs the character replacement operation on the verification code in the process of verifying the user, and the verification code generated by the character replacement method does not affect the individual of the user.
  • the user is aware of the meaning therein, and the characters in the verification code of the embodiment of the present application do not adopt such methods as glyph distortion, color conversion, adding background, etc., so that the user can recognize the verification code more conveniently and accurately, and for the computer program.
  • the character verification code after the character replacement may contain multiple types of characters, and does not conform to the usual syntax, thereby making it difficult for the computer program to effectively recognize the content represented by the verification code according to the recognition algorithm, thereby effectively reducing the content.
  • the verification method provided in the embodiment of the present application improves the identifiability of the verification code, so that the user can intuitively know the meaning of the representation, thereby increasing user identification.
  • the accuracy of the verification code reduces the time consuming of the verification process. At the same time, it increases the difficulty in recognizing the verification code by the computer program, and can effectively reduce the possibility of illegal operation of the computer program.
  • the characters in the verification code are substantially homophonic or synonymously replaced, that is, in advance Establishing a correspondence between the variable character and the alternate character, specifically: determining, for any variable character, at least one homophonic character and/or synonym character of the variable character, and determining the homophone character and/or synonym A character is used as an alternate character of the variable character, and a correspondence with the variable character is established.
  • the first character string described in the above content can be considered to be generated in advance according to the corresponding verification code generation rule, and stored in the database on the server side, and its schematic diagram is shown in FIG. 3.
  • a verification code string is a character string composed of Chinese characters "enter two Chinese characters", assuming that all six Chinese characters in the string are Variable characters, in actual operation, only two of the variable characters "two” and “han” can be replaced, assuming that the two variable characters respectively have their own alternate characters: "two" and "weld", Thus, the second character string after replacing the variable character with the spare character becomes: "Enter two welding words”.
  • variable string corresponds to different alternate characters
  • a hybrid alternative can also be used, such as: replacing the first string “select two red balls” with “xuan select two hongs” begging".
  • the verification code may be generated according to the second character string after the character replacement, and the verification code is generated according to the second character string, and the method further includes: generating a verification code of the specified format according to the second character string.
  • the specified format includes at least one of a picture format and a text format.
  • the user usually performs certain operations according to the verification code. For example, the user inputs a corresponding character string according to the verification code, or the user performs an operation according to the behavior indicated by the verification code. Whether the user inputs a string or performs some kind of operation, the server side needs to perform verification. In order to ensure the accuracy of the verification, the verification standard will be determined on the server side. It can be understood that the calibration verification information is a verification standard, and only the user's operation conforms to the verification standard before passing the verification.
  • the user can input a corresponding character string according to the verification code displayed in the verification interface.
  • the calibration verification information is the first character string
  • the school is The user corresponding to the verification request performs verification, which includes: generating an input area on the interface for verifying the user, and acquiring a to-be-checked character string input by the user according to the verification code in the input area, according to The first character string is used to check the to-be-checked character string.
  • the verification interface in this mode is shown, and it can be seen that the verification interface is The verification code and the corresponding input area are included, and the user inputs a corresponding character string in the input area according to the verification code to perform verification.
  • the user according to the verification code “hong color” the verification code is the first Second string
  • the verification code is the first Second string
  • the user may perform a corresponding verification operation according to the verification code displayed in the verification interface.
  • the calibration verification information includes: a preset The standard operation information is used to verify the user corresponding to the verification request, which includes: generating an operable verification code display area on the interface for verifying the user, and obtaining the user in the verification code display area And verifying, according to the calibration operation information, the operation information to be verified according to the operation information to be verified corresponding to the operation to be verified performed by the verification code.
  • the verification interface includes an authentication code display area that is operable and carries a verification code.
  • the user can perform the verification according to the behavior indicated by the verification code.
  • the code display area issues a corresponding operation to be verified.
  • the standard operation information is clicked for the operation controls "2" and "4", the user clicks on the verification code "click on the number of ou in the figure below", After the operation controls "2" and "4" in the verification code display area are clicked, they can pass the verification.
  • the embodiment of the present application further provides a verification device based on the verification code.
  • the verification device is disposed on a server side of a service provider, and the device includes:
  • the receiving module 501 receives a verification request.
  • the obtaining module 502 after receiving the verification request, acquiring a pre-generated first character string; wherein the first character string includes at least one variable character;
  • the replacement module 503 according to the correspondence between the pre-established variable character and the spare character, will be part of Or replacing all variable characters with alternate characters to obtain a second character string;
  • the verification module 504 generates a verification code according to the second character string, and performs verification on the user corresponding to the verification request.
  • the apparatus further includes: an establishing module 505, for each variable character, determining at least one homophonic character and/or synonym character of the variable character, and determining the determined homophone character and/or synonym character as the Changing the alternate character of the character and establishing a correspondence with the variable character.
  • the verification module 504 generates a verification code of a specified format according to the second character string.
  • the specified format includes at least one of a picture format and a text format.
  • the verification module 504 generates an input area on the interface for verifying the user, and acquires a to-be-checked character string input by the user according to the verification code in the input area, according to the first character string. And verifying the to-be-checked character string.
  • the verification module 504 generates an operable verification code display area on the interface for verifying the user, and obtains an operation to be verified according to the verification code performed by the user in the verification code display area. Corresponding operation information to be verified, and verifying the operation information to be verified according to preset calibration operation information.
  • PLD Programmable Logic Device
  • FPGA Field Programmable Gate Array
  • HDL Hardware Description Language
  • ABEL Advanced Boolean Expression Language
  • AHDL Altera Hardware Description Language
  • HDCal JHDL
  • Lava Lava
  • Lola MyHDL
  • PALASM RHDL
  • VHDL Very-High-Speed Integrated Circuit Hardware Description Language
  • Verilog Verilog
  • the controller can be implemented in any suitable manner, for example, the controller can take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (eg, software or firmware) executable by the (micro)processor.
  • computer readable program code eg, software or firmware
  • examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, The Microchip PIC18F26K20 and the Silicone Labs C8051F320, the memory controller can also be implemented as part of the memory's control logic.
  • the controller can be logically programmed by means of logic gates, switches, ASICs, programmable logic controllers, and embedding.
  • Such a controller can therefore be considered a hardware component, and the means for implementing various functions included therein can also be considered as a structure within the hardware component.
  • a device for implementing various functions can be considered as a software module that can be both a method of implementation and a structure within a hardware component.
  • the system, device, module or unit illustrated in the above embodiments may be specifically implemented by a computer chip or a real Realized by a body, or by a product with a certain function.
  • a typical implementation device is a computer.
  • the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or A combination of any of these devices.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
  • processors CPUs
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory.
  • RAM random access memory
  • ROM read only memory
  • Memory is an example of a computer readable medium.
  • Computer readable media includes both permanent and non-persistent, removable and non-removable media.
  • Information storage can be implemented by any method or technology.
  • the information can be computer readable instructions, data structures, modules of programs, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device.
  • computer readable media does not include temporary storage of computer readable media, such as modulated data signals and carrier waves.
  • embodiments of the present application can be provided as a method, system, or computer program product.
  • the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment in combination of software and hardware.
  • the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • the application can be described in the general context of computer-executable instructions executed by a computer, such as a program module.
  • program modules include routines, programs, objects, components, data structures, and the like that perform particular transactions or implement particular abstract data types.
  • the present application can also be practiced in distributed computing environments where transactions are performed by remote processing devices that are connected through a communication network.
  • program modules can be located in both local and remote computer storage media including storage devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例公开了一种基于验证码的校验方法及装置。该方法包括:接收校验请求,当接收到所述校验请求后,获取预先生成的第一字符串;其中,所述第一字符串中包含至少一个可变字符,根据预先建立的可变字符与备用字符的对应关系,将部分或全部可变字符替换为备用字符,得到第二字符串,根据所述第二字符串生成验证码,对所述校验请求所对应的用户进行校验。利用本申请实施例,可以能够增加用户辨识验证码的准确性,减少校验过程的耗时,同时,增加了计算机程序对验证码的识别难度,也能够有效降低计算机程序执行非法操作的可能。

Description

一种基于验证码的校验方法及装置 技术领域
本申请涉及计算机技术领域,尤其涉及一种基于验证码的校验方法及装置。
背景技术
目前,验证码(Completely Automated Public Turing test to tell Computers and Humens Apart,CAPTCHA,也称为全自动区分计算机和人类的图灵测试)作为一种安全校验方式,得到了广泛应用,其中,验证码可以区分操作者是用户个人还是非法程序,通过验证码可防止诸如:恶意尝试登录用户账户、枚举式破解用户密码、或者利用脚本控制进行刷单、发言等非法操作。
现有技术中,为了防止非法程序对验证码的自动识别,验证码所采用的展示方式越来越复杂多变,通常采用如下方式进行展示:方式一,如图1a所示,验证码使用数字或文字表达,并在验证码展示区中增加背景,或针对数字或文字进行扭曲,以便增强验证码的干扰程度。方式二,如图1b所示,提供多张图片以及提示信息,使得用户基于提示信息从多张相似的图片中识别出相应数量的特定图片。
然而,在上述的方式中,验证码采用较为复杂的展示方式,虽然能够对非法脚本自动识别起到干扰作用,但同样也增加了对用户的干扰,换言之,当上述的验证码展示给用户后,用户识别错误的概率会增加,一旦出错,用户需要刷新验证码,并继续对新生成的验证码进行识别,直到通过校验。显然,现有技术中的上述校验过程可能需要耗费较长的时间,特别是在识别出错的情况下,将导致用户需重复进行校验。
发明内容
本申请实施例提供一种基于验证码的校验方法,用以解决现有技术中用户 对验证码识别出错可能性较大导致校验过程耗时较长的问题。
本申请实施例提供一种基于验证码的校验装置,用以解决现有技术中用户对验证码识别出错可能性较大导致校验过程耗时较长的的问题。
本申请实施例采用下述技术方案:
本申请实施例提供的一种基于验证码的校验方法,包括:
接收校验请求;
当接收到所述校验请求后,获取预先生成的第一字符串;其中,所述第一字符串中包含至少一个可变字符;
根据预先建立的可变字符与备用字符的对应关系,将部分或全部可变字符替换为备用字符,得到第二字符串;
根据所述第二字符串生成验证码,对所述校验请求所对应的用户进行校验。
本申请实施例提供的一种基于验证码的校验装置,包括:
接收模块,接收校验请求;
获取模块,当接收到所述校验请求后,获取预先生成的第一字符串;其中,所述第一字符串中包含至少一个可变字符;
替换模块,根据预先建立的可变字符与备用字符的对应关系,将部分或全部可变字符替换为备用字符,得到第二字符串;
校验模块,根据所述第二字符串生成验证码,对所述校验请求所对应的用户进行校验。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
业务提供方的服务器在针对用户进行校验的过程中,服务器会针对验证码进行字符替换的操作,相对于用户个人而言,采用字符替换方式所生成的验证码并不会影响用户获知其中的含义,并且,本申请实施例的验证码中的字符并未采用诸如字形扭曲、颜色变换、添加背景等方式,使得用户可以较为便捷且准确地识别出验证码,而对于计算机程序而言,经过字符替换后的验证码中可 能包含多种类型的字符,并且不符合通常的语法,从而使得计算机程序难以依据识别算法有效地识别出该验证码所表征的内容,即可有效降低计算机程序执行非法操作的可能。
相较于现有技术中的验证码方式而言,本申请实施例中所提供的验证方式,提升了验证码的可辨识性,使得用户能够直观地获知其表征的含义,从而能够增加用户辨识验证码的准确性,减少校验过程的耗时,同时,增加了计算机程序对验证码的识别难度,也能够有效降低计算机程序执行非法操作的可能。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1a及1b为现有技术中的验证码示意图;
图2a为本申请实施例提供的基于验证码的校验过程所基于的架构示意图;
图2b为本申请实施例提供的基于验证码的校验过程示意图;
图3为本申请实施例提供的生成字符替换验证码所基于的架构示意图;
图4a及4b为本申请实施例提供的不同校验方式的校验界面示意图
图5为本申请实施例提供的基于验证码的校验装置结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本申请实施例中,校验过程可基于如图2a所示的架构,校验过程可由在线业务提供方后台的服务器实现,其中,在线业务提供方包括但不限于:网站、电信运营商、数据中心等能够提供在线业务的业务提供方。用于实现校验过程的服务器,具体可以是负责安全维护功能服务器,如:在线业务提供方后台的安全中心服务器。这里并不构成对本申请的限定。在后续描述中,将在线系统后台的服务器统一称为:服务器。
所述的用户,可理解为使用在线业务提供方所提供的业务服务的操作者,这里需要说明的是,在本申请实施例中的校验场景下,合法的操作者应为自然人,而非法的操作者为计算机脚本、程序等。
以下结合附图,详细说明本申请各实施例提供的技术方案。
如图1所示,示出了本申请实施中的基于验证码的校验过程,该过程具体包括以下步骤:
S101:接收校验请求。
在本申请实施例中,所述的校验请求通常在触发校验后生成,实际操作中,可由用户触发,也可由服务器自行根据实际应用的需要触发。
具体地,在一种可能的场景中,用户可以主动发送校验请求,此时,所述的校验请求用于触发验证码的校验过程。作为该场景中的一种方式,验证码的校验过程可以应用在账户登录的场景下,换言之,当用户进入登录界面(如:网站的账户登录界面)后,便可视为用户发出校验请求,相应地,服务器便会接收到用户发送的校验请求。
在另一种可能的场景中,服务器可以自行按照相应的安全规则,对用户进行身份校验,如:按照设定的周期,服务器主动生成验证码;或者,服务器判定用户的某些操作具有风险时,主动生成验证码,向用户发起校验,以便确定操作者不是由计算机程序所发出。当然,这里并不构成对本申请的限定。
S102:当接收到所述校验请求后,获取预先生成的第一字符串。
其中,所述第一字符串中包含至少一个可变字符。
所述的第一字符串,可理解为由数字、文字等构成且具有指示作用的标定字符串。
正是考虑到在实际应用场景下,对于标定的字符串较容易被计算机程序识别,从而增加了验证过程的风险。故在本申请实施例中,第一字符串中包含可变字符,该可变字符可被替换成其他字符,以便起到干扰作用。
S103:根据预先建立的可变字符与备用字符的对应关系,将部分或全部可变字符替换为备用字符,得到第二字符串。
所述的备用字符,即可以与可变字符属于同类别的字符,如:备用字符与可变字符均属于汉字字符、英文字符、数字字符,也可以与可变字符属于不同的字符类别。具体来说,作为本申请实施例中的一种方式,可将汉字转换为拼音,如:将“红”转换为“hong”,作为另一种方式,可将某一文字(或词组)转换为同音字(或词组),如:将“蓝色”转换为“兰色”。
需要说明的是,经过字符替换后的第二字符串,其所要表征的含义并不会改变,也即,对应用户而言,仍能够获知验证码所表征的含义,并可基于验证码执行相应的操作。
S104:根据所述第二字符串生成验证码,对所述校验请求所对应的用户进行校验。
所述的验证码,在实际操作时,可采用图片或文本信息等格式展示,并用于指示用户执行某一特定操作,这里并不构成对本申请的限定。
正是由于第二字符串是进行字符替换的字符串,那么,由第二字符串所生成的验证码,能够起到干扰作用,相较于现有技术中依赖字形扭曲、变色、背景等干扰的方式而言,本申请实施例中经字符替换的验证码所表征的含义并不会改变,并且由于不采用过于复杂的变化的方式,既能够使得用户获知验证码所表征的含义,也能够使得用户可以较为容易地进行识别,此外,由于进行了字符替换,增加了机器识别的难度。
经过前述内容,在生成了验证码后,便可以针对相应的操作者(即,用户) 进行校验,以区分操作者是用户个人还是计算机程序。
当然,作为本申请实施例中的一种可行方式,可以在相应的校验界面(如:登录界面)中向用户展示验证码,并在用户根据该验证码执行了相应的操作,根据标定校验信息对用户的操作进行校验。
通过上述步骤,业务提供方的服务器在针对用户进行校验的过程中,服务器会针对验证码进行字符替换的操作,相对于用户个人而言,采用字符替换方式所生成的验证码并不会影响用户获知其中的含义,并且,本申请实施例的验证码中的字符并未采用诸如字形扭曲、颜色变换、添加背景等方式,使得用户可以较为便捷且准确地识别出验证码,而对于计算机程序而言,经过字符替换后的验证码中可能包含多种类型的字符,并且不符合通常的语法,从而使得计算机程序难以依据识别算法有效地识别出该验证码所表征的内容,即可有效降低计算机程序执行非法操作的可能。
相较于现有技术中的验证码方式而言,本申请实施例中所提供的验证方式,提升了验证码的可辨识性,使得用户能够直观地获知其表征的含义,从而能够增加用户辨识验证码的准确性,减少校验过程的耗时,同时,增加了计算机程序对验证码的识别难度,也能够有效降低计算机程序执行非法操作的可能。
需要说明的是,在本申请实施例中,针对验证码的字符替换,由于不改变验证码所表征的含义,故实质上是将验证码中的字符进行同音或同义替换,也即,预先建立可变字符与备用字符的对应关系,具体包括:针对任一可变字符,确定该可变字符的至少一个同音字符和/或同义字符,将确定的所述同音字符和/或同义字符作为该可变字符的备用字符,并建立与所述可变字符的对应关系。
上述内容中所述的第一字符串,可认为是预先根据相应的验证码生成规则生成,并存储在服务器侧的数据库中,其架构示意图如图3所示。
在进行字符替换的过程,可仅将个别的可变字符进行替换,如:某验证码字符串为汉字构成的字符串“输入两个汉字”,假设该字符串中的六个汉字均为 可变字符,实际操作时,可仅将其中两个可变字符“两”及“汉”进行替换,假设这两个可变字符分别对应有各自的备用字符:“俩”及“焊”,从而将可变字符替换为备用字符后的第二字符串变为:“输入俩个焊字”。
当然,也可将全部的字符进行替换,如:对于第一字符串:“红球”,假设其中两个字符均为可变字符,各自分别对应的备用字符为拼音:“hong”以及“qiu”,则经过字符替换后的第二字符串为:“hongqiu”。
在实际应用时,如果可变字符串对应不同的备用字符,那么,也可以采用混合式的替换方式,如:将第一字符串“选择两个红球”,替换为“xuan择俩个hong求”。
显然,通过上述的替换方式,用户个人能够获知验证码字符所表征的含义,但对于计算机程序而言,将受到较强的干扰。
在实际操作时,可基于字符替换后的第二字符串,生成相应的验证码,根据所述第二字符串生成验证码,具体包括:根据所述第二字符串,生成指定格式的验证码。其中,所述指定格式包括:图片格式、文本格式中的至少一种。
在实际应用场景下,用户通常会根据验证码执行某种操作,例如:用户根据验证码输入相应的字符串,又或者,用户根据验证码所指示的行为,执行某种操作。而无论是用户输入字符串或是执行某种操作,在服务器侧,都需进行校验,为了保证校验的准确性,故在服务器侧将确定校验标准。可以理解地,所述的标定校验信息,是一种校验标准,只有用户的操作符合该校验标准,才可通过校验。
作为在实际应用场景下的一种校验方式,用户可以根据校验界面中所展示的验证码输入相应的字符串,在此方式下,标定校验信息就是第一字符串,对所述校验请求所对应的用户进行校验,具体包括:在对用户进行校验的界面上,生成输入区域,获取用户在所述输入区域内根据所述验证码所输入的待校验字符串,根据所述第一字符串,对所述待校验字符串进行校验。
也即,如图4a所示,示出了该方式下的校验界面,可见,该校验界面中 包含验证码和相应的输入区域,用户根据验证码在该输入区域中输入相应的字符串以进行校验,当然,在图4a中,用户根据验证码“hong色”(该验证码中为第二字符串),在输入区中输入汉字词组“红色”后(假设第一字符串:红色),才可通过校验。
而作为在实际应用场景下的另一种校验方式,用户可以根据校验界面中所展示的验证码执行相应的校验操作,在此方式下,所述标定校验信息包括:预设的标准操作信息,对所述校验请求所对应的用户进行校验,具体包括:在对用户进行校验的界面上,生成可操作的验证码展示区,获取所述用户在验证码展示区内,根据所述验证码所执行的待校验操作所对应的待校验操作信息,根据所述标定操作信息,对所述待校验操作信息进行校验。
如图4b所示,示出了该方式下的校验界面,可见,该校验界面中包含可操作且携带验证码的验证码展示区,用户可以根据验证码所指示的行为,在该验证码展示区发出相应的待校验操作,在图4b中,假设标准操作信息为操作控件“2”和“4”被点击,那么,用户根据验证码“点击下图中的ou数”,针对验证码展示区内的操作控件“2”和“4”进行点击后,可通过校验。
当然,上述两种方式仅是为了说明本申请实施例中的校验方法,并不构成对本申请的限定。
以上为本申请实施例提供的校验方法,基于同样的思路,本申请实施例还提供一种基于验证码的校验装置。
如图5所示,所述的校验装置,设置于业务提供方的服务器侧,该装置包括:
接收模块501,接收校验请求;
获取模块502,当接收到所述校验请求后,获取预先生成的第一字符串;其中,所述第一字符串中包含至少一个可变字符;
替换模块503,根据预先建立的可变字符与备用字符的对应关系,将部分 或全部可变字符替换为备用字符,得到第二字符串;
校验模块504,根据所述第二字符串生成验证码,对所述校验请求所对应的用户进行校验。
所述装置还包括:建立模块505,针对任一可变字符,确定该可变字符的至少一个同音字符和/或同义字符,将确定的所述同音字符和/或同义字符作为该可变字符的备用字符,并建立与所述可变字符的对应关系。
所述校验模块504,根据所述第二字符串,生成指定格式的验证码。其中,所述指定格式包括:图片格式、文本格式中的至少一种。
所述校验模块504,在对用户进行校验的界面上,生成输入区域,获取用户在所述输入区域内根据所述验证码所输入的待校验字符串,根据所述第一字符串,对所述待校验字符串进行校验。
所述校验模块504,在对用户进行校验的界面上,生成可操作的验证码展示区,获取所述用户在验证码展示区内,根据所述验证码所执行的待校验操作所对应的待校验操作信息,根据预设的标定操作信息,对所述待校验操作信息进行校验。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电 路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实 体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定事务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行事务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (10)

  1. 一种基于验证码的校验方法,其特征在于,所述方法包括:
    接收校验请求;
    当接收到所述校验请求后,获取预先生成的第一字符串;其中,所述第一字符串中包含至少一个可变字符;
    根据预先建立的可变字符与备用字符的对应关系,将部分或全部可变字符替换为备用字符,得到第二字符串;
    根据所述第二字符串生成验证码,对所述校验请求所对应的用户进行校验。
  2. 如权利要求1所述的方法,其特征在于,预先建立可变字符与备用字符的对应关系,具体包括:
    针对任一可变字符,确定该可变字符的至少一个同音字符和/或同义字符;
    将确定的所述同音字符和/或同义字符作为该可变字符的备用字符,并建立与所述可变字符的对应关系。
  3. 如权利要求2所述的方法,其特征在于,根据所述第二字符串生成验证码,具体包括:
    根据所述第二字符串,生成指定格式的验证码;
    其中,所述指定格式包括:图片格式、文本格式中的至少一种。
  4. 如权利要求1所述的方法,其特征在于,对所述校验请求所对应的用户进行校验,具体包括:
    在对用户进行校验的界面上,生成输入区域;
    获取用户在所述输入区域内根据所述验证码所输入的待校验字符串;
    根据所述第一字符串,对所述待校验字符串进行校验。
  5. 如权利要求1所述的方法,其特征在于,对所述校验请求所对应的用户进行校验,具体包括:
    在对用户进行校验的界面上,生成可操作的验证码展示区;
    获取所述用户在验证码展示区内,根据所述验证码所执行的待校验操作所对应的待校验操作信息;
    根据预设的标定操作信息,对所述待校验操作信息进行校验。
  6. 一种基于验证码的校验装置,其特征在于,所述装置包括:
    接收模块,接收校验请求;
    获取模块,当接收到所述校验请求后,获取预先生成的第一字符串;其中,所述第一字符串中包含至少一个可变字符;
    替换模块,根据预先建立的可变字符与备用字符的对应关系,将部分或全部可变字符替换为备用字符,得到第二字符串;
    校验模块,根据所述第二字符串生成验证码,对所述校验请求所对应的用户进行校验。
  7. 如权利要求6所述的装置,其特征在于,所述装置还包括:建立模块,针对任一可变字符,确定该可变字符的至少一个同音字符和/或同义字符,将确定的所述同音字符和/或同义字符作为该可变字符的备用字符,并建立与所述可变字符的对应关系。
  8. 如权利要求7所述的装置,其特征在于,所述校验模块,根据所述第二字符串,生成指定格式的验证码;
    其中,所述指定格式包括:图片格式、文本格式中的至少一种。
  9. 如权利要求6所述的装置,其特征在于,所述校验模块,在对用户进行校验的界面上,生成输入区域,获取用户在所述输入区域内根据所述验证码所输入的待校验字符串,根据所述第一字符串,对所述待校验字符串进行校验。
  10. 如权利要求6所述的装置,其特征在于,所述校验模块,在对用户进行校验的界面上,生成可操作的验证码展示区,获取所述用户在验证码展示区内,根据所述验证码所执行的待校验操作所对应的待校验操作信息,根据预设的标定操作信息,对所述待校验操作信息进行校验。
PCT/CN2017/113595 2016-12-08 2017-11-29 一种基于验证码的校验方法及装置 WO2018103564A1 (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
SG11201905215TA SG11201905215TA (en) 2016-12-08 2017-11-29 Method and Apparatus for Verification Based on Verification Code
EP17879427.7A EP3554000B1 (en) 2016-12-08 2017-11-29 Validation code based verification method and device
ES17879427T ES2882535T3 (es) 2016-12-08 2017-11-29 Método y dispositivo de verificación basados en código de validación
JP2019531108A JP6894511B2 (ja) 2016-12-08 2017-11-29 検証コードに基づく検証方法および装置
KR1020197019777A KR102194072B1 (ko) 2016-12-08 2017-11-29 검증 코드에 기초한 검증 방법 및 장치
PL17879427T PL3554000T3 (pl) 2016-12-08 2017-11-29 Sposób i urządzenie do weryfikacji oparte na kodzie walidacyjnym
US16/393,839 US10719599B2 (en) 2016-12-08 2019-04-24 Verification code generation to improve recognition accuracy by a person and recognition difficulty by a computer program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201611125263.0A CN106899411B (zh) 2016-12-08 2016-12-08 一种基于验证码的校验方法及装置
CN201611125263.0 2016-12-08

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/393,839 Continuation US10719599B2 (en) 2016-12-08 2019-04-24 Verification code generation to improve recognition accuracy by a person and recognition difficulty by a computer program

Publications (1)

Publication Number Publication Date
WO2018103564A1 true WO2018103564A1 (zh) 2018-06-14

Family

ID=59197816

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/113595 WO2018103564A1 (zh) 2016-12-08 2017-11-29 一种基于验证码的校验方法及装置

Country Status (10)

Country Link
US (1) US10719599B2 (zh)
EP (1) EP3554000B1 (zh)
JP (1) JP6894511B2 (zh)
KR (1) KR102194072B1 (zh)
CN (1) CN106899411B (zh)
ES (1) ES2882535T3 (zh)
PL (1) PL3554000T3 (zh)
SG (1) SG11201905215TA (zh)
TW (1) TWI756266B (zh)
WO (1) WO2018103564A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106899411B (zh) * 2016-12-08 2021-09-21 创新先进技术有限公司 一种基于验证码的校验方法及装置
CN109087368B (zh) * 2018-06-14 2023-04-07 创新先进技术有限公司 一种字符串图形化方法和装置
CN109117624A (zh) * 2018-08-03 2019-01-01 上海掌门科技有限公司 生成验证码图像的方法、电子设备和计算机可读介质
CN109359274B (zh) * 2018-09-14 2023-05-02 蚂蚁金服(杭州)网络技术有限公司 一种对批量生成的字符串进行识别的方法、装置及设备
CN109635256B (zh) * 2018-12-20 2023-07-11 上海掌门科技有限公司 用于校验数据的方法和装置
US10496809B1 (en) 2019-07-09 2019-12-03 Capital One Services, Llc Generating a challenge-response for authentication using relations among objects
US10614207B1 (en) * 2019-07-09 2020-04-07 Capital One Services, Llc Generating captcha images using variations of the same object
CN110677239B (zh) * 2019-08-26 2022-09-06 深圳市共进电子股份有限公司 一种验证码生成方法及装置
CN111177688B (zh) * 2019-12-26 2022-10-14 微梦创科网络科技(中国)有限公司 一种基于形似语言混合字体的安全认证方法及装置
CN111611767B (zh) * 2020-05-21 2023-04-25 北京百度网讯科技有限公司 验证方法和装置
CN111953647B (zh) * 2020-06-22 2022-09-27 北京百度网讯科技有限公司 安全校验方法、装置、电子设备和存储介质
CN111966669B (zh) * 2020-06-29 2024-03-15 浪潮通用软件有限公司 一种报表数据校验方法、设备及介质
CN114980099B (zh) * 2020-12-02 2023-11-17 支付宝(杭州)信息技术有限公司 一种设备之间的连接方法、装置及设备
CN112685725B (zh) * 2020-12-30 2022-12-06 上海掌门科技有限公司 一种安全验证的方法与设备
CN112966252B (zh) * 2021-04-26 2023-11-24 平安国际智慧城市科技股份有限公司 一种基于密码技术的客户端验证方法、装置、电子设备及介质
CN114465762A (zh) * 2021-12-24 2022-05-10 安徽航天信息有限公司 一种基于语境的验证码生成方法、装置及存储介质
CN115037515A (zh) * 2022-04-29 2022-09-09 北京龙腾佳讯科技股份公司 开放数据网中无状态验证码验证方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796252A (zh) * 2014-01-20 2015-07-22 北京大学 可变数据标签防伪的方法、装置及其认证的方法、系统
KR101647027B1 (ko) * 2015-03-02 2016-08-23 주식회사 사람들과사람들 기준지점 기반의 가변형 패턴을 이용한 사용자 인증 장치 및 그 방법
CN106156597A (zh) * 2015-04-16 2016-11-23 深圳市腾讯计算机系统有限公司 一种验证码的实现方法,及装置
CN106899411A (zh) * 2016-12-08 2017-06-27 阿里巴巴集团控股有限公司 一种基于验证码的校验方法及装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7890426B2 (en) 2004-11-19 2011-02-15 Vectorsgi, Inc. Method and system for verifying check images
US7552467B2 (en) * 2006-04-24 2009-06-23 Jeffrey Dean Lindsay Security systems for protecting an asset
US20110055585A1 (en) * 2008-07-25 2011-03-03 Kok-Wah Lee Methods and Systems to Create Big Memorizable Secrets and Their Applications in Information Engineering
CN101895542B (zh) * 2010-07-05 2013-03-20 北京畅游时空软件技术有限公司 一种验证码的获取方法及装置
CN102075507A (zh) * 2010-07-30 2011-05-25 百度在线网络技术(北京)有限公司 一种用于基于词句验证图进行用户验证的方法与设备
WO2012029519A1 (ja) * 2010-08-31 2012-03-08 楽天株式会社 応答判定装置、応答判定方法、応答判定プログラム、記録媒体、および、応答判定システム
CN101976430A (zh) * 2010-10-29 2011-02-16 赵俊平 一种图片验证码生成方法及其系统
US8885931B2 (en) * 2011-01-26 2014-11-11 Microsoft Corporation Mitigating use of machine solvable HIPs
WO2014107618A1 (en) * 2013-01-04 2014-07-10 Gary Stephen Shuster Cognitive-based captcha system
CN104283682A (zh) * 2013-07-08 2015-01-14 深圳市腾讯计算机系统有限公司 一种利用验证码进行校验的方法、装置及系统
US9202076B1 (en) * 2013-07-26 2015-12-01 Symantec Corporation Systems and methods for sharing data stored on secure third-party storage platforms
US10061914B2 (en) * 2014-11-14 2018-08-28 Mcafee, Llc Account recovery protocol
TWI546693B (zh) 2014-12-10 2016-08-21 英業達股份有限公司 整合驗證碼及密碼的登入系統及其方法
CN104794385A (zh) 2015-03-03 2015-07-22 新浪网技术(中国)有限公司 一种信息验证方法及装置
CN104883351B (zh) 2015-03-13 2019-02-12 小米科技有限责任公司 多因子认证方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104796252A (zh) * 2014-01-20 2015-07-22 北京大学 可变数据标签防伪的方法、装置及其认证的方法、系统
KR101647027B1 (ko) * 2015-03-02 2016-08-23 주식회사 사람들과사람들 기준지점 기반의 가변형 패턴을 이용한 사용자 인증 장치 및 그 방법
CN106156597A (zh) * 2015-04-16 2016-11-23 深圳市腾讯计算机系统有限公司 一种验证码的实现方法,及装置
CN106899411A (zh) * 2016-12-08 2017-06-27 阿里巴巴集团控股有限公司 一种基于验证码的校验方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3554000A4 *

Also Published As

Publication number Publication date
EP3554000A4 (en) 2019-11-06
EP3554000A1 (en) 2019-10-16
KR102194072B1 (ko) 2020-12-23
KR20190091529A (ko) 2019-08-06
ES2882535T3 (es) 2021-12-02
EP3554000B1 (en) 2021-05-19
JP2020501279A (ja) 2020-01-16
US10719599B2 (en) 2020-07-21
US20190251243A1 (en) 2019-08-15
CN106899411A (zh) 2017-06-27
TW201822048A (zh) 2018-06-16
JP6894511B2 (ja) 2021-06-30
PL3554000T3 (pl) 2021-11-02
CN106899411B (zh) 2021-09-21
SG11201905215TA (en) 2019-08-27
TWI756266B (zh) 2022-03-01

Similar Documents

Publication Publication Date Title
WO2018103564A1 (zh) 一种基于验证码的校验方法及装置
AU2020215026B2 (en) Using on-demand applications to generate virtual numbers for a contactless card to securely autofill forms
TWI724326B (zh) 業務授權的方法、裝置及設備
TW201918920A (zh) 聲紋認證方法、帳號註冊方法及裝置
TWI752228B (zh) 資訊驗證處理方法、裝置、系統、客戶端及伺服器
US10554657B1 (en) Using an audio interface device to authenticate another device
WO2020238230A1 (zh) 一种获取银行卡签约要素信息的方法、系统及设备
Edu et al. SkillVet: automated traceability analysis of Amazon Alexa skills
TW201629821A (zh) 驗證使用者身份的方法、系統、用戶端及伺服器
TW202109323A (zh) 操作用戶識別方法、裝置及設備
WO2021174969A1 (zh) 一种校验方法、装置以及设备
CN107025393A (zh) 一种资源调用的方法及装置
US20210397682A1 (en) Secure Service Interaction
US11461503B2 (en) Service processing method and apparatus
US10270771B1 (en) Mid-session live user authentication
CN107483534B (zh) 一种业务处理的方法及装置
TWI732139B (zh) 數位物件唯一識別碼(doi)展示和交易資訊校驗方法、裝置及設備
CN104199778B (zh) 测试软件注册算法错误的方法
US20220051092A1 (en) System and methods for translating error messages
TWM500291U (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: 17879427

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019531108

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 20197019777

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2017879427

Country of ref document: EP

Effective date: 20190708