TEA加密算法 Java实现
最近在使用Java实现QQ的基本通讯协议,QQ的通讯协议中使用MD5算法两次加密密码,并将通讯中的所有数据包使用TEA算法进行加密。MD5加密可以通过Java API提供的MessageDigest直接进行,而TEA加密则需自己编写。
TEA加密每次使用128bit密钥加密64bit数据,生成加密数据亦为64bit,为典型的对称加密算法。该算法使用C语言实现非常简单,但使用Java进行实现时,受制于Java的特性,在实现上稍有复杂。
代码如下:
?