У меня есть шестнадцатеричная строка, которая, как утверждается, содержит открытый ключ EC. Мне нужно преобразовать эту шестнадцатеричную строку в формат PEM («key.pem» в следующем примере), чтобы исследовать содержимое, которое я планирую сделать с помощью «openssl ec -in key.pem -text -noout». Это возможно?Как преобразовать ключ ECDSA из шестнадцатеричного в формат PEM
ответ
Я принимаю hex, вы имеете в виду двоичный (DER отформатированный) ключ? Или это шестнадцатеричная строка в человеко-читаемом файле с заголовком, начинающимся с «----- BEGIN PUBLIC KEY -----»? Если вы видите этот заголовок, он уже находится в формате PEM.
Если это в двоичном формате, попробуйте это преобразовать двоичный ключ PEM:
openssl ec -in key.der -inform DER -pubin -out keyout.pem -outform PEM
где «key.der» является ваш бинарный ключ.
Но вы также должны иметь возможность исследовать содержимое без преобразования в PEM. Просто используйте:
openssl ec -in key.der -inform DER -pubin -text -noout
Если вы начинаете с шестнадцатеричной строкой, вы должны проклясть декодировать его, чтобы получить DER-кодирование первым.
Шестнадцатеричная строка должна начинаться с 30...
, что означает, что это последовательность ASN.1.
Эта команда оболочка будет гекс декодировать (с использованием xxd
), а затем использовать OpenSSL для разбора полученного МЭД открытого ключа:
echo "30...." | xxd -r -p - | openssl ec -inform der -pubin -noout -text
Для вывода ПЭМ, удалить -noout -text
, добавить -pubout -out publickey.pem
echo "30...." | xxd -r -p - | openssl ec -inform der -pubin -pubout -out publickey.pem
Если это фактически закрытый ключ, просто опустите -pubin
и -pubout
.
- 1. Преобразовать открытый ключ ssh в формат pem
- 2. Как преобразовать файл .crt в формат .pem
- 3. Преобразовать закрытый приватный ключ pfx в формат pem
- 4. Как преобразовать открытый ключ из JWK в PEM для OpenSSL?
- 5. Как преобразовать открытый ключ PEM в открытый ключ DER?
- 6. Как преобразовать закрытый ключ из шестнадцатеричного в объект PrivateKey?
- 7. Как преобразовать Java сгенерированный открытый ключ формата PEM с OpenSSL
- 8. Как преобразовать формат ключа файла OpenSSH общественности к PEM
- 9. Преобразовать RSA PEM ключ Строка дер байт []
- 10. Как преобразовать закрытый ключ PEMC-8 в формате PEM в традиционный формат?
- 11. Преобразовать закрытый ключ PKCS # 8 в PEM в java
- 12. Как читать открытый ключ RSA в PEM + PKCS # 1 Формат
- 13. .pem сертификат в удобочитаемый формат
- 14. как преобразовать необработанный модуль и показатель экспоненты в открытый ключ RSA (формат .pem)
- 15. как преобразовать открытый ключ base64/radix64 в формат pem в python
- 16. Как преобразовать сертификат X509 и закрытый ключ в формате PEM в формат GPG?
- 17. Как преобразовать ключ XML RSA в файл PEM?
- 18. Как преобразовать незашифрованный файл PEM в закодированный формат
- 19. bash - Как преобразовать каталог .pem-файлов в формат pkcs12 (.p12)?
- 20. Как хранить закрытый ключ ECDSA в Go
- 21. Преобразовать DSA асимметричный ключ в формате .NET XML в формат PEM
- 22. Преобразовать ECDSA частных шестигранный ключ для открытого ключа
- 23. Экспорт в формат PEM с использованием CryptoAPI
- 24. Преобразование Java Keystore в формат PEM
- 25. Экспорт ключа webcrypto в формат PEM
- 26. Как подписать сообщение с ключом EC, извлеченным из .pem файла (ECDSA подписи)
- 27. Создание ECDSA Частный ключ в bouncy castle возвращает ключ PUBLIC
- 28. Как я могу преобразовать открытый ключ pem в открытый ключ rsa с bouncycastle в C#?
- 29. ECDSA получить открытый ключ в C#
- 30. Как загрузить открытый ключ в формате PEM для шифрования?
Я ничего не знаю о ключе, за исключением следующего: - длина 114 символов (каждый символ в диапазоне 0-9 и от A до F, при этом 57 байт); -allegedly содержит публичный ECDSA ключевых –
Первой команду возвращает (шестнадцатеричную строку в "ключе"): # OpenSSL ес -in ключа -Информа DER -pubin -out keyout.pem -outform PEM чтение EC ключ не в состоянии загрузить Key 3073398984: ошибка: 0D07209B: ASN1 процедуры кодирования: ASN1_get_object: слишком долго: asn1_lib.c: 142: 3073398984: ошибка: 0D068066: ASN1 кодирования подпрограммы: ASN1_CHECK_TLEN: плохой заголовок объекта: tasn_dec.c: 1306: 3073398984: error: 0D07803A: asn1 процедуры кодирования: ASN1_ITEM_EX_D2I: вложенная ошибка asn1: tasn_dec.c: 381: Тип = X509_ALGOR 3073398984: ошибка: 0D08303A: asn1 подпрограммы кодирования: ASN1_TEMPLATE_NOEXP_D2I: вложенная ошибка asn1: tasn_dec.c: 751: Field = algor, Тип = X509_PUBKEY –
Второе: # openssl ec -in ключ информ DER -pubin -text -noout чтения EC ключ не удалось загрузить Key 3073931464: ошибка: 0D07209B: ASN1 кодирования подпрограммы: ASN1_get_object: слишком долго: asn1_lib.c: 142: 3073931464: ошибка: 0D068066: ASN1 процедуры кодирования: ASN1_CHECK_TLEN: плохой заголовок объекта: tasn_dec.c: 1306: 3073931464: ошибка: 0D07803A: ASN1 кодирования подпрограммы: ASN1_ITEM_EX_D2I: вложенная ASN1 ошибка: tasn_dec.c: 381: Тип = X509_ALGOR 3073931464: ошибка: 0D08303A: ASN1 подпрограммы кодирования: ASN1_TEMPLATE_NOEXP_D2I: вложенная ошибка asn1: tasn_dec.c: 751: Field = algor, Type = X509_PUBKEY –