TEA算法是由剑桥大学计算机实验室的David Wheeler和Roger Needham于1994年发明,TEA是Tiny Encryption Algorithm的缩写,以加密解密速度快,实现简单著称。TEA算法每一次可以操作64bit(8byte),采用128bit(16byte)作为key,算法采用迭代的形式,推荐的迭代轮数是64轮,最少32轮。为解决TEA算法密钥表攻击的问题,TEA算法先后经历了几次改进,从XTEA到BLOCK TEA,直至最新的XXTEA。XTEA也称做TEAN,它使用与TEA相同的简单运算,但四个子密钥采取不正规的方式进行混合以阻止密钥表攻击。Block TEA算法可以对32位的任意整数倍长度的变量块进行加解密的操作,该算法将XTEA轮循函数依次应用于块中的每个字,并且将它附加于被应用字的邻字。XXTEA使用跟Block TEA相似的结构,但在处理块中每个字时利用了相邻字,且用拥有两个输入量的MX函数代替了XTEA轮循函数。本文所描述的安全机制采用的加密算法就是TEA算法中安全性能最佳的改进版本-XXTEA算法。
XXTEA算法的结构非常简单,只需要执行加法、异或和寄存的硬件即可,且软件实现的代码非常短小,具有可移植性,非常适合嵌入式系统应用。由于XXTEA算法的以上优点,可以很好地应用于嵌入式RFID系统当中。
XXTEA算法的C语言表达:
#define MX (z>>5^y<<2) + (y>>3^z<<4)^(sum^y) + (k[p&3^e]^z);
long btea(long* v, long n, long* k)
{unsigned long z=v[n-1], y=v[0], sum=0, e, DELTA=0x9e3779b9; long p, q ;
if (n > 1) { /* 加密过程 */
q = 6 + 52/n;
while (q-- > 0)
{sum += DELTA; e = (sum >> 2) & 3;
for (p=0; p<n-1; p++) y = v[p+1], z = v[p] += MX;
y = v[0]; z = v[n-1] += MX;}
return 0 ;
} else if (n < -1) { /* 解密过程 */
n = -n; q = 6 + 52/n; sum = q*DELTA ;
while (sum != 0) { e = (sum >> 2) & 3;
for (p=n-1; p>0; p--) z = v[p-1], y = v[p] -= MX;
z = v[n-1]; y = v[0] -= MX; sum -= DELTA; }
return 0; } return 1; }
上述算法描述中,v表示为运算的长整型数据的首地址,k为长整型的密钥的首地址,n表示要要运算的组元个数,正表示加密,负表示解密。N是以32bit为基本单位的组元个数。
订正:对于加密的示意图,在Xr-1到>>3那里,是不经历异或的运算的。
13838041802
yuzhe
1.1[?~(*0
如何有效防止源代码泄密?马上为你指点迷津
大家是不是常常担心自己的源代码会被泄露?一旦泄露,不但将面临经济损失,而且还将耗费大家的技术成果。别担心,此次我会给你一些建议,告诉你如何有效地防止源代码的泄露!一、为什么源代码容易泄密?首先,咱们得明白,源代码为什么容易泄密。其实,原因有很多,比如:员工离职时带走源代码;团队成员不小心将源代码上传到公共平台;黑客攻击...
如何快速为U盘设置密码,防止数据泄露
你们是不是经常带着U盘到处跑,存着各种重要的文件、照片或者资料?是不是有时候还会担心,万一U盘丢了,里面的数据可咋整?别担心,今天我就来教大家一个简单又实用的方法——给U盘设置密码,让你的数据安全得到全方位的保障!一、为什么要给U盘设置密码?首先,咱们得明白,U盘虽小,但里面的数据可都是宝贝啊!一旦U盘丢失或被不法分子...
企业网络安全准入的实践与常见误区
企业数据与血液一样重要,一旦泄漏或被篡改,后果很严重。你企业网络大门如果是敞开的,任何人都可以随意进出,你的重要材料、客户资料,乃至商业机密,都将面临失窃或破坏风险。这不是骇人听闻,企业网络安全准入,是守护您数据安全的“大门”。今日,我们将探讨企业网络安全准入的良好实践和常见误区,给您创建扎实的防御,同时避免那些“坑”...
打造完美办公环境:十大电脑桌面管理软件推荐
在日复一日的忙碌工作中,你的电脑桌面是不是经常杂乱无章,文件、图标散落一地,让人看得眼花缭乱?别急,今天我们就来聊聊如何借助一些实用的电脑桌面管理软件,轻松打造一个整洁、高效、个性化的办公环境。精心挑选的十大软件,总有一款能击中你的心!一、Fences:给你的桌面建个“围栏”你的桌面就像一个大农场,文件、图标就是那些散...
提高工作效率:公司监控上网记录的必要性
网络就像一座无形桥,连接着世界的每一个角落,让我们的工作方便快捷高效。可是,您有没有注意到,当互联网成为我们的工作助手时,它可能会悄悄的影响了每个人工作效率?今日,让我们来谈谈为何企业应该监控上网记录。一、网络是一把双刃剑:方便与诱惑并存想象一下,你坐在电脑前,准备开始一天紧张的工作。忽然,一个网络广告吸引了你注意,你...