CN110430193B - 信息验证方法、装置、服务器及存储介质 - Google Patents

信息验证方法、装置、服务器及存储介质 Download PDF

Info

Publication number
CN110430193B
CN110430193B CN201910722627.0A CN201910722627A CN110430193B CN 110430193 B CN110430193 B CN 110430193B CN 201910722627 A CN201910722627 A CN 201910722627A CN 110430193 B CN110430193 B CN 110430193B
Authority
CN
China
Prior art keywords
token
client
payment
key
information
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
CN201910722627.0A
Other languages
English (en)
Other versions
CN110430193A (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.)
Guangzhou Huya Technology Co Ltd
Original Assignee
Guangzhou Huya 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 Huya Technology Co Ltd filed Critical Guangzhou Huya Technology Co Ltd
Priority to CN201910722627.0A priority Critical patent/CN110430193B/zh
Publication of CN110430193A publication Critical patent/CN110430193A/zh
Application granted granted Critical
Publication of CN110430193B publication Critical patent/CN110430193B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • 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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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
    • 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/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/0872Generation of secret information including derivation or calculation of cryptographic keys or passwords using geo-location information, e.g. location data, time, relative position or proximity to other entities
    • 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/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本申请为数据验证技术领域,本申请提供一种信息验证方法、装置、服务器及存储介质,所述方法包括向客户端下发第一token,及根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中;其中,所述第一token为对所述网络属性信息的变量截取组合得到的;接收所述客户端发送的支付请求,从所述支付请求中提取第二token,并将所述第二token保存至根据所述网络属性信息形成的第二密钥中,根据所述第二密钥与所述第一密钥进行比对,得到第三token;当所述第三token与所述第一token一致时,验证通过。该方案有利于保证网络支付的信息验证的安全性。

Description

信息验证方法、装置、服务器及存储介质
技术领域
本申请涉及数据验证技术领域,具体而言,本申请涉及一种信息验证方法、装置、服务器及存储介质。
背景技术
随着网络支付的广泛应用,网络支付的安全性得到广泛的关注。在目前的网络支付中,用户向支付渠道进行支付,支付渠道确认支付成功的信息后并反馈给客户端,客户端收到确认支付成功的信息的同时,通知后台服务进行支付成功。但该支付方法,第三方很容易通过外挂设备或者模拟器,拦截客户端的支付信息,模拟支付渠道伪造支付成功返回值,欺骗客户端支付已完成并通知后台进行发货。上述方法,因容易遭受到第三方介入网络支付的数据交互,并获取支付信息,无法保证网络支付的信息验证的安全性。
发明内容
为克服以上技术问题,特别是现有技术中很容易通过外挂设备或者模拟器拦截客户端的支付信息,影响网络支付安全的信息验证安全问题,特提出以下技术方案:
第一方面,本申请提供一种信息验证方法,其包括以下步骤:
向客户端下发第一token,及根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中;其中,所述第一token为对所述网络属性信息的变量截取组合得到的;
接收所述客户端发送的支付请求,从所述支付请求中提取第二token,并将所述第二token保存至根据所述网络属性信息形成的第二密钥中,根据所述第二密钥与所述第一密钥进行比对,得到第三token;
当所述第三token与所述第一token一致时,验证通过。
在其中一个实施例中,所述向客户端下发第一token的步骤之前:还包括:
获取所述网络属性信息,根据所述网络属性信息形成变量;其中,所述变量包括客户端与服务器在交互中形成的客户端变量和主机变量;
将所述客户端变量和所述主机变量形成组合字符串,并通过加密算法处理,得到原始加密字符串;
对所述原始加密字符串进行跳位截取,并截取组合得到第一token。
在其中一个实施例中,所述客户端变量包括在接收客户端的启动请求时,获取客户端唯一标识、实时上报的网络标识及时间戳;
所述主机变量包括根据实时运行环境时的所产生的主机时间戳、主机编号和主机网络标识。
在其中一个实施例中,所述根据所述客户端的网络属性信息形成第一密钥的步骤,包括:
根据所述客户端的唯一标识和实时上报的网络标识组成网络属性信息;
利用所述网络属性信息形成第一密钥。
在其中一个实施例中,所述将所述第一token保存在所述第一密钥中的步骤之后,还包括:
对所述第一密钥进行加密。
在其中一个实施例中,所述接收客户端发送的支付请求,从所述支付请求中提取第二token的步骤,包括:
接收所述客户端发送的支付请求,获取所述支付请求中的加密字符串;
对所述加密字符串进行解密,得到支付信息字符串;
从所述支付信息字符串中提取第二token。
在其中一个实施例中,所述验证通过的步骤之后,还包括:
向所述客户端发送合法通知,并根据所述合法通知,向支付渠道查询所述客户端的支付处理结果;其中,所述合法通知是验证通过后所形成的,其包括所述支付请求对应的待支付参数;
当查询得到支付处理成功的结果,向所述客户端发出所述支付请求的支付处理成功的通知。
在其中一个实施例中,所述根据所述合法通知,向支付渠道查询所述客户端的支付处理结果的步骤,包括:
根据所述合法通知,提取对应的待支付参数;
利用所述待支付参数向支付渠道轮询对应客户端的支付处理结果。
在其中一个实施例中,在上述基础上还包括:
当发出与所述支付标识对应的支付处理成功的通知之后,重新生成第一token。
在其中一个实施例中,在上述基础上还包括:
当重新生成的第一token的生成时长超出预设时长,且未接收到所述客户端发送的支付请求时,重新形成第一token。
在其中一个实施例中,所述信息验证方法还包括:
当所述第三token与所述第一token不一致时,向对应客户端发送中止执行支付处理的指令。
第二方面,本申请还提供一种信息验证装置,其包括:
保存模块,用于向客户端下发第一token,及根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中;其中,所述第一token为对所述网络属性信息的变量截取组合得到的;
提取模块,用于接收所述客户端发送的支付请求,从所述支付请求中提取第二token,并将所述第二token保存至根据所述网络属性信息形成的第二密钥中,根据所述第二密钥与所述第一密钥进行比对,得到第三token;
验证模块,用于当所述第三token与所述第一token一致时,验证通过。
第三方面,本申请还提供一种服务器,其包括:
一个或多个处理器;
存储器;
一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个计算机程序配置用于执行第一方面任一实施例所述的信息验证方法。
第四方面,本申请还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现第一方面任一实施例所述的信息验证方法。
本申请所提供的一种信息验证方法、装置、服务器及存储介质,通过获取客户端和网络运行环境的变量所截取组合形成了第一token,当接收到客户端的支付请求后,从该支付请求提取第二token,并将保存有第二token的第二密钥与第一密钥进行对比,得到第三token。当第一token与第三token一致时,服务器对所述支付请求验证通过。在该方案中,通过对客户端和网络的信息进行截取组合所形成的第一token为一加密串的残串,其具有唯一性和不可重复生成的性质,使得相对于所述客户端和服务器以外的第三方设备如外挂设备和模拟器均无法通过拦截客户端的支付信息来逆向推导第一token的加密方法,避免用户的支付信息遭受到盗取,从而保证了支付信息在网络传输中的安全性。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例执行所述信息验证方案的应用环境图;
图2是本申请中的一个实施例的信息验证方法的流程图;
图3是在步骤S210之前的详细步骤的流程图;
图4是本申请中的另一个实施例的信息验证方法的流程图;
图5是在步骤S240的详细步骤的流程图;
图6是本申请中的又一个实施例的信息验证方法的流程图;
图7为本申请中的再一个实施例的信息验证方法的时序图;
图8为本申请中的一个实施例的信息验证装置的结构示意图;
图9为本申请中的一个实施例的服务器的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
参考图1所示,图1是本申请实施例执行所述信息验证方案的应用环境图;该实施例中,本申请技术方案可以基于服务器上实现,如图1中,客户端110可以通过internet网络访问服务器120,并进行数据交互。在进行数据交互时,服务器120根据与客户端110的交互信息获取相应的访问数据和属性数据,并根据该数据对该客户端的支付信息进行验证。
为了解决目前难以保证网络支付安全的问题,本申请提供了一种信息验证方法。可参考图2,图2是本申请中的一个实施例的信息验证方法的流程图,该方法包括以下步骤:
S210、向客户端下发第一token,及根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中;其中,所述第一token为对客户端和网络环境的相关信息变量截取组合得到的。
在本申请中,服务器通过生成或获取关于客户端在当前网络环境运行中的第一token,并将该第一token保存的同时,也下发至该客户端进行存储。在本实施例中,服务器根据捕获到的该客户端的网络属性信息,形成第一密钥,将第一token保存至该第一密钥中。该第一密钥可以利用保存介质进行保存,该保存介质可以是与服务器数据交互与数据保存的缓存数据库或关系型数据库。
在本申请中,所述网络属性信息包括客户端与服务器通过internet网络访问时进行数据交互时所产生的关于自身和网络环境中的一种或几种属性信息的集合。
所述token是指服务器根据各种密码学规则对数据加密后得到的密钥字符串。在本申请中,所述第一token是对根据所述客户端的网络属性信息所生所述成的变量截取组合得到的。因此。该第一token是不完整的,所以不可逆向推导加密方式。在本实施例中,所述截取组合可根据随意规则进行的,即每一次的截取组合的方式不同和得到的密钥字符串也不同,确保每一次获取的第一token具有唯一性和不可复制性,只允许一次使用。
S220、接收所述客户端发送的支付请求,从所述支付请求中提取第二token,并将所述第二token保存至根据所述网络属性信息形成的第二密钥中,根据所述第二密钥与所述第一密钥进行比对,得到第三token。
服务器通过internet网络访问接收到客户端所发送的支付请求,从该支付请求的信息中提取关于客户端在当前支付请求中所生成的第二token。服务器根据该客户端的网络属性信息形成第二密钥,并将所述第二token保存至所述第二密钥中。
将第二密钥与第一密钥进行比对,在本实施例中,将分别从第二密钥和第一密钥中对应的字节提取第二token和第一token并进行比对。将提取获得的第二token和第一token的逐个字符进行比对,得到比对的结果。根据比对的结果,从第二密钥中得到第三token。具体地,若比对的结果为一致时,将所述第二token作为第三token输出;若不一致,将从第二密钥中提取加密字符串,并以该加密字符串作为第三token。
S230、当所述第三token与所述第一token一致时,验证通过。
在该步骤中,根据步骤S220得到的第三token与步骤S210得到的第一token进行比对,得到两者是否为一致的结果,根据该结果来确认token在支付请求的传送中是否被窜改,以防止通过外挂设备或模拟器拦截客户端的支付信息,伪造支付成功返回值的情况出现。
当第三token与第一token一致时,则第一token、第二token和第三token三者一致,即所述第一token在客户端向服务器发送支付请求时,没有被窜改,服务器所接收到的支付请求是由客户端所发送的,此时,服务器对所述支付请求的验证通过,可以进行后续的支付程序。
本申请提供一种信息验证方法,获取原来保存的第一token,与服务器经过网络传输所接收到的客户端支付请求中提取的第二token,并根据所述第一token与第二token的比对,得到第三token;再根据第三token与第一token比较的结果对所述支付请求进行验证。该方法通过对客户端和服务端的网络交互中所形成的网络属性信息的变量进行截取组合,生成一个不完整且不可逆向推导的第一token,从而使得外挂设备和模拟器不可能通过拦截客户端的信息,伪造与第一token相同的密钥字符串。因此,将支付请求中提取的第二token对应的第二密钥与第一密钥进行对比,得到第三token,当所述第三token与第一token一致时,能够确认所述支付请求是由客户端所产生的,而并非经过伪造或窜改所得到的,从而确保网络支付的安全性。
参考图3,图3是在步骤S210之前的详细步骤的流程图。在步骤S210之前,还包括对于下发至客户端并在服务器中保存在第一密钥中的第一token的生成步骤,对应的步骤包括:
S201、获取所述网络属性信息,根据所述网络属性信息形成变量;其中,所述变量包括客户端与服务器在交互中形成的客户端变量和主机变量;
S202、将所述客户端变量和所述主机变量形成组合字符串,并通过加密算法处理,得到原始加密字符串;
S203、对所述原始加密字符串进行跳位截取,并截取组合得到第一token。
在步骤S201-S203中,服务器与客户端的网络交互的过程中,获取所述网络属性信息,服务器根据对信息的转换,将该网络属性信息形成变量。由于所述网络属性信息包括客户端自身和网络环境的属性信息。因此,所述变量包括客户端变量和主机变量。
其中,所述客户端变量可具体包括在接收客户端的启动请求时,获取客户端唯一标识、实时上报的网络标识及时间戳。
所述客户端唯一标识,可为用户userID或设备ID。
所述实时上报的网络标识,可为服务器根据客户端的启动应用程序请求或通过浏览器发出的当前网络访问请求时,表示当前网络状态的实时上报的网络标识IP。
所述时间戳,可为服务器根据客户端发出当前网络访问时间获取到的时间戳。
所述主机变量可具体包括根据实时运行环境时的所产生的主机时间戳、主机编号和主机网络标识所组成的主机信息。
上述任一具体的网络属性信息对应各自信息变量。根据上述得到的所有变量组合成字符串,服务器对该字符串进行加密算法处理,得到原始加密字符串。在本实施例中,所述加密算法可以采用SHA1(Secure Hash Algorithm,安全哈希算法)、MD5(MD5Message-Digest Algorithm,MD5消息摘要算法)、AES(Advanced Encryption Standard高级加密标准)加密其中一种或若干种结合形成的加密算法。
将步骤S202得到的原始加密字符串进行跳位截取后组合,如截取所述加密字符串中按照变量编号为0~3+6~10+11~17进行截取组合,形成一个已加密的残串。由于该残串不能体现完整的客户端和网络运行环境的信息,所以外挂设备或模拟器无法根据逆向推导加密的方式得到完整的原始加密字符串,确保所得到的第一token的唯一性和不可复制性,以便后续客户端与服务器进行信息验证。
在本实施例中,所述跳位截取是按照随意规则进行的,截取所述原始加密字符串的变量的位置是任意的,使得更不可能逆向推导加密的方式得到完整的原始加密字符串,进一步确保第一token的唯一性和不可复制性,从而提高后续客户端与服务器的信息验证的效果。
对于步骤S210中的根据所述客户端的网络属性信息形成第一密钥的步骤,进一步包括以下子步骤:
S211、根据所述客户端的唯一标识和实时上报的网络标识形成网络属性信息;
S212、利用所述网络属性信息形成第一密钥。
在步骤S211-S212中,服务器根据获取所述客户端的唯一标识和实时上报的网络标识组成客户端的网络属性信息,根据该网络属性信息形成第一密钥,以确认所述第一密钥的对应的客户端和使用的交互网络。在此基础上,当将所述第一token保存在所述第一密钥中的步骤之后,对所述第一密钥进行加密,以便于对该第一密钥信息的传送和保存。
对于上述步骤S220中的接收客户端发送的支付请求,从所述支付请求中提取第二token的步骤,可进一步包括:
S221、接收所述客户端发送的支付请求,获取所述支付请求中的加密字符串;
S222、对所述加密字符串进行解密,得到支付信息字符串;
S223、从所述支付信息字符串中提取第二token。
所述客户端根据接收到的下单指令,形成支付请求。在形成该支付请求时,获取在步骤S210中所下发至该客户端的第一token和形成支付请求时所得到的待支付参数进行加密,得到一加密字符串。在本实施例中,所述该加密字符串是利用AES加密算法进行加密的。
所述支付请求携带该加密字符串,发送至所述服务器执行下单操作。服务器接收到支付请求后,该加密字符串的加密算法进行确认后,进行数据解密。在本实施例中,该数据解密的方法为与上述加密方法对应的AES解密。服务器经过对所接收到的支付请求进行解密后,得到支付请求中的支付信息字符串。所述支付信息字符串包括与所述支付请求对应的待支付参数和第二token。服务器从所述支付信息字符串中提取得到第二token。若所述支付请求是从客户端所发送的支付请求,解密所述支付请求的加密字符串得到的第二token与下发至所述客户端的第一token保持一致;若所述支付请求是外挂设备或模拟器通过拦截客户端伪造的支付信息所得到的,所解密后得到的第二token与下发至所述客户端的第一token不一致。因此,通过对支付请求的加密字符串进行解密提取其中的第二token,从客户端和服务器的交互信息中容易得到第二token,且避免所述第二token中的字符串的信息造成损坏,便于后续与原来保存的第一token进行比较,对支付请求进行验证。
可参考图4,图4是本申请中的另一个实施例的信息验证方法的流程图,对于步骤S230之后,本方法还包括以下步骤:
S240、向所述客户端发送合法通知,并根据所述合法通知,向支付渠道查询所述客户端的支付处理结果;其中,所述合法通知是验证通过后所形成的,其包括所述支付请求对应的待支付参数;
S250、当查询得到支付处理成功的结果,向所述客户端发出所述支付请求的支付处理成功的通知。
服务器当确认所述第三token与第一token一致时,对接收到的客户端的支付请求验证成功后,向该客户端发送合法通知。同时,服务器发出对所述第一密钥中的第一token的删除指令,对第一token执行删除的操作。
在本实施例中,该合法通知是用于标注验证通过所形成的,其包括所述支付请求对应的待支付参数。若所述支付请求为下单的支付请求,该待支付参数为待下单参数,如下单号。
客户端根据所述合法通知,开启支付流程,在本实施例中,调起支付渠道支付界面。从所述客户端调起支付渠道支付界面开始,所述服务器根据待支付参数向所述支付渠道轮询对应支付请求的支付处理结果,直至查询得到支付处理成功的结果。
客户端完成支付时,所述支付渠道将所述支付请求对应的待支付订单改为支付处理成功。当服务器查询到支付处理成功的结果时,服务器向客户端发出关于该支付请求的支付处理成功的通知。
上述两个步骤对客户端和支付渠道对支付信息的处理及服务器对支付处理成功信息的确认处理形成两个相对独立的异步的信息处理,使得信息处理无需阻塞当前线程来等待信息的处理完成,而是允许后续的对信息处理执行,直至其他线程将信息处理完成,并反馈通知此线程。
参考图5,图5是在步骤S240的详细步骤的流程图。在此基础上,步骤S240进一步包括:
S241、根据所述合法通知,提取对应的待支付参数;
S242、利用所述待支付参数向支付渠道轮询对应客户端的支付处理结果。
服务器根据验证成功的支付请求,对应该支付请求形成合法通知,该合法通知中包括该支付请求对应的待支付参数。服务器根据所述合法通知,提取其中的待支付参数,并利用该待支付参数向支付渠道轮询与所述客户端发出支付请求对应的支付处理结果。因此,服务器根据该待支付参数准确并快速地捕获对应的支付请求的支付处理结果,从而可加快地对支付信息进行处理,并反馈对应的处理结果。
在步骤S250之后,即向所述客户端发出对应的支付请求的支付处理成功的通知后,重新生成第一token。
服务器根据上述步骤S201-S203所述的步骤,重新生成第一token。并将该重新生成的第一token下发至客户端,并根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中。该重新生成的第一token用于为后续生成的支付请求做验证准备。
但当重新生成的第一token的生成时长超出预设时长,且未接收到所述客户端发送的支付请求时,重新形成第一token。
该重新生成的第一token具有时效性,当其生成的时长超出了预设时长,并服务器在该预设时长内为接收到客户端发送的支付请求时,便再次生成第一token。如上述方式循环不断生成第一token,为后续生成的支付请求不断更新验证信息,并为验证操作做准备,直到接收到客户端的支付请求为止。
本申请所提供的信息验证方法,还包括与步骤S230并列的步骤:当所述第三token与所述第一token不一致时,向对应客户端发送中止执行支付处理的指令。
在该步骤中,若服务器经过验证后,得到第三token与第一token不一致的比较结果,在该实施例中,服务器会向客户端发出非法通知。所属客户端根据所述非法通知,中止执行向支付渠道发送调起指令,即中止执行支付处理的流程。待收到合法通知后,再重新调起支付处理流程。
为了有助于理解本申请所提供的信息验证方法的整体设计架构,将上述所涉及到实施例形成一个完整的流程图,具体可参考图6,图6是本申请中的又一个实施例的信息验证方法的流程图。具体步骤如下:
S610、获取第一token;
S620、将第一token下发客户端;
S630、获取客户端ID和IP形成第一密钥,并将所述第一token保存在第一密钥中;
S640、根据客户端的支付请求,从客户端至服务器的传送中,提取第二token,并保存在所述第二密钥中;
S650、根据所述第二密钥与所述第一密钥进行比对,得到第三token;
S660、将第一token与第三token进行比较;当比较结果一致时,转步骤S670,当比较结果不一致时,转步骤S680;
S670、验证通过;
S671、向客户端发送合法通知;
S672、客户端调起支付渠道的支付界面,进行支付处理;
S680、验证失败,中止执行支付处理流程。
对于本申请所提供的一种信息验证方法中,所涉及的关于客户端、服务器和支付渠道的数据交互,为了清楚表现上述主体之间的数据交互,将上述所涉及到实施例形成一个关于上述主体之间的信息的数据交互的时序图,具体参考图7,图7为本申请中的再一个实施例的信息验证方法的时序图。具体步骤如下:
S710、服务器向客户端获取ID、IP和运行环境等信息,生成变量;
S720、服务器根据所述变量,截取组合生成第一token,并保存至由ID和IP形成的第一密钥中;
S730、服务器将第一token下发至客户端;
S740、客户端根据启动支付,将第一token和待支付参数生成支付请求,向服务器发送;
S750、服务器接收支付请求,并提取第二token,并保存至由ID和IP形成的第二密钥中;
S760、服务器根据所述第二密钥与所述第一密钥进行比对,得到第三token;S770、服务器将第一token与第三token进行比较;若一致,转步骤S780,若不一致,转S790;
S780、向客户端发送合法通知;并转至S781;
S781、客户端向支付渠道调起支付界面进行支付处理;
S782、服务器向支付渠道轮询得到支付处理成功结果
S783、向客户端发出支付处理成功的通知;
S784、服务器重新向客户端获取ID、IP和运行环境等信息,生成变量,并重新截取组合生成第一token;
S790、中止执行支付处理流程。
基于与上述信息验证方法相同的发明构思,本申请实施例还提供了一种信息验证装置,参考图8,图8本申请中的一个实施例的信息验证装置的结构示意图,所述信息验证装置包括:
保存模块810,用于向客户端下发第一token,及根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中;其中,所述第一token为对所述网络属性信息的变量截取组合得到的;
提取模块820,用于接收所述客户端发送的支付请求,从所述支付请求中提取第二token,并将所述第二token保存至根据所述网络属性信息形成的第二密钥中,根据所述第二密钥与所述第一密钥进行比对,得到第三token;
验证模块830,用于当所述第三token与所述第一token一致时,验证通过。
在上述提供的一种信息验证装置的基础上,还包括:
获取模块801,用于获取所述网络属性信息,根据所述网络属性信息形成变量;其中,所述变量包括客户端与服务器在交互中形成的客户端变量和主机变量;
加密模块802,用于将所述客户端变量和所述主机变量形成组合字符串,并通过加密算法处理,得到原始加密字符串;
截取模块803,用于对所述原始加密字符串进行跳位截取,并截取组合得到第一token。
本申请根据上述模块801-803生成第一token,为后续对支付信息的验证过程提供验证的数据基础。
请参考图9,图9为本申请中的一个实施例的服务器的结构示意图。如图9所示,该服务器包括通过系统总线连接的处理器910、存储介质920、存储器930和网络接口940。其中,该服务器的存储介质920存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器910执行时,可使得处理器910实现一种终端设备异常访问的隔离方法,处理器910能实现图8所示实施例中的一种信息验证装置中的保存模块810、提取模块820和验证模块830的功能。该服务器的处理器910用于提供计算和控制能力,支撑整个服务器的运行。该服务器的存储器930中可存储有计算机可读指令,该计算机可读指令被处理器910执行时,可使得处理器910执行一种信息验证方法。该服务器的网络接口940用于与终端连接通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请还提出了一种存储有计算机可读指令的存储介质,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:向客户端下发第一token,及根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中;其中,所述第一token为对所述网络属性信息的变量截取组合得到的;接收所述客户端发送的支付请求,从所述支付请求中提取第二token,并将所述第二token保存至根据所述网络属性信息形成的第二密钥中,根据所述第二密钥与所述第一密钥进行比对,得到第三token;当所述第三token与所述第一token一致时,验证通过。
综合上述实施例可知,本申请最大的有益效果在于:
本申请所提供的一种信息验证方法、装置、服务器及存储介质,通过获取客户端和网络运行环境的变量所截取组合形成了第一token,当接收到客户端的支付请求后,从该支付请求提取第二token,并通过保存第二token的第二密钥和第一密钥进行比对,得到第三token。当第一token与第三token一致时,服务器对所述支付请求验证通过。在该方案中,通过对客户端和网络的信息进行截取组合所形成的第一token为一加密串的残串,其具有唯一性和不可重复生成的性质,使得相对于所述客户端和服务器以外的第三方设备如外挂设备和模拟器均无法通过拦截客户端的支付信息来逆向推导第一token的加密方法,避免用户的支付信息遭受到盗取,从而保证了支付信息在网络传输中的安全性。
本申请还提供了在服务器和客户端获取得到第一token之前,根据所述客户端的网络属性信息得到客户端变量和主机变量,通过加密后得到原始加密字符串,并通过对该原始加密字符串跳位截取,得到第一token。根据该方式获得的第一token为一个加密残串,所述客户端和服务器以外的第三方设备如外挂设备和模拟器均无法通过拦截客户端的支付信息来逆向推导第一token对应的原始加密字符串,即无法获取对应的支付信息,进一步保证了网络支付的安全性。
本申请还提供了在客户端调起支付渠道执行支付流程的过程中,所述服务器根据待支付参数向支付渠道异步轮询支付结果。这样,异步信息处理无需阻塞当前线程来等待信息的处理完成,而是允许后续的对信息处理执行,直至其他线程将信息处理完成,保证了网络数据传输的流畅性。
综上,本申请信息验证方法、装置、服务器及存储介质,获取在支付之前所截取组合得到的第一token和服务器通过支付请求传输得到的第二token,并通过保存第二token的第二密钥和第一密钥进行比对,得到第三token,将所述第三token与第一token进行比较,对支付请求进行验证,根据该验证的结果得到该支付请求是否由所述客户端所发出的支付请求,然后再确认是否调起支付渠道进行支付,从而避免了所述客户端和服务器以外的第三方设备如外挂设备和模拟器均无法通过拦截客户端的支付信息来逆向推导第一token,盗取支付信息的问题,从而保证了支付信息在网络传输中的安全性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (14)

1.一种信息验证方法,其特征在于,包括以下步骤:
向客户端下发第一token,及根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中;其中,所述第一token为对所述网络属性信息的变量截取组合得到的;
接收所述客户端发送的支付请求,从所述支付请求中提取第二token,并将所述第二token保存至根据所述网络属性信息形成的第二密钥中,分别从所述第二密钥和第一密钥中对应的字节提取第二token和第一token并进行比对,根据比对的结果从第二密钥中得到第三token;
当所述第三token与所述第一token一致时,验证通过。
2.根据权利要求1所述的方法,其特征在于,
所述向客户端下发第一token的步骤之前:还包括:
获取所述网络属性信息,根据所述网络属性信息形成变量;其中,所述变量包括客户端与服务器在交互中形成的客户端变量和主机变量;
将所述客户端变量和所述主机变量形成组合字符串,并通过加密算法处理,得到原始加密字符串;
对所述原始加密字符串进行跳位截取,并截取组合得到第一token。
3.根据权利要求2所述的方法,其特征在于,
所述客户端变量包括在接收客户端的启动请求时,获取客户端唯一标识、实时上报的网络标识及时间戳;
所述主机变量包括根据实时运行环境时的所产生的主机时间戳、主机编号和主机网络标识。
4.根据权利要求3所述的方法,其特征在于,
所述根据所述客户端的网络属性信息形成第一密钥的步骤,包括:
根据所述客户端的唯一标识和实时上报的网络标识组成网络属性信息;
利用所述网络属性信息形成第一密钥。
5.根据权利要求4所述的方法,其特征在于,
所述将所述第一token保存在所述第一密钥中的步骤之后,还包括:
对所述第一密钥进行加密。
6.根据权利要求1所述的方法,其特征在于,
所述接收客户端发送的支付请求,从所述支付请求中提取第二token的步骤,包括:
接收所述客户端发送的支付请求,获取所述支付请求中的加密字符串;
对所述加密字符串进行解密,得到支付信息字符串;
从所述支付信息字符串中提取第二token。
7.根据权利要求1所述的方法,其特征在于,
所述验证通过的步骤之后,还包括:
向所述客户端发送合法通知,并根据所述合法通知,向支付渠道查询所述客户端的支付处理结果;其中,所述合法通知是验证通过后所形成的,其包括所述支付请求对应的待支付参数;
当查询得到支付处理成功的结果,向所述客户端发出所述支付请求的支付处理成功的通知。
8.根据权利要求7所述的方法,其特征在于,
所述根据所述合法通知,向支付渠道查询所述客户端的支付处理结果的步骤,包括:
根据所述合法通知,提取对应的待支付参数;
利用所述待支付参数向支付渠道轮询对应客户端的支付处理结果。
9.根据权利要求7所述的方法,其特征在于,还包括:
当发出与所述支付请求对应的支付处理成功的通知之后,重新生成第一token。
10.根据权利要求9所述的方法,其特征在于,还包括:
当重新生成的第一token的生成时长超出预设时长,且未接收到所述客户端发送的支付请求时,重新形成第一token。
11.根据权利要求1所述的方法,其特征在于,还包括:
当所述第三token与所述第一token不一致时,向对应客户端发送中止执行支付处理的指令。
12.一种信息验证装置,其特征在于,包括:
保存模块,用于向客户端下发第一token,及根据所述客户端的网络属性信息形成第一密钥,将所述第一token保存在所述第一密钥中;其中,所述第一token为对所述网络属性信息的变量截取组合得到的;
提取模块,用于接收所述客户端发送的支付请求,从所述支付请求中提取第二token,并将所述第二token保存至根据所述网络属性信息形成的第二密钥中,分别从所述第二密钥和第一密钥中对应的字节提取第二token和第一token并进行比对,根据比对的结果从第二密钥中得到第三token;
验证模块,用于当所述第三token与所述第一token一致时,验证通过。
13.一种服务器,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个计算机程序配置用于执行根据权利要求1至11任一项所述的信息验证方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1至11任一项所述的信息验证方法。
CN201910722627.0A 2019-08-06 2019-08-06 信息验证方法、装置、服务器及存储介质 Active CN110430193B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910722627.0A CN110430193B (zh) 2019-08-06 2019-08-06 信息验证方法、装置、服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910722627.0A CN110430193B (zh) 2019-08-06 2019-08-06 信息验证方法、装置、服务器及存储介质

Publications (2)

Publication Number Publication Date
CN110430193A CN110430193A (zh) 2019-11-08
CN110430193B true CN110430193B (zh) 2022-03-08

Family

ID=68414459

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910722627.0A Active CN110430193B (zh) 2019-08-06 2019-08-06 信息验证方法、装置、服务器及存储介质

Country Status (1)

Country Link
CN (1) CN110430193B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101500011A (zh) * 2009-03-13 2009-08-05 北京华大智宝电子系统有限公司 实现动态口令安全保护的方法及系统
CN104767613A (zh) * 2014-01-02 2015-07-08 腾讯科技(深圳)有限公司 签名验证方法、装置及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1992714B (zh) * 2005-12-29 2010-08-25 联想(北京)有限公司 基于可信计算平台的权限委托方法
US20100235882A1 (en) * 2009-03-13 2010-09-16 Gidah, Inc. Method and system for using tokens in a transaction handling system
CN103023657B (zh) * 2012-12-26 2015-04-15 武汉天喻信息产业股份有限公司 一种基于分布式的网络交易安全验证系统
CN103346885B (zh) * 2013-06-26 2016-02-24 飞天诚信科技股份有限公司 一种令牌设备的激活方法
US9350550B2 (en) * 2013-09-10 2016-05-24 M2M And Iot Technologies, Llc Power management and security for wireless modules in “machine-to-machine” communications
CN105450730A (zh) * 2015-11-05 2016-03-30 北京奇虎科技有限公司 一种处理客户端请求的方法和装置
CN107579991B (zh) * 2017-09-28 2021-03-02 奇安信科技集团股份有限公司 一种对客户端进行云端防护认证的方法、服务器和客户端

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101500011A (zh) * 2009-03-13 2009-08-05 北京华大智宝电子系统有限公司 实现动态口令安全保护的方法及系统
CN104767613A (zh) * 2014-01-02 2015-07-08 腾讯科技(深圳)有限公司 签名验证方法、装置及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Application of session login and one time password in fund transfer system using RSA algorithm;Gotimukul Venkatesh et al;《IEEE》;20171218;全文 *
基于密钥管理的移动支付安全解决方案;黄美璇;《河北软件职业技术学院学报》;20170331(第01期);全文 *

Also Published As

Publication number Publication date
CN110430193A (zh) 2019-11-08

Similar Documents

Publication Publication Date Title
CN112218294B (zh) 基于5g的物联网设备的接入方法、系统及存储介质
CN111814133A (zh) 移动应用统一登录方法及装置
JP2005012732A (ja) 機器認証システム、端末機器、認証サーバ、サービスサーバ、端末機器方法、認証方法、端末機器プログラム、認証プログラム、サービスサーバプログラム、及び記憶媒体
CN111726224A (zh) 一种基于量子保密通信的数据完整性快速认证方法、系统、终端及存储介质
CN114900338A (zh) 一种加密解密方法、装置、设备和介质
CN111104691A (zh) 敏感信息的处理方法、装置、存储介质及设备
CN114186199B (zh) 许可授权方法及装置
CN103746801A (zh) 一种智能手机或平板电脑上动态口令种子密钥保护方法
CN112861089A (zh) 授权认证的方法、资源服务器、资源用户端、设备和介质
CN104283686A (zh) 一种数字版权保护方法及其系统
CN111770087A (zh) 一种服务节点验证方法及相关设备
CN111241492A (zh) 一种产品多租户安全授信方法、系统及电子设备
CN111600864B (zh) 基于令牌认证多维度校验访问服务接口的方法和装置
CN110430193B (zh) 信息验证方法、装置、服务器及存储介质
CN112039857A (zh) 一种公用基础模块的调用方法和装置
CN111600701A (zh) 一种基于区块链的私钥存储方法、装置及存储介质
CN111740995A (zh) 一种授权认证方法及相关装置
CN116366289A (zh) 无人机遥感数据的安全监管方法及装置
CN115567223A (zh) 基于量子安全中间件的统一身份认证方法、装置及系统
CN113297563B (zh) 访问片上系统特权资源的方法、装置及片上系统
CN111523128B (zh) 信息保护方法、系统、电子设备及介质
CN112104646B (zh) 一种app数据接口安全性传输的方法及其系统
CN113792314A (zh) 一种安全访问方法、装置及系统
CN112688949B (zh) 一种访问方法、装置、设备及计算机可读存储介质
CN116798153B (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