При кодировании и декодировании я пользуюсь RSA ключами 2048. Для дополнительной защищенности требуется использовать passphrase для RSAPrivateKey методом AES 128.
Я генерирую ключи, согласно требованиям выше, но вот как воспользоваться passphrase для расшифровки ключа методом AES, я не знаю.
Не могу найти примеры или хотя бы примерное описание того, как это делается на java.
Вот я инициализирую приватный ключ (так же потом и публичный):
String PRIVATE_KEY_FILE_RSA = "src/pri.der";
File privKeyFile = new File(PRIVATE_KEY_FILE_RSA);
// read private key DER file
DataInputStream dis = new DataInputStream(new FileInputStream(privKeyFile));
byte[] privKeyBytes = new byte[(int) privKeyFile.length()];
dis.read(privKeyBytes);
dis.close();
KeyFactory keyFactory = KeyFactory.getInstance("RSA");
// decode private key
PKCS8EncodedKeySpec privSpec = new PKCS8EncodedKeySpec(privKeyBytes);
RSAPrivateKey privKey =(RSAPrivatKey) keyFactory.generatePublic(pubSpec);
После чего использую их:
Algorithm algorithm = Algorithm.RSA256(pubKey, privKey);
...
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости