公開鍵秘密鍵 SSH2 OpenSSH の違い
ssh2 クライアント は沢山あります
それぞれで公開鍵認証を行うと
フォーマットが違います
とか言われて、なんのこっちゃ?と思う人が多いかもしれません
実は、公開鍵秘密鍵のフォーマットには2種類
・本家SSH社の定義したフォーマット
・OpenSSHの定義したフォーマット
SSH社のフォーマットを使っているクライアント
・Poderosa(旧 ValaTerm)
OpenSSHのフォーマットを使っているクライアント
・Linux 標準搭載のsshコマンド
・UTF-8 Teraterm Pro with TTSSH2
その他独自形式
・PuTTy (中身はSSH社のものに近い)
という感じになっている
実際に中身はというと多倍長整数がいくつか入っているだけです
ただ、その入れ方に違いがあって、
お互いで鍵を使えなかったりします
どう違うかというと
SSH社のものは資料が見当たらなかったのでよくわからないです
すみません・・・
OpenSSHのものは
ASN.1形式で
SEQUENCE 内部に INTEGERが複数定義されている形を取っています。
RSA鍵の定義内容はRFC2313にありました。
DSA鍵のは見当たりません。
ソースが公開されているクライアントのソース読んだ感じだと、
RSAよりINTEGERの数が多いだけの感じです。
単純に両者を見分けるには、ファイルが
-
-
-
- BEGIN SSH2 ENCRYPTED PRIVATE KEY ----
-
-
で始まれば本家