dodaの日記: ECDH/ECDSA 対応
1月下旬に出たOpenSSH 5.7から、楕円曲線暗号を使った鍵交換(ECDH)とホスト/ユーザ鍵(ECDSA)がサポートされた。
RLogin では 2/7 に出た 2.9.7 でいち早く対応したし(*1)、Tera Term でもサポートしたいなあと思って相談したら、永田さんが対応作業をしてくれた。
OpenSSH でサポートされた後の最初のリリースで対応出来たのはちょっと嬉しい。
*1: ECDSA ホスト鍵のサポートは 2/28 の RLogin 2.10.0 から。
ECDH/ECDSA を使っている事は「ヘルプ」-「TTSSHについて」で確認できる。(例)
ECC を使うと何が嬉しいかというと、少ないビット数で RSA 等と同等以上の強度を得られるという事。
たとえば、SSH の ECC 対応に関する RFC である RFC5656 には強度比較として以下の表がのっている。
+-----------+------------------------------+-------+---------+
| Symmetric | Discrete Log (e.g., DSA, DH) | RSA | ECC |
+-----------+------------------------------+-------+---------+
| 80 | L = 1024, N = 160 | 1024 | 160-223 |
| | | | |
| 112 | L = 2048, N = 256 | 2048 | 224-255 |
| | | | |
| 128 | L = 3072, N = 256 | 3072 | 256-383 |
| | | | |
| 192 | L = 7680, N = 384 | 7680 | 384-511 |
| | | | |
| 256 | L = 15360, N = 512 | 15360 | 512+ |
+-----------+------------------------------+-------+---------+
この表によると、RSA 1024 ビット相当なのは ECC だと 160 ビットという事になる。
# RFC5656 で規定されている ECDH/ECDSA はどちらも 256, 384, 521 ビットの 3 種類
さらには、ECC の強度はもっと強いという話もある。
また、複数の暗号方式が使える事自体が嬉しい場合もある。
どれか一つの方式に問題が出ても、他の方式のみを使うようにすればいいからだ。
例えば、CBC モードの問題の時も CTR モードの暗号や Arcfour を使うという回避方法が有った。
# Tera Term ではどちらも対応していなかったが、これを機に対応暗号形式の拡充を行った
現状の問題としては、Pageant で ECDSA が使えない事がある。
これは PuTTY 側の問題なので、早く対応して欲しいと思う。
# Wish List には挙がっていないなあ。挙げといた方がいいのかな。
ECDH/ECDSA 対応 More ログイン