CN107666470B - 一种验证信息的处理方法及装置 - Google Patents
一种验证信息的处理方法及装置 Download PDFInfo
- Publication number
- CN107666470B CN107666470B CN201610616618.XA CN201610616618A CN107666470B CN 107666470 B CN107666470 B CN 107666470B CN 201610616618 A CN201610616618 A CN 201610616618A CN 107666470 B CN107666470 B CN 107666470B
- Authority
- CN
- China
- Prior art keywords
- character string
- information
- verification
- initial
- client
- 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
- 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/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种验证信息的处理方法及装置,该验证信息的处理方法包括:接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息;根据该验证信息生成请求随机获取一个预设长度的初始字符串;基于该初始字符串和身份信息生成针对该客户端的验证信息,并向该客户端发送该验证信息,以对该客户端进行身份验证。上述验证信息的处理方法能有效限制在线打码平台批量作恶的频次,提高网络的安全性。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种验证信息的处理方法及装置。
背景技术
全自动区分计算机和人类的图灵测试(Completely Automated Public Turingtest to Tell Computers and Humans Apart,CAPTCHA),俗称验证码,是一种区分用户是计算机和人的公共全自动程序。
现有的验证码主要有两种:字符图片类验证码和图像交互类验证码,字符图片类验证码需要用户根据服务器下发的图片,在输入框中输入相应的字符来生成所需答案,而图像交互类验证码需要用户根据服务器下发的图片和问题,对图片的指定位置进行点击以生成所需的坐标答案。这两种验证码虽然可以区分出当前用户是自动机(也即自动识别验证码的软件))还是人,但对于在线打码平台,也即一种雇佣大量人员专门从事验证码输入工作的平台,这两种验证码就失去了作用,从而难以避免攻击方利用在线打码平台对互联网应用进行大量重复的操作,比如刷票、论坛灌水等,网络安全性低。
发明内容
本发明的目的在于提供一种验证信息的处理方法及装置,以解决现有验证码容易被在线打码平台破解,网络安全性低的技术问题。
为解决上述技术问题,本发明实施例提供以下技术方案:
一种验证信息的处理方法,应用于服务器,其包括:
接收客户端发送的验证信息生成请求,所述验证信息生成请求携带所述客户端的身份信息;
根据所述验证信息生成请求随机获取一个预设长度的初始字符串;
基于所述初始字符串和身份信息生成针对所述客户端的验证信息;
向所述客户端发送所述验证信息,以对所述客户端进行身份验证。
为解决上述技术问题,本发明实施例还提供以下技术方案:
一种验证信息的处理方法,应用于客户端,其包括:
接收服务器发送的验证信息,所述验证信息包括所述客户端的身份信息、待计算字符串组和初始加密值;
根据所述验证信息从所述待计算字符串组中确定目标字符串;
将所述目标字符串发送至所述服务器,以使所述服务器根据所述目标字符串生成相应的验证结果。
为解决上述技术问题,本发明实施例还提供以下技术方案:
一种验证信息的处理装置,应用于服务器,其包括:
接收模块,用于接收客户端发送的验证信息生成请求,所述验证信息生成请求携带所述客户端的身份信息;
获取模块,用于根据所述验证信息生成请求随机获取一个预设长度的初始字符串;
生成模块,用于基于所述初始字符串和身份信息生成针对所述客户端的验证信息;
发送模块,用于向所述客户端发送所述验证信息,以对所述客户端进行身份验证。
为解决上述技术问题,本发明实施例还提供以下技术方案:
一种验证信息的处理装置,应用于客户端,其包括:
接收模块,用于接收服务器发送的验证信息,所述验证信息包括所述客户端的身份信息、待计算字符串组和初始加密值;
确定模块,用于根据所述验证信息从所述待计算字符串组中确定目标字符串;
发送模块,用于将所述目标字符串发送至所述服务器,以使所述服务器根据所述目标字符串生成相应的验证结果。
本发明所述的验证信息的处理方法及装置,通过接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息,并根据该验证信息生成请求随机获取一个预设长度的初始字符串,之后,基于该初始字符串和身份信息生成针对该客户端的验证信息,并向该客户端发送该验证信息,以对该客户端进行身份验证,能有效限制在线打码平台批量作恶的频次,提高网络的安全性。
附图说明
下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其它有益效果显而易见。
图1a是本发明实施例提供的验证信息的处理***的场景示意图。
图1b为本发明实施例提供的验证信息的处理方法的流程示意图。
图2为本发明实施例提供的应用于服务器的验证信息的处理方法的流程示意图。
图3为本发明实施例提供的应用于客户端的验证信息的处理方法的流程示意图。
图4为本发明实施例提供的验证信息的处理装置的结构示意图。
图5为本发明实施例提供的验证信息的处理装置的结构示意图。
图6为本发明实施例提供的服务器的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种验证信息的处理方法、装置及***。
请参阅图1a,该验证信息的处理***可以包括本发明实施例所提供的任一种验证信息的处理装置,该验证信息的处理装置具体可以集成在服务器中,该服务器主要应用于验证***中,其可以是单个集成服务器,也可以是多个服务器。此外,该验证信息的处理***还可以包括其他的设备,比如客户端等,该客户端和服务器之间通过网络进行连接。
其中,服务器可以接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息,并根据该验证信息生成请求随机获取一个预设长度的初始字符串,之后,基于该初始字符串和身份信息生成针对该客户端的验证信息,并向该客户端发送该验证信息,以对该客户端进行身份验证,其中,该客户端可以是电脑、手机或平板电脑等终端设备,该身份信息可以包括该客户端的网际协议(Internet Protocol,IP)地址和用户账号信息,该预设长度可以根据实际需求而定,譬如,可以为6位或7位。当用户通过手机登录某一应用(比如社交软件)的账号时,若需要发布信息,比如广告,则服务器会生成针对该手机的验证信息,并将该验证信息通过网络发送至手机进行身份验证,只有当身份验证通过时,服务器才允许用户通过该手机发布广告。
以下将分别进行详细说明。需说明的是,以下实施例的序号不作为实施例优先顺序的限定。
第一实施例
本实施例将从验证信息的处理装置的角度进行描述,该验证信息的处理装置可以集成在服务器中,该服务器主要应用于验证***中。
请参阅图1b,图1b具体描述了本发明第一实施例提供的验证信息的处理方法,应用于服务器,其可以包括:
S101、接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息。
本实施例中,该客户端可以包括电脑、手机和平板电脑等终端设备。该身份信息主要用于过滤掉恶意软件,其可以包括该客户端的网际协议(Internet Protocol,IP)地址和用户账号信息,该IP地址和用户账号信息均可以表现为字符串形式。具体的,当用户登录客户端上某一应用账号,比如微博账号时,若需要通过该账号发布信息,则客户端可以生成一验证信息生成请求,并向服务器发送该验证信息生成请求。
S102、根据该验证信息生成请求随机获取一个预设长度的初始字符串。
本实施例中,服务器可以通过调用指定函数来随机生成该预设长度的初始字符串。该预设长度可以根据实际应用需求而定,主要用于控制验证信息的难度,比如,若该实际应用需求为尽量降低用户发布信息的频率时,可以将该预设长度的值设置的大一些,比如7位或6位,若该实际应用需求为尽量减少客户端的计算量,降低客户端的硬件要求时,可以将该预设长度的值设置的小一些,比如4位或3位。
需要说明的是,本实施例中所提到的字符串均是由数字、字母和下划线组成的一串字符,其可以是符号或数值的一个连续序列,如符号串或二进制数字串等。
S103、基于该初始字符串和身份信息生成针对该客户端的验证信息。
本实施例中,该验证信息可以表现为算力题形式,也即服务器提供若干个已知信息和指定算法,需要客户端求唯一值。此时,该验证信息的难度可以为客户端计算出该算力题所需花费的时间,比如该验证信息的难度可以为1次计算需要n单位时间,该n的取值可以根据该初始字符串的长度而定,一般情况下,该初始字符串的长度越长,n值就越大,算力题的难度等级也越高。
例如,上述步骤S103具体可以包括:
(11)基于该初始字符串和身份信息计算初始加密值。
本实施例中,可以先计算该初始字符串和身份信息的和值,之后通过哈希算法对该和值加密,得到初始加密值,其中,哈希算法是一种可以将任意长度的二进制值映射为较短的固定长度的二进制值的算法,其是一种单向密码体制,只有加密过程,没有解密过程,从而可以避免客户端绕过计算过程直接反推出结果,有效限制客户端的答题时间。该哈希算法可以包括消息摘要算法第二版(Message-Digest Algorithm 2,MD2)、消息摘要算法第四版(Message-Digest Algorithm 4,MD4)和消息摘要算法第五版(Message-DigestAlgorithm 5,MD5)等。
需要补充的是,为控制算力题的有效时间,并确保该算力题在有效时间内的值域空间够大不重复,该验证信息的生成过程还需包括其他限制条件,也即,上述步骤(11)具体可以包括:
获取一个随机字符串和当前所处的时间信息;
将该时间信息、身份信息、随机字符串和初始字符串进行相加,得到待加密字符串;
通过哈希算法对该待加密字符串进行加密,得到初始加密值。
本实施例中,该随机字符串的设置主要为了确保该算力题的值域空间够大不重复,其长度和字符均可以随机。该时间信息主要用于限制该算力题的有效时间,比如,若生成题目的时间为11:00,该算力题的难度为1次计算需1s,当时间到达11:01时,若此时客户端还未计算出答案,可以默认该题目失效。当然,在计算时,该时间信息通常表现为字符串形式。
(12)根据该初始字符串确定待计算字符串组,该待计算字符串组包括该初始字符串。
本实施例中,该待计算字符串组可以包括该初始字符串中所有字符的全部排列形式,也即该待计算字符串组中任意字符串所包含的字符均与该初始字符串所包含的字符相同,但是该字符所在的位置存在不同。譬如,若该初始字符串为六位数的字符集,比如0-9a-z,则该待计算字符串组可以包括0、-、9、a、-、z这六个字符的全部排列形式。
(13)根据该身份信息、初始加密值和待计算字符串组生成针对该客户端的验证信息。
例如,上述步骤(13)具体可以包括:
根据该身份信息、时间信息、初始加密值、随机字符串和待计算字符串组生成针对该客户端的验证信息。
本实施例中,可以将身份信息、时间信息、随机字符串和待计算字符串组作为该验证信息的已知部分,以便客户端根据该已知部分进行解答,同时将初始加密值作为该验证信息的对比部分,以便客户端根据该对比部分从多个答案中确定唯一答案。
S104、向该客户端发送该验证信息,以对该客户端进行身份验证。
本实施例中,客户端可以通过指定接口接收该验证信息,并利用其内预置的哈希算法对该验证信息进行解答,之后将该解答结果发送至服务器,服务器可以根据该解答结果判断该客户端的身份是否合法。也即,在向该客户端发送该验证信息之后,该验证信息的处理方法还可以包括:
接收该客户端发送的验证请求,该验证请求携带目标字符串;
基于该目标字符串生成对应的验证结果;
向该客户端发送该验证结果。
本实施例中,该目标字符串是客户端根据该验证信息生成的解答结果。当服务器接收到该目标字符串时,其可以根据该目标字符串和初始字符串的对比结果生成对应的验证结果,也可以通过哈希算法对该目标字符串、身份信息、时间信息和随机字符串的和值进行加密,得到目标加密值,根据该目标加密值和初始加密值的对比结果生成对应的验证结果,其中,该验证结果可以包括验证成功和验证失败。
例如,上述“基于该目标字符串生成对应的验证结果”的步骤可以包括:
判断该目标字符串和初始字符串是否相同;
若该目标字符串和初始字符串相同,则生成指示验证成功的验证结果;
若该目标字符串和初始字符串不同,则生成指示验证失败的验证结果。
本实施例中,服务器可以通过串匹配算法判断该目标字符串和初始字符串是否相同,若该目标字符串中的每一字符及其所在位置都与该初始字符串相同,则可以判定相同,若该目标字符串中的某一字符或者某一字符所在的位置与该初始字符串存在不同,则可以判定不同。当判定相同时,服务器可以允许客户端的当前操作,比如发布广告、灌水或刷票等。当判定不同时,服务器可以禁止客户端的当前操作,之后,可以继续向客户端发送新的验证信息,直到生成指示验证成功的验证结果为止。
由上述可知,本实施例提供的验证信息的处理方法,通过接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息,并根据该验证信息生成请求随机获取一个预设长度的初始字符串,之后,基于该初始字符串和身份信息生成针对该客户端的验证信息,并向该客户端发送该验证信息,以对该客户端进行身份验证,相对于现有技术来说,由于该验证信息是基于初始字符串和身份信息生成的,故恶意软件很难伪造,这样,客户端每次请求时都需要花费一定的计算时间,能有效限制在线打码平台批量作恶的频次,降低大量垃圾广告的发布几率,提高网络的安全性。
第二实施例
本实施例将从验证信息的处理装置的角度进行描述,该验证信息的处理装置可以集成在客户端中,该客户端可以包括电脑、手机和平板电脑等终端设备。
请参阅图2,图2具体描述了本发明第二实施例提供的验证信息的处理方法,应用于客户端,其可以包括:
S201、接收服务器发送的验证信息,该验证信息可以包括该客户端的身份信息、待计算字符串组和初始加密值。
本实施例中,客户端可以通过指定接口接收该服务器发送的验证信息。该验证信息可以表现为算力题形式,也即服务器提供若干个已知信息和指定算法,需要客户端求唯一值。该身份信息可以包括该客户端的网际协议(Internet Protocol,IP)地址和用户账号信息,该IP地址和用户账号信息均可以表现为字符串形式。该待计算字符串组中任意两个字符串所包含的字符均相同,但该字符所在位置存在不同。
S202、根据该验证信息从该待计算字符串组中确定目标字符串。
例如,上述步骤S202具体可以包括:
(21)根据该身份信息和待计算字符串组确定加密值组。
本实施例中,可以先计算该待计算字符串组中任一字符串与该身份信息的和值,之后通过哈希算法分别对每一和值进行加密,得到该加密值组。该哈希算法是一种可以将任意长度的二进制值映射为较短的固定长度的二进制值的算法,其是一种单向密码体制,只有加密过程,没有解密过程。该哈希算法可以包括消息摘要算法第二版(Message-DigestAlgorithm 2,MD2)、消息摘要算法第四版(Message-Digest Algorithm 4,MD4)和消息摘要算法第五版(Message-Digest Algorithm 5,MD5)等。
当然,为控制算力题的有效时间,并确保该算力题在有效时间内的值域空间够大不重复,该验证信息还可以包括时间信息和随机字符串,此时,上述步骤(21)具体可以包括:
分别计算该待计算字符串组中任一字符串与该身份信息、时间信息以及随机字符串之和,得到计算后字符串组;
通过哈希算法对该计算后字符串组中的字符串进行加密,得到加密值组。
本实施例中,该随机字符串的设置主要为了确保该算力题的值域空间够大不重复。该时间信息的设置主要用于限制该算力题的有效时间,比如,若生成题目的时间为11:00,该算力题的难度为1次计算需1s,当时间到达11:01时,若此时客户端还未计算出答案,则服务器可以默认该题目失效。当然,在计算时,该时间信息通常表现为字符串形式。
(22)根据该加密值组和初始加密值从该待计算字符串组中确定目标字符串。
例如,上述步骤(22)具体可以包括:
将该初始加密值与加密值组进行匹配,并获取匹配结果;
当该匹配结果指示匹配成功时,获取该加密值组中该匹配成功的加密值;
根据该匹配成功的加密值从该待计算字符串组中获取对应的字符串;
将该字符串确定为目标字符串。
本实施例中,该匹配结果可以包括匹配成功和匹配失败。当该待计算字符串组中存在某一字符串与该身份信息、时间信息和随机字符串进行求和并加密后,得到的加密值与该初始加密值相同,也即该加密值中的每一字符及其所在的位置与该初始加密值相同,则可以判定匹配成功,此时,客户端可以将该字符串确定为目标字符串。
S203、将该目标字符串发送至该服务器,以使该服务器根据该目标字符串生成相应的验证结果。
本实施例中,该验证结果可以包括验证成功和验证失败。当服务器接收到该目标字符串时,可以根据该目标字符串对该客户端进行身份验证,并根据该验证结果控制客户端的当前操作,比如,若该验证结果为验证成功时,服务器可以允许客户端的当前操作(比如发布广告、灌水或刷票等),若该验证结果为验证失败时,服务器可以禁止客户端的当前操作。
由上述可知,本实施例提供的验证信息的处理方法,通过接收服务器发送的验证信息,该验证信息包括客户端的身份信息、待计算字符串组和初始加密值,并根据该验证信息从该待计算字符串组中确定目标字符串,之后,将该目标字符串发送至该服务器,以使该服务器根据该目标字符串生成相应的验证结果,能有效限制恶意软件利用客户端进行刷票、灌水或发布垃圾广告等操作的频率,提高了网络安全性。
第三实施例
根据实施例一和实施例二所描述的方法,以下将举例作进一步详细说明。
在本实施例中,将以该验证信息的处理装置集成在服务器和客户端中为例进行详细说明。
如图3所示,一种验证信息的处理方法,具体流程可以如下:
S301、客户端生成验证信息生成请求,并向服务器发送该验证信息生成请求。
其中,该验证信息生成请求携带该客户端的身份信息,该身份信息可以包括网际协议(Internet Protocol,IP)地址和用户账号信息。
譬如,当用户登录客户端上某一应用账号,比如微博账号时,若需要通过该账号发布信息,比如发布广告或者灌水等,则客户端可以生成一携带有IP地址和微博账号的验证信息生成请求,并向服务器发送该验证信息生成请求。
S302、服务器接收到客户端发送的验证信息生成请求后,获取初始字符串、随机字符串和当前所处的时间信息,并将该时间信息、身份信息、随机字符串和初始字符串进行相加,得到待加密字符串。
其中,该初始字符串和随机字符串均是随机生成的,该初始字符串具有预设长度。
譬如,该预设长度可以为7位或者5位。假设该初始字符串为px,IP地址为clentip,用户账号信息为uid,随机字符串为rand,时间信息为time,则该待加密字符串w=clentip+uid+rand+time+px。由于该初始字符串的长度是固定值,而该随机字符串的长度不是固定值,故服务器可以调用不同的函数来生成该初始字符串和随机字符串。
S303、服务器通过哈希算法对该待加密字符串进行加密,得到初始加密值,并根据该初始字符串确定待计算字符串组,该待计算字符串组包括该初始字符串。
譬如,服务器可以通过md5算法对该待加密字符串w进行加密,得到固定长度的初始加密值R,也即,R=md5(w)=md5(clentip+uid+rand+time+px)。假设该初始字符串px为三位数的字符集,比如0-a,则该待计算字符串组可以包括{0-a、0a-、-0a、-a0、a0-、a-0},当然,为增加客户端的计算难度,该初始字符串px的长度可以增大,比如,该初始字符串px可以为六位数的字符集0-9a*z,此时相应的,该待计算字符串组总共包括720个字符串,比如09-a*z、09-z*a、09-*za等等。
S304、服务器根据该身份信息、时间信息、初始加密值、随机字符串和待计算字符串组生成针对该客户端的验证信息。
譬如,该验证信息可以包括已知部分和对比部分,服务器可以将身份信息、时间信息、随机字符串和待计算字符串组作为该已知部分,以便客户端根据该已知部分进行解答,同时将初始加密值作为对比部分,以便客户端根据该对比部分从多个答案中确定唯一答案。
S305、服务器向该客户端发送该验证信息。
譬如,服务器可以通过网络向客户端发送该验证信息,该网络可以为无线网络或有线网络。
S306、当客户端接收到该验证信息之后,分别计算该待计算字符串组中任一字符串与该身份信息、时间信息以及随机字符串之和,得到计算后字符串组,并通过哈希算法对该计算后字符串组中的字符串进行加密,得到加密值组。
譬如,客户端可以计算{0-a、0a-、-0a、-a0、a0-、a-0}中每一字符串与clentip、uid、time以及rand的和值,得到计算后字符串组,之后,通过md5算法进行加密,得到加密值组。
S307、客户端将该初始加密值与该加密值组进行匹配,并获取匹配结果,若该匹配结果指示匹配成功,则执行下述步骤S308,若该匹配结果指示匹配失败,则客户端可以执行上述步骤S301。
譬如,假设该初始加密值为1234,若该加密值组为{1124、1345、1113、1564、1234、1324},则匹配成功,若该加密值组为{1124、1345、1113、1564、2314、1324},则匹配失败。
S308、客户端获取该加密值组中该匹配成功的加密值,根据该匹配成功的加密值从该待计算字符串组中获取对应的字符串,并将该字符串确定为目标字符串。
譬如,若该待计算字符串组中字符串0-a计算得到的加密值为1234,字符串0a-计算得到的加密值为1324,则当该初始加密值为1234时,根据该匹配成功的加密值确定的目标字符串为0-a。
S309、客户端向服务器发送验证请求,该验证请求携带该目标字符串。
譬如,客户端可以通过应用界面的指定接口向服务器发送验证请求。
S310、服务器接收到该验证请求之后,判断该目标字符串和初始字符串是否相同,若相同,则执行下述步骤S311,若不同,则执行下述步骤S312。
譬如,当该初始字符串为0-a时,若该目标字符串为0-a,则相同,若该目标字符串为0a-,则不同。
S311、服务器生成指示验证成功的验证结果,并将该指示验证成功的验证结果发送给客户端。
S312、服务器生成指示验证失败的验证结果,并将该指示验证失败的验证结果发送给客户端。
譬如,当服务器生成的验证结果指示验证成功时,其可以允许客户端的当前操作,比如发布广告、灌水或刷票等。当服务器生成的验证结果指示验证失败时,其可以禁止客户端的当前操作,并可以继续向客户端发送新的验证信息,直到生成指示验证成功的验证结果为止。
由上述可知,本实施例提供的验证信息的处理方法,其中客户端生成验证信息生成请求,并向服务器发送该验证信息生成请求,服务器接收到客户端发送的验证信息生成请求后,获取初始字符串、随机字符串和当前所处的时间信息,并将该时间信息、身份信息、随机字符串和初始字符串进行相加,得到待加密字符串,之后,通过哈希算法对该待加密字符串进行加密,得到初始加密值,并根据该初始字符串确定待计算字符串组,接着,根据该身份信息、时间信息、初始加密值、随机字符串和待计算字符串组生成针对该客户端的验证信息,并向该客户端发送该验证信息,当客户端接收到该验证信息之后,分别计算该待计算字符串组中任一字符串与该身份信息、时间信息以及随机字符串之和,得到计算后字符串组,并通过哈希算法对该计算后字符串组中的字符串进行加密,得到加密值组,接着,将该初始加密值与该加密值组进行匹配,若匹配成功,则获取该加密值组中该匹配成功的加密值,根据该匹配成功的加密值从该待计算字符串组中获取对应的字符串,并将该字符串确定为目标字符串,之后,向服务器发送携带该目标字符串的验证请求,服务器接收到该验证请求之后,判断该目标字符串和初始字符串是否相同,若相同,则生成指示验证成功的验证结果,若不同,则生成指示验证失败的验证结果,之后将该验证结果发送至客户端,能有效限制在线打码平台利用同一客户端批量作恶的频次,降低大量垃圾广告的发布几率,提高网络的安全性。
第四实施例
在实施例一和实施例三所述方法的基础上,本实施例将从验证信息的处理装置的角度进一步进行描述,请参阅图4,图4具体描述了本发明第四实施例提供的验证信息的处理装置,应用于服务器,其可以包括:接收模块10、获取模块20、生成模块30和发送模块40,其中:
(1)接收模块10
接收模块10,用于接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息。
本实施例中,该客户端可以包括电脑、手机和平板电脑等终端设备。该身份信息主要用于过滤掉恶意软件,其可以包括该客户端的网际协议(Internet Protocol,IP)地址和用户账号信息,该IP地址和用户账号信息均可以表现为字符串形式。具体的,当用户登录客户端上某一应用账号,比如微博账号时,若需要通过该账号发布信息,则客户端可以生成一验证信息生成请求,并向服务器发送该验证信息生成请求。
(2)获取模块20
获取模块20,用于根据该验证信息生成请求随机获取一个预设长度的初始字符串。
本实施例中,获取模块20可以通过调用指定函数来随机生成该预设长度的初始字符串。该预设长度可以根据实际应用需求而定,主要用于控制验证信息的难度,比如,若该实际应用需求为尽量降低用户发布信息的频率时,可以将该预设长度的值设置的大一些,比如7位或6位,若该实际应用需求为尽量减少客户端的计算量,降低客户端的硬件要求时,可以将该预设长度的值设置的小一些,比如4位或3位。
需要说明的是,本实施例中所提到的字符串均是由数字、字母和下划线组成的一串字符,其可以是符号或数值的一个连续序列,如符号串或二进制数字串等。
(3)生成模块30
生成模块30,用于基于该初始字符串和身份信息生成针对该客户端的验证信息。
本实施例中,该验证信息可以表现为算力题形式,也即服务器提供若干个已知信息和指定算法,需要客户端求唯一值。此时,该验证信息的难度可以为客户端计算出该算力题所需花费的时间,比如该验证信息的难度可以为1次计算需要n单位时间,该n的取值可以根据该初始字符串的长度而定,一般情况下,该初始字符串的长度越长,n值就越大,算力题的难度等级也越高。
例如,该生成模块30具体可以包括计算子模块、确定子模块和第一生成子模块,其中:
计算子模块,用于基于该初始字符串和身份信息计算初始加密值。
本实施例中,计算子模块可以先计算该初始字符串和身份信息的和值,之后通过哈希算法对该和值加密,得到初始加密值,其中,哈希算法是一种可以将任意长度的二进制值映射为较短的固定长度的二进制值的算法,其是一种单向密码体制,只有加密过程,没有解密过程,从而可以避免客户端绕过计算过程直接反推出结果,有效限制客户端的答题时间。该哈希算法可以包括MD2、MD4和MD5等。
需要补充的是,为控制算力题的有效时间,并确保该算力题在有效时间内的值域空间够大不重复,该验证信息的生成过程还需包括其他限制条件,也即,该计算子模块具体可以用于:
获取一个随机字符串和当前所处的时间信息;将该时间信息、身份信息、随机字符串和初始字符串进行相加,得到待加密字符串;通过哈希算法对该待加密字符串进行加密,得到初始加密值。
本实施例中,该随机字符串的设置主要为了确保该算力题的值域空间够大不重复,其长度和字符均可以随机。该时间信息主要用于限制该算力题的有效时间,比如,若生成题目的时间为11:00,该算力题的难度为1次计算需1s,当时间到达11:01时,若此时客户端还未计算出答案,可以默认该题目失效。当然,在计算时,该时间信息通常表现为字符串形式。
确定子模块,用于根据该初始字符串确定待计算字符串组,该待计算字符串组包括该初始字符串。
本实施例中,该待计算字符串组可以包括该初始字符串中所有字符的全部排列形式,也即该待计算字符串组中任意字符串所包含的字符均与该初始字符串所包含的字符相同,但是该字符所在的位置存在不同。譬如,若该初始字符串为六位数的字符串,比如0-9a-z,则该待计算字符串组可以包括0、-、9、a、-、z这六个字符的全部排列形式。
第一生成子模块,用于根据该身份信息、初始加密值和待计算字符串组生成针对该客户端的验证信息。
例如,该第一生成子模块具体可以用于:根据该身份信息、时间信息、初始加密值、随机字符串和待计算字符串组生成针对该客户端的验证信息。
本实施例中,可以将身份信息、时间信息、随机字符串和待计算字符串组作为该验证信息的已知部分,以便客户端根据该已知部分进行解答,同时将初始加密值作为该验证信息的对比部分,以便客户端根据该对比部分从多个答案中确定唯一答案。
(4)发送模块40
发送模块40,用于向该客户端发送该验证信息,以对该客户端进行身份验证。
本实施例中,客户端可以通过指定接口接收该验证信息,并利用其内预置的哈希算法对该验证信息进行解答,之后将该解答结果发送至服务器,服务器可以根据该解答结果判断该客户端的身份是否合法,也即,该验证信息的处理装置还可以包括验证模块,该验证模块具体可以包括接收子模块、第二生成子模块和发送子模块,其中:
接收子模块,用于在该发送模块40向该客户端发送该验证信息之后,接收该客户端发送的验证请求,该验证请求携带目标字符串;
第二生成子模块,用于基于该目标字符串生成对应的验证结果;
发送子模块,用于向该客户端发送该验证结果。
本实施例中,该目标字符串是客户端根据该验证信息生成的解答结果。当接收子模块接收到该目标字符串时,第二生成子模块可以根据该目标字符串和初始字符串的对比结果生成对应的验证结果,也可以通过哈希算法对该目标字符串、身份信息、时间信息和随机字符串的和值进行加密,得到目标加密值,根据该目标加密值和初始加密值的对比结果生成对应的验证结果,其中,该验证结果可以包括验证成功和验证失败。
例如,该第二生成子模块具体可以用于:
判断该目标字符串和初始字符串是否相同;
若该目标字符串和初始字符串相同,则生成指示验证成功的验证结果;
若该目标字符串和初始字符串不同,则生成指示验证失败的验证结果。
本实施例中,该第二生成子模块可以通过串匹配算法判断该目标字符串和初始字符串是否相同,若该目标字符串中的每一字符及其所在位置都与该初始字符串相同,则可以判定相同,若该目标字符串中的某一字符或者某一字符所在的位置与该初始字符串存在不同,则可以判定不同。当判定相同时,服务器可以允许客户端的当前操作,比如发布广告、灌水或刷票等。当判定不同时,服务器可以禁止客户端的当前操作,之后,可以继续向客户端发送新的验证信息,直到生成指示验证成功的验证结果为止。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上述可知,本实施例提供的验证信息的处理装置,通过接收模块10接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息,获取模块20根据该验证信息生成请求随机获取一个预设长度的初始字符串,之后,生成模块30基于该初始字符串和身份信息生成针对该客户端的验证信息,通过发送模块40向该客户端发送该验证信息,以对该客户端进行身份验证,相对于现有技术来说,由于该验证信息是基于初始字符串和身份信息生成的,故恶意软件很难伪造,这样,客户端每次请求时都需要花费一定的计算时间,能有效限制在线打码平台批量作恶的频次,降低大量垃圾广告的发布几率,提高网络的安全性。
第五实施例
在实施例二和实施例三所述方法的基础上,本实施例将从验证信息的处理装置的角度进一步进行描述,请参阅图5,图5具体描述了本发明第五实施例提供的验证信息的处理装置,应用于客户端,其可以包括:接收模块50、确定模块60和发送模块70,其中:
(1)接收模块50
接收模块50,用于接收服务器发送的验证信息,该验证信息包括该客户端的身份信息、待计算字符串组和初始加密值。
本实施例中,接收模块50可以通过指定接口接收该服务器发送的验证信息。该验证信息可以表现为算力题形式,也即服务器提供若干个已知信息和指定算法,需要客户端求唯一值。该身份信息可以包括该客户端的IP地址和用户账号信息,该IP地址和用户账号信息均可以表现为字符串形式。该待计算字符串组中任意两个字符串所包含的字符均相同,但该字符所在位置存在不同。
(2)确定模块60
确定模块60,用于根据该验证信息从该待计算字符串组中确定目标字符串。
例如,该确定模块60具体可以包括第一确定子模块和第二确定子模块,其中:
第一确定子模块,用于根据该身份信息和待计算字符串组确定加密值组。
本实施例中,该第一确定子模块可以先计算该待计算字符串组中任一字符串与该身份信息的和值,之后通过哈希算法分别对每一和值进行加密,得到该加密值组。该哈希算法是一种可以将任意长度的二进制值映射为较短的固定长度的二进制值的算法,其是一种单向密码体制,只有加密过程,没有解密过程。该哈希算法可以包括MD2、MD4和MD5等。
当然,为控制算力题的有效时间,并确保该算力题在有效时间内的值域空间够大不重复,该验证信息还可以包括时间信息和随机字符串,此时,该第一确定子模块具体可以用于:
分别计算该待计算字符串组中任一字符串与该身份信息、时间信息以及随机字符串之和,得到计算后字符串组;
通过哈希算法对该计算后字符串组中的字符串进行加密,得到加密值组。
本实施例中,该随机字符串的设置主要为了确保该算力题的值域空间够大不重复。该时间信息的设置主要用于限制该算力题的有效时间,比如,若生成题目的时间为11:00,该算力题的难度为1次计算需1s,当时间到达11:01时,若此时客户端还未计算出答案,则服务器可以默认该题目失效。当然,在计算时,该时间信息通常表现为字符串形式。
第二确定子模块,用于根据该加密值组和初始加密值从该待计算字符串组中确定目标字符串。
例如,该第二确定子模块具体可以用于:
将该初始加密值与该加密值组进行匹配,并获取匹配结果;
当该匹配结果指示匹配成功时,获取该加密值组中该匹配成功的加密值;
根据该匹配成功的加密值从该待计算字符串组中获取对应的字符串;
将该字符串确定为目标字符串。
本实施例中,该匹配结果可以包括匹配成功和匹配失败。当该待计算字符串组中存在某一字符串与该身份信息、时间信息和随机字符串进行求和并加密后,得到的加密值与该初始加密值相同,也即该加密值中的每一字符及其所在的位置与该初始加密值相同,则可以判定匹配成功,此时,该第二确定子模块可以将该字符串确定为目标字符串。
(3)发送模块70
发送模块70,用于将该目标字符串发送至该服务器,以使该服务器根据该目标字符串生成相应的验证结果。
本实施例中,该验证结果可以包括验证成功和验证失败。当服务器接收到发送模块70发送的目标字符串时,可以根据该目标字符串对该客户端进行身份验证,并根据该验证结果控制客户端的当前操作,比如,若该验证结果为验证成功时,服务器可以允许客户端的当前操作(比如发布广告、灌水或刷票等),若该验证结果为验证失败时,服务器可以禁止客户端的当前操作。
由上述可知,本实施例提供的验证信息的处理方法,通过接收模块50接收服务器发送的验证信息,该验证信息包括客户端的身份信息、待计算字符串组和初始加密值,确定模块60根据该验证信息从该待计算字符串组中确定目标字符串,之后,通过发送模块70将该目标字符串发送至该服务器,以使该服务器根据该目标字符串生成相应的验证结果,能有效限制恶意软件利用客户端进行刷票、灌水或发布垃圾广告等操作的频率,提高了网络安全性。
第六实施例
相应的,本发明实施例还提供一种验证信息的处理***,包括本发明实施例所提供的任一种验证信息的处理装置,该验证信息的处理装置具体可参见实施例四和实施例五。
其中,该验证信息的处理装置具体可以集成在服务器和客户端中,例如,可以如下:
服务器,用于接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息,根据该验证信息生成请求随机获取一个预设长度的初始字符串,基于该初始字符串和身份信息生成针对该客户端的验证信息,向该客户端发送该验证信息,以对该客户端进行身份验证。
客户端,用于接收服务器发送的验证信息,该验证信息包括客户端的身份信息、待计算字符串组和初始加密值,根据该验证信息从该待计算字符串组中确定目标字符串,将该目标字符串发送至该服务器,以使该服务器根据该目标字符串生成相应的验证结果。
以上各个设备的具体实施可参见前面的实施例,在此不再赘述。
由于该验证信息的处理***可以包括本发明实施例所提供的任一种验证信息的处理装置,因此,可以实现本发明实施例所提供的任一种验证信息的处理装置所能实现的有益效果,详见前面的实施例,在此不再赘述。
第七实施例
本发明实施例还提供一种服务器,该服务器可以集成本发明实施例所提供的任一种验证信息的处理装置,如图6所示,其示出了本发明实施例所涉及的服务器的结构示意图,具体来讲:
该服务器可以包括一个或者一个以上处理核心的处理器81、一个或一个以上计算机可读存储介质的存储器82、射频(Radio Frequency,RF)电路83、电源84、输入单元85、以及显示单元86等部件。本领域技术人员可以理解,图6中示出的服务器结构并不构成对服务器的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器81是该服务器的控制中心,利用各种接口和线路连接整个服务器的各个部分,通过运行或执行存储在存储器82内的软件程序和/或模块,以及调用存储在存储器82内的数据,执行服务器的各种功能和处理数据,从而对服务器进行整体监控。可选的,处理器81可包括一个或多个处理核心;优选的,处理器81可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器81中。
存储器82可用于存储软件程序以及模块,处理器81通过运行存储在存储器82的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器82可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据服务器的使用所创建的数据等。此外,存储器82可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器82还可以包括存储器控制器,以提供处理器81对存储器82的访问。
RF电路83可用于收发信息过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器81处理;另外,将涉及上行的数据发送给基站。通常,RF电路83包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路83还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(GSM,Global System of Mobilecommunication)、通用分组无线服务(GPRS,General Packet Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband CodeDivision Multiple Access)、长期演进(LTE,Long Term Evolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
服务器还包括给各个部件供电的电源84(比如电池),优选的,电源84可以通过电源管理***与处理器81逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源84还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该服务器还可包括输入单元85,该输入单元85可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元85可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器81,并能接收处理器81发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元85还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
该服务器还可包括显示单元86,该显示单元86可用于显示由用户输入的信息或提供给用户的信息以及服务器的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元86可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-EmittingDiode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器81以确定触摸事件的类型,随后处理器81根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图6中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
尽管未示出,服务器还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,服务器中的处理器81会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器82中,并由处理器81来运行存储在存储器82中的应用程序,从而实现各种功能,如下:
接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息;
根据该验证信息生成请求随机获取一个预设长度的初始字符串;
基于该初始字符串和身份信息生成针对该客户端的验证信息;
向该客户端发送该验证信息,以对该客户端进行身份验证。
以上各操作的实现方法具体可参见上述实施例,此处不再赘述。
由上述可知,本实施例提供的服务器,可以通过接收客户端发送的验证信息生成请求,该验证信息生成请求携带该客户端的身份信息,并根据该验证信息生成请求随机获取一个预设长度的初始字符串,之后,基于该初始字符串和身份信息生成针对该客户端的验证信息,并向该客户端发送该验证信息,以对该客户端进行身份验证,能有效限制在线打码平台批量作恶的频次,降低大量垃圾广告的发布几率,提高网络的安全性。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,RandomAccess Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种验证信息的处理方法、装置和***进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (17)
1.一种验证信息的处理方法,其特征在于,应用于服务器,包括:
接收客户端发送的验证信息生成请求,所述验证信息生成请求携带所述客户端的身份信息;
根据所述验证信息生成请求随机获取一个预设长度的初始字符串;
基于所述初始字符串和所述身份信息计算初始加密值;
根据所述初始字符串确定待计算字符串组,所述待计算字符串组包括所述初始字符串、以及所述初始字符串中的字符排列变形后的所有字符串;
根据所述身份信息、初始加密值和待计算字符串组生成针对所述客户端的验证信息,所述验证信息表现为算力题形式,所述算力题形式是指根据若干个已知信息和指定算法从多个答案中确定唯一答案;
向所述客户端发送所述验证信息,以对所述客户端进行身份验证。
2.根据权利要求1所述的验证信息的处理方法,其特征在于,
所述基于所述初始字符串和身份信息计算初始加密值,包括:获取一个随机字符串和当前所处的时间信息;将所述时间信息、身份信息、随机字符串和初始字符串进行相加,得到待加密字符串;通过哈希算法对所述待加密字符串进行加密,得到初始加密值;
所述根据所述身份信息、初始加密值和待计算字符串组生成针对所述客户端的验证信息,包括:根据所述身份信息、时间信息、初始加密值、随机字符串和待计算字符串组生成针对所述客户端的验证信息。
3.根据权利要求1所述的验证信息的处理方法,其特征在于,在向所述客户端发送所述验证信息之后,所述验证信息的处理方法还包括:
接收所述客户端发送的验证请求,所述验证请求携带目标字符串;
基于所述目标字符串生成对应的验证结果;
向所述客户端发送所述验证结果。
4.根据权利要求3所述的验证信息的处理方法,其特征在于,所述基于所述目标字符串生成对应的验证结果,包括:
判断所述目标字符串和初始字符串是否相同;
若所述目标字符串和初始字符串相同,则生成指示验证成功的验证结果;
若所述目标字符串和初始字符串不同,则生成指示验证失败的验证结果。
5.一种验证信息的处理方法,其特征在于,应用于客户端,包括:
接收服务器发送的验证信息,所述验证信息表现为算力题形式,所述算力题形式是指根据若干个已知信息和指定算法从多个答案中确定唯一答案,所述验证信息包括所述客户端的身份信息、待计算字符串组和初始加密值,所述初始加密值是基于初始字符串和所述身份信息生成的,所述待计算字符串组是根据所述初始字符串确定的,所述待计算字符串组包括所述初始字符串、以及所述初始字符串中的字符排列变形后的所有字符串,所述初始字符串是通过随机生成的;
根据所述验证信息从所述待计算字符串组中确定目标字符串;
将所述目标字符串发送至所述服务器,以使所述服务器根据所述目标字符串生成相应的验证结果。
6.根据权利要求5所述的验证信息的处理方法,其特征在于,所述根据所述验证信息从所述待计算字符串组中确定目标字符串,包括:
根据所述身份信息和待计算字符串组确定加密值组;
根据所述加密值组和初始加密值从所述待计算字符串组中确定目标字符串。
7.根据权利要求6所述的验证信息的处理方法,其特征在于,所述验证信息还包括时间信息和随机字符串,所述根据所述身份信息和待计算字符串组确定加密值组,包括:
分别计算所述待计算字符串组中任一字符串与所述身份信息、时间信息以及随机字符串之和,得到计算后字符串组;
通过哈希算法对所述计算后字符串组中的字符串进行加密,得到加密值组。
8.根据权利要求6所述的验证信息的处理方法,其特征在于,所述根据所述加密值组和初始加密值从所述待计算字符串组中确定目标字符串,包括:
将所述初始加密值与加密值组进行匹配,并获取匹配结果;
当所述匹配结果指示匹配成功时,获取所述加密值组中所述匹配成功的加密值;
根据所述匹配成功的加密值从所述待计算字符串组中获取对应的字符串;
将获取的所述对应的字符串确定为目标字符串。
9.一种验证信息的处理装置,其特征在于,应用于服务器,包括:
接收模块,用于接收客户端发送的验证信息生成请求,所述验证信息生成请求携带所述客户端的身份信息;
获取模块,用于根据所述验证信息生成请求随机获取一个预设长度的初始字符串;
生成模块,包括计算子模块,用于基于所述初始字符串和身份信息计算初始加密值;确定子模块,用于根据所述初始字符串确定待计算字符串组,所述待计算字符串组包括所述初始字符串、以及所述初始字符串中的字符排列变形后的所有字符串;第一生成子模块,用于根据所述身份信息、初始加密值和待计算字符串组生成针对所述客户端的验证信息,所述验证信息表现为算力题形式,所述算力题形式是指根据若干个已知信息和指定算法从多个答案中确定唯一答案;
发送模块,用于向所述客户端发送所述验证信息,以对所述客户端进行身份验证。
10.根据权利要求9所述的验证信息的处理装置,其特征在于,
所述计算子模块具体用于:获取一个随机字符串和当前所处的时间信息;将所述时间信息、身份信息、随机字符串和初始字符串进行相加,得到待加密字符串;通过哈希算法对所述待加密字符串进行加密,得到初始加密值;
所述第一生成子模块具体用于:根据所述身份信息、时间信息、初始加密值、随机字符串和待计算字符串组生成针对所述客户端的验证信息。
11.根据权利要求9所述的验证信息的处理装置,其特征在于,所述验证信息的处理装置还包括验证模块,所述验证模块具体包括:
接收子模块,用于在所述发送模块向所述客户端发送所述验证信息之后,接收所述客户端发送的验证请求,所述验证请求携带目标字符串;
第二生成子模块,用于基于所述目标字符串生成对应的验证结果;
发送子模块,用于向所述客户端发送所述验证结果。
12.根据权利要求11所述的验证信息的处理装置,其特征在于,所述第二生成子模块具体用于:
判断所述目标字符串和初始字符串是否相同;
若所述目标字符串和初始字符串相同,则生成指示验证成功的验证结果;
若所述目标字符串和初始字符串不同,则生成指示验证失败的验证结果。
13.一种验证信息的处理装置,其特征在于,应用于客户端,包括:
接收模块,用于接收服务器发送的验证信息,所述验证信息表现为算力题形式,所述算力题形式是指根据若干个已知信息和指定算法从多个答案中确定唯一答案,所述验证信息包括所述客户端的身份信息、待计算字符串组和初始加密值,所述初始加密值是基于初始字符串和所述身份信息生成的,所述待计算字符串组是根据所述初始字符串确定的,所述待计算字符串组包括所述初始字符串、以及所述初始字符串中的字符排列变形后的所有字符串,所述初始字符串是通过随机生成的;
确定模块,用于根据所述验证信息从所述待计算字符串组中确定目标字符串;
发送模块,用于将所述目标字符串发送至所述服务器,以使所述服务器根据所述目标字符串生成相应的验证结果。
14.根据权利要求13所述的验证信息的处理装置,其特征在于,所述确定模块具体包括:
第一确定子模块,用于根据所述身份信息和待计算字符串组确定加密值组;
第二确定子模块,用于根据所述加密值组和初始加密值从所述待计算字符串组中确定目标字符串。
15.根据权利要求14所述的验证信息的处理装置,其特征在于,所述验证信息还包括时间信息和随机字符串,所述第一确定子模块具体用于:
分别计算所述待计算字符串组中任一字符串与所述身份信息、时间信息以及随机字符串之和,得到计算后字符串组;
通过哈希算法对所述计算后字符串组中的字符串进行加密,得到加密值组。
16.根据权利要求14所述的验证信息的处理装置,其特征在于,所述第二确定子模块具体用于:
将所述初始加密值与加密值组进行匹配,并获取匹配结果;
当所述匹配结果指示匹配成功时,获取所述加密值组中所述匹配成功的加密值;
根据所述匹配成功的加密值从所述待计算字符串组中获取对应的字符串;
将获取的所述对应的字符串确定为目标字符串。
17.一种计算机可读存储介质,其存储有计算机程序,其特征在于,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1-4任一项所述的验证信息的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610616618.XA CN107666470B (zh) | 2016-07-28 | 2016-07-28 | 一种验证信息的处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610616618.XA CN107666470B (zh) | 2016-07-28 | 2016-07-28 | 一种验证信息的处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107666470A CN107666470A (zh) | 2018-02-06 |
CN107666470B true CN107666470B (zh) | 2020-05-19 |
Family
ID=61115809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610616618.XA Active CN107666470B (zh) | 2016-07-28 | 2016-07-28 | 一种验证信息的处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107666470B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108650243B (zh) * | 2018-04-24 | 2021-04-23 | 平安科技(深圳)有限公司 | 连接建立方法、***、设备及计算机可读存储介质 |
CN108650149B (zh) * | 2018-04-24 | 2021-10-01 | 平安科技(深圳)有限公司 | 服务器的测试方法、装置、设备及计算机可读存储介质 |
CN108664395B (zh) * | 2018-04-26 | 2022-02-22 | 武汉斗鱼网络科技有限公司 | 应用程序测试方法、装置、设备及存储介质 |
CN108628743B (zh) * | 2018-04-26 | 2022-02-08 | 武汉斗鱼网络科技有限公司 | 应用程序测试方法、装置、设备及存储介质 |
CN109795227B (zh) * | 2019-01-26 | 2020-07-07 | 深圳中航打印技术有限公司 | 一种应用于针式打印机的高安全度打印方式 |
CN116910720A (zh) * | 2023-07-14 | 2023-10-20 | 北京五一嘉峪科技有限公司 | 一种验证方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103327034A (zh) * | 2013-07-18 | 2013-09-25 | 百度在线网络技术(北京)有限公司 | 安全登录方法、***和装置 |
CN104506534A (zh) * | 2014-12-25 | 2015-04-08 | 青岛微智慧信息有限公司 | 安全通信密钥协商交互方案 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102164033B (zh) * | 2010-02-24 | 2014-05-28 | 腾讯科技(深圳)有限公司 | 防止服务被攻击的方法、设备及*** |
CN102568061B (zh) * | 2010-12-30 | 2014-08-06 | ***通信集团公司 | 一种实现门禁控制的方法、***及装置 |
CN103914748A (zh) * | 2012-12-31 | 2014-07-09 | 北京新媒传信科技有限公司 | 分配测试资源的方法和装置 |
CN103927464A (zh) * | 2013-01-11 | 2014-07-16 | 深圳市腾讯计算机***有限公司 | 共同验证方法、二维码生成方法、设备和*** |
CN105491010A (zh) * | 2015-11-19 | 2016-04-13 | 上海携程商务有限公司 | 验证码交互验证方法及*** |
-
2016
- 2016-07-28 CN CN201610616618.XA patent/CN107666470B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103327034A (zh) * | 2013-07-18 | 2013-09-25 | 百度在线网络技术(北京)有限公司 | 安全登录方法、***和装置 |
CN104506534A (zh) * | 2014-12-25 | 2015-04-08 | 青岛微智慧信息有限公司 | 安全通信密钥协商交互方案 |
Also Published As
Publication number | Publication date |
---|---|
CN107666470A (zh) | 2018-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107666470B (zh) | 一种验证信息的处理方法及装置 | |
US20190236300A1 (en) | Service processing method and apparatus, data sharing system, and storage medium | |
US20200065795A1 (en) | Resource transfer method and apparatus and storage medium | |
CN110399713B (zh) | 一种信息认证的方法及相关装置 | |
US20170352090A1 (en) | Method, apparatus, and system for processing order information | |
CN110417543B (zh) | 一种数据加密方法、装置和存储介质 | |
CN103095457A (zh) | 一种应用程序的登录、验证方法 | |
CN111193695A (zh) | 一种第三方账号登录的加密方法、装置及存储介质 | |
CN107154935B (zh) | 业务请求方法及装置 | |
CN104579668A (zh) | 一种用户身份的验证方法和密码保护装置及验证*** | |
CN109714298B (zh) | 验证方法、装置及存储介质 | |
CN112311769B (zh) | 安全认证的方法、***、电子设备及介质 | |
CN116980230B (zh) | 一种信息安全保护方法及装置 | |
CN111193588B (zh) | 基于进程的信息处理方法、装置及存储介质 | |
WO2018108062A1 (zh) | 身份验证方法、装置及存储介质 | |
US20190205976A1 (en) | Account number registration method, apparatus, and system | |
CN109726578B (zh) | 一种动态二维码防伪解决办法 | |
CN113037741B (zh) | 一种鉴权方法、鉴权装置、计算机设备及存储介质 | |
CN105306202A (zh) | 身份验证方法、装置及服务器 | |
CN113569263A (zh) | 跨私域数据的安全处理方法、装置及电子设备 | |
CN110990821B (zh) | 一种身份类型验证方法、装置及存储介质 | |
CN116318911A (zh) | 一种域名访问方法、装置、电子设备及存储介质 | |
CN107743114B (zh) | 一种网络访问方法、装置和*** | |
CN108737341B (zh) | 业务处理方法、终端及服务器 | |
CN107347055B (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 |