如何将生成的密钥存储在特定位置的文本文件中。我正在尝试存储密钥并在特定用户需要时解密。我使用两个不同的java类进行加密和解密,我需要存储特定密钥用于加密用户我正在获取非法块大小,无法解密文件中的数据,数据被删除。
SecretKey secKey = keyGen.generateKey();
System.out.println(secKey);
String KeyStore = "C:\\keystore.txt";
FileOutputStream fout=new FileOutputStream(KeyStore);
byte[] b=secKey.getBytes();//this is not working for me
fout.write(b);
fout.close();
帮我解决这个问题,另外还有一个选项来存储特定用途的密钥
答案 0 :(得分:0)
以上所有答案都是无稽之谈,作为java开发人员,我们都应该知道有一个函数叫做:
用于存储自动生成密钥的Java KeyStore以下是我自己想出的代码。 本代码只是我发布的不完整代码的小部分。只是为了给你们一个想法
final String keyStoreFile = "C:\\mykey.jceks";// Storing the Key in a Particulary.
KeyStore keyStore = createKeyStore(keyStoreFile, "java143");
System.out.println("Stored Key: " + (secKey));
System.out.println("secured key: " + (keyStore));
// store the secret key
KeyStore.SecretKeyEntry keyStoreEntry = new KeyStore.SecretKeyEntry(secKey);
//Padding for password
PasswordProtection keyPassword = new PasswordProtection("pw-secret".toCharArray());
keyStore.setEntry("mySecret", keyStoreEntry, keyPassword);
keyStore.store(new FileOutputStream(keyStoreFile), "java143".toCharArray());