CN107086976B - 数据校验的方法,装置和系统 - Google Patents

数据校验的方法,装置和系统 Download PDF

Info

Publication number
CN107086976B
CN107086976B CN201610084748.3A CN201610084748A CN107086976B CN 107086976 B CN107086976 B CN 107086976B CN 201610084748 A CN201610084748 A CN 201610084748A CN 107086976 B CN107086976 B CN 107086976B
Authority
CN
China
Prior art keywords
server
verification
authentication server
random
check code
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
Application number
CN201610084748.3A
Other languages
English (en)
Other versions
CN107086976A (zh
Inventor
王淑其
杨春雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Guangzhou UCWeb Computer Technology Co Ltd
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 Guangzhou UCWeb Computer Technology Co Ltd filed Critical Guangzhou UCWeb Computer Technology Co Ltd
Priority to CN201610084748.3A priority Critical patent/CN107086976B/zh
Publication of CN107086976A publication Critical patent/CN107086976A/zh
Application granted granted Critical
Publication of CN107086976B publication Critical patent/CN107086976B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种数据校验的方法,装置和系统。其中,该方法包括:用户终端接收随机校验码;在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器;在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果。本发明解决了现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题。

Description

数据校验的方法,装置和系统
技术领域
本发明涉及通信领域,具体而言,涉及一种数据校验的方法,装置和系统。
背景技术
异地多活是指异地多个服务器同时分担系统流量,保证整个系统的平稳运行。认证系统需要通过临时性的验证码对用户进行身份识别,而在异地多活的认证项目中,由于数据同步延时问题的无法避免,以及实现高可靠数据同步的高成本问题,导致用户体验的不良好甚至会导致业务流程的中断。
针对现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据校验的方法,装置和系统,以至少解决现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题。
根据本发明实施例的一个方面,提供了一种数据校验的方法,包括:用户终端接收随机校验码;在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器;在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果;其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
根据本发明实施例的另一个方面,还提供了一种数据校验的方法,包括:第一验证服务器接收当前访问的用户终端发送的随机校验码和用户终端的终端标识信息;第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器;在第一验证服务器为生成随机校验码的验证服务器的情况下,验证服务器对随机校验码进行校验,产生验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,验证服务器接收第二验证服务器验证随机校验码而产生的验证结果,其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端;第一验证服务器将验证结果返回至用户终端。
根据本发明实施例的另一方面,还提供了一种数据校验的装置,包括:第一接收模块,用于用户终端接收随机校验码;第一发送模块,用于在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器;第二接收模块,用于在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;第三接收模块,用于在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果;其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
根据本发明实施例的另一方面,还提供了一种数据校验的装置,包括:第一接收模块,用于第一验证服务器接收当前访问的用户终端发送的随机校验码和用户终端的终端标识信息;确定模块,用于第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器;产生模块,用于在第一验证服务器为生成随机校验码的验证服务器的情况下,第一验证服务器对随机校验码进行校验,产生验证结果;第二接收模块,用于在第一验证服务器不是生成随机校验码的验证服务器的情况下,第一验证服务器接收第二验证服务器验证随机校验码而产生的验证结果,其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端;返回模块,用于第一验证服务器将验证结果返回至用户终端。
根据本发明实施例的另一方面,还提供了一种数据校验的系统,包括:第一验证服务器和第二验证服务器;用户终端,分别与第一验证服务器和第二验证服务器通信,用于接收随机校验码;在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器;在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果;其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
在本发明实施例中,如果需要对数据进行校验,可以在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器,在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果,并且第一验证服务器和第二验证服务器为部署在异地的服务器终端,从而实现在用户终端出现地址位置漂移时对数据进行校验的目的。
容易注意到,由于第一验证服务器和第二验证服务器为部署在异地的服务器终端,接受随机校验码的第一验证服务器可以确定是否为生成随机校验码的验证服务器,在第一验证服务器不是生成随机校验码的验证服务器的情况下,由生成随机校验码的第二验证服务器验证该随机校验码,因此,通过本申请上述实施例,既可以快速定位到数据生成地,又可以保证验证码数据在哪里生成就在哪里校验,多中心之间不做数据同步,从而可以在用户端请求漂移的情况下也能够准确、无延时的进行校验,保证在不影响用户体验的情况下做到实时验证。
由此,本发明提供的上述实施例的方案解决了现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本申请实施例的一种数据校验的方法的计算机终端的硬件结构框图;
图2是根据本申请实施例的一种数据校验的方法的流程图;
图3是根据本申请实施例的一种可选的数据校验的方法的交互流程图;
图4是根据本申请实施例的另一种数据校验的方法的流程图;
图5是根据本申请实施例的一种数据校验的装置的示意图;
图6是根据本申请实施例的一种可选的数据校验的装置的示意图;
图7是根据本申请实施例的另一种数据校验的装置的示意图;
图8是根据本申请实施例的一种数据校验的系统的示意图;以及
图9是根据本申请实施例的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
哈希算法:将任意长度的二进制值映射为较短的固定长度的二进制值,这个小的二进制值成为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的第一字母,随后的哈希都将产生不同的值。要找到散列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。
实施例1
根据本申请实施例,提供了一种数据校验的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是根据本申请实施例的一种数据校验的方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的数据校验的方法和装置对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据校验的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图2所示的数据校验的方法。图2是根据本申请实施例的一种数据校验的方法的流程图,如图2所示,该方法包括如下步骤:
步骤S22,用户终端接收随机校验码。
具体地,上述用户终端可以是智能手机(如Android手机、IOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。
步骤S24,在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器。
步骤S26,在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果。
步骤S28,在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果。
其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
此处需要说明的是,本实施例中的第二验证服务器可以为生成随机校验码的验证服务器,随机校验码在第二验证服务器进行生成,并且第一验证服务器和第二验证服务器之间的临时数据不进行同步,因此当第一验证服务器不是生成随机校验码的验证服务器,则需要通过生成随机校验码的第二验证服务器对用户终端发送的随机校验码进行验证。
在一种可选的方案中,用户终端发起校验请求,将校验请求发送给获取随机验证码的服务器,并接受服务器返回的临时性的随机校验码。用户终端在接收到随机校验码之后,将随机校验码发送给验证随机码的服务器,验证随机码的服务器根据接收到的随机校验码和用户终端的终端标识信息,确定生成该随机校验码的获取随机验证码的服务器,如果验证随机码的服务器和获取随机验证码的服务器为同一个服务器,则该验证随机码的服务器对接收到的随机校验码进行验证,生成验证结果,并发送给用户终端;如果验证随机码的服务器和获取随机验证码的服务器为不同的服务器,则该验证随机码的服务器将接收到的随机校验码发送给获取随机验证码的服务器,由获取随机验证码的服务器对该随机校验码进行验证,生成验证结果返回给验证随机码的服务器,由验证随机码的服务器将该验证结果发送给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。用户在乘坐高铁从北京到天津的过程中,当用户在北京需要进行数据校验时,可以通过手机发送校验请求到北京服务器,并接受北京服务器生成的随机校验码,在用户接受到随机校验码之后,如果此时用户乘坐高铁达到天津,则将随机校验码发送给天津服务器,天津服务器在接收到随机校验码之后确定不是天津服务器生成的随机校验码,因此可以将随机校验码发送给生成地北京服务器,由北京服务器完成数据校验过程。
本申请上述实施例一公开的方案中,如果需要对数据进行校验,可以在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器,在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果,并且第一验证服务器和第二验证服务器为部署在异地的服务器终端,从而实现在用户终端出现地址位置漂移时对数据进行校验的目的。
容易注意到,由于第一验证服务器和第二验证服务器为部署在异地的服务器终端,接受随机校验码的第一验证服务器可以确定是否为生成随机校验码的验证服务器,在第一验证服务器不是生成随机校验码的验证服务器的情况下,由生成随机校验码的第二验证服务器验证该随机校验码,因此,通过本申请上述实施例,既可以快速定位到数据生成地,又可以保证验证码数据在哪里生成就在哪里校验,多中心之间不做数据同步,从而可以在用户端请求漂移的情况下也能够准确、无延时的进行校验,保证在不影响用户体验的情况下做到实时验证。
由此,本申请提供的上述实施例一的方案解决了现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题。
根据本申请上述实施例,第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器。
具体地,上述用户终端的终端标识信息可以是用户的手机号或者个人邮箱的地址,终端信息可以是验证服务器所在机房的机房掩码,终端信息集合可以是部署在异地的多个验证服务器所在机房的机房掩码集合,机房掩码的取值可以为256,257,258等。
根据本申请上述实施例,在步骤S22,用户终端接收随机校验码之前,上述方法还可以包括如下步骤:
步骤S20,用户终端将用户终端的终端标识信息发送给当前允许访问的验证服务器,其中,当前允许访问的验证服务器为第一验证服务器或第二验证服务器。
步骤S21,用户终端接收当前允许访问的验证服务器返回的随机校验码,其中,当前允许访问的验证服务器根据用户终端的终端标识信息和当前允许访问的验证服务器的终端信息,生成随机校验码。
在一种可选的方案中,用户终端发起校验请求,将校验请求发送给获取随机验证码的服务器,即上述的第一验证服务器或第二验证服务器,服务器根据用户终端的手机号和服务器所在机房的机房掩码生成随机校验码,并返回给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。当用户需要进行数据校验时,可以通过手机发送校验请求到北京服务器,北京服务器根据手机的手机号和北京服务器所在机房的机房掩码,生成随机校验码返回给用户的手机。
根据本申请上述实施例,步骤S21,当前允许访问的验证服务器根据用户终端的终端标识信息和当前允许访问的验证服务器的终端信息,生成随机校验码,可以包括如下步骤:
步骤S210,当前允许访问的验证服务器获取用户终端的终端标识信息和当前允许访问的验证服务器的终端信息。
在一种可选的方案中,当前允许访问的验证服务器可以接收用户终端发送的手机号或邮箱地址,并从当前允许访问的验证服务中读取该验证服务器所在机房的机房掩码。
步骤S212,根据用户终端的终端标识信息,得到偏移量。
在一种可选的方案中,可以通过哈希算法,将用户终端的手机号或者邮箱地址进行哈希运算,得到偏移量offset,也可以将手机尾号或邮箱地址首字母对应的ASCII码作为偏移量offset。
此处需要说明的是,通过哈希算法可以随机更分散的得到偏移量。
步骤S214,将当前允许访问的验证服务器的终端信息按照偏移量进行左移运算,得到生成因子。
步骤S216,根据偏移量和随机生成的随机码,生成随机码因子。
步骤S218,将生成因子和随机码因子进行取或运算,得到随机校验码。
在一种可选的方案中,当前允许访问的验证服务器可以根据用户终端的手机号或者邮箱地址,通过哈希算法得到偏移量offset,并根据该当前允许访问的验证服务器所在机房的机房掩码idcCode和随机生成的随机码tempRandom,通过预设算法得到随机校验码code。
例如,以用户终端为手机,当前允许访问的验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。北京服务器在接收到用户手机发送的获取随机验证码的请求之后,根据用户的手机号得到偏移量offset=2,将北京服务器所在机房的机房掩码idccode=258按偏移量进行向左位移得到生成因子factor=0000000000001000,根据随机生成的随机码得到随机码因子random=0000000000000001,将生成因子factor和随机码因子random取或,得到随机校验码code,即code=0000000000001000|0000000000000001=0000000000001001。
根据本申请上述实施例,步骤S214,将当前允许访问的验证服务器的终端信息按照偏移量进行左移运算,得到生成因子,可以包括如下步骤:
步骤S2142,当前允许访问的验证服务器将当前允许访问的验证服务器的终端信息转换为二进制数据,并提取预定位数得到当前允许访问的验证服务器的标识信息。
具体地,上述预定位数可以是二进制数据的后n位,例如,n可以为4。
在一种可选的方案中,可以将取二进制机房掩码idcCode的后4位得到机房标识subIdcCode,即subIdcCode=idcCode&2^4-1。
步骤S2144,将当前允许访问的验证服务器的标识信息按照偏移量进行左移运算,得到生成因子。
在一种可选的方案中,可以将机房标识subIdcCode按偏移量向左位移,得到生成因子factor,即factor=subIdcCode<<offset。
例如,以用户终端为手机,当前允许访问的验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。北京服务器将机房掩码随机码idccode=258转换为二进制数据idcCode=000000100000010,取二进制数据的后4位得到机房标识subIdcCode=0000000100000010&0000000000001111=0000000000000010,将机房标识subIdcCode按偏移量offset=2进行向左位移,得到生成因子factor=0000000000000010<<2=0000000000001000。
根据本申请上述实施例,步骤S216,根据偏移量和随机生成的随机码,生成随机码因子,可以包括如下步骤:
步骤S2162,当前允许访问的验证服务器将二进制数按照偏移量进行左移运算,得到左移后的二进制数。
具体地,上述二进制数可以为步骤S2142中二进制数据的后n位,即2^n-1,例如,可以为2^4-1,即0000000000001111。
步骤S2164,对左移后的二进制数进行取反运算,得到临时变量。
步骤S2166,将临时变量和随机生成的随机码进行取与运算,得到随机码因子。
具体地,上述随机生成的随机码可以通过程序随机生成,随机码的位数可以根据需要进行设定,例如可以随机生成4位随机码。
在一种可选的方案中,当前允许访问的验证服务器可以将二进制数2^n-1按偏移量offset进行向左位移并取反,得到临时变量temp,即temp=~(2^n-1<<offset),将4位随机码temprandom和临时变量temp取与,得到随机码因子random,即random=temprandom&temp。
例如,以用户终端为手机,当前允许访问的验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。北京服务器随机生成的随机码tempRandom=0000000000001001,将二进制数2^4-1按照偏移量offset=2进行向左位移并取反,得到临时变量temp=~(0000000000001111<<2)=~0000000000111100=1111111111000011,将随机码tempRandom和临时变量temp取与,得到随机码因子random=1111111111000011&0000000000001001=0000000000000001。
根据本申请上述实施例,第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器,可以包括如下步骤:
步骤S221,从第一验证服务器中读取预先保存的终端信息集合,并读取第一验证服务器的终端信息。
在一种可选的方案中,第一验证服务器可以读取预先保存的多个验证服务器所在机房的机房掩码集合,并读取第一验证服务器所在机房的机房掩码idcCode。
步骤S222,根据用户终端的终端标识信息,得到偏移量。
在一种可选的方案中,上述终端标识信息可以与步骤S212中的终端标识信息相同,即可以通过哈希算法,将用户终端的手机号或者邮箱地址进行哈希运算,得到偏移量offset,也可以将手机尾号或邮箱地址首字母对应的ASCII码作为偏移量offset。
步骤S223,将第一验证服务器的终端信息按照偏移量进行左移运算,得到校验因子。
在一种可选的方案中,可以将第一验证服务器的机房掩码idcCode按照偏移量offset向左位移,得到校验因子factor。
步骤S224,根据偏移量和随机校验码,生成标识信息,其中,标识信息为生成随机校验码的验证服务器的标识信息。
在一种可选的方案中,可以通过预定的算法,根据偏移量offset和随机校验码code生成机房标识contrastCode。
步骤S225,如果标识信息与校验因子相同,则确定第一验证服务器为生成随机校验码的验证服务器。
步骤S226,如果标识信息与校验因子不同,则确定第一验证服务器不为生成随机校验码的验证服务器。
在一种可选的方案中,如果校验因子factor和机房标识contrastCode相同,则确定第一验证服务器为生成随机校验码code的验证服务器;如果不相同,则确定第一验证服务器不是生成随机校验码code的验证服务器。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。天津服务器在接收到随机校验码code之后,可以读取本地存储的机房掩码集合,该机房掩码集合中包含三个机房掩码,上海服务器所在机房的机房掩码idccode=256,天津服务器所在机房的机房掩码idccode=257和北京服务器所在机房的机房掩码idccode=258,读取天津服务器的机房掩码idccode=257,并按照偏移量offset=2进行向左位移,得到校验因子factor=0000000000000100,根据偏移量offset=2和随机校验码code=0000000000001001,生成机房标识contrastCode=0000000000001000,由于factor=0000000000000100和contrastCode=0000000000001000不相同,因此可以确定第一验证服务器不是生成随机校验码code的验证服务器。
根据本申请上述实施例,步骤S223,将第一验证服务器的终端信息按照偏移量进行左移运算,得到校验因子,可以包括如下步骤:
步骤S2232,第一验证服务器将第一验证服务器的终端信息转换为二进制数据,并提取预定位数得到第一验证服务器的标识信息。
在一种可选的方案中,第一验证服务器可以取二进制机房掩码的idcCode的后n位,例如后4位得到机房标识subIdcCode,即subIdcCode=idcCode&2^4。
步骤S2234,将第一验证服务器的标识信息按照偏移量进行左移运算,得到校验因子。
在一种可选的方案中,在得到机房标识之后,可以将第一验证服务器的机房标识按照偏移量offset向左移位,得到校验因子factor,即factor=subIdcCode<<offset。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。天津服务器本地存储的机房掩码集合可以包括三个机房掩码,即上海服务器所在机房的机房掩码idccode=256=0000000100000000,天津服务器所在机房的机房掩码idccode=257=0000000100000001和北京服务器所在机房的机房掩码idccode=258=0000000100000010,可以提取本地存储的机房掩码集合中每个机房掩码的二进制的后4位得到机房标识集合,即上海服务器的机房标识subIdcCode=0000000000000000,天津服务器的机房标识subIdcCode=0000000000000001和北京服务器的机房标识subIdcCode=0000000000000010,根据手机的手机尾号得到偏移量offset=2,再将机房标识集合中每个机房标识按偏移量offset=2进行向左位移,得到上海服务器的因子factor=0000000000000000,天津服务器的因子factor=0000000000000100和北京服务器的因子factor=0000000000001000,将每个因子factor与机房标识costrastCode进行比较,确定生成该随机校验码的验证服务器为北京服务器。
根据本申请上述实施例,步骤S224,根据偏移量和随机校验码,生成标识信息,可以包括如下步骤:
步骤S2242,第一验证服务器将二进制数按照偏移量进行左移运算,得到临时变量。
具体地,上述二进制数可以与步骤S2162中的二进制数相同。
在一种可选的方案中,第一验证服务器可以将二进制数2^n-1按偏移量向左移位得到临时变量temp,即temp=2^n-1<<offset。
步骤S2244,将随机校验码和临时变量进行取与运算,得到标识信息。
在一种可选的方案中,第一验证服务器可以将随机校验码code和临时变量temp取与,即code&temp,得到生成随机校验码code的验证服务器所在机房的机房标识constrastCode。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。天津服务器在接收到随机校验码code=0000000000001001之后,将二进制数2^4-1按偏移量offset=2向左位移得到临时变量temp=0000000000001111<<2=0000000000011110,将随机校验码和临时变量进行按位与运算得到生成随机校验码code的验证服务器所在机房的机房标识costrastCode=0000000000001001&0000000000011110=0000000000001000。
根据本申请上述实施例,在步骤S226,确定第一验证服务器不为生成随机校验码的验证服务器之后,上述方法还可以包括如下步骤:
步骤S2262,第一验证服务器将用户终端的终端标识信息和随机校验码发送至第二验证服务器,并接收第二验证服务器验证随机校验码而产生的验证结果。
步骤S2264,将验证结果返回至用户终端。
其中,根据第二验证服务器的终端信息得到的校验因子与标识信息相同。
在一种可选的方案中,当第一验证服务器确定生成随机校验码的验证服务器不是第一验证服务器,而是第二验证服务器,则将用户终端的手机号和随机校验码发送至第二验证服务器,并接收第二验证服务器产生的验证结果,返回给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。天津服务器经过算法确定生成随机校验码code的验证服务器为北京服务器,则将随机校验码code和用户的手机号发送给北京服务器,北京服务器根据用户的手机号和所在机房的机房掩码对随机校验码进行校验,得到验证结果并发送给天津服务器,天津服务器在接收到验证结果之后返回到用户的手机。
下面结合图3详细介绍本申请的一种优选实施例。
如图3所示,以第一验证服务器不是生成随机校验码的验证服务器为应用场景,提供了一种可选的数据校验的方法,该方法可以包括如下步骤S31至步骤S310:
步骤S31,用户终端85将终端标识信息发送给第二验证服务器83。
可选地,用户终端触发生成随机校验码之后,将终端标识信息发送给当前允许访问的第二验证服务器。
步骤S32,第二验证服务器83根据用户终端的终端标识信息和第二验证服务器的终端信息,生成随机校验码。
可选地,第二验证服务器首先获取第二验证服务器的终端信息,提取二进制终端信息的后n位得到第二验证服务器的标识信息,然后根据用户终端的终端标识信息得到偏移量,将第二验证服务器的标识信息按偏移量向左位移得到生成因子,然后将二级制数按偏移量向左位移取反得到临时变量,并将4位随机码与临时变量取与得到随机码因子,最后将生成因子与随机码因子取或生成随机校验码。
步骤S33,第二验证服务器83将随机校验码发送给用户终端85。
步骤S34,用户终端85将接收到的随机校验码和终端标识信息发送给第一验证服务器81。
可选地,用户终端85触发校验随机校验码之后,将随机校验码和终端标识信息发送给当前允许访问的第一验证服务器81。
步骤S35,第一验证服务器81根据终端标识信息,随机校验码和本地存储的终端信息集合确定第一验证服务器是否为生成随机校验码的验证服务器。
可选地,第一验证服务器首先读取本地存储的终端信息集合,并读取第一验证服务器的终端信息,取二进制终端信息的后n位得到第一验证服务器的标识信息,然后根据用户终端的终端标识信息得到偏移量,将第一验证服务器的标识信息按偏移量向左位移得到校验因子,然后将二级制数按偏移量向左位移得到临时变量,并将随机校验码与临时变量取与得到标识信息,如果标识信息和校验因子相同,则确定第一验证服务器是生成随机校验码的验证服务器,进入步骤S36;如果不同,则确定第一验证服务器不是生成随机校验码的验证服务器,进入步骤S37。
步骤S36,如果第一验证服务器是生成随机校验码的验证服务器,则第一验证服务器81校验随机校验码,产生验证结果。
步骤S37,如果第一验证服务器不是生成随机校验码的验证服务器,则第一验证服务器81将随机校验码和终端标识信息发送给第二验证服务器83。
步骤S38,第二验证服务器83校验随机校验码,产生验证结果。
步骤S39,第二验证服务器83将验证结果返回给第一验证服务器81。
步骤S310,第一验证服务器81将验证结果返回给用户终端85。
通过本申请上述实施例,可以通过一定的算法可以将验证码数据做到既不增加长度又不提升碰撞机率,又可以根据随机校验码和终端标识信息确定生成随机校验码的验证服务器,并通过生成随机校验码的验证服务器对该随机校验码进行验证,得到验证结果,从而实现在异地多活下临时数据不进行机房同步的情况下,也可以解决获取随机验证码与获取随机验证码与验证随机验证码的两个请求被分发到两个不同的机房的问题,从而可以在用户端请求漂移的情况下也能够准确、无延时的进行校验。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的数据校验方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
根据本申请实施例,还提供了一种数据校验的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在上述运行环境下,本申请提供了如图4所示的数据校验的方法。图4是根据本申请实施例的另一种数据校验的方法的流程图,如图4所示,该方法包括如下步骤:
步骤S40,第一验证服务器接收当前访问的用户终端发送的随机校验码和用户终端的终端标识信息。
具体地,上述用户终端可以是智能手机(如Android手机、IOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备,用户终端的终端标识信息可以是用户的手机号或者个人邮箱的地址。
步骤S42,第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器。
具体地,上述终端信息可以是验证服务器所在机房的机房掩码,终端信息集合可以是部署在异地的多个验证服务器所在机房的机房掩码集合,机房掩码的取值可以为256,257,258等。
步骤S44,在第一验证服务器为生成随机校验码的验证服务器的情况下,第一验证服务器对随机校验码进行校验,产生验证结果。
步骤S46,在第一验证服务器不是生成随机校验码的验证服务器的情况下,第一验证服务器接收第二验证服务器验证随机校验码而产生的验证结果,其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
步骤S48,第一验证服务器将验证结果返回至用户终端。
在一种可选的方案中,第一验证服务器在接收到用户终端发送的随机校验码和用户终端的终端标识信息,确定生成该随机校验码的获取随机验证码的服务器,如果验证随机码的服务器和获取随机验证码的服务器为同一个服务器,则该验证随机码的服务器对接收到的随机校验码进行验证,生成验证结果,并发送给用户终端;如果验证随机码的服务器和获取随机验证码的服务器为不同的服务器,则该验证随机码的服务器将接收到的随机校验码发送给获取随机验证码的服务器,由获取随机验证码的服务器对该随机校验码进行验证,生成验证结果返回给验证随机码的服务器,由验证随机码的服务器将该验证结果发送给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。用户在乘坐高铁从北京到天津的过程中,当用户在北京需要进行数据校验时,可以通过手机发送校验请求到北京服务器,并接受北京服务器生成的随机校验码,在用户接受到随机校验码之后,如果此时用户乘坐高铁达到天津,则将随机校验码发送给天津服务器,天津服务器在接收到随机校验码之后确定不是天津服务器生成的随机校验码,因此可以将随机校验码发送给生成地北京服务器,由北京服务器完成数据校验过程。
本申请上述实施例二公开的方案中,如果需要对数据进行校验,可以在用户终端接收到用户终端发送的随机校验码和用户终端的终端标识信息之后,根据随机校验码,终端标识信息和本地存储的终端信息集合确定第一验证服务器是否为生成随机校验码的验证服务器,在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果,并且第一验证服务器和第二验证服务器为部署在异地的服务器终端,从而实现在用户终端出现地址位置漂移时对数据进行校验的目的。
容易注意到,由于第一验证服务器和第二验证服务器为部署在异地的服务器终端,接受随机校验码的第一验证服务器可以确定是否为生成随机校验码的验证服务器,在第一验证服务器不是生成随机校验码的验证服务器的情况下,由生成随机校验码的第二验证服务器验证该随机校验码,因此,通过本申请上述实施例,既可以快速定位到数据生成地,又可以保证验证码数据在哪里生成就在哪里校验,多中心之间不做数据同步,从而可以在用户端请求漂移的情况下也能够准确、无延时的进行校验,保证在不影响用户体验的情况下做到实时验证。
由此,本申请提供的上述实施例二的方案解决了现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题。
根据本申请上述实施例,步骤S42,第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器,可以包括如下步骤:
步骤S421,第一验证服务器从终端信息集合中,获取第一验证服务器的终端信息。
在一种可选的方案中,第一验证服务器可以读取预先保存的多个验证服务器所在机房的机房掩码集合,并读取第一验证服务器所在机房的机房掩码idcCode。
步骤S422,根据用户终端的终端标识信息,得到偏移量。
在一种可选的方案中,上述终端标识信息可以与步骤S212中的终端标识信息相同,即可以通过哈希算法,将用户终端的手机号或者邮箱地址进行哈希运算,得到偏移量offset,也可以将手机尾号或邮箱地址首字母对应的ASCII码作为偏移量offset。
步骤S423,将第一验证服务器的终端信息按照偏移量进行左移运算,得到校验因子。
在一种可选的方案中,可以将第一验证服务器的机房掩码idcCode按照偏移量offset向左位移,得到校验因子factor。
步骤S424,根据偏移量和随机校验码,生成标识信息,其中,标识信息为生成随机校验码的验证服务器的终端信息。
在一种可选的方案中,可以通过预定的算法,根据偏移量offset和随机校验码code生成机房标识contrastCode。
步骤S425,如果标识信息与校验因子相同,则确定第一验证服务器为生成随机校验码的验证服务器。
步骤S426,如果标识信息与校验因子不同,则确定第一验证服务器不为生成随机校验码的验证服务器。
在一种可选的方案中,如果校验因子factor和机房标识contrastCode相同,则确定第一验证服务器为生成随机校验码code的验证服务器;如果不相同,则确定第一验证服务器不是生成随机校验码code的验证服务器。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。天津服务器在接收到随机校验码code之后,可以读取本地存储的机房掩码集合,该机房掩码集合中包含三个机房掩码,上海服务器所在机房的机房掩码idccode=256,天津服务器所在机房的机房掩码idccode=257和北京服务器所在机房的机房掩码idccode=258,读取天津服务器的机房掩码idccode=257,并按照偏移量offset=2进行向左位移,得到校验因子factor=0000000000000100,根据偏移量offset=2和随机校验码code=0000000000001001,生成机房标识contrastCode=0000000000001000,由于factor=0000000000000100和contrastCode=0000000000001000不相同,因此可以确定第一验证服务器不是生成随机校验码code的验证服务器。
根据本申请上述实施例,步骤S423,将第一验证服务器的终端信息按照偏移量进行左移运算,得到校验因子,可以包括如下步骤:
步骤S4232,第一验证服务器将第一验证服务器的终端信息转换为二进制数据,并提取预定位数得到第一验证服务器的标识信息。
在一种可选的方案中,第一验证服务器可以取二进制机房掩码的idcCode的后n位,例如后4位得到机房标识subIdcCode,即subIdcCode=idcCode&2^4。
步骤S4234,将第一验证服务器的标识信息按照偏移量进行左移运算,得到校验因子。
在一种可选的方案中,在得到机房标识之后,可以将第一验证服务器的机房标识按照偏移量offset向左移位,得到校验因子factor,即factor=subIdcCode<<offset。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。天津服务器本地存储的机房掩码集合可以包括三个机房掩码,即上海服务器所在机房的机房掩码idccode=256=0000000100000000,天津服务器所在机房的机房掩码idccode=257=0000000100000001和北京服务器所在机房的机房掩码idccode=258=0000000100000010,可以提取本地存储的机房掩码集合中每个机房掩码的二进制的后4位得到机房标识集合,即上海服务器的机房标识subIdcCode=0000000000000000,天津服务器的机房标识subIdcCode=0000000000000001和北京服务器的机房标识subIdcCode=0000000000000010,根据手机的手机尾号得到偏移量offset=2,再将机房标识集合中每个机房标识按偏移量offset=2进行向左位移,得到上海服务器的因子factor=0000000000000000,天津服务器的因子factor=0000000000000100和北京服务器的因子factor=0000000000001000,将每个因子factor与机房标识costrastCode进行比较,确定生成该随机校验码的验证服务器为北京服务器。
根据本申请上述实施例,步骤S424,根据偏移量和随机校验码,生成标识信息,可以包括如下步骤:
步骤S4242,第一验证服务器将二进制数按照偏移量进行左移运算,得到临时变量。
具体地,上述二进制数可以为步骤S4232中二进制数据的后n位,即2^n-1,例如,可以为2^4-1,即0000000000001111。
在一种可选的方案中,第一验证服务器可以将二进制数2^n-1按偏移量向左移位得到临时变量temp,即temp=2^n-1<<offset。
步骤S4244,将随机校验码和临时变量进行取与运算,得到标识信息。
在一种可选的方案中,第一验证服务器可以将随机校验码code和临时变量temp取与,即code&temp,得到生成随机校验码code的验证服务器所在机房的机房标识constrastCode。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。天津服务器在接收到随机校验码code=0000000000001001之后,将二进制数2^4-1按偏移量offset=2向左位移得到临时变量temp=0000000000001111<<2=0000000000011110,将随机校验码和临时变量进行按位与运算得到生成随机校验码code的验证服务器所在机房的机房标识costrastCode=0000000000001001&0000000000011110=0000000000001000。
根据本申请上述实施例,在步骤S46,第一验证服务器接收第二验证服务器验证随机校验码而产生的验证结果之前,上述方法还可以包括如下步骤:
步骤S47,将用户终端的终端标识信息和随机校验码发送至第二验证服务器。
步骤S48,接收第二验证服务器验证随机校验码而产生的验证结果。
在一种可选的方案中,当第一验证服务器确定生成随机校验码的验证服务器不是第一验证服务器,而是第二验证服务器,则将用户终端的手机号和随机校验码发送至第二验证服务器,并接收第二验证服务器产生的验证结果,返回给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。天津服务器经过算法确定生成随机校验码code的验证服务器为北京服务器,则将随机校验码code和用户的手机号发送给北京服务器,北京服务器根据用户的手机号和所在机房的机房掩码对随机校验码进行校验,得到验证结果并发送给天津服务器,天津服务器在接收到验证结果之后返回到用户的手机。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的基于分库分表的任务传输方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例3
根据本申请实施例,还提供了一种用于实施上述数据校验的方法的数据校验的装置,如图5所示,上述装置包括:第一接收模块51,第一发送模块53,第二接收模块55和第三接收模块57。
其中,第一接收模块51用于用户终端接收随机校验码。
具体地,上述用户终端可以是智能手机(如Android手机、IOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。
第一发送模块53用于在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器。
第二接收模块55用于在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果。
第三接收模块57用于在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果。
其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
此处需要说明的是,本实施例中的第二验证服务器可以为生成随机校验码的验证服务器,随机校验码在第二验证服务器进行生成,并且第一验证服务器和第二验证服务器之间的临时数据不进行同步,因此当第一验证服务器不是生成随机校验码的验证服务器,则需要通过生成随机校验码的第二验证服务器对用户终端发送的随机校验码进行验证。
在一种可选的方案中,用户终端发起校验请求,将校验请求发送给获取随机验证码的服务器,并接受服务器返回的临时性的随机校验码。用户终端在接收到随机校验码之后,将随机校验码发送给验证随机码的服务器,验证随机码的服务器根据接收到的随机校验码和用户终端的终端标识信息,确定生成该随机校验码的获取随机验证码的服务器,如果验证随机码的服务器和获取随机验证码的服务器为同一个服务器,则该验证随机码的服务器对接收到的随机校验码进行验证,生成验证结果,并发送给用户终端;如果验证随机码的服务器和获取随机验证码的服务器为不同的服务器,则该验证随机码的服务器将接收到的随机校验码发送给获取随机验证码的服务器,由获取随机验证码的服务器对该随机校验码进行验证,生成验证结果返回给验证随机码的服务器,由验证随机码的服务器将该验证结果发送给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。用户在乘坐高铁从北京到天津的过程中,当用户在北京需要进行数据校验时,可以通过手机发送校验请求到北京服务器,并接受北京服务器生成的随机校验码,在用户接受到随机校验码之后,如果此时用户乘坐高铁达到天津,则将随机校验码发送给天津服务器,天津服务器在接收到随机校验码之后确定不是天津服务器生成的随机校验码,因此可以将随机校验码发送给生成地北京服务器,由北京服务器完成数据校验过程。
本申请上述实施例三公开的方案中,如果需要对数据进行校验,可以在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器,在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果,并且第一验证服务器和第二验证服务器为部署在异地的服务器终端,从而实现在用户终端出现地址位置漂移时对数据进行校验的目的。
容易注意到,由于第一验证服务器和第二验证服务器为部署在异地的服务器终端,接受随机校验码的第一验证服务器可以确定是否为生成随机校验码的验证服务器,在第一验证服务器不是生成随机校验码的验证服务器的情况下,由生成随机校验码的第二验证服务器验证该随机校验码,因此,通过本申请上述实施例,既可以快速定位到数据生成地,又可以保证验证码数据在哪里生成就在哪里校验,多中心之间不做数据同步,从而可以在用户端请求漂移的情况下也能够准确、无延时的进行校验,保证在不影响用户体验的情况下做到实时验证。
由此,本申请提供的上述实施例三的方案解决了现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题。
根据本申请上述实施例,如图6所示,上述装置还可以包括:第二发送模块61和第四接收模块63。
其中,第二发送模块61用于用户终端将终端标识信息发送给当前允许访问的验证服务器,其中,当前允许访问的验证服务器为第一验证服务器或第二验证服务器。
第四接收模块63用于用户终端接收当前允许访问的验证服务器返回的随机校验码,其中,当前允许访问的验证服务器根据用户终端的终端标识信息和当前允许访问的验证服务器的终端信息,生成随机校验码。
在一种可选的方案中,用户终端发起校验请求,将校验请求发送给获取随机验证码的服务器,即上述的第一验证服务器或第二验证服务器,服务器根据用户终端的手机号和服务器所在机房的机房掩码生成随机校验码,并返回给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。当用户需要进行数据校验时,可以通过手机发送校验请求到北京服务器,北京服务器根据手机的手机号和北京服务器所在机房的机房掩码,生成随机校验码返回给用户的手机。
需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
实施例4
根据本申请实施例,还提供了一种用于实施上述数据校验的方法的数据校验的装置,如图7所示,上述装置包括:第一接收模块71,确定模块73,产生模块75,第二接收模块77和返回模块79。
其中,第一接收模块71用于第一验证服务器接收当前访问的用户终端发送的随机校验码和用户终端的终端标识信息。
具体地,上述用户终端可以是智能手机(如Android手机、IOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备,用户终端的终端标识信息可以是用户的手机号或者个人邮箱的地址。
确定模块73用于第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器。
具体地,上述终端信息可以是验证服务器所在机房的机房掩码,终端信息集合可以是部署在异地的多个验证服务器所在机房的机房掩码集合,机房掩码的取值可以为256,257,258等。
产生模块75用于在第一验证服务器为生成随机校验码的验证服务器的情况下,第一验证服务器对随机校验码进行校验,产生验证结果。
第二接收模块77用于在第一验证服务器不是生成随机校验码的验证服务器的情况下,第一验证服务器接收第二验证服务器验证随机校验码而产生的验证结果,其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
返回模块79用于第一验证服务器将验证结果返回至用户终端。
在一种可选的方案中,第一验证服务器在接收到用户终端发送的随机校验码和用户终端的终端标识信息,确定生成该随机校验码的获取随机验证码的服务器,如果验证随机码的服务器和获取随机验证码的服务器为同一个服务器,则该验证随机码的服务器对接收到的随机校验码进行验证,生成验证结果,并发送给用户终端;如果验证随机码的服务器和获取随机验证码的服务器为不同的服务器,则该验证随机码的服务器将接收到的随机校验码发送给获取随机验证码的服务器,由获取随机验证码的服务器对该随机校验码进行验证,生成验证结果返回给验证随机码的服务器,由验证随机码的服务器将该验证结果发送给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。用户在乘坐高铁从北京到天津的过程中,当用户在北京需要进行数据校验时,可以通过手机发送校验请求到北京服务器,并接受北京服务器生成的随机校验码,在用户接受到随机校验码之后,如果此时用户乘坐高铁达到天津,则将随机校验码发送给天津服务器,天津服务器在接收到随机校验码之后确定不是天津服务器生成的随机校验码,因此可以将随机校验码发送给生成地北京服务器,由北京服务器完成数据校验过程。
本申请上述实施例四公开的方案中,如果需要对数据进行校验,可以在用户终端接收到用户终端发送的随机校验码和用户终端的终端标识信息之后,根据随机校验码,终端标识信息和本地存储的终端信息集合确定第一验证服务器是否为生成随机校验码的验证服务器,在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果,并且第一验证服务器和第二验证服务器为部署在异地的服务器终端,从而实现在用户终端出现地址位置漂移时对数据进行校验的目的。
容易注意到,由于第一验证服务器和第二验证服务器为部署在异地的服务器终端,接受随机校验码的第一验证服务器可以确定是否为生成随机校验码的验证服务器,在第一验证服务器不是生成随机校验码的验证服务器的情况下,由生成随机校验码的第二验证服务器验证该随机校验码,因此,通过本申请上述实施例,既可以快速定位到数据生成地,又可以保证验证码数据在哪里生成就在哪里校验,多中心之间不做数据同步,从而可以在用户端请求漂移的情况下也能够准确、无延时的进行校验,保证在不影响用户体验的情况下做到实时验证。
由此,本申请提供的上述实施例四的方案解决了现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题。
需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算机终端10中。
实施例5
根据本申请实施例,还提供了一种数据校验的系统,如图8所示,上述系统包括:第一验证服务器81,第二验证服务器83和用户终端85。
其中,用户终端85,分别与第一验证服务器81和第二验证服务器83通信,用于接收随机校验码;在触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器;在第一验证服务器为生成随机校验码的验证服务器的情况下,接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果。
第一验证服务器81和第二验证服务器83为部署在异地的服务器终端。
具体地,上述用户终端可以是智能手机(如Android手机、IOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、PAD等终端设备。
此处需要说明的是,本实施例中的第二验证服务器可以为生成随机校验码的验证服务器,随机校验码在第二验证服务器进行生成,并且第一验证服务器和第二验证服务器之间的临时数据不进行同步,因此当第一验证服务器不是生成随机校验码的验证服务器,则需要通过生成随机校验码的第二验证服务器对用户终端发送的随机校验码进行验证。
在一种可选的方案中,用户终端发起校验请求,将校验请求发送给获取随机验证码的服务器,并接受服务器返回的临时性的随机校验码。用户终端在接收到随机校验码之后,将随机校验码发送给验证随机码的服务器,验证随机码的服务器根据接收到的随机校验码和用户终端的终端标识信息,确定生成该随机校验码的获取随机验证码的服务器,如果验证随机码的服务器和获取随机验证码的服务器为同一个服务器,则该验证随机码的服务器对接收到的随机校验码进行验证,生成验证结果,并发送给用户终端;如果验证随机码的服务器和获取随机验证码的服务器为不同的服务器,则该验证随机码的服务器将接收到的随机校验码发送给获取随机验证码的服务器,由获取随机验证码的服务器对该随机校验码进行验证,生成验证结果返回给验证随机码的服务器,由验证随机码的服务器将该验证结果发送给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。用户在乘坐高铁从北京到天津的过程中,当用户在北京需要进行数据校验时,可以通过手机发送校验请求到北京服务器,并接受北京服务器生成的随机校验码,在用户接受到随机校验码之后,如果此时用户乘坐高铁达到天津,则将随机校验码发送给天津服务器,天津服务器在接收到随机校验码之后确定不是天津服务器生成的随机校验码,因此可以将随机校验码发送给生成地北京服务器,由北京服务器完成数据校验过程。
本申请上述实施例五公开的方案中,如果需要对数据进行校验,可以在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器,在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果,并且第一验证服务器和第二验证服务器为部署在异地的服务器终端,从而实现在用户终端出现地址位置漂移时对数据进行校验的目的。
容易注意到,由于第一验证服务器和第二验证服务器为部署在异地的服务器终端,接受随机校验码的第一验证服务器可以确定是否为生成随机校验码的验证服务器,在第一验证服务器不是生成随机校验码的验证服务器的情况下,由生成随机校验码的第二验证服务器验证该随机校验码,因此,通过本申请上述实施例,既可以快速定位到数据生成地,又可以保证验证码数据在哪里生成就在哪里校验,多中心之间不做数据同步,从而可以在用户端请求漂移的情况下也能够准确、无延时的进行校验,保证在不影响用户体验的情况下做到实时验证。
由此,本申请提供的上述实施例五的方案解决了现有技术中由于部署在不同地理区域的验证服务器之间无法及时同步验证码,导致当待验证的用户终端出现地址位置漂移时,无法准确进行数据校验的技术问题。
根据本申请上述实施例,第一验证服务器81用于根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器。
具体地,上述用户终端的终端标识信息可以是用户的手机号或者个人邮箱的地址,终端信息可以是验证服务器所在机房的机房掩码,终端信息集合可以是部署在异地的多个验证服务器所在机房的机房掩码集合,机房掩码的取值可以为256,257,258等。
根据本申请上述实施例,用户终端85还用于将终端标识信息发送给当前允许访问的验证服务器,并接收当前允许访问的验证服务器返回的随机校验码。
其中,当前允许访问的验证服务器为第一验证服务器或第二验证服务器,当前允许访问的验证服务器根据用户终端的终端标识信息和当前允许访问的验证服务器的终端信息,生成随机校验码。
在一种可选的方案中,用户终端发起校验请求,将校验请求发送给获取随机验证码的服务器,即上述的第一验证服务器或第二验证服务器,服务器根据用户终端的手机号和服务器所在机房的机房掩码生成随机校验码,并返回给用户终端。
例如,以用户终端为手机,第一验证服务器为天津服务器,第二验证服务器为北京服务器为例,对本申请上述实施例进行详细说明。当用户需要进行数据校验时,可以通过手机发送校验请求到北京服务器,北京服务器根据手机的手机号和北京服务器所在机房的机房掩码,生成随机校验码返回给用户的手机。
实施例6
本申请的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行数据校验的方法中以下步骤的程序代码:用户终端接收随机校验码;在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器;在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果;其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
可选地,图9是根据本申请实施例的一种计算机终端的结构框图。如图9所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器901、存储器903、以及传输装置905。
其中,存储器903可用于存储软件程序以及模块,如本申请实施例中的数据校验的方法和装置对应的程序指令/模块,处理器901通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的数据校验的方法。存储器903可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器903可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器901可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:用户终端接收随机校验码;在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器;在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果;其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
可选的,上述处理器901还可以执行如下步骤的程序代码:第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器。
可选的,上述处理器901还可以执行如下步骤的程序代码:用户终端将终端标识信息发送给当前允许访问的验证服务器,其中,当前允许访问的验证服务器为第一验证服务器或第二验证服务器;用户终端接收当前允许访问的验证服务器返回的随机校验码,其中,当前允许访问的验证服务器根据用户终端的终端标识信息和当前允许访问的验证服务器的终端信息,生成随机校验码。
可选的,上述处理器901还可以执行如下步骤的程序代码:当前允许访问的验证服务器获取用户终端的终端标识信息和当前允许访问的验证服务器的终端信息;根据用户终端的终端标识信息,得到偏移量;将当前允许访问的验证服务器的终端信息按照偏移量进行左移运算,得到生成因子;根据偏移量和随机生成的随机码,生成随机码因子;将生成因子和随机码因子进行取或运算,得到随机校验码。
可选的,上述处理器901还可以执行如下步骤的程序代码:当前允许访问的验证服务器将当前允许访问的验证服务器的终端信息转换为二进制数据,并提取预定位数得到当前允许访问的验证服务器的标识信息;将当前允许访问的验证服务器的标识信息按照偏移量进行左移运算,得到生成因子。
可选的,上述处理器901还可以执行如下步骤的程序代码:当前允许访问的验证服务器将二进制数按照偏移量进行左移运算,得到左移后的二进制数;对左移后的二进制数进行取反运算,得到临时变量;将临时变量和随机生成的随机码进行取与运算,得到随机码因子。
可选的,上述处理器901还可以执行如下步骤的程序代码:从第一验证服务器中读取预先保存的终端信息集合,并读取第一验证服务器的终端信息;根据用户终端的终端标识信息,得到偏移量;将第一验证服务器的终端信息按照偏移量进行左移运算,得到校验因子;根据偏移量和随机校验码,生成标识信息,其中,标识信息为生成随机校验码的验证服务器的标识信息;如果标识信息与校验因子相同,则确定第一验证服务器为生成随机校验码的验证服务器;如果标识信息与校验因子不同,则确定第一验证服务器不为生成随机校验码的验证服务器。
可选的,上述处理器901还可以执行如下步骤的程序代码:第一验证服务器将第一验证服务器的终端信息转换为二进制数据,并提取预定位数得到第一验证服务器的标识信息;将第一验证服务器的标识信息按照偏移量进行左移运算,得到校验因子。
可选的,上述处理器901还可以执行如下步骤的程序代码:第一验证服务器将二进制数按照偏移量进行左移运算,得到临时变量;将随机校验码和临时变量进行取与运算,得到标识信息。
可选的,上述处理器901还可以执行如下步骤的程序代码:第一验证服务器将用户终端的终端标识信息和随机校验码发送至第二验证服务器,并接收第二验证服务器验证随机校验码而产生的验证结果;将验证结果返回至用户终端;其中,根据第二验证服务器的终端信息得到的校验因子与标识信息相同。
本领域普通技术人员可以理解,图9所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图9其并不对上述电子装置的结构造成限定。例如,计算机终端A还可包括比图9中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图9所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例7
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的数据校验的方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:用户终端接收随机校验码;在用户终端触发校验随机校验码之后,将随机校验码和用户终端的终端标识信息发送给当前用户终端允许访问的第一验证服务器;在第一验证服务器为生成随机校验码的验证服务器的情况下,用户终端接收由第一验证服务器校验随机校验码而返回的验证结果;在第一验证服务器不是生成随机校验码的验证服务器的情况下,用户终端接收到的验证结果为第二验证服务器验证随机校验码而产生的验证结果;其中,第一验证服务器和第二验证服务器为部署在异地的服务器终端。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一验证服务器根据用户终端的终端标识信息、随机校验码和第一验证服务器本地存储的终端信息集合,来确定第一验证服务器是否为生成随机校验码的验证服务器。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:用户终端将终端标识信息发送给当前允许访问的验证服务器,其中,当前允许访问的验证服务器为第一验证服务器或第二验证服务器;用户终端接收当前允许访问的验证服务器返回的随机校验码,其中,当前允许访问的验证服务器根据用户终端的终端标识信息和当前允许访问的验证服务器的终端信息,生成随机校验码。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:当前允许访问的验证服务器获取用户终端的终端标识信息和当前允许访问的验证服务器的终端信息;根据用户终端的终端标识信息,得到偏移量;将当前允许访问的验证服务器的终端信息按照偏移量进行左移运算,得到生成因子;根据偏移量和随机生成的随机码,生成随机码因子;将生成因子和随机码因子进行取或运算,得到随机校验码。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:当前允许访问的验证服务器将当前允许访问的验证服务器的终端信息转换为二进制数据,并提取预定位数得到当前允许访问的验证服务器的标识信息;将当前允许访问的验证服务器的标识信息按照偏移量进行左移运算,得到生成因子。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:当前允许访问的验证服务器将二进制数按照偏移量进行左移运算,得到左移后的二进制数;对左移后的二进制数进行取反运算,得到临时变量;将临时变量和随机生成的随机码进行取与运算,得到随机码因子。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:从第一验证服务器中读取预先保存的终端信息集合,并读取第一验证服务器的终端信息;根据用户终端的终端标识信息,得到偏移量;将第一验证服务器的终端信息按照偏移量进行左移运算,得到校验因子;根据偏移量和随机校验码,生成标识信息,其中,标识信息为生成随机校验码的验证服务器的标识信息;如果标识信息与校验因子相同,则确定第一验证服务器为生成随机校验码的验证服务器;如果标识信息与校验因子不同,则确定第一验证服务器不为生成随机校验码的验证服务器。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一验证服务器将第一验证服务器的终端信息转换为二进制数据,并提取预定位数得到第一验证服务器的标识信息;将第一验证服务器的标识信息按照偏移量进行左移运算,得到校验因子。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一验证服务器将二进制数按照偏移量进行左移运算,得到临时变量;将随机校验码和临时变量进行取与运算,得到标识信息。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:第一验证服务器将用户终端的终端标识信息和随机校验码发送至第二验证服务器,并接收第二验证服务器验证随机校验码而产生的验证结果;将验证结果返回至用户终端;其中,根据第二验证服务器的终端信息得到的校验因子与标识信息相同。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (21)

1.一种数据校验的方法,其特征在于,包括:
用户终端接收随机校验码,所述随机校验码根据所述用户终端的终端标识信息和生成所述随机校验码的验证服务器的终端信息生成;
在所述用户终端触发校验所述随机校验码之后,将所述随机校验码和所述用户终端的终端标识信息发送给当前所述用户终端允许访问的第一验证服务器;
在所述第一验证服务器为生成所述随机校验码的验证服务器的情况下,所述用户终端接收由所述第一验证服务器校验所述随机校验码而返回的验证结果;
在所述第一验证服务器不是生成所述随机校验码的验证服务器的情况下,所述用户终端接收到的验证结果为第二验证服务器验证所述随机校验码而产生的验证结果;
其中,所述第一验证服务器和所述第二验证服务器为部署在异地的服务器终端。
2.根据权利要求1所述的方法,其特征在于,所述第一验证服务器根据所述用户终端的终端标识信息、所述随机校验码和所述第一验证服务器本地存储的终端信息集合,来确定所述第一验证服务器是否为生成所述随机校验码的验证服务器。
3.根据权利要求1所述的方法,其特征在于,在用户终端接收随机校验码之前,所述方法还包括:
用户终端将所述用户终端的终端标识信息发送给当前允许访问的验证服务器,其中,所述当前允许访问的验证服务器为所述第一验证服务器或所述第二验证服务器;
所述用户终端接收所述当前允许访问的验证服务器返回的随机校验码,其中,所述当前允许访问的验证服务器根据所述用户终端的终端标识信息和所述当前允许访问的验证服务器的终端信息,生成所述随机校验码。
4.根据权利要求3所述的方法,其特征在于,所述当前允许访问的验证服务器根据所述用户终端的终端标识信息和所述当前允许访问的验证服务器的终端信息,生成所述随机校验码,包括:
所述当前允许访问的验证服务器获取所述用户终端的终端标识信息和所述当前允许访问的验证服务器的终端信息;
根据所述用户终端的终端标识信息,得到偏移量;
将所述当前允许访问的验证服务器的终端信息按照所述偏移量进行左移运算,得到生成因子;
根据所述偏移量和随机生成的随机码,生成随机码因子;
将所述生成因子和所述随机码因子进行取或运算,得到所述随机校验码。
5.根据权利要求4所述的方法,其特征在于,将所述当前允许访问的验证服务器的终端信息按照所述偏移量进行左移运算,得到生成因子,包括:
所述当前允许访问的验证服务器将所述当前允许访问的验证服务器的终端信息转换为二进制数据,并提取预定位数得到当前允许访问的验证服务器的标识信息;
将所述当前允许访问的验证服务器的标识信息按照所述偏移量进行左移运算,得到所述生成因子。
6.根据权利要求4所述的方法,其特征在于,根据所述偏移量和随机生成的随机码,生成随机码因子,包括:
所述当前允许访问的验证服务器将二进制数按照所述偏移量进行左移运算,得到左移后的二进制数;
对所述左移后的二进制数进行取反运算,得到临时变量;
将所述临时变量和所述随机生成的随机码进行取与运算,得到所述随机码因子。
7.根据权利要求2所述的方法,其特征在于,所述第一验证服务器根据所述用户终端的终端标识信息、所述随机校验码和所述第一验证服务器本地存储的终端信息集合,来确定所述第一验证服务器是否为生成所述随机校验码的验证服务器,包括:
从所述第一验证服务器中读取预先保存的所述终端信息集合,并读取所述第一验证服务器的终端信息;
根据所述用户终端的终端标识信息,得到偏移量;
将所述第一验证服务器的终端信息按照所述偏移量进行左移运算,得到校验因子;
根据所述偏移量和所述随机校验码,生成标识信息,其中,所述标识信息为生成所述随机校验码的验证服务器的标识信息;
如果所述标识信息与所述校验因子相同,则确定所述第一验证服务器为生成所述随机校验码的验证服务器;
如果所述标识信息与所述校验因子不同,则确定所述第一验证服务器不为生成所述随机校验码的验证服务器。
8.根据权利要求7所述的方法,其特征在于,将所述第一验证服务器的终端信息按照所述偏移量进行左移运算,得到校验因子,包括:
所述第一验证服务器将所述第一验证服务器的终端信息转换为二进制数据,并提取预定位数得到所述第一验证服务器的标识信息;
将所述第一验证服务器的标识信息按照所述偏移量进行左移运算,得到所述校验因子。
9.根据权利要求7所述的方法,其特征在于,根据所述偏移量和所述随机校验码,生成标识信息,包括:
所述第一验证服务器将二进制数按照所述偏移量进行左移运算,得到临时变量;
将所述随机校验码和所述临时变量进行取与运算,得到所述标识信息。
10.根据权利要求7所述的方法,其特征在于,在确定所述第一验证服务器不为生成所述随机校验码的验证服务器之后,所述方法还包括:
所述第一验证服务器将所述用户终端的终端标识信息和所述随机校验码发送至所述第二验证服务器,并接收所述第二验证服务器验证所述随机校验码而产生的验证结果;
将所述验证结果返回至所述用户终端;
其中,根据所述第二验证服务器的终端信息得到的校验因子与所述标识信息相同。
11.一种数据校验的方法,其特征在于,包括:
第一验证服务器接收当前访问的用户终端发送的随机校验码和所述用户终端的终端标识信息,所述随机校验码根据所述用户终端的终端标识信息和生成所述随机校验码的验证服务器的终端信息生成;
所述第一验证服务器根据所述用户终端的终端标识信息、所述随机校验码和所述第一验证服务器本地存储的终端信息集合,来确定所述第一验证服务器是否为生成所述随机校验码的验证服务器;
在所述第一验证服务器为生成所述随机校验码的验证服务器的情况下,所述第一验证服务器对所述随机校验码进行校验,产生验证结果;
在所述第一验证服务器不是生成所述随机校验码的验证服务器的情况下,所述第一验证服务器接收第二验证服务器验证所述随机校验码而产生的验证结果,其中,所述第一验证服务器和所述第二验证服务器为部署在异地的服务器终端;
所述第一验证服务器将所述验证结果返回至所述用户终端。
12.根据权利要求11所述的方法,其特征在于,所述第一验证服务器根据所述用户终端的终端标识信息、所述随机校验码和所述第一验证服务器本地存储的终端信息集合,来确定所述第一验证服务器是否为生成所述随机校验码的验证服务器,包括:
所述第一验证服务器从所述终端信息集合中,获取所述第一验证服务器的终端信息;
根据所述用户终端的终端标识信息,得到偏移量;
将所述第一验证服务器的终端信息按照所述偏移量进行左移运算,得到校验因子;
根据所述偏移量和所述随机校验码,生成标识信息,其中,所述标识信息为生成所述随机校验码的验证服务器的终端信息;
如果所述标识信息与所述校验因子相同,则确定所述第一验证服务器为生成所述随机校验码的验证服务器;
如果所述标识信息与所述校验因子不同,则确定所述第一验证服务器不为生成所述随机校验码的验证服务器。
13.根据权利要求12所述的方法,其特征在于,将所述第一验证服务器的终端信息按照所述偏移量进行左移运算,得到校验因子,包括:
所述第一验证服务器将所述第一验证服务器的终端信息转换为二进制数据,并提取预定位数得到所述第一验证服务器的标识信息;
将所述第一验证服务器的标识信息按照所述偏移量进行左移运算,得到所述校验因子。
14.根据权利要求12所述的方法,其特征在于,根据所述偏移量和所述随机校验码,生成标识信息,包括:
所述第一验证服务器将二进制数按照所述偏移量进行左移运算,得到临时变量;
将所述随机校验码和所述临时变量进行取与运算,得到所述标识信息。
15.根据权利要求11所述的方法,其特征在于,在所述第一验证服务器接收第二验证服务器验证所述随机校验码而产生的验证结果之前,所述方法还包括:
将所述用户终端的终端标识信息和所述随机校验码发送至所述第二验证服务器;
接收所述第二验证服务器验证所述随机校验码而产生的验证结果。
16.一种数据校验的装置,其特征在于,包括:
第一接收模块,用于用户终端接收随机校验码,所述随机校验码根据所述用户终端的终端标识信息和生成所述随机校验码的验证服务器的终端信息生成;
第一发送模块,用于在所述用户终端触发校验所述随机校验码之后,将所述随机校验码和所述用户终端的终端标识信息发送给当前所述用户终端允许访问的第一验证服务器;
第二接收模块,用于在所述第一验证服务器为生成所述随机校验码的验证服务器的情况下,所述用户终端接收由所述第一验证服务器校验所述随机校验码而返回的验证结果;
第三接收模块,用于在所述第一验证服务器不是生成所述随机校验码的验证服务器的情况下,所述用户终端接收到的验证结果为第二验证服务器验证所述随机校验码而产生的验证结果;
其中,所述第一验证服务器和所述第二验证服务器为部署在异地的服务器终端。
17.根据权利要求16所述的装置,其特征在于,所述装置还包括:
第二发送模块,用于用户终端将所述用户终端的终端标识信息发送给当前允许访问的验证服务器,其中,所述当前允许访问的验证服务器为所述第一验证服务器或所述第二验证服务器;
第四接收模块,用于所述用户终端接收所述当前允许访问的验证服务器返回的随机校验码,其中,所述当前允许访问的验证服务器根据所述用户终端的终端标识信息和所述当前允许访问的验证服务器的终端信息,生成所述随机校验码。
18.一种数据校验的装置,其特征在于,包括:
第一接收模块,用于第一验证服务器接收当前访问的用户终端发送的随机校验码和所述用户终端的终端标识信息,所述随机校验码根据所述用户终端的终端标识信息和生成所述随机校验码的验证服务器的终端信息生成;
确定模块,用于所述第一验证服务器根据所述用户终端的终端标识信息、所述随机校验码和所述第一验证服务器本地存储的终端信息集合,来确定所述第一验证服务器是否为生成所述随机校验码的验证服务器;
产生模块,用于在所述第一验证服务器为生成所述随机校验码的验证服务器的情况下,所述第一验证服务器对所述随机校验码进行校验,产生验证结果;
第二接收模块,用于在所述第一验证服务器不是生成所述随机校验码的验证服务器的情况下,所述第一验证服务器接收第二验证服务器验证所述随机校验码而产生的验证结果,其中,所述第一验证服务器和所述第二验证服务器为部署在异地的服务器终端;
返回模块,用于所述第一验证服务器将所述验证结果返回至所述用户终端。
19.一种数据校验的系统,其特征在于,包括:
第一验证服务器和第二验证服务器;
用户终端,分别与所述第一验证服务器和第二验证服务器通信,用于接收随机校验码,所述随机校验码根据所述用户终端的终端标识信息和生成所述随机校验码的验证服务器的终端信息生成;在触发校验所述随机校验码之后,将所述随机校验码和所述用户终端的终端标识信息发送给当前所述用户终端允许访问的第一验证服务器;在所述第一验证服务器为生成所述随机校验码的验证服务器的情况下,接收由所述第一验证服务器校验所述随机校验码而返回的验证结果;在所述第一验证服务器不是生成所述随机校验码的验证服务器的情况下,接收到的验证结果为第二验证服务器验证所述随机校验码而产生的验证结果;
其中,所述第一验证服务器和所述第二验证服务器为部署在异地的服务器终端。
20.根据权利要求19所述的系统,其特征在于,所述第一验证服务器用于根据所述用户终端的终端标识信息、所述随机校验码和所述第一验证服务器本地存储的终端信息集合,来确定所述第一验证服务器是否为生成所述随机校验码的验证服务器。
21.根据权利要求19所述的系统,其特征在于,
用户终端还用于将所述用户终端的终端标识信息发送给当前允许访问的验证服务器,并接收所述当前允许访问的验证服务器返回的随机校验码;
其中,所述当前允许访问的验证服务器为所述第一验证服务器或所述第二验证服务器,所述当前允许访问的验证服务器根据所述用户终端的终端标识信息和所述当前允许访问的验证服务器的终端信息,生成所述随机校验码。
CN201610084748.3A 2016-02-14 2016-02-14 数据校验的方法,装置和系统 Active CN107086976B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610084748.3A CN107086976B (zh) 2016-02-14 2016-02-14 数据校验的方法,装置和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610084748.3A CN107086976B (zh) 2016-02-14 2016-02-14 数据校验的方法,装置和系统

Publications (2)

Publication Number Publication Date
CN107086976A CN107086976A (zh) 2017-08-22
CN107086976B true CN107086976B (zh) 2020-04-10

Family

ID=59614075

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610084748.3A Active CN107086976B (zh) 2016-02-14 2016-02-14 数据校验的方法,装置和系统

Country Status (1)

Country Link
CN (1) CN107086976B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109788545A (zh) 2017-11-15 2019-05-21 电信科学技术研究院 一种进行同步的方法和装置
CN108366054B (zh) * 2018-01-31 2019-06-11 北京深思数盾科技股份有限公司 一种数据分发、转发方法及装置
CN116847358A (zh) * 2022-03-25 2023-10-03 华为技术有限公司 一种终端设备位置的验证方法及通信装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564516A (zh) * 2004-03-26 2005-01-12 中兴通讯股份有限公司 一种无线局域网移动终端异地接入认证方法
CN101079931A (zh) * 2006-09-22 2007-11-28 腾讯科技(深圳)有限公司 一种电话号码验证系统及方法
CN101631023A (zh) * 2009-07-31 2010-01-20 北京飞天诚信科技有限公司 身份认证的方法和系统
CN101977194A (zh) * 2010-10-29 2011-02-16 赵俊平 一种第三方验证码系统及第三方验证码提供方法
CN104753755A (zh) * 2013-12-26 2015-07-01 广州华多网络科技有限公司 系统接入方法、装置、应用客户端和im后台系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8407464B2 (en) * 2006-10-10 2013-03-26 Cisco Technology, Inc. Techniques for using AAA services for certificate validation and authorization

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1564516A (zh) * 2004-03-26 2005-01-12 中兴通讯股份有限公司 一种无线局域网移动终端异地接入认证方法
CN101079931A (zh) * 2006-09-22 2007-11-28 腾讯科技(深圳)有限公司 一种电话号码验证系统及方法
CN101631023A (zh) * 2009-07-31 2010-01-20 北京飞天诚信科技有限公司 身份认证的方法和系统
CN101977194A (zh) * 2010-10-29 2011-02-16 赵俊平 一种第三方验证码系统及第三方验证码提供方法
CN104753755A (zh) * 2013-12-26 2015-07-01 广州华多网络科技有限公司 系统接入方法、装置、应用客户端和im后台系统

Also Published As

Publication number Publication date
CN107086976A (zh) 2017-08-22

Similar Documents

Publication Publication Date Title
US8798677B2 (en) Service provider activation
EP1768426B1 (en) Method for transmitting information
US8032181B2 (en) Service provider activation with subscriber identity module policy
US20160301529A1 (en) Method and apparatus for managing a profile of a terminal in a wireless communication system
EP3701667B1 (en) Anonymity system for goods delivery
US11368841B2 (en) Network access authentication method and device
WO2017049736A1 (zh) 一种移动通信网络接入方法及装置
CN103078741A (zh) 一种rfid双向认证协议方法
CN107086976B (zh) 数据校验的方法,装置和系统
US20190268765A1 (en) Method and apparatus for managing a profile of a terminal in a wireless communication system
CN111949974A (zh) 一种认证的方法、装置、计算机设备及存储介质
CN113392418B (zh) 数据部署方法及装置、计算机可读存储介质、部署设备、用户端
CN104935435A (zh) 登录方法、终端及应用服务器
CN103702329A (zh) 一种通信终端身份验证的方法、一种通信终端和一种基站
CN106686591A (zh) 接入无线网络的方法及装置
CN111163467A (zh) 5g用户终端接入5g网络的方法、用户终端设备及介质
CN107529167A (zh) 一种认证方法
CN103368918A (zh) 一种动态口令认证方法、装置及系统
CN102065421B (zh) 一种更新密钥的方法、装置和系统
CN105306577A (zh) 基于app的手持设备间的资料共享系统及方法
CN107204959B (zh) 验证码的验证方法、装置及系统
CN110618989B (zh) 信息处理方法、信息处理装置及相关产品
CN109429225A (zh) 消息接收、发送方法及装置、终端、网络功能实体
US10820191B2 (en) Network communications for connected devices
CN111107550A (zh) 5g终端设备双通道接入注册方法、设备及存储介质

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
TR01 Transfer of patent right

Effective date of registration: 20200416

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba (China) Co.,Ltd.

Address before: 510627 Guangdong city of Guangzhou province Whampoa Tianhe District Road No. 163 Xiping Yun Lu Yun Ping B radio square 14 storey tower

Patentee before: GUANGZHOU UCWEB COMPUTER TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right