- 论坛徽章:
- 0
|
原始短消息: 能帮我再看看这几个函数怎么写成java的吗?麻烦了
void cpkey(unsigned long *into)
{
register unsigned long *from, *endp;
from = KnL, endp = &KnL[32];
while( from < endp ) *into++ = *from++;
return;
}
...
很抱歉,我对 Java 不很了解。我想不必苛求转换,达到相同目的就可以了。
3DES 的原理:
1、EEE:
DES(k3;DES(k2;DES(k1;M)))
2、EDE:
DES(k3;DES^−1(k2;DES(k1;M)))
……
就是把 56*3 位的密钥,按照顺序导入加密上下文中,然后就可以用了。
对于 2DES,DES 也一样,就是按照顺序导入。
另外,还有个四不象的 3DES,实际密钥长度为 112 位,但在三次 DES 操作中,两份 DES 密钥是交替使用的,不是真正意义上,或者通常认为的 3DES
建议参考:
1、Applied Cryptography,by Bruce Schneier
2、http://en.wikipedia.org/wiki/Triple_DES |
|