キーペア(キーペア)
公開鍵/秘密鍵ペア。SSH ed25519(Curve25519ベース・256bit)・RSA 4096bit・ECDSA P-256・Age X25519が代表で、GitHub/GitLab/Codeberg認証・SSH接続・署名検証で使用、`ssh-keygen -t ed25519`で生成。
概要
キーペアとは、公開鍵と秘密鍵の 2 つからなる暗号情報の組。公開鍵は自由に配布でき、秘密鍵は厳重に保管する。両者は数学的に結びついており、公開鍵で暗号化したデータは秘密鍵でのみ復号できる。逆に秘密鍵で署名したデータは、公開鍵で検証できる。SSH 接続、GitHub/GitLab/Codeberg での認証、Age でのファイル暗号化など、さまざまな場面で利用される。代表的なアルゴリズムは ed25519(Curve25519 ベース、256bit)、RSA 4096bit、ECDSA P‑256、Age X25519 である。ssh-keygen -t ed25519 で生成できる。
主な特徴・仕組み
- 非対称鍵暗号:公開鍵と秘密鍵が別々に存在し、相互に変換できない。
- 署名と検証:秘密鍵で署名し、公開鍵で検証。改ざん検知が可能。
- 鍵長と安全性:RSA 4096bit は 2048bit よりも安全性が高い。ed25519 は 256bit で高速。
- 鍵交換:SSH の鍵交換プロトコルで、セッション鍵を安全に共有。
- パスフレーズ:秘密鍵をパスフレーズで暗号化し、物理的に盗まれた場合でも保護。
- 鍵管理:
ssh-agentで秘密鍵をメモリ上に保持し、毎回入力不要に。 - 証明書ベース:GitHub の SSH 証明書は、公開鍵を証明書に埋め込むことで管理が容易。
- 多様な用途:ファイル暗号化(Age)、TLS/SSL、IoT デバイス認証など。
- 鍵更新:鍵の有効期限を設定し、定期的に更新することでリスクを低減。
- ハードウェアサポート:TPM 2.0 で秘密鍵を安全に保管し、物理的な攻撃を防止。
スペック/製品比較表
| アルゴリズム | 鍵長 | 速度 | 主な用途 | 代表製品 |
|---|---|---|---|---|
| ed25519 | 256bit | 高速 | SSH, Git | ssh-keygen -t ed25519 |
| RSA | 4096bit | 中速 | TLS, SSH | openssl genrsa -out key.pem 4096 |
| ECDSA P‑256 | 256bit | 高速 | TLS, IoT | openssl ecparam -name prime256v1 -genkey -noout -out key.pem |
| Age X25519 | 256bit | 超高速 | ファイル暗号化 | age -r key.txt |
| DSA 1024bit | 1024bit | 低速 | 旧式 | 非推奨 |
具体例・対応製品
- RTX 5090:GPU での暗号演算を加速。CUDA で ed25519 署名を 10 % 速く。
- Ryzen 9 9950X3D:CPU コア 16、3.5 GHz。SSH 接続時の鍵生成を 30 % 速く。
- Core Ultra 9 285K:10 core、5.7 GHz。RSA 4096bit 署名を 20 % 速く。
- DDR5-6000:高速メモリにより鍵データの読み書きが 15 % 速く。
- PCIe 5.0 x16:データ転送速度 32 GB/s。鍵交換時のパケット遅延を 5 % 低減。
自作PCでの選び方・注意点
- CPU:AES-NI と SHA‑256 命令を備えた 3.0 GHz 以上のモデルを選択。
- GPU:CUDA 12 以降で ed25519 署名をハードウェアで処理できるものが有利。
- メモリ:DDR5‑6000 以上で、鍵データのキャッシュ効率が向上。
- ストレージ:NVMe SSD 1 TB 以上で、鍵生成時の I/O ボトルネックを回避。
- TPM 2.0:秘密鍵をハードウェアに格納し、物理的な攻撃から保護。
- 電源:650 W 以上、80 PLUS Gold 以上の効率を持つもの。
- 冷却:CPU と GPU の温度を 70 ℃ 以下に抑える。
- OS:Linux 5.15 以降で、OpenSSH 9.0 以上を使用。
- バックアップ:秘密鍵は複数のオフラインストレージに保存。
- パスフレーズ:強力な 12 文字以上のパスフレーズを設定。
関連用語との違い
- 対称鍵:同じ鍵で暗号化・復号。鍵配送が課題。
- ハッシュ関数:データの固定長ダイジェストを生成。改ざん検知に使用。
- 証明書:公開鍵を第三者が署名したもの。信頼性を高める。
- パスワード:文字列で認証。鍵よりも推測されやすい。
よくある質問
Q1. ed25519 と RSA 4096bit の違いは何ですか?
A1. ed25519 は 256bit で高速、RSA 4096bit は 4096bit でより長い鍵長を持つ。速度と安全性のトレードオフがある。
Q2. Age で暗号化したファイルはどこで復号できますか?
A2. Age は X25519 を使用。鍵を持つ端末なら age -d で復号可能。
Q3. 2026年に予定されている新しい鍵交換プロトコルは何ですか?
A3. 次世代の SSH で QUIC ベースの鍵交換が検討中。実装は 2026年末を目指す。
まとめ
キーペアは公開鍵と秘密鍵の組で、非対称鍵暗号の基盤を成す。ed25519、RSA 4096bit、ECDSA P‑256、Age X25519 など多様なアルゴリズムが存在し、用途に応じて選択が必要。自作PCでは CPU、GPU、メモリ、ストレージ、TPM などを総合的に検討し、鍵管理を徹底することで安全性を最大化できる。2025年の最新ハードウェアを取り入れつつ、2026年に登場予定の次世代プロトコルへの準備も重要である。