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());
ただし、出力は入力パスワードと同じです。どうしてか分かりません