一种基于AES加密的喷泉编码无线数据安全传输方法与流程

文档序号:17773983发布日期:2019-05-28 19:48阅读:241来源:国知局
一种基于AES加密的喷泉编码无线数据安全传输方法与流程
本发明涉及一种基于aes加密的喷泉编码无线数据安全传输方法,属于无线通信以及无线数据安全传输
技术领域

背景技术
:随着无线通信技术的快速发展,通信业务量大大增加,人们对无线通信速率、通信质量、通信安全性方面的要求越来越高。无线通信系统由于信道的开放性、通信网络拓扑多变性,给恶意攻击者和非法窃听者以可乘之机。一种好的无线数据安全传输方法不仅要保证数据传输的安全性,更要能提升无线数据传输的吞吐量、更高的传输质量。现有加密算法中,高级加密标准(advancedencryptionstandard,aes)在信息安全中起了非常重要的作用,其算法简单且完全开源,易于实现,安全性高,加密解密速度快,因此,自aes算法被美国国家标准技术研究所定为标准加密算法以来,aes加密算法在计算机网络、无线通信网络、图像视频传输、数据存储等很多领域得到了非常广泛的应用。喷泉码是一种具有广播特性的前向纠错编码方法,其具有无比率、数据可通过多节点分发接收、编译码复杂度低的特点,其非常适合作为大容量数据的信道编码机制。此外,喷泉码的译码随着编码冗余度的提高,在某个冗余度值时具有门限效应,当接收端接收的数据量少于门限值时,误码率接近于极限值。喷泉码这一门限效应可使窃听者接收的数据完全无效,辅以aes加密算法,可有效增强无线数据传输的安全性,在此基础上,喷泉编码可保证正常接收端的通信质量与通信速率。基于此,本发明设计了一种基于aes加密的喷泉编码无线数据安全传输方法来保障无线数据的通信安全。技术实现要素:本发明针对无线信道特别是多节点无线广播信道的信息传输过程中的安全问题,提出了一种基于aes加密的喷泉编码无线数据安全传输方法,在保证信息传输速率的同时,能够提升信息传输的安全性。所述无线数据安全传输方法的核心思想为:发送端在应用层使用aes加密算法对需要传输的数据执行一次加密处理并将密文打包传输到网络层,网络层对密文打包后的数据进行喷泉编码得出喷泉编码后的密文数据,编码分发到无线广播信道;合法接收端接收发送端传来的喷泉编码后的密文数据,当接收端网络层接收到足够的编码数据包进行喷泉解码并解码正确后,即将喷泉译码后的密文数据拆包后传输到应用层,按组对数据进行解密,即可准确无误的恢复出发送端发送的数据。窃听端无法接收到足够的数据以恢复喷泉编码数据,即使知道aes解密方法,也无法正确结算处发送端发送的数据信息。所述无线数据安全传输方法依托的系统包括发送端、信道和接收端;其中,发送端包括初始化模块、aes加密器和喷泉编码分发器;信道是无线广播信道;接收端包括合法接收端和窃听端;其中,合法接收端包括喷泉译码组合器、aes解密器和信息恢复器;窃听端包括信息恢复器。所述无线数据安全传输方法,包括以下步骤:步骤1、初始化模块生成待加密数据,初始化aes加密参数以及喷泉编码参数,并对待加密数据进行分组;步骤1可分为以下子步骤:步骤1.1、生成待加密数据,并将数据统一转化成二进制数据;其中,待加密数据为文本、字符及图片数据中的一种或组合;步骤1.2、aes参数初始化;其中,aes加密参数包括待加密分组数据、aes加密初始向量及密钥key;待加密分组数据为步骤1.1生成的待加密数据按照长度为m进行分组,最后一组数据若不足长度m,则在数据后端补零凑够长度m;aes加密初始向量随机生成,长度为m,记为s0;密钥key的长度记为ns;其中,长度m为128,密钥key的长度为128、192以及256三种中的一种;步骤1.3、初始化喷泉码参数;其中,喷泉码参数包括喷泉编码长度k与编码冗余度r;其中,k大于m,且能被m整除,定义l=k/m;将步骤1.2中初始化的加密分组数据中l组数据设定为1包,包括l组长度为m的待加密数据,记为p;最后一包加密分组数据不够l组,则在数据后补零,凑够l组数据;其中,p中的第i组数据用pi表示,1≤i≤l;步骤2、发送端aes加密器对加密分组数据进行aes加密,生成加密后的数据;其中,aes加密为输出反馈模式,单轮加密方式采用aes标准加密方式;步骤2,具体包括如下子步骤:步骤2.1、初始化i=1以及aes加密初始向量s0;步骤2.2、将aes加密初始向量与密钥key进行单轮aes加密运算,输出第i次加密数据si;其中,si的长度为m=128比特;步骤2.3、将步骤2.2输出的第i次加密数据si与步骤1.3生成的p中的第i组数据pi异或,得到第i组加密后的数据ci;步骤2.3、判断i是否等于l,若是,则表明加密次数已达到l,汇总l次第i组加密后的数据ci生成aes加密后的数据c,跳至步骤2.4;若否,则将步骤2.2输出的第i次加密数据si作为aes加密初始向量,i=i+1,跳至步骤2.2;步骤2.4、将l组加密后的数据ci打包,组成k比特喷泉码编码数据;其中,喷泉码编码数据用x表示,x中的元素记为xk,其中1≤k≤k;其中,i的取值范围为1≤i≤l;步骤3:喷泉编码分发器生成喷泉编码鲁棒孤子分布,具体可分为以下子步骤:步骤3.1、设定喷泉编码参数c与编码失败概率δ;步骤3.2、计算输出符号节点度为1的平均值,具体通过公式(1)计算:其中,s为输出符号节点度为1的平均值,k为喷泉码编码长度;步骤3.3、计算理想情况下的输出符号节点度分布-soliton分布,如公式(2);ρ(1)=1/kρ(d)=1/d(d-1),d=2,3,…,k(2)其中,ρ为soliton度分布值,d为输入符号的度值,取值范围为1≤d≤k;步骤3.4、计算解码失败概率的上界值,如公式(3);其中,τ(d)为第d个符号值的解码失败概率上界值;步骤3.5、利用步骤3.3与步骤3.4结果计算成功解码度量值z,如公式(4);步骤3.6、利用步骤3.4与步骤3.5结果计算生成鲁棒孤子(robust-soliton)分布ρa(d),如公式(5):步骤4、喷泉编码分发器将步骤2输出的k比特加密信息基于步骤3生成的鲁棒孤子分布进行喷泉编码,输出k(1+r)比特编码信息,具体为:步骤4.1、根据步骤3生成的robust-soliton分布ρa(d)随机选取一个度d;步骤4.2、从步骤2输出的k比特加密信息中利用均匀分布选取d个比特;步骤4.3、将步骤4.2选取的d个比特做异或运算,得到1个输出比特;步骤4.4、重复步骤4.1-步骤4.3,重复k(1+r)-1次,完成喷泉编码,输出k(1+r)比特编码信息;步骤5、将经步骤4喷泉编码后的编码信息分发送入无线广播信道;步骤6、合法接收端的喷泉译码组合器接收足够的数据后,进行喷泉码译码,输出喷泉译码后的k个比特;其中,喷泉译码后的k个比特,即为xk,1≤k≤k;步骤6,具体包括如下子步骤:步骤6.1、合法接收端接收n比特信息,记为y;其中,n=(1+r)k;y中的元素yn,1≤n≤n;步骤6.2、将yn作为校验节点,输入比特xk作为输入,建立连接图;步骤6.3、寻找一个只与一个输入xk相连接的检验节点,若能找到,令xk=yn,同时对所有与xk相连接的校验节点,进行如下赋值运算:其中,yn'是任意一个与xk相连接的校验节点,表示将它左边的运算结果赋值给右边的变量;最后在连接图中删除与xk相连接的所有的边;若找不到一个只与一个输入xk相连接的检验节点,表明解码失败,跳至步骤6.1;步骤6.4、重复步骤6.2到步骤6.3直到所有的xk,1≤k≤k被确定,解码成功;步骤7、合法接收端aes解密器将步骤6输出的xk,1≤k≤k进行l次aes解密,生成aes解密后的数据p′;步骤7,具体为:步骤7.1、将步骤6输出的k比特信息按顺序分成l组,每组m比特,用ci′表示,1≤i≤l;其中,ci′表示第i组待解密数据;步骤7.2、初始化i=1,将步骤1.2生成的aes加密初始向量s0初始化为aes解密器的aes初始化向量s0';步骤7.3、将向量si-1'与密钥key在aes解密器中进行aes单轮解密,得到m位数据si′;步骤7.4、将步骤7.3输出的m位数据si′与m位输入的ci′异或得到解密信息pi′;步骤7.5、判断i是否等于l,若是,则表明解密次数已达到l,汇总l次解密后的数据pi′生成aes解密后的数据p′,跳至步骤8;若否,i=i+1,跳至步骤7.3;步骤8、合法接收端的信息恢复器按位比较解密数据p′与发送数据p,统计p′与p相同与不同的位数,计算合法接收端的误比特率;步骤9、窃听端在信道中的某一节点接收数据信息,且使得窃听端接收到的数据以极大的概率小于喷泉码的译码门限,辅以aes加密算法,计算窃听端的误比特率;其中,窃听端接收到的数据以极大的概率小于喷泉码的译码门限的原因是:窃听端在信道中的某一节点接收数据信息,致使窃听端接收的数据不足以恢复原始信息,再辅以aes加密算法,导致窃听端无法正确恢复信息;至此,经过步骤1到步骤9,实现一种基于aes加密的喷泉编码无线数据安全传输方法。有益效果本发明涉及一种基于aes加密的喷泉编码无线数据安全传输方法,与现有基于加密的安全传输方法相比,具有如下有益效果:1.在aes加密基础上增加了喷泉编码,喷泉编码的门限效应可有效增强无线数据传输的安全性;2.喷泉码以广播的方式,向多个接收节点发送源源不断的数据包,此外其无码率的特性,可有效提升数据传输的有效性;3.发送端在编码时可改变喷泉码参数设置,辅以aes加密算法,窃听者即使收到足够编码包也无法译出有效信息;4.发送端与接收端可事先约定要传输的数据存在哪些编码包内,接收端可有针对地接收这些编码包,窃听者无法获得这些存储信息,不会接收有效的数据包,而众多碎片式的编码包还会增加窃听端的吞吐量。附图说明图1是本发明及实施例1中的一种基于aes加密的喷泉编码无线数据安全传输方法的系统组成框图;图2是本发明及实施例1中一种基于aes加密的喷泉编码无线数据安全传输方法的流程图;图3是本发明及实施例1中一种基于aes加密的喷泉编码无线数据安全传输方法的aes加密解密流程图;图4是本发明及实施例1中一种基于aes加密的喷泉编码无线数据安全传输方法的喷泉码译码过程举例;图5是本发明一种基于aes加密的喷泉编码无线数据安全传输方法实施例1中采用图片作为信源的加密解密对比图。具体实施方式下面结合附图和实施例对本发明做进一步说明和详细描述。实施例1图1给出了本发明一种基于aes加密的喷泉编码无线数据安全传输方法的系统组成框图,发送端将信源信息首先进行aes加密,将加密后的信息打包后进行喷泉编码分发;合法接收端对接收到的信息首先进行喷泉译码组合,再对译码后的数据进行分组解密,得到解密后的信息。窃听端在信道网络的某一节点接收数据。本实施例具体阐述了本发明实施过程中,各步骤的具体情况,主要依据说明书主体中的步骤1到步骤9,数据传输流程如图2所示,其具体操作步骤如下:步骤a:发送端初始化模块生成待加密数据,初始化aes加密参数以及喷泉编码参数,并对待加密数据进行分组;步骤a.1、生成待加密数据,并将数据统一转化成二进制数据;其中,待加密数据在本实施例的具体实施时,采用经典lenna图片,图片像素为256*256*3,每个像素为8比特,则待加密数据p总长度为256*256*3*8=1572864比特;步骤a.2、aes参数初始化并对数据进行分组;具体选用aes-128加密方法,分组数据长度m=128,密钥长度ns=128;生成aes加密算法密钥(key=nucbitaesltcomse)与aes加密初始向量为:s0=0123456789abcdef,aes-128算法中采用这些字符的ascii码;步骤a.3、初始化喷泉码参数,并对待加密数据进行喷泉码分组和补零;其中,喷泉码编码长度k=2048与编码冗余度r=0.2;则要发送完全部图片数据,需要发送1572864/k=768个喷泉包,每个喷泉包又包含l=16组长度为m=128的aes加密数据包;l=16组数据为1包,组成l组长度为m的待加密数据,每组数据用pi表示,1≤i≤l,总的数据用p表示;步骤b、发送端进行aes加密,生成加密后的数据;其中,aes加密模式采用输出反馈ofb模式,具体加密过程如图3a所示,包含如下子步骤:步骤b.1、将aes加密初始向量与初始key进行单轮aes加密运算后,输出第i次加密数据si,其中,si的长度为m=128比特;表1给出了部分第1次加密数据s1:表1输出数据s1的值10924820314190……2103114步骤b.2、输出m=128位数据si与m=128位输入的待加密数据pi异或,得到加密后数据ci,其中1≤i≤l;表2给出了第一组数据输入p1与第一组加密后数据c1的值。表2数据s1与待加密信息p1异或输出c1s110924820314190……2103114p1156158161165168……159160162c124110210640242……77191172步骤b.3、将步骤b.2输出的数据si作为下一组aes加密初始向量,重复执行步骤b.1到步骤b.3,直到加密次数达到l,生成aes加密后的数据c;其中,c中的元素记为xk,其中1≤k≤k;步骤c:喷泉编码分发器生成喷泉编码的鲁棒孤子分布,其具体可分为以下子步骤:步骤c.1、设定喷泉编码参数c=0.05与编码失败概率δ=0.05;步骤c.2、由公式(1)计算输出符号节点度为1的平均值slt=24;步骤c.3、由公式(2)计算理想情况下的输出符号节点度分布-soliton分布,如表3所示:表3输出符号soliton分布值ρ(1)=0.000488ρ(2)=0.5ρ(3)=0.1667…ρ(2047)=2.39e-07ρ(2048)=2.39e-07步骤c.4、由公式(3)计算解码失败概率的上界值,如表4所示:表4解码失败概率值τ(1)=0.0117τ(2)=0.0059τ(3)=0.0039…τ(2047)=0τ(2048)=0步骤c.5、由公式(4)计算成功解码度量值z=1.1313;步骤c.6、生成robust-soliton分布ρa(d),如表5所示:表5robust-soliton分布ρa(d)ρa(1)=0.0108ρa(2)=0.4472ρa(3)=0.1508…ρa(2047)=2.11e-07ρa(2048)=2.12e-07步骤d、将步骤b输出的k比特加密信息xk采用步骤c生成的鲁棒孤子分布进行喷泉编码,输出k(1+r)比特编码信息,分为以下子步骤:步骤d.1、根据步骤c生成的robust-soliton分布ρa(d)随机选取一个输出符号度d,例如表5中以概率为0.4472选取出d=2的度;步骤d.2、从步骤b输出的k=2048比特加密信息c中利用均匀分布选取d=2个符号;步骤d.3、将步骤d.2选取的2个符号做异或运算,得到输出符号;步骤d.4、重复上述步骤n=k(1+r)=2458-1=2457次,完成编码,输出2458比特编码信息;步骤e、将编码后的符号分发送入无线广播信道;步骤f、合法接收端的喷泉译码组合器接收足够的数据后,进行喷泉码译码,具体为:步骤f.1、合法接收端接收n比特符号信息yn,其中n=(1+r)k=2458;步骤f.2、将符号yn作为校验节点,输入符号xk作为输入符号,建立连接图,附图4给出了4位编码比特的连接图;步骤f.3、寻找一个只与一个输入符号xk相连接的检验节点,若能找到,令xk=yn,同时对所有与xk相连接的校验节点,进行如下赋值运算:其中yn'是任意一个与xk相连接的校验节点,表示将它左边的运算结果赋值给右边的变量;最后在连接图中删除与xk相连接的所有的边;若找不到,表明解码失败,重新执行步骤6.1;步骤f.3、假设y0y1y2y3=0111,图4中黑色表示0,白色表示1,从图4(a)中可以看到,只有x0与y0连接,所以x0=0。在图4(b)中,并删除图4(b)中与x0相连接的边得到图4(c),可以看到,在图4(c)中,y3与一个信源节点连接,则有x1=y3=1。在图4(d)中,并删除图4(d)中与x1相连接的边得到图4(e),从图4(e)中可得到x2=y1=0,译码输出为010;表6给出当k=2048时对应不同冗余度r时译码失败概率f的数值,可以看到,当r>0.15后,译码失败概率为0,意味着当r>0.15时,接收端有很好的可靠性能。但当r<0.15时,译码失败概率很高,当接收端接收数据的冗余度r<0.15时,喷泉码译码失败,接收端无法获取接收端信息,接收端无法给出后端aes解码算法的有效信息,从而保证了数据传输的安全性。表6当k=2048时对应不同冗余度r时译码失败概率f的数值r0.010.020.030.040.050.060.070.080.090.100.110.120.13f0.9000.9350.9040.8060.7910.6750.5570.9240.8170.7010.8610.8440.726r0.140.150.160.170.180.190.200.210.220.230.240.25f0.4500.0000.0000.0000.0000.0000.0000.0000.0000.0000.0000.000步骤f.4、重复步骤f.2到步骤f.3直到所有的xk被确定,解码成功;步骤g、合法接收端进行aes解密,解密过程如图3b所示;步骤g包含以下子步骤:步骤g.1、将步骤f输出的k=2048比特信息按顺序分成l=16组,每组m=128比特,设定aes初始向量:s0'=0123456789abcdef;步骤g.2、将初始向量与key进行aes单轮解密,得到m位数据si′;步骤g.3、输出m位数据si′与m位输入的加密数据ci′异或得到解密信息pi′;步骤g.4、将步骤g.2输出的数据si′作为下一组aes单轮解密的初始向量,重复执行步骤g.2到步骤g.4,直到解密次数达到l,生成aes解密后的数据p′;步骤h、合法接收端的信息恢复器解密数据p′与发送数据p比较,查看本方法的可靠性效果;图5以lenna图片为加密信息,图5a为喷泉码r=0.2时的加密解密效果图,其中,第一幅图片为信源图片,第二幅图片为aes加密后的数据,第三幅为接收端喷泉解码后的数据图片,第四幅为解密后的数据图片。从图5a中可以看出,r=0.2时本方法的加密效果与单纯aes加密效果是一致的。步骤i、窃听端比较接收到数据与原始数据,查看本方法的安全性效果。图5b给出了r=0.1时的加密解密效果,当r=0.1时,喷泉译码失败,接收端无法破译信息,加密成功;至此,经过步骤a到步骤i,实现了一种基于aes加密的喷泉编码无线数据安全传输方法。步骤7、合法接收端aes解密器将步骤6输出的xk进行aes解密,具体为:步骤7.1、将步骤6输出的k比特信息按顺序分成l组,每组m比特,用ci′表示,1≤i≤l;步骤7.2、将步骤1.2生成的aes初始向量与key在aes解密器中进行aes单轮解密,得到m位数据si′;步骤7.3、输出m位数据si′与m位输入的加密数据ci′异或得到解密信息pi′;步骤7.4、将步骤7.2输出的数据si′作为下一组aes单轮解密的初始向量,重复执行步骤7.2到步骤7.4,直到解密次数达到l,生成aes加密后的数据p′;步骤8、合法接收端的信息恢复器按位比较解密数据p′与发送数据p,统计p′与p相同与不同的位数,查看本方法的可靠性效果;步骤9、窃听端在信道中的某一节点接收数据信息,且使得窃听端接收到的数据以极大的概率小于喷泉码的译码门限,辅以aes加密算法;其中,窃听端接收到的数据以极大的概率小于喷泉码的译码门限的原因是:窃听端在信道中的某一节点接收数据信息,致使窃听端接收的数据不足以恢复原始信息,再辅以aes加密算法,导致窃听端无法正确恢复信息。以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1