CN111444445A - 一种数据传输方法、系统、计算机设备和可读存储介质 - Google Patents
一种数据传输方法、系统、计算机设备和可读存储介质 Download PDFInfo
- Publication number
- CN111444445A CN111444445A CN202010220252.0A CN202010220252A CN111444445A CN 111444445 A CN111444445 A CN 111444445A CN 202010220252 A CN202010220252 A CN 202010220252A CN 111444445 A CN111444445 A CN 111444445A
- Authority
- CN
- China
- Prior art keywords
- client
- fragments
- request
- server
- fragment
- 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
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000005540 biological transmission Effects 0.000 title claims abstract description 28
- 239000012634 fragment Substances 0.000 claims abstract description 260
- 238000013467 fragmentation Methods 0.000 claims abstract description 18
- 238000006062 fragmentation reaction Methods 0.000 claims abstract description 18
- 230000003993 interaction Effects 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 2
- 230000004044 response Effects 0.000 description 14
- 238000012544 monitoring process Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000007123 defense Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- 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
- 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)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种数据传输方法,所述方法包括:服务器接收客户端发送的查询请求;所述服务器将所述查询请求所请求的数据拆分成多个分片;所述服务器将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端;所述客户端根据所述查询请求和其余的每个所述分片的分片信息构建一个查询子请求,并将每个所述查询子请求发送至所述服务器;所述服务器将每个所述查询子请求所述请求的分片返回所述客户端。本发明还公开了一种数据传输系统、一种计算机设备和一种计算机可读存储介质。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种数据传输方法、系统、计算机设备和计算机可读存储介质。
背景技术
在当今的互联网场景下,不法分子经常会利用各种网络工具软件截获一些重要业务数据的查询结果,从而造成个人或者企业的私密信息泄露。
目前,常见的安全防御方法是利用各种加密算法对相关的查询结果进行加密,以防止信息被窃取后造成泄漏。
然而,发明人研究发现,现有技术中至少存在如下缺陷:现有技术中的已加密数据经常会被暴力破解或者相关的私钥信息被泄露,从而导致加密失效,造成大量信息被泄露。
针对现有技术中已加密数据经常会被暴力破解或者相关的私钥信息被泄露,从而导致加密失效并造成大量信息被泄露的缺陷,目前尚未提供有效的解决方案。
发明内容
本发明的目的在于提供了一种数据传输方法、系统、计算机设备和计算机可读存储介质,能够解决现有技术中已加密数据经常会被暴力破解或者相关的私钥信息被泄露,从而导致加密失效并造成大量信息被泄露的技术问题。
本发明的一个方面提供了一种数据传输方法,所述方法包括:服务器接收客户端发送的查询请求;所述服务器将所述查询请求所请求的数据拆分成多个分片;所述服务器将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端;所述客户端根据所述查询请求和其余的每个所述分片的分片信息构建一个查询子请求,并将每个所述查询子请求发送至所述服务器;所述服务器将每个所述查询子请求所请求的分片返回所述客户端。
可选地,在所述服务器将每个所述查询子请求所请求的分片返回所述客户端的步骤之后,所述方法还包括:在所述客户端接收到所有所述查询子请求所请求的分片之后,所述客户端将接收到的所有所述分片进行重组,得到重组数据;所述客户端计算所述重组数据的哈希值,作为第一哈希值;所述客户端获取所述服务器存储的所述查询请求所请求的数据的哈希值,作为第二哈希值;所述客户端比较所述第一哈希值和所述第二哈希值,且在比较一致时将所述重组数据作为所述查询请求所请求的数据。
可选地,所述服务器将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端的步骤包括,所述服务器将其中一个所述分片、该分片的位置标识以及其余的每个所述分片的分片信息返回所述客户端,其中,所述位置标识用于表征对应的分片在所述查询请求所请求的数据中的位置;所述服务器将每个所述查询子请求所请求的分片返回所述客户端的步骤包括,所述服务器将每个所述查询子请求所请求的分片和该分片的位置标识返回所述客户端;所述客户端将接收到的所有所述分片进行重组的步骤包括,所述客户端获取接收到每个所述分片的位置标识;所述客户端以获取到的所述位置标识的排列顺序作为组合顺序,将接收到的所有所述分片进行重组。
可选地,所述方法还包括:在所述第一哈希值和所述第二哈希值不一致时,所述客户端根据所述查询请求和其余的每个所述分片的分片信息构建一个新的查询子请求,并将每个所述新的查询子请求发送至所述服务器。
可选地,在所述服务器将所述查询请求所请求的数据拆分成多个分片的步骤之后,所述方法还包括:所述服务器将拆分得到的所有所述分片存储至缓存器,并删除本地存储的拆分得到的所有所述分片。
可选地,所述方法还包括:在所述第一哈希值和所述第二哈希值一致时,所述客户端将请求完成的通知发送至所述服务器;所述服务器删除所述缓存器中存储的拆分得到的所有所述分片。
可选地,所述服务器将所述查询请求所请求的数据拆分成多个分片的步骤包括:所述服务器解析所述查询请求以得到所述查询请求携带的URL;所述服务器获取预设的交互配置信息,其中,所述交互配置信息用于定义需要进行分片处理的数据;在所述交互配置信息中定义了所述URL所指向的数据时,所述服务器将所述URL所指向的数据拆分成多个分片。
本发明的另一个方面提供了一种数据传输系统,所述系统包括服务器和客户端,其中:所述服务器用于:接收客户端发送的查询请求;将所述查询请求所请求的数据拆分成多个分片;将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端;所述客户端用于:根据所述查询请求和其余的每个所述分片的分片信息构建一个查询子请求,并将每个所述查询子请求发送至所述服务器;所述服务器还用于:将每个所述查询子请求所请求的分片返回所述客户端。
可选地,所述客户端还用于:在所述客户端接收到所有所述查询子请求所请求的分片之后,将接收到的所有所述分片进行重组,得到重组数据;计算所述重组数据的哈希值,作为第一哈希值;获取所述服务器存储的所述查询请求所请求的数据的哈希值,作为第二哈希值;比较所述第一哈希值和所述第二哈希值,且在比较一致时将所述重组数据作为所述查询请求所请求的数据。
可选地,所述服务器在执行将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端的步骤时还用于,将其中一个所述分片、该分片的位置标识以及其余的每个所述分片的分片信息返回所述客户端,其中,所述位置标识用于表征对应的分片在所述查询请求所请求的数据中的位置;所述服务器在执行将每个所述查询子请求所请求的分片返回所述客户端的步骤时还用于,将每个所述查询子请求所请求的分片和该分片的位置标识返回所述客户端;所述客户端在执行将接收到的所有所述分片进行重组的步骤时还用于,获取每个所述分片的位置标识;以获取到的所述位置标识的排列顺序作为组合顺序,将接收到的所有所述分片进行重组。
本发明提供的数据传输方法,在客户端向服务器查询数据时,服务器并不会如现有技术那般直接将查询请求所请求的数据返回客户端,而是先将查询请求所请求的拆分为多个分片,并且为了响应该查询请求,服务器会向客户端返回其中一个分片和其余每个分片的分片信息,由于客户端尚未请求完成该查询请求所请求的所有数据,因此客户端会根据每个分片信息构建一个查询子请求,以依次向服务器查询其余的每个分片。本发明的服务器通过与客户端的数次交互分批返回这些分片,这样即便某次的分片被非法分子截获,非法分子也不会获取完整的查询结果,克服了现有技术中服务器返回给客户端的已加密数据经常会被暴力破解或者相关的私钥信息会被泄露,从而导致加密失效并造成大量信息被泄露的技术问题,实现了降低了信息被泄露的风险的技术效果。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示意性示出了根据本发明实施例的数据传输方法的流程图;
图2示意性示出了根据本发明实施例的数据传输方法的示意图;
图3示意性示出了根据本发明实施例的数据传输系统的框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
本发明的实施例提供了一种数据传输方法,该数据传输方法主要通过服务器和客户端之间的交互实现,在客户端向服务器请求数据时,发明人发现现有技术中服务器会将查询结果进行加密,并将已加密数据返回给客户端,然而发明人在利用现有技术实现数据查询的过程中,经研究发现:现有技术中服务器返回给客户端的已加密数据经常会被暴力破解或者相关的私钥信息会被泄露,从而导致加密失效并造成大量信息被泄露。基于此,发明人提出本实施例的数据传输方法,服务器将查询结果切割成多个分片,并通过与客户端的数次交互分批返回这些分片,这样即便某次的分片被非法分子截获,非法分子也不会获取完整的查询结果,降低了大量信息被泄露的风险。具体地,图1示意性示出了根据本发明实施例的数据传输方法的流程图,如图1所示,该数据传输方法可以包括步骤S1~步骤S5,其中:
步骤S1,服务器接收客户端发送的查询请求。
本实施例中,客户端会先向服务器发送一个查询请求,进而服务器接收该查询请求,其中,该查询请求可以为HTTP请求。
步骤S2,所述服务器将所述查询请求所请求的数据拆分成多个分片。
本实施例中,查询请求所请求的数据即为查询结果,多个指两个或两个以上。优选地,可以将任何查询请求所请求的数据均拆分成多个分片,以最大程度降低大量信息被泄露的风险。其中,可以将查询请求所请求的数据均分为多个分片,也可以是将查询请求所请求的数据分为不等的多个分片,本实施例对具体分片方法不做限定。
可选地,本实施例还可以只将部分查询请求的所请求的数据进行拆分,如在查询请求所请求的数据为敏感数据时,将该部分数据进行拆分。具体地,步骤S2可以包括步骤S21~步骤S23,其中:
步骤S21,所述服务器解析所述查询请求以得到所述查询请求携带的URL;
步骤S22,所述服务器获取预设的交互配置信息,其中,所述交互配置信息用于定义需要进行分片处理的数据;
步骤S23,在所述交互配置信息中定义了所述URL所指向的数据时,所述服务器将所述URL所指向的数据拆分成多个分片。
在查询请求中会携带一个URL(uniform resource locator,统一资源定位符),该URL指向的位置处存储的数据即为查询请求所请求的数据,如身份信息、财产信息或账单信息等。交互配置信息定义了哪些数据需要被分片处理,如身份信息、财产信息和企业内部邮件信息等。在交互配置信息定义了URL指向的数据时,表明查询请求所请求的数据需要被拆分,服务器即可将该数据拆分成多个分片。
步骤S3,所述服务器将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端。
针对客户端发送的查询请求,服务器会将拆分得到的所有分片中的某一个分片返回客户端,并且同时将其余的每个分片的分片信息一起返回客户端,以便客户端可以根据分片信息再次向服务器请求其余的分片。其中,分片信息记录了对应分片的长度和分片的存储位置。
步骤S4,所述客户端根据所述查询请求和其余的每个所述分片的分片信息构建一个查询子请求,并将每个所述查询子请求发送至所述服务器。
由于查询请求短链接的特性,服务器不可能基于一个查询请求,陆陆续续返回所有的分片,只能针对一个查询请求返回一个分片,因此,对于尚未返回的其余分片,客户端需要先生成对应查询请求(即本实施例中的查询子请求),再依次向服务器请求获取这些分片。
具体地,查询请求由3部分组成:请求方法URI协议/版本、请求头和请求正文。对于每一个查询子请求:请求方法URI协议/版本中包括的请求地址可以由分片信息中的分片的存储位置确定,其余与查询请求中的一致;由于请求头包含许多有关的客户端环境和请求正文的有用信息,例如,请求头可以声明浏览器所用的语言,请求正文的长度,因此对于请求正文的有用信息如请求正文的长度可以由分片信息中分片的长度确定,其余与查询请求中的一致;请求正文中可以包含客户提交的查询字符串信息,由于本次请求为获取数据,因此该查询子请求请求正文中可以与查询请求中的请求正文一致,即不包含任何数据。
例如,服务器将查询请求所请求的数据分成10个分片,在向客户端返回一个分片和其余9个分片的分片信息之后,客户端根据这些分片信息和查询请求生成9个查询子请求,这9个查询子请求用于请求上述的9个分片。
步骤S5,所述服务器将每个所述查询子请求所请求的分片返回所述客户端。
针对每一个查询子请求,服务器解析该查询子请求可以得到查询子请求中携带的分片的存储位置,根据该存储位置可以获取对应的分片,进而将该分片返回客户端。
可选地,在所述服务器将每个所述查询子请求所请求的分片返回所述客户端的步骤之后,所述方法还包括:
在所述客户端接收到所有所述查询子请求所请求的分片之后,所述客户端将接收到的所有所述分片进行重组,得到重组数据;
所述客户端计算所述重组数据的哈希值,作为第一哈希值;
所述客户端获取所述服务器存储的所述查询请求所请求的数据的哈希值,作为第二哈希值;
所述客户端比较所述第一哈希值和所述第二哈希值,且在比较一致时将所述重组数据作为所述查询请求所请求的数据。
由于客户端需要将最终的查询结果呈现给用户,因此在客户端接收到所有查询子请求所求的分片之后,需要将这些分片进程重组,得到完整的重组数据呈现给用户。其中,重组方法可以为:所述服务器将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端的步骤包括:所述服务器将其中一个所述分片、该分片的位置标识以及其余的每个所述分片的分片信息返回所述客户端,其中,所述位置标识用于表征对应的分片在所述查询请求所请求的数据中的位置;相应地,所述服务器将每个所述查询子请求所请求的分片返回所述客户端的步骤包括:所述服务器将每个所述查询子请求所请求的分片和该分片的位置标识返回所述客户端;所述客户端将接收到的所有所述分片进行重组的步骤包括:所述客户端获取每个所述分片的位置标识;所述客户端以获取到的所述位置标识的排列顺序作为组合顺序,将接收到的所有所述分片进行重组。
具体地,在服务器将查询请求所请求的数据拆分成多个分片时,服务器同时生成了每个分片的位置标识,如将查询请求所请求的数据依次拆分成分片1、分片2和分片3,分片1的位置标识1表征分片1位于第1位,分片2的位置标识2表征分片2位于第2位,分片3的位置标识3表征分片3位于第3位。然后,针对客户端发送查询请求,服务器会将其中一个分片、该分片的位置标识以及其余的每个分片的分片信息返回客户端,在服务器接收到客户端发送的查询子请求后,会将查询子请求所请求的分片和该分片的位置标识一起返回客户端,进一步,客户端可以根据这些位置标识对接收到的所有分片进行重组。如,结合上述示例,上述3个位置标识按照顺序排列可以为:位置标识1、位置标识2和位置标识3,对应的分片的排列顺序为分片1、分片2和分片3,然后将上述排列好的分片进行重组。
为了进一步确保重组数据即为查询请求所请求的数据,需要进行信息防窜访校验和信息完整性校验,也即将重组数据的哈希值和查询请求所请求的数据的哈希值进行比较,若二者一致,则认为本次数据传输成功,客户端即可将重组数据作为查询请求所请求的数据,然后可以将重组数据呈现给用户。
在所述第一哈希值和所述第二哈希值不一致时,所述客户端根据所述查询请求和其余的每个所述分片的分片信息构建一个新的查询子请求,并将每个所述新的查询子请求发送至所述服务器。也即,如发现重组数据并不是查询请求所请求的数据,比如重组数据相比对查询请求所请求的数据存在篡改或存在漏缺,则客户端可以重新构建新的查询子请求,并根据新的查询子请求向服务器查询对应的分片,直至得到正确的重组数据。
可选地,为了降低服务器的存储压力,还可以将拆分得到的分片存储至缓存器中,并删除服务器本地存储的对应分片。具体地,在所述服务器将所述查询请求所请求的数据拆分成多个分片的步骤之后,所述方法还包括:所述服务器将拆分得到的所有所述分片存储至缓存器,并删除本地存储的拆分得到的所有所述分片。
可选地,所述方法还包括:在所述第一哈希值和所述第二哈希值一致时,所述客户端将请求完成的通知发送至所述服务器;所述服务器删除所述缓存器中存储的拆分得到的所有所述分片。
本实施例中,在重组数据的哈希值与查询请求所请求的数据的哈希值一致时,客户端通知服务器本次查询请求已完成,服务器将缓存器中查询请求所请求的数据的所有分片的状态修改为请求已完成,且服务器定期将状态为请求已完成的所有分片清除,以减轻缓存器的存储压力。
本发明提供的数据传输方法,在客户端向服务器查询数据时,服务器并不会如现有技术那般直接将查询请求所请求的数据返回客户端,而是先将查询请求所请求的拆分为多个分片,并且为了响应该查询请求,服务器会向客户端返回其中一个分片和其余每个分片的分片信息,由于客户端尚未请求完成该查询请求所请求的所有数据,因此客户端会根据每个分片信息构建一个查询子请求,以依次向服务器查询其余的每个分片。本发明的服务器通过与客户端的数次交互分批返回这些分片,这样即便某次的分片被非法分子截获,非法分子也不会获取完整的查询结果,克服了现有技术中服务器返回给客户端的已加密数据经常会被暴力破解或者相关的私钥信息会被泄露,从而导致加密失效并造成大量信息被泄露的技术问题,实现了降低了信息被泄露的风险的技术效果。
图2示意性示出了根据本发明实施例的数据传输方法的示意图。
如图2所示,以查询请求为HTTP请求为例,客户端部分包括请求应答拦截器、请求处理器、请求监控进程、补偿监控进程和合并处理器等,服务器部分包括请求线程、切面配置(图2中的切入)、分片应答处理器、交互配置信息、切片处理器、分片组信息、分片回收处理器和Busines controller(代办业务请求的处理器)。客户端和服务器的交互过程如下:
对于客户端的HTTP请求,请求应答拦截器先将该HTTP请求拦截,然后将HTTP请求发送给请求处理器,请求处理器判断客户端是否是第一次发出该HTTP请求,若是,则直接通过AJAX(一种创建交互式网页应用的网页开发技术)技术向服务器发出该HTTP请求。服务器的请求线程接收该HTTP请求,并将该HTTP请求通过切面配置发送至分片应答处理器,分片应答处理器根据交互配置信息判断是否将该HTTP请求所请求的数据进行分片。其中,切面配置可以采用spring aop,用于开启或关闭分片应答处理器,只有在切面配置开启分片应答处理器时,切面配置才会将HTTP请求发送至该分片应答处理器。在分片应答处理器判定需要将该HTTP请求所请求的数据进行分片时,分片应答处理器会触发切片处理器,该切片处理器获取该HTTP请求所请求的数据,并将该HTTP请求所请求的数据分成多个分片(这些分片即为图2中的分片组信息)。由于针对本次的HTTP请求,服务器已将对应的数据分片处理,因此对于该HTTP请求的返回结果可以为拆分得到的分片中的其中一个分片和该分片的位置标识,并且为了便于客户端后续继续请求其余的分片,需要将其余分片中每个分片的分片信息一并返回客户端。另外,为了减轻服务器的缓存压力,服务器还可以将拆分得到的所有分片存储至外部的缓存器。对于尚未返回的其余分片,客户端的请求处理器需要生成对应的HTTP请求(本实施例中称为HTTP子请求),以依次请求完这些分片。请求监控进程用于监控请求处理器的执行情况,在请求监控进程监控到请求处理发送完所有的HTTP子请求并接收到相应的分片时,请求监控进程触发合并处理器合并所有的分片,合并处理器会根据分片的位置标识确定分片所处的位置,得到重组数据,并且还会为重组数据计算一个哈希值。客户端还会通过AJAX技术获取服务器上预先存储的HTTP请求所请求的数据的哈希值,并与重组数据的哈希值比较,在请求监控进程监控到重组数据的哈希值与HTTP请求所请求的数据的哈希值一致时,请求应答拦截器可以将重组数据作为HTTP响应返回,并且还可以通知服务器本次业务请求已完成,分片应答处理器将拆分得到的分片的状态修改为请求已完成,分片回收处理器监控分片的状态,定期将状态为请求已完成的所有分片清除,以减轻缓存器的存储压力。在请求监控进程监控到重组数据的哈希值与HTTP请求所请求的数据的哈希值不一致时,可以触发补偿监控进程,补偿监控进程通过请求处理器重新生成HTTP子请求,并依次向服务器发送HTTP子请求,以请求对应分片。。
本实施例通过将HTTP请求的查询结果切割多个分片,采用分片传输,避免了完整信息在网络传输过程中被黑客或非法组织恶意获取的风险;同时在HTTP的基础上包装新的应用协议,通过拦截器/切面的方式切入,不用修改服务端和客户端的业务逻辑代码,且基于配置方式开启或关闭相关安全服如分片应答处理器,支持针对不同的交互请求进行配置。
本发明的实施例提供了一种数据传输系统,该数据传输系统与上述实施例所述的数据传输方法相对应,相应的技术特征和技术效果在本实施例中不再详述,相关之处可参考上述实施例。具体地,图3示意性示出了根据本发明实施例的数据传输系统的框图,如图3所示,该数据传输系统可以包括服务器301和客户端302,其中:
所述服务器301用于:接收客户端302发送的查询请求;将所述查询请求所请求的数据拆分成多个分片;将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端302;
所述客户端302用于:根据所述查询请求和其余的每个所述分片的分片信息构建一个查询子请求,并将每个所述查询子请求发送至所述服务器301;
所述服务器301还用于:将每个所述查询子请求所请求的分片返回所述客户端302。
可选地,所述客户端还用于:在所述服务器将每个所述查询子请求所请求的分片返回所述客户端之后,且在所述客户端接收到所有所述查询子请求所请求的分片之后,将接收到的所有所述分片进行重组,得到重组数据;计算所述重组数据的哈希值,作为第一哈希值;获取所述服务器存储的所述查询请求所请求的数据的哈希值,作为第二哈希值;比较所述第一哈希值和所述第二哈希值,且在比较一致时将所述重组数据作为所述查询请求所请求的数据。
可选地,所述服务器在执行将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端的步骤时还用于,将其中一个所述分片、该分片的位置标识以及其余的每个所述分片的分片信息返回所述客户端,其中,所述位置标识用于表征对应的分片在所述查询请求所请求的数据中的位置;所述服务器在执行将每个所述查询子请求所请求的分片返回所述客户端的步骤时还用于,将每个所述查询子请求所请求的分片和该分片的位置标识返回所述客户端;所述客户端在执行将接收到的所有所述分片进行重组的步骤时还用于,获取每个所述分片的位置标识;以获取到的所述位置标识的排列顺序作为组合顺序,将接收到的所有所述分片进行重组。
可选地,所述客户端还用于:在所述第一哈希值和所述第二哈希值不一致时,根据所述查询请求和其余的每个所述分片的分片信息构建一个新的查询子请求,并将每个所述新的查询子请求发送至所述服务器。
可选地,所述服务器还用于:在所述服务器将所述查询请求所请求的数据拆分成多个分片之后,将拆分得到的所有所述分片存储至缓存器,并删除本地存储的拆分得到的所有所述分片。
可选地,所述客户端还用于:在所述第一哈希值和所述第二哈希值一致时,将请求完成的通知发送至所述服务器;所述服务器还用于:删除所述缓存器中存储的拆分得到的所有所述分片。
可选地,所述服务器在执行将所述查询请求所请求的数据拆分成多个分片的步骤时,还用于:解析所述查询请求以得到所述查询请求携带的URL;获取预设的交互配置信息,其中,所述交互配置信息用于定义需要进行分片处理的数据;在所述交互配置信息中定义了所述URL所指向的数据时,将所述URL所指向的数据拆分成多个分片。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种数据传输方法,其特征在于,所述方法包括:
服务器接收客户端发送的查询请求;
所述服务器将所述查询请求所请求的数据拆分成多个分片;
所述服务器将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端;
所述客户端根据所述查询请求和其余的每个所述分片的分片信息构建一个查询子请求,并将每个所述查询子请求发送至所述服务器;
所述服务器将每个所述查询子请求所请求的分片返回所述客户端。
2.根据权利要求1所述的方法,其特征在于,在所述服务器将每个所述查询子请求所请求的分片返回所述客户端的步骤之后,所述方法还包括:
在所述客户端接收到所有所述查询子请求所请求的分片之后,所述客户端将接收到的所有所述分片进行重组,得到重组数据;
所述客户端计算所述重组数据的哈希值,作为第一哈希值;
所述客户端获取所述服务器存储的所述查询请求所请求的数据的哈希值,作为第二哈希值;
所述客户端比较所述第一哈希值和所述第二哈希值,且在比较一致时将所述重组数据作为所述查询请求所请求的数据。
3.根据权利要求2所述的方法,其特征在于,
所述服务器将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端的步骤包括,所述服务器将其中一个所述分片、该分片的位置标识以及其余的每个所述分片的分片信息返回所述客户端,其中,所述位置标识用于表征对应的分片在所述查询请求所请求的数据中的位置;
所述服务器将每个所述查询子请求所请求的分片返回所述客户端的步骤包括,所述服务器将每个所述查询子请求所请求的分片和该分片的位置标识返回所述客户端;
所述客户端将接收到的所有所述分片进行重组的步骤包括,所述客户端获取每个所述分片的位置标识;所述客户端以获取到的所述位置标识的排列顺序作为组合顺序,将接收到的所有所述分片进行重组。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述第一哈希值和所述第二哈希值不一致时,所述客户端根据所述查询请求和其余的每个所述分片的分片信息构建一个新的查询子请求,并将每个所述新的查询子请求发送至所述服务器。
5.根据权利要求2所述的方法,其特征在于,在所述服务器将所述查询请求所请求的数据拆分成多个分片的步骤之后,所述方法还包括:
所述服务器将拆分得到的所有所述分片存储至缓存器,并删除本地存储的拆分得到的所有所述分片。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述第一哈希值和所述第二哈希值一致时,所述客户端将请求完成的通知发送至所述服务器;
所述服务器删除所述缓存器中存储的拆分得到的所有所述分片。
7.根据权利要求1所述的方法,其特征在于,所述服务器将所述查询请求所请求的数据拆分成多个分片的步骤包括:
所述服务器解析所述查询请求以得到所述查询请求携带的URL;
所述服务器获取预设的交互配置信息,其中,所述交互配置信息用于定义需要进行分片处理的数据;
在所述交互配置信息中定义了所述URL所指向的数据时,所述服务器将所述URL所指向的数据拆分成多个分片。
8.一种数据传输系统,其特征在于,所述系统包括服务器和客户端,其中:
所述服务器用于:接收客户端发送的查询请求;将所述查询请求所请求的数据拆分成多个分片;将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端;
所述客户端用于:根据所述查询请求和其余的每个所述分片的分片信息构建一个查询子请求,并将每个所述查询子请求发送至所述服务器;
所述服务器还用于:将每个所述查询子请求所请求的分片返回所述客户端。
9.根据权利要求8所述的系统,其特征在于,所述客户端还用于:
在所述客户端接收到所有所述查询子请求所请求的分片之后,将接收到的所有所述分片进行重组,得到重组数据;
计算所述重组数据的哈希值,作为第一哈希值;
获取所述服务器存储的所述查询请求所请求的数据的哈希值,作为第二哈希值;
比较所述第一哈希值和所述第二哈希值,且在比较一致时将所述重组数据作为所述查询请求所请求的数据。
10.根据权利要求9所述的系统,其特征在于,
所述服务器在执行将其中一个所述分片和其余的每个所述分片的分片信息返回所述客户端的步骤时还用于,将其中一个所述分片、该分片的位置标识以及其余的每个所述分片的分片信息返回所述客户端,其中,所述位置标识用于表征对应的分片在所述查询请求所请求的数据中的位置;
所述服务器在执行将每个所述查询子请求所请求的分片返回所述客户端的步骤时还用于,将每个所述查询子请求所请求的分片和该分片的位置标识返回所述客户端;
所述客户端在执行将接收到的所有所述分片进行重组的步骤时还用于,获取每个所述分片的位置标识;以获取到的所述位置标识的排列顺序作为组合顺序,将接收到的所有所述分片进行重组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010220252.0A CN111444445A (zh) | 2020-03-25 | 2020-03-25 | 一种数据传输方法、系统、计算机设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010220252.0A CN111444445A (zh) | 2020-03-25 | 2020-03-25 | 一种数据传输方法、系统、计算机设备和可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111444445A true CN111444445A (zh) | 2020-07-24 |
Family
ID=71654635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010220252.0A Pending CN111444445A (zh) | 2020-03-25 | 2020-03-25 | 一种数据传输方法、系统、计算机设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111444445A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112231501A (zh) * | 2020-10-20 | 2021-01-15 | 浙江大华技术股份有限公司 | 人像库的数据存储、检索方法及装置、存储介质 |
CN112905858A (zh) * | 2021-03-05 | 2021-06-04 | 北京中经惠众科技有限公司 | 节点关系图谱显示方法及装置、计算机设备和存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077074A (zh) * | 2012-12-26 | 2013-05-01 | 深圳先进技术研究院 | 一种三维空间数据并行调度方法和系统 |
CN103166992A (zh) * | 2011-12-14 | 2013-06-19 | 中国电信股份有限公司 | 应用于云存储的快速文件更新方法及系统 |
CN108108456A (zh) * | 2017-12-28 | 2018-06-01 | 重庆邮电大学 | 一种基于元数据的信息资源分布式查询方法 |
WO2018161478A1 (zh) * | 2017-03-09 | 2018-09-13 | 上海亿账通区块链科技有限公司 | 多区块链的分片处理方法、装置、服务器和存储介质 |
CN108573026A (zh) * | 2018-03-14 | 2018-09-25 | 上海数据交易中心有限公司 | 一种数据流通方法及装置、存储介质、服务器 |
CN109492017A (zh) * | 2018-09-18 | 2019-03-19 | 平安科技(深圳)有限公司 | 业务信息查询处理方法、系统、计算机设备和存储介质 |
CN110046178A (zh) * | 2018-01-17 | 2019-07-23 | 北京京东尚科信息技术有限公司 | 分布式数据查询的方法和装置 |
CN110096899A (zh) * | 2019-04-29 | 2019-08-06 | 腾讯科技(深圳)有限公司 | 一种数据查询方法及装置 |
CN110533450A (zh) * | 2019-07-17 | 2019-12-03 | 上海数据交易中心有限公司 | 数据流通方法及装置、存储介质、服务器 |
CN110856220A (zh) * | 2019-11-15 | 2020-02-28 | 深圳市东方拓宇科技有限公司 | 数据传输方法及终端 |
-
2020
- 2020-03-25 CN CN202010220252.0A patent/CN111444445A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103166992A (zh) * | 2011-12-14 | 2013-06-19 | 中国电信股份有限公司 | 应用于云存储的快速文件更新方法及系统 |
CN103077074A (zh) * | 2012-12-26 | 2013-05-01 | 深圳先进技术研究院 | 一种三维空间数据并行调度方法和系统 |
WO2018161478A1 (zh) * | 2017-03-09 | 2018-09-13 | 上海亿账通区块链科技有限公司 | 多区块链的分片处理方法、装置、服务器和存储介质 |
CN108108456A (zh) * | 2017-12-28 | 2018-06-01 | 重庆邮电大学 | 一种基于元数据的信息资源分布式查询方法 |
CN110046178A (zh) * | 2018-01-17 | 2019-07-23 | 北京京东尚科信息技术有限公司 | 分布式数据查询的方法和装置 |
CN108573026A (zh) * | 2018-03-14 | 2018-09-25 | 上海数据交易中心有限公司 | 一种数据流通方法及装置、存储介质、服务器 |
CN109492017A (zh) * | 2018-09-18 | 2019-03-19 | 平安科技(深圳)有限公司 | 业务信息查询处理方法、系统、计算机设备和存储介质 |
CN110096899A (zh) * | 2019-04-29 | 2019-08-06 | 腾讯科技(深圳)有限公司 | 一种数据查询方法及装置 |
CN110533450A (zh) * | 2019-07-17 | 2019-12-03 | 上海数据交易中心有限公司 | 数据流通方法及装置、存储介质、服务器 |
CN110856220A (zh) * | 2019-11-15 | 2020-02-28 | 深圳市东方拓宇科技有限公司 | 数据传输方法及终端 |
Non-Patent Citations (1)
Title |
---|
LPFUTURE: "thinkphp 构建子查询", pages 1 - 3, Retrieved from the Internet <URL:https://www.cnblogs.com/lpfuture/p/4688977.html> * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112231501A (zh) * | 2020-10-20 | 2021-01-15 | 浙江大华技术股份有限公司 | 人像库的数据存储、检索方法及装置、存储介质 |
CN112905858A (zh) * | 2021-03-05 | 2021-06-04 | 北京中经惠众科技有限公司 | 节点关系图谱显示方法及装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8302169B1 (en) | Privacy enhancements for server-side cookies | |
US10225255B1 (en) | Count-based challenge-response credential pairs for client/server request validation | |
JP6389895B2 (ja) | 要求によって供給される鍵を用いたデータセキュリティ | |
US20190253366A1 (en) | Method of and server for detecting associated web resources | |
US11985251B2 (en) | Data synchronization method and apparatus, computer device, and readable storage medium | |
US8626935B1 (en) | Identifying use of software applications | |
US10025811B2 (en) | Method and apparatus for deduplicating encrypted data | |
Trenwith et al. | Digital forensic readiness in the cloud | |
US20230328071A1 (en) | Method and device for securely accessing intranet application | |
US20130212665A1 (en) | Signing off from multiple domains accessible using single sign-on | |
WO2022068269A1 (zh) | 服务器的通信方法、装置、计算机设备和存储介质 | |
CN105956143B (zh) | 数据库访问方法及数据库代理节点 | |
US10484180B2 (en) | Digital data locker system providing enhanced security and protection for data storage and retrieval | |
CN107819579B (zh) | 一种用户请求的处理方法、服务器及计算机可读存储介质 | |
CN111444445A (zh) | 一种数据传输方法、系统、计算机设备和可读存储介质 | |
CN112308561A (zh) | 基于区块链的存证方法、系统、计算机设备和存储介质 | |
CN101179382A (zh) | 一种登录方法及系统 | |
US10200345B2 (en) | Electronic mail sender verification | |
CN107026828A (zh) | 一种基于互联网缓存的防盗链方法及互联网缓存 | |
CN107343028B (zh) | 一种基于http协议的通信方法及系统 | |
CN107276967B (zh) | 一种分布式系统及其登录验证方法 | |
US20190266210A1 (en) | Using cache and bloom filters for url lookups | |
CN111245774A (zh) | 资源请求处理方法、装置和系统 | |
CN116938492A (zh) | 一种网络安全防护方法、设备及存储介质 | |
CN110278204B (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220601 Address after: 518000 China Aviation Center 2901, No. 1018, Huafu Road, Huahang community, Huaqiang North Street, Futian District, Shenzhen, Guangdong Province Applicant after: Shenzhen Ping An medical and Health Technology Service Co.,Ltd. Address before: Room 12G, Area H, 666 Beijing East Road, Huangpu District, Shanghai 200001 Applicant before: PING AN MEDICAL AND HEALTHCARE MANAGEMENT Co.,Ltd. |
|
TA01 | Transfer of patent application right |