一种高安全性网络数据存储方法技术

技术编号:14551059 阅读:135 留言:0更新日期:2017-02-05 00:11
本发明专利技术涉及一种高安全性网络数据存储方法,属于网络安全技术领域,该方法基于非对称密钥和对称密钥相结合的加密技术对用于加密的随机密钥和捕获到的网络数据进行加密保证数据的安全性,对网络流数据通过SPCAP存储格式采用分块加密存储方式进行存储,通过对数据块及全文进行校验防止数据被篡改,保证数据的完整性和正确性。对比现有技术,本发明专利技术方法有效地解决了当前网络包实时捕获存储方法中数据明文存储易泄露用户数据、存储文件可篡改、篡改后无法察觉的问题,满足了网络流量采集的高安全性、不可抵赖性以及实时性要求。

High security network data storage method

The invention relates to a high security network data storage method, which belongs to the technical field of network security, the method of non symmetric and asymmetric key encryption technology based on the combination of random key is used to encrypt and capture network data encryption to ensure data security, data storage format used by SPCAP block encryption storage the storage of the network flow, based on the data block and the check to prevent data tampering, ensure data integrity and accuracy. Compared with the prior art, the method effectively solves the network packet storage method in data stored in plain text easily leaked user data, file tampering, tampering cannot be aware of the problem of real time capture, meet the network traffic collection of high security, non repudiation and real-time requirements.

【技术实现步骤摘要】

本专利技术属于网络安全
,涉及一种实时存储捕获到网络数据流的方法,特别涉及一种基于对称和非对称加密方法及校验计算的具有安全性且防篡改的网络数据包存储方法。
技术介绍
互联网作为全球最大的信息中心,网络节点已经遍布全球。互联网带给人们便捷的沟通方式和快捷的资源获取,然而,随着网络迅速壮大和发展,许多网络安全和管理问题也随之产生,这些问题的解决需要采集网络中的流量信息。这些所需要的信息通常来自于网络中实际传输的网络数据包,可以通过在网络中捕获这些数据,存储之后对其进行分析。然而,现有方法获取到的数据包是明文存储,无法保证数据的机密性,容易被泄露,同时也不能防止数据被篡改,因此,数据存储的安全性存在很大隐患。现在已有的网络数据包存储方法主要是采集网络数据并直接保存到PCAP格式文件,具体方法是,首先创建一个PCAP格式的文件,用于存储捕获的数据包信息;之后,每捕获一个数据包,存储包括时间戳和包长度在内的包头信息,以及数据包内容明文存放于PCAP文件中。另外一种方法是采集网络数据并存储在下一代PCAP格式文件,具体方法是,将PCAP文件的组织结构更改为通过不同类型的块(Block)按照一定规则组织成文件,主要针对可扩展性、便携性和合并及附加数据三方面进行了改进。然而,对于数据包的安全性和数据的可靠性,这两种方法并没有明确的措施来保证,无法保证数据是未被篡改过的,也无法保证数据安全不被泄露。<br>本专利技术涉及一种具有安全性的数据包实时捕获和处理方法,提供了一种可靠的存储格式,防止数据泄露和数据被篡改,保证数据的机密性和不可否认性(不可抵赖性)。所提出的高安全性网络数据存储方法主要涉及以下两个问题:(1)对实时捕获的数据包进行加密存储,保证数据的机密性;(2)通过块存储的方法存储数据包,形成联合多个块的校验方法,保证数据的不可否认性,防止数据被篡改。
技术实现思路
本专利技术的目的是为了克服已有数据包存储方法的安全缺陷,为了解决现有方法在进行网络数据包捕获和存储中存在的数据明文存储导致信息易泄露,且数据包的存储内容可被无察觉的篡改等缺陷,提出一种对网络中捕获数据包进行安全存储的方法,即一种高安全性网络数据存储方法。本专利技术的思想是基于非对称密钥和对称密钥相结合的加密技术对用于校验的关键字、用于加密的随机密钥和捕获到的数据进行加密从而提高数据的安全性,对分块存储的数据包内容进行校验防止数据被篡改,从而满足网络流量采集的高安全性和不可抵赖性要求。一种基于对网络中捕获的数据包进行加密和校验防篡改的高安全性不可抵赖性的网络数据实时加密存储方法,其基本实施过程如下:本专利技术分为两部分,第一部分为网络数据存储过程,即加密过程,第二部分为网络数据处理过程,即解密过程;第一部分网络数据存储过程,即加密过程,具体步骤如下:步骤1,创建一个空文件用来存储加密后的网络数据和所需关键字如公钥、随机密钥;设置用来存储数据明文的缓冲区,其大小为可接收最大数据包数量N;步骤2,将加密过程中使用的公钥作为关键字存入文件中;加密过程中,公钥是开放的,用来加密随机密钥关键字;在解密过程中,会有对应的私钥,为用户私有,用来解密随机密钥和校验码关键字,从而获取随机密钥,用于解密网络数据包和校验数据。步骤3,获取随机密钥,用来加密实时捕获的网络数据包;将随机密钥作为关键字被公钥加密后存储在文件中;通过开始捕获数据时的时间戳和硬件信息如mac地址生成随机密钥,用于加密实时捕获的网络数据包;将随机密钥作为关键字被公钥加密,存储在文件中。步骤4,通过捕获包个数变量Counter实时统计捕获到的数据包个数,并严格按照顺序明文存储到缓冲区内,直到捕获包的数量为一个缓冲区可存放的最大数量N或用户终止捕获时结束当前步骤;此时该缓冲区内的数据作为一个数据块(Section)用于后续加密或校验。同时记录该缓冲区内第一个包和最后一个包被捕获时的精确时间戳(timestamps),记录整个数据块的大小(SectionLength),方便后续读取某文件时需要跳过整个数据块的操作,记录捕获包的总个数(Counter),一般为N个,若用户终止捕获时未填满缓冲区,则记录当前包数。将数据块的大小、精确时间戳、包的总个数按照顺序存入文件。步骤5,根据步骤4获取到的一个数据块中的明文数据计算该数据块中关键字:本块校验码Check_Section和全文校验码Check_ALL的值,存储于文件中。具体方法为,根据块内的数据明文计算出校验本块数据的校验码(Check_Section),存于文件中,用来在解密过程校验该数据块中数据包的正确性。通过前一个数据块的全文校验码Check_ALL和当前数据块中数据包的本块校验码Check_Section计算得出当前数据块的全文校验码Check_ALL;若当前数据块是第一个数据块,则只根据当前数据块的本块校验码Check_Section计算,存于文件中。步骤6,对步骤4获取到的一个数据块中的明文数据,使用随机密钥加密并将加密后的数据顺序存储在本块校验码和全文校验码关键字之后的位置。截止到本步骤,一个完整的数据块,包括数据块大小,精确时间戳,块捕获包个数,本块校验码,全文校验码和加密后的网络数据,便被完整存储在文件中。步骤7,如判断出用户未终止捕获数据,则重设Counter为0,回到步骤4继续捕获并加密存储数据;否则结束捕获和存储步骤。第二部分网络数据处理过程,即解密过程,步骤如下:步骤8,用户在读取文件时,首先需要用对应的私钥对随机密钥关键字解密,得到随机密钥;步骤9,使用随机密钥对所有数据块进行解密,通过重新计算获取每个数据块的新本块校验码和新全文校验码,并和原始校验码对比来校验单个数据块和整个文件内数据的完整性和正确性,若截止到某块的新全文校验码和原始全文校验码不一致,则该块之前的所有块未发生丢失和乱序;若解密数据后重新计算出的新本块校验码和原始本块校验码不一致,则该块的数据和原始数据不一致。有益效果本专利技术方法,对比已有技术,能够有效地解决当前网络包实时捕获存储方法中数据明文存储易泄露用户数据、存储文件可篡改、篡改后无法察觉的问题,并通过SPCAP这种新的存储格式合理地存储了所有关键字和密文数据,通过对称加密数据、非对称加密关键字的方法保证数据的安全性,通过对数据进行计算校验码的方法防止数据被篡本文档来自技高网
...

【技术保护点】
一种高安全性网络数据存储方法,其特征在于,包括网络数据存储过程和网络数据处理过程;网络数据存储过程具体处理步骤如下:步骤1、创建一个空文件file用来存储加密后的网络数据和所需关键字如公钥、随机密钥;设置用来存储数据明文的缓冲区,其大小为可接收最大数据包数量N;步骤2、将加密过程中使用的公钥作为关键字存入file中;步骤3、获取随机密钥,用来加密实时捕获的网络数据包;将随机密钥作为关键字被公钥加密后存储在file中;步骤4、通过捕获包个数变量Counter实时统计捕获到的数据包个数,并严格按照顺序明文存储到缓冲区内,直到达到缓存结束条件;步骤5,根据步骤4获取到的一个数据块中的明文数据计算该数据块中关键字:本块校验码Check_Section和全文校验码Check_ALL的值,存储于file中;步骤6,对步骤4获取到的一个数据块中的明文数据,使用随机密钥加密并将加密后的数据顺序存储在file中本块校验码和全文校验码关键字之后的位置。步骤7,如判断出用户未终止捕获数据,则重设Counter为0,回到步骤4继续捕获并加密存储数据;否则结束捕获和存储步骤;网络数据处理过程具体处理步骤如下:步骤8,用户在读取文件时,首先需要用对应的私钥对随机密钥关键字解密,得到随机密钥;步骤9,使用随机密钥对所有数据块进行解密,通过重新计算获取每个数据块的新本块校验码和新全文校验码,并和原始校验码对比来校验单个数据块和整个文件内数据的完整性和正确性,若截止到某块的新全文校验码和原始全文校验码不一致,则该块之前的所有块未发生丢失和乱序;若解密数据后重新计算出的新本块校验码和原始本块校验码不一致,则该块的数据和原始数据不一致。...

【技术特征摘要】
1.一种高安全性网络数据存储方法,其特征在于,包括网络数
据存储过程和网络数据处理过程;网络数据存储过程具体处理步骤如
下:
步骤1、创建一个空文件file用来存储加密后的网络数据和所需
关键字如公钥、随机密钥;设置用来存储数据明文的缓冲区,其大小
为可接收最大数据包数量N;
步骤2、将加密过程中使用的公钥作为关键字存入file中;
步骤3、获取随机密钥,用来加密实时捕获的网络数据包;将随
机密钥作为关键字被公钥加密后存储在file中;
步骤4、通过捕获包个数变量Counter实时统计捕获到的数据包
个数,并严格按照顺序明文存储到缓冲区内,直到达到缓存结束条件;
步骤5,根据步骤4获取到的一个数据块中的明文数据计算该数
据块中关键字:本块校验码Check_Section和全文校验码Check_ALL
的值,存储于file中;
步骤6,对步骤4获取到的一个数据块中的明文数据,使用随机
密钥加密并将加密后的数据顺序存储在file中本块校验码和全文校验
码关键字之后的位置。
步骤7,如判断出用户未终止捕获数据,则重设Counter为0,
回到步骤4继续捕获并加密存储数据;否则结束捕获和存储步骤;
网络数据处理过程具体处理步骤如下:
步骤8,用户在读取文件时,首先需要用对应的私钥对随机密钥
关键字解密,得到随机密钥;
步骤9,使用随机密钥对所有数据块进行解密,通过重新计算获
取每个数据块的新本块校验码和新全文校验码,并和原始校验码对比
来校验单个数据块和整个文件内数据的完整性和正确性,若截止到某
块的新全文校验码和原始全文校验码不一致,则该块之前的所有块未
发生丢失和乱序;若解密数据后重新计算出的新本块校验码和原始本
块校验码不一致,则该块的数据和原始数据不一致。
2.根据权利要求1所述的一种高安全性网络数据存储方法,其特
征在于:步骤1所述关键字还包括标志位、主版本号和副版本号组成
的版本号、区域时间和精确时间戳、数据包最大长度、链路层类型5
项与文件全文相关的辅助信息,以及数据块时间戳、数据包的个数、
加密数据的长度3项与数据块相关的辅助信息;
所述标志位用于标识该文件类型;
所述版本号用于标识该文件的版本;
所述区域时间和精确时间戳用于记录文件创建的时间;
所述数据包最大长度用于设定捕获到的单个数据包的最大字节
数;
所述链路层类型用于标识捕获的数据包的链路层类型;
所述数据块时间戳用于记录该数据块中第一个包被捕获时的精
确时间戳(sigfigs);
所述数据包的个数用于记录该块中数据包的个数;
所述加密数据的长度用于标识该数据块中加密数据的大小。

【专利技术属性】
技术研发人员:嵩天魏煜
申请(专利权)人:北京理工大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1