Это идет в неправильном направлении, поэтому я отвечу, показав две альтернативы:
- Поделитесь, например. надежный пароль, сгенерированный машиной, достаточно случайный, чтобы его можно было использовать в качестве секретного ключа. Причина обмена паролем вместо другого секретного ключа заключается в том, что я не знаю хорошо используемого варианта SSH, в котором используется секретный ключ.
- Чтобы поделиться закрытым ключом, кажется более логичным инкапсулировать его, то есть использовать обычное шифрование. Вы всегда можете отправить открытый ключ другим способом, подтвердить, что он был создан другой стороной а затем инкапсулировать существующий ключ. Вероятно, проще всего сделать это с помощью существующего протокола, такого как PGP, который предоставляет полезные услуги, такие как снятие отпечатков ключей, которые можно использовать для проверки.
Было указано много проблем, когда дело доходит до повторной генерации одного и того же закрытого ключа для RSA, о чем свидетельствует уже включенный вами пост.
По сути, все, что касается генерации пары ключей, должно оставаться неизменным, чтобы алгоритм генерации оставался детерминированным. Любое существенное изменение в части генерации и результирующая пара ключей будут другими. Например, я описал более эффективный способ получения случайных значений в диапазоне.Но любое обновление в части основного поколения также нарушит алгоритм.
Я бы не ожидал, что будет присутствовать какой-либо механизм генерации пары ключей, который настолько хорошо описан, что его можно детерминировано использовать в разных версиях программного обеспечения. Если вы все еще хотите дать согласие на закрытом ключе, то я бы пошел в ECDSA, где закрытый ключ — это просто одно значение в диапазоне, а открытый ключ может быть напрямую получен из закрытого ключа.