报文动态封装方法及动态隧道构建方法技术

技术编号:13134440 阅读:84 留言:0更新日期:2016-04-06 20:55
本发明专利技术提出一种报文动态封装方法,包括以下步骤:S1:通过无理数产生器产生一无理数作为信息载体,无理数的各位数值的前后位置用于插入信息报文的报文片段;S2:将信息报文拆分成预设数目的报文片段,获取一对应所述预设数目的长度的数字序列,将数字序列的各数字作为各报文片段的索引号;S3:将各报文片段根据各索引号插入到所述信息载体的相应位置处,形成传输报文,每一次的插入位置均为在之前已插入报文片段后的信息载体的基础上索引号确定的位置;S4:设置传输报文的报文头部,在报文头部填入握手数据,所述握手数据包括所述索引号。增加了报文内容的不可预测性,解决现有技术由于报文格式相对固定而导致有效信息容易被非法获取的问题。

【技术实现步骤摘要】

本专利技术涉及网络安全领域,特别涉及的是报文动态封装方法及动态隧道构建方法
技术介绍
报文封装是指将一种协议所封装的报文通过另一种协议进行传输的方法,而通过该方法形成的通信实体则称为隧道。由于隧道外的节点通常不使用隧道内部节点的通信协议,因此隧道内外的节点可以实现一定程度的隔离,从而可以模拟数据在专线中的传输,提高隧道内节点间所传输数据的安全性。但是传统的报文封装是通过在原报文头部添加新规约的方式实现的,因此若封装协议被黑客获得,他可以通过分析报文中各字段长度的方法获取有效信息,从而解封报文,读取报文中的信息,因而传统报文封装方式存在很大的安全隐患。本专利技术主要解决的问题是如何增加报文片段的随机性,进而增加黑客破解报文所需要的时间成本,降低报文被攻击的可能性。
技术实现思路
本专利技术所要解决的目的是提供一种报文动态封装方法,增加报文内容的不可预测性,解决现有技术由于报文格式相对固定而导致有效信息容易被非法获取的问题。为解决上述问题,本专利技术提出一种报文动态封装方法,包括以下步骤:S1:通过无理数产生器产生一无理数作为信息载体,无理数的各位数值的前后位置用于插入信息报文的报文片段;S2:将信息报文拆分成预设数目的报文片段,获取一对应所述预设数目的长度的数字序列,将数字序列的各数字作为各报文片段的索引号;S3:将各报文片段根据各索引号插入到所述信息载体的相应位置处,形成传输报文,每一次的插入位置均为在之前已插入报文片段后的信息载体的基础上索引号确定的位置;S4:设置所述传输报文的报文头部,在所述报文头部填入握手数据,所述握手数据包括所述索引号。根据本专利技术的一个实施例,在步骤S3和S4之间还包括步骤S31:将所述传输报文进行分片重组;在步骤S4中,所述握手数据还包括重组信息。根据本专利技术的一个实施例,在所述步骤S1中,所述无理数产生器包括非线性函数库,所述非线性函数库存有能够通过输入一有理数而产生无理数的函数,选取所述非线性函数库中的其中一个函数或几个函数的组合产生第一无理数,作为信息载体。根据本专利技术的一个实施例,所述无理数产生器还包括线性函数库,所述线性函数库中存有通过输入一有理数无法产生无理数的函数,由两个或多个所述第一无理数输入到所述线性函数库中的其中一个函数或几个函数的组合中产生第二无理数,作为信息载体。根据本专利技术的一个实施例,从函数库中选取一函数后,标记该函数为不可再次选取的状态。根据本专利技术的一个实施例,在所述步骤S2中,所述数字序列为一随机整数的各位上的数值组合而成的序列。根据本专利技术的一个实施例,所述随机整数的产生方式为步骤A1:获取所述无理数的小数部分,并根据所述预设数目将该小数部分转换为整数,作为所述随机整数,计算公式依次包括(a)和(b):ΔIN=IN-[IN](a)Nr=[ΔIN*10^Ar](b)其中,IN为所述无理数,[IN]为所述无理数的取整值,ΔIN为所述无理数与其取整值之间的差,Ar为所述预设数目,Nr为所述随机整数。根据本专利技术的一个实施例,在所述步骤A1之前还包括A11:判断ΔIN=IN-[IN]是否大于零,如果是则保留该IN,否则重新产生IN。根据本专利技术的一个实施例,在所述步骤S1之前还包括步骤S11:为日期的各个栏位设置权重,取系统时间将其各个栏位的数与相应权重相乘,并将各乘积结果相加得到用于输入所述无理数产生器产生无理数的输入参数。本专利技术还提供一种用来传输前述报文动态封装方法封装的报文的动态隧道构建方法,所述传输报文作为载荷装入TCP报文中,该方法包括以下步骤:B1:发送方在所述传输报文的报文头部增加隧道编号字段;B2:发送方通过TCP报文向接收方以控制消息的方式发送验证信息,接收方从本地验证信息数据库中搜索并比对该验证信息,如果比对成功则向发送方回复确认消息并返回隧道编号,否则回复拒绝消息;B3:发送方如果收到确认消息,则将隧道编号填入所述传输报文的报文头部中,发送方将隧道编号和还原传输报文所需的参数作为控制消息发送给接收方,接收方记录接收的隧道编号和还原传输报文所需的参数;B4:发送方将封装好的传输报文作为数据消息发送给接收方,接收方根据上次记录的控制消息还原接收到的数据消息。根据本专利技术的一个实施例,在步骤B2中,发送方通过TCP报文向接收方以控制消息的方式依次发送隧道编号、用户名、密码和最大传输单元,所述接收方比对的步骤包括:B21:对比隧道编号,如果对比成功则进入步骤B22,否则丢弃所有来自发送方的TCP报文,发送拒绝消息给发送方;B22:对比用户名,如果对比成功则进入步骤B23,否则丢弃所有来自发送方的TCP报文,发送拒绝消息给发送方;B23:对比密码,如果对比成功则进入步骤B24,否则丢弃所有来自发送方的TCP报文,发送拒绝消息给发送方;B24:在完成隧道编号、用户名和密码的比对后,记录最大传输单元,并发送确认消息和隧道编号给发送方。根据本专利技术的一个实施例,所述步骤B4进一步包括以下步骤:B41:接收方从TCP报文中获取隧道编号,并记录在隧道端口的缓存中;B42:接收方读取来自发送方的TCP报文,从中获取传输报头的起始位置,并根据各字段的起始位置和长度读取信息报文的报文片段的索引号、信息载体的长度以及重组信息;B43:接收方根据重组信息完成传输报文的重组还原;B44:信息报文的报文片段的索引号、信息载体的长度完成传输报文的还原。采用上述技术方案后,本专利技术相比现有技术具有以下有益效果:通过无理数作为信息载体的基础,将信息报文拆分成报文片段插入到信息载体的不同位置,形成传输报文,隐藏了有效信息字段的起始位置,有效降低了有效信息被骇客非法解析的可能性,提高了数据传输的安全性。此外,利用收发双方都可以独立获取的某一个时间点作为无理数生成器的输入,一定程度上避免了因为输入参数的交换而给某一秘密消息的协商带来安全隐患的问题。附图说明图1为本专利技术一个实施例的报文动态封装方法的流程示意图;图2为本专利技术一个实施例的动态隧道构建方法的流程示意图;图3为本专利技术一个实施例的动态隧道构建及双方通信的示意图。具体实施方式为使本专利技术的上述目的、特征和优点能够更加明显易懂,下面结合附图对本专利技术的具体实施方式做详细的说明。在下面的描述中阐述了很多具体细节以便于充分理解本专利技术。但是本专利技术能够以很多不本文档来自技高网...

【技术保护点】
一种报文动态封装方法,其特征在于,包括以下步骤:S1:通过无理数产生器产生一无理数作为信息载体,无理数的各位数值的前后位置用于插入信息报文的报文片段;S2:将信息报文拆分成预设数目的报文片段,获取一对应所述预设数目的长度的数字序列,将数字序列的各数字作为各报文片段的索引号;S3:将各报文片段根据各索引号插入到所述信息载体的相应位置处,形成传输报文,每一次的插入位置均为在之前已插入报文片段后的信息载体的基础上索引号确定的位置;S4:设置所述传输报文的报文头部,在所述报文头部填入握手数据,所述握手数据包括所述索引号。

【技术特征摘要】
1.一种报文动态封装方法,其特征在于,包括以下步骤:
S1:通过无理数产生器产生一无理数作为信息载体,无理数的各位数值
的前后位置用于插入信息报文的报文片段;
S2:将信息报文拆分成预设数目的报文片段,获取一对应所述预设数目
的长度的数字序列,将数字序列的各数字作为各报文片段的索引号;
S3:将各报文片段根据各索引号插入到所述信息载体的相应位置处,形
成传输报文,每一次的插入位置均为在之前已插入报文片段后的信息载体的基
础上索引号确定的位置;
S4:设置所述传输报文的报文头部,在所述报文头部填入握手数据,所
述握手数据包括所述索引号。
2.如权利要求1所述的报文动态封装方法,其特征在于,在步骤S3和S4
之间还包括步骤S31:将所述传输报文进行分片重组;在步骤S4中,所述握
手数据还包括重组信息。
3.如权利要求1所述的报文动态封装方法,其特征在于,在所述步骤S1
中,所述无理数产生器包括非线性函数库,所述非线性函数库存有能够通过输
入一有理数而产生无理数的函数,选取所述非线性函数库中的其中一个函数或
几个函数的组合产生第一无理数,作为信息载体。
4.如权利要求3所述的报文动态封装方法,其特征在于,所述无理数产生
器还包括线性函数库,所述线性函数库中存有通过输入一有理数无法产生无理
数的函数,由两个或多个所述第一无理数输入到所述线性函数库中的其中一个
函数或几个函数的组合中产生第二无理数,作为信息载体。
5.如权利要求3或4所述的报文动态封装方法,其特征在于,从函数库中
选取一函数后,标记该函数为不可再次选取的状态。
6.如权利要求1所述的报文动态封装方法,其特征在于,在所述步骤S2
中,所述数字序列为一随机整数的各位上的数值组合而成的序列。
7.如权利要求6所述的报文动态封装方法,其特征在于,所述随机整数的
产生方式为步骤A1:获取所述无理数的小数部分,并根据所述预设数目将该
小数部分转换为整数,作为所述随机整数,计算公式依次包括(a)和(b):
ΔIN=IN-[IN](a)
Nr=[ΔIN*10^Ar](b)
其中,IN为所述无理数,[IN]为所述无理数的取整值,ΔIN为所述无理
数与其取整值之间的差,Ar为所述预设数目,Nr为所述随机整数。
8.如权利要求7所述的报文动态封装方法,其特征在于,在所述步骤A1
之前还包括A11:判断ΔIN=IN-[IN]是否大于零,如果是则保留该IN,否则重
新产生IN。...

【专利技术属性】
技术研发人员:张留禄姜柯戎
申请(专利权)人:上海应用技术学院
类型:发明
国别省市:上海;31

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

1