【发布时间】:2010-10-30 20:21:17
【问题描述】:
我正在尝试让这段代码在 j2me 上工作 (它正在运行一个java程序) 但在 j2me 中还没有
public static String generate(String plaintext, String passphase) throws Exception {
try {
PBEKeySpec pbeKeySpec = new PBEKeySpec(passphase.toCharArray());
PBEParameterSpec pbeParamSpec;
SecretKeyFactory keyFac;
// Salt
byte[] salt = {(byte) 0xc8, (byte) 0x73, (byte) 0x61, (byte) 0x1d, (byte) 0x1a, (byte) 0xf2, (byte) 0xa8, (byte) 0x99};
// Iteration count
int count = 20;
// Create PBE parameter set
pbeParamSpec = new PBEParameterSpec(salt, count);
keyFac = SecretKeyFactory.getInstance("PBEWithMD5AndDES");
SecretKey pbeKey = keyFac.generateSecret(pbeKeySpec);
// Create PBE Cipher
Cipher pbeCipher = Cipher.getInstance("PBEWithMD5AndDES");
// Initialize PBE Cipher with key and parameters
pbeCipher.init(Cipher.ENCRYPT_MODE, pbeKey, pbeParamSpec);
// Our cleartext
byte[] cleartext = plaintext.getBytes();
// Encrypt the cleartext
byte[] ciphertext = pbeCipher.doFinal(cleartext);
return ciphertext;
} catch (Exception ex) {
throw new Exception(ex.getMessage());
}
}
我找到了这个库 http://www.bouncycastle.org/java.html
重要的是我找到了一种可以使用 PBEWithMD5AndDES 加密的 j2me 方法
有人知道解决办法吗?
编辑添加额外信息
当我尝试将上述代码添加到移动项目时 以下类无法识别(不包含在 j2me 中)
PBEKeySpec
PBEParameterSpec
SecretKeyFactory
所以我需要一个允许我使用 PBEWithMD5AndDES 对纯文本进行编码的包 有谁知道这样一个兼容 j2me 的包吗?
感谢到目前为止的回复
【问题讨论】:
标签: java-me md5 plaintext encryption