SSH 公開鍵インスペクター

OpenSSH 公開鍵のアルゴリズム、サイズ、コメント、authorized_keys オプションを読み取り、SHA-256 フィンガープリントを計算して正規化された鍵をコピーします。

ブラウザ内でローカルに実行
公開鍵のみを貼り付けてください。OpenSSH 秘密鍵、PEM 秘密鍵、パスフレーズ、サーバー資格情報をオンラインのページに貼り付けないでください。
OpenSSH 公開鍵authorized_keys 行または公開鍵テキスト
フィンガープリントと正規化された鍵

信頼できる経路でフィンガープリントを確認

一致するフィンガープリントは鍵のバイト列を確認するものであり、所有権や認可を確認するものではありません。authorized_keys のオプション、ファイルのアクセス権、アカウントの範囲、ホストの信頼、ローテーションポリシーは別途確認してください。

OpenSSH 公開鍵を検査する方法

このページは OpenSSH 公開鍵の 1 行をブラウザー内で読み取り、その中身を表示します。アルゴリズム、鍵のサイズ、曲線または指数、コメント、authorized_keys のオプション、そして ssh-keygen が表示する形式の SHA-256 フィンガープリントです。鍵がタブの外に出ることはありません。

~/.ssh/id_ed25519.pub や authorized_keys の 1 行を貼り付け、「公開鍵を検査」を押します。パネルには読み取ったフィールド、検出結果、正規化した鍵の行が表示され、「フィンガープリントをコピー」「鍵をコピー」でその結果をクリップボードに取り出せます。

  1. 入力欄に authorized_keys の行、または id_ed25519.pub のような公開鍵ファイルの内容を貼り付けます。
  2. 「公開鍵を検査」を押します。
  3. 概要を確認します。鍵の種類、ビット数、曲線または指数、セキュリティキーのアプリケーション、オプション、コメントです。
  4. 検出結果を読み、SHA-256 フィンガープリントをサーバー側や鍵管理ツールの値と照合します。
  5. 必要な値は「フィンガープリントをコピー」または「鍵をコピー」で取り出し、「クリア」でパネルを空にします。

鍵の行から何を読み取るか

OpenSSH のバイナリ形式を読む

検査されるのは、空行とコメント行を除いた最初の 1 行だけです。任意の authorized_keys オプションに続いて、種類 (ssh-ed25519、ssh-rsa、ecdsa-sha2-nistp256、sk-ssh-ed25519@openssh.com など) と Base64 の blob が並びます。blob の内部にも種類が入っており、外側と内側の種類が一致しない行は表示せずに拒否します。

ビット数は種類の名前ではなく鍵のデータから算出します。Ed25519 は 256 ビット、RSA の行は実際の法のサイズ、ECDSA の行は曲線名とそのサイズを表示します。blob のバイト数はデコードしたままの値なので、貼り付けた行と見比べられます。

フィンガープリントとコピーされる行

フィンガープリントは、デコードした blob の SHA-256 を Base64 (パディングなし) にして SHA256: を付けた値で、ssh-keygen -l -E sha256 -f id_ed25519.pub が表示するものと同じです。計算対象のバイト列とコピーされる行は、常に貼り付けた鍵を指します。入力を編集するとパネルと保持していた値が先に消えるためです。

「鍵をコピー」は読み取ったままの行 (種類、blob、コメント) を返し、オプションの接頭辞は含みません。鍵を配備するときの正は元のファイルに置き、コピーは、1 文字の違いが見落とされやすいチャットやチケットの記入に使ってください。

検出結果の意味と限界

DSA / ssh-dss は廃止、2048 ビット未満の RSA は強度不足、コメントのない鍵は棚卸しが難しいものとして表示します。解析側では見えても OpenSSH が無視または拒否するもの、たとえば最後のフィールドより後ろの余分なバイトは、黙って捨てずに警告として表示します。

処理はすべてローカルで行われます。鍵をサーバーに送信せず、SSH 接続も開かず、ホストに鍵の有無を問い合わせません。フィンガープリントの一致が示すのはバイト列が同じことだけであり、アクセスは authorized_keys のオプション、ファイルの権限、アカウント、サーバーのポリシーにも左右されます。

最近使ったツール: