0
我有創建大整數值的函數。我想使用這些值作爲密鑰庫的密鑰條目。我想知道是否有將這些大整數值作爲祕密密鑰添加到密鑰庫的方法。我試圖將大整數值轉換成祕密密鑰,但它得到的錯誤是大整數不能被轉換成祕密密鑰。到目前爲止,這裏是最好的。如何將預定值作爲密鑰傳遞給密鑰庫
KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
char[] password = "ps".toByteArray();
ks.load(null, password);
....
BigInteger sect=getsect();
javax.crypto.SecretKey mySecretKey=(SecretKey)sect;
KeyStore.SecretKeyEntry skEntry =
new KeyStore.SecretKeyEntry(mySecretKey);
ks.setEntry("secretKeyAlias", skEntry,
new KeyStore.PasswordProtection(password));
因爲這不起作用我不知道我怎麼可以添加一個值,我希望作爲keykey的密鑰。下面是我得到
java.math.BigInteger cannot be cast to javax.crypto.SecretKey
我感謝您的回答,但儘管我擺脫了鑄造錯誤,但出現了一個新錯誤:不能存儲非私鑰,雖然我特別存儲了secretkey。 – eskoba
粘貼錯誤日誌 –
錯誤:java.security.KeyStoreException:無法存儲非私鑰//當我嘗試在此代碼上設置密鑰存儲區的setEntry()時,會發生非私人密鑰ks.setEntry(「secretKeyAlias」,skEntry, new KeyStore.PasswordProtection(密碼)); – eskoba