在现代战略武器的飞行试验中,遥测数据安全问题是历来人们比较关注的话题。特别是最近几年,各国科学家发现通过遥测数据获取对方国家的军事和科学秘密是一种简单和易行的理想手段。再加上遥测数据在空间中传输,传输环境比较恶劣,所以误码率较高,再入遥测时还会出现数据中断的危险,为此对遥测数据文件加密势在必行,我们也提出了一种基于序列加密的PCM/FM遥测系统加密方法。

一、PCM/FM系统加密和解密方案

1、PCM/FM系统的加密和解密模型

序列加密可以将明文(购和一个保密的序列(即密钥流R)通过一种简单和有效的运算来产生密文(y)。这种简单和有效的运算可以采用模2加法。所以加密和解密相应地定义为,加密X+R=Y,解密Y+R=X。

大多数序列加密都采用这种运算法则。假定序列产生器输出的密钥流真是随机的话,那么把明文和密钥流作模2加运算就能得到不可破译的密码。

对于该模型,如果直接将密钥流R作为帧结构的一部分进行传输,一旦攻击者获得R,就可以解出截获的密文。因此,在密码产生过程中必须引入一个起始向量Z。实际上不同的起始向量将产生不同的密码序列。这里的Z不但用来提供密码强度,而且还用来建立通信间的密钥同步。

由函数g产生的密钥R可以表示为R= gK(z),这里Z和K满足关系式K=HΦ(z),其中HΦ表示某密钥流生成函数(比如混沌函数,或其他密钥流生成器)。由K再经密钥流生成器产生加密密钥R,R
=gK(z)(gK()表示密钥流生成器,比如钟控密钥流生成器。

加密和解密运算定义为:Y=X+R=X+gK(z),X=Y+gK(z)。

2、密钥流生成器

设计序列密码加解密方案,最重要的步骤是设计密钥流生成器。本文设计了一种新的模型如图1所示。该模型结构设备简单,易于实现。单个线性反馈移位寄存器经过适当的组合后,可以产生大周期的密钥流序列。

选取3个线性反馈移位寄存器LSFRi(i=1,2,3)进行组合设计。将LSFRi输出位与LSFR2的输出位进行异或得yl=L1+L2,把yl看成是一个控制器,若yl =1,执行yi =L1+L2;若y1=O,则输出L2。Li表示第i个LSFR的输出。根据文献5可以证明,该钟控移位寄存器可以产生具有大周期的序列,抗攻击能力强。

二、PCM/FM系统同步方案的设计

1、密钥同步策略

序列密码加密是按位或字节对明文逐个加密,每一位或字节加密时用的密钥都不相同,因此收发两端的密钥必须保持严格的同步。解决同步问题的方法是采用分组加密的形式。每次传送一帧,一帧中包含4组,每组分为3部分。第1部分是序列号,第1部分是组种子密钥,第3部分是密文。

帧的长度是根据信道编码的长度决定的,本遥测系统采用LDPC码,仿真LDPC码码长在1000到4000位之间。一般情况下,遥测数据的帧长在256字节以上。选取帧长为2048位。帧同步头的长度一般为帧长的5%到10%,且要求小于64位,选为32位。序列号表示一帧中每一组的序号,用两位二进制数表示。进行(3,1)重复编码后,用8位二进制数来传送序列号。组种子密钥是用来产生密钥流序列的。钟控密钥流生成器由3个线性反馈移位寄存器组成,其中37级LFSR2和41级LFSR3的初始状态预先设定好,只改变31级LFSR1的初态。这个初态值可由一个5级LFSRO产生,用5位二进制数表示。进行(3,1)重复编码后,用16位二进制数来传送组种子密钥。最后计算得出每组密文的长度为480位。即一帧有2 048位,同步头占32位,每组共有504位,其中前8位表示序列号,中间16位表示组种子密钥,最后480位表示密文。根据上面提到的分组序列加密方式,可将具体加密过程作如下处理:

(1)收发两端预置相同的组种子密钥以及LFSR2和LFSR3的初始值;

(2)每帧的同步头不作加密处理,同时每组中的序列号也不作加密处理,只对数据源进行加密。发端将首帧第1组的组种子密钥作为LFSRO的初始值,再由LFSRO产生出LFSR1的初始状态值,执行钟控密钥流生成器产生密钥流序列a控制时钟产生500位的密钥流序列,前面480位用于与明文作异或处理得到首帧第1组的密文信息,同时记忆最后5位作为第2组的组种子密钥;

(3)将第1组密钥流序列的最后5位作为第2组的组种子密钥,输入到LFSRO产生出LFSR1的初始值,执行钟控密钥流生成器产生密钥流序列。同样产生500位的密钥流序列,前480位用于加密明文,最后5位作为第3组的组种子密钥。依次类推,将首帧第4组的密钥流序列的最后5位作为第2帧第1组的组种子密钥,产生密钥流序列,同时记忆下一组的组种子密钥。按此方法,得到每一帧中每一组的密文信息。这样,每帧中每组数据的加密密钥都是各不相同的,与每组中的组种子密钥有关。

这种加密形式从表面上看来,似乎效率不高。但是,如果一旦发生错误,也就只限于该组,不会扩展,勿须纠错,只要误码率可以接受的话,是可以的。

2、接收端的解密

在位同步和帧同步的基础上,接收端根据预置的主种子密钥以及LFSR2和LFSR3的初始值,从接收到的每帧的各组数据中被动先获取同步密钥信息,同时启动生成器生成解密密钥,从而把各组数据解密。

三、PCM/FM遥测系统仿真分析

1、密钥流序列的随机性统计

由于密码学意义上安全的随机数比其它大多数应用场合对随机性的要求更严格。因此,需要对生成的密钥流序列进行随机性统计检验。m序列严格满足Cblomb随机性假设,对于一个不是真正随机意义下的序列,如果它具有与真正随机序列相类似的随机特性,即可称之为伪随机序列。对密钥流序列截短50000位时的Cblomb随机特性检验:

(1)0、1个数如表1所示。

(2)不同长度的0、1游程个数如表2所示。

(3)自相关特性如图3所示。

表1、2中,截短密钥流序列的0-1个数基本能够保持均衡,游程统计结果也基本类似于Cblomb随机性假设第二条性质。由图3可以看出,截短密钥流序列的自相关函数有唯一尖峰,适合用作密钥序列。

2、密钥同步的可靠性及系统误码率分析

在遥测这样的恶劣信道环境下,采用帧内分组加密的方式可以避免因误码造成一整帧数据的错误,进而避免数据的连续大量丢失。

假设传输信道误码率为Pe,同步头长为bit,非线性变换信息长bit,则定义(m+n)bit在信道中传输均不错的概率为密码同步成功率。假设信道的误码率为PPe =5 ><10-,m= 64,n=32,则加密系统的密码同步成功率P为P=(1-Pe)m+n=61.8%。

显然这样的密码同步成功率不能满足要求。如果采用(3,1)重复码,则密钥的误码率可从Pe降为Pte=l-L(1-pe)3+c31P[e(l-pe)2]=7.475×10-5那么,则4组的64 bit非线性变换信息(同步密钥)正确传送的概率为:Pm=(1-P'e)64= 99.52%。

假设同步头被识别出的概率为Pr=99. 89%则最终加密系统的密码同步成功率P可以达到P=PmPr=99. 41%,故该方法在误码率比较大的情况下明显提高了加密系统的密码同步成功率。

对本文提出的加密方案用matlab进行了仿真,其中“0”表示没有加密的系统误码率情况,“+’’表示经过加密后,在相同信道下传输得到的收端误码率。可以看出,两种条件下系统的误码率几乎没有变化,说明加密变换没有引起系统的误码扩散。

小知识之遥测系统telemetry systems,将对象参量的近距离测量值传输至远距离的测量站来实现远距离测量的系统。