CN113206838A - 一种面向Web***的数据加密解密方法及*** - Google Patents

一种面向Web***的数据加密解密方法及*** Download PDF

Info

Publication number
CN113206838A
CN113206838A CN202110394186.3A CN202110394186A CN113206838A CN 113206838 A CN113206838 A CN 113206838A CN 202110394186 A CN202110394186 A CN 202110394186A CN 113206838 A CN113206838 A CN 113206838A
Authority
CN
China
Prior art keywords
data
encrypted
encryption
web
query
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.)
Granted
Application number
CN202110394186.3A
Other languages
English (en)
Other versions
CN113206838B (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.)
Wuhan University of Technology WUT
Original Assignee
Wuhan University of Technology WUT
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 Wuhan University of Technology WUT filed Critical Wuhan University of Technology WUT
Priority to CN202110394186.3A priority Critical patent/CN113206838B/zh
Publication of CN113206838A publication Critical patent/CN113206838A/zh
Application granted granted Critical
Publication of CN113206838B publication Critical patent/CN113206838B/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/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

面向Web***的数据加密解密方法及***:Web过滤器拦截客户端提交的数据提交HTTP请求,查询数据加密解密配置信息,确定提交的数据中哪些数据需要加密,调用密码组件对需要加密的数据进行加密,形成新的数据提交HTTP请求;Web过滤器拦截客户端提交的数据查询HTTP请求,查询数据加密解密配置信息,确定查询请求的查询数据中哪些数据需要加密,然后调用密码组件对需要加密的数据进行加密,形成新的数据查询HTTP请求;Web过滤器拦截Web***返回的HTTP响应,查询数据加密解密配置信息,确定HTTP响应中哪些数据需要解密,调用密码组件对需要解密的数据进行解密;可搜索数据先分词,然后对分词后的数据块进行加密。

Description

一种面向Web***的数据加密解密方法及***
技术领域
本发明属于信息安全技术领域,特别是一种面向Web***的数据加密解密方法及***。
背景技术
对于网络应用***,数据安全非常重要,对保存在应用***中的数据(如数据库中的数据)进行安全保护最有效的技术手段是对存储的数据加密,而在需要使用数据时再对加密的数据解密。
数据加密虽然是保护数据安全最有效的技术手段,但其在实际应用中存在以下问题:一是,目前已部署了各种大量的***,在这些已部署的***中加入数据加密、解密功能,这涉及代码的修改、***的重新部署,这对于很多***运行者来说是非常麻烦或困难的事;二是,密码技术是一项比较专业的技术,绝大部分技术人员不熟悉,熟悉密码技术的人员比较少,这增加了在***中增加数据加密、解密功能的难度;三是,涉及数据操作(如读、写)的代码(比如Web页面)通常很多,将数据加密解密代码分散到程序的不同地方、***的不同Web页面,这给数据加密、解密代码的维护增加了难度;四是,对不同的***要编写不同的加密解密代码,代码不能重用,造成了资源浪费;五是,数据加密可能会影响数据的可搜索性;六是,数据加密、解密通常会影响数据存储、获取的速度。
发明内容
本发明的目的是针对数据加密技术在Web***中应用存在的问题,提出相应的解决方案,这里所说Web***是通过Web技术提供预定应用或服务功能***。
针对本发明的目的,本发明提出的技术方案包括一种面向Web***的数据加密解密方法及相应的***。
本发明提出的面向Web***的数据加密解密方法具体如下。
Web过滤器拦截客户端(如浏览器)提交的数据提交HTTP请求,查询数据加密解密配置信息,确定提交的数据中哪些数据需要加密(比如FORM数据中的哪些数据是需要加密的,JSON数据中的哪些数据对象是需要加密的),然后调用密码组件对需要加密的数据进行加密处理(提交的数据中需加密的数据可以是多个不同的数据,比如,FORM中的不同字段,JSON中的不同数据对象),然后形成新的数据提交HTTP请求,并将新的数据提交HTTP请求传送到后续处理逻辑(处理组件)处理(比如保存到数据库);
Web过滤器拦截客户端提交的数据查询(搜索)HTTP请求,查询数据加密解密配置信息,确定数据查询HTTP请求中的查询数据中哪些数据需要加密的(即是否涉及针对加密数据的查询),然后调用密码组件对需要加密的数据进行加密处理(提交的数据查询HTTP请求中的查询数据中需加密的数据可以是多个不同的数据,比如,FORM中的不同字段,JSON中的不同数据对象),然后形成新的数据查询HTTP请求,并将新的数据查询HTTP请求传送到后续处理逻辑(处理组件)处理(比如对保存在数据库中的数据进行查询、搜索);
Web过滤器拦截Web***返回的HTTP响应,查询数据加密解密配置信息,确定HTTP响应中哪些数据需要解密(即哪些是被加密的数据),然后调用密码组件对需要解密的数据进行解密处理(响应中需解密的数据可以是多个不同的数据,比如,FORM中的不同字段,JSON中的不同数据对象),然后形成新的HTTP响应,并将新的HTTP响应返回;
所述Web过滤器是(Web***的)Web服务端中位于HTTP请求和响应传输通道中的、对数据进行加密解密处理的组件(比如采用Web服务器或Web运行环境的Web过滤器技术开发);
所述密码组件是提供数据加密、解密功能的组件(软件组件或软硬件结合的组件);
所述数据加密解密配置信息中设置有与数据加密、解密处理有关的信息。
对于以上所述面向Web***的数据加密解密方法,所述Web过滤器通过查询数据加密解密配置信息(如通过配置信息中设定的HTTP请求URL及设定的HTTP请求中的数据字段)确定:哪些HTTP请求中包含有需要进行加密处理的数据以及HTTP请求中的哪些数据需要进行加密处理,哪些数据查询HTTP请求需要对查询请求中的查询数据进行加密处理以及数据查询HTTP请求中的哪些查询数据需要进行加密处理(即哪些数据查询HTTP请求以及哪些查询数据涉及针对加密数据的查询),哪些HTTP请求所对应的HTTP响应中包含加密的数据需要对数据进行解密处理以及响应中的哪些数据需要进行解密处理(即哪些HTTP响应需要解密处理以及响应中的哪些数据是被加密的数据,即密文数据)。
对于以上所述面向Web***的数据加密解密方法,对于数据提交HTTP请求或数据查询HTTP请求中的需要加密的数据,所述Web过滤器进一步通过数据加密解密配置信息确定需加密的数据是否是可搜索的(即加密后的数据是否被查询、搜索,或者是否是针对加密后的可搜索数据的查询、搜索,针对加密后的可搜索数据的查询数据也是可搜索的数据,也需进行相应的分词、加密处理),若不是,则Web过滤器调用密码组件对需要加密的非可搜索数据进行加密处理,若是,则Web过滤器调用分词组件对需加密的可搜索数据进行分词处理,然后调用密码组件对分词处理后得到每个数据组成部分即数据块分别进行加密处理,然后将分别加密处理后得到的(加密的)数据块组合形成最后的加密数据;
所述分词处理指根据预定的(语言)规律、规则,将表示语句的数据分成多个数据组成部分即数据块,且每个数据组成部分即数据块具有最大长度限制(不大于最大长度,但可以小于);所述分词组件是对数据进行分词处理的组件。
对于以上所述面向Web***的数据加密解密方法,对数据提交HTTP请求或数据查询HTTP请求中的需要加密的可搜索数据和非可搜索数据进行加密所采用的密码算法、加密方法以及密钥不必相同。
对于以上所述面向Web***的数据加密解密方法,对于数据提交HTTP请求或数据查询HTTP请求中的需要加密的可搜索数据,所述Web过滤器统计分词后得到的不同数据块数据出现的频度,缓存分组得到的不同数据块数据的明文和对应的密文(即加密前后的数据),并利用缓存的明文和密文对数据块进行快速加密处理(直接用密文替代明文,无需调用密码组件进行加密);
当缓存数据块的个数超过预定的阈值时(阈值如何设定取决于具体实施的要求,为本发明之外的事情),Web过滤器将出现频度低的数据块的缓存数据清除(清除的缓存数据包括分词得到的数据块的明文和对应的密文数据,以及对应的频度统计数据);
一个数据块数据出现的频度是指在规定的时间段内此数据块数据出现的次数;
所述出现频度低的数据块是指出现的频度排在后面的数据块(至于出现频度排在后面多少的数据块被清除,取决于具体实施的要求,属于本发明之外的事情)。
对于以上所述面向Web***的数据加密解密方法,所述数据加密解密配置信息中设置有分词关键词(Key Words),分词组件在对可搜索数据进行分词处理时将数据中出现的分词关键词作为单独的数据组成部分即数据块分离出来进行处理(分词关键词只是分词处理采用的方法之一并非全部,分词主要基于语言规律、规则);所述分词关键词分为需加密关键词和非加密关键词,对于从需加密的可搜索数据中分离出来的需加密关键词,所述Web过滤器对其加密,而对于从需加密的可搜索数据中分离出来的非加密关键词,所述Web过滤器不对其加密(相应地,对于被加密的可搜索数据中出现的非加密关键词,Web过滤器无需进行解密);对于非加密关键词,所述Web过滤器不进行明文和对应密文的缓存处理(无论加密和解密都如此,这是显然的)。
对于以上所述面向Web***的数据加密解密方法,所述Web过滤器统计数据查询HTTP请求中的需要加密的可搜索数据中出现的搜索关键词出现的频度,对于出现的频度高而未在分词关键词中出现的搜索关键词,Web过滤器将其作为需加密关键词加入到分词关键词中;
一个搜索关键词出现的频度是指在规定的时间段内此搜索关键词出现的次数;
所述出现频度高的搜索关键词是指出现的频度高于预定的阈值的搜索关键词(至于阈值是多少,取决于具体实施的要求,属于本发明之外的事情)。
对于以上所述面向Web***的数据加密解密方法,对于HTTP响应中的需要解密的被加密的数据,所述Web过滤器进一步通过数据加密解密配置信息确被加密的数据是否是可搜索的,若不是,则Web过滤器调用密码组件对被加密的非可搜索数据进行解密处理,若是,则Web过滤器调用密码组件对被加密的可搜索数据中的每个(分词后)被加密的数据块分别进行解密处理,然后将解密后的数据块组合形成最后的被解密的数据。
对于以上所述面向Web***的数据加密解密方法,对于HTTP响应中的需要解密的可搜索数据,所述Web过滤器统计响应中的不同被加密的数据块数据(即需要解密的数据块)出现的频度,缓存不同的(分词后)被加密的数据块数据的密文和对应的明文,并利用缓存的密文和明文对被加密的数据块进行快速解密处理(直接用明文替代密文,无需调用密码组件进行解密);
当缓存的加密数据(即被加密的数据)的个数超过预定的阈值时(阈值如何设定取决于具体实施的要求,为本发明之外的事情),Web过滤器将出现频度低的加密数据块的缓存数据清除(清除的缓存数据包括被加密的数据块数据的密文和对应的明文,以及对应的频度统计数据);
一个加密数据块数据出现的频度是指在规定的时间段内此加密数据块数据出现的次数;
所述出现频度低的加密数据块是指出现的频度排在后面的加密数据块(至于出现频度排在后面多少的加密数据块被清除,取决于具体实施的要求,属于本发明之外的事情)。
对于以上所述的面向Web***的数据加密解密方法,若HTTP响应返回的页面涉及数据查询搜索(即提供有数据查询搜索功能),而Web过滤器从用户通过原响应页面提交的数据查询HTTP请求中不能区分出查询请求中的哪些查询数据(如搜索关键字、关键词)是不需要加密的(即属于针对非加密的数据的查询数据),哪些查询数据是需要加密的(即属于针对加密后的数据的查询数据),且对于需加密的查询数据哪些是可搜索的(即属于针对加密后的可搜索数据的查询数据),则所述Web过滤器在所述HTTP响应返回的页面中***代码(HTML代码、脚本程序),修改返回的页面,从而使得所述Web过滤器从用户通过返回的页面提交的数据查询HTTP请求的查询数据中能够作出上述区分。
基于以上所述面向Web***的数据加密解密方法可构建面向Web***的数据加密解密***,***包括Web过滤器、密码组件、分词组件以及加密配置管理器(manager);所述加密配置管理器对数据加密解密配置信息进行管理,包括生成、修改、保存数据加密解密配置信息;所述数据加密解密配置信息以文件或数据库数据的形式保存,并由Web过滤器加载到Web***中(内存中);
当客户端通过HTTP请求提交数据、查询数据以及获取数据时,所述数据加密***按所述面向Web***的数据加密解密方法对HTTP请求中需要加密的数据进行加密处理,对HTTP响应中需要解密的数据进行解密处理。
从以上描述可以看到,本发做到:通过Web过滤器使得Web***在不需要进行程序代码修改的情况下就增加了数据自动加密、解密功能;数据加密、解密功能可以由专业人员实现,普通程序员可以专注业务逻辑,无需关心数据的加密、解密处理;数据加密、解密处理的代码集中在Web过滤器这一个地方,使得加密、解密代码的维护更容易;通过数据加密解密配置信息,一套代码能用于不同的***;通过先分词,后加密,保留了数据的搜索功能(加密当然对数据搜索能力造成不利影响);通过常用明文、密文的缓存,提高了数据加密、解密处理的速度。
附图说明
图1本发明的***的结构示意图。
具体实施方式
下面对本发明的具体实施方式作进一步的说明。
依据本发明实施的数据加密解密过程具体如下。
Web过滤器拦截客户端(如浏览器)提交的数据提交HTTP请求,查询数据加密解密配置信息,确定提交的数据中哪些数据需要加密(比如FORM数据中的哪些数据是需要加密的,JSON数据中的哪些数据对象是需要加密的),然后调用密码组件对需要加密的数据进行加密处理(提交的数据中需加密的数据可以是多个不同的数据,比如,FORM中的不同字段,JSON中的不同数据对象),然后形成新的数据提交HTTP请求,并将新的数据提交HTTP请求传送到后续处理逻辑(处理组件)处理(比如保存到数据库);
Web过滤器拦截客户端提交的数据查询(搜索)HTTP请求,查询数据加密解密配置信息,确定数据查询HTTP请求中的查询数据中哪些数据需要加密的(即是否涉及针对加密数据的查询),然后调用密码组件对需要加密的数据进行加密处理(提交的数据查询HTTP请求中的查询数据中需加密的数据可以是多个不同的数据,比如,FORM中的不同字段,JSON中的不同数据对象),然后形成新的数据查询HTTP请求,并将新的数据查询HTTP请求传送到后续处理逻辑(处理组件)处理(比如对保存在数据库中的数据进行查询、搜索);
Web过滤器拦截Web***返回的HTTP响应,查询数据加密解密配置信息,确定HTTP响应中哪些数据需要解密(即哪些是被加密的数据),然后调用密码组件对需要解密的数据进行解密处理(响应中需解密的数据可以是多个不同的数据,比如,FORM中的不同字段,JSON中的不同数据对象),然后形成新的HTTP响应,并将新的HTTP响应返回;
以上所述Web过滤器是(Web***的)Web服务端中位于HTTP请求和响应传输通道中的、对数据进行加密解密处理的组件(比如采用Web服务器或Web运行环境的Web过滤器技术开发);
以上所述密码组件是提供数据加密、解密功能的组件(软件组件或软硬件结合的组件);
以上所述数据加密解密配置信息中设置有与数据加密、解密处理有关的信息。
对于以上所述面向Web***的数据加密解密,所述Web过滤器通过查询数据加密解密配置信息(如通过配置信息中设定的HTTP请求URL及设定的HTTP请求中的数据字段)确定:哪些HTTP请求中包含有需要进行加密处理的数据以及HTTP请求中的哪些数据需要进行加密处理,哪些数据查询HTTP请求需要对查询请求中的查询数据进行加密处理以及数据查询HTTP请求中的哪些查询数据需要进行加密处理(即哪些数据查询HTTP请求以及哪些查询数据涉及针对加密数据的查询),哪些HTTP请求所对应的HTTP响应中包含加密的数据需要对数据进行解密处理以及响应中的哪些数据需要进行解密处理(即哪些HTTP响应需要解密处理以及响应中的哪些数据是被加密的数据,即密文数据)。
对于以上所述面向Web***的数据加密解密,对于数据提交HTTP请求或数据查询HTTP请求中的需要加密的数据,所述Web过滤器进一步通过数据加密解密配置信息确定需加密的数据是否是可搜索的(即加密后的数据是否被查询、搜索,或者是否是针对加密后的可搜索数据的查询、搜索,针对加密后的可搜索数据的查询数据也是可搜索的数据,也需进行相应的分词、加密处理),若不是,则Web过滤器调用密码组件对需要加密的非可搜索数据进行加密处理,若是,则Web过滤器调用分词组件对需加密的可搜索数据进行分词处理,然后调用密码组件对分词处理后得到每个数据组成部分即数据块分别进行加密处理,然后将分别加密处理后得到的(加密的)数据块组合形成最后的加密数据;
以上所述分词处理指根据预定的(语言)规律、规则,将表示语句的数据分成多个数据组成部分即数据块,且每个数据组成部分即数据块具有最大长度限制(不大于最大长度,但可以小于);所述分词组件是对数据进行分词处理的组件。
对于以上所述面向Web***的数据加密解密,对数据提交HTTP请求或数据查询HTTP请求中的需要加密的可搜索数据和非可搜索数据进行加密所采用的密码算法、加密方法以及密钥不必相同。
对于以上所述面向Web***的数据加密解密,对于数据提交HTTP请求或数据查询HTTP请求中的需要加密的可搜索数据,所述Web过滤器统计分词后得到的不同数据块数据出现的频度,缓存分组得到的不同数据块数据的明文和对应的密文(即加密前后的数据),并利用缓存的明文和密文对数据块进行快速加密处理(直接用密文替代明文,无需调用密码组件进行加密);
当缓存数据块的个数超过预定的阈值时(阈值如何设定取决于具体实施的要求,为本发明之外的事情),Web过滤器将出现频度低的数据块的缓存数据清除(清除的缓存数据包括分词得到的数据块的明文和对应的密文数据,以及对应的频度统计数据);
一个数据块数据出现的频度是指在规定的时间段内此数据块数据出现的次数;
以上所述出现频度低的数据块是指出现的频度排在后面的数据块(至于出现频度排在后面多少的数据块被清除,取决于具体实施的要求,属于本发明之外的事情)。
对于以上所述面向Web***的数据加密解密,所述数据加密解密配置信息中设置有分词关键词(Key Words),分词组件在对可搜索数据进行分词处理时将数据中出现的分词关键词作为单独的数据组成部分即数据块分离出来进行处理(分词关键词只是分词处理采用的方法之一并非全部,分词主要基于语言规律、规则);所述分词关键词分为需加密关键词和非加密关键词,对于从需加密的可搜索数据中分离出来的需加密关键词,所述Web过滤器对其加密,而对于从需加密的可搜索数据中分离出来的非加密关键词,所述Web过滤器不对其加密(相应地,对于被加密的可搜索数据中出现的非加密关键词,Web过滤器无需进行解密);对于非加密关键词,所述Web过滤器不进行明文和对应密文的缓存处理(无论加密和解密都如此,这是显然的)。
对于以上所述面向Web***的数据加密解密,所述Web过滤器统计数据查询HTTP请求中的需要加密的可搜索数据中出现的搜索关键词出现的频度,对于出现的频度高而未在分词关键词中出现的搜索关键词,Web过滤器将其作为需加密关键词加入到分词关键词中;
一个搜索关键词出现的频度是指在规定的时间段内此搜索关键词出现的次数;
以上所述出现频度高的搜索关键词是指出现的频度高于预定的阈值的搜索关键词(至于阈值是多少,取决于具体实施的要求,属于本发明之外的事情)。
对于以上所述面向Web***的数据加密解密,对于HTTP响应中的需要解密的被加密的数据,所述Web过滤器进一步通过数据加密解密配置信息确被加密的数据是否是可搜索的,若不是,则Web过滤器调用密码组件对被加密的非可搜索数据进行解密处理,若是,则Web过滤器调用密码组件对被加密的可搜索数据中的每个(分词后)被加密的数据块分别进行解密处理,然后将解密后的数据块组合形成最后的被解密的数据。
对于以上所述面向Web***的数据加密解密,对于HTTP响应中的需要解密的可搜索数据,所述Web过滤器统计响应中的不同被加密的数据块数据(即需要解密的数据块)出现的频度,缓存不同的(分词后)被加密的数据块数据的密文和对应的明文,并利用缓存的密文和明文对被加密的数据块进行快速解密处理(直接用明文替代密文,无需调用密码组件进行解密);
当缓存的加密数据(即被加密的数据)的个数超过预定的阈值时(阈值如何设定取决于具体实施的要求,为本发明之外的事情),Web过滤器将出现频度低的加密数据块的缓存数据清除(清除的缓存数据包括被加密的数据块数据的密文和对应的明文,以及对应的频度统计数据);
一个加密数据块数据出现的频度是指在规定的时间段内此加密数据块数据出现的次数;
以上所述出现频度低的加密数据块是指出现的频度排在后面的加密数据块(至于出现频度排在后面多少的加密数据块被清除,取决于具体实施的要求,属于本发明之外的事情)。
对于以上所述的面向Web***的数据加密解密,若HTTP响应返回的页面涉及数据查询搜索(即提供有数据查询搜索功能),而Web过滤器从用户通过原响应页面提交的数据查询HTTP请求中不能区分出查询请求中的哪些查询数据(如搜索关键字、关键词)是不需要加密的(即属于针对非加密的数据的查询数据),哪些查询数据是需要加密的(即属于针对加密后的数据的查询数据),且对于需加密的查询数据哪些是可搜索的(即属于针对加密后的可搜索数据的查询数据),则所述Web过滤器在所述HTTP响应返回的页面中***代码(HTML代码、脚本程序),修改返回的页面,从而使得所述Web过滤器从用户通过返回的页面提交的数据查询HTTP请求的查询数据中能够作出上述区分。
以上所述面向Web***的数据加密解密过程的具体实施涉及Web过滤器、密码组件、分词组件以及加密配置管理器(manager)的具体实施,其中Web过滤器的具体实施取决于Web***采用的Web服务器(如Apache Http Server、IIS服务器)和Web运行环境(如JSP/Servlet Web容器、ASP.Net运行环境等),既可以利用Web服务器提供的Web过滤器机制,也可以利用Web运行环境提供的Web过滤器机制;加密配置管理器负责对数据加密解密配置信息进行管理,包括生成、修改、保存数据加密解密配置信息,其可以是一个独立的***,也可以是Web应用***中的一个组件,而数据加密解密配置信息以文件或数据库数据的形式保存,并由Web过滤器加载到Web***中(内存中);密码组件、分词组件可以是动态加载的***组件,也可以是一个独立运行的***;通过实施Web过滤器、密码组件、分词组件以及加密配置管理器(manager),构建了一个面向Web***的数据加密解密***。
其他未说明的具体技术实施,对于相关领域的技术人员而言是众所周知,不言自明的。

Claims (11)

1.一种面向Web***的数据加密解密方法,其特征是:
Web过滤器拦截客户端提交的数据提交HTTP请求,查询数据加密解密配置信息,确定提交的数据中哪些数据需要加密,然后调用密码组件对需要加密的数据进行加密处理,然后形成新的数据提交HTTP请求,并将新的数据提交HTTP请求传送到后续处理逻辑处理;
Web过滤器拦截客户端提交的数据查询HTTP请求,查询数据加密解密配置信息,确定数据查询HTTP请求中的查询数据中哪些数据需要加密的,然后调用密码组件对需要加密的数据进行加密处理,然后形成新的数据查询HTTP请求,并将新的数据查询HTTP请求传送到后续处理逻辑处理;
Web过滤器拦截Web***返回的HTTP响应,查询数据加密解密配置信息,确定HTTP响应中哪些数据需要解密,然后调用密码组件对需要解密的数据进行解密处理,然后形成新的HTTP响应,并将新的HTTP响应返回;
所述Web过滤器是Web服务端中位于HTTP请求和响应传输通道中的、对数据进行加密解密处理的组件;
所述密码组件是提供数据加密、解密功能的组件;
所述数据加密解密配置信息中设置有与数据加密、解密处理有关的信息。
2.根据权利要求1所述的面向Web***的数据加密解密方法,其特征是:
所述Web过滤器通过查询数据加密解密配置信息确定:哪些HTTP请求中包含有需要进行加密处理的数据以及HTTP请求中的哪些数据需要进行加密处理,哪些数据查询HTTP请求需要对查询请求中的查询数据进行加密处理以及数据查询HTTP请求中的哪些查询数据需要进行加密处理,哪些HTTP请求所对应的HTTP响应中包含加密的数据需要对数据进行解密处理以及响应中的哪些数据需要进行解密处理。
3.根据权利要求1所述的面向Web***的数据加密解密方法,其特征是:
对于数据提交HTTP请求或数据查询HTTP请求中的需要加密的数据,所述Web过滤器进一步通过数据加密解密配置信息确定需加密的数据是否是可搜索的,若不是,则Web过滤器调用密码组件对需要加密的非可搜索数据进行加密处理,若是,则Web过滤器调用分词组件对需加密的可搜索数据进行分词处理,然后调用密码组件对分词处理后得到每个数据组成部分即数据块分别进行加密处理,然后将分别加密处理后得到的数据块组合形成最后的加密数据;
所述分词处理指根据预定的规律、规则,将表示语句的数据分成多个数据组成部分即数据块,且每个数据组成部分即数据块具有最大长度限制;所述分词组件是对数据进行分词处理的组件。
4.根据权利要求3所述的面向Web***的数据加密解密方法,其特征是:
对数据提交HTTP请求或数据查询HTTP请求中的需要加密的可搜索数据和非可搜索数据进行加密所采用的密码算法、加密方法以及密钥不必相同。
5.根据权利要求3所述的面向Web***的数据加密解密方法,其特征是:
对于数据提交HTTP请求或数据查询HTTP请求中的需要加密的可搜索数据,所述Web过滤器统计分词后得到的不同数据块数据出现的频度,缓存分组得到的不同数据块数据的明文和对应的密文,并利用缓存的明文和密文对数据块进行快速加密处理;
当缓存数据块的个数超过预定的阈值时,Web过滤器将出现频度低的数据块的缓存数据清除;
一个数据块数据出现的频度是指在规定的时间段内此数据块数据出现的次数;
所述出现频度低的数据块是指出现的频度排在后面的数据块。
6.根据权利要求5所述的面向Web***的数据加密解密方法,其特征是:
所述数据加密解密配置信息中设置有分词关键词,分词组件在对可搜索数据进行分词处理时将数据中出现的分词关键词作为单独的数据组成部分即数据块分离出来进行处理;所述分词关键词分为需加密关键词和非加密关键词,对于从需加密的可搜索数据中分离出来的需加密关键词,所述Web过滤器对其加密,而对于从需加密的可搜索数据中分离出来的非加密关键词,所述Web过滤器不对其加密;对于非加密关键词,所述Web过滤器不进行明文和对应密文的缓存处理。
7.根据权利要求6所述的面向Web***的数据加密解密方法,其特征是:
所述Web过滤器统计数据查询HTTP请求中的需要加密的可搜索数据中出现的搜索关键词出现的频度,对于出现的频度高而未在分词关键词中出现的搜索关键词,Web过滤器将其作为需加密关键词加入到分词关键词中;
一个搜索关键词出现的频度是指在规定的时间段内此搜索关键词出现的次数;
所述出现频度高的搜索关键词是指出现的频度高于预定的阈值的搜索关键词。
8.根据权利要求6所述的面向Web***的数据加密解密方法,其特征是:
对于HTTP响应中的需要解密的被加密的数据,所述Web过滤器进一步通过数据加密解密配置信息确被加密的数据是否是可搜索的,若不是,则Web过滤器调用密码组件对被加密的非可搜索数据进行解密处理,若是,则Web过滤器调用密码组件对被加密的可搜索数据中的每个被加密的数据块分别进行解密处理,然后将解密后的数据块组合形成最后的被解密的数据。
9.根据权利要求8所述的面向Web***的数据加密解密方法,其特征是:
对于HTTP响应中的需要解密的可搜索数据,所述Web过滤器统计响应中的不同被加密的数据块数据出现的频度,缓存不同的被加密的数据块数据的密文和对应的明文,并利用缓存的密文和明文对被加密的数据块进行快速解密处理;
当缓存的加密数据的个数超过预定的阈值时,Web过滤器将出现频度低的加密数据块的缓存数据清除;
一个加密数据块数据出现的频度是指在规定的时间段内此加密数据块数据出现的次数;
所述出现频度低的加密数据块是指出现的频度排在后面的加密数据块。
10.根据权利要求3所述的面向Web***的数据加密解密方法,其特征是:
若HTTP响应返回的页面涉及数据查询搜索,而Web过滤器从用户通过原响应页面提交的数据查询HTTP请求中不能区分出查询请求中的哪些查询数据是不需要加密的,哪些查询数据是需要加密的,且对于需加密的查询数据哪些是可搜索的,则所述Web过滤器在所述HTTP响应返回的页面中***代码,修改返回的页面,从而使得所述Web过滤器从用户通过返回的页面提交的数据查询HTTP请求的查询数据中能够作出上述区分。
11.一种基于权利要求1-10中任一项所述的面向Web***的数据加密解密方法的面向Web***的数据加密解密***,其特征是:
所述数据加密***包括Web过滤器、密码组件、分词组件以及加密配置管理器;所述加密配置管理器对数据加密解密配置信息进行管理,包括生成、修改、保存数据加密解密配置信息;所述数据加密解密配置信息以文件或数据库数据的形式保存,并由Web过滤器加载到Web***中;
当客户端通过HTTP请求提交数据、查询数据以及获取数据时,所述数据加密***按所述面向Web***的数据加密解密方法对HTTP请求中需要加密的数据进行加密处理,对HTTP响应中需要解密的数据进行解密处理。
CN202110394186.3A 2021-04-13 2021-04-13 一种面向Web***的数据加密解密方法及*** Active CN113206838B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110394186.3A CN113206838B (zh) 2021-04-13 2021-04-13 一种面向Web***的数据加密解密方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110394186.3A CN113206838B (zh) 2021-04-13 2021-04-13 一种面向Web***的数据加密解密方法及***

Publications (2)

Publication Number Publication Date
CN113206838A true CN113206838A (zh) 2021-08-03
CN113206838B CN113206838B (zh) 2022-07-05

Family

ID=77026673

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110394186.3A Active CN113206838B (zh) 2021-04-13 2021-04-13 一种面向Web***的数据加密解密方法及***

Country Status (1)

Country Link
CN (1) CN113206838B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020172363A1 (en) * 2001-05-15 2002-11-21 Dierks Timothy M. Data security on a mobile device
CN103392320A (zh) * 2010-12-29 2013-11-13 思杰***有限公司 对加密项目进行多层标记以提供额外的安全和有效的加密项目确定的***和方法
CN104158827A (zh) * 2014-09-04 2014-11-19 中电长城网际***应用有限公司 密文数据共享方法、装置、查询服务器和上传数据客户端
CN104217173A (zh) * 2014-08-27 2014-12-17 武汉理工大学 一种针对浏览器的数据和文件加密方法
CN105340213A (zh) * 2013-02-27 2016-02-17 希佩尔图斯公司 用于安全数据传输的方法和设备
CN107070848A (zh) * 2015-10-09 2017-08-18 Sap欧洲公司 为分析性web应用加密数据
CN108304733A (zh) * 2018-01-23 2018-07-20 深圳大普微电子科技有限公司 加密数据搜索方法及可加密搜索的数据存储***
US10061852B1 (en) * 2015-05-19 2018-08-28 Amazon Technologies, Inc. Transparent proxy tunnel caching for database access
CN109698863A (zh) * 2018-12-20 2019-04-30 杭州迪普科技股份有限公司 一种确定http报文安全性的方法、装置、设备及存储介质
CN109861945A (zh) * 2017-11-22 2019-06-07 浙江智贝信息科技有限公司 一种分布式代码运行及交互安全方法及其***
CN110110550A (zh) * 2019-04-19 2019-08-09 深圳华中科技大学研究院 一种支持云存储的可搜索加密方法及***
CN112016113A (zh) * 2020-09-28 2020-12-01 同盾控股有限公司 数据加解密方法、装置及***

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020172363A1 (en) * 2001-05-15 2002-11-21 Dierks Timothy M. Data security on a mobile device
CN103392320A (zh) * 2010-12-29 2013-11-13 思杰***有限公司 对加密项目进行多层标记以提供额外的安全和有效的加密项目确定的***和方法
CN105340213A (zh) * 2013-02-27 2016-02-17 希佩尔图斯公司 用于安全数据传输的方法和设备
CN104217173A (zh) * 2014-08-27 2014-12-17 武汉理工大学 一种针对浏览器的数据和文件加密方法
CN104158827A (zh) * 2014-09-04 2014-11-19 中电长城网际***应用有限公司 密文数据共享方法、装置、查询服务器和上传数据客户端
US10061852B1 (en) * 2015-05-19 2018-08-28 Amazon Technologies, Inc. Transparent proxy tunnel caching for database access
CN107070848A (zh) * 2015-10-09 2017-08-18 Sap欧洲公司 为分析性web应用加密数据
CN109861945A (zh) * 2017-11-22 2019-06-07 浙江智贝信息科技有限公司 一种分布式代码运行及交互安全方法及其***
CN108304733A (zh) * 2018-01-23 2018-07-20 深圳大普微电子科技有限公司 加密数据搜索方法及可加密搜索的数据存储***
CN109698863A (zh) * 2018-12-20 2019-04-30 杭州迪普科技股份有限公司 一种确定http报文安全性的方法、装置、设备及存储介质
CN110110550A (zh) * 2019-04-19 2019-08-09 深圳华中科技大学研究院 一种支持云存储的可搜索加密方法及***
CN112016113A (zh) * 2020-09-28 2020-12-01 同盾控股有限公司 数据加解密方法、装置及***

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
孟军等: "基于.NET的SOAP加密方法研究与实现", 《计算机科学》 *
李陶深等: "云环境下支持多用户的保序加密方案", 《广西大学学报(自然科学版)》 *

Also Published As

Publication number Publication date
CN113206838B (zh) 2022-07-05

Similar Documents

Publication Publication Date Title
US10063528B2 (en) Searchable encryption enabling encrypted search based on document type
US10614135B2 (en) Wildcard search in encrypted text using order preserving encryption
US11144663B2 (en) Method and system for search pattern oblivious dynamic symmetric searchable encryption
US5963642A (en) Method and apparatus for secure storage of data
US10664610B2 (en) Method and system for range search on encrypted data
CN108363689B (zh) 面向混合云的隐私保护多关键词Top-k密文检索方法及***
US8769302B2 (en) Encrypting data and characterization data that describes valid contents of a column
CN111327616A (zh) 密钥管理方法、装置、设备及计算机可读存储介质
CN112583809B (zh) 非浸入式多种加密算法的数据加密解密的方法
CN114969128B (zh) 一种基于安全多方计算技术的隐匿查询方法、***和存储介质
CN111212033A (zh) 基于组合式网络爬虫防御技术的页面显示方法、装置和电子设备
Hahn et al. Poly-logarithmic range queries on encrypted data with small leakage
Peng et al. LS-RQ: A lightweight and forward-secure range query on geographically encrypted data
CN110635908B (zh) 一种用于电子合同的支持亿万级密钥的管理方法
CN113206838B (zh) 一种面向Web***的数据加密解密方法及***
Sanamrad et al. Query log attack on encrypted databases
Nayak et al. SEMFS: Secure and efficient multi-keyword fuzzy search for cloud storage
JP4552044B2 (ja) 暗号化データ作成装置および方法ならびにそのプログラム
Shih et al. Approximate Multi-Keyword Rank Search on Encrypted Cloud Data
CN114647866A (zh) 一种数据加密和加密数据查询方法及***
Kumbhar et al. Improving Efficiency of TRSE Scheme by Employing Public Key Compression Technique for Fully Homomorhphic Encryption over the Integers
CN117592086A (zh) 数据库的数据读写方法、***及存储介质
CN115688132A (zh) 一种支持sql查询的数据库字段加密方法及装置
Soma Panel Statement: Increasing test coverage in a VLSI design course
Xinyi et al. Research on the privacy-preserving retrieval over ciphertext on cloud

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