java устанавливает длину экспоненты

#java #rsa

#java #rsa

Вопрос:

Я использую KeyPairGenerator для генерации пары ключей RSA. Теперь моему другому приложению необходимо, чтобы длина экспоненты составляла 4 байта. Есть ли способ установить ее так, KeyPairGenerator чтобы использовать показатель в 4 байта вместо os 3 байта?

Комментарии:

1. заполнение нулями, я полагаю, не вариант?

2. Что ж, я нашел место, где говорится об этом Pad в начальных октетах. но я понятия не имею, как это сделать..

3. Почему именно вашему другому приложению требуется, чтобы показатель сохранялся в виде 4 байт? Вам действительно нужно знать, в каком формате ожидается вывод. Обычно ключи RSA представлены в Java в виде BigInteger значений. Ваше другое приложение Java или что-то еще?

4. Другим приложением является приложение javacard

5. Вы, должно быть, ошибаетесь, потому что почти каждый используемый общедоступный показатель RSA равен 65537, 3-байтовому значению.

Ответ №1:

java.security.KeyPairGenerator может быть инициализирован экземпляром java.security.spec.AlgorithmParameterSpec , в котором вы можете установить общедоступный показатель для использования. Просто выберите «показатель в 4 байта» (что бы это ни значило). RSA требует, чтобы общедоступный показатель был нечетным положительным целым числом (не 1); предпочтительны простые значения (но не обязательны).