Загрузить файл
  1. base64hub
  2. Ключи и хеши
  3. Отпечаток SSH-ключа

Отпечаток SSH-ключа (SHA256 и MD5)

Вставьте строку ssh-ed25519 AAAA…, весь файл authorized_keys или сертификат хоста, и сразу для всех ключей появятся такие же строки с отпечатками, какие печатает ssh-keygen -l.

Бесплатно без регистрации и ограничений Локально ничего не загружается Точно тот же вывод, что у ssh-keygen -l и -E md5 Обновлено 27 окт. 2026 г.

Вставьте открытые ключи, файл authorized_keys или known_hosts, сертификат или открытый ключ в PEM.

Обработка идёт в браузере. Эта страница не может никуда отправить ваши данные – откуда мы это знаем

Как получить отпечаток SSH-ключа

  1. Вставьте одну или несколько строк открытых ключей в поле SSH-ключи или перетащите файл .pub, authorized_keys или known_hosts.
  2. Для каждого ключа выводится карточка: тип, размер или кривая, комментарий, отпечатки SHA256 и MD5 и точная строка ssh-keygen -l.
  3. Выберите, что показывать в поле Вывод: отпечатки SHA256, отпечатки MD5, открытый ключ в PEM (SPKI или PKCS#1), RFC 4716 или нормализованные строки OpenSSH.
  4. Нажмите Скопировать результат или Скачать. Кнопка Скопировать отпечаток на карточке копирует только это значение.

Принимаются не только обычные строки .pub: опции authorized_keys вроде from="10.0.0.0/8",command="…", строки known_hosts с именами хостов или хешированными записями |1|…, блоки RFC 4716 ---- BEGIN SSH2 PUBLIC KEY ----, сертификаты OpenSSH, открытые ключи PEM и файлы -----BEGIN OPENSSH PRIVATE KEY-----.

Как считается отпечаток

Строка открытого ключа OpenSSH состоит из трёх частей: тип, блоб ключа в Base64 и комментарий.

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG4ZlfvPsoxxd6tpkc1MDAJvZf8exJSDeW7a3xQRKA7d alice@laptop

Отпечаток считается как хеш декодированного блоба; у Ed25519 блоб занимает 51 байт:

ФорматЗначение для ключа выше
SHA256 (по умолчанию с OpenSSH 6.8)SHA256:XSOBs9uz/dFf9ci88yKGbLMcjtzblRna8F0VOmxZiv8
MD5 (устаревший)MD5:93:07:89:27:05:e1:7a:5d:92:6e:ab:13:1e:48:90:d5

Отпечатки SHA256 записываются в Base64 без завершающего =, поэтому после префикса в них всегда 43 символа. Тот же расчёт на Python:

import base64, hashlib, sys

line = open(sys.argv[1]).read().split()
blob = base64.b64decode(line[1])
digest = hashlib.sha256(blob).digest()
print("SHA256:" + base64.b64encode(digest).decode().rstrip("="))

Почему = можно отбросить, объясняет статья о дополнении, а больше примеров собрано в Base64 в Python.

Проверка ключа хоста, прежде чем ему доверять

При первом подключении OpenSSH спрашивает: ED25519 key fingerprint is SHA256:…. Are you sure you want to continue connecting? Правильный ответ зависит от того, совпадает ли это значение с полученным другим путём:

  • на консоли сервера: ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
  • из опубликованных отпечатков ключей хостов у вашего провайдера
  • от коллеги, у которого хост уже есть в known_hosts: вставьте этот файл сюда, и каждая запись будет показана со своим отпечатком

Чтобы увидеть, какие ключи предлагает сервер, не входя на него, выполните ssh-keyscan host.example.com | ssh-keygen -lf -; команда выведет отпечатки всех ключей хоста.

Как узнать тип ключа по Base64

Блоб начинается с типа ключа в виде строки с префиксом длины, поэтому у каждого типа постоянное начало в Base64:

Начинается сТип ключа
AAAAC3NzaC1lZDI1NTE5ssh-ed25519
AAAAB3NzaC1yc2Essh-rsa
AAAAE2VjZHNhLXNoYTItbmlzdHAyNTecdsa-sha2-nistp256
AAAAGnNrLXNzaC1lZDI1NTE5QG9wZW5zc2guY29tsk-ssh-ed25519@openssh.com (аппаратный ключ FIDO)
AAAAIHNzaC1lZDI1NTE5LWNlcnQtdjAxСертификат Ed25519

Если тип, указанный в строке, не совпадает с блобом, карточка предупреждает о расхождении. Обычно это значит, что строку правили вручную.

Предупреждения и ограничения

  • RSA меньше 2048 бит помечается как слабый. Ключи DSA тоже получают пометку, потому что современный OpenSSH их отключает.
  • Сертификаты (*-cert-v01@openssh.com) показывают ID ключа, серийный номер, тип (пользователь или хост), principals, срок действия, критические опции, расширения и отпечаток ключа подписавшего CA.
  • Ключи FIDO (sk-…) и Ed448 декодируются, но в PEM не конвертируются.
  • Комментарий, сохранённый внутри файла закрытого ключа, не показывается.
  • SHA256 считается через WebCrypto API браузера, которому нужна страница по https. MD5 страница считает сама.

Вопросы и ответы

Как узнать отпечаток своего SSH-ключа?

Вставьте выше содержимое файла .pub или выполните ssh-keygen -lf ~/.ssh/id_ed25519.pub. Оба способа выведут строку вида 256 SHA256:XSOBs9uz… alice@laptop (ED25519).

Почему на другом сервере или в сервисе отпечаток выглядит иначе?

Обычно дело в хеше: старые инструменты и некоторые веб-консоли показывают MD5 в hex через двоеточие (MD5:93:07:89:…), а современный OpenSSH показывает SHA256 в Base64. Переключите Вывод на отпечатки MD5, чтобы сравнить со старым форматом.

Безопасно ли вставлять сюда файл закрытого ключа?

Инструмент читает только открытую часть файла OPENSSH PRIVATE KEY (она хранится незашифрованной даже в ключах с паролем) и не трогает закрытую. И всё же правильнее привыкнуть вставлять файл .pub.

От чего на самом деле считается отпечаток SHA256?

От двоичного блоба ключа, то есть от Base64-части строки .pub после декодирования. Комментарий и текстовое название типа ключа перед блобом не учитываются, поэтому переименование ключа не меняет его отпечаток.