基于FPGA的FSK加密通信基于FPGA的FSK加密通信

2009-05-12 03:14杨自恒
现代电子技术 2009年5期

杨自恒 齐 滨 李 博

摘 要:主要介绍了二进制移频键控FSK通信过程中利用FPGA进行伪随机序列加密的实现方法。移频键控是信息传输中使用较早的一种调制方式,它具有实现容易,抗噪声与抗衰减性能较好的优点,在中低速数据传输中得到了广泛的应用。直接利用FPGA产生伪随机序列的方法可以为系统设计或测试带来极大的便利。给出了基于线性反馈移位寄存器电路,设计一种简洁的伪随机序列发生器的方法。这种方法所产生的随机序列不仅可具有极长的周期,而且还具有良好的随机特性。由于该伪随机序列可以被设计成任意长度,所以设计过程比较灵活。介绍了加密的设计理论、设计过程和硬件实现,该电路可进行下载生成实际电路,并应用到信息安全领域中。

关键词:伪随机序列发生器;线性反馈移位寄存器;m序列;移频键控FSK

中图分类号:TP309文献标识码:B

文章编号:1004-373X(2009)05-078-03

FSK Encryption Communication Based on FPGA

YANG Ziheng1,QI Bin1,LI Bo2

(1.The Key Lab of Signal and Information,Heilongjiang University,Harbin,150080,China;

2.University of Science & Technology of China,Hefei,230026,China)

Abstract:The method of using FPGA to encrypt pseudo-random sequence in the process of binary Frequency Shift Keying(FSK)communication is introduced.FSK,which is early used in the information transmission,has many advantages such as it′s convenience to realize,anti-noise and anti-attenuation,so it is widely used in middle and low-speed data transmission.Now,as FPGA can be directly used to generate pseudo-random sequence.It has become an indispensable technology and brought great convenience to system design or test .In this paper,a simple method of pseudo-random sequence generator based on the linear feedback shift register circuit is designed.This method can not only has a extremly long cycle,but also has good random properties.As the pseudo-random sequence can be designed to any length,so the design process turn out to be more flexible.The design theory of encryption,design process and hardware implementation are introduced.The circuit can be downloaded to generate the actual circuit which can be applied to the field of information security.

Keywords:pseudo-random sequence generator;linear feedback shift register;m sequence;frequency shift keying

0 引 言

随着技术的发展,上世纪90年代初期出现了FPGA(Field Programmable Gate Array),这是一种比较复杂的可编程逻辑器件。就当时的情况而言,工程师们必须了解各种逻辑器件的特性,再将逻辑器件组合成电路图,一个简单的逻辑电路,也许需要数十个分散的TTL器件组合成的一块电路板。用VHDL语言完成需要的功能模块的设计和仿真是一种集多种优点于一身的方法,例如它的保密性强、资源占用量相对少等,因此对这种设计方法进行研究,并与其他设计方法进行比较,为以后自主研发产品做出了必要的准备。

目前在数字电路设计中,FPGA发挥着越来越重要的作用。从简单的接口电路设计到复杂的状态机,甚至系统级芯片,FPGA所扮演的角色已经不容忽视。它的可编程特性带来了电路设计的灵活性,缩短了产品上市的时间[1]。

随着网络的快速发展,信息安全越来越引起人们的关注,加密技术作为信息安全的利器,正发挥着重大作用。通过在硬件设备中添加加密功能,可使存储和传输的数据具有较高的安全性。传统的加密工作是通过在主机上运行加密软件实现的,这种方法除占用主机资源外,其运算速度较硬件加密要慢,密钥以明文的方式存储在程序中,或者以加密的方式存储在文件或数据库中,重要数据会在某一时刻以明文形式出现在计算机的内存或磁盘中,安全性较差[2]。而硬件加密是通过独立于主机系统外的硬件加密设备实现的,所有关键数据的存储、运算都通过硬件实现,不占主机资源、速度快、安全性较高。

采用可编程逻辑门阵列FPGA具体实现加密功能,设计者自己可以对芯片内部单元进行配置,设计比较灵活,只需改变配置就可实现安全不同的功能,大大缩短了设计周期和开发时间,同时经过优化可以达到较高的性能。另外,有多种EDA开发软件支持FPGA的设计,因而用FPGA器件进行开发研制其自由度较大。在进行数据传输的时候,不仅要保证高速的数据传输,还要保证数据传输的稳定与完整,因此本电路要重点解决数据在加密过程中产生的脉冲现象,使最终能得到较好的加密数据输出波形。

1 FPGA加密技术算法

大多数通信系统都采用数据流密码保护相关的信息,如图1所示。利用XOR函数模2的特性,纯文本P可以在接收器端重构,这是因为:

对于XOR LFSR,存在全是零字的可能性,但是这种情况应该永远也不会出现。如果循环是从非零字开始的,则循环长度总是2l-1。通常,如果FGPA是在全零字状态被唤醒,就会更加方便地使用“镜像”或翻转的LFSR电路。如果全零字是一种正确模式,并且生成了精确的转置序列,就需要用一个“非XOR”或XNOR门代替XOR门[3]。

BEGIN

PROCESS

BEGIN

WAIT UNTIL clk=′1′;

ff(1)<=NOT(ff(5)XOR ff(6));

FOR I IN 6 DOWNTO 2 LOOP

ff(1)<=ff(I-1);

END LOOP;

END PROCESS;

PROCESS(ff)

BEGIN

FOR k IN l TO 6 LOOP

y(k)<=ff(k);

END LOOP

END PROCESS;

END flex;

LFSR仿真局部放大图如图2所示。其中时钟周期为10 ns,当LFSR通过所有可能的位模式时,生成的最大序列长度为63。其中clk为时钟,z为LFSR寄存器中的内容,y为LFSR的输出。

2 基于FPGA的二进制数字通信平台

为了更加清晰地展现FPGA的加密过程,本文将为FPGA加密过程搭建一个基于FPGA的二进制数字通信平台。通过这一平台,可以实现数字信号的加密、解密过程,也能更加深入地了解FPGA器件的有关功能以及VHDL的编程方法。

2.1 FSK调制通信平台设计

FSK信号的产生方法主要有两种:第一种方法是用二进制基带矩形脉冲去调制一个调频器,使其输出两个不同频率的码元。这种方法产生的调频信号是相位连续的,虽然实现方法简单,但频率稳定度不高,同时频率转换速度不能做得太快,但是其优点是由调频器所产生的FSK信号在相邻码元之间的相位是连续的[4]。第二种方法是用一个基带脉冲控制的开关电路去选择两个独立频率源的振荡作为输出,由于是独立的频率源,所以信号频率稳定度可以做的很高并且没有过渡频率,它的转换速度快,波形好[5]。

FSK调制方框图如图3所示。

FSK调制VHDL程序仿真图如图4所示。

2.2 FSK解调通信平台设计

二进制FSK信号常用的解调方法是采用非相干解调法和相干解调法,除此之外,FSK信号还有其他的解调方法,比如鉴频法、过零检测法及差分检测法[7]。

FSK解调方框图如图5所示。

FSK解调VHDL程序仿真图如图6所示。

3 基于FPGA加密技术的FSK数字通信系统

数字通信传输的是一个接一个按节拍传送的数字信号单元,因此接收端必须按与发送端相同的节拍接收。否则,会因收发节拍不一致而使接收性能变坏。FSK数字通信系统模型如图7所示。

FSK数字加密通信系统Quartus Ⅱ原理框图如图8所示。

基于FPGA的FSK数字加密通信系统Quartus Ⅱ仿真框图如图9所示。

系统Quartus Ⅱ仿真图

4 结 语

硬件加密是通过独立于主机系统外的硬件加密设备实现的,所有关键数据的存储、运算都通过硬件实现,硬件加密具有不占主机资源、速度快、安全性较高的特点。为了能够更好地体现出加密算法的实际应用,本文为该加密过程设计了一个通信平台。该系统不但完成了基带信号的调制,已调信号的解调,还将加密过程加入其中,使整个通信过程更加完整。最后对该带有加密过程的FSK数字移频通信系统进行模拟实验,并分析、调试及验证其功能,该电路可进行下载生成实际电路,应用到相应领域中。

参考文献

[1]赵雅兴.FPGA设计与应用[M].天津:天津大学出版社,2006.

[2]潘松,王国栋.VHDL实用教程[M].北京:电子科技大学出版社,2005.

[3]沈耀辉.从电子CAD到现代EDA[J].电子技术应用,1997,23(3):4-6.

[4]Elgamal T.A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logrithms [J]. Advances in Cryptology,2006,24(1):10-18.

[5]丁存生,肖国镇.流密码及其应用[M].北京:国防工业出版社,2005.

[6]Baum.Clock-controlled Pseudorandom Generators on Finite Groups [J].IEEE Trans.on Information Theory,2006,6(6):19-26.

[7]Shannon C E.Communication Theory of Secrecy Systems[J].Bell System Technology,2004,28(8):656-715.

作者简介 杨自恒 男,1973年出生,黑龙江大学电子工程学院讲师,哈尔滨工程大学硕士研究生。研究方向为嵌入式系统,EDA,信息安全。