Вопрос: Как получить идентификатор ключа из файла .pem openssl?


У меня есть закрытый ключ .pem, созданный openssl. Как извлечь из него идентификатор ключа?

Изменить: сгенерированная пара ключей rsa предназначена для облачного облака Amazon. При загрузке на консоль отображается «Идентификатор ключа». Однако закрытый ключ, который я создал, не для моей учетной записи, и у меня нет свободного места для загрузки открытого ключа на моей учетной записи AWS (существует ограничение на два открытых ключа).


4
2017-09-27 10:03


Источник


Есть ли какая-то конкретная программа, требующая ввода такого идентификатора ключа? - grawity


Ответы:


Голые ключи не имеют «идентификаторов ключей». Это всего лишь серия чисел.

Если ключ принадлежит сертификату X.509, то для идентификации будет использоваться отпечаток сертификата (хэш SHA-1 сертификата, закодированного DER): openssl x509 -outform der | openssl sha1, или openssl x509 -noout -fingerprint,

В противном случае (если это просто голая открытая / закрытая пара ключей), SHA-1 хэш общественности (иногда, DER-кодирование), но я не знаю ни одного стандарта для него. Вы можете извлечь открытый ключ openssl rsar -pubout -outform der, снова openssl sha1 если этого требует ваша программа.


«Идентификаторы пары ключей», используемые CloudFront, являются серийными номерами запись в базе данных с этим ключом. Один и тот же ключ, загруженный дважды, будет иметь разные идентификаторы; Я просто протестировал его.


9
2017-09-27 11:48



Благодарю. Я отредактировал мой вопрос. Похоже, способ генерации этого идентификатора ключа AWS является собственностью, поэтому мой вопрос просто неверен ... - ascobol
Идентификаторы ключей CloudFront действительно являются собственностью; см. обновленный ответ. - grawity


Amazon теперь предоставляет инструменты для выполнения таких действий на любом сервере (а не только на серверах, работающих в EC2). На любом компьютере Ubuntu вы можете установить инструменты с помощью apt-get:

$ sudo apt-get install ec2-ami-tools ec2-api-tools

Вот синтаксис для получения отпечатка пальца для My.pem:

$ ec2-fingerprint-key My.pem
62:44:56:f7:91:f2:8b:9b:44:7c:17:0e:39:c7:34:68:f5:b2:3c:57

В виде ec2-fingerprint-key немного длиннее для ввода, есть эквивалентный ярлык ec2fp:

$ ec2fp My.pem
62:44:56:f7:91:f2:8b:9b:44:7c:17:0e:39:c7:34:68:f5:b2:3c:57

2
2018-04-10 17:42