私はjavax.crypto.Cipher
コードを書いていて、StackOverflow で多くの質問に答えてきたので、このサイトに含まれる情報に感謝しています。このサイトで答えが見つからない質問がありました。
次のコードは、SecretkeySpec を生成します。
try {
keyGen = KeyGenerator.getInstance("AES");
}
catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
secureRandomCipher = new SecureRandom();
seed = new Random().nextLong();
secureRandomCipher.setSeed(seed);
try {
secureRandomIV = SecureRandom.getInstance("SHA1PRNG");
}
catch (NoSuchAlgorithmException noSuchAlgorithm) {
System.out.println(noSuchAlgorithm.getMessage());
}
keyGen.init(128, secureRandomCipher);
Key encryptionKey = keyGen.generateKey();
encryptionKey は、「AES」アルゴリズムを使用した SecretKeySpec です。
次のような「SecretKeySpec」の使用について明示する必要がありますか
Key decryptionKey = new SecretKeySpec(encryptionKey.getEncoded(), encryptionKey.getAlgorithm());
または私がやっていることは十分です。コード長の観点から利点が見られます。