在DES加密算法中,密钥的长度是8bytes,DES中已经发现的弱密钥一共有4个,那就是
the key bits are:
1. all zeros 
2. all ones 
3. the first half of the entire key is all ones and the second half is all zeros 
4. vice versa
但我用DES算法中DESKeySpec类的isWeak()方法检查,这四个密钥没有一个能被这个方法查出是weak key,下面是我的代码:
try {
byte[] bt = {(byte)0x00, (byte)0x00,(byte)0x00,(byte)0x00,(byte)0x00, (byte)0x00,(byte)0x00, (byte)0x00};
System.out.println(DESKeySpec.isWeak(bt,0));
}
catch(Exception ex) {
System.out.println(ex.getMessage());

为什么会这样,是我的做法有错,还是sun提供的类库有问题,那位兄台知道,告诉一下,不胜感激,那就是如何检查DES算法中,一个key是否是weak key?