IDEA,又称国际数据加密算法。
其中,明文和密文的分组为64位,密钥为128位。
一、生成子密钥的过程:生成52个子密钥
- 128位的密钥分成8个16位的子密钥,直接作为前8个子密钥;
- 128位密钥循环左移25位,再次分成8个16位子密钥;
- 重复步骤2,直至52个子密钥。(一共生成56个子密钥,但是最后四个子密钥不要了)
二、加密过程
组成:
- 8个相同的加密步骤(每次需要6个子密钥)
- 1个输出变换组成(需要4个子密钥)
三、解密过程
解密步骤即对密文再次加密,得出的就是明文,idea是一个可逆的加密算法。
四、识别方式
查看子密钥生成指令中是否出现 cmp edx,0x36类的指令,以及结合子密钥生成过程和最后的输出变换来识别。