CN116996287A - 数据交互管理方法、装置、终端设备及存储介质 - Google Patents
数据交互管理方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN116996287A CN116996287A CN202310955142.2A CN202310955142A CN116996287A CN 116996287 A CN116996287 A CN 116996287A CN 202310955142 A CN202310955142 A CN 202310955142A CN 116996287 A CN116996287 A CN 116996287A
- Authority
- CN
- China
- Prior art keywords
- data
- client
- server
- encrypted data
- interaction
- 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.)
- Pending
Links
- 230000003993 interaction Effects 0.000 title claims abstract description 288
- 238000007726 management method Methods 0.000 title claims abstract description 62
- 238000000034 method Methods 0.000 claims abstract description 54
- 230000002452 interceptive effect Effects 0.000 claims abstract description 53
- 230000004044 response Effects 0.000 claims description 45
- 238000012360 testing method Methods 0.000 claims description 33
- 230000008569 process Effects 0.000 abstract description 35
- 238000010586 diagram Methods 0.000 description 11
- 235000014510 cooky Nutrition 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000006399 behavior Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000013095 identification testing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- 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/12—Applying verification of the received information
-
- 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/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请公开了一种数据交互管理方法、装置、终端设备及存储介质,其数据交互管理方法包括:在接收到客户端发送的链接请求之后,生成随机标识,并将随机标识发送至客户端;接收客户端发送的交互数据和随机标识;对随机标识进行有效性检验,得到第一检验结果;根据第一检验结果和交互数据,对客户端作出响应。基于本申请方案,攻击者无法预测或伪造随机标识,能够有效地防止攻击者利用截获的交互数据重复发送,从而防止服务端受到放重攻击,提高网页数据交互过程的安全性。
Description
技术领域
本申请涉及数据传输技术领域,尤其涉及一种数据交互管理方法、装置、终端设备及存储介质。
背景技术
随着互联网发展,网页的数据传输安全性问题也越加被重视。网页数据交互过程面临的一个重要安全问题就是服务端容易受到放重攻击,放重攻击是指攻击者通过重复或延迟发送数据包,以达到欺骗或非法访问服务端的目的。服务端在受到放重攻击的情况下,有可能导致未经授权访问、数据泄露、身份冒充、会话劫持、拒绝服务攻击(DoS)、财务损失等危害。
也就是说,放重攻击会严重影响网页数据交互过程安全。
发明内容
本申请的主要目的在于提供一种数据交互管理方法、装置、终端设备及存储介质,旨在解决或改善放重攻击影响网页数据交互过程安全的问题。
为实现上述目的,本申请提供一种数据交互管理方法,所述数据交互管理方法应用于服务端,所述数据交互管理方法包括:
在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端;
接收所述客户端发送的交互数据和所述随机标识;
对所述随机标识进行有效性检验,得到第一检验结果;
根据所述第一检验结果和所述交互数据,对所述客户端作出响应。
可选地,所述服务端包括服务器和会话中心,所述生成随机标识,并将所述随机标识发送至所述客户端的步骤之前,还包括:
通过所述服务器基于预设的国密SM2算法生成公钥和私钥;
将所述公钥发送至所述客户端;
通过所述服务器接收所述客户端发送的第一加密数据和第二加密数据,其中,所述第一加密数据由所述客户端基于所述公钥对预先生成的密钥进行加密得到,所述密钥由所述客户端基于预设的国密SM4算法生成,所述第二加密数据由所述客户端基于所述密钥对预先生成的浏览器标识进行加密得到;
通过所述服务器基于所述私钥对所述第一加密数据进行解密,得到所述密钥;
通过所述服务器基于所述密钥对所述第二加密数据进行解密,得到所述浏览器标识;
通过所述会话中心记录所述浏览器标识;
所述生成随机标识,并将所述随机标识发送至所述客户端的步骤包括:
通过所述会话中心基于预设的国密SM3算法以及所述浏览器标识,生成所述随机标识,并将所述随机标识发送至所述客户端。
可选地,所述接收所述客户端发送的交互数据和所述随机标识的步骤包括:
通过所述服务器接收所述客户端发送的第三加密数据、第四加密数据,其中,所述第三加密数据由所述客户端基于所述密钥对获取的交互数据进行加密得到,所述第四加密数据由所述客户端基于所述公钥对所述随机标识进行加密得到;
通过所述服务器基于所述密钥对所述第三加密数据进行解密,得到所述交互数据;
通过所述服务器基于所述私钥对所述第四加密数据进行解密,得到所述随机标识。
可选地,所述通过所述服务器接收所述客户端发送的第三加密数据和第四加密数据的步骤包括:
通过所述服务器接收所述客户端发送的第三加密数据、第四加密数据以及第五加密数据,其中,所述第五加密数据由所述客户端基于所述公钥对预先计算的第一哈希值进行加密得到,所述第一哈希值由所述客户端基于所述国密SM3算法对所述交互数据进行计算得到;
所述通过所述服务器基于所述私钥对所述第四加密数据进行解密,得到所述随机标识的步骤之后,还包括:
通过所述服务器基于所述私钥对所述第五加密数据进行解密,得到所述第一哈希值;
所述根据所述第一检验结果和所述交互数据,对所述客户端作出响应的步骤包括:
通过所述服务器基于所述国密SM3算法对所述交互数据进行计算,得到第二哈希值;
对所述第一哈希值和所述第二哈希值进行一致性检验,得到第二检验结果;
若所述第一检验结果表明所述随机标识有效,且所述第二检验结果表明所述第一哈希值和所述第二哈希值一致,则根据所述交互数据,对所述客户端作出第一类响应;
若所述第一检验结果表明所述随机标识无效,或所述第二检验结果表明所述第一哈希值和所述第二哈希值不一致,则根据所述交互数据,对所述客户端作出第二类响应。
为实现上述目的,本申请提供一种数据交互管理方法,所述数据交互管理方法应用于客户端,所述数据交互管理方法包括:
在向服务端发送链接请求之后,接收所述服务端发送的随机标识;
获取交互数据;
将所述交互数据和所述随机标识发送至所述服务端,以供所述服务端对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。
可选地,所述接收所述服务端发送的随机标识的步骤之前,还包括:
接收所述服务端发送的公钥,其中,所述公钥以及对应的私钥由所述服务端基于预设的国密SM2算法生成;
基于预设的国密SM4算法生成密钥;
生成所述客户端的浏览器对应的浏览器标识;
基于所述公钥对所述密钥进行加密得到第一加密数据;
基于所述密钥对所述浏览器标识进行加密得到第二加密数据;
将所述第一加密数据和所述第二加密数据发送至所述服务端,以供所述服务端基于所述私钥对所述第一加密数据进行解密,得到所述密钥;基于所述密钥对所述第二加密数据进行解密,得到所述浏览器标识;记录所述浏览器标识;基于预设的国密SM3算法以及所述浏览器标识,生成所述随机标识,并将所述随机标识发送至所述客户端。
可选地,所述将所述交互数据和所述随机标识发送至所述服务端的步骤包括:
基于所述密钥对所述交互数据进行加密得到第三加密数据;
基于所述公钥对所述随机标识进行加密得到第四加密数据;
将所述第三加密数据、所述第四加密数据发送至所述服务端,以供所述服务端基于所述密钥对所述第三加密数据进行解密,得到所述交互数据;基于所述私钥对所述第四加密数据进行解密,得到所述随机标识。
可选地,所述基于所述公钥对所述随机标识进行加密得到第四加密数据步骤之后,还包括:
基于所述国密SM3算法对所述交互数据进行计算得到第一哈希值;
基于所述公钥对预先计算的第一哈希值进行加密得到第五加密数据;
所述将所述第三加密数据、所述第四加密数据发送至所述服务端的步骤包括:
将所述第三加密数据、所述第四加密数据以及所述第五加密数据发送至所述服务端,以供所述服务端基于所述私钥对所述第五加密数据进行解密,得到所述第一哈希值;通过所述服务器基于所述国密SM3算法对所述交互数据进行计算,得到第二哈希值;对所述第一哈希值和所述第二哈希值进行一致性检验,得到第二检验结果;若所述第一检验结果表明所述随机标识有效,且所述第二检验结果表明所述第一哈希值和所述第二哈希值一致,则根据所述交互数据,对所述客户端作出第一类响应;若所述第一检验结果表明所述随机标识无效,或所述第二检验结果表明所述第一哈希值和所述第二哈希值不一致,则根据所述交互数据,对所述客户端作出第二类响应。
本申请实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据交互管理程序,所述数据交互管理程序被所述处理器执行时实现如上所述的数据交互管理方法的步骤。
本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据交互管理程序,所述数据交互管理程序被处理器执行时实现如上所述的数据交互管理方法的步骤。
本申请实施例提出的数据交互管理方法、装置、终端设备及存储介质,通过在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端;接收所述客户端发送的交互数据和所述随机标识;对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。基于本申请方案,通过生成随机标识并将其发送至客户端,接收客户端返回的交互数据和随机标识,进一步对随机标识进行有效性检验,并根据检验结果和交互数据对客户端作出响应。攻击者无法预测或伪造随机标识,如此,能够有效地防止攻击者利用截获的交互数据重复发送,从而防止服务端受到放重攻击,提高网页数据交互过程的安全性。
附图说明
图1为本申请数据交互管理装置所属终端设备的功能模块示意图;
图2为本申请数据交互管理方法第一示例性实施例流程示意图;
图3为本申请数据交互管理方法涉及的数据交互拓扑图;
图4为本申请数据交互管理方法第五示例性实施例流程示意图;
图5为本申请数据交互管理方法涉及的数据交互管理全流程示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例的主要解决方案是:在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端;接收所述客户端发送的交互数据和所述随机标识;对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。基于本申请方案,通过生成随机标识并将其发送至客户端,接收客户端返回的交互数据和随机标识,进一步对随机标识进行有效性检验,并根据检验结果和交互数据对客户端作出响应。攻击者无法预测或伪造随机标识,如此,能够有效地防止攻击者利用截获的交互数据重复发送,从而防止服务端受到放重攻击,提高网页数据交互过程的安全性。
具体地,参照图1,图1为本申请数据交互管理装置所属终端设备的功能模块示意图。该数据交互管理装置可以为独立于终端设备的、能够进行数据交互管理的装置,其可以通过硬件或软件的形式承载于终端设备上。该终端设备可以为手机、平板电脑等具有数据处理功能的智能移动终端,还可以为具有数据处理功能的固定终端设备或服务器等。
在本实施例中,该数据交互管理装置所属终端设备至少包括输出模块110、处理器120、存储器130以及通信模块140。
存储器130中存储有操作系统以及数据交互管理程序,数据交互管理装置可以将链接请求、随机标识、交互数据、第一检验结果等一种或者多种信息存储于该存储器130中;输出模块110可为显示屏等。通信模块140可以包括WIFI模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。
其中,存储器130中的数据交互管理程序被处理器执行时实现以下步骤:
在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端;
接收所述客户端发送的交互数据和所述随机标识;
对所述随机标识进行有效性检验,得到第一检验结果;
根据所述第一检验结果和所述交互数据,对所述客户端作出响应。
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
通过所述服务器基于预设的国密SM2算法生成公钥和私钥;
将所述公钥发送至所述客户端;
通过所述服务器接收所述客户端发送的第一加密数据和第二加密数据,其中,所述第一加密数据由所述客户端基于所述公钥对预先生成的密钥进行加密得到,所述密钥由所述客户端基于预设的国密SM4算法生成,所述第二加密数据由所述客户端基于所述密钥对预先生成的浏览器标识进行加密得到;
通过所述服务器基于所述私钥对所述第一加密数据进行解密,得到所述密钥;
通过所述服务器基于所述密钥对所述第二加密数据进行解密,得到所述浏览器标识;
通过所述会话中心记录所述浏览器标识;
所述生成随机标识,并将所述随机标识发送至所述客户端的步骤包括:
通过所述会话中心基于预设的国密SM3算法以及所述浏览器标识,生成所述随机标识,并将所述随机标识发送至所述客户端。
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
通过所述服务器接收所述客户端发送的第三加密数据、第四加密数据,其中,所述第三加密数据由所述客户端基于所述密钥对获取的交互数据进行加密得到,所述第四加密数据由所述客户端基于所述公钥对所述随机标识进行加密得到;
通过所述服务器基于所述密钥对所述第三加密数据进行解密,得到所述交互数据;
通过所述服务器基于所述私钥对所述第四加密数据进行解密,得到所述随机标识。
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
通过所述服务器接收所述客户端发送的第三加密数据、第四加密数据以及第五加密数据,其中,所述第五加密数据由所述客户端基于所述公钥对预先计算的第一哈希值进行加密得到,所述第一哈希值由所述客户端基于所述国密SM3算法对所述交互数据进行计算得到;
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
通过所述服务器基于所述私钥对所述第五加密数据进行解密,得到所述第一哈希值;
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
通过所述服务器基于所述国密SM3算法对所述交互数据进行计算,得到第二哈希值;
对所述第一哈希值和所述第二哈希值进行一致性检验,得到第二检验结果;
若所述第一检验结果表明所述随机标识有效,且所述第二检验结果表明所述第一哈希值和所述第二哈希值一致,则根据所述交互数据,对所述客户端作出第一类响应;
若所述第一检验结果表明所述随机标识无效,或所述第二检验结果表明所述第一哈希值和所述第二哈希值不一致,则根据所述交互数据,对所述客户端作出第二类响应。
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
在向服务端发送链接请求之后,接收所述服务端发送的随机标识;
获取交互数据;
将所述交互数据和所述随机标识发送至所述服务端,以供所述服务端对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
接收所述服务端发送的公钥,其中,所述公钥以及对应的私钥由所述服务端基于预设的国密SM2算法生成;
基于预设的国密SM4算法生成密钥;
生成所述客户端的浏览器对应的浏览器标识;
基于所述公钥对所述密钥进行加密得到第一加密数据;
基于所述密钥对所述浏览器标识进行加密得到第二加密数据;
将所述第一加密数据和所述第二加密数据发送至所述服务端,以供所述服务端基于所述私钥对所述第一加密数据进行解密,得到所述密钥;基于所述密钥对所述第二加密数据进行解密,得到所述浏览器标识;记录所述浏览器标识;基于预设的国密SM3算法以及所述浏览器标识,生成所述随机标识,并将所述随机标识发送至所述客户端。
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
基于所述密钥对所述交互数据进行加密得到第三加密数据;
基于所述公钥对所述随机标识进行加密得到第四加密数据;
将所述第三加密数据、所述第四加密数据发送至所述服务端,以供所述服务端基于所述密钥对所述第三加密数据进行解密,得到所述交互数据;基于所述私钥对所述第四加密数据进行解密,得到所述随机标识。
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
基于所述国密SM3算法对所述交互数据进行计算得到第一哈希值;
基于所述公钥对预先计算的第一哈希值进行加密得到第五加密数据;
进一步地,存储器130中的数据交互管理程序被处理器执行时还实现以下步骤:
将所述第三加密数据、所述第四加密数据以及所述第五加密数据发送至所述服务端,以供所述服务端基于所述私钥对所述第五加密数据进行解密,得到所述第一哈希值;通过所述服务器基于所述国密SM3算法对所述交互数据进行计算,得到第二哈希值;对所述第一哈希值和所述第二哈希值进行一致性检验,得到第二检验结果;若所述第一检验结果表明所述随机标识有效,且所述第二检验结果表明所述第一哈希值和所述第二哈希值一致,则根据所述交互数据,对所述客户端作出第一类响应;若所述第一检验结果表明所述随机标识无效,或所述第二检验结果表明所述第一哈希值和所述第二哈希值不一致,则根据所述交互数据,对所述客户端作出第二类响应。
本实施例通过上述方案,具体通过在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端;接收所述客户端发送的交互数据和所述随机标识;对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。本实施例中,通过生成随机标识并将其发送至客户端,接收客户端返回的交互数据和随机标识,进一步对随机标识进行有效性检验,并根据检验结果和交互数据对客户端作出响应。攻击者无法预测或伪造随机标识,如此,能够有效地防止攻击者利用截获的交互数据重复发送,从而防止服务端受到放重攻击,提高网页数据交互过程的安全性。
参照图2,本申请数据交互管理方法第一实施例提供一种流程示意图,所述数据交互管理方法应用于服务端,所述数据交互管理方法包括:
步骤S10,在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端。
具体地,如图3所示,图3为本申请数据交互管理方法涉及的数据交互拓扑图,网页数据交互是指客户端与服务端进行的数据交互。其中,客户端通常是指用户使用的设备或软件,软件一般是指用户使用的网页浏览器,而设备一般是指带有网页浏览器的设备;服务端是指提供网页所需的数据和处理逻辑的设备或软件,本实施例的服务端包括服务器和会话中心,为了实现负载均衡、高可用性和扩展性等方面的优势,会话中心和服务器的连接关系可以是一对多。
当用户在浏览器中输入一个网址或通过点击链接访问一个网页时,浏览器就是典型的客户端。客户端负责发送HTTP(Hypertext Transfer Protocol,超文本传输协议)形式的链接请求到服务端,服务端会响应链接请求,给客户端返回HTML(Hypertext MarkupLanguage,超文本标记语言)、CSS(Cascading Style Sheets,层叠样式表)和JavaScript之类的网页代码,相应地,客户端接收并解析HTML、CSS和JavaScript之类的代码,将网页呈现给用户,并处理用户的交互行为。
同时,在服务端响应客户端的链接请求的时候,也会生成随机标识,并将随机标识发送给客户端。随机标识可以采用多种方式生成,具体取决于应用场景和安全需求,其生成方式可以是:①伪随机数生成器:使用伪随机数生成算法生成随机标识;②UUID(Universally Unique Identifier):UUID是一种128位的全局唯一标识符,通常表示为32个十六进制数,是一种在分布式环境中广泛使用的随机标识生成方法,确保随机标识在广域网络中的唯一性;③时间戳和随机数结合:将当前的时间戳和一部分随机数结合起来生成随机标识,时间戳保证了唯一性,而随机数增加了随机性;④加密哈希函数:使用加密哈希函数(如SHA-256)将一些随机数或其他数据哈希为固定长度的字符串作为随机标识,确保随机标识的唯一性和不可预测性。
相应地,客户端接收服务端发送的随机标识。可以理解的是,随机标识可以在服务端响应客户端的链接请求的同时发送,也可以在服务端响应客户端的链接请求的之后发送。
步骤S20,接收所述客户端发送的交互数据和所述随机标识。
具体地,在服务端响应客户端的链接请求之后,客户端可以解析服务端发送的HTML、CSS和JavaScript之类的代码,将网页呈现给用户。一旦网页加载完成,用户可以与网页进行交互,例如填写表单、点击按钮等。这些交互会触发新的HTTP形式的交互请求发送到服务器,交互请求之中包含有交互数据,从而开始新一轮的交互过程。可以理解的是,交互数据包括用户表单数据、点击事件数据等用于表征用户交互行为的数据。
同时,客户端也会将先前接收的随机标识一并发送至服务端。例如,客户端将随机标识作为交互请求的一个参数、头部或者请求体的一部分,随交互请求发送至服务端。
相应地,客户端接收交互请求,并获取其中的交互数据和随机标识。
步骤S30,对所述随机标识进行有效性检验,得到第一检验结果。
具体地,为了防止放重攻击,服务端对接收到的随机标识进行有效性检验,校验的方式取决于随机标识的生成方式和具体的应用场景,其校验方式可以是:①验证随机标识格式:服务端会验证收到的随机标识的格式是否符合预期,例如,如果采用UUID作为随机标识,服务端会验证UUID是否是一个合法的32位十六进制字符串;②检查随机标识是否有效:服务端会检查随机标识是否在预期范围内是唯一的,如果随机标识是由服务端生成的,通常会在数据库或者缓存中保存已使用的标识,每次收到新的标识时,服务端会查找数据库或缓存,确保该标识没有被使用过;③标识过期时间检查:如果随机标识有设置过期时间,服务端会检查当前时间是否在标识的有效时间范围内,如果过期,则认为该标识无效;④单次使用标识:如果随机标识设计为单次使用,服务端在验证标识有效性后会标记该随机标识为已使用,防止重复使用;⑤安全签名:为了增加验证标识的安全性,可以对随机标识进行安全签名或加密,客户端和服务端之间共享一个密钥,服务端使用密钥对标识进行签名,然后在接收到标识后使用相同的密钥进行验证,确保标识的完整性和真实性。
服务端在完成对随机标识的有效性检验之后,得到对应的第一检验结果。可以理解的是,第一检验结果可以是表明随机标识有效,或者是表明随机标识无效。
步骤S40,根据所述第一检验结果和所述交互数据,对所述客户端作出响应。
具体地,如果第一检验结果表明随机标识有效,则可知本次的交互请求不是重复请求,服务端会对交互请求中的交互数据进行相应的处理,并生成相应的响应数据返回给客户端。服务端在随机标识有效的情况下对客户端的响应为成功响应,即为第一类响应。
如果第一检验结果表明随机标识无效,则可知本次的交互请求很可能是重复请求,服务端会拒绝对交互请求中的交互数据进行处理,并返回认证失败的响应。服务端在随机标识无效的情况下对客户端的响应为失败响应,即为第二类响应。
本实施例通过上述方案,具体通过在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端;接收所述客户端发送的交互数据和所述随机标识;对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。基于本申请方案,通过生成随机标识并将其发送至客户端,接收客户端返回的交互数据和随机标识,进一步对随机标识进行有效性检验,并根据检验结果和交互数据对客户端作出响应。攻击者无法预测或伪造随机标识,如此,能够有效地防止攻击者利用截获的交互数据重复发送,从而防止服务端受到放重攻击,提高网页数据交互过程的安全性。
基于上述第一实施例提出本申请数据交互管理方法第二实施例,所述服务端包括服务器和会话中心,步骤S10,生成随机标识,并将所述随机标识发送至所述客户端的步骤之前,还包括:
步骤S001,通过所述服务器基于预设的国密SM2算法生成公钥和私钥。
步骤S002,将所述公钥发送至所述客户端。
步骤S003,通过所述服务器接收所述客户端发送的第一加密数据和第二加密数据,其中,所述第一加密数据由所述客户端基于所述公钥对预先生成的密钥进行加密得到,所述密钥由所述客户端基于预设的国密SM4算法生成,所述第二加密数据由所述客户端基于所述密钥对预先生成的浏览器标识进行加密得到。
步骤S004,通过所述服务器基于所述私钥对所述第一加密数据进行解密,得到所述密钥。
步骤S005,通过所述服务器基于所述密钥对所述第二加密数据进行解密,得到所述浏览器标识。
步骤S006,通过所述会话中心记录所述浏览器标识。
步骤S007,所述生成随机标识,并将所述随机标识发送至所述客户端的步骤包括。
步骤S008,通过所述会话中心基于预设的国密SM3算法以及所述浏览器标识,生成所述随机标识,并将所述随机标识发送至所述客户端。
具体地,客户端与服务端的数据交互过程如果采用明文传输的方式传输数据,则有可能会导致数据被攻击者截获。为此,本实施提出了一种在网页数据交互的过程中加密传输数据的方式。
结合图5,图5为本申请数据交互管理方法涉及的数据交互管理全流程示意图。服务端包括服务器和会话中心,随机标识T是由会话中心生成的。
在客户端发起链接请求之后,服务器会预设的国密SM2算法生成公钥P'和私钥P。其中,国密SM2算法是中国密码学国家商用密码算法的一种,它是一种非对称加密算法,用于数字签名和密钥交换,基于椭圆曲线密码学,采用椭圆曲线点运算实现加密和签名。国密SM2算法相比传统RSA和DSA算法,国密SM2算法具有更高的安全性和效率,其公钥长度为256比特,适用于轻量级设备和大规模应用。
然后,服务器将所述公钥P'发送至客户端,相应地,客户端接收公钥P'。
进一步地,客户端基于预设的国密SM4算法生成密钥K。其中,国密SM4算法是中国密码学国家商用密码算法的一种,它是一种对称分组加密算法,采用32轮的Feistel结构,密钥长度为128比特。国密SM4算法具有高效、安全可靠的特点,适用于各种数据加密和保护应用。
在生成密钥K的基础上,客户端进一步计算唯一的浏览器标识X。计算浏览器标识X的方式可以是:①基于User-Agent字段生成浏览器标识X:浏览器的User-Agent字段包含了浏览器的类型、版本号、操作系统等信息,可以根据这些信息生成唯一的浏览器标识X。②基于Cookie标识生成浏览器标识X:使用Cookie在客户端存储一个唯一的浏览器标识X,每次客户端发送请求时,都会携带这个Cookie,服务端可以根据该Cookie来识别唯一的浏览器。③基于IP地址标识生成浏览器标识X:使用客户端的IP地址作为唯一的浏览器标识X。④基于设备指纹(Fingerprinting)生成浏览器标识X:通过收集和分析客户端的硬件和软件特征,例如浏览器的配置、插件、操作系统、屏幕分辨率等,生成一个唯一的设备指纹作为浏览器标识X。
进一步地,客户端可以基于公钥P'对密钥K进行加密得到P'(K),即第一加密数据,并基于密钥K对浏览器标识X进行加密得到密文X,即第二加密数据。客户端将第一加密数据和第二加密数据发送至服务器,相应地,服务器接收第一加密数据和第二加密数据。
进一步地,服务器基于私钥P对第一加密数据进行解密,得到密钥K。然后,服务器基于密钥K对第二加密数据进行解密,得到浏览器标识X。服务器将浏览器标识X发送至会话中心,由会话中心记录浏览器标识X。
为了增加随机标识T的熵,会话中心可以获取当前的时间戳,基于预设的国密SM3算法对浏览器标识X和时间戳进行计算,生成随机标识T。其中,国密SM3算法是中国密码学国家商用密码算法的一种,用于实现哈希函数,可以理解的是,基于国密SM3算法生成的随机标识T是一种哈希值。
本实施例中,结合了对称加密和非对称加密的方式,确保客户端和服务端之间以加密方式传输数据,避免浏览器标识、密钥或者其他形式的数据被攻击者截获,提高了网页数据交互的安全性。
基于上述第二实施例提出本申请数据交互管理方法第三实施例,步骤S20,接收所述客户端发送的交互数据和所述随机标识进一步细化,包括:
步骤S21,通过所述服务器接收所述客户端发送的第三加密数据、第四加密数据,其中,所述第三加密数据由所述客户端基于所述密钥对获取的交互数据进行加密得到,所述第四加密数据由所述客户端基于所述公钥对所述随机标识进行加密得到。
步骤S22,通过所述服务器基于所述密钥对所述第三加密数据进行解密,得到所述交互数据。
步骤S23,通过所述服务器基于所述私钥对所述第四加密数据进行解密,得到所述随机标识。
具体地,为了避免客户端与服务端之间传输的数据被攻击者截获,本实施提出了一种在网页数据交互的过程中加密传输数据的方式。
结合图5,图5为本申请数据交互管理方法涉及的数据交互管理全流程示意图。客户端的网页加载完成之后,用户可以与网页进行交互,例如填写表单、点击按钮等。这些交互会触发新的HTTP形式的交互请求发送到服务器,交互请求之中包含有明文的交互数据D,从而开始新一轮的交互过程。可以理解的是,交互数据D包括用户表单数据、点击事件数据等用于表征用户交互行为的数据。
进一步地,客户端基于密钥K对交互数据D进行加密,得到第三加密数据,并且基于公钥P'对随机标识进行加密,得到第四加密数据。客户端将第三加密数据和第四加密数据合并发送至服务器,相应地,服务器接收第三加密数据和第四加密数据。
进一步地,服务器基于密钥K对第三加密数据进行解密,得到交互数据D。另外,服务器基于私钥P对第四加密数据进行解密,得到随机标识T。至此,服务器便得到了明文的交互数据D和随机标识T。
本实施例中,结合了哈希算法加密、对称加密以及非对称加密的方式,确保客户端和服务端之间以加密方式传输数据,避免交互数据、交互数据的哈希值、随机标识或者其他形式的数据被攻击者截获,提高了网页数据交互的安全性。
基于上述第三实施例提出本申请数据交互管理方法第四实施例,步骤S21,通过所述服务器接收所述客户端发送的第三加密数据和第四加密数据进一步细化,包括:
步骤S211,通过所述服务器接收所述客户端发送的第三加密数据、第四加密数据以及第五加密数据,其中,所述第五加密数据由所述客户端基于所述公钥对预先计算的第一哈希值进行加密得到,所述第一哈希值由所述客户端基于所述国密SM3算法对所述交互数据进行计算得到。
步骤S23,通过所述服务器基于所述私钥对所述第四加密数据进行解密,得到所述随机标识之后,还包括:
步骤S24,通过所述服务器基于所述私钥对所述第五加密数据进行解密,得到所述第一哈希值。
步骤S40,根据所述第一检验结果和所述交互数据,对所述客户端作出响应进一步细化,包括:
步骤S41,通过所述服务器基于所述国密SM3算法对所述交互数据进行计算,得到第二哈希值。
步骤S42,对所述第一哈希值和所述第二哈希值进行一致性检验,得到第二检验结果。
步骤S43,若所述第一检验结果表明所述随机标识有效,且所述第二检验结果表明所述第一哈希值和所述第二哈希值一致,则根据所述交互数据,对所述客户端作出第一类响应。
步骤S44,若所述第一检验结果表明所述随机标识无效,或所述第二检验结果表明所述第一哈希值和所述第二哈希值不一致,则根据所述交互数据,对所述客户端作出第二类响应。
具体地,为了避免客户端与服务端之间传输的交互数据被攻击者篡改,本实施提出了一种在网页数据交互的过程中加密传输数据的方式。
结合图5,图5为本申请数据交互管理方法涉及的数据交互管理全流程示意图。客户端的网页加载完成之后,用户可以与网页进行交互,例如填写表单、点击按钮等。这些交互会触发新的HTTP形式的交互请求发送到服务器,交互请求之中包含有明文的交互数据D,从而开始新一轮的交互过程。可以理解的是,交互数据D包括用户表单数据、点击事件数据等用于表征用户交互行为的数据。
客户端基于国密SM3算法对交互数据D进行计算得到第一哈希值M,并使用公钥P'对第一哈希值M进行加密得到第五加密数据,第四加密数据、第五加密数据可合并表示为图5的(M|T)。客户端将第三加密数据、第四加密数据、第五加密数据合并发送至服务器,相应地,服务器接收第三加密数据、第四加密数据、第五加密数据。
进一步地,服务器基于密钥K对第三加密数据进行解密得到交互数据D,基于私钥P对第四加密数据进行解密得到随机标识T,基于私钥P对第五加密数据进行解密得到第一哈希值M。
然后,服务器基于国密SM3算法对交互数据D进行计算,得到第二哈希值M'。服务器将第一哈希值M和第二哈希值M'进行一致性检验,得到第二检验结果。可以理解的是,第二检验结果可以表明M和M'是否一致。如果M和M'一致,则说明交互数据D未被篡改;如果M和M'不一致,则说明交互数据D很有可能已被篡改。
此外,本实施例还提供了基于第一检验结果和第二检验结果的双条件判断,以确保网页数据交互过程的安全性。具体地,如果第一检验结果表明随机标识T有效,且第二检验结果表明第一哈希值M和第二哈希值M'一致,则说明放重攻击风险较低,且交互数据D未被篡改,此时服务端可以对客户端作出第一类响应,即成功响应;如果第一检验结果表明随机标识T无效,或第二检验结果表明第一哈希值M和第二哈希值M'不一致,则说明放重攻击风险较高,或交互数据D已被篡改,此时服务端可以对客户端作出第二类响应,即失败响应。
本实施例中,结合了哈希算法加密、对称加密以及非对称加密的方式,确保客户端和服务端之间以加密方式传输数据,避免交互数据、交互数据的哈希值、随机标识或者其他形式的数据被攻击者截获,提高了网页数据交互的安全性。同时,结合了哈希值检验和随机标识检验的方式,确保交互数据未被篡改,且放重攻击风险较低的情况下,服务端才对客户端的交互请求作出成功响应,进一步提高了网页数据交互的安全性。
参照图4,本申请数据交互管理方法第五实施例提供一种流程示意图,所述数据交互管理方法应用于客户端,所述数据交互管理方法包括:
步骤A10,在向服务端发送链接请求之后,接收所述服务端发送的随机标识。
具体地,如图3所示,网页数据交互是指客户端与服务端进行的数据交互。其中,客户端通常是指用户使用的设备或软件,软件一般是指用户使用的网页浏览器,而设备一般是指带有网页浏览器的设备;服务端是指提供网页所需的数据和处理逻辑的设备或软件,本实施例的服务端包括服务器和会话中心,为了实现负载均衡、高可用性和扩展性等方面的优势,会话中心和服务器的连接关系可以是一对多。
当用户在浏览器中输入一个网址或通过点击链接访问一个网页时,浏览器就是典型的客户端。客户端负责发送HTTP形式的链接请求到服务端,服务端会响应链接请求,给客户端返回HTML、CSS和JavaScript之类的网页代码,相应地,客户端接收并解析HTML、CSS和JavaScript之类的代码,将网页呈现给用户,并处理用户的交互行为。
同时,在服务端响应客户端的链接请求的时候,也会生成随机标识,并将随机标识发送给客户端。随机标识可以采用多种方式生成,具体取决于应用场景和安全需求,其生成方式可以是:①伪随机数生成器:使用伪随机数生成算法生成随机标识;②UUID:UUID是一种128位的全局唯一标识符,通常表示为32个十六进制数,是一种在分布式环境中广泛使用的随机标识生成方法,确保随机标识在广域网络中的唯一性;③时间戳和随机数结合:将当前的时间戳和一部分随机数结合起来生成随机标识,时间戳保证了唯一性,而随机数增加了随机性;④加密哈希函数:使用加密哈希函数(如SHA-256)将一些随机数或其他数据哈希为固定长度的字符串作为随机标识,确保随机标识的唯一性和不可预测性。
相应地,客户端接收服务端发送的随机标识。可以理解的是,随机标识可以在服务端响应客户端的链接请求的同时发送,也可以在服务端响应客户端的链接请求的之后发送。
步骤A20,获取交互数据。
具体地,在服务端响应客户端的链接请求之后,客户端可以解析服务端发送的HTML、CSS和JavaScript之类的代码,将网页呈现给用户。一旦网页加载完成,用户可以与网页进行交互,例如填写表单、点击按钮等。客户端会获取用户交互动作产生的交互数据,交互数据包括用户表单数据、点击事件数据等用于表征用户交互行为的数据。
步骤A30,将所述交互数据和所述随机标识发送至所述服务端,以供所述服务端对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。
具体地,用户交互会触发新的HTTP形式的交互请求发送到服务器,交互请求之中包含有交互数据和随机标识,从而开始新一轮的交互过程。可以理解的是,客户端可以将随机标识作为交互请求的一个参数、头部或者请求体的一部分,随交互请求发送至服务端。
相应地,客户端接收交互请求,并获取其中的交互数据和随机标识。
为了防止放重攻击,服务端对接收到的随机标识进行有效性检验,校验的方式取决于随机标识的生成方式和具体的应用场景,其校验方式可以是:①验证随机标识格式:服务端会验证收到的随机标识的格式是否符合预期,例如,如果采用UUID作为随机标识,服务端会验证UUID是否是一个合法的32位十六进制字符串;②检查随机标识是否有效:服务端会检查随机标识是否在预期范围内是唯一的,如果随机标识是由服务端生成的,通常会在数据库或者缓存中保存已使用的标识,每次收到新的标识时,服务端会查找数据库或缓存,确保该标识没有被使用过;③标识过期时间检查:如果随机标识有设置过期时间,服务端会检查当前时间是否在标识的有效时间范围内,如果过期,则认为该标识无效;④单次使用标识:如果随机标识设计为单次使用,服务端在验证标识有效性后会标记该随机标识为已使用,防止重复使用;⑤安全签名:为了增加验证标识的安全性,可以对随机标识进行安全签名或加密,客户端和服务端之间共享一个密钥,服务端使用密钥对标识进行签名,然后在接收到标识后使用相同的密钥进行验证,确保标识的完整性和真实性。
服务端在完成对随机标识的有效性检验之后,得到对应的第一检验结果。可以理解的是,第一检验结果可以是表明随机标识有效,或者是表明随机标识无效。
如果第一检验结果表明随机标识有效,则可知本次的交互请求不是重复请求,服务端会对交互请求中的交互数据进行相应的处理,并生成相应的响应数据返回给客户端。服务端在随机标识有效的情况下对客户端的响应为成功响应,即为第一类响应。
如果第一检验结果表明随机标识无效,则可知本次的交互请求很可能是重复请求,服务端会拒绝对交互请求中的交互数据进行处理,并返回认证失败的响应。服务端在随机标识无效的情况下对客户端的响应为失败响应,即为第二类响应。
本实施例通过上述方案,具体通过在向服务端发送链接请求之后,接收所述服务端发送的随机标识;获取交互数据;将所述交互数据和所述随机标识发送至所述服务端,以供所述服务端对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。本实施例中,客户端接收服务端发送的随机标识,并将获取的交互数据和随机标识发送至服务端,以供服务端进一步对随机标识进行有效性检验,并根据检验结果和交互数据对客户端作出响应。攻击者无法预测或伪造随机标识,如此,能够有效地防止攻击者利用截获的交互数据重复发送,从而防止服务端受到放重攻击,提高网页数据交互过程的安全性。
基于上述第五实施例提出本申请数据交互管理方法第六实施例,步骤A10,接收所述服务端发送的随机标识之前,还包括:
步骤A01,接收所述服务端发送的公钥,其中,所述公钥以及对应的私钥由所述服务端基于预设的国密SM2算法生成。
步骤A02,基于预设的国密SM4算法生成密钥。
步骤A03,生成所述客户端的浏览器对应的浏览器标识。
步骤A04,基于所述公钥对所述密钥进行加密得到第一加密数据。
步骤A05,基于所述密钥对所述浏览器标识进行加密得到第二加密数据。
步骤A06,将所述第一加密数据和所述第二加密数据发送至所述服务端,以供所述服务端基于所述私钥对所述第一加密数据进行解密,得到所述密钥;基于所述密钥对所述第二加密数据进行解密,得到所述浏览器标识;记录所述浏览器标识;基于预设的国密SM3算法以及所述浏览器标识,生成所述随机标识,并将所述随机标识发送至所述客户端。
具体地,客户端与服务端的数据交互过程如果采用明文传输的方式传输数据,则有可能会导致数据被攻击者截获。为此,本实施提出了一种在网页数据交互的过程中加密传输数据的方式。
结合图5,图5为本申请数据交互管理方法涉及的数据交互管理全流程示意图。服务端包括服务器和会话中心,随机标识T是由会话中心生成的。
在客户端发起链接请求之后,服务器会预设的国密SM2算法生成公钥P'和私钥P。其中,国密SM2算法是中国密码学国家商用密码算法的一种,它是一种非对称加密算法,用于数字签名和密钥交换,基于椭圆曲线密码学,采用椭圆曲线点运算实现加密和签名。国密SM2算法相比传统RSA和DSA算法,国密SM2算法具有更高的安全性和效率,其公钥长度为256比特,适用于轻量级设备和大规模应用。
然后,服务器将所述公钥P'发送至客户端,相应地,客户端接收公钥P'。
进一步地,客户端基于预设的国密SM4算法生成密钥K。其中,国密SM4算法是中国密码学国家商用密码算法的一种,它是一种对称分组加密算法,采用32轮的Feistel结构,密钥长度为128比特。国密SM4算法具有高效、安全可靠的特点,适用于各种数据加密和保护应用。
在生成密钥K的基础上,客户端进一步计算唯一的浏览器标识X。计算浏览器标识X的方式可以是:①基于User-Agent字段生成浏览器标识X:浏览器的User-Agent字段包含了浏览器的类型、版本号、操作系统等信息,可以根据这些信息生成一个较为唯一的浏览器标识X。②基于Cookie标识生成浏览器标识X:使用Cookie在客户端存储一个唯一的浏览器标识X,每次客户端发送请求时,都会携带这个Cookie,服务端可以根据该Cookie来识别唯一的浏览器。③基于IP地址标识生成浏览器标识X:使用客户端的IP地址作为唯一的浏览器标识X。④基于设备指纹(Fingerprinting)生成浏览器标识X:通过收集和分析客户端的硬件和软件特征,例如浏览器的配置、插件、操作系统、屏幕分辨率等,生成一个唯一的设备指纹作为浏览器标识X。
进一步地,客户端可以基于公钥P'对密钥K进行加密得到P'(K),即第一加密数据,并基于密钥K对浏览器标识X进行加密得到密文X,即第二加密数据。客户端将第一加密数据和第二加密数据发送至服务器,相应地,服务器接收第一加密数据和第二加密数据。
进一步地,服务器基于私钥P对第一加密数据进行解密,得到密钥K。然后,服务器基于密钥K对第二加密数据进行解密,得到浏览器标识X。服务器将浏览器标识X发送至会话中心,由会话中心记录浏览器标识X。
为了增加随机标识T的熵,会话中心可以获取当前的时间戳,基于预设的国密SM3算法对浏览器标识X和时间戳进行计算,生成随机标识T。其中,国密SM3算法是中国密码学国家商用密码算法的一种,用于实现哈希函数,可以理解的是,基于国密SM3算法生成的随机标识T是一种哈希值。
本实施例中,结合了对称加密和非对称加密的方式,确保客户端和服务端之间以加密方式传输数据,避免浏览器标识、密钥或者其他形式的数据被攻击者截获,提高了网页数据交互的安全性。
基于上述第六实施例提出本申请数据交互管理方法第七实施例,步骤A30,将所述交互数据和所述随机标识发送至所述服务端进一步细化,包括:
步骤A31,基于所述密钥对所述交互数据进行加密得到第三加密数据。
步骤A32,基于所述公钥对所述随机标识进行加密得到第四加密数据。
步骤A33,将所述第三加密数据、所述第四加密数据发送至所述服务端,以供所述服务端基于所述密钥对所述第三加密数据进行解密,得到所述交互数据;基于所述私钥对所述第四加密数据进行解密,得到所述随机标识。
具体地,为了避免客户端与服务端之间传输的数据被攻击者截获,本实施提出了一种在网页数据交互的过程中加密传输数据的方式。
结合图5,图5为本申请数据交互管理方法涉及的数据交互管理全流程示意图。客户端的网页加载完成之后,用户可以与网页进行交互,例如填写表单、点击按钮等。这些交互会触发新的HTTP形式的交互请求发送到服务器,交互请求之中包含有明文的交互数据D,从而开始新一轮的交互过程。可以理解的是,交互数据D包括用户表单数据、点击事件数据等用于表征用户交互行为的数据。
进一步地,客户端基于密钥K对交互数据D进行加密,得到第三加密数据,并且基于公钥P'对随机标识进行加密,得到第四加密数据。客户端将第三加密数据和第四加密数据合并发送至服务器,相应地,服务器接收第三加密数据和第四加密数据。
进一步地,服务器基于密钥K对第三加密数据进行解密,得到交互数据D。另外,服务器基于私钥P对第四加密数据进行解密,得到随机标识T。至此,服务器便得到了明文的交互数据D和随机标识T。
本实施例中,结合了哈希算法加密、对称加密以及非对称加密的方式,确保客户端和服务端之间以加密方式传输数据,避免交互数据、交互数据的哈希值、随机标识或者其他形式的数据被攻击者截获,提高了网页数据交互的安全性。
基于上述第七实施例提出本申请数据交互管理方法第八实施例,步骤A32,基于所述公钥对所述随机标识进行加密得到第四加密数据之后,还包括:
A34,基于所述国密SM3算法对所述交互数据进行计算得到第一哈希值;
A35,基于所述公钥对预先计算的第一哈希值进行加密得到第五加密数据;
A33,将所述第三加密数据、所述第四加密数据发送至所述服务端进一步细化,包括:
A331,将所述第三加密数据、所述第四加密数据以及所述第五加密数据发送至所述服务端,以供所述服务端基于所述私钥对所述第五加密数据进行解密,得到所述第一哈希值;通过所述服务器基于所述国密SM3算法对所述交互数据进行计算,得到第二哈希值;对所述第一哈希值和所述第二哈希值进行一致性检验,得到第二检验结果;若所述第一检验结果表明所述随机标识有效,且所述第二检验结果表明所述第一哈希值和所述第二哈希值一致,则根据所述交互数据,对所述客户端作出第一类响应;若所述第一检验结果表明所述随机标识无效,或所述第二检验结果表明所述第一哈希值和所述第二哈希值不一致,则根据所述交互数据,对所述客户端作出第二类响应。
具体地,为了避免客户端与服务端之间传输的交互数据被攻击者篡改,本实施提出了一种在网页数据交互的过程中加密传输数据的方式。
结合图5,图5为本申请数据交互管理方法涉及的数据交互管理全流程示意图。客户端的网页加载完成之后,用户可以与网页进行交互,例如填写表单、点击按钮等。这些交互会触发新的HTTP形式的交互请求发送到服务器,交互请求之中包含有明文的交互数据D,从而开始新一轮的交互过程。可以理解的是,交互数据D包括用户表单数据、点击事件数据等用于表征用户交互行为的数据。
客户端基于国密SM3算法对交互数据D进行计算得到第一哈希值M,并使用公钥P'对第一哈希值M进行加密得到第五加密数据,第四加密数据、第五加密数据可合并表示为图5的(M|T)。客户端将第三加密数据、第四加密数据、第五加密数据合并发送至服务器,相应地,服务器接收第三加密数据、第四加密数据、第五加密数据。
进一步地,服务器基于密钥K对第三加密数据进行解密得到交互数据D,基于私钥P对第四加密数据进行解密得到随机标识T,基于私钥P对第五加密数据进行解密得到第一哈希值M。
然后,服务器基于国密SM3算法对交互数据D进行计算,得到第二哈希值M'。服务器将第一哈希值M和第二哈希值M'进行一致性检验,得到第二检验结果。可以理解的是,第二检验结果可以表明M和M'是否一致。如果M和M'一致,则说明交互数据D未被篡改;如果M和M'不一致,则说明交互数据D很有可能已被篡改。
此外,本实施例还提供了基于第一检验结果和第二检验结果的双条件判断,以确保网页数据交互过程的安全性。具体地,如果第一检验结果表明随机标识T有效,且第二检验结果表明第一哈希值M和第二哈希值M'一致,则说明放重攻击风险较低,且交互数据D未被篡改,此时服务端可以对客户端作出第一类响应,即成功响应;如果第一检验结果表明随机标识T无效,或第二检验结果表明第一哈希值M和第二哈希值M'不一致,则说明放重攻击风险较高,或交互数据D已被篡改,此时服务端可以对客户端作出第二类响应,即失败响应。
本实施例中,结合了哈希算法加密、对称加密以及非对称加密的方式,确保客户端和服务端之间以加密方式传输数据,避免交互数据、交互数据的哈希值、随机标识或者其他形式的数据被攻击者截获,提高了网页数据交互的安全性。同时,结合了哈希值检验和随机标识检验的方式,确保交互数据未被篡改,且放重攻击风险较低的情况下,服务端才对客户端的交互请求作出成功响应,进一步确提高了网页数据交互的安全性。
参照图5,本申请数据交互管理方法第九实施例提供一种流程示意图。基于上述第一实施例至第八实施例,具体地:
客户端向服务端发起链接请求;
服务端的服务器接收链接请求,通过预设的国密SM2算法生成私钥P和公钥P',并将公钥P'返回给客户端;
客户端接收公钥P'后,通过预设的国密SM4算法生成密钥K;
同时,客户端计算出唯一的浏览器标识X,使用密钥K加密浏览器标识X,得到密文X;客户端使用公钥P'对密钥K进行加密,得到P'(K);
客户端将密文X和P'(K)传输给服务端的服务器;
服务器接收密文X和P'(K)后,通过私钥P解密P'(K),获得密钥K;通过密钥K解密密文X,得到浏览器标识X,并记录在会话中心中;
会话中心根据当前时间戳与浏览器标识X,通过国密SM3算法计算得到随机标识T,并将随机标识T返回给客户端;
客户端接收用户输入明文的交互数据D;通过SM3算法计算交互数据D的哈希值,得到M;使用密钥K对交互数据D进行加密得到D';使用公钥P'对M和随机标识T进行加密,得到(M|T);将D'与(M|T)发送至服务器;
服务器接收D'与(M|T),使用密钥K对D'进行解密得到D,通过SM3计算D得到M';同时,使用私钥P对(M|T)进行解密得到M和随机标识T;比对M'与M是否一致,如果一致则说明交互数据D未被篡改,如果不一致则说明交互数据D已被篡改;
服务器将随机标识T发送至会话中心;
会话中心接收随机标识T,验证随机标识T是否有效,如果随机标识T有效,则说明放重攻击风险低,如果随机标识T无效,则说明放重攻击风险高;
如果M'与M一致,且随机标识T有效,则由服务端对客户端的交互请求作出成功响应,同时,会话中心释放随机标识T;如果M'与M不一致,或随机标识T无效,则由服务端对客户端的交互请求作出失败响应。
本实施例中,结合了哈希算法加密、对称加密以及非对称加密的方式,确保客户端和服务端之间以加密方式传输数据,避免数据被攻击者截获,提高了网页数据交互的安全性。同时,结合了哈希值检验和随机标识检验的方式,确保交互数据未被篡改,且放重攻击风险较低的情况下,服务端才对客户端的交互请求作出成功响应,进一步提高了网页数据交互的安全性。
此外,本申请实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据交互管理程序,所述数据交互管理程序被所述处理器执行时实现如上所述的数据交互管理方法的步骤。
由于本数据交互管理程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有数据交互管理程序,所述数据交互管理程序被处理器执行时实现如上所述的数据交互管理方法的步骤。
由于本数据交互管理程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
相比现有技术,本申请实施例提出的数据交互管理方法、装置、终端设备及存储介质,通过在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端;接收所述客户端发送的交互数据和所述随机标识;对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。基于本申请方案,通过生成随机标识并将其发送至客户端,接收客户端返回的交互数据和随机标识,进一步对随机标识进行有效性检验,并根据检验结果和交互数据对客户端作出响应。攻击者无法预测或伪造随机标识,如此,能够有效地防止攻击者利用截获的交互数据重复发送,从而防止服务端受到放重攻击,提高网页数据交互过程的安全性。
需要说明的是,在本文中,术语“包括”“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术作出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本申请每个实施例的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种数据交互管理方法,其特征在于,所述数据交互管理方法应用于服务端,所述数据交互管理方法包括:
在接收到客户端发送的链接请求之后,生成随机标识,并将所述随机标识发送至所述客户端;
接收所述客户端发送的交互数据和所述随机标识;
对所述随机标识进行有效性检验,得到第一检验结果;
根据所述第一检验结果和所述交互数据,对所述客户端作出响应。
2.如权利要求1所述的数据交互管理方法,其特征在于,所述服务端包括服务器和会话中心,所述生成随机标识,并将所述随机标识发送至所述客户端的步骤之前,还包括:
通过所述服务器基于预设的国密SM2算法生成公钥和私钥;
将所述公钥发送至所述客户端;
通过所述服务器接收所述客户端发送的第一加密数据和第二加密数据,其中,所述第一加密数据由所述客户端基于所述公钥对预先生成的密钥进行加密得到,所述密钥由所述客户端基于预设的国密SM4算法生成,所述第二加密数据由所述客户端基于所述密钥对预先生成的浏览器标识进行加密得到;
通过所述服务器基于所述私钥对所述第一加密数据进行解密,得到所述密钥;
通过所述服务器基于所述密钥对所述第二加密数据进行解密,得到所述浏览器标识;
通过所述会话中心记录所述浏览器标识;
所述生成随机标识,并将所述随机标识发送至所述客户端的步骤包括:
通过所述会话中心基于预设的国密SM3算法以及所述浏览器标识,生成所述随机标识,并将所述随机标识发送至所述客户端。
3.如权利要求2所述的数据交互管理方法,其特征在于,所述接收所述客户端发送的交互数据和所述随机标识的步骤包括:
通过所述服务器接收所述客户端发送的第三加密数据、第四加密数据,其中,所述第三加密数据由所述客户端基于所述密钥对获取的交互数据进行加密得到,所述第四加密数据由所述客户端基于所述公钥对所述随机标识进行加密得到;
通过所述服务器基于所述密钥对所述第三加密数据进行解密,得到所述交互数据;
通过所述服务器基于所述私钥对所述第四加密数据进行解密,得到所述随机标识。
4.如权利要求3所述的数据交互管理方法,其特征在于,所述通过所述服务器接收所述客户端发送的第三加密数据和第四加密数据的步骤包括:
通过所述服务器接收所述客户端发送的第三加密数据、第四加密数据以及第五加密数据,其中,所述第五加密数据由所述客户端基于所述公钥对预先计算的第一哈希值进行加密得到,所述第一哈希值由所述客户端基于所述国密SM3算法对所述交互数据进行计算得到;
所述通过所述服务器基于所述私钥对所述第四加密数据进行解密,得到所述随机标识的步骤之后,还包括:
通过所述服务器基于所述私钥对所述第五加密数据进行解密,得到所述第一哈希值;
所述根据所述第一检验结果和所述交互数据,对所述客户端作出响应的步骤包括:
通过所述服务器基于所述国密SM3算法对所述交互数据进行计算,得到第二哈希值;
对所述第一哈希值和所述第二哈希值进行一致性检验,得到第二检验结果;
若所述第一检验结果表明所述随机标识有效,且所述第二检验结果表明所述第一哈希值和所述第二哈希值一致,则根据所述交互数据,对所述客户端作出第一类响应;
若所述第一检验结果表明所述随机标识无效,或所述第二检验结果表明所述第一哈希值和所述第二哈希值不一致,则根据所述交互数据,对所述客户端作出第二类响应。
5.一种数据交互管理方法,其特征在于,所述数据交互管理方法应用于客户端,所述数据交互管理方法包括:
在向服务端发送链接请求之后,接收所述服务端发送的随机标识;
获取交互数据;
将所述交互数据和所述随机标识发送至所述服务端,以供所述服务端对所述随机标识进行有效性检验,得到第一检验结果;根据所述第一检验结果和所述交互数据,对所述客户端作出响应。
6.如权利要求5所述的数据交互管理方法,其特征在于,所述接收所述服务端发送的随机标识的步骤之前,还包括:
接收所述服务端发送的公钥,其中,所述公钥以及对应的私钥由所述服务端基于预设的国密SM2算法生成;
基于预设的国密SM4算法生成密钥;
生成所述客户端的浏览器对应的浏览器标识;
基于所述公钥对所述密钥进行加密得到第一加密数据;
基于所述密钥对所述浏览器标识进行加密得到第二加密数据;
将所述第一加密数据和所述第二加密数据发送至所述服务端,以供所述服务端基于所述私钥对所述第一加密数据进行解密,得到所述密钥;基于所述密钥对所述第二加密数据进行解密,得到所述浏览器标识;记录所述浏览器标识;基于预设的国密SM3算法以及所述浏览器标识,生成所述随机标识,并将所述随机标识发送至所述客户端。
7.如权利要求6所述的数据交互管理方法,其特征在于,所述将所述交互数据和所述随机标识发送至所述服务端的步骤包括:
基于所述密钥对所述交互数据进行加密得到第三加密数据;
基于所述公钥对所述随机标识进行加密得到第四加密数据;
将所述第三加密数据、所述第四加密数据发送至所述服务端,以供所述服务端基于所述密钥对所述第三加密数据进行解密,得到所述交互数据;基于所述私钥对所述第四加密数据进行解密,得到所述随机标识。
8.如权利要求7所述的数据交互管理方法,其特征在于,所述基于所述公钥对所述随机标识进行加密得到第四加密数据步骤之后,还包括:
基于所述国密SM3算法对所述交互数据进行计算得到第一哈希值;
基于所述公钥对预先计算的第一哈希值进行加密得到第五加密数据;
所述将所述第三加密数据、所述第四加密数据发送至所述服务端的步骤包括:
将所述第三加密数据、所述第四加密数据以及所述第五加密数据发送至所述服务端,以供所述服务端基于所述私钥对所述第五加密数据进行解密,得到所述第一哈希值;通过所述服务器基于所述国密SM3算法对所述交互数据进行计算,得到第二哈希值;对所述第一哈希值和所述第二哈希值进行一致性检验,得到第二检验结果;若所述第一检验结果表明所述随机标识有效,且所述第二检验结果表明所述第一哈希值和所述第二哈希值一致,则根据所述交互数据,对所述客户端作出第一类响应;若所述第一检验结果表明所述随机标识无效,或所述第二检验结果表明所述第一哈希值和所述第二哈希值不一致,则根据所述交互数据,对所述客户端作出第二类响应。
9.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据交互管理程序,所述数据交互管理程序被所述处理器执行时实现如权利要求1-4或5-8中任一项所述的数据交互管理方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据交互管理程序,所述数据交互管理程序被处理器执行时实现如权利要求1-4或5-8中任一项所述的数据交互管理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310955142.2A CN116996287A (zh) | 2023-07-28 | 2023-07-28 | 数据交互管理方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310955142.2A CN116996287A (zh) | 2023-07-28 | 2023-07-28 | 数据交互管理方法、装置、终端设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116996287A true CN116996287A (zh) | 2023-11-03 |
Family
ID=88522737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310955142.2A Pending CN116996287A (zh) | 2023-07-28 | 2023-07-28 | 数据交互管理方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116996287A (zh) |
-
2023
- 2023-07-28 CN CN202310955142.2A patent/CN116996287A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108471432B (zh) | 防止网络应用程序接口被恶意攻击的方法 | |
CN108173662B (zh) | 一种设备的认证方法和装置 | |
CN113067699B (zh) | 基于量子密钥的数据共享方法、装置和计算机设备 | |
CN111211908B (zh) | 访问控制方法、系统、计算机设备和存储介质 | |
US20140298037A1 (en) | Method, apparatus, and system for securely transmitting data | |
TWI288552B (en) | Method for implementing new password and computer readable medium for performing the method | |
CN113691502B (zh) | 通信方法、装置、网关服务器、客户端及存储介质 | |
CN105681470B (zh) | 基于超文本传输协议的通信方法、服务器、终端 | |
CN110933078B (zh) | 一种h5未登录用户会话跟踪方法 | |
CN107517194B (zh) | 一种内容分发网络的回源认证方法和装置 | |
CN113473458B (zh) | 一种设备接入方法、数据传输方法和计算机可读存储介质 | |
CN113225352A (zh) | 一种数据传输方法、装置、电子设备及存储介质 | |
CN112566121B (zh) | 一种防止攻击的方法及服务器、存储介质 | |
CN114513339A (zh) | 一种安全认证方法、系统及装置 | |
CN111464532A (zh) | 信息加密方法及系统 | |
CN115766119A (zh) | 通信方法、装置、通信系统及存储介质 | |
CN110035035B (zh) | 一种单点登录的二次认证方法及系统 | |
CN114244508A (zh) | 数据加密方法、装置、设备及存储介质 | |
CN117834268A (zh) | 一种提升单包授权中认证过程安全性的方法及装置 | |
US20060031680A1 (en) | System and method for controlling access to a computerized entity | |
GB2488753A (en) | Encrypted communication | |
US20230179433A1 (en) | Systems and Methods for Distributed, Stateless, and Dynamic Browser Challenge Generation and Verification | |
KR100901279B1 (ko) | 챕 챌린지 메시지를 이용한 네트워크 액세스 인증 방법 및시스템. | |
CN105681364B (zh) | 一种基于增强绑定的IPv6移动终端抗攻击方法 | |
CN114745115A (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 |