一种基于喷泉码控制与数据互锁的无线安全传输方法
技术领域
本发明属于无线通信技术领域,涉及一种基于喷泉码控制与数据互锁的无线安全传输方法。
背景技术
随着5G通信、物联网的日益普及,无线通信安全面临着越来越多的挑战,传统的加密方案通过网络上层协议依靠计算复杂度来实现的安全传输,在现如今随着高性能芯片的发展变得不再绝对安全可靠,同时复杂的计算对于设备的功耗控制也带来巨大的压力。因此,基于安全容量的,利用噪声和信道固有随机性的物理层安全传输机制受到人们越来越多的关注,其中喷泉码编码作为一种有效的安全编码方案,在独立衰落信道条件下只要合法接收端在窃听者接收到足够多编码包之前完成解码就能够实现数据的安全传输,而不需要物理层以上的额外开销;与如今TCP/IP协议使用ARQ重传机制来保证可靠传输不同,喷泉码作为一种无码率抹除码在编码时对原始数据进行随机编码,合法接收端只要收到足够数量的编码包就可以恢复所有源信息,解码条件只与收到的编码包数量有关,因此基于喷泉码的无线传输可以在降低传输负载同时,能够进一步提高传输安全性。
传统的喷泉码无线传输方案只要求合法接收端在窃听者截获到足够的编码包之前完成解码即可实现安全通信,但实际中合法用户的信道优势不一定能够一直保持,同时由于传统的喷泉码传输将喷泉码编码数据与编码信息一同发送,导致编码包一旦被窃听者截获,所在编码包的编码信息就会直接泄露给窃听者,窃听者可以依据编码信息对喷泉码编码包进行解码,使得窃听者即使在不能完全解码所有数据的情况下也能够恢复出部分有效信息,因此传统的喷泉码传输方案并不能满足高安全需求场景中的应用。
发明内容
本发明的目的在于克服上述现有技术的缺点,提供了一种基于喷泉码控制与数据互锁的无线安全传输方法,该方法能够实现信息的安全传输。
为达到上述目的,本发明所述的基于喷泉码控制与数据互锁的无线安全传输方法包括以下步骤:
1)合法发送端将源数据分为K个二进制原始数据包T1,T2,…,TK,其中,每个二进制原始数据包的长度均为WKbits,并根据原始数据包的个数K得服从鲁棒孤子度分布的LT编码的度分布函数ρ(dK),其中,dK为K个原始数据包时的编码度值;
通过改进的RC4伪随机数生成算法分别得到服从ρ(d
K)分布的正整数伪随机序列R
d=[r
d,1,r
d,2,…,r
d,i](1≤r
d,i≤K,i≥1)及服从(0,K)区间均匀分布的正整数伪随机序列R
w=[r
w,1,r
w,2,…,r
w,j](1≤r
w,j≤K,j≥1),其中,r
d,i表示伪随机序列R
d中的第i个伪随机数,r
w,j表示伪随机序列R
w中的第j个伪随机数,伪随机序列R
d及伪随机序列R
w的随机数种子分别为比特序列
和
伪随机序列R
d及伪随机序列R
w的随机数种子长度均为W
Rbits;
对二进制原始数据包T1,T2,…,TK进行LT编码,得到喷泉码编码包S1,S2,S3…;
对每一个喷泉码编码包Si添加包序号Vi,得到待发送数据包Xi=[Vi,Si](i≥1),最后将待发送数据包通过链路层添加CRC校验码、进行信道编码以及数字调制后广播给合法接收端;
2)合法接收端接收合法发送端发送的数据包Yj=[Vj,Sj](j≥1),缓存喷泉码编码包数据Sj,并将包序号Vj记录到接收包序号集SN中,合法接收端在接收到L个喷泉码编码包后,利用基带人工噪声对接收包序号集SN的基带信号进行加密,得噪声加扰的反馈信号FAN,再将噪声加扰的反馈信号FAN反馈给合法发送端;
3)合法发送端利用所述基带人工噪声解密反馈信号F
AN,得到接收包序号集SN,再将正整数伪随机序列R
d=[r
d,1,r
d,2,…,r
d,i](1≤r
d,i≤K,i≥1)和R
w=[r
w,1,r
w,2,…,r
w,j](1≤r
w,j≤K,j≥1)的随机数种子
及
分别作为密钥,将接收包序号集SN中所有包序号V
i(1≤i≤L)对应的喷泉码编码包数据[S
SN(1),S
SN(2),…,S
SN(L)]与长度为W
Rbits的密钥相匹配,得到匹配后的喷泉码编码包数据[S′
SN(1),S′
SN(2),…,S′
SN(L)],其中,S
SN(i)和S′
SN(i)分别表示数据包序号集SN中第i个包序号所对应的喷泉码编码包以及匹配后的喷泉码编码包,然后利用匹配后的喷泉码编码包数据对两个比特密钥
及
分别进行逐位异或加密,得到加密密钥SR
d和SR
W;
最后合法发送端将加密密钥SRd和SRW发送给合法接收端,并在收到密钥解密ACK确认信息后发送后续的喷泉码编码包,否则,继续发送加密密钥SRd和SRW;
4)合法接收端对缓存的前L个喷泉码编码包数据进行与步骤3)中一致的数据长度匹配,得到匹配后的喷泉码编码包数据[S′
SN(1),S′
SN(2),…,S′
SN(L)],并利用匹配后的喷泉码编码包数据[S′
SN(1),S′
SN(2),…,S′
SN(L)]对接收到的加密密钥SR
d和SR
W进行解密,得随机比特种子
和
并向合法发送端反馈密钥解密ACK确认信息,否则,继续接收并解密密钥;
合法接收端根据改进的RC4伪随机数生成算法恢复出与合法发送端相同的伪随机序列Rd=[rd,1,rd,2,…,rd,i](1≤rd,i≤K,i≥1)和Rw=[rw,1,rw,2,…,rw,j](1≤rw,j≤K,j≥1),然后根据所述伪随机序列和接收编码包的包序号Vj(1≤j≤N),恢复出所有已接收喷泉码编码包的编码生成矩阵G=[g1,g2,…,gN],其中,N为接收到的喷泉码编码包的个数,G中的元素gi(1≤i≤N)为第i个接收编码包的编码向量且由(0,1)比特构成,合法接收端利用生成矩阵G=[g1,g2,…,gN]对喷泉码编码包进行解码,最终在完成解码并恢复出所有原始数据后向合法发送端反馈解码完成ACK确认信息,结束本次喷泉码安全传输。
步骤1)中,在对第i个喷泉码编码包S
i的编码过程中,将伪随机序列R
d中的第i个随机数r
d,i用作喷泉码编码包S
i的随机编码度值d
i,并依次选择伪随机序列R
w中的d
i个随机数构成随机数组
作为所有参与喷泉码编码包S
i编码的原始数据包编号,其中,j表示伪随机序列R
w中当前所取到的随机数序号。
步骤2)中的基带人工噪声由第三方可信中心向合法收发用户发送。
步骤2)中的L由合法接收端随机决定,并且满足K≤L≤KZ,且在服从鲁棒孤子度分布的LT编码中,为确保未成功译码的概率小于给定输入参数δ,合法接收端收到的喷泉码编码包个数至少为KZ。
步骤3)中逐位异或加密过程可表示为:
步骤3)中长度为WKbits的喷泉码编码包数据与长度为WRbits的密钥相匹配的具体操作为:
当WK>WR,则截取所有喷泉码编码包数据[SSN(1),SSN(2),…,SSN(L)]的前WRbits组成匹配后的喷泉码编码包数据[S′SN(1),S′SN(2),…,S′SN(L)];
当WK<WR,则在所有喷泉码编码包数据[SSN(1),SSN(2),…,SSN(L)]的后面循环添加原有的数据序列,得到数据长度为WRbits的匹配后的喷泉码编码包数据[S′SN(1),S′SN(2),…,S′SN(L)];
当WK=WR,喷泉码编码包数据[SSN(1),SSN(2),…,SSN(L)]可直接用作匹配后的喷泉码编码包数据[S′SN(1),S′SN(2),…,S′SN(L)]。
本发明具有以下有益效果:
本发明所述的基于喷泉码控制与数据互锁的无线安全传输方法在具体操作时,将喷泉码编码特性与无线信道的随机特性相结合,利用无线信道下合法接收端和窃听者接收数据包的差异性实现对数据包编码信息的隐式加密传递。由喷泉码的编码特性可知,喷泉码的编码生成矩阵可以由两个正整数伪随机序列唯一确定,并且喷泉码的所有解码算法都依赖于编码生成矩阵,因此合法发送端将所述伪随机序列的随机数种子作为密钥,利用合法接收端接收的喷泉码编码包数据对密钥进行异或加密后发送给合法接收端;由于发送数据包不含有编码数据的编码信息,因此在喷泉码传输过程中不会造成编码信息的泄露,保障了数据安全,同时结合基带人工噪声能够进一步提升喷泉码的安全传输性能。除此之外,本发明中编码所使用的改进RC4伪随机数生成算法能够输入不同长度的随机数种子,随机数种子越长系统安全性越高,但相应的计算复杂度也越高,因此本发明可针对不同安全等级需求的场景,灵活选择不同长度的随机数种子,能够有效平衡安全性能和计算复杂度的要求。
附图说明
图1为本发明的系统模型图;
图2为本发明与对比方案下窃听者窃听概率与系统信噪比之间的变化关系曲线图;
图3为本发明与对比方案下窃听者恢复比例与系统信噪比之间的变化关系曲线图;
图4为本发明与对比方案下窃听者窃听概率与窃听者在不同位置处的变化关系曲线图。
具体实施方式
下面结合附图对本发明做进一步详细描述:
系统模型如图1所示,系统各节点分别为合法发送端Alice、合法接收端Bob及窃听者Eve,其中,合法发送端Alice向合法接收端Bob发送编码数据,合法接收端Bob根据收到的数据向合法发送端Alice发送反馈信息,窃听者Eve被动监听合法发送端Alice和合法接收端Bob的数据传输。
室内无线信道模型定义为块平坦瑞利衰落信道,合法链路和窃听链路信道在一定条件下满足独立衰落分布,信道参量h在一个发送时隙内保持不变,但在不同时隙间独立变化,节点i和节点j之间的信道参数h
ij为一个零均值、方差为
的循环对称复高斯随机变量,其中,d
ij为节点i和节点j之间的距离,α为信道衰落指数,接收机处的加性高斯白噪声W的方差为N
0,当合法发送端Alice的平均发送功率为
时,数据接收节点j处的信噪比γ
Aj为:
γAj=ρ|hAj|2
在喷泉码数据传输过程中,假设在第i个时隙,合法发送端Alice的发送信号为xi,则在第i时隙,合法接收端Bob和窃听者Eve的接收信号yB,i及yE,i分别为:
yB,i=hAB,ixi+nB
yE,i=hAE,ixi+nE
其中,hAB,i及hAE,i分别表示第i时隙合法链路和窃听链路的信道参数,nB及nE表示合法接收端Bob和窃听者Eve的高斯加性白噪声。
在平坦慢衰落信道下,信道参数在不同时隙间变化非常缓慢,因此可以用hAB和hAE表示合法链路和窃听链路的信道参数,同时假设合法接收端Bob和窃听者Eve采用同样的接收机系统,则有nB=nE,此时得合法接收端Bob和窃听者Eve处的平均接收信噪比为:
喷泉码编码的主要思想是将待传输数据分成K个原始数据包D1,D2,…,DK,根据度分布函数ρ(d)(d≥1)随机选择d个不同的原始数据包进行异或(xor)得到编码数据Si(i=1...∞),其中,d∈1...K,下标i表示第i个喷泉码编码包,编码信息即生成矩阵向量为Gi(i≤N),因此喷泉码编码过程可表示为:
传统的喷泉码传输方案是将编码信息插入到喷泉码数据向量前组成喷泉码发送包后发送给接收端,发送数据包可表示为:
X1=[G1,S1],X2=[G2,S2],…XN=[GN,SN],因此窃听端只要截获发送数据包,就能根据编码信息对喷泉码编码数据进行解码并恢复出原始数据。不同于传统的喷泉码传输方案,本发明通过在合法用户间实现编码生成矩阵的隐式加密传递,避免了传输过程中数据包编码信息直接泄露,再结合基带人工噪声加密技术进一步提升喷泉码传输的安全性。
参考图1,本发明所述的基于喷泉码控制与数据互锁的无线安全传输方法包括以下步骤:
1)合法发送端将源数据分为K个二进制原始数据包T1,T2,…,TK,其中,每个二进制原始数据包的长度均为WKbits,并根据原始数据包的个数K得服从鲁棒孤子度分布的LT编码的度分布函数ρ(dK),其中,dK为K个原始数据包时的编码度值;
通过改进的RC4伪随机数生成算法分别得到服从ρ(d
K)分布的正整数伪随机序列R
d=[r
d,1,r
d,2,…,r
d,i](1≤r
d,i≤K,i≥1)及服从(0,K)区间均匀分布的正整数伪随机序列R
w=[r
w,1,r
w,2,…,r
w,j](1≤r
w,j≤K,j≥1),其中,r
d,i表示伪随机序列R
d中的第i个伪随机数,r
w,j表示伪随机序列R
w中的第j个伪随机数,伪随机序列R
d及伪随机序列R
w的随机数种子分别为比特序列
和
伪随机序列R
d及伪随机序列R
w的随机数种子长度均为W
Rbits;
对二进制原始数据包T1,T2,…,TK进行LT编码,得到喷泉码编码包S1,S2,S3…;
对每一个喷泉码编码包Si添加包序号Vi,得到待发送数据包Xi=[Vi,Si](i≥1),最后将待发送数据包通过链路层添加CRC校验码、进行信道编码以及数字调制后广播给合法接收端;
步骤1)中,在对第i个喷泉码编码包S
i的编码过程中,将伪随机序列R
d中的第i个随机数r
d,i用作喷泉码编码包S
i的随机编码度值d
i,并依次选择伪随机序列R
w中的d
i个随机数构成随机数组
作为所有参与喷泉码编码包S
i编码的原始数据包编号,其中,j表示伪随机序列R
w中当前所取到的随机数序号。
2)合法接收端接收合法发送端发送的数据包Yj=[Vj,Sj](j≥1),缓存喷泉码编码包数据Sj,并将包序号Vj记录到接收包序号集SN中,合法接收端在接收到L个喷泉码编码包后,利用基带人工噪声对接收包序号集SN的基带信号进行加密,得噪声加扰的反馈信号FAN,再将噪声加扰的反馈信号FAN反馈给合法发送端;
步骤2)中的基带人工噪声由第三方可信中心向合法收发用户发送。
步骤2)中的L由合法接收端随机决定,并且满足K≤L≤KZ,且在服从鲁棒孤子度分布的LT编码中,为确保未成功译码的概率小于给定输入参数δ,合法接收端收到的喷泉码编码包个数至少为KZ。
3)合法发送端利用所述基带人工噪声解密反馈信号F
AN,得到接收包序号集SN,再将正整数伪随机序列R
d=[r
d,1,r
d,2,…,r
d,i](1≤r
d,i≤K,i≥1)和R
w=[r
w,1,r
w,2,…,r
w,j](1≤r
w,j≤K,j≥1)的随机数种子
及
分别作为密钥,将接收包序号集SN中所有包序号V
i(1≤i≤L)对应的喷泉码编码包数据[S
SN(1),S
SN(2),…,S
SN(L)]与长度为W
Rbits的密钥相匹配,得到匹配后的喷泉码编码包数据[S′
SN(1),S′
SN(2),…,S′
SN(L)],其中,S
SN(i)和S′
SN(i)分别表示数据包序号集SN中第i个包序号所对应的喷泉码编码包以及匹配后的喷泉码编码包,然后利用匹配后的喷泉码编码包数据对两个比特密钥
及
分别进行逐位异或加密,得到加密密钥SR
d和SR
W;
最后合法发送端将加密密钥SRd和SRW发送给合法接收端,并在收到密钥解密ACK确认信息后发送后续的喷泉码编码包,否则,继续发送加密密钥SRd和SRW;
步骤3)中逐位异或加密过程可表示为:
步骤3)中长度为WKbits的喷泉码编码包数据与长度为WRbits的密钥相匹配的具体操作为:
当WK>WR,则截取所有喷泉码编码包数据[SSN(1),SSN(2),…,SSN(L)]的前WRbits组成匹配后的喷泉码编码包数据[S′SN(1),S′SN(2),…,S′SN(L)];
当WK<WR,则在所有喷泉码编码包数据[SSN(1),SSN(2),…,SSN(L)]的后面循环添加原有的数据序列,得到数据长度为WRbits的匹配后的喷泉码编码包数据[S′SN(1),S′SN(2),…,S′SN(L)]。
当WK=WR,喷泉码编码包数据[SSN(1),SSN(2),…,SSN(L)]可直接用作匹配后的喷泉码编码包数据[S′SN(1),S′SN(2),…,S′SN(L)]。
4)合法接收端对缓存的前L个喷泉码编码包数据进行与步骤3)中一致的数据长度匹配,得到匹配后的喷泉码编码包数据[S′SN(1),S′SN(2),…,S′SN(L)],并利用匹配后的喷泉码编码包数据[S′SN(1),S′SN(2),…,S′SN(L)]对接收到的加密密钥SRd和SRW进行解密,得随机比特
种子
和
并向合法发送端反馈密钥解密ACK确认信息,否则,则继续接收并解密密钥;
合法接收端根据改进的RC4伪随机数生成算法恢复出与合法发送端相同的伪随机序列Rd=[rd,1,rd,2,…,rd,i](1≤rd,i≤K,i≥1)和Rw=[rw,1,rw,2,…,rw,j](1≤rw,j≤K,j≥1),然后根据所述伪随机序列和接收编码包的包序号Vj(1≤j≤N),恢复出所有已接收喷泉码编码包的编码生成矩阵G=[g1,g2,…,gN],其中,N为接收到的喷泉码编码包的个数,G中的元素gi(1≤i≤N)为第i个接收编码包的编码向量且由(0,1)比特构成,合法接收端利用生成矩阵G=[g1,g2,…,gN]对喷泉码编码包进行解码,最终在完成解码并恢复出所有原始数据后向合法发送端反馈解码完成ACK确认信息,结束本次喷泉码安全传输。
通过改进的RC4算法得到伪随机序列的具体过程为:
对基于喷泉码的无线安全技术研究的主要内容是提高抗窃听性能,降低窃听者解码概率,因此有必要从窃听者角度对窃听解码概率进行理论分析。
在瑞利衰落信道(Rayleigh Fading Channel)条件下,节点i向节点j发送数据,接收节点j处的接收信噪比γij的概率密度函数(PDF)可表示为:
其中,
为节点i向节点j发送数据在接收节点j处的平均接收信噪比(SNR)。
在加性高斯白噪声(AWGN)影响下,瑞利衰落信道的丢包率(PER)与接收端瞬时信噪比γij的关系可表示为:
其中,n代表不同传输模式的索引,在不同传输模式下an、gn和γpn的拟合参数数值由表1所示:
表1
|
模式1 |
模式2 |
模式3 |
模式4 |
模式5 |
模式6 |
调制模式 |
BPSK |
QPSK |
QPSK |
16-QAM |
16-QAM |
64-QAM |
编码速率 |
1/2 |
1/2 |
3/4 |
9/16 |
3/4 |
3/4 |
a<sub>n</sub> |
274.7229 |
90.2514 |
67.6181 |
50.1222 |
53.3987 |
35.3508 |
g<sub>n</sub> |
7.9932 |
3.4998 |
1.6883 |
0.6644 |
0.3756 |
0.0900 |
γ<sub>pn</sub>(dB) |
-1.5331 |
1.0942 |
3.9722 |
7.7021 |
10.2488 |
15.9784 |
得到接收节点j处的平均丢包率ψj为:
因此合法接收端Bob和窃听者Eve处的平均丢包率ψBob、ψEve分别可表示为:
在窃听信道高信噪比条件下,假设窃听者Eve和合法接收端Bob信道状态不完全相同,考虑窃听者Eve截获的喷泉码编码包中可能包含所有合法接收端Bob接收的数据包,但窃听者Eve不知道合法接收端Bob具体所接收的是哪些编码包,所以窃听者Eve只能通过暴力搜索来解密密钥,最终得到窃听者Eve截获概率的上界Pup-bound为:
其中,L及Z分别表示合法接收端Bob反馈时合法接收端Bob和窃听者Eve已接收到的喷泉码编码包个数,N表示合法发送端Alice发送的喷泉码编码包个数,
为合法接收端Bob从N个发送喷泉码编码包中接收到L个喷泉码编码包的所有组合数,
表示窃听者Eve截获的Z个喷泉码编码包中包含Bob所接收的L个喷泉码编码包的所有组合数。
仿真实验
为了更好的评估本发明的安全性能,在仿真测试中引入了三种对比方案,即LT码编码方案、喷泉码动态编码方案以及基于喷泉码的对称加密方案。其中,仿真测试场景为合法接收端和窃听者分布在以合法发送端为圆心的同心圆上,合法发送端在(0,0)点处,合法接收端在(0,1)点处,窃听端在(0,0.6)点处,坐标单位使用归一化单位表示。传输系统采用16-QAM调制,编码速率设置为9/16,在该传输模式下的拟合参数为an=50.1222,gn=0.6644,γpn=7.7021,合法接收端和窃听端均采用BP译码算法进行译码,同时设置总仿真次数为104次,传输源数据包的个数K=128,对系统信噪比(SNR)在5-25dB范围内变化时不同方案的安全性能进行软件仿真并分析窃听效果,其中,两项安全性能指标定义如下:
窃听端截获概率:窃听端成功解码的次数与总传输次数的比值。
窃听端的数据恢复比例:窃听端解码出的源数据包个数与总的源数据包个数比值的平均值。
从图2的仿真结果中可以看出,窃听者在基于喷泉码的控制与数据互锁方案下始终具有最低的窃听概率,当系统信噪比在20dB以下时窃听者的窃听概率基本处于10-4之下。由于本发明利用喷泉码的编码特性和无线信道的独立衰落特性来传递密钥,同时合法接收端采用基带人工噪声来加密反馈信息防止窃听者获取合法接收端接收情况,因此即使窃听者拥有高信噪比条件即窃听信道具有信道优势,本发明相比于三种对比方案仍然能够提供更优异的安全保障。
参考图3,由于前两种方案将编码信息直接传输,导致窃听者一旦截获编码包便可获得该编码包的编码信息,即使窃听者没有完全解码出所有源数据也能获得大部分原始信息,因此前两种方案下窃听者的数据恢复比例很高;基于喷泉码的对称加密方案则利用与编码包等长的随机密钥加密源数据包,这样面临着与应用层密钥加密相同的问题,窃听者可通过暴力破解来获得密钥,同时由于合法接收端没有对反馈信息做任何安全处理,使得窃听者一旦截获所有合法接收端接收的喷泉码包便可以破解所有原始数据,因此该方案的窃听概率曲线在系统信噪比为15dB之后开始快速上升;而本发明利用基带人工噪声加密合法接收端的反馈信息,除非窃听者截获到的喷泉码包与合法接收端收到的完全一致,否则由于窃听者只能获得编码包而不知道编码信息,因此无法对编码数据包解码,同时用于编码的随机序列的随机数种子长度可以足够长,因此能够有效抵御窃听者暴力破解,因此本发明具有更加苛刻的窃听条件,且相比于三种对比方案具有更优异的抗窃听性能。
参考图4,窃听者与合法发送端的相对距离在0-1.6之间变化,合法接收端始终处于(0,1)点处,仿真的原始数据包个数K=128。从图4中可以看出,三种对比方案的窃听概率均随着窃听者Eve和合法发送端Alice之间距离增加而减小,这表明窃听者越靠近合法发送端,窃听者的接收信噪比越高,从而能够接收到更多的喷泉码编码包,但本发明要求窃听者截获的喷泉码包与合法接收端接收的完全一致时才有可能完成解码,在无线信道独立衰落特性下,只要合法接收端与窃听者的信道状态不同,那么窃听者Eve几乎不可能接收到完全一样的喷泉码编码包,因此本发明能够有效提升系统在窃听者具有优势信道条件下的喷泉码安全传输性能。
综上所述,本发明相对于其他三种对比方案具有更好的安全性能,即使在窃听信道高信噪比条件下也能保持足够的抗窃听性能。