日期:2014-05-20  浏览次数:20624 次

3Des加密问题
现在是我用3Des加密,然后把密文给别人,别人解密。

3Des加密的时候需要一个密钥,我看网上别人是这样生成密钥的。

Java code

   public void getKey(String strKey) {
   try{
        KeyGenerator _generator = KeyGenerator.getInstance("DES");
       _generator.init(new SecureRandom(strKey.getBytes()));
       this.key = _generator.generateKey();
      _generator = null;
     } catch (Exception e) {
       e.printStackTrace();
     }
  }


  我想问KeyGenerator.getInstance("DES"); 这个DES是代表什么意思,是不是3Des生成密钥的时候一定要这样写

------解决方案--------------------
代表其中的一种加密算法。

还支持其他算法的,比如 DES、DESede(TripleDES,就是3DES)、AES、Blowfish、RC2、RC4(ARCFOUR)
DES key size must be equal to 56
DESede(TripleDES) key size must be equal to 112 or 168
AES key size must be equal to 128, 192 or 256,but 192 and 256 bits may not be available
Blowfish key size must be multiple of 8, and can only range from 32 to 448 (inclusive)
RC2 key size must be between 40 and 1024 bits
RC4(ARCFOUR) key size must be between 40 and 1024 bits
------解决方案--------------------
话说3des的不是DESede么
3DES的算法过程DES做一次加密一次解密再一次加密什么的 不太记得了- -
然后名字就是DES e(encrypt) d(decrypt) e(encrypt) -----DESede