Łatwy sposób na przechowywanie / przywracanie klucza szyfrowania do odszyfrowywania łańcucha w Javie
Do szyfrowania używam czegoś takiego:
SecretKey aesKey = KeyGenerator.getInstance("AES").generateKey();
StringEncrypter aesEncrypt = new StringEncrypter(aesKey, aesKey.getAlgorithm());
String aesEncrypted= aesEncrypt.encrypt(StringContent);
Jeśli wydrukuję aesKey, otrzymuję: „javax.crypto.spec.SecretKeySpec@1708d”.
Więc dla szyfrowania chciałbym zapytać użytkownika o klucz, ale nie wiem jak i jaki powinien być format. Mój plan był taki:
SecretKey aesKey = javax.crypto.spec.SecretKeySpec@1708d;
StringEncrypter aesEncrypt = new StringEncrypter(aesKey, aesKey.getAlgorithm());
String aesDecrypt = aesEncrypt.decrypt(aesEncrypted);
Ale wydaje się, że nie działa. Czy jest jakiś prosty sposób na wydrukowanie klucza po szyfrowaniu do konsoli, aby użytkownik mógł go zapisać (lub zapamiętać), a następnie użyć do odszyfrowania?
Cały kod jest tutaj:Nie można odszyfrować tekstu kluczowego z pliku tekstowego, symetrycznego narzędzia klucza. w java Więc przepraszam za ponowne przesłanie, ale nie jestem pewien, czy kod jest nawet czytelny (jestem nowicjuszem).