(57)【要約】【課題】  記憶装置側に組み込まれたＦＴＰサーバへホスト装置側からログインする際に、ＦＴＰのプロトコル仕様自体は何ら変更することなく、ホスト装置側で入力されるパスワードを容易に暗号化できるＦＴＰ通信システムを提供する。【解決手段】  ＦＴＰサーバ（記憶装置側）において、ログイン認証に際して、ホスト装置から受信したユーザー名が、予め定められた特殊ユーザー名であると判定された場合に、パスワードの暗号化に使用するパスワード用公開キーと、該暗号化されたパスワードの復号化に使用するパスワード用秘密キーとを作成するとともに、パスワード用公開キーをホスト装置に送信する。これを受けたホスト装置側では、入力済みのパスワードを、その受信したパスワード用公開キーにて暗号化するとともに、暗号化されたパスワードをパスワード送信手段によりＦＴＰサーバに送信する。そして、ＦＴＰサーバ側では、その受信した、暗号化されたパスワードを、既に作成して保存してあるパスワード用秘密キーで復号化する。【選択図】  図５
2008092141.tif 000002
【特許請求の範囲】
【請求項１】
メディア装着用スロットと、ファイル単位による記憶データの読出し、書込み及び消去が可能とされた不揮発性メモリからなり、該メディア装着用スロットに着脱可能に装着される着脱式記憶メディアとを備えたネットワーク型記憶装置と、ＴＣＰ／ＩＰネットワークにより該ネットワーク型記憶装置と接続されるホスト装置とを備えるとともに、前記ネットワーク型記憶装置側にＦＴＰサーバのプログラムが組み込まれ、前記ホスト装置側にＦＴＰクライアントのプログラムが組み込まれ、前記ネットワーク型記憶装置に装着された前記着脱式記憶メディアに対する前記ホスト装置からのデータファイルアクセスを、前記ＴＣＰ／ＩＰネットワークを介したＦＴＰ通信により実行するＦＴＰ通信システムにおいて、
前記ネットワーク型記憶装置側に設けられ、ログイン許可するべき前記ＦＴＰクライアントのユーザー名とパスワードとを登録するユーザー登録手段と、
前記ＦＴＰサーバにログインするためのユーザー名を、前記ホスト装置から前記ＦＴＰサーバに送信するユーザー名送信手段と、
前記ユーザー名の受信と引き換えに前記ＦＴＰサーバから前記ホスト装置にパスワード要求レスポンスを送信するパスワード要求レスポンス送信手段と、
該パスワード要求レスポンスを受けて前記ホスト装置から前記ＦＴＰサーバに、該ホスト装置にて入力されたパスワードを送信するパスワード送信手段と、
前記ＦＴＰサーバにて、受信した前記パスワードと前記ユーザー名とに基づいてログインユーザーを認証し、認証受理の場合に該ログインユーザーのＦＴＰサーバへのログインを許可するログイン認証手段とを有し、さらに、
前記ＦＴＰサーバに、受信した前記ユーザー名が、予め定められた特殊ユーザー名であるか否かを判定するとともに、該ユーザー名が前記特殊ユーザー名であった場合に、前記パスワードの暗号化に使用するパスワード用公開キーと、該暗号化されたパスワードの復号化に使用するパスワード用秘密キーとを作成するとともに、前記パスワード用公開キーを前記ホスト装置に送信するサーバ側パスワード暗号化処理手段が設けられる一方、
前記ホスト装置に、入力済みの前記パスワードを受信した前記パスワード用公開キーにて暗号化するとともに、暗号化されたパスワードを前記パスワード送信手段により前記ＦＴＰサーバに送信させるクライアント側パスワード暗号化処理手段が設けられてなり、
前記ＦＴＰサーバに、受信した前記暗号化されたパスワードを、前記パスワード用秘密キーで復号化するサーバ側パスワード復号化処理手段が設けられてなる、
ことを特徴とするＦＴＰ通信システム。
【請求項２】
前記サーバ側パスワード暗号化処理手段は、前記パスワード要求レスポンスに前記パスワード用公開キーを付加文字列として組み込み、前記パスワード要求レスポンス送信手段により前記ホスト装置へ送信するものであり、
前記クライアント側パスワード暗号化処理手段は、受信した前記パスワード要求レスポンスから前記パスワード用公開キーをなす前記付加文字列を抽出するものである請求項１記載のＦＴＰ通信システム。
【請求項３】
前記ユーザー名に予め定められた特殊ユーザー名識別文字列が含まれている場合に、該ユーザー名が前記特殊ユーザー名であると判定される請求項１又は請求項２に記載のＦＴＰ通信システム。
【請求項４】
前記ホスト装置にて、前記ユーザーによる見かけユーザー名の入力を受け付ける見かけユーザー名入力受付手段と、
入力が受け付けられた前記見かけユーザー名の入力文字列に前記特殊ユーザー名識別文字列を付加することにより、該見かけユーザー名を前記特殊ユーザー名に変換する特殊ユーザー名変換手段とが設けられ、
前記ユーザー名送信手段は、変換により得られた該特殊ユーザー名を前記ＦＴＰサーバに送信するものである請求項３記載のＦＴＰ通信システム。
【請求項５】
前記特殊ユーザー名変換手段は、前記特殊ユーザー名識別文字列を前記見かけユーザー名の先頭側に付加するものである請求項４記載のＦＴＰ通信システム。
【請求項６】
前記ホスト装置において、前記ユーザー名送信手段、前記パスワード要求レスポンス送信手段、前記パスワード送信手段、前記ログイン認証手段及び前記クライアント側パスワード暗号化処理手段の各機能が、該ホスト装置にインストールされた専用ツールプログラムにより実現されるとともに、前記特殊ユーザー名による該専用ツールプログラムからの前記ＦＴＰサーバへの前記ログインを第一ログインとして、
前記ネットワーク型記憶装置に、前記第一ログイン許可後に、前記ログインユーザーに発行するべきテンポラリユーザー名を作成するテンポラリユーザー名作成手段と、該テンポラリユーザー名を登録するテンポラリユーザー名登録手段とが設けられ、
前記ホスト装置に、前記第一ログインに対する前記ＦＴＰサーバからの許可レスポンスを受けるのに対応して、前記テンポラリユーザー名の暗号化に使用するテンポラリユーザー名用公開キーと、暗号化された該テンポラリユーザー名の復号化に使用するテンポラリユーザー名用秘密キーとを作成するとともに、前記テンポラリユーザー名用公開キーを前記ＦＴＰサーバに送信するクライアント側テンポラリユーザー名暗号化処理手段が設けられ、
前記ＦＴＰサーバに、受信した前記テンポラリユーザー名用公開キーにより、作成された前記テンポラリユーザー名を暗号化し、該暗号化されたテンポラリユーザー名を前記ホスト装置に送信するサーバ側テンポラリユーザー名暗号化処理手段が設けられ、
前記ホスト装置に、受信した前記暗号化されたテンポラリユーザー名を、前記テンポラリユーザー名用秘密キーで復号化するクライアント側テンポラリユーザー名復号化処理手段と、該復号化されたテンポラリユーザー名を前記ＦＴＰサーバに送信する復号化テンポラリユーザー名送信手段とが設けられ、
前記クライアント側テンポラリユーザー名暗号化処理手段が前記専用ツールプログラムに組み込まれてなり、かつ、前記ホスト装置には、前記ＦＴＰクライアントプログラムが実装され、かつ前記復号化テンポラリユーザー名送信手段の機能を有したブラウザソフトウェアがインストールされてなり、
前記ＦＴＰサーバに、復号化されたテンポラリユーザー名を前記ブラウザソフトウェアから受信し、自身が作成したテンポラリユーザー名との照合が一致した場合にのみ、該テンポラリユーザー名による前記ブラウザソフトウェアからの前記ＦＴＰサーバへの第二ログインを許可する第二ログイン許可手段が設けられてなる請求項１ないし請求項５のいずれか１項に記載のＦＴＰ通信システム。
【請求項７】
前記テンポラリユーザー名登録手段は、前記テンポラリユーザー名をパスワードなしで登録するものであり、
前記専用ツールプログラムは、前記復号化されたテンポラリユーザー名を前記ブラウザソフトウェアに内部転送するものであり、
前記ブラウザソフトウェアは該内部転送により取得したテンポラリユーザー名を、ユーザー入力を介さずに前記ＦＴＰサーバに送信するものであり、
前記第二ログイン許可手段は、前記ブラウザソフトウェアから前記テンポラリユーザー名を受信し、自身が作成したテンポラリユーザー名との照合が一致した場合にのみ、該テンポラリユーザー名による前記ブラウザソフトウェアからの前記ＦＴＰサーバへの第二ログインをパスワードなしにて許可するものである請求項６記載のＦＴＰ通信システム。
【請求項８】
前記ＦＴＰサーバに、前記第一のログイン時に取得した前記ホスト装置のＩＰアドレスと、前記第二ログイン時に取得した前記ホスト装置のＩＰアドレスとを照合するＩＰアドレス照合手段が設けられ、
前記第二ログイン許可手段は、当該ＩＰアドレスが照合一致した場合にのみ前記第二ログインを許可するものである請求項６又は請求項７に記載のＦＴＰ通信システム。
【請求項９】
前記テンポラリユーザー名作成手段はテンポラリユーザー名を、予め定められたテンポラリユーザー名識別文字列が含まれているものとして作成するものであり、
前記第二ログイン許可手段は、前記ブラウザソフトウェアから受信したユーザー名に前記テンポラリユーザー名識別文字列が含まれているものを前記テンポラリユーザー名であると識別する請求項８記載のＦＴＰ通信システム。
【請求項１０】
前記クライアント側テンポラリユーザー名暗号化処理手段は、前記テンポラリユーザー名用公開キーを、予め定められた第一ＦＴＰコマンドへの組み込み文字列の形で該ＦＴＰコマンドとともに前記ＦＴＰサーバへ送信するものであり、
前記ＦＴＰサーバは、前記特殊ユーザー名による前記第一ログインが発生していない状態にあっては、受信した前記第一ＦＴＰコマンドに対応する本来のコマンド実行処理を行なう一方、前記特殊ユーザー名による前記第一ログインが発生している状態にあっては、受信した前記第一ＦＴＰコマンドに対応する前記本来のコマンド実行処理を実行せず、代わりに、該第一ＦＴＰコマンドから前記組み込み文字列として送信されてくる前記テンポラリユーザー名用公開キーを抽出し、前記サーバ側テンポラリユーザー名暗号化処理手段にこれを受け渡す処理を行なう請求項６ないし請求項９のいずれか１項に記載のＦＴＰ通信システム。
【請求項１１】
前記復号化テンポラリユーザー名送信手段は、前記暗号化されたテンポラリユーザー名を前記ＦＴＰサーバに送信要求するために、前記第一ＦＴＰコマンドとは異なる予め定められた第二ＦＴＰコマンドを前記ＦＴＰサーバへ発行・送信するものであり、
前記ＦＴＰサーバは、受信した前記第二ＦＴＰコマンドに対応するレスポンスを、前記暗号化されたテンポラリユーザー名を付加した形で前記ブラウザソフトウェアに送信する請求項１０記載のＦＴＰ通信システム。
【請求項１２】
前記第一ＦＴＰコマンドがＣＷＤコマンドであり、該ＣＷＤコマンドに続く形で前記テンポラリユーザー名用公開キーを組み込まれる一方、
前記第二ＦＴＰコマンドがＰＷＤコマンドであり、該ＰＷＤコマンドのレスポンスに前記暗号化されたテンポラリユーザー名が付加される請求項１１記載のＦＴＰ通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルコンピュータ（以下「ＰＣ」と略称する）やワークステーション等をホスト装置としてこれにネットワーク型記憶装置が接続されたＦＴＰ通信システムに関する。
【背景技術】
【０００２】
【特許文献１】特開２００５−１８６４５号公報
【特許文献２】特開２００５−１０７８７５号公報
【特許文献３】特開２００２−７７７２号公報
【０００３】
近年、フラッシュメモリなどの不揮発性メモリがカード型にパッケージングされたいわゆるメモリーカード（記録メディアの一例）が広く知られている。このメモリーカードは、デジタルカメラや携帯音楽プレーヤーなどのデジタル機器に用いられるデータの記憶媒体として急速に普及している。メモリーカードの仕様は統一されておらず、例えば、コンパクトフラッシュ（登録商標、以下「ＣＦ」と略称する）、スマートメディア（登録商標、以下「ＳＭ」と略称する）、メモリースティック（登録商標、以下「ＭＳ」と略称する）、ＳＤメモリーカード（登録商標、以下「ＳＤ」と略称する）など、種々のものが市場に出回っている。
【０００４】
上記メモリーカードは、ＰＣなどに接続されてメモリーカードの読み書きを行なうメモリーカードリーダライタ（ネットワーク型記憶装置の一例、以下「リーダライタ」と略称する）を用いることで、ＰＣから上記メモリーカードへのアクセスが可能となる。これにより、ＰＣとメモリーカードとの間でデータ通信が行なえるようになる（特許文献１〜２）。近年ではこうしたリーダライタを搭載した印刷装置（プリンタ）も普及しており、ＪＰＥＧ形式等で保存された画像データファイルを書き込んだメモリーカードをリーダライタに装着することで、ＰＣを経由せずに画像を直接印刷できるようになっている。
【０００５】
上記のプリンタは、複数のＰＣにより共有できるよう、それらＰＣとのネットワーク接続が可能なネットワークプリンタとして構成可能である。この場合、ネットワークプリンタとＰＣとはＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）ネットワーク（例えば、ローカルエリアネットワーク）を介して接続されることが多い。この場合、プリンタ側にＦＴＰ（File Transfer Protocol）サーバプログラムを搭載しておけば、デジタルカメラやカメラ付き携帯電話の撮影画像データファイルの保存先として使用されるメモリーカードをプリンタのリーダライタに装着することで、そのメモリーカードに保存されているデータファイルをＦＴＰによりＰＣへ転送することができる。つまり、プリンタのリーダライタをＰＣの外付け記憶装置として利用することが可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
例えば、プリンタにＦＴＰサーバが組み込まれる場合、ホスト装置からそのＦＴＰサーバへログインするためのパスワード認証に際しては次のような問題がある。すなわち、ＦＴＰでは、パスワードやデータなど通信内容が平文で流れる（つまり、暗号化されない垂れ流し状態となる）ため、悪意のある者がパケットキャプチャすると転送内容を盗み見されてしまうなど、セキュリティ上の深刻な問題がある。特許文献３には、ＦＴＰでのファイル転送を一般的な暗号化手法により容易に暗号化できるかのように記載されているが、これは誤りであり、実際には、ＦＴＰの思想を引き継いだ、暗号化環境を実現するための専用プロトコル（例えば、FTP over SSL/TLSやSSH File Transfer Protocol）に置き換えられているに過ぎない。また、サーバ/クライアントともこれらの専用プロトコルに対応したソフトが必要となる。
【０００７】
本発明の課題は、暗号化を前提としたプロトコル構築が本質的になされていない、旧来のＦＴＰ環境を前提として、ネットワーク型記憶装置側に組み込まれたＦＴＰサーバへホスト装置側からログインする際に、ＦＴＰのプロトコル仕様自体は何ら変更することなく、ホスト装置側で入力されるパスワードを容易に暗号化できるＦＴＰ通信システムを提供することにある。
【課題を解決する手段及び発明の効果】
【０００８】
上記の課題を解決するための、本発明のＦＴＰ通信システムは、
メディア装着用スロットと、ファイル単位による記憶データの読出し、書込み及び消去が可能とされた不揮発性メモリからなり、該メディア装着用スロットに着脱可能に装着される着脱式記憶メディアとを備えたネットワーク型記憶装置と、ＴＣＰ／ＩＰネットワークにより該ネットワーク型記憶装置と接続されるホスト装置とを備えるとともに、ネットワーク型記憶装置側にＦＴＰサーバプログラムが組み込まれ、ホスト装置側にＦＴＰクライアントプログラムが組み込まれ、ネットワーク型記憶装置に装着された着脱式記憶メディアに対するホスト装置からのデータファイルアクセスを、ＴＣＰ／ＩＰネットワークを介したＦＴＰ通信により実行するＦＴＰ通信システムにおいて、
ネットワーク型記憶装置側に設けられ、ログイン許可するべきＦＴＰクライアントのユーザー名とパスワードとを登録するユーザー登録手段と、
ＦＴＰサーバにログインするためのユーザー名を、ホスト装置からＦＴＰサーバに送信するユーザー名送信手段と、
ユーザー名の受信と引き換えにＦＴＰサーバからホスト装置にパスワード要求レスポンスを送信するパスワード要求レスポンス送信手段と、
該パスワード要求レスポンスを受けてホスト装置からＦＴＰサーバに、該ホスト装置にて入力されたパスワードを送信するパスワード送信手段と、
ＦＴＰサーバにて、受信したパスワードとユーザー名とに基づいてログインユーザーを認証し、認証受理の場合に該ログインユーザーのＦＴＰサーバへのログインを許可するログイン認証手段とを有し、さらに、
ＦＴＰサーバに、受信したユーザー名が、予め定められた特殊ユーザー名であるか否かを判定するとともに、該ユーザー名が特殊ユーザー名であった場合に、パスワードの暗号化に使用するパスワード用公開キーと、該暗号化されたパスワードの復号化に使用するパスワード用秘密キーとを作成するとともに、パスワード用公開キーをホスト装置に送信するサーバ側パスワード暗号化処理手段が設けられる一方、
ホスト装置に、入力済みのパスワードを受信したパスワード用公開キーにて暗号化するとともに、暗号化されたパスワードをパスワード送信手段によりＦＴＰサーバに送信させるクライアント側パスワード暗号化処理手段が設けられてなり、
ＦＴＰサーバに、受信した暗号化されたパスワードを、パスワード用秘密キーで復号化するサーバ側パスワード復号化処理手段が設けられてなることを特徴とする。
【０００９】
上記本発明のＦＴＰ通信システムにおいては、ＦＴＰサーバ（ネットワーク型記憶装置側）において、ログイン認証に際して、ホスト装置から受信したユーザー名が、予め定められた特殊ユーザー名であると判定された場合に、パスワードの暗号化に使用するパスワード用公開キーと、該暗号化されたパスワードの復号化に使用するパスワード用秘密キーとを作成するとともに、パスワード用公開キーをホスト装置に送信する。これを受けたホスト装置側では、入力済みのパスワードを、その受信したパスワード用公開キーにて暗号化するとともに、暗号化されたパスワードをパスワード送信手段によりＦＴＰサーバに送信する。そして、ＦＴＰサーバ側では、その受信した、暗号化されたパスワードを、既に作成して保存してあるパスワード用秘密キーで復号化する。これにより、通常のＦＴＰ環境でありながら、ホスト装置からネットワーク型記憶装置上のＦＴＰサーバへログインする際に必要なパスワードを問題なく暗号化できる。
【００１０】
上記構成において、サーバ側パスワード暗号化処理手段は、パスワード要求レスポンスにパスワード用公開キーを付加文字列として組み込み、パスワード要求レスポンス送信手段によりホスト装置へ送信するものとできる。また、クライアント側パスワード暗号化処理手段は、受信したパスワード要求レスポンスからパスワード用公開キーをなす付加文字列を抽出するものとすることができる。
【００１１】
ＦＴＰでは、パスワードによるログイン認証の手順が固定的に定められており、ホスト装置からユーザー名を受けたＦＴＰサーバは、パスワード要求レスポンスをホスト装置側に直ちに返すことになっている。そして、ＦＴＰにおいては、パスワード要求レスポンスに限らず、全てのレスポンスが、各々固有の３桁の番号を付与した形で定型化されるとともに、その番号だけでどのような種別のレスポンスかを一義的に特定できる。従って、該レスポンスの番号以外の部分は、ＦＴＰ上での通信処理に何ら影響しない単なるメッセージとして全て取り扱われるようになっている。
【００１２】
上記構成では、このＦＴＰの特質を活用し、パスワード要求レスポンス（番号：３３１）にパスワード用公開キーを付加文字列として組み込むことで、ＦＴＰ自体に何の変更を加えることなく（つまり、ＦＴＰに完全に整合した形で）、パスワード用公開キーを該３３１レスポンスに組み込んだ形でホスト装置へ問題なく送信できる。そして、ホスト装置側では、受信したパスワード要求レスポンスから付加文字列を抽出することで、パスワード用公開キーを問題なく受け取ることができる。
【００１３】
具体的には、ユーザー名に予め定められた特殊ユーザー名識別文字列が含まれている場合に、該ユーザー名が特殊ユーザー名であると判定することができる。ユーザー名の特殊ユーザー名識別文字列以外の部分（以下、ユーザー固有文字列という）を、各ユーザー固有の情報として自由に活用でき、複数ユーザーに対する特殊ユーザー名の発行を問題なく行なうことができる。
【００１４】
この場合、特殊ユーザー名識別文字列の部分は、ユーザー固有文字列の内容によらず共通化されるから、ユーザー側では、このユーザー固有文字列の部分だけを入力するようにしておくとログイン操作上も楽になるし、特殊ユーザー名識別文字列の部分が隠蔽されることで、従来のシステムと特に変らない感覚でユーザー名入力を行なうことができる。この場合、ホスト装置には、ユーザーによる見かけユーザー名（つまり、ユーザー固有文字列）の入力を受け付ける見かけユーザー名入力受付手段と、入力が受け付けられた見かけユーザー名の入力文字列に特殊ユーザー名識別文字列を付加することにより、該見かけユーザー名を特殊ユーザー名に変換する特殊ユーザー名変換手段とを設けておくことができ、ユーザー名送信手段は、変換により得られた該特殊ユーザー名をＦＴＰサーバに送信するものとすることができる。これにより、入力された見かけユーザー名に特殊ユーザー名識別文字列が、ホスト装置側で必ず付加されるので、特殊ユーザー名によるログイン時に特殊ユーザー名識別文字列の入力が失念されてしまう不具合が原理的に生じなくなる。この場合、特殊ユーザー名変換手段は、特殊ユーザー名識別文字列を見かけユーザー名の先頭側に付加するものとしておけば、ＦＴＰサーバ側での特殊ユーザー名の識別処理をより簡便に行なうことができる。
【００１５】
次に、ホスト装置における、ユーザー名送信手段、パスワード要求レスポンス送信手段、パスワード送信手段、ログイン認証手段及びクライアント側パスワード暗号化処理手段の各機能は、ＦＴＰサーバへのアクセス処理を司るプログラムに組み込まれるものであり、本来であれば、ホスト装置にインストールされるブラウザソフトウェアにこの機能を組み込んでおく必要がある。しかし、市販のブラウザソフトウェア（例えば、InternetExplorer（商標名：マイクロソフト社）をインストールして使用する環境下では、そのブラウザソフトウェアのプログラムリソースを書き換えて使用するのはあらゆる意味で現実的でない（法律上許可されていないことも多い）。そこで、本発明特有の機能実現手段である上記ユーザー名送信手段、パスワード要求レスポンス送信手段、パスワード送信手段、ログイン認証手段及びクライアント側パスワード暗号化処理手段は、（上記ブラウザソフトウェアとは別に）該ホスト装置にインストールされた専用ツールプログラムにより実現するようにしておくことが望ましい。この場合、特殊ユーザー名による該専用ツールプログラムからのＦＴＰサーバへのログインを、以下、第一ログインと称する。
【００１６】
上記のごとく、パスワード暗号化処理の主体をなす専用ツールプログラムがブラウザソフトウェアから分離された構成になると、パスワード認証処理に特化された専用ツールプログラムによるログイン（第一ログイン）と、ホスト装置からＦＴＰサーバへの本格的なファイルアクセスを前提としたブラウザソフトウェアによるログイン（第二ログイン）との、都合２回のログインが内部処理上は必要になる。しかし、ブラウザソフトウェアからＦＴＰサーバを利用するユーザーの従来の利用感覚は、自分のユーザー名とパスワードとを各々１回ずつ入力してＦＴＰサーバにログインにするイメージが強いので、ログイン回数の増大に伴いユーザー側に強いられる、従来操作手順からの乖離を如何にして少なくするかが、技術上のポイントとなる。
【００１７】
例えば、以下のように構成することができる。
すなわち、ネットワーク型記憶装置には、第一ログイン許可後に、ログインユーザーに発行するべきテンポラリユーザー名を作成するテンポラリユーザー名作成手段と、該テンポラリユーザー名を登録するテンポラリユーザー名登録手段とを設ける。
ホスト装置には、第一ログインに対するＦＴＰサーバからの許可レスポンスを受けるのに対応して、テンポラリユーザー名の暗号化に使用するテンポラリユーザー名用公開キーと、暗号化された該テンポラリユーザー名の復号化に使用するテンポラリユーザー名用秘密キーとを作成するとともに、テンポラリユーザー名用公開キーをＦＴＰサーバに送信するクライアント側テンポラリユーザー名暗号化処理手段を設ける。
ＦＴＰサーバには、受信したテンポラリユーザー名用公開キーにより、作成されたテンポラリユーザー名を暗号化し、該暗号化されたテンポラリユーザー名をホスト装置に送信するサーバ側テンポラリユーザー名暗号化処理手段を設ける。
さらに、ホスト装置には、受信した暗号化されたテンポラリユーザー名を、テンポラリユーザー名用秘密キーで復号化するクライアント側テンポラリユーザー名復号化処理手段と、該復号化されたテンポラリユーザー名をＦＴＰサーバに送信する復号化テンポラリユーザー名送信手段を設ける。
【００１８】
そして、クライアント側テンポラリユーザー名暗号化処理手段を上記の専用ツールプログラムに組み込み、かつ、ホスト装置には、ＦＴＰクライアントプログラムが実装され、かつ復号化テンポラリユーザー名送信手段の機能を有したブラウザソフトウェアをインストールしておく（ブラウザソフトウェアには、取得したユーザー名をＦＴＰサーバに送信する機能が普通搭載されている）。そして、ＦＴＰサーバに、復号化されたテンポラリユーザー名をブラウザソフトウェアから受信し、自身が作成したテンポラリユーザー名との照合が一致した場合にのみ、該テンポラリユーザー名によるブラウザソフトウェアからのＦＴＰサーバへの第二ログインを許可する第二ログイン許可手段を設ける。
【００１９】
この構成によると、専用ツールによる第一ログインからブラウザソフトウェアによる第二ログインへ移行するために、ＦＴＰサーバ側がその場で発行するテンポラリユーザー名が使えるので、少なくともユーザーは、第二ログインのためのユーザー名を事前にＦＴＰサーバに登録し、また記憶しておく必要はなくなる。
【００２０】
この場合、さらに望ましくは、以下のように構成できる。
すなわち、テンポラリユーザー名登録手段は、テンポラリユーザー名をパスワードなしで登録するものとし、専用ツールプログラムは、復号化されたテンポラリユーザー名をブラウザソフトウェアに内部転送するものとする。また、ブラウザソフトウェアは該内部転送により取得したテンポラリユーザー名を、ユーザー入力を介さずにＦＴＰサーバに送信するものとする。そして、第二ログイン許可手段は、ブラウザソフトウェアからテンポラリユーザー名を受信し、自身が作成したテンポラリユーザー名との照合が一致した場合にのみ、該テンポラリユーザー名によるブラウザソフトウェアからのＦＴＰサーバへの第二ログインをパスワードなしにて許可するものとする。
【００２１】
上記の構成によると、テンポラリユーザー名がパスワードなしで登録され、さらに、ブラウザソフトウェアはテンポラリユーザー名を専用ツールプログラムからの内部転送により取得すする。そして、ブラウザソフトウェアは、そのテンポラリユーザー名を使ってパスワードなしでＦＴＰサーバへログインできる。これにより、第二ログインに際して、テンポラリユーザー名とパスワードとをユーザーが全く入力していないにも拘わらず、ブラウザソフトウェアは自発的にＦＴＰサーバにログインし立ち上がることになる。その結果、本発明特有のＦＴＰ上でのパスワード暗号化機能が追加され、内部処理上はログイン回数が増加しているにも拘わらず、ユーザーは、第一ログインの際のユーザー名とパスワードとの入力作業を行なうだけで、従来の利用感覚と全く同様にブラウザソフトからＦＴＰサーバにログインすることができるようになる。
【００２２】
上記の構成では、ＦＴＰサーバに、第一ログイン時に取得したホスト装置のＩＰアドレスと、第二ログイン時に取得したホスト装置のＩＰアドレスとを照合するＩＰアドレス照合手段を設けることができる。第二ログイン許可手段は、当該ＩＰアドレスが照合一致した場合にのみ第二ログインを許可するものとすることができる。専用ツールの利用に起因して、過渡的に発生する第二ログインを上記のごとく、第一ログイン時に取得したホスト装置のＩＰアドレスにより制限することで、ネットワーク接続された別コンピューター等からの不正アクセスを効果的に防止することができる。
【００２３】
テンポラリユーザー名作成手段は、テンポラリユーザー名を、予め定められたテンポラリユーザー名識別文字列が含まれるものとして作成するものとすることができる。また、第二ログイン許可手段は、ブラウザソフトウェアから受信したユーザー名にテンポラリユーザー名識別文字列が含まれているものをテンポラリユーザー名であると識別するものとすることができる。テンポラリユーザー名による第二ログインは、ホスト装置のＩＰアドレス照合を行なうこと、パスワードなしでログイン許可されることなど、ＦＴＰサーバ側で特殊処理が発生するので、上記構成の採用により、テンポラリユーザー名識別文字列により当該ログインがテンポラリユーザー名によるものであることを容易に識別できる。この場合も、テンポラリユーザー名識別文字列は、テンポラリユーザー名の先頭に配置することが望ましい。
【００２４】
上記処理にて使用するテンポラリユーザー名用公開キーの送信も、ＦＴＰに整合するものでなければならない。そのための具体的手法として以下のようなものを例示できる。すなわち、クライアント側テンポラリユーザー名暗号化処理手段は、テンポラリユーザー名用公開キーを、予め定められた第一ＦＴＰコマンドへの組み込み文字列の形で該ＦＴＰコマンドとともにＦＴＰサーバへ送信するものとする。ＦＴＰサーバは、特殊ユーザー名による第一ログインが発生していない状態にあっては、受信した第一ＦＴＰコマンドに対応する本来のコマンド実行処理を行なう一方、特殊ユーザー名による第一ログインが発生している状態にあっては、受信した第一ＦＴＰコマンドに対応する本来のコマンド実行処理を実行せず、代わりに、該第一ＦＴＰコマンドから組み込み文字列として送信されてくるテンポラリユーザー名用公開キーを抽出し、サーバ側テンポラリユーザー名暗号化処理手段にこれを受け渡す処理を行なうものとする。
【００２５】
ＦＴＰサーバは、前述のごとく特殊ユーザー名による第一ログインであることを確認すれば、ＴＣＰ／ＩＰネットワーク上での表向きの通信処理自体は完全にＦＴＰに整合しつつ、ＦＴＰサーバの内部では、上記「特殊ユーザー名によるログイン」をキーとして、独自処理を展開することができる。上記の態様では、ホスト装置側からＦＴＰサーバへの第一ＦＴＰコマンドの送信自体はＦＴＰによる手順と何ら矛盾しないが、これを受け取ってからのＦＴＰサーバ内での処理が独自処理となる。すなわち、第一ＦＴＰコマンドを受けたときの処理として、特殊ユーザー名による第一ログインが発生していない状態にあっては、受信した第一ＦＴＰコマンドに対応する本来のコマンド実行処理を行なう一方、当該第一ログインが発生している状態にあっては、受信した第一ＦＴＰコマンドに対応する本来のコマンド実行処理を行なう一方、上記本来のコマンド実行処理を実行せず、代わりに、該第一ＦＴＰコマンドから組み込み文字列として送信されてくるテンポラリユーザー名用公開キーを抽出し、サーバ側テンポラリユーザー名暗号化処理手段にこれを受け渡す処理を行なうようにする。すなわち、第一ＦＴＰコマンドを、それとは別の意味である「テンポラリユーザー名用公開キー抽出」の実行コマンドとして解釈するのである。
【００２６】
通信プロトコルとは、あくまで通信処理の手順、すなわち処理進行に伴うネットワークの通信状態の時間的遷移を規定するものであって、手順としての整合が保たれていれば、受け取ったコマンドへの対応処理として、サーバ側ないしクライアント側で本来意図されたコマンドの意味とは異なる内部処理を行なってもプロトコル上は何ら不都合が生じない。これは、通信プロトコル技術における一つの盲点ともいえるものであって、上記方式もこれを活用したものに他ならない。
【００２７】
同様の思想は、復号化されたテンポラリユーザー名をＦＴＰサーバからホスト装置に送信する処理についても適用できる。すなわち、復号化テンポラリユーザー名送信手段を、復号化されたテンポラリユーザー名をＦＴＰサーバに送信要求するために、第一ＦＴＰコマンドとは異なる予め定められた第二ＦＴＰコマンドをＦＴＰサーバへ発行・送信するものとする。ＦＴＰサーバは、受信した第二ＦＴＰコマンドに対応するレスポンスを、暗号化されたテンポラリユーザー名を付加した形でブラウザソフトウェアに送信するものとする。ＦＴＰサーバからホスト装置への情報転送にあっては、前述のごとく、クライアント側から発行されるコマンドへのＦＴＰサーバからのレスポンスは、３桁の番号のみにより内容を一義的に特定でき、それ以外の部分は単なるコメントとして解釈される。従って、暗号化されたテンポラリユーザー名を当該コメントに記述してレスポンスを行なえば、プロトコル上の不整合を一切生ずることなく、暗号化されたテンポラリユーザー名をホスト装置に転送することができる。
【００２８】
上記方式に使用するＦＴＰコマンドは、いずれも、ＦＴＰサーバないしクライアントに、プロトコル整合を保つための余分な内部処理をなるべく生じさせないような種別のものを選定することが望ましい。一例として、第一ＦＴＰコマンドをＣＷＤコマンドとし、該ＣＷＤコマンドに続く形でテンポラリユーザー名用公開キーを組み込むことができる。
【００２９】
ＣＷＤは「チェンジワーキングディレクトリ」であり、「ワーキングディレクトリ」とは、現在ユーザーがログインして作業中のディレクトリ位置を指すものである。そして、ＣＷＤコマンドは、本来、そのワーキングディレクトリの変更を指示するものであって、「ＣＷＤ  （変更後のディレクトリ名）」という形式で記述される。すなわち、「ＣＷＤ」の後に続く文字列は、本来は、「変更後のディレクトリ名」を示すものであるが、特殊ユーザー名による第一ログインが発生している状態では、ワーキングディレクトリの変更は実際には行なわず、その「変更後のディレクトリ名」の部分にある文字列をテンポラリユーザー名用公開キーとして抽出する処理を行なう。
【００３０】
ＣＷＤコマンドに対するＦＴＰサーバのレスポンスは「ワーキングディレクトリ変更完了」を報告するのみであるから、上記のごとく、ＦＴＰサーバにおいて、裏ではワーキングディレクトリの変更が実際に行なわれず、代わりにテンポラリユーザー名用公開キー抽出処理がなされたとしても、表向きは「ワーキングディレクトリ変更完了」のレスポンスを返すことで、プロトコル上は何らの不整合を生ずることはなく、ＦＴＰを合理的に欺くことができる。また、ＣＷＤコマンドは、それが実際の意味どおりに実行された場合においても、ＦＴＰサーバ側では、変更先のディレクトリへのポインタ移動など、通信ポートの状態やネットワーク上へのデータ送出などには何ら関与しない処理が発生するだけであり、ディレクトリ変更が行なわれなければＦＴＰサーバ側での余分な内部処理がほとんど発生しない。
【００３１】
また、第二ＦＴＰコマンドはＰＷＤコマンドとすることができ、該ＰＷＤコマンドのレスポンスに暗号化されたテンポラリユーザー名を付加することができる。ＰＷＤ（「プリントワーキングディレクトリ」）コマンドは、本来、現在使用中のワーキングディレクトリをＦＴＰサーバに報告させる指示を行なうものであり、そのレスポンスとして当該ワーキングディレクトリを示す文字列が返されることになっている。従って、ＦＴＰサーバが、そのレスポンスとして、抽出したテンポラリユーザー名用公開キーを示す文字列を、表向きは「ワーキングディレクトリ」として返すことで、プロトコル上は何らの不整合を生ずることはなく、ＦＴＰを合理的に欺くことができる。
【発明を実施するための最良の形態】
【００３２】
以下、適宜図面を参照して本発明の実施形態に係るＦＴＰ通信システムについて説明する。なお、以下に説明するＦＴＰ通信システムの構成は、本発明を具現化するための単なる一例であり、本発明の要旨を変更しない範囲で構成を適宜変更できることは当然である。図１は、上記ＦＴＰ通信システム１の概略構成を示すブロック図である。ＦＴＰ通信システム１は、プリンタ８０と、該プリンタ８０をネットワークプリンタとして使用するホスト装置（パーソナルコンピュータ：以下、「ＰＣ」ともいう）３と、ローカルエリアネットワークからなり、プリンタ８０とホスト装置３とを接続するＴＣＰ／ＩＰネットワーク４１０とを備える。
【００３３】
図２は、プリンタ８０の外観構成を示すものである。該プリンタ８０は、いわゆる多機能装置（ＭＦＤ：Multi Function Device）であり、ネットワーク型記憶装置をなすマルチリーダライタ２をプリンタに組み込んだプリンタ複合機として構成されている。具体的には、筐体下部に配設された印刷部８２と、その上部に配設されたスキャナ部８３と、原稿フィーダ８４を備えた原稿カバー８６と、装置上面の前方側に配置された操作パネル８５と、装置前面にメディア装着用スロット（以下、単に「スロット」ともいう）１６〜１９が露出するように配設されたマルチリーダライタ２とを一体的に備えてなり、プリンタ機能、スキャナ機能、コピー機能及びファクシミリ機能などを有する。
【００３４】
プリンタ８０は、ＰＣ３（図１）から送信された画像データや文書データを含む印刷データに基づき、印刷部８２において、画像や文書を所定の用紙に印刷する。また、印刷部８２は、マルチリーダライタ２によってメモリーカード（着脱式記憶メディア）から読み取られた上記印刷データに基づいても、画像や文書を所定の用紙に印刷する（直接印刷）。さらに、ＰＣ３と接続されて、ＰＣ３とマルチリーダライタ２に挿入されたメモリーカードとの間でデータ通信を行なうリーダライタ装置としても機能する。また、スキャナ部８３により読み取られた画像データをＰＣ３へ送信したり、スキャナ部８３で読み取った画像を印刷部８２を用いてコピーすることも可能である。
【００３５】
プリンタ８０のマルチリーダライタ２は、図２に示すように、メディア装着用スロット１６〜１９として、第１メモリーカード１１を挿入するための第１スロット１６と、第２メモリーカード１２を挿入するための第２スロット１７と、第３メモリーカード１３を挿入するための第３スロット１８と、第４メモリーカード１４を挿入するための第４スロット１９とを備えている。また、筐体前面には、表示部としての液晶パネル（ＬＣＤ）２１と、テンキーを含むキーボード９１と、ＬＣＤ２１上でのカーソル移動に使用するカーソル移動キー９２とが設けられている。また、液晶パネル（ＬＣＤ）２１に隣接する位置にも種々のメニューキー９３，９５が配設されている。該マルチリーダライタ２はＵＳＢ／ＳＣＳＩ型周辺機器として構成されている。
【００３６】
図３は、上記プリンタ８０の電気的構成を示すブロック図である。マルチリーダライタ２は、その内部に、各構成部を制御するＣＰＵ３４と、制御プログラムや種々のデータ等を格納するＲＯＭ３５（本実施形態では、不揮発性メモリ（フラッシュメモリメモリ等）にて構成している）と、ＣＰＵ３４による演算の作業領域となるＲＡＭ３７と、がバス３３を介して相互にデータ転送が可能なように接続されている。また、バス３３には、フラッシュメモリ制御用ＬＳＩ２３１を介して各スロット１６〜１９が接続されている。これらロット１６〜１９に着脱可能に装着される各第１〜第４メモリーカード１１〜１４は、例えば、コンパクトフラッシュ（ＣＦ：第１メモリーカード１１）、スマートメディア（ＳＭ：第２メモリーカード１２）、メモリースティック（ＭＳ：メモリーカード１３）、ＳＤメモリーカード（ＳＤ：第４メモリーカード１４）など、ＰＣ３によるデータの書込み、書き換え、消去、読出し、メディア装着確認等のデータアクセスが可能なフラッシュメモリを搭載したカード型記憶メディアである。なお、ＳＤメモリーカード用のスロット１９には、変換用アダプタ（非図示）を用いてｍｉｎｉＳＤカードを装着することもできる。
【００３７】
バス３３には、印刷部ドライバＬＳＩ１１３を介して印刷部８２が接続されている。スキャナ部１３２は、スキャナドライバＬＳＩ１１２を介して接続されている。また、モデムドライバＬＳＩ１１４が接続され、これに外部電話通信網などを接続するための電話線端子１３３が接続されている。他方、入力・表示用ＬＳＩ１１１を介して、前述のＬＣＤ２１、キーボード９１及びカーソル移動キー９２などが繋がれている。さらに、バス３３には、イーサネット（登録商標）ＬＳＩ２３２、ローカルエリアネットワーク端子２４及び第一のネットワークを介してホスト装置であるＰＣ３が接続されている。複数のＰＣ３及びプリンタ８０はＴＣＰ／ＩＰネットワーク４１０内にてハブ７により相互接続されている（図１参照）。
【００３８】
ＲＯＭ３５には、印刷部８２の動作制御を司るプログラム、スキャナ部１３２の動作制御を司るプログラム、モデム１１４を介したファックス通信制御を司るプログラム、及び、キーボード９１あるいはカーソル移動キー９２（及び、図３では図示を略しているが、メニューキー９３，９５及び実行キー９４なども含む）からの入力制御や、ＬＣＤ２１への表示出力を司るプログラム、さらに、マルチリーダライタ２の動作制御プログラムが格納され、ＣＰＵ３４は、これらプログラムを、ＲＡＭ３７を実行エリアとして実行することで、プリンタ複合機としての総合的な動作制御を行なう（これらのプログラムは周知部分なので図示を省略している）。
【００３９】
また、ＲＯＭ３５にはＦＴＰサーバプログラムが格納されている。また、ＴＣＰ／ＩＰネットワーク４１０上にてプリンタ８０を特定するためのＩＰアドレス及びサブネットマスクもＲＯＭ３５に記憶されている。他方、ＰＣ３にはＦＴＰクライアントプログラムが組み込まれたブラウザソフトウェア３Ｂがインストールされている。
【００４０】
メディア装着用スロット１６〜１９には、印刷用ファイルを記憶したメモリーカード（着脱式記憶メディア）１１〜１４が装着され、当該装着されたメモリーカード１１〜１４から印刷用ファイルを読み出して、当該印刷用ファイルに基づく画像印刷を自身に設けられた印刷部にて直接実行するための直接印刷用スロットとして利用される。例えば、デジタルカメラやカメラ付き携帯電話の場合には、それらで撮影した写真画像がＪＰＥＧ画像ファイルの形で、そのデジタルカメラのカードリーダに装着された固有の種別のメモリーカードに記憶・蓄積される。そこで、そのメモリーカードを抜き取ってプリンタ８０のスロット１６〜１９のうち対応するものに装着し、キーボード９１、カーソル移動キー９２あるいはメニューキー９３，９５の操作により、液晶パネル（ＬＣＤ）２１上にて「直接印刷」のメニューを選択して実行すれば、所望の写真画像ファイルを選んで直接印刷を行なうことができる。
【００４１】
また、プリンタ８０側のＦＴＰサーバプログラムと、ＰＣ３側のＦＴＰクライアントプログラムとにより、ＰＣ３側からＴＣＰ／ＩＰネットワーク４１０を介してマルチリーダライタ２にデータアクセスすることが可能である。具体的には、ＰＣ３側からデータファイルのファイル名を指定する形でプリンタ８０側にファイル転送要求を送信すると、プリンタ８０は、該ファイル名で指定されたデータファイルを装着されたメモリーカードから読み出してＰＣ３に転送することができる。つまり、マルチリーダライタ２は、ＰＣ３のいわば外付け記憶装置として利用することが可能である。
【００４２】
本実施形態では、図３に示すように、プリンタ８０のＲＯＭ３５はフラッシュメモリにて構成され、ログイン許可するべきＦＴＰクライアントのユーザー名とパスワードとを登録する登録部（ユーザー登録手段）が該ＲＯＭ３５内に形成されている。
【００４３】
ＰＣ３（ホスト装置）のユーザがプリンタ８０側のＦＴＰサーバへログインするためには、ユーザー名とパスワードとによる認証が必要である。ＦＴＰでは、ＰＣ３からプリンタ８０へ、ユーザー名及びパスワードがいずれも平文（プレーンテキスト）で流れるため、セキュリティ上問題がある。そこで、本実施形態では、この問題を解消するために、プリンタ８０側にパスワード処理ツール、ＰＣ３側に専用ツール３Ｔ（これ自身、簡易なＦＴＰクライアントとしての機能を持っている）がそれぞれ組み込まれている。
【００４４】
上記のＦＴＰサーバプログラム及びＦＴＰクライアントプログラムとの連携により、以下の各手段がシステム上で実現されている（図４の概略シーケンス図を参照しつつ説明する）。
・ユーザー名送信手段：ＦＴＰサーバにログインするためのユーザー名を、ホスト装置からＦＴＰサーバに送信する（図４：Ｊ３）。
・パスワード要求レスポンス送信手段：ユーザー名の受信と引き換えにＦＴＰサーバからホスト装置にパスワード要求レスポンスを送信する（図４：Ｊ４）。
・パスワード送信手段：該パスワード要求レスポンスを受けてホスト装置からＦＴＰサーバに、該ホスト装置にて入力されたパスワードを送信する（図４：Ｊ５）。
・ログイン認証手段：ＦＴＰサーバにて、受信したパスワードとユーザー名とに基づいてログインユーザーを認証し、認証受理の場合に該ログインユーザーのＦＴＰサーバへのログインを許可する（図４：Ｊ６）。
【００４５】
また、専用ツール３Ｔが主体となって、プリンタ８０側のパスワード処理プログラムが連携し、以下の各機能が実現されている。
・見かけユーザー名入力受付手段：ＰＣ３（ホスト装置）側の機能であり、ユーザーによる見かけユーザー名の入力を受け付ける（図４：Ｋ１）。
・特殊ユーザー名変換手段：同じく、入力が受け付けられた見かけユーザー名の入力文字列に特殊ユーザー名識別文字列（図４：文字列１「ＳＥＱ−」）を付加することにより、該見かけユーザー名を特殊ユーザー名に変換する。前述のパスワード送信手段は、変換により得られた該特殊ユーザー名をＦＴＰサーバに送信する。特殊ユーザー名識別文字列は見かけユーザー名の先頭側に付加される。
・サーバ側パスワード暗号化処理手段：プリンタ８０（ＦＴＰサーバ）側の機能であり、受信したユーザー名が、予め定められた特殊ユーザー名であるか否かを判定する（図４：Ｊ３）。具体的には、ユーザー名に予め定められた特殊ユーザー名識別文字列が含まれている場合に、該ユーザー名が特殊ユーザー名であると判定する。また。該ユーザー名が特殊ユーザー名であった場合に、パスワードの暗号化に使用するパスワード用公開キーと、該暗号化されたパスワードの復号化に使用するパスワード用秘密キーとを作成するとともに（図４：Ｕ１）、パスワード用公開キー（公開キー１）をホスト装置に送信する（図４：Ｊ４）。具体的には、図７に示すように、パスワード要求レスポンス（３３１）にパスワード用公開キーを付加文字列２０１として組み込み、パスワード要求レスポンス送信手段によりホスト装置へ送信される。レスポンス番号３３１の後に続く文字列は全てコメントとして解釈されるが、本実施形態ではコメント末尾に置かれた括弧内の文字列をパスワード用公開キーとして解釈する。
【００４６】
・クライアント側パスワード暗号化処理手段：ＰＣ３（ホスト装置）側の機能であり、入力済みのパスワードを受信したパスワード用公開キーにて暗号化するとともに（図４：Ｋ２）、暗号化されたパスワードをパスワード送信手段によりＦＴＰサーバに送信する（図４：Ｊ５）。具体的には、受信した上記パスワード要求レスポンスからパスワード用公開キーをなす付加文字列を抽出する。
・サーバ側パスワード復号化処理手段：プリンタ８０（ＦＴＰサーバ）側の機能であり、受信した暗号化されたパスワードを、パスワード用秘密キー（秘密キー１）で復号化する（図４：Ｕ２）。
【００４７】
ＰＣ３（ホスト装置）においては、ユーザー名送信手段、パスワード要求レスポンス送信手段、パスワード送信手段、ログイン認証手段及びクライアント側パスワード暗号化処理手段の各機能が、専用ツールプログラム３Ｔにより実現される。そして、特殊ユーザー名による該専用ツールプログラムからのＦＴＰサーバへのログインを第一ログインとする。
【００４８】
図３において、プリンタ８０（ネットワーク型記憶装置）のパスワード処理ツールは、第一ログイン許可後に、ログインユーザーに発行するべきテンポラリユーザー名を作成するテンポラリユーザー名作成手段の機能を有する。また、ＲＯＭ３５のユーザー登録部は、該テンポラリユーザー名を登録するテンポラリユーザー名登録手段として使用される。テンポラリユーザー名は、予め定められたテンポラリユーザー名識別文字列（本実施形態では、ＴＭＰ−）を先頭側に有するものとして作成され、パスワードなしで登録される。
【００４９】
そして、専用ツール３Ｔが主体となって、プリンタ８０側のパスワード処理プログラムが連携し、以下の各機能がさらに実現されている。
・クライアント側テンポラリユーザー名暗号化処理手段：ＰＣ３（ホスト装置）側の機能であり、第一ログインに対するＦＴＰサーバからの許可レスポンスを受けるのに対応して、テンポラリユーザー名の暗号化に使用するテンポラリユーザー名用公開キー（公開キー２）と、暗号化された該テンポラリユーザー名の復号化に使用するテンポラリユーザー名用秘密キー（秘密キー２）とを作成するとともに（図４：Ｋ３）、テンポラリユーザー名用公開キーをＦＴＰサーバに送信する（図４：Ｊ７）。図８に示すように、テンポラリユーザー名用公開キー２０３は、ＣＷＤコマンド（第一ＦＴＰコマンド）への組み込み文字列の形で送信される。
【００５０】
プリンタ８０（ＦＴＰサーバ）側では、特殊ユーザー名による第一ログインが発生していない状態にあっては、受信したＣＷＤコマンド（第一ＦＴＰコマンド）に対応する本来のコマンド実行処理が行なわれる。他方、特殊ユーザー名による第一ログインが発生している状態にあっては、受信したＣＷＤコマンド（第一ＦＴＰコマンド）に対応する本来のコマンド実行処理を実行せず、代わりに、該ＣＷＤコマンド（第一ＦＴＰコマンド）から、その組み込み文字列として送信されてくるテンポラリユーザー名用公開キー２０３を抽出する。
【００５１】
・サーバ側テンポラリユーザー名暗号化処理手段：プリンタ８０（ＦＴＰサーバ）側の機能であり、上記抽出されたテンポラリユーザー名用公開キー２０３により、作成されたテンポラリユーザー名を暗号化し（図４：Ｕ３）、該暗号化されたテンポラリユーザー名をホスト装置に送信する（図４：Ｊ８）。
・復号化テンポラリユーザー名送信手段：ＰＣ３（ホスト装置）側の機能であり、受信した暗号化されたテンポラリユーザー名を、テンポラリユーザー名用秘密キーで復号化し（図４：Ｋ５）、該復号化されたテンポラリユーザー名をＦＴＰサーバに送信する（図４：Ｊ９）。具体的には、ＰＷＤコマンド（第二ＦＴＰコマンド）をＦＴＰサーバへ発行・送信し、暗号化されたテンポラリユーザー名をＦＴＰサーバに送信要求する。上記のサーバ側テンポラリユーザー名暗号化処理手段は、受信したＰＷＤコマンド（第二ＦＴＰコマンド）に対応するレスポンス（番号：３３２）を、暗号化されたテンポラリユーザー名を付加した形でＰＣ３に送信する。専用ツールプログラム３Ｔは、復号化されたテンポラリユーザー名をブラウザソフトウェア３Ｂに内部転送する。ブラウザソフトウェア３Ｂは、該内部転送により取得したテンポラリユーザー名を、ユーザー入力を介さずにＦＴＰサーバに送信する。
【００５２】
・ＩＰアドレス照合手段：プリンタ８０（ＦＴＰサーバ）側の機能であり、第一のログイン時に取得したホスト装置のＩＰアドレス（図４：Ｕ３）と、第二ログイン時に取得したホスト装置のＩＰアドレスとを照合する（図４：Ｕ４）。
・第二ログイン許可手段：プリンタ８０（ＦＴＰサーバ）側の機能であり、復号化されたテンポラリユーザー名をブラウザソフトウェアから受信し、自身が作成したテンポラリユーザー名との照合が一致した場合にのみ、該テンポラリユーザー名によるブラウザソフトウェアからのＦＴＰサーバへの第二ログインを許可する。ブラウザソフトウェアから受信したユーザー名は、テンポラリユーザー名識別文字列が含まれている場合に、これをテンポラリユーザー名であると識別する。なお、上記のＩＰアドレスが照合一致した場合にのみ第二ログインが許可される。
【００５３】
第二ログイン許可手段は、ブラウザソフトウェアからテンポラリユーザー名を受信し、自身が作成したテンポラリユーザー名との照合が一致した場合にのみ、該テンポラリユーザー名によるブラウザソフトウェアからのＦＴＰサーバへの第二ログインをパスワードなしにて許可する。これにより、ブラウザソフトウェア３Ｂが自動的に立ち上がり、プリンタ８０（ネットワーク型記憶装置：ＦＴＰサーバ）へのアクセスが可能となる。
【００５４】
以下、通信システム１における処理の流れを、図５のフローチャートを用いて説明する。まず、ＰＣ３側でユーザーは、事前に取得している見かけユーザー名（ユーザーＩＤ：図４「ＡＢＣＤ」）を、図６のダイアログボックスに入力する。入力された見かけユーザー名には、先頭に特殊ユーザー名識別文字列（図４：文字列１「ＳＥＱ−」）が付加されて特殊ユーザー名に変換され、ＵＳＥＲコマンドにてプリンタ８０側に送信される。
【００５５】
プリンタ８０側ではＵＳＥＲコマンドを受信し（Ｓ１）、そのユーザー名の種別を判定する（Ｓ２）。ここでは、それが特殊ユーザー名だからＳ３に進み、ログインユーザーのＩＰアドレスを、図３のＲＡＭ３７のエリアＡに記憶する。そして、パスワードの暗号化に使用するパスワード用公開キー（公開キー１）と、該暗号化されたパスワードの復号化に使用するパスワード用秘密キー（秘密キー１）とを作成するとともに、パスワード用秘密キーは図３のＲＡＭ３７のエリアＢに記憶する（Ｓ３）。そして、パスワード要求レスポンス（３３１）にパスワード用公開キーを付加文字列２０１として組み込み、ＰＣ３へ送信する（Ｓ４）。
【００５６】
ＰＣ３では、そのパスワード要求レスポンスを受け（Ｔ２）、上記パスワード要求レスポンスからパスワード用公開キーをなす付加文字列を抽出し、図３のＰＣ３のＲＡＭ内にあるエリアＥに記憶する（Ｔ３）。ＰＣ３側では、図６のダイアログボックスにてパスワードが入力されており、その入力済みのパスワードを、受信したパスワード用公開キーにて暗号化する（Ｔ４）。パスワードはアスキー文字列（１６進数コードで規定された文字列）として入力されるが、暗号化は、周知の公開暗号化キー方式によるバイナリでの暗号化演算が施され、その演算後のバイナリコードがアスキー化されてプリンタ８０に送信される（Ｔ５：つまり、見かけ上のデータ構造はプレーンテキストと同じである）。
【００５７】
プリンタ８０側では、暗号化されたパスワード（アスキー化されたバイナリコードである）２を、パスワード用秘密キー（秘密キー１）で復号化する。そして、前述の特殊ユーザー名と、復号されたパスワードとが、登録されているものと一致するかどうか（つまり、正しいかどうか）をチェックする認証処理を行なう（Ｓ６、Ｓ７）。認証棄却であればＳ１６に進み、第一ログイン失敗のレスポンス（３３０）を返す。
【００５８】
他方、認証受理であればＳ８に進み、第一ログイン成功のレスポンス（２３０）を返す。ＰＣ３では、この第一ログインに対するＦＴＰサーバからの許可レスポンスを受けるのに対応して（Ｔ６、Ｔ７）、テンポラリユーザー名の暗号化に使用するテンポラリユーザー名用公開キー（公開キー２）と、暗号化された該テンポラリユーザー名の復号化に使用するテンポラリユーザー名用秘密キー（秘密キー２）とを作成するとともに、テンポラリユーザー名用秘密キーを図３のエリアＦに記憶する（Ｔ８）。そして、テンポラリユーザー名用公開キーを、ＣＷＤコマンドへの組み込み文字列の形で送信するとともに、ＰＷＤコマンドを発行する（Ｔ９）。
【００５９】
プリンタ８０（ＦＴＰサーバ）側ではこれを受け（Ｓ９）、特殊ユーザー名による第一ログインが発生している状態なので、受信したＣＷＤコマンドに対応する本来のコマンド実行処理を実行せず、代わりに、該ＣＷＤコマンド（第一ＦＴＰコマンド）から、その組み込み文字列として送信されてくるテンポラリユーザー名用公開キーを抽出し、図３のエリアＣに記憶する。また、テンポラリユーザー名（ただし、ここでは図４：Ｊ９の「ＭＮＯＰ」部分）を作成し、図３のエリアＤに記憶する（Ｓ１０）。
【００６０】
そして、上記抽出されたテンポラリユーザー名用公開キーにより、作成されたテンポラリユーザー名を暗号化し（Ｓ１１）、該暗号化されたテンポラリユーザー名を、受信したＰＷＤコマンド（第二ＦＴＰコマンド）に対応するレスポンス（番号：３３２）に付加してＰＣ３に返す（Ｓ１２）。ＰＣ３側では、このレスポンスを受け（Ｔ１０）、暗号化されたテンポラリユーザー名を抽出するとともに、これをテンポラリユーザー名用秘密キーで復号化する（Ｔ１１）。該復号化されたテンポラリユーザー名は、ブラウザソフトウェア３Ｂに内部転送され、ＵＳＥＲコマンドにて該ブラウザソフトウェア３Ｂからプリンタ８０（ＦＴＰサーバ）に送信される（Ｔ１２）。
【００６１】
プリンタ８０側ではＵＳＥＲコマンドを受信し（Ｓ１）、そのユーザー名の種別を判定する（Ｓ２）。ここでは、それがテンポラリユーザー名だからＳ１３に進み、エリアＤに記憶されている作成時のテンポラリユーザー名と比較する（Ｓ１３、Ｓ１４）。一致していれば、第一ログイン時に取得したホスト装置のＩＰアドレスと、第二ログイン時に取得したホスト装置のＩＰアドレスとを照合する（Ｓ１６）。これも一致していれば、ブラウザソフトウェア３Ｂからの第二ログインが許可され、ＰＣ３から該ブラウザソフトウェア３Ｂを介してプリンタ８０のカードリーダ２へのアクセスが可能となる。
【図面の簡単な説明】
【００６２】
【図１】本発明の通信システムの全体構成の概略を示すブロック図。
【図２】本発明の通信システムに適用されるプリンタの一例を示す斜視図。
【図３】プリンタの電気的構成の一例を示すブロック図。
【図４】ＦＴＰサーバへのログイン処理の流れを示すシーケンス図。
【図５】図４に対応するフローチャート。
【図６】ユーザー名とパスワードと入力用ダイアログボックスの模式図。
【図７】３３１レスポンスにパスワード用公開キーを付加する概念を示す図。
【図８】ＣＷＤコマンドに一時ユーザー名用公開キーを付加する概念を示す図。
【符号の説明】
【００６３】
１  通信システム
２  マルチリーダライタ（ネットワーク型記憶装置）
３  ＰＣ（ホスト装置）
１６〜１９  メディア装着用スロット
１１〜１４  メモリーカード（着脱式記憶メディア）
４１０  ＴＣＰ／ＩＰネットワーク
【図１】
2008092141.tif 000003
【図２】
2008092141.tif 000004
【図３】
2008092141.tif 000005
【図４】
2008092141.tif 000006
【図５】
2008092141.tif 000007
【図６】
2008092141.tif 000008
【図７】
2008092141.tif 000009
【図８】
2008092141.tif 000010