Не удается загрузить сертификат в OpenSSL

Я пытаюсь прочитать сертификат с помощью OpenSSL, который генерируется Google Play. Сертификат описывается следующим образом:

Base64-кодированный открытый ключ RSA, который генерируется Google Play в двоичном кодировке, X. 509 subjectPublicKeyInfo DER формат последовательности.

Я декодировал данную строку в кодировке Base64 в двоичный файл, используя OpenSSL из командной строки, используя это:

openssl enc -base64 -d -A <<< THE_KEY_CONTENT > key.der

двоичный файл представляется разумным. Это 294 байта и первый байт 0x30 что я считаю, совпадает с SEQUENCE.

С полученным двоичным файлом я пытаюсь выполнить следующую команду:

openssl x509 -inform der -in key.der -out key.pem

но я получаю следующие ошибки от OpenSSL:

unable to load certificate 140736245019656:error:0D0680A8:asn1
encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1199:140736245019656:error:0D06C03A:asn1
encoding routines:ASN1_D2I_EX_PRIMITIVE:nested asn1 error:tasn_dec.c:767:140736245019656:error:0D08303A:asn1
encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested
asn1 error:tasn_dec.c:699:Field=serialNumber, Type=X509_CINF 140736245019656:error:0D08303A:asn1
encoding routines:ASN1_TEMPLATE_NOEXP_D2I:nested asn1 error:tasn_dec.c:699:Field=cert_info, Type=X509

есть ли что-то мне не хватает, чтобы получить этот сертификат загружен? Я предполагаю, что Google не даст мне плохой сертификат!

8
задан e-sushi
02.03.2023 10:48 Количество просмотров материала 2934
Распечатать страницу

1 ответ

проблема заключалась в том, что я интерпретировал описание как означающее, что в.der файл, когда на самом деле это был только кодированный открытый ключ RSA.

в результате правильная команда для выполнения оказалась следующей:

openssl rsa -inform der -in key.der -pubin
3
отвечен aardvarkk 2023-03-03 18:36

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх