Преобразование байта [] в PrivateKey в Java для цифровой подписи
Мне нужно сначала подписать цифровую строку, используя алгоритм дайджеста SHA-1, а затем применить алгоритм RSA, используя PrivateKey, чтобы подписать его. У меня уже есть PrivateKey, хранящийся в моей базе данных как тип данных char (250) в base64. Моя проблема в том, что я не знаю, как преобразовать его в PrivateKey для использования его для входа в систему:
Cipher cipher = Cipher.getInstance("RSA");
cipher.init(Cipher.ENCRYPT_MODE, privateKey);
byte[] cipherText = cipher.doFinal(digest);
Дайджест был массив байтов, к которому я применил алгоритм дайджеста SHA-1:
MessageDigest md = MessageDigest.getInstance("SHA-1");
byte [] ba = cadena.getBytes();
byte [] digest = md.digest(ba);
Это решение, о котором я думал, но если бы у кого-то было лучшее решение, я был бы признателен.