随着现代社会信息化程度的不断提高,信息的安全保障问题日益引起人们的关注。将信息加密后再进行存储、传输等处理,可以有效地防止信息被窃取、篡改和伪造,从而保证信息的机密性、完整性,可获取性和真实性。那么我们今天就来给大家讲一下IDEA加密算法在智能传感器中是如何应用的。

一、IDEA加密算法

IDEA是由瑞士联邦理工学院的Xuejia Lai和James Massey在1990年设计并在以后得到增强,目前它已被isonE.c等组织列为登记的加密算法。它是近几年提出的各种分组密码中很成功的一个方案,能抵抗差分分析和相关分析,穷举搜索破译要求进行2的128次方≈10的38次方次试探,每秒钟完成10亿次试探要1022年,目前尚无对它攻击成功的报道。在网上广泛应用的如PGP、SSL等软件中都有实现IDEA的模块。

IDEA加密算法的加密和解密过程中,明文和密文是按64比特的块来处理的,密钥长度是128比特。加密和解密是依赖于异或、模加、模乘三种代数群的运算的恰当结合,每个代数群都是16比特数的运算。

IDEA加密算法在智能传感器中的应用

IDEA加密算法结构框图如图1所示。加密过程和解密过程的算法相同,所不同的是采用不同的子密钥块,这个特性也被称为加密和解密的相似性.从图1中可看出,8轮变换之后,紧接着是一个输出变换,它们级联起来完成一次完整的加密。

64位的明文被分为4个16比特的子块,第f个子块被命名为Xi(i=1,2.3, 4)。这四个子块被52个16比特的子密钥转换为4个16比特的密文子块Yi(i=1,2,3,4)。每轮变换使用6个子密钥,第r(r=1,…,8)轮使用的密钥为Z1(r),…,Z6(r)。最后一轮用四个密钥,标记为Z1(9),…,Z4(9)。用于加密和解密的52个子密钥是由用户提供的128位密钥产生的,加密子密钥是按移位产生,解密子密钥是由移位和模逆运算产生.在每一轮的核心中,包含有两个模乘运算和两个模加运算,这种结构被称为乘加(MA)结构,即图1中阴影部分,它是IDEA加密算法实现中的关键非线性构件。研究表明,8轮迭代后能达到雪崩性的扩散和混淆,因而它能抵抗差分分析。

二、智能传感器系统

智能传感器是应现代自动化系统发展的需要而提出来的,是传感技术向前发展的必然趋势,所谓智能传感器,就是一种带有微处理器兼有检测信息和信息处理功能的传感器。目前,智能传感器实现的途径有三条:非集成化实现、集成化实现、混合实现。

非集成化智能传感器是将传统的经典传感器,信号调理电路、带数字总线接口的微处理器组合为一整体而构成的一个智能传感器系统.其框图如图2所示。这是一种实现智能传感器系统最快的途径与方式。

IDEA加密算法在智能传感器中的应用

集成化智能传感器系统是采用微机械加工技术和大规模集成电路工艺技术,利用硅作为基本材料来制作敏感元件,信号调理电路、微处理器单元,并把它们集成在一块芯片上而构成的。

混合实现是将系统中敏感元件、信号调理电路、微处理器单元、数字总线接口,以不同的组合方式集成在两块或三块芯片上,并装在一个外壳里。

智能传感器的发展使得在传感器级进行数据加密成为可能,尤其是在非集成化智能传感器系统中,将数据加密模块嵌入到微处理器单元,与其它处理(如数据压缩等)一起完成,实现传感器级数据文件加密,可以更好地保证效据的安全存储和传输。

1、传感器级数据文件加密的设计方案

本文以无人值守远程监测系统中的图像传感器为具体实验对象,对于其它如压力、震动等类型的传感器,同样是适用的。

IDEA加密算法在智能传感器中的应用

基于图像传感器的数据文件加密总体设计方案框图如图3所示。从图像传感器得到的数据,经过采集控制、信号预处理,送入DSP芯片,即图3中的阴影部分。在DSP中实现图像压缩和数据文件加密两部分,既可以充分、高效地利用DSP资源,又提高了系统的性能和可靠性。经加密处理过的数据文件再送入通讯系统,实现与远程监控中心的通信。最后在终端对接收到的数据文件进行解密。

其中图像压缩采用的是JPEG2000静态图像压缩算法,数据文件加密采用的是IDEA加密算法。

2、IDEA加密算法的实现

IDEA加密算法所采用的编程环境是Ti公司提供的Code Composer Studio (CCS),利用CCS进行DSP编程有3种模式:(1)C语言编程模式;(2)线性汇编;(3)DSP指令集编程。本设计中所有的程序代码是用C语言描述的,以Ti公司的TMS320VC5416芯片为算法实现载体。C语言编程开发周期短,而且便于不同系列DSP芯片间的移植,适用性强。

依据功能将IDEA算法系统划分成四个相对独立的子模块:输入接口模块,控制模块,加密和解密运算模块,密钥扩展模块。如图4所示。

IDEA加密算法在智能传感器中的应用

输入接口模块的主要任务是:将外部的控制信号传送到控制模块、将数据传送到加/解密运算模块,将外部输入的密钥传送到密钥扩展模块。控制模块的主要任务是实现加密和解密运算模块和密钥扩展模块工作的启动。加密和解密运算模块是本设计的主要部分,它的功能是将64位的数据分组按输入的密钥进行加密或解密。密钥扩展模块用来生成加密和解密运算模块需要的所有子密钥。

如前所述,在加密算法的基本结构(即加密和解密运算模块)中包括异或,模加和模乘三种基本运算。其中最难实现的部分是模(2的16次方+1)乘法运算,应用方程(1)可以简化模运算的复杂性,而且保证了其实现的高效性。

IDEA加密算法在智能传感器中的应用

3、加密模块的性能评估

IDEA加密算法可以使用四种标准的工作模式:电子密码本模式(Electronic Codc Book,ECB)、密码分组链接模式(Cipher Block Chaining,CBC)、密码反馈模式(Ciphertext Feedback.CFB)、输出反馈模式(Output Fccdback,OFB)。

在应用中,可根据数据的特点,选用合适的工作模式。当DSP主频IOOMHz时,通过对大小约IOK字节的图像数据在TMS320VC5416芯片上进行加密,分别对这四种工作模式的加密速率进行了评估,见表1。加密速率是根据式(2)计算得出。

IDEA加密算法在智能传感器中的应用

IDEA加密算法在智能传感器中的应用

本实验是以图像传感器来进行实验的,针对图像数据的特点,选用CBC工作模式,得到了较好的图像加密效果。加密、解密前后的图像如图5所示。加密模块针对的数据是二进制数据类型,具有通用性,所以对其它如压力,震动等类型的传感器,在传感器级进行硬件加密,同样是适用的。

IDEA加密算法在智能传感器中的应用

小知识之DSP

数字信号处理是将信号以数字方式表示并处理的理论和技术。数字信号处理与模拟信号处理是信号处理的子集。