use*_*519 5 java encryption aes keystore
我正在使用Java密钥库来存储AES加密的密钥.
final String strToEncrypt = "Hello World";
KeyGenerator kg = KeyGenerator.getInstance("AES");
kg.init(128);
SecretKey sk = kg.generateKey();
String secretKey = String.valueOf(Hex.encodeHex(sk.getEncoded()));
//Storing AES Secret key in keystore
KeyStore ks = KeyStore.getInstance("JCEKS");
char[] password = "keystorepassword".toCharArray();
java.io.FileInputStream fis = null;
try {
fis = new java.io.FileInputStream("keyStoreName");
ks.load(fis, password);
} finally {
if (fis != null) {
fis.close();
}
KeyStore.ProtectionParameter protParam =
new KeyStore.PasswordProtection(password);
KeyStore.SecretKeyEntry skEntry = new KeyStore.SecretKeyEntry(sk);
ks.setEntry("secretKeyAlias", skEntry, protParam);
Run Code Online (Sandbox Code Playgroud)
但我得到以下例外.
线程"main"中的异常java.security.KeyStoreException:java.security.KeyStore.setEntry中的未初始化密钥库
(未知来源)
如何解决这个错误?提前致谢
| 归档时间: |
|
| 查看次数: |
9426 次 |
| 最近记录: |