サーバーに接続する際、正しいサーバーか確認するために「フィンガープリント」(指紋)を利用します。進文字列か、アスキーアートのようなパターンにして、ユーザーに正当性を確認させています。使い方については前記事をご覧ください。して、フィンガープリント検証のシンプルな一例が紹介されています。して接続を中止することができます。いくつか使いにくい点があります。接続する前にサーバーのフィンガープリントを知っていることは稀ですので、ユーザーに正規のフィンガープリントであるかどうか確認させる必要があります。クライアントでは初回接続時にサーバーから取得したフィンガープリントを、正規のものとして登録するかどうかのダイアログが表示されます。上記の検証ロジックではこの処理に対応できません。サーバーには接続されて、フィンガープリントの確認がどうであれ、すでに通信が可能になっているからです。すればいいでしょうか。フィンガープリントの確認が終わるまで接続処理をブロックさせるいくつか方法はあると思いますが、今回自作していたアプリではフィンガープリントの確認が終わるまで接続処理をブロックできたほうがよかったため、下記のように実装しました。使ってフィンガープリントが確認されるまで接続処理をブロックしています。少々泥臭い実装なので、他によい方法があれば教えてください。いう拡張メソッドを用意しています。進文字列が得られます。SSHSNSでもご購読できます。