一、简述
在寻找DES算法替代品的同时、在AES算法征集以前,IDEA作者就独辟蹊径的提出了这个算法。这个算法很强,想破解出来按照当前的计算水准需要10的13次方年。
在美国之外提出并发展,避开法律限制。这个限制被最多应用在邮件加密。电子邮件加密软件PGP使用的就是IDEA的商业版权。
java6没提供实现。Bouncy Castle提供了实现
二、算法相关配置说明
算法 | 密钥长度 | 密钥长度默认值 | 工作模式 | 填充方式 | 备注 |
IDEA | 128 | 128 | ECB | PKCS5Padding/PKCS7Padding/ISO10126Padding/ZeroBytePadding | Bouncy Castle实现 |
三、算法的应用展示
四、总结
1、我们可以参考这个代码使用Bouncycastle来实现AES的候选算法 Rijndael,Serpent,Twofish
2、这个算法使用BouncyCastle的jar包的时候一定注意,仅仅那个基础的jar:bcprov-jdk16-146.jar是不够滴,需要将那个扩展jar包(bcprov-ext-jdk16-146.jar)也引入项目的build path中.如果你不引用这个ext包,执行main函数的时候就提醒你:java.security.NoSuchAlgorithmException: IDEA KeyGenerator not available