LPC1768数据校验加密电路研究与设计

2014-12-18 11:35怀洋邵琼玲张志宝
现代电子技术 2014年24期
关键词:数据加密

怀洋+邵琼玲+张志宝

摘  要: 网络通信信息的完整性和安全性对于用户来说越来越重要,为探究以硬件电路方式校验、加密网络通信信息,基于LPC1768芯片、AMS1117芯片、CH340G芯片和KSZ8041NL芯片,设计了数据校验加密电路、DC/DC电路、TTL转USB电路、以太网通信电路,开发了USB接口通信程序、数据校验程序、数据加密程序、以太网通信程序。以模拟北斗和通信信息为例,实现了对模拟信息的校验、加密、解密以及USB接口通信和网络通信测试工作。在整个过程中,保证了模拟信息的完整性、安全性,所设计电路具有一定的实际应用价值。

关键词: LPC1768; 数据校验; 数据加密; 以太网通信

中图分类号: TN710?34; TP368.2               文献标识码: A                     文章编号: 1004?373X(2014)24?0105?04

Research and design of LPC1768 data check and encryption circuit

HUAI Yang1, SHAO Qiong?ling2, ZHANG Zhi?bao1

(1. Company of Postgraduate Management, the Academy of Equipment, 101416, China;

2. Department of Space Equipment, the Academy of Equipment, 101416, China)

Abstract: Integrity and safety of network communication information are more and more important for users. To explore check and encryption of network communication information by the way of circuit, the data check and encryption circuit, DC/DC circuit, TTL to USB conversion circuit, Ethernet communication circuit were designed, and USB interface communication program, checking data program, encrypting data program, Ethernet communication program were developed on the basis of LPC1768 chip, AMS1117 chip, CH340G chip and KSZ8041NL chip. Through the simulation of BD and communication information, the check, encryption and decryption of simulation information, as well as the testing of USB interface communication and network communication were accomplished. In the whole process, integrity and safety of the simulation information were ensured. Therefore, the circuit has a certain practical application value.

Keywords: LPC1768; data check; data encryption; Ethernet communication

0  引  言

21世纪是信息化的时代,在日常生活和生产建设中,大家已经离不开各种类型的数据和信息了,无论是国家的尖端产业,如宇航、军事、核工业,还是与人们生活息息相关的产业,如电力、通信、能源,现在它们都以数据与信息作为媒介,进行沟通交流。由于各类型数据和信息使用频繁,不得不考虑数据的完整和安全保障问题,这些就是数据校验和加密所要解决的问题[1?2]。LPC1768数据校验加密电路具有USB接口通信、数据校验加密、网络通信等功能,通过对此电路的研究和设计,可以对数据完整性、安全性等问题进行探究,并掌握相关知识。

1  硬件设计

在LPC1768数据校验加密电路的研究和设计过程中,借助PC模拟数据,并通过USB接口将数据经TTL转USB电路传给数据校验加密模块,DC/DC电路与USB接口连接,负责给数据校验加密模块和TTL转USB电路供电,数据处理后经以太网模块传送至远端PC[3]。数据校验加密模块的主要部件是LPC1768芯片,它是由NXP公司设计生产的以ARM Cortex?M3为内核的一种微控制器,其功能强大、性能良好,具有集成度高、功耗低的优点[4?6]。DC/DC电路采用AMS1117芯片进行电压转换,它能够将PC经USB接口输入的5 V电压转换为3.3 V的电路工作电压来为电路供电,TTL转USB电路采用CH340G芯片进行电平转换,并完成PC将模拟数据向电路传输的功能。以太网模块的核心是KSZ8041NL芯片,它是10Base?T/100Base?TX物理层收发器,以单电源供电,具有发送距离长、功耗低的优点,其完成了将校验加密后的数据进行网络通信的功能。如图1所示。

2  软件设计

本文所设计的软件位于PC、数据校验加密模块、以太网模块和远端PC几部分之中,这里以导航卫星数据和通信卫星数据为例,研究了软件的运行。如图2所示,当软件开始运行时,首先进行初始化,将电路的USB接口与PC连接得以供电,PC模拟的卫星数据通过USB接口被发送给LPC1768,之后芯片校验并加密数据,以太网模块将处理后的数据通过网络发给远端PC,在校验解密后,数据得以使用。

数据校验过程如图3所示,PC在模拟导航、通信卫星数据之后,计算出各自数据的校验位并下传至LPC1768,芯片在判别数据类型后,分别校验数据的帧头、帧长度(通信卫星数据)、内容、帧尾,得出的校验位与PC接收的对比,如果二者相等,则准备数据加密,否则丢弃数据帧[7?8]。

部分程序如下:

while(Trans1[0][k]!=′*′)

{

Trans2[0][l]=Trans1[0][k];

k++;

l++;

}

for(j=0;j<7;j++)

{

while(1)

{

if(Trans1[j][k]==′*′)

{

count1[j]=Trans1[j][k+1];

count2[j]=Trans1[j][k+2];

}

k++;

if(Trans1[j][k]==′\r′)

{

k=0;

break;

}

}

}

数据加密过程如图4所示,首先定义系统自己的密钥,它可以是任何正整数,Rand()和SecKey()函数会根据密钥的值计算出不同的r1和r2值,系统通过r1、r2值和某算法加密数据并替换密钥,如果处理后的数据和密钥符合要求,则进行二次的加密,否则重新进行上述步骤[9]。Rem()函数根据替换的密钥得到d1值,并根据d1值二次加密数据,如果符合要求,则准备网络通信,否则重新进行二次加密,解密过程与上述大致相反。部分程序如下:

CString CMessageDlg::Encrypt(CString S, WORD Key)

{

CString Result,str;

int i,j;

Result=S;

for(i=0;i

{

Result.SetAt(i,S.GetAt(i)^(SecKey(Key)>>Rand()));

Key=((BYTE)Result.GetAt(i)+Key)*(int)((C1*Sec_Key2+C2*rand1)/10);

}

S=Result;

Result.Empty();

for(i=0;i

{

j=(BYTE)S.GetAt(i);

str="ab";

str.SetAt(0,C3+j/Rem());

str.SetAt(1,C3+j%Rem());

Result+=str;

}

return Result;

}

如图5所示,网络通信主要依靠socket,LPC1768和远端PC会先创建socket,LPC1768将socket与通信端口绑定并进行监听,远端PC的socket将连接指定计算机端口并给LPC1768发送连接请求,如果请求得到接收,则LPC1768将与远端PC进行通信,否则LPC1768继续监听绑定端口,直到成功接收来自远端PC的连接请求[10?11]。

3  功能测试

PC进行串口设置并模拟显示了北斗和通信卫星数据,如图6所示,数据帧经USB接口传送到数据校验加密模块进行校验和加密处理,之后通过以太网模块传输给远端PC,图7显示了加密及解密的北斗和通信卫星模拟数据。

4  结  语

本文利用PC模拟北斗和通信卫星数据,通过USB接口与LPC1768数据校验加密电路连接,这样不仅能传输数据,而且解决了供电问题,之后通过以太网模块将校验、加密过的数据传输给远端PC,以供使用。文章设计了LPC1768数据校验加密电路,还认真研究了数据的校验、加密软件,通过使用所设计的软硬件,能够在一定程度上保证数据的完整性和安全性。

参考文献

[1] 王永庆,张民选.一种改进的旋转CRC数据校验设计方法[J].国防科技大学学报,2011,33(6):48?54.

[2] 王庆磊.基于USB接口的数据加密系统设计与实现[D].太原:中北大学,2013.

[3] 陈晓龙,陈万培,解鑫,等.基于USB口的智能遥控信号发射装置的设计[J].国外电子测量技术,2012,31(5):77?79.

[4] 黄盈鑫.LPC1768开发板用户手册[EB/OL]. [2011?09?03].http://www.doc88.com/p?641874395629.html.

[5] 钱国明.基于LPC1768智能电力监控终端的设计与实现[D].西安:西安电子科技大学,2012.

[6] 徐振.USB主控芯片测试系统的设计与实现[D].上海:复旦大学,2011.

[7] 陈吉.基于GPS的土地面积测绘技术及土地管理信息系统的研究[D].杭州:浙江大学,2013.

[8] 张宇.基于网络式RTU技术数据传输系统的研究[D].南昌:南昌大学,2012.

[9] 任献彬,张树森.数据加密技术在嵌入式系统中的应用[J].现代电子技术,2012,35(22):7?9.

[10] 陈雅静.基于socket网络编程的远程物流防伪系统的设计[J].电子设计工程,2013,21(1):153?155.

[11] 王振.网络化天线控制平台通信控制技术及实现[D].西安:西安电子科技大学,2013.

猜你喜欢
数据加密
大数据时代个人隐私的保护
AES和RSA混合加密技术在网络数据传输中的应用
云数据存储安全关键技术研究
企业门户网站安全访问解决方案研究
一种基于虚拟专用网及数据加密技术的企业财务会计记录直报系统的实现方案
智能家居系统安全性方案的设计