2017-02-17 38 views
0

Я пишу собственную реализацию RSA в Java, не используя встроенный интерфейс Key. Я прочитал в PKCS # 1, что стандартный способ кодирования ключей RSA использует ASN.1 в формате DER. Однако я не уверен, как это сделать с моей собственной версией RSA. Это всего лишь программа для шифрования и дешифрования файлов и текста только для личных целей. Я не обязательно хочу создавать сертификаты X.509. Я просто хочу записать закодированную строку в файл .txt. Я полагаю, что я должен как-то использовать Bouncy Castle.Как кодировать ключи RSA, написанные в моей собственной реализации Java в формате ASN.1 DER?

ответ

0

Да, вы можете использовать Bouncy Castle для этого.

  1. Загрузите исходный код легкого API Bouncy Castle и скомпилируйте его;
  2. Создайте пару ключей RSA (используя API Bouncy Castle);
  3. Извлеките «закодированную» версию, выполнив код ASN.1.

Были написаны книги (и учебники) о кодировании в ASN.1, это не то, на что можно легко ответить на StackOverflow. Я предполагаю, что вы хотите прочитать некоторые из них и, возможно, возьмитесь за спецификации ISO/IEC 8859.

Кроме того, для кодирования внутренней структуры закрытого ключа вам понадобится стандарт PKCS # 1, стандарт X.509 (для SubjectPublicKeyInfo) и PKCS # 8.