我有一个使用 PBE 生成密钥的功能,我在互联网上搜索并找到了以下代码。
class PBE{
public PBE(String pw) {
this.password = pw;
}
public SecretKey generateKey() throws NoSuchAlgorithmException, InvalidKeySpecException {
// make password
PBEKeySpec keySpec = new PBEKeySpec(this.password.toCharArray(),this.salt,20);
// create key instance
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("PBEWithMD5AndDES");
// generate key
SecretKey key = keyFactory.generateSecret(keySpec);
return key;
}
}
我使用这个功能作为
PBE myPBE = new PBE("102a102s");
SecretKey myKey = myPBE.generateKey();
System.out.println(myKey.getEncoded());
但是,输出与我输入的密码相同。我不知道为什么