(57)【要約】【課題】セキュリティを強化しつつ、チケットをメディアに保存できる暗号による認証方式のチケット保護方法およびクライアントを提供することを目的とする。【解決手段】認証サーバ及びサービス提供サーバにネットワークを介して接続された暗号による認証方式を利用するクライアント１であって、認証サーバ及びサービス提供サーバと暗号通信を行なう暗号通信手段２３と、認証サーバから取得した第１のチケットを暗号化してメディア２７に保存する一方、サービス提供サーバにアクセスする際にメディア２７から読み出した暗号化された第１のチケットを復号して出力する管理手段２４と、復号した第１のチケットを示してサービス提供サーバへアクセスする為の第２のチケットを認証サーバに要求し、認証サーバから取得した第２のチケットを用いてサービス提供サーバにアクセスする制御手段２１とを有することにより上記課題を解決する。【選択図】図７
2007159009.tif 000002
【特許請求の範囲】
【請求項１】
認証サーバ，サービス提供サーバ及びクライアントがネットワークを介して接続されたシステムにおいて利用される暗号による認証方式のチケット保護方法であって、
前記クライアントが前記認証サーバから第１のチケットを取得し、その第１のチケットを暗号化してメディアに保存する保存ステップと、
前記クライアントが前記サービス提供サーバにアクセスする際、前記メディアから暗号化された第１のチケットを読み出し、その第１のチケットを復号する復号ステップと、
前記クライアントが、復号した前記第１のチケットを示して前記サービス提供サーバへアクセスする為の第２のチケットを前記認証サーバに要求する要求ステップと、
前記クライアントが前記認証サーバから前記第２のチケットを取得し、その第２のチケットを用いて前記サービス提供サーバにアクセスするアクセスステップと
を有することを特徴とするチケット保護方法。
【請求項２】
前記認証サーバ又は前記サービス提供サーバとの間で送受信される前記第１のチケットおよび第２のチケットを暗号化または復号する為の鍵は、暗号化されて前記メディアに保存されていることを特徴とする請求項１記載のチケット保護方法。
【請求項３】
前記メディアは、前記クライアントから取り外しが可能な外部メディアであることを特徴とする請求項１又は２記載のチケット保護方法。
【請求項４】
認証サーバ及びサービス提供サーバにネットワークを介して接続された暗号による認証方式を利用するクライアントであって、
前記認証サーバ及びサービス提供サーバと暗号通信を行なう暗号通信手段と、
前記認証サーバから取得した第１のチケットを暗号化してメディアに保存する一方、前記サービス提供サーバにアクセスする際に前記メディアから読み出した暗号化された前記第１のチケットを復号して出力する管理手段と、
復号した前記第１のチケットを示して前記サービス提供サーバへアクセスする為の第２のチケットを前記認証サーバに要求し、前記認証サーバから取得した前記第２のチケットを用いて前記サービス提供サーバにアクセスする制御手段と
を有することを特徴とするクライアント。
【請求項５】
前記暗号通信手段は、前記認証サーバ又は前記サービス提供サーバとの間で送受信される前記第１のチケットおよび第２のチケットを暗号化または復号する為の鍵として、暗号化されて前記メディアに保存されている前記鍵を利用することを特徴とする請求項４記載のクライアント。
【請求項６】
前記メディアは、取り外しが可能な外部メディアであることを特徴とする請求項４又は５記載のクライアント。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、チケット保護方法およびクライアントに係り、特に暗号による認証方式のチケット保護方法およびクライアントに関する。
【背景技術】
【０００２】
近年、通信経路上の安全が保障されないインターネット等のネットワークにおいてケルベロス（Kerberos）認証が利用されるようになった。図１は、ケルベロス認証の概要を示す説明図である。
【０００３】
ステップＳ１において、クライアント１は認証サーバ（Key Distribution Center：以下ＫＤＣという）２に発券許可証明書（Ticket Granting Ticket：以下、ＴＧＴという）を要求する。ステップＳ２に進み、ＫＤＣ２はＴＧＴを暗号化し、暗号化したＴＧＴをクライアント１に送信する。
【０００４】
クライアント１は、受信したＴＧＴを、予め取得済みの秘密鍵または共通鍵を用いて復号し、メモリ上にキャッシュする。メモリ上にキャッシュされたＴＧＴは保護されているため、外部から参照することができない。なお、ステップＳ１，Ｓ２の処理は例えば起動時に行われる。
【０００５】
実際にアプリケーションサーバ（図示せず）にアクセスする必要が生じた際、クライアント１はステップＳ３に進み、ＴＧＴを暗号化し、暗号化したＴＧＴをＫＤＣ２に送信してチケット要求を行なう。ＫＤＣ２は、受信したＴＧＴを、予め取得済みの秘密鍵または共通鍵を用いて復号し、認証を行なう。
【０００６】
認証ＯＫであれば、ＫＤＣ２はステップＳ４に進み、アプリケーションサーバにアクセスする為のチケットを暗号化し、暗号化したチケットをクライアント１に送信する。クライアント１は、受信したチケットを復号し、メモリ上にキャッシュする。クライアント１はチケットを用いてアプリケーションサーバにアクセスすることにより、アプリケーションサーバに対する認証を完了できる。
【０００７】
図１に示すように、ケルベロス認証はＴＧＴを取得することで認証の為のパスワード入力が必要ない認証機構である。ネットワーク上を流れるＴＧＴ及びチケットは暗号化されており、仮に盗まれてもＴＧＴ及びチケット自体に有効期限を設ける等で防御策がなされている。
【０００８】
特許文献１〜３には、チケット，認証チケット，Ｗｅｂサービス利用許可情報等を用いてアクセス制御を行なう技術が開示されている。
【特許文献１】特開２００４−１１０３３５号公報
【特許文献２】特開２００４−４８６７９号公報
【特許文献３】特開２００５−１８７４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従来のクライアントはＴＧＴをメモリ上にキャッシュしている為、電源がＯＦＦされるとＴＧＴが消去されてしまう。近年、ＴＧＴを半永久的に使用するため、不揮発性かつ取り外しが可能な外部メディアに保存することが考えられている。ＴＧＴを外部メディアに保存する場合は、メモリ容量の節約にもなる。しかしながら、不揮発性かつ取り外しが可能な外部メディアにＴＧＴを保存する場合は、以下の理由によりセキュリティを強化する必要があった。
【００１０】
従来のクライアントは、取得したＴＧＴ及びそのＴＧＴを復号する為の鍵を平文のまま保存しているため、ＴＧＴと鍵とをセットで第三者に盗まれたとき、なりすましが可能となる。ＴＧＴと鍵とをメモリで保存している場合、ＴＧＴと鍵とをセットで第三者に盗まれる可能性は極めて低い。一方、ＴＧＴと鍵とを取り外しが可能な外部メディアに保存している場合、ＴＧＴと鍵とをセットで第三者に盗まれる可能性は極めて高い。
【００１１】
図２は、外部メディアからＴＧＴと鍵とをセットで盗んだ第三者が、なりすましを成功させる様子を示した一例の説明図である。図２では、悪意のあるユーザが外部メディアの一例としてのＳＤカードからＴＧＴと鍵とをセットで盗み、そのＴＧＴと鍵とを利用してＫＤＣ２へチケット要求を行なうことで認証がＯＫとなり、悪意のあるユーザに対してチケットを発行してしまうという問題があった。
【００１２】
本発明は、上記の点に鑑みなされたもので、セキュリティを強化しつつ、チケットをメディアに保存できる暗号による認証方式のチケット保護方法およびクライアントを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するため、本発明は、認証サーバ，サービス提供サーバ及びクライアントがネットワークを介して接続されたシステムにおいて利用される暗号による認証方式のチケット保護方法であって、前記クライアントが前記認証サーバから第１のチケットを取得し、その第１のチケットを暗号化してメディアに保存する保存ステップと、前記クライアントが前記サービス提供サーバにアクセスする際、前記メディアから暗号化された第１のチケットを読み出し、その第１のチケットを復号する復号ステップと、前記クライアントが、復号した前記第１のチケットを示して前記サービス提供サーバへアクセスする為の第２のチケットを前記認証サーバに要求する要求ステップと、前記クライアントが前記認証サーバから前記第２のチケットを取得し、その第２のチケットを用いて前記サービス提供サーバにアクセスするアクセスステップとを有することを特徴とする。
【００１４】
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。
【発明の効果】
【００１５】
本発明によれば、セキュリティを強化しつつ、チケットをメディアに保存できる暗号による認証方式のチケット保護方法およびクライアントを提供可能である。
【発明を実施するための最良の形態】
【００１６】
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。なお、本実施例では暗号による認証方式の一例としてケルベロス認証を例に説明するが、ケルベロス認証に限るものではない。
【００１７】
まず、本発明の理解を容易とする為に、ケルベロス認証の基本概念について図３を参照しつつ説明する。図３は、ケルベロス認証の基本概念を示す一例の説明図である。図３に示されるシステムは、クライアント１，ＫＤＣ２及びサービス提供サーバとしてのアプリケーションサーバ（ターゲット）３とが、インターネット等のネットワークを介して接続される構成である。
【００１８】
ステップＳ１１において、クライアント１は例えば起動時に、例えば自分自身を識別させる為の識別子（クライアントＩＤ）を指定して、第１のチケットとしてのＴＧＴをＫＤＣ２に要求する。ＴＧＴとは、第２のチケットとしてのチケットをＫＤＣ２に発行してもらうときにＫＤＣ２へ提示する発券許可証明書である。また、ＫＤＣ２が発行するチケットは、クライアント１がアプリケーションサーバ３に自分自身を認証させる為のレコードである。このチケットは有効期限があり、例えば最小５分，最大１日等が設定される。
【００１９】
ステップＳ１２に進み、ＫＤＣ２はＴＧＴを発行し、そのＴＧＴをクライアントＩＤに応じた公開鍵または共通鍵（以下、暗号鍵という）を用いて暗号化してクライアント１に送信する。クライアント１は受信したＴＧＴを、予め取得済みのＫＤＣ２に応じた秘密鍵または共通鍵（以下、復号鍵という）を用いて復号し、メモリ上にキャッシュする。
【００２０】
なお、メモリ上にキャッシュされたＴＧＴは保護されているため、外部から参照することができない。また、ＫＤＣ２はクライアントＩＤに応じた暗号鍵を用いてＴＧＴを暗号化しているため、他のクライアントが受信したとしても復号できない。
【００２１】
実際にアプリケーションサーバ３にアクセスする必要が生じた際、クライアント１はステップＳ１３に進み、ＫＤＣ２に応じた暗号鍵を用いてＴＧＴを暗号化し、暗号化したＴＧＴをＫＤＣ２に送信してチケット要求を行なう。ＫＤＣ２は、受信したＴＧＴを、クライアントＩＤに応じた復号鍵を用いて復号し、認証を行なう。
【００２２】
認証ＯＫであれば、ＫＤＣ２はステップＳ１４に進み、アプリケーションサーバ３にアクセスする為のチケットをクライアントＩＤに応じた暗号鍵を用いて暗号化し、暗号化したチケットをクライアント１に送信する。クライアント１は、受信したチケットをＫＤＣ２に応じた復号鍵を用いて復号し、メモリ上にキャッシュする。
【００２３】
ステップＳ１５に進み、クライアント１はアプリケーションサーバ３に応じた暗号鍵を用いてチケットを暗号化し、暗号化したチケットをアプリケーションサーバ３に送信することで、アプリケーションサーバ３にアクセスする。アプリケーションサーバ３は受信したチケットをクライアント１に応じた復号鍵を用いて復号し、認証を行なうことで、クライアント１に対する認証を完了できる。
【００２４】
図３に示すように、ケルベロス認証はネットワーク上を流れるＴＧＴ及びチケットは暗号化されており、仮に盗まれてもＴＧＴ及びチケット自体に有効期限を設ける等で防御策がなされている。しかしながら、クライアント１はＴＧＴ，暗号鍵及び復号鍵を平文のままメモリ上にキャッシュする為、そのＴＧＴ，暗号鍵及び復号鍵を不揮発性かつ取り外しが可能な外部メディアに移動すると、ＴＧＴ，暗号鍵及び復号鍵をセットで第三者に盗まれる可能性は極めて高くなる。
【００２５】
そこで、本発明ではＴＧＴ，暗号鍵及び復号鍵をメモリ上から外部メディアに移動する前に暗号化することで、暗号化されたＴＧＴ，暗号鍵及び復号鍵を外部メディアに保存するようにしている。このように本発明では暗号化されたＴＧＴ，暗号鍵及び復号鍵を外部メディアに保存しているため、外部メディアに保存されている内容を第三者に見られても問題がない。
【００２６】
図４は、本発明の概要を示す説明図である。図４に示すように、クライアント１は第三者に知られ難い一意な番号、例えば機器の製造段階で機器に持たせる固有の数字を基に鍵を生成し、その鍵を用いてＴＧＴ，暗号鍵及び復号鍵を暗号化したあとで、外部メディアに保存する。
【００２７】
なお、クライアント１は外部メディアに保存されている暗号化されたＴＧＴ，暗号鍵及び復号鍵を使用する場合、第三者に知られ難い一意な番号、例えば機器の製造段階で機器に持たせる固有の数字を基に生成された鍵を用いて復号する。
【００２８】
したがって、本発明ではＴＧＴと鍵とを取り外しが可能な外部メディアに保存したとしても、ＴＧＴ，暗号鍵及び復号鍵をセットで第三者に盗まれる可能性は極めて低い。図５は外部メディアからＴＧＴ，暗号鍵及び復号鍵をセットで盗んだ第三者が、なりすましに失敗する様子を示した一例の説明図である。
【００２９】
図５では、外部メディアの一例としてのＳＤカードに、暗号化されたＴＧＴ，暗号鍵及び復号鍵が保存されており、且つ第三者に知られ難い一意な番号を基に暗号鍵を生成しているので、第三者が暗号化されたＴＧＴ，暗号鍵及び復号鍵を復号できる可能性は極めて低い。したがって、本発明ではＳＤカードに保存されている内容を第三者に見られても問題がない。
【００３０】
また、本発明ではセキュリティを強化しつつ、ＴＧＴ，暗号鍵及び復号鍵を不揮発性かつ取り外しが可能な外部メディアに保存することができるので、外部メディアに保存したＴＧＴを有効期限内で半永久的に使用できる。また、本発明ではメモリに保存されていたＴＧＴ，暗号鍵及び復号鍵を不揮発性かつ取り外しが可能な外部メディアに保存することで、メモリ容量を節約できる。
【００３１】
以下、本発明の詳細について説明する。図６は、本発明によるクライアントの一実施例のハードウェア構成図である。図６のクライアント１は、それぞれバスＢで相互に接続されている入力装置１１，出力装置１２，ドライブ装置１３，補助記憶装置１４，メモリ装置１５，演算処理装置１６およびインターフェース装置１７で構成される。
【００３２】
入力装置１１はキーボードやマウスなどで構成され、各種信号を入力するために用いられる。出力装置１２はディスプレイ装置などで構成され、各種ウインドウやデータ等を表示するために用いられる。インターフェース装置１７は、モデム，ＬＡＮカードなどで構成されており、ネットワークに接続する為に用いられる。
【００３３】
クライアント１の処理を制御するプログラムは、記録媒体１８の配布やネットワークからのダウンロードなどによって提供される。なお、プログラムを記録した記録媒体１８はＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的，電気的或いは磁気的に記録する記録媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
【００３４】
また、プログラムを記録した記録媒体１８がドライブ装置１３にセットされると、プログラムは記録媒体１８からドライブ装置１３を介して補助記憶装置１４にインストールされる。ネットワークからダウンロードされたプログラムは、インターフェース装置１７を介して補助記憶装置１４にインストールされる。
【００３５】
補助記憶装置１４は、インストールされたプログラムを格納すると共に、必要なファイル，データ等を格納する。メモリ装置１５は、コンピュータの起動時に補助記憶装置１４からプログラムを読み出して格納する。そして、演算処理装置１６はメモリ装置１５に格納されたプログラムに従って、後述するような各種処理を実現している。
【００３６】
図７は、本発明によるクライアントの一実施例の処理ブロック図である。図７に示すクライアント１は、制御手段としての制御部２１，メモリ２２，暗号通信手段としての暗号通信部２３，監視部２５，暗号化／復号部２６及び外部メディア２７を含むように構成されている。なお、監視部２５及び暗号化／復号部２６は管理手段としての管理モジュールを構成する。
【００３７】
暗号通信部２３は、ＫＤＣ２及びアプリケーションサーバ３と暗号通信を行なう。暗号通信部２３は、暗号化されたＴＧＴまたはチケットを受信すると、復号鍵を用いて復号してメモリ２２上にキャッシュする。また、暗号通信部２３はＴＧＴまたはチケットを送信する場合、そのＴＧＴまたはチケットをメモリ２２上から読み出し、暗号鍵を用いて暗号化して送信する。
【００３８】
監視部２５は、メモリ２２上にキャッシュされるＴＧＴを監視する。暗号化／復号部２６はメモリ２２上にキャッシュされたＴＧＴを、第三者に知られ難い一意な番号、例えば機器の製造段階で機器に持たせる固有の数字を基に作成された鍵を用いて暗号化し、外部メディア２７に保存する。また、暗号化／復号部２６は外部メディア２７に保存されている暗号化されたＴＧＴを、第三者に知られ難い一意な番号、例えば機器の製造段階で機器に持たせる固有の数字を基に作成された鍵を用いて復号し、メモリ２２上にキャッシュする。
【００３９】
なお、暗号通信部２３が用いる暗号鍵及び復号鍵は、暗号化されて外部メディア２７に保存されている。暗号化／復号部２６は外部メディア２７に保存されている暗号化された暗号鍵及び復号鍵を、第三者に知られ難い一意な番号、例えば機器の製造段階で機器に持たせる固有の数字を基に作成された鍵を用いて復号し、予めメモリ２２上にキャッシュしておく。
【００４０】
制御部２１は、ＴＧＴをＫＤＣ２に要求する処理、ＴＧＴをＫＤＣ２に送信してチケット要求を行なう処理、チケットをアプリケーションサーバ３に送信してアクセスする処理を制御する。
【００４１】
次に、図７に示すクライアント１の処理手順について図８を参照しつつ説明する。図８はクライアントの処理手順を示す一例のシーケンス図である。ステップＳ１において、管理モジュール２４の監視部２５はメモリ２２上にキャッシュされるＴＧＴを監視する。ステップＳ２２に進み、制御部２１は暗号通信部２３を制御し、復号したＴＧＴをメモリ２２上にキャッシュする。
【００４２】
ステップＳ２３に進み、管理モジュール２４の監視部２５はＴＧＴがメモリ２２上にキャッシュされたことを検知すると、その旨を暗号化／復号部２６に通知する。ステップＳ２３に進み、管理モジュール２４の暗号化／復号部２６はメモリ２２上にキャッシュされたＴＧＴを読み出す。
【００４３】
ステップＳ２４に進み、暗号化／復号部２６はメモリ２２上から読み出したＴＧＴを暗号化する。ステップＳ２５に進み、暗号化／復号部２６は暗号化したＴＧＴを外部メディア２７に保存する。ステップＳ２６に進み、暗号化／復号部２６はメモリ２２上にキャッシュされているＴＧＴを消去する。
【００４４】
実際にアプリケーションサーバ３にアクセスする必要が生じると、ステップＳ２７及びＳ２８の処理により、管理モジュール２４の暗号化／復号部２６はＴＧＴを外部メディア２７から読み出す要求を受信する。ステップＳ２９及びＳ３０に進み、暗号化／復号部２６は外部メディア２７に保存されている暗号化されたＴＧＴを読み出す。
【００４５】
ステップＳ３１に進み、暗号化／復号部２６は外部メディア２７から読み出した暗号化されたＴＧＴを復号する。ステップＳ３２に進み、暗号化／復号部２６は復号したＴＧＴをメモリ２２上にキャッシュする。ステップＳ３３に進み、制御部２１はステップＳ２７の要求に対する応答を受信する。
【００４６】
このように、本発明のクライアント１は通常、ＴＧＴを暗号化して外部メディア２７に保存しておき、必要なときに復号してメモリ２２上にキャッシュするため、セキュリティを強化しつつ、メモリ２２の容量を節約できる。
【００４７】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【図面の簡単な説明】
【００４８】
【図１】ケルベロス認証の概要を示す説明図である。
【図２】外部メディアからＴＧＴと鍵とをセットで盗んだ第三者が、なりすましを成功させる様子を示した一例の説明図である。
【図３】ケルベロス認証の基本概念を示す一例の説明図である。
【図４】本発明の概要を示す説明図である。
【図５】外部メディアからＴＧＴ，暗号鍵及び復号鍵をセットで盗んだ第三者が、なりすましに失敗する様子を示した一例の説明図である。
【図６】本発明によるクライアントの一実施例のハードウェア構成図である。
【図７】本発明によるクライアントの一実施例の処理ブロック図である。
【図８】クライアントの処理手順を示す一例のシーケンス図である。
【符号の説明】
【００４９】
１    クライアント
２    認証サーバ（Key Distribution Center：ＫＤＣ）
３    アプリケーションサーバ
２１    制御部
２２    メモリ
２３    暗号通信部
２４    管理モジュール
２５    監視部
２６    暗号化／復号部
２７    外部メディア
【図１】
2007159009.tif 000003
【図２】
2007159009.tif 000004
【図３】
2007159009.tif 000005
【図４】
2007159009.tif 000006
【図５】
2007159009.tif 000007
【図６】
2007159009.tif 000008
【図７】
2007159009.tif 000009
【図８】
2007159009.tif 000010