算法说明
源数据是十六进制存储的, 每8字节分组成D0, D1...Dn, 秘钥应该是事先规定好的一定长度的字符串, 然后算法如下图,
会将秘钥分成左半部,右半部。用秘钥左半部加密D0, 加密结果与D1异或, 结果为下一次输入, 再用秘钥左边不加密, 如此循环至结束. 加密用的应该是标准des加密运算.
我的疑问:
1) 8字节的D0 每次用秘钥左半部加密后, 结果是不是应该是16字节的? 然后下一次是不是应该变成32字节, 越来越长?
2) DES加密运算中, 假设8字节十六进制的D0={0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08}, 是用0102030405060708这样的字符串代进去加密吗? 还是用每个0x01对应的字符代进去加密?