ファイルを選択
  1. base64hub
  2. 鍵とハッシュ
  3. SSH 鍵フィンガープリント

SSH 鍵のフィンガープリント(SHA256・MD5)

ssh-ed25519 AAAA… の行、authorized_keys ファイル全体、ホスト証明書を貼り付けると、ssh-keygen -l が出力するのと同じフィンガープリントの行を、すべての鍵について一度に表示します。

無料 登録不要・制限なし ローカル アップロードなし 正確 ssh-keygen -l および -E md5 と同じ出力 更新日 2026/10/27

公開鍵、authorized_keys や known_hosts ファイル、証明書、または PEM 公開鍵を貼り付けてください。

ブラウザ内で処理されます。このページがデータをどこかに送信することはできません – その根拠

SSH 鍵のフィンガープリントを調べる方法

  1. SSH 鍵 に公開鍵の行を 1 つ以上貼り付けるか、.pub、authorized_keys、known_hosts ファイルをドロップします。
  2. 鍵ごとにカードが表示され、種類、サイズまたは曲線、コメント、SHA256 と MD5 のフィンガープリント、そして ssh-keygen -l とまったく同じ行が並びます。
  3. 出力 欄に何を表示するかを選びます。SHA256 フィンガープリント、MD5 フィンガープリント、PEM 公開鍵(SPKI または PKCS#1)、RFC 4716、正規化した OpenSSH の行から選べます。
  4. 結果を 出力をコピー するか ダウンロード します。カードの フィンガープリントをコピー は、その値だけをコピーします。

受け付ける入力は普通の .pub の行だけではありません。from="10.0.0.0/8",command="…" のような authorized_keys のオプション、ホスト名付きやハッシュ化された |1|… 形式の known_hosts の行、RFC 4716 の ---- BEGIN SSH2 PUBLIC KEY ---- ブロック、OpenSSH 証明書、PEM 公開鍵、-----BEGIN OPENSSH PRIVATE KEY----- ファイルも読み込めます。

フィンガープリントの計算方法

OpenSSH の公開鍵の行は、種類、Base64 の鍵データ、コメントの 3 つで構成されます。

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("="))

= を省略できる理由は パディングの解説 を、さらに詳しくは Python での Base64 を参照してください。

信頼する前にホスト鍵を確認する

初めて接続するとき、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 セキュリティキー)
AAAAIHNzaC1lZDI1NTE5LWNlcnQtdjAxEd25519 証明書

行に書かれた種類と鍵データの中身が食い違っていると、カードに警告が表示されます。たいていは行を手で編集したことが原因です。

警告と制限

  • 2048 ビット未満の RSA は脆弱として警告されます。DSA 鍵も、最近の OpenSSH では無効化されているため警告されます。
  • 証明書(*-cert-v01@openssh.com)では、鍵 ID、シリアル、ユーザー/ホストの種別、プリンシパル、有効期間、重要なオプション、拡張、署名した 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) のような行を出力します。

別のサーバーやサービスでフィンガープリントが違って見えるのはなぜですか?

たいていはハッシュの種類の違いです。古いツールや一部の Web コンソールはコロン区切りの16進数で MD5(MD5:93:07:89:…)を表示し、最近の OpenSSH は Base64 で SHA256 を表示します。古い形式と比べるには、出力 を MD5 フィンガープリントに切り替えてください。

秘密鍵ファイルをここに貼り付けても安全ですか?

このツールが読むのは OPENSSH PRIVATE KEY ファイルの公開鍵部分だけです。この部分はパスワードで保護された鍵でも暗号化されずに保存されています。秘密鍵の部分には触れません。それでも、.pub ファイルを貼り付けるほうがよい習慣です。

SHA256 フィンガープリントは何をハッシュしているのですか?

バイナリの鍵データ(blob)、つまり .pub の行の Base64 部分をデコードしたものです。コメントや先頭の鍵の種類の文字列は含まれないので、鍵の名前を変えてもフィンガープリントは変わりません。