(57)【要約】【課題】ＳＳＬに対応していないブラウザを用いた場合であっても、クライアント、サーバ間の認証を容易に行うことができる方法を提供する。【解決手段】サーバ３が、サーバ用とクライアント端末用の認証ファイル１０，２０の２つを発行し、サーバ用の認証ファイル２０を保存するステップと、クライアント端末５に対して前記サーバ３が発行したクライアント端末用の認証ファイル１０を送信するステップと、前記クライアント端末５に対してクライアント用の認証ファイル１０の送信を求めるステップと、前記受信したクライアント用の認証ファイル１０とサーバ用の認証ファイル２０を比較し、前記比較の結果、両者が一致した場合は、当該クライアント端末に対する認証を許可するステップとを備える。【選択図】  図２
2004265028.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末とサーバとの間の認証を行う方法であって、
サーバが、サーバ用とクライアント端末用の認証ファイルの２つを発行し、サーバ用の認証ファイルを保存するステップと、
クライアント端末に対して前記サーバが発行したクライアント端末用の認証ファイルを送信するステップと、
前記クライアント端末に対してクライアント用の認証ファイルの送信を求めるステップと、
前記受信したクライアント用の認証ファイルとサーバ用の認証ファイルを比較し、前記比較の結果、両者が一致した場合は、当該クライアント端末に対する認証を許可するステップとを備えることを特徴とする、クライアント認証方法。
【請求項２】
前記認証ファイルは、テキストデータを保存可能であり、パスワードによる保護がなされたファイルであることを特徴とする、請求項１に記載のクライアント認証方法。
【請求項３】
前記クライアント端末用の認証ファイルは、パスワードつきの圧縮ファイルに変換された状態で、前記クライアント端末に送信されることを特徴とする、請求項１又は２に記載のクライアント認証方法。
【請求項４】
前記比較は、前記認証ファイルのファイル名、有効期限、ファイルサイズ、ファイルの種類、ファイルの内容のうち少なくとも１以上の項目によって行われることを特徴とする、請求項１乃至３のいずれか１つに記載のクライアント認証方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クライアント、サーバ間の通信における相互の認証方法に関する。
【０００２】
【従来の技術】
従来ｗｅｂ（ＷＷＷ）を利用したネットワーク通信、特にネットワークを利用した商取引を行うような場合には、通信の安全のためにサーバおよびクライアントの認証が行われる場合がある。この認証の方法としては、ＳＳＬ（セキュア・ソケット・レイヤー）を用いて行われる場合が多い。ＳＳＬを用いた通信においては、非特許文献１に開示の通り、まず、サーバー証明書がｗｅｂサーバからクライアントに送付され、その後にサーバー及びクライアントが鍵生成の元データを交換してそれぞれ共通鍵を生成する。そして、クライアントからｗｅｂサーバにクライアント証明書が送付されることによって、クライアント認証が行われる。サーバー認証及びクライアント認証が完了すると、暗号化データの通信が両者の間で開始される。
【０００３】
上記のＳＳＬの機能を用いて通信を行う場合は、利用されるブラウザにその機能が搭載されていることが前提となる。
【０００４】
しかし、たとえばブラウザにＳＳＬ対応がなされていない場合、たとえば、古いバージョンのブラウザなどは、上記のクライアント認証機能を搭載していないものがある。そして、このように上記ＳＳＬに対応していないブラウザを用いては、ＳＳＬによるクライアント認証を行うことはできず、結果としてＳＳＬ通信を行うことはできなかった。
【０００５】
【非特許文献１】
日本ベリサイン株式会社  ”ベリサイン  サーバＩＤとＳＳＬ（セキュア・ソケット・レイヤー）暗号化通信”、［ｏｎｌｉｎｅ］、平成１４年１１月検索、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｖｅｒｉｓｉｇｎ．ｃｏ．ｊｐ／ｒｅｐｏｓｉｔｏｒｙ／ｆａｑ／ＳＳＬ／＞
【０００６】
【発明が解決しようとする課題】
したがって、本発明が解決しようとする技術的課題は、ＳＳＬに対応していないブラウザを用いた場合であっても、クライアント、サーバ間の認証を容易に行うことができる方法を提供することである。
【０００７】
【課題を解決するための手段】
本発明は、上記技術的課題を解決するために、以下のクライアント認証方法を提供する。
【０００８】
クライアント認証方法は、クライアント端末とサーバとの間の認証を行う方法であって、サーバが、サーバ用とクライアント端末用の認証ファイルの２つを発行し、サーバ用の認証ファイルを保存するステップと、クライアント端末に対して前記サーバが発行したクライアント端末用の認証ファイルを送信するステップと、前記クライアント端末に対してクライアント用の認証ファイルの送信を求めるステップと、前記受信したクライアント用の認証ファイルとサーバ用の認証ファイルを比較し、前記比較の結果、両者が一致した場合は、当該クライアント端末に対する認証を許可するステップとを備える。
【０００９】
上記クライアント認証方法は、ＳＳＬ認証機能を備えていないブラウザにおいてもクライアント認証を行うことができる。すなわち、サーバによって発行された認証ファイルをクライアント端末に予め配布しておき、同じ認証ファイルをサーバが保存する。そして、クライアントから、認証を求められた場合に、クライアントに対して、当該認証ファイルを送信するように求め、当該受信した認証ファイルを保存している認証ファイルと比較することによって、クライアントが正規のものであるかの認証を行う。
【００１０】
上記方法によれば、ブラウザにＳＳＬによるクライアント認証機能が備わっていない場合であっても、サーバは、当該通信相手であるクライアントが正規のものであるかについての認証を行うことができる。
【００１１】
本発明のクライアント認証方法は、具体的には以下のように種々の態様で構成することができる。
【００１２】
前記認証ファイルは、テキストデータを保存可能であり、パスワードによる保護がなされたファイルであることが好ましい。
【００１３】
上記方法において、認証ファイルは、クライアントの認証に用いられるものであるから、その内容が改変されないようにし、また、サーバ側でその内容を容易に認識することができるようにすること望ましい。上記方法においてテキストデータにより保存することで認識を容易にすることができ、パスワードで保護することにより、クライアント端末側での内容の改変を防止することができる。
【００１４】
好ましくは、前記クライアント端末用の認証ファイルは、パスワードつきの圧縮ファイルに変換された状態で、前記クライアント端末に送信される。
【００１５】
上記方法において、認証ファイルは、クライアントの認証に用いられるものであるから、第三者にわたって不正使用されることを防止することが好ましい。上記方法において、認証ファイルを送信する場合に、パスワードつきの圧縮ファイルに変換することにより、当該パスワードを知らない第三者による使用を防止することができる。
【００１６】
【発明の実施の形態】
以下、本発明に係るクライアント認証方法を使用したネットワークシステムの一実施形態について、図面を参照しながら説明する。
【００１７】
図１は、本発明に係るクライアント認証方法を使用したネットワークシステムのシステム構成を示す図である。本ネットワークシステムは、管理者側装置１とクライアント端末５とから構成され、両者がインターネットＩＮで接続されている。管理者側装置１は、ｗｅｂデータ又はアプリケーションを公開するためのｗｅｂサーバ２、データベースとして機能するＤＢサーバ３、サーバ認証を行う認証サーバ４から構成されている。なお、実際には、管理者側装置１を構成する各サーバ２、３、４間の通信もインターネットを用いて行われてもよいが、図１は説明の便宜上、インターネットＩＮとは別のネットワークによって通信するように記載している。
【００１８】
また、クライアント端末５は、当該管理者側装置１のｗｅｂサーバ２と通信を行う端末であり、ｗｅｂサーバによって提供されるｗｅｂデータ又はアプリケーションを利用する不特定多数の者が利用する端末である。図１には、クライアント端末５は１つしか記載されていないが、実際のシステムとしては、多数のクライアント端末がネットワーク上に存在する。
【００１９】
クライアント端末５は、後述するように、予め管理者側装置１から配布されたクライアント証明書Ａ１０を格納している（図３参照）。当該クライアント証明書Ａ１０は、管理者用装置１のＤＢサーバ３によって発行されたものであり、管理者用装置１のＤＢサーバ３には、同じファイルであるクライアント証明書Ｂ２０と証明書管理ファイル３０とが格納されている。証明書管理ファイル３０は、発行されたクライアント証明書に関する情報を一覧形式にして保存したファイルである。
【００２０】
図２は、図１に示すネットワークシステムの処理手順を説明する図である。前提として、クライアント証明書Ａ１０がクライアント端末に格納されていることとする。クライアント証明書Ａ１０のクライアント端末５への配布については後述する。
【００２１】
まず、クライアント端末が、所定のＵＲＬへアクセスし（＃１０）、認証が必要となると、認証サーバ４からサーバ証明書が発行される（＃１１）。本実施形態においては、サーバ証明書は、ＳＳＬの認証機能を用いており、認証サーバは、ＳＳＬのサービスを提供している運営者が管理するサーバを用いることができる。すなわち、ｗｅｂサーバ２は、認証サーバから受け取ったサーバ証明書を当該クライアント端末に送信する（＃１２）。当該サーバ証明書を取得したクライアント端末５は、ｗｅｂサーバ２のサーバ認証が終了するとその旨をｗｅｂサーバに通知する。ｗｅｂサーバは、ログイン画面をクライアント端末５に表示させ、クライアントのパスワードの入力を求める（＃１３）。
【００２２】
ログインが終了すると、ｗｅｂサーバ２は、クライアント端末５に予め配布しているクライアント証明書の送付を要求する。クライアント端末５からクライアント証明書が送付（＃１５）されると、ｗｅｂサーバ２は、当該クライアント証明書Ａ１０を確認し（＃１６）、正規のものであると判断すると、当該認証クライアントに特定のアプリケーション又はデータを公開する（＃１７）。
【００２３】
次に、本実施形態にかかるシステムの全体的な処理の流れについて説明する。図３は、クライアント証明書が発行される処理フローを説明する図である。クライアント証明書は、管理者側装置１のＤＢサーバにより作成され、図３に示すようにクライアント端末５及びＤＢサーバ３に格納される。本実施形態では、クライアント証明書は、ＰＤＦファイルを用いて構成されている。また、そのファイル名は、拡張子「．ｐｄｆ」を付すことなく構成されており、クライアント端末の利用者が当該ファイルを誤って実行させた場合に、自動的にアプリケーションが起動しないようになっている。
【００２４】
後述するように、証明書の認証において比較対照される項目の１つであるファイル名として、適用されるアプリケーション名、管理者名を示すコード、ファイル作成日の情報を含めて構成されている。このように、ファイル名の構成を一律に決定しておくことにより、認証時の比較の処理を容易にすることができる。
【００２５】
クライアント証明書のファイル構成は、半角英数文字の情報のみで構成されており、クライアントの使用言語によらず、地域性を問わずに当該認証方法を使用することができる。また、ファイルの内容としては、当該クライアント証明書をユニークコードにするための暗号コード、発行年月日、発行者の情報が格納されている。これらの項目に限定することによりファイルサイズを小さくすることができ、認証のための処理うを迅速に行うことができる。
【００２６】
図３に示すように、ＤＢサーバ３によって作成されるクライアント証明書は、クライアント端末に配布されるクライアント証明書Ａ１０とＤＢサーバ３に格納されるクライアント証明書Ｂ２０とが作成される。クライアント証明書Ａ１０は、クライアント端末へ配布されるにあたり、第三者による不正使用を防止するために、パスワードつきの圧縮ファイルに変換（＃２１）された後、クライアント端末に送信される。当該圧縮ファイルを受信したクライアント端末５は、当該圧縮ファイルを解凍して、クライアント証明書Ａ１０を取り出し（＃２２）、保存する（＃２３）。
【００２７】
一方、ＤＢサーバ３に保存されるクライアント証明書Ｂ２０は、ＤＢサーバ３に格納されている証明書管理ファイルに当該クライアント証明書についての情報を追加する更新（＃３１）を行った後、ＤＢサーバ３の所定ディレクトリに格納される（＃３２）。
【００２８】
証明書管理ファイル３０は、ファイル名、ファイルサイズ、ファイルの有効期限などの当該クライアント証明書に関する情報のほか、クライアント証明書のファイルとして許容しうるファイルサイズの許容量の情報が管理されている。また、管理者側の操作により、次の設定切り替えができるように構成されている。
【００２９】
証明書管理ファイル３０は、クライアント認証を行うか否かの切り替え機能が設けられている。すなわち、通常時は当該認証機能をＯＮの状態に設定しておき、ログインの後、後述の証明書送信画面（図５参照）が表示されるように構成されている。一方ＯＦＦに設定された場合は、ログインの後、証明書送信画面を表示することなく、アプリケーションを公開するように設定する。このようにクライアント認証機能の切り替えを行うことにより、たとえば、クライアント証明書を用いたクライアント認証に関連する運用トラブルが起こった場合であっても、当該利用者にアプリケーションを公開する必要がある場合などの問題を解消することができる。
【００３０】
クライアント端末に、クライアント証明書Ａ１０が保存されると、上述したｗｅｂサーバの認証の処理が可能となる。図４は、管理者側装置の認証の処理のフロー図である。図２において説明したように、クライアント端末が、所定のＵＲＬへアクセスしサーバ認証が終了し、ログイン画面が表示（＃４０）されると、クライアント端末の利用者はパスワードを入力し、ｗｅｂサーバ２に送信する。パスワードを受信（＃４１）したｗｅｂサーバ２は、受信したパスワードが正しいかどうかについて確認を行う。パスワードが正しい場合は、図５に示す証明書送信画面をクライアント端末に表示する。
【００３１】
一方、パスワードが正しくない場合は、ログインが失敗となりエラー表示（＃５０）がなされ、ログイン画面に戻る。
【００３２】
証明書送信画面４０は、図５に示すように、テキストボックス４４が表示されている。テキストボックス４４には、クライアント端末５に格納されているクライアント証明書のファイル名を入力する。テキストボックス４４の隣に設けられている参照ボタンを選択することにより、クライアント端末のローカルフォルダ内からクライアント証明書のファイルを検索して、テキストボックス４４にファイル名を入力することができる。
【００３３】
なお、テキストボックス４４にファイル名の入力を行うことなく、証明書送信ボタンを選択すると、図６に示すようなエラー画面が表示される。図６のエラー画面４５は、エラー番号４７及びエラー番号に対応したエラー内容４８が表示されている。当該エラーの内容を利用者が確認したのち、ＯＫボタン４６を選択することにより、ログイン画面に戻る。
【００３４】
テキストボックス４４にファイル名の入力が終了したあと、証明書送信ボタン４２を選択すると、当該クライアント証明書Ａ１０がＤＢサーバ３に送信される。一方、キャンセルボタン４３を選択すると、ログイン画面に戻る。
【００３５】
クライアント証明書をＤＢサーバが受信（＃４４）すると、当該受信したクライアント証明書が正しいかどうかについて判断される（＃４５）。クライアント証明書の判断は、１．ファイル名（クライアント証明書Ｂ２０と比較）、２．クライアント証明書Ａ１０の有効期限（証明書管理ファイルにて判定）、３．クライアント証明書のファイルサイズの容量制限（証明書管理ファイルにて判定）、４．不正ファイルの判断（クライアント証明書のファイルのヘッダ情報がＰＤＦになっているかによって判定）、５．クライアント証明書Ａ１０とクライアント証明書Ｂ２０とのファイルサイズの比較、６．ファイルの内容の照合（クライアント証明書Ａ１０とクライアント証明書Ｂ２０とのファイルの内容の比較）のすべての項目について行われる。
【００３６】
上記判断の結果、送信されたクライアント証明書Ａ１０が正しいものでない場合は、図７に示す証明書エラー画面５０が表示される（＃４８）。当該証明書エラー画面５０には、エラー番号５３及びエラー番号に対応したエラー内容５４が表示されている。当該エラーの内容を利用者が確認したのち、ＯＫボタン５２を選択することにより、証明書送信画面４０に戻る。
【００３７】
一方、上記判断の結果、送信されたクライアント証明書Ａ１０が正しいものである場合は、２重ログインかどうかが判断される（＃４６）。２重ログインではない場合は、承認の接続が完了し、公開されるアプリケーションのＴＯＰが面が表示される（＃４７）。
【００３８】
ステップ＃４６において２重ログインであると判断された場合は、２重ログインエラー表示がなされ（＃４９）、ログイン画面に切り換わる。
【００３９】
以上説明したように、本実施形態にかかるネットワークシステムを用いてクライアント認証方法を行うことにより、クライアント端末がＳＳＬ認証に対応していないブラウザを使用していても、クライアント認証を行うことができる。
【００４０】
なお、本発明は上記実施形態に限定されるものではなく、その他種々の態様で実施可能である。
【００４１】
たとえば、本実施形態においては、クライアント認証の前提として、ＳＳＬによるサーバ認証を行うこととしているが、当該サーバ認証を行うことなく、クライアント認証を行ってもよい。
【００４２】
また、クライアント証明書として用いられるファイルとしては、ＰＤＦファイルに限られることなく、その他の種類のものであってもよい。ただし、上述のように、テキストデータを保存することができると共に、パスワードによる保護がなされる種類のファイルがなされることが好ましく、さらには、当該クライアント証明書として用いられるファイルのアプリケーションが多くのブラウザにプラグインとして利用することができ、改ざん防止の機能を備えたものであることが好ましい。
【図面の簡単な説明】
【図１】本発明に係るクライアント認証方法を使用したネットワークシステムのシステム構成を示す図である。
【図２】図１に示すネットワークシステムの処理手順を説明する図である。
【図３】クライアント証明書が発行される処理フローを説明する図である。
【図４】管理者側装置の認証の処理のフロー図である。
【図５】証明書送信画面の画面表示例である。
【図６】エラー画面の画面表示例である。
【図７】証明書エラー画面の画面表示例である。
【符号の説明】
１  管理者側装置
２  ｗｅｂサーバ
３  ＤＢサーバ
４  認証サーバ
５  クライアント端末
１０  クライアント証明書Ａ
２０  クライアント証明書Ｂ
３０  証明書管理ファイル
４０  証明書送信画面
４５  エラー画面
５０  証明書エラー画面
ＩＮ  インターネット
【図１】
2004265028.tif 000003
【図２】
2004265028.tif 000004
【図３】
2004265028.tif 000005
【図４】
2004265028.tif 000006
【図５】
2004265028.tif 000007
【図６】
2004265028.tif 000008
【図７】
2004265028.tif 000009