System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及通信加密,具体涉及一种网络通信数据加密传输方法。
技术介绍
1、由于互联网的开放性和通用性,网上的所有信息对所有人都是公开的,所以网络上的信息安全问题也日益突出。近年来,因特网上的安全事故屡有发生,在使用因特网的用户面临诸多的安全风险,例如:信息泄密、信息篡改、资源盗用等等,类似的风险也存在于其它的互联网络中。目前政府部门、金融部门、企事业单位和个人都日益重视这一重要问题,如何保护信息安全和网络安全,最大限度的减少或避免因信息泄密、破坏等安全问题所造成的经济损失及对企业形象的影响,是摆在我们面前亟需妥善解决的一项具有重大战略意义的问题。
2、现有技术中对于与网络通信数据的加密,是利用公共密钥对整个数据进行加密后分包传输,这样很容易遭受到分析攻击,从而影响数据传输的安全性,导致信息泄露,引起更大的损失。
技术实现思路
1、本专利技术提供一种网络通信数据加密传输方法,以解决现有的问题。
2、本专利技术的一种网络通信数据加密传输方法采用如下技术方案:
3、本专利技术一个实施例提供了一种网络通信数据加密传输方法,该方法包括以下步骤:
4、采集传输的网络通信数据并预处理得到传输数据,获取公共密钥;
5、获取传输数据的数据长度,根据预设阈值r对传输数据的数据长度进行划分得到若干子数据包;
6、将相邻的两个子数据包记为第t个子数据包和第t+1个子数据包;
7、获取公共密钥的二进制数,根据公共密钥的二
8、将相同的数据记为一种类型;
9、根据每个子数据包中的数据得到每个子数据包中每种数据类型的频数;
10、根据每个子数据包中每种数据类型的频数和每种数据类型连续出现的最大长度得到每个子数据包中每种数据类型的权重;
11、根据第t个子数据包中每种数据类型的权重和所有数据类型的频数的均值得到第t+1个子数据包的特征值;
12、根据每个子数据包的特征值得到每个子数据包对应的八位二进制数;
13、根据每个子数据包对应的八位二进制数和公共密钥中每个字符的二进制数得到除了第一个子数据包之外的所有子数据包的加密密钥;
14、根据第一个子数据包的加密密钥和除了第一个子数据包之外的所有子数据包的加密密钥对相应的子数据包进行加密得到所有子数据包加密之后的密文;
15、对所有子数据包加密之后的密文按照子数据包的顺序进行拼接得到传输数据的密文,将传输数据的密文发送至网络中进行传输。
16、进一步地,所述根据预设阈值r对传输数据的数据长度进行划分得到若干子数据包,包括的具体步骤如下:
17、将传输数据的个数记为传输数据的数据长度n,然后利用预设阈值r将传输数据均等分为个子数据包,表示的向上取整。
18、进一步地,所述公共密钥的二进制数的具体获取步骤如下:
19、所述公共密钥包括若干字符;
20、公共密钥转换为二进制数的公式如下所示:
21、b(pi)=ascii(pi)
22、式中,pi表示公共密钥中第i个字符,b(pi)表示公共密钥中第i个字符对应的二进制数,ascii()表示依据ascii码表将字符转换为二进制形式。
23、进一步地,所述根据公共密钥的二进制数和子数据包的个数得到第一个子数据包的加密密钥,包括的具体步骤如下:
24、第一个子数据包的加密密钥的公式为:
25、key1={ascii-1{bin[b2d(b(p1))mod(n)]},...,ascii-1{bin[b2d(b(pm))mod(n)]}}
26、式中,b(pm)表示公共密钥中第m个字符pm对应的二进制数,p1表示公共密钥中第1个字符,m等于公共密钥中字符的个数,n表示子数据包的个数;b2d()表示将二进制数转换为十进制数;bin()表示将十进制数转换为二进制数;ascii-1()表示按照ascii码表将二进制数转换为字符数据,key1表示第一个子数据包的加密密钥,mod()表示取余操作。
27、进一步地,所述子数据包中每种数据类型的权重的具体获取步骤如下:
28、每种数据类型的权重的公式为:
29、
30、式中,hj表示每个子数据包中第j种数据类型出现的频数,nj表示每个子数据包中第j种数据类型在每个子数据包中连续出现的最大长度,qj表示第j种数据类型的权重,exp()表示以自然常数为底的指数函数,r为预设阈值。
31、进一步地,所述根据第t个子数据包中每种数据类型的权重和所有数据类型的频数的均值得到第t+1个子数据包的特征值,包括的具体步骤如下:
32、第t+1个子数据包的特征值的公式为:
33、
34、式中,ht,j表示第t个子数据包中第j种数据类型出现的频数,表示第t个子数据包中所有数据类型出现的频数的均值,qt,j表示第t个子数据包中第j种数据类型的权重,kt表示第t个子数据包中所有数据类型的个数,tt+1表示第t+1个子数据包的特征值。
35、进一步地,所述根据每个子数据包的特征值得到每个子数据包对应的八位二进制数,包括的具体步骤如下:
36、当每个子数据包的特征值的值小于等于255,则将特征值直接转换为八位的二进制数,记为子数据包对应的八位二进制数;
37、如果每个子数据包的特征值大于255,则需要进行如下操作:
38、先将子数据包的特征值转换为二进制数,二进制数中第一个比特位的位置序号为0,第二个比特位的位置序号为1,以此类推,获得所有比特位的位置序号;
39、将每个比特位的位置序号记为d,将dmod(8)记为每个比特位的取模结果,获取取模结果相同的所有比特位组成一个小序列,得到八个小序列;其中,mod()表示取余函数;
40、将每个小序列合并成一个参考比特位,八个小序列对应的参考比特位构成的八位二进制数据记为子数据包对应的八位二进制数。
41、进一步地,所述将每个小序列合并成一个参考比特位,包括的具体步骤如下:
42、将每个小序列合并成一个参考比特位的过程为:首先判断小序列中有没有第二个比特位,当小序列中不存在第二个比特位,则直接将第一个比特位作为小序列的参考比特位,当小序列中存在第二个比特位,则需要将第一个比特位和第二个比特位进行异或操作,将第一个比特位和第二个比特位进行异或操作的结果记为c2,再继续判断小序列中是否存在第三个比特位,当小序列中不存在第三个比特位,则直接将c2作为小序列的参考比特位,当小序列中存在第三个比特位,则需要将c2和第三个比特位进行异或操作,将c2和第三个比特位进行异或操作的结果记为c3,再判断小序列中是否存在第四个比特位,当小序列中不存在第四个比特位,则直接将c3作为小序列的参考比特位本文档来自技高网...
【技术保护点】
1.一种网络通信数据加密传输方法,其特征在于,该方法包括以下步骤:
2.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据预设阈值R对传输数据的数据长度进行划分得到若干子数据包,包括的具体步骤如下:
3.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述公共密钥的二进制数的具体获取步骤如下:
4.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据公共密钥的二进制数和子数据包的个数得到第一个子数据包的加密密钥,包括的具体步骤如下:
5.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述子数据包中每种数据类型的权重的具体获取步骤如下:
6.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据第T个子数据包中每种数据类型的权重和所有数据类型的频数的均值得到第t+1个子数据包的特征值,包括的具体步骤如下:
7.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据每个子数据包的特征值得到每个子数据包对应的八位二进制数,包括的
8.根据权利要求7所述一种网络通信数据加密传输方法,其特征在于,所述将每个小序列合并成一个参考比特位,包括的具体步骤如下:
9.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据每个子数据包对应的八位二进制数和公共密钥中每个字符的二进制数得到除了第一个子数据包之外的所有子数据包的加密密钥,包括的具体步骤如下:
10.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据第一个子数据包的加密密钥和除了第一个子数据包之外的所有子数据包的加密密钥对相应的子数据包进行加密得到所有子数据包加密之后的密文,包括的具体步骤如下:
...【技术特征摘要】
1.一种网络通信数据加密传输方法,其特征在于,该方法包括以下步骤:
2.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据预设阈值r对传输数据的数据长度进行划分得到若干子数据包,包括的具体步骤如下:
3.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述公共密钥的二进制数的具体获取步骤如下:
4.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据公共密钥的二进制数和子数据包的个数得到第一个子数据包的加密密钥,包括的具体步骤如下:
5.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述子数据包中每种数据类型的权重的具体获取步骤如下:
6.根据权利要求1所述一种网络通信数据加密传输方法,其特征在于,所述根据第t个子数据包中每种数据类型的权重和所有数据类型的频数的均值得到第...
【专利技术属性】
技术研发人员:徐逸飞,田峰,任乐然,徐后龙,
申请(专利权)人:南京邮电大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。