Java: Как я могу генерировать PrivateKey из строки?

Я пытаюсь закодировать сообщение сSH1 RSA но у меня нет опыта работы с темой безопасности, за исключением некоторой базовой информации оRSA, Мне дали личный ключ какString, Мне удалось написать следующий блок кода, чтобы выполнить работу, но я не уверен, что я делаю работу безопасно и правильно.

Я не эксперт, но я полагаю, что закрывать ключ в виде строки в коде небезопасно. Кто-нибудь может направить меня?

String privateKeyString = "mykeyhere...";
byte[] privateKeyBytes = privateKeyString.getBytes();
String encodedPrivateKey = Base64.encodeToString(privateKeyBytes, Base64.URL_SAFE);

KeyFactory factory = KeyFactory.getInstance(RSA);
PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(encodedPrivateKey.getBytes());
RSAPrivateKey privateKey = (RSAPrivateKey) factory.generatePrivate(keySpec);

Signature instance = Signature.getInstance(ALGORITHM);
instance.initSign(privateKey);
instance.update(content.getBytes());
return new String(instance.sign());

Мой закрытый ключ имеет вид:

"-----BEGIN PRIVATE KEY-----\n"+
"MIIE...\n"+
"cH0iRj...\n"+
"O0Hhj...\n"+
.
.
.
"fG6...\n"+
"B6/hF...\n"+
"3Mq38...\n"+
"-----END PRIVATE KEY-----\n"

Ответы на вопрос(1)

Ваш ответ на вопрос