如何在.NET中使用DES
?如何在.NET中使用DES算法?
以下是我会做它在Java中:
public static String decrypt(byte[] pin, byte [] desKeyData) throws Exception {
//if (ISOConstantsLibrary.DEBUG) System.out.println("original: " + pin + " key: " + ISOUtil.bcd2str(desKeyData, 0, 2 * desKeyData.length, false));
String out = "";
try {
SecretKeySpec desKey = new SecretKeySpec(desKeyData, "DES");
Cipher cipher = Cipher.getInstance("DES/ECB/NoPadding");//DES/CBC/PKCS5Padding
byte[] encrypted_password = pin;
cipher.init(Cipher.DECRYPT_MODE, desKey);
byte[] decrypted_password = cipher.doFinal(encrypted_password);
out = new String(decrypted_password);
//if (ISOConstantsLibrary.DEBUG) System.out.println("Decrypted Password " + out);
}
catch (Exception e) {
e.printStackTrace();
}
return out;
}
是否有在.NET解密DES
加密库?如果是这样,我该如何使用它?
我得到与上面的代码错误数据的异常公开打破了DES密钥。 – 2009-12-01 12:01:12