一般的に、SSHで公開鍵を使用する場合、
①クライアントで鍵ペアを作成する
②作成された鍵ペアのうちの公開鍵を、クライアント→サーバに送信してサーバ側で保存する。
という準備作業をすると思います。
ここで、公開鍵は慎重に取り扱うべき、という解説をたまに見かけます。
例:http://d.hatena.ne.jp/LukeSilvia/20080611/p1
「WinSCPでサーバーに公開鍵をコピー。
本来であれば、サーバを外部に公開していない場合などを除いては、ネットワークを使用せず、CR-DやUSBなどでコピーした方がよい。」
公開鍵は、もれないように慎重に取り扱う必要はあるでしょうか?
公開鍵が外部にもれたばあい、何かリスクはあるのでしょうか?
> 公開鍵は、もれないように慎重に取り扱う必要はあるでしょうか?
鍵長が短すぎとかでもなければ問題無いと考えて良いです。でなければ公開鍵暗号の意味がありません。
公開鍵をhttpやプレーンテキストなメールでやりとりする場合のリスクがあるとすれば、通信経路上などでのなりすましなどが考えられます。その対策として、公開鍵をhttpsで公開したり、物理メディアで渡したり、暗号化して渡すなどといった手段は有効だと思います。
成りすましリスクの具体例をとしては例えば↓こんな感じです。
BさんがAさんに「サーバに登録するから公開鍵を送ってね」と言ったのをCさんが聞いていたとします。CさんはAさんがBさんに送る前に、Cさんの公開鍵を添付した偽メールを自分がAさんであると装ってBさんに送りつけて、Bさんがまんまと騙されてサーバに登録してCさんの心縫うを許してしまう、など。
公開鍵は漏れても全く問題ありません。ご安心下さい。
下記のように考えて下さい。
公開鍵:暗号化する専用の鍵
秘密鍵:復号化する専用の鍵
質問文にあるサイトを拝見しましたが、なぜ問題があるのかに言及しておりません。
誤った解釈かと思われます。
公開鍵はあくまで暗号化専用の鍵です。この情報がもれたとしても、復号化することは一般的にできません。もし、公開鍵が漏れて問題があるのであれば、世の中のhttpsで始まるサイトは全て問題があることになります。
http://ja.wikipedia.org/wiki/%E5%85%AC%E9%96%8B%E9%8D%B5%E6%9A%97%E5%8F%B7
なるほど!やはりそうなんですね。
安心いたしました。
ありがとうございます!
> 公開鍵は、もれないように慎重に取り扱う必要はあるでしょうか?
鍵長が短すぎとかでもなければ問題無いと考えて良いです。でなければ公開鍵暗号の意味がありません。
公開鍵をhttpやプレーンテキストなメールでやりとりする場合のリスクがあるとすれば、通信経路上などでのなりすましなどが考えられます。その対策として、公開鍵をhttpsで公開したり、物理メディアで渡したり、暗号化して渡すなどといった手段は有効だと思います。
成りすましリスクの具体例をとしては例えば↓こんな感じです。
BさんがAさんに「サーバに登録するから公開鍵を送ってね」と言ったのをCさんが聞いていたとします。CさんはAさんがBさんに送る前に、Cさんの公開鍵を添付した偽メールを自分がAさんであると装ってBさんに送りつけて、Bさんがまんまと騙されてサーバに登録してCさんの心縫うを許してしまう、など。
なるほど!ミドルマンなんちゃらアタックというやつですね。
「公開鍵がもれるのは問題ないが、まちがって悪い人の公開鍵をサーバに登録してはいけない」ということなんですね。
すごい納得できました。
つまり、②の過程で他人の公開鍵をサーバにおいてしまったら、侵入されてしまうわけですね。
なるほど。
公開鍵は、名前の通り公開するものですから、流出や漏洩のリスクはありません。
ご質問のページが、なぜそのような記述をしているのかは分かりません。
また、公開鍵を使ってコンテンツを暗号化したりすることもないので、なりすましもできません。
なるほど!ミドルマンなんちゃらアタックというやつですね。
2012/01/29 02:05:59「公開鍵がもれるのは問題ないが、まちがって悪い人の公開鍵をサーバに登録してはいけない」ということなんですね。
すごい納得できました。
つまり、②の過程で他人の公開鍵をサーバにおいてしまったら、侵入されてしまうわけですね。
2012/01/29 02:08:31なるほど。