説明

認証情報生成システム、認証情報生成方法、クライアント装置及びプログラム

【課題】ユーザ認証のための認証情報の生成に必要な秘密情報を低コストで安全に保持できるようにする。
【解決手段】ネットワーク10上の秘密情報サーバ300とクライアント装置100とによって認証情報生成システムを構成する。秘密情報サーバ300はクライアント装置100から受信したユーザ識別情報に基づき、ユーザの正当性を確認する機能と、各ユーザの秘密情報DBを保持し、正当性が確認されたユーザのクライアント装置100にそのユーザの秘密情報DBを送信する機能とを有する。クライアント装置100はその主記憶部120にアプリケーションや主OSを実行するドメインAと、そのドメインAと相互に独立した実行環境であるドメインBとを備え、ドメインBにおいて秘密情報サーバ300から受信した秘密情報DBが展開され、その秘密情報DBを用いて認証情報が生成される。

【発明の詳細な説明】
【技術分野】
【0001】
この発明はクライアント装置とサービス提供装置とがネットワークを介して接続されたシステムにおいて、ユーザが認証を必要とするサービスの提供をサービス提供装置から受ける際に、ユーザ認証のためにサービス提供装置に送信する認証情報を生成するシステム及びその方法に関する。
【背景技術】
【0002】
インターネットの普及によりオンラインショッピングやコンテンツサービスなどのオンラインサービスが増加している。通常のオンラインサービスにおいては、ユーザにサービスを提供するサービス提供装置と、サービス提供装置に対してユーザ認証を行うクライアント装置とがそれぞれネットワークに接続され、ユーザはクライアント装置を介してサービス提供装置に対してユーザ認証を行い、ユーザ認証の結果に基づいてサービス提供装置はユーザにサービスを提供する。
【0003】
ユーザ認証の方式としては、パスワードや暗号に基づく方式がある。パスワードによる認証ではユーザがパスワードを記憶しておくのが基本であるが、利用するサービスが増加した場合にユーザは全てのパスワードを記憶しておくのが困難である。このため、ブラウザなどのクライアント装置上のアプリケーションプログラムにはパスワードを記憶しておき、認証時にユーザに代わってパスワードを送信する機能が備わっている。
【0004】
一方、暗号に基づく認証方式は、なりすましに対する安全性の高さから価値の高いサービスにおける認証に適している。暗号に基づく認証方式の場合は、暗号操作に用いる鍵などの秘密情報を安全に保持しておく必要がある。
【0005】
以上のように、パスワードあるいは暗号方式に基づく認証のいずれにおいても、認証のための何らかの秘密情報をクライアント装置に保持しておくことが一般的であり、これら秘密情報を保持する手段としては、ソフトウェアによるものとハードウェアによるものとに大別される。
【0006】
ソフトウェアによる秘密情報保持手段には、OSが備える鍵ストア(例えば、非特許文献1参照)などがあり、またハードウェアによる秘密情報保持手段には、暗号トークンやICカードなど、クライアント装置に外付けされる外部デバイスがある。
【非特許文献1】“証明書ストア”、[online]、マイクロソフト、[平成20年2月18日検索]、インターネット〈URL:http://technet2.microsoft.com/WindowsServer/ja/ library/1c4d3c02-e996-450a-bf4f-9a12d245a7eb1041.mspx?mfr=true〉
【発明の開示】
【発明が解決しようとする課題】
【0007】
ところで、ソフトウェアによる秘密情報保持手段では、悪意のプログラムによって秘密情報が読み出される可能性がある。悪意のプログラムとは例えばOSの脆弱性を利用して不当に特権を取得したウィルスやボットなどである。
【0008】
一方、ハードウェアによる秘密情報保持手段では、悪意のプログラムにより例えば鍵が読み出されることはないが、外部デバイスの製造コストやユーザへの配布コストがかかるため、高額・高付加価値のサービスにしか利用できないという問題がある。
このように、OSの鍵ストアや外部デバイスといった従来の秘密情報保持手段では、安全性と低コスト性とを両立できないという問題があった。
【0009】
この発明の目的は上記の問題を解決することにあり、即ちユーザ認証のための認証情報を生成するシステム、方法において、認証情報の生成に必要なユーザの秘密情報が低コストで安全に保持されるようにした認証情報生成システム及びその方法を提供することにある。
【課題を解決するための手段】
【0010】
この発明による第1の認証情報生成システムはユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成するシステムであって、ネットワーク上の秘密情報サーバと、ユーザが使用するクライアント装置とによって構成され、秘密情報サーバはクライアント装置から受信したユーザ識別情報に基づき、ユーザの正当性を確認する機能と、各ユーザの秘密情報DBを保持し、正当性が確認されたユーザのクライアント装置に、そのユーザの秘密情報DBを送信する機能とを有し、クライアント装置はその主記憶部にアプリケーションや主OSを実行するドメインAと、そのドメインAと相互に独立した実行環境であるドメインBとを備え、ドメインBにおいて秘密情報サーバから受信した秘密情報DBが展開され、その秘密情報DBを用いて認証情報が生成される。
【0011】
この発明による第2の認証情報生成システムは、ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成するシステムであって、ネットワーク上の秘密情報サーバと、ユーザが使用するクライアント装置とによって構成され、秘密情報サーバはクライアント装置から受信したユーザ識別情報に基づき、ユーザの正当性を確認する機能と、各ユーザの秘密情報DB復号鍵を保持し、正当性が確認されたユーザのクライアント装置に、そのユーザの秘密情報DB復号鍵を送信する機能とを有し、クライアント装置はアプリケーションや主OSを実行するドメインAと、そのドメインAと相互に独立した実行環境であるドメインBとを備える主記憶部と、所定の鍵で暗号化された秘密情報DBが格納された2次記憶部とを有し、クライアント装置は秘密情報サーバから受信した秘密情報DB復号鍵によって2次記憶部に格納されている秘密情報DBを復号して、その結果をドメインB上に展開すると共に秘密情報DB復号鍵を消去し、ドメインBにおいて展開された秘密情報DBを用いて認証情報が生成される。
【0012】
この発明による第1の認証情報生成方法は、ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成する方法であって、ユーザが使用するクライアント装置がネットワーク上の秘密情報サーバにユーザ識別情報を送信するステップと、秘密情報サーバが受信したユーザ識別情報に基づき、ユーザの正当性を確認し、正当性が確認されたユーザのクライアント装置に、そのユーザの秘密情報DBを送信するステップと、クライアント装置がアプリケーションや主OSを実行する主記憶部のドメインAと相互に独立した実行環境である主記憶部のドメインBに、受信した秘密情報DBを展開し、その秘密情報DBを用いて認証情報を生成するステップとを含む。
【0013】
この発明による第2の認証情報生成方法は、ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成する方法であって、ユーザが使用するクライアント装置がネットワーク上の秘密情報サーバにユーザ識別情報を送信するステップと、秘密情報サーバが受信したユーザ識別情報に基づき、ユーザの正当性を確認し、正当性が確認されたユーザのクライアント装置に、そのユーザの秘密情報DB復号鍵を送信するステップと、クライアント装置が受信した秘密情報DB復号鍵によって2次記憶部に格納されている秘密情報DBを復号して、その結果をアプリケーションや主OSを実行する主記憶部のドメインAと相互に独立した実行環境である主記憶部のドメインBに展開すると共に秘密情報DB復号鍵を消去するステップと、クライアント装置がドメインBにおいて展開された秘密情報DBを用いて認証情報を生成するステップとを含む。
【0014】
また、この発明によれば、ネットワークを介してサービス提供装置と接続され、認証を必要とするサービスの提供をサービス提供装置から受けるクライアント装置は、主記憶部と相互に独立した実行環境である秘密情報管理部を備え、秘密情報管理部は主記憶部から送信されるユーザ識別情報に基づき、ユーザの正当性を確認する機能を有し、ユーザの正当性が確認された場合に主記憶部に送信するユーザの秘密情報DBを保持しており、主記憶部はアプリケーションや主OSを実行するドメインAと、そのドメインAと相互に独立した実行環境であるドメインBとを備え、ドメインBにおいて秘密情報管理部から送信される秘密情報DBが展開され、その秘密情報DBを用いて認証を必要とするサービスの提供をサービス提供装置から受ける際にサービス提供装置に送信する認証情報を生成する。
【0015】
さらに、この発明によれば、ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報をクライアント装置において生成する方法は、主記憶部がその主記憶部と相互に独立した実行環境である秘密情報管理部にユーザ識別情報を送信するステップと、秘密情報管理部が受信したユーザ識別情報に基づき、ユーザの正当性を確認し、正当性が確認された場合にユーザの秘密情報DBを主記憶部に送信するステップと、主記憶部がアプリケーションや主OSを実行するドメインAと相互に独立した実行環境であるドメインBに、受信した秘密情報DBを展開し、その秘密情報DBを用いて認証情報を生成するステップとを含む。
【発明の効果】
【0016】
この発明によれば、クライアント装置においてアプリケーションや主OSから独立した環境で認証処理部が実行されて認証情報が生成されるため、アプリケーション経由で感染した悪意のプログラムによって認証情報の生成に必要な秘密情報が読み出されるといったことを防止することができ、また秘密情報の保持手段として従来のように外部デバイスを用いるものと異なり、外部デバイスを必要としないため、これらの点で秘密情報保持の安全性と低コスト性の両立を図ることが可能となる。
【発明を実施するための最良の形態】
【0017】
この発明の実施形態を図面を参照して説明する。
〈第1の実施形態〉
図1はこの発明の第1の実施形態に係る認証情報生成システムを説明するための図であり、ネットワーク10を介してクライアント装置100とサービス提供装置200とが相互に接続されており、さらにネットワーク10上に秘密情報サーバ300が存在するものとなっている。この第1の実施形態では秘密情報サーバ300と、ユーザが使用するクライアント装置100とによって認証情報生成システムが構成される。
【0018】
図2はクライアント装置100の構成を示したものであり、図2を参照して、まず、クライアント装置100の構成を説明する。
クライアント装置100はプログラムを実行するCPU110、実行されるプログラムがロードされる主記憶部120、主記憶部120にロードされるプログラムを格納する2次記憶部130、サービス提供装置200及び秘密情報サーバ300と通信するためのネットワークインターフェース140、ユーザが情報を入力する入力部150及びユーザへ情報を出力する出力部160を備えている。
【0019】
主記憶部120は互いに独立した複数の実行環境を管理するドメイン管理部121を備えており、このドメイン管理部121の管理により、主記憶部120上にドメインAとドメインBが生成される。ここで、ドメインとは論理的に相互に独立性をもつプログラムの実行環境を表すものとする。より直接的には、ドメインA,BはドメインA上でのプログラムの実行や入出力操作がドメインB上のプログラムの実行や入出力操作に影響を及ぼすことがなく、またその逆も成り立つような主記憶部120上の構成要素の区分とする。例えば、仮想マシンモニタプログラムはドメイン管理部121の一例であり、仮想マシンモニタプログラムにより管理される仮想マシンはドメインの一例である。
【0020】
ドメインAでは、アプリケーション実行部125によりアプリケーションが実行される。また、主OS実行部124によりアプリケーションを実行するための主OSが実行される。一方、ドメインBでは、秘密情報DB(データベース)123が置かれ、認証処理部122により秘密情報DB123に含まれる秘密情報Ki(i=1,2,…)を用いて認証に必要な認証情報を生成する認証処理が実行される。ここで、Ki(i=1,2,…)は複数のサービスにそれぞれ対応する秘密情報を表すものとする。
【0021】
2次記憶部130にはドメイン管理部121、主OS実行部124、アプリケーション実行部125及び認証処理部122の実行にそれぞれ必要なプログラム、即ちドメイン管理プログラム、主OSプログラム、アプリケーションプログラム及び認証処理プログラムが格納されている。入力部150は例えばキーボードやマウス等のポインティングデバイスであり、出力部160は例えばCRTや液晶ディスプレイ等である。
【0022】
次に、図3を参照して秘密情報サーバ300の構成を説明する。
秘密情報サーバ300はネットワークインターフェース310、ユーザ確認部320及び秘密情報管理部330を備えている。ネットワークインターフェース310はクライアント装置100との通信を行う。ユーザ確認部320は、クライアント装置100から送信されるユーザ識別情報に基づき、ユーザの正当性を確認する。秘密情報管理部330は、正当性が確認されたユーザのクライアント装置100に、そのユーザの秘密情報DBを送信するため、各ユーザの秘密情報DBを保持している。
【0023】
なお、サービス提供装置200は通常のWebサーバ装置等であるため、その構成に関する説明を省略する。
クライアント装置100は上記のような構成により、各サービスに対応する秘密情報Ki(i=1,2,…)を用いて認証情報をそれぞれ生成し、認証情報をサービス提供装置200に送信することで、ユーザ認証を行う。
【0024】
なお、複数のサービスは、複数のサービス提供装置200により提供してもよい。
秘密情報サーバ300はクライアント装置100から受信したユーザ識別情報を確認し、その結果に基づき、クライアント装置100に認証情報生成に必要な秘密情報Ki(i=1,2,…)の集合である秘密情報DBを送信する。
サービス提供装置200はクライアント装置100から送信された認証情報をもとにユーザ認証を行い、認証が成功した場合に認証されたユーザにサービスを提供する。
【0025】
以下、図4を参照して、この発明の第1の実施形態に係る認証情報生成システムの動作手順を説明する。
まず、クライアント装置100のCPU110によりドメイン管理部121が実行されてドメインAとドメインBが生成され、つまりドメインが確立される(ステップS1)。CPU110により認証処理プログラムが起動され(ステップS2)、ドメインBにおいてCPU110により認証処理部122が実行されて以下の処理が行われる。
【0026】
即ち、まず、ネットワークインターフェース140を介して認証処理部122と秘密情報サーバ300との間で保護チャネルを確立し(ステップS3)、入力部150を通してユーザ50からユーザ識別情報が入力されると(ステップS4)、入力されたユーザ識別情報を保護チャネルを通して秘密情報サーバ300に送信する(ステップS5)。ここで、ユーザ識別情報は例えばユーザを識別するための暗証番号等である。また、保護チャネルの確立とは、チャネルを通して送受信される通信メッセージを暗号化したり、メッセージ認証を行ったりするためのセッション鍵の共有を含み、少なくとも秘密情報サーバ300を認証することにより確立されるものとする。
【0027】
秘密情報サーバ300は受信したユーザ識別情報の正当性を確認し(ステップS6)、正当性が確認された場合にのみ、そのユーザの秘密情報DBを前記保護チャネルを通してクライアント装置100に送信する(ステップS7)。
クライアント装置100は秘密情報サーバ300から返信された秘密情報DBを受信し、主記憶部120のドメインBに秘密情報DB123として展開する(ステップS8)。
【0028】
そして、クライアント装置100のCPU110によりドメインA上でアプリケーション実行部125が実行され(ステップS9)、その実行によりサービス提供装置200に対するユーザ認証が必要になったとき、以下の処理が行われる。即ち、アプリケーション実行部125からの要求により、ドメインB上の認証処理部122は秘密情報DB123に含まれる秘密情報Kiを用いてユーザ認証のために必要な認証情報を生成する(ステップS10)。
【0029】
このようにして認証情報が生成され、以下、生成された認証情報はネットワークインターフェース140を介してサービス提供装置200に送信され、サービス提供装置200はクライアント装置100から送信された認証情報を用いてユーザを認証し(ステップS11)、認証が成功した場合にユーザにサービスを提供する(ステップS12)。なお、認証処理部122で生成された認証情報は、アプリケーション実行部125を経由したのち、ネットワークインターフェース140を介してサービス提供装置200に送信してもよい。
【0030】
ユーザへのサービス提供が全て終了した後、CPU110は、秘密情報DB123の内容を全て消去する手順になっていてもよい。
アプリケーション実行部125などの実行により秘密情報DB123に変更が生じた場合、その変更は前記保護チャネルを通して秘密情報サーバ300に送信される。
【0031】
上記におけるステップS2〜S8は、クライアント装置100の起動時、例えばステップS1の直後に実行されるものとするが、アプリケーションの実行(ステップS9)の直前に実行するものとしてもよい。また、ドメインA上で実行される主OSは、ステップS1からS9の間の任意のタイミングで起動され、CPU110により実行されるものとする。
【0032】
ステップS3における保護チャネルの確立時に、秘密情報サーバ300はクライアント装置100を認証(機器認証)するようにしてもよい。この機器認証は図示しない機器認証用の秘密鍵を用いて行なってもよい。また、ステップS3における保護チャネルの確立は、クライアント装置100をネットワーク10に接続する時点で行ってもよい。その場合、クライアント装置100と接続されるネットワークアクセスサーバが秘密情報サーバ300となり、クライアント装置100のネットワーク接続時の認証に基づき、ステップS3の保護チャネルの確立がなされる。なお、ネットワーク接続時の認証は図示しないネットワーク接続認証用の秘密鍵を用いて別途行ってもよい。
【0033】
ステップS4におけるユーザ識別情報の入力は、クライアント装置100の入力部150から主記憶部120のドメインB上の認証処理部122に対して行われるが、この処理はドメイン管理部121の機能により、ドメインA上の構成要素とは独立に、互いに干渉することなく実行されるものとする。より具体的には、例えばI/Oの仮想化を用いて実現される。また、ステップS4はクライアント装置100を操作するユーザを確認する手段として、暗証番号等のユーザ識別情報の入力で説明したが、指紋認証等の生体認証など既存の個人確認手段によって行ってもよい。
【0034】
ステップS11で行うユーザ認証は公開鍵暗号系を用いたチャレンジレスポンス認証を用いるが、これに限らずパスワード認証など他の既存の方式を用いてもよい。即ち、ステップS7でクライアント装置100が秘密情報サーバ300から受信する秘密情報DBに含まれる秘密情報は、公開鍵暗号系の秘密鍵あるいはパスワードなど、認証を行う各サービスに対応してそれぞれ用意されているものとする。
【0035】
以上説明したように、この発明の第1の実施形態に係る認証情報生成システムによれば、ユーザ認証のための認証情報の生成に必要なユーザの秘密情報は秘密情報サーバ300に保持され、ユーザ識別情報に基づき、ユーザの正当性が確認された場合に、そのユーザのクライアント装置100に送信され、クライアント装置100においてはアプリケーションや主OSから独立した環境で認証処理部122が実行され、認証情報が生成されるものとなっている。
【0036】
従って、例えばアプリケーション経由で感染した悪意のプログラムによって認証に必要な秘密情報が読み出されるといったことを防止することができ、また例えばクライアント装置100が盗難にあった場合でも秘密情報がただちに漏洩することはない。このように秘密情報保持の安全性を高めることができる。さらには、外部デバイスを必要としないため、安全性と低コスト性とを両立させることができる。なお、秘密情報が秘密情報サーバ300で管理されているため、クライアント装置100を紛失した場合に復元が容易であり、また複数のクライアント装置間で秘密情報を共有することも容易である。
【0037】
〈第2の実施形態〉
次に、この発明の第2の実施形態に係る認証情報生成システムを図5〜7を参照して説明する。なお、上述した第1の実施形態に係る認証情報生成システムと同一の構成及び手順については同一の符号を付し、その説明を省略する。
【0038】
図5は第2の実施形態におけるクライアント装置101の構成を示したものであり、クライアント装置101は図2に示した第1の実施形態のクライアント装置100と2次記憶部131の構成が異なるものとなっている。2次記憶部131は第1の実施形態における2次記憶部130の構成に加え、秘密情報DBファイルを含んで構成される。なお、秘密情報DBファイルとは秘密情報DBを所定の鍵で暗号化することによって得られたファイルである。
【0039】
図6は秘密情報サーバ301の構成を示したものであり、秘密情報サーバ301は図3に示した第1の実施形態の秘密情報サーバ300が具備する秘密情報管理部330に代えて鍵管理部331を具備するものとなっている。この鍵管理部331はクライアント装置101における2次記憶部131の秘密情報DBファイルから秘密情報DBを復号する際に用いる秘密情報DB復号鍵KSを保持している。
以下、図7を参照して、この発明の第2の実施形態に係る認証情報生成システムの動作手順について説明する。
【0040】
この第2の実施形態では秘密情報サーバ301はステップS6においてクライアント装置101から受信したユーザ識別情報の正当性を確認し、正当性が確認された場合にのみ、そのユーザの秘密情報DB復号鍵KSをクライアント装置101に送信する(ステップS21)。秘密情報DB復号鍵KSを受信したクライアント装置101は、受信した秘密情報DB復号鍵KSを用いて、2次記憶部131に格納されている秘密情報DBファイルを復号し、その結果を主記憶部120のドメインB上に秘密情報DB123として展開する(ステップS22)。そして、展開後、秘密情報DB復号鍵KSを消去する(ステップS23)。以下、図4に示した第1の実施形態と同様、ステップS9〜S10が実行されてユーザ認証に必要な認証情報が生成され、さらにユーザ認証(ステップS11)及びサービス提供(ステップS12)が実行される。
【0041】
なお、ステップS2〜S6,S21〜S23は、クライアント装置101の起動時、例えばステップS1の直後に実行されるものとするが、アプリケーションの実行(ステップS9)の直前に実行するものとしてもよい。また、ドメインA上で実行される主OSは、ステップS1からS9の間の任意のタイミングで起動され、CPU110により実行されるものとする。
【0042】
以上説明した第2の実施形態に係る認証情報生成システムによれば、秘密情報は2次記憶部131に平文のままではなく、暗号化されて格納され、ユーザがユーザ識別情報を入力することにより、秘密情報サーバ301より得られる復号鍵KSによって随時復号されて主記憶部120のドメインB上に展開され、認証処理部122に一時的に提供されるものとなっており、よって悪意のプログラムによって認証に必要な秘密情報が読み出されるといったことを防止することができ、また例えばクライアント装置101が盗難にあった場合でも秘密情報がただちに漏洩することはない。
【0043】
なお、この第2の実施形態では、秘密情報DBすべてをクライアント装置101の起動時にダウンロードする必要がなく、2次記憶部131上に保持された秘密情報DBファイルを復号するための鍵のみをダウンロードすればよいので、秘密情報DBが大きくなった場合にダウンロード時間を短縮することができる特徴がある。また、第1の実施形態と異なり、秘密情報DBそのものを秘密情報サーバ301に保存しないため、秘密情報サーバに対する秘匿性が保たれることがさらなる特徴である。
【0044】
〈第3の実施形態〉
次に、この発明の第3の実施形態について図8〜10を参照して説明する。なお、前述した第1の実施形態と同一の構成及び手順については同一の符号を付し、その説明を省略する。
【0045】
図8は第3の実施形態を説明するための図であり、この第3の実施形態では図1に示したシステム構成と異なり、秘密情報サーバ300は存在せず、図1におけるクライアント装置100に代えてクライアント装置102が存在している。
【0046】
図9はクライアント装置102の構成を示したものであり、クライアント装置102は図2に示した第1の実施形態のクライアント装置100の構成に加えて、秘密情報管理部170を具備するものとなっている。
秘密情報管理部170は主記憶部120と相互に独立した実行環境とされ、主記憶部120から送信されるユーザ識別情報に基づき、ユーザの正当性を確認する機能を有し、ユーザの正当性が確認された場合に主記憶部120に送信するユーザの秘密情報DBを保持している。
【0047】
図10に示したように、この発明の第3の実施形態における動作手順は、図4に示した第1の実施形態における動作手順と同様であり、相違点はクライアント装置102の主記憶部120と通信し、秘密情報DBを取得する対象が秘密情報サーバ300ではなく、クライアント装置102の秘密情報管理部170となっている点である。このような構成及び手順とすることで、この第3の実施形態では秘密情報サーバ300と通信を行うことなく、秘密情報DBを主記憶部120のドメインB上に展開することができる。
【0048】
なお、ステップS3で確立した保護チャネルを通した主記憶部120上の認証処理部122と秘密情報管理部170との間の通信は、ドメイン管理部121の管理下で行われ、ドメインA上の構成要素とは独立に、互いに干渉することなく実行されるものとする。より具体的には例えばI/Oの仮想化を用いて実現される。
【0049】
〈第4の実施形態〉
次に、この発明の第4の実施形態について説明する。
第4の実施形態では図1に示した第1の実施形態のシステム構成と同様、ネットワーク上の秘密情報サーバ300と、ユーザが使用するクライアント装置102とによって認証情報生成システムが構成される。
【0050】
クライアント装置102の構成は図9に示した第3の実施形態のクライアント装置102の構成と同じである。但し、クライアント装置102の秘密情報管理部170には、第4の実施形態では各クライアント装置102に固有の鍵KSj(j=1,2,・・・)が格納される。
【0051】
秘密情報サーバ300の構成は図3に示した第1の実施形態の秘密情報サーバ300の構成と同じである。但し、秘密情報サーバ300の秘密情報管理部330には、第4の実施形態では各ユーザの秘密情報DBを所定の鍵で暗号化した情報(K′と記す)と、秘密情報DB復号鍵KSを所定の鍵で暗号化した情報(KSj′と記す)が格納されるものとする。
【0052】
ここで、K′は第2の実施形態において、2次記憶部131の秘密情報DBファイルに格納される情報と同一であり、秘密情報DB復号鍵KSを用いて復号することで秘密情報DBが得られるものとする。また、KSj′は上述の鍵KSjを用いて復号することで、秘密情報DB復号鍵KSが得られるものとする。
【0053】
以下、図11を参照して、この発明の第4の実施形態に係る認証情報生成システムの動作手順について説明する。なお、第4の実施形態における動作手順は図7に示した第2の実施形態の動作手順と同様であり、相違点は以下のとおりである。
【0054】
ステップS41において、ユーザ識別情報に加え、端末識別情報が秘密情報サーバ300に送信される。端末識別情報とはクライアント装置102を識別するための情報である。なお、ステップS3での保護チャネル確立時にクライアント装置102を認証する場合には、その認証結果をもって端末識別情報に代えてもよい。
【0055】
ステップS42において、ステップS6で正当性が確認されたユーザに対応する、暗号化された秘密情報DB(K′)及びステップS41(またはステップS3)で特定されたクライアント装置102に対応する、暗号化された秘密情報DB復号鍵KSj′がクライアント装置102に送信される。
【0056】
ステップS43において、クライアント装置102の秘密情報管理部170から読み出したクライアント装置102に固有の鍵KSjを用いて、暗号化された秘密情報DB復号鍵KSj′を復号し、秘密情報DB復号鍵KSを得る。さらに、秘密情報DB復号鍵KSを用いて、暗号化された秘密情報DB(K′)を復号し、秘密情報DBを得て、主記憶部120のドメインBに秘密情報DB123として展開する。
【0057】
そして、展開後、ステップS44において、秘密情報DB復号鍵KS及び暗号化された秘密情報DB復号鍵KSj′を消去する。
なお、暗号化された秘密情報DB復号鍵KSj′はユーザ毎に用意される秘密情報DB及び秘密情報DB復号鍵KSに対して、さらに個々のクライアント装置102に対応してそれぞれ用意される。
【0058】
上記においては、暗号化された秘密情報DB(K′)を復号するために必要な鍵KSjはクライアント装置102に格納されているため、秘密情報サーバ300は秘密情報DBの内容を知ることはできない。また、複数のクライアント装置102間で秘密情報DBを共有でき、さらに相互にバックアップとして利用できる。
【0059】
以上より、この第4の実施形態では秘密情報サーバ300に対する秘匿性を持たせつつ、複数クライアント装置間での秘密情報DBの共有とバックアップが可能となり、第1の実施形態及び第2の実施形態の特徴を兼ね備えたシステムとすることができる。
【図面の簡単な説明】
【0060】
【図1】この発明の第1の実施形態に係る認証情報生成システムの構成を説明するための図。
【図2】図1におけるクライアント装置の構成を示す図。
【図3】図1における秘密情報サーバの構成を示す図。
【図4】この発明の第1の実施形態に係る認証情報生成システムの動作手順を説明するためのシーケンス図。
【図5】この発明の第2の実施形態に係る認証情報生成システムにおけるクライアント装置の構成を示す図。
【図6】この発明の第2の実施形態に係る認証情報生成システムにおける秘密情報サーバの構成を示す図。
【図7】この発明の第2の実施形態に係る認証情報生成システムの動作手順を説明するためのシーケンス図。
【図8】この発明の第3の実施形態の構成を説明するための図。
【図9】図8におけるクライアント装置の構成を示す図。
【図10】図9に示したクライアント装置の動作手順を説明するためのシーケンス図。
【図11】この発明の第4の実施形態に係る認証情報生成システムの動作手順を説明するためのシーケンス図。

【特許請求の範囲】
【請求項1】
ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成するシステムであって、
ネットワーク上の秘密情報サーバと、ユーザが使用するクライアント装置とによって構成され、
前記秘密情報サーバは前記クライアント装置から受信したユーザ識別情報に基づき、ユーザの正当性を確認する機能と、各ユーザの秘密情報DBを保持し、正当性が確認されたユーザのクライアント装置に、そのユーザの秘密情報DBを送信する機能とを有し、
前記クライアント装置はその主記憶部にアプリケーションや主OSを実行するドメインAと、そのドメインAと相互に独立した実行環境であるドメインBとを備え、
前記ドメインBにおいて、前記秘密情報サーバから受信した秘密情報DBが展開され、その秘密情報DBを用いて前記認証情報が生成されることを特徴とする認証情報生成システム。
【請求項2】
ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成するシステムであって、
ネットワーク上の秘密情報サーバと、ユーザが使用するクライアント装置とによって構成され、
前記秘密情報サーバは前記クライアント装置から受信したユーザ識別情報に基づき、ユーザの正当性を確認する機能と、各ユーザの秘密情報DB復号鍵を保持し、正当性が確認されたユーザのクライアント装置に、そのユーザの秘密情報DB復号鍵を送信する機能とを有し、
前記クライアント装置はアプリケーションや主OSを実行するドメインAと、そのドメインAと相互に独立した実行環境であるドメインBとを備える主記憶部と、所定の鍵で暗号化された秘密情報DBが格納された2次記憶部とを有し、
前記クライアント装置は前記秘密情報サーバから受信した秘密情報DB復号鍵によって前記2次記憶部に格納されている秘密情報DBを復号して、その結果を前記ドメインB上に展開すると共に、前記秘密情報DB復号鍵を消去し、
前記ドメインBにおいて前記展開された秘密情報DBを用いて前記認証情報が生成されることを特徴とする認証情報生成システム。
【請求項3】
ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成するシステムであって、
ネットワーク上の秘密情報サーバと、ユーザが使用するクライアント装置とによって構成され、
前記秘密情報サーバは前記クライアント装置から受信したユーザ識別情報に基づき、ユーザの正当性を確認する機能と、所定の鍵で暗号化された各ユーザの秘密情報DB及び所定の鍵で暗号化された各クライアント装置の秘密情報DB復号鍵を保持し、正当性が確認されたユーザのクライアント装置に、そのユーザの暗号化された秘密情報DB及びそのクライアント装置の暗号化された秘密情報DB復号鍵を送信する機能とを有し、
前記クライアント装置はアプリケーションや主OSを実行するドメインAと、そのドメインAとを相互に独立した実行環境であるドメインBとを備える主記憶部と、その主記憶部と相互に独立した実行環境である秘密情報管理部とを有し、その秘密情報管理部にクライアント装置固有の鍵が格納されており、
前記クライアント装置は前記秘密情報管理部に格納されている鍵を用いて前記秘密情報サーバから受信した前記暗号化された秘密情報DB復号鍵を復号し、その復号した秘密情報DB復号鍵を用いて前記秘密情報サーバから受信した前記暗号化された秘密情報DBを復号して、その結果を前記ドメインB上に展開すると共に、前記秘密情報DB復号鍵及び前記暗号化された秘密情報DB復号鍵を消去し、
前記ドメインBにおいて前記展開された秘密情報DBを用いて前記認証情報が生成されることを特徴とする認証情報生成システム。
【請求項4】
請求項1乃至3記載のいずれかの認証情報生成システムにおいて、
前記秘密情報サーバと前記クライアント装置とが、相互に認証することにより確立した保護チャネルを通して通信を行うことを特徴とする認証情報生成システム。
【請求項5】
請求項4記載の認証情報生成システムにおいて、
前記クライアント装置がネットワークに接続する際に行う認証に基づき、保護チャネルを確立することを特徴とする認証情報生成システム。
【請求項6】
ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成する方法であって、
ユーザが使用するクライアント装置がネットワーク上の秘密情報サーバにユーザ識別情報を送信するステップと、
前記秘密情報サーバが受信したユーザ識別情報に基づき、ユーザの正当性を確認し、正当性が確認されたユーザのクライアント装置に、そのユーザの秘密情報DBを送信するステップと、
前記クライアント装置がアプリケーションや主OSを実行する主記憶部のドメインAと相互に独立した実行環境である主記憶部のドメインBに、受信した秘密情報DBを展開し、その秘密情報DBを用いて前記認証情報を生成するステップとを含むことを特徴とする認証情報生成方法。
【請求項7】
ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成する方法であって、
ユーザが使用するクライアント装置がネットワーク上の秘密情報サーバにユーザ識別情報を送信するステップと、
前記秘密情報サーバが受信したユーザ識別情報に基づき、ユーザの正当性を確認し、正当性が確認されたユーザのクライアント装置に、そのユーザの秘密情報DB復号鍵を送信するステップと、
前記クライアント装置が受信した秘密情報DB復号鍵によって2次記憶部に格納されている秘密情報DBを復号して、その結果をアプリケーションや主OSを実行する主記憶部のドメインAと相互に独立した実行環境である主記憶部のドメインBに展開すると共に、前記秘密情報DB復号鍵を消去するステップと、
前記クライアント装置が前記ドメインBにおいて前記展開された秘密情報DBを用いて前記認証情報を生成するステップとを含むことを特徴とする認証情報生成方法。
【請求項8】
ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報を生成する方法であって、
ユーザが使用するクライアント装置がネットワーク上の秘密情報サーバにユーザ識別情報を送信するステップと、
前記秘密情報サーバが受信したユーザ識別情報に基づき、ユーザの正当性を確認し、正当性が確認されたユーザのクライアント装置に、そのユーザの暗号化された秘密情報DB及びそのクライアント装置の暗号化された秘密情報DB復号鍵を送信するステップと、
前記クライアント装置が主記憶部と相互に独立した実行環境である秘密情報管理部に格納されているクライアント装置固有の鍵を用いて前記秘密情報サーバから受信した前記暗号化された秘密情報DB復号鍵を復号し、その復号した秘密情報DB復号鍵を用いて前記秘密情報サーバから受信した前記暗号化された秘密情報DBを復号して、その結果を前記主記憶部のアプリケーションや主OSを実行するドメインAと相互に独立した実行環境であるドメインBに展開すると共に、前記秘密情報DB復号鍵及び前記暗号化された秘密情報DB復号鍵を消去するステップと、
前記クライアント装置が前記ドメインBにおいて前記展開された秘密情報DBを用いて前記認証情報を生成するステップとを含むことを特徴とする認証情報生成方法。
【請求項9】
ネットワークを介してサービス提供装置と接続され、認証を必要とするサービスの提供をサービス提供装置から受けるクライアント装置であって、
主記憶部と相互に独立した実行環境である秘密情報管理部を備え、
前記秘密情報管理部は前記主記憶部から送信されるユーザ識別情報に基づき、ユーザの正当性を確認する機能を有し、ユーザの正当性が確認された場合に前記主記憶部に送信するユーザの秘密情報DBを保持しており、
前記主記憶部はアプリケーションや主OSを実行するドメインAと、そのドメインAと相互に独立した実行環境であるドメインBとを備え、
前記ドメインBにおいて、前記秘密情報管理部から送信される秘密情報DBが展開され、その秘密情報DBを用いて認証を必要とするサービスの提供をサービス提供装置から受ける際にサービス提供装置に送信する認証情報を生成することを特徴とするクライアント装置。
【請求項10】
ユーザ認証のためにネットワーク上のサービス提供装置に送信する認証情報をクライアント装置において生成する方法であって、
主記憶部が、その主記憶部と相互に独立した実行環境である秘密情報管理部にユーザ識別情報を送信するステップと、
前記秘密情報管理部が受信したユーザ識別情報に基づき、ユーザの正当性を確認し、正当性が確認された場合にユーザの秘密情報DBを前記主記憶部に送信するステップと、
前記主記憶部がアプリケーションや主OSを実行するドメインAと相互に独立した実行環境であるドメインBに、受信した秘密情報DBを展開し、その秘密情報DBを用いて前記認証情報を生成するステップとを含むことを特徴とする認証情報生成方法。
【請求項11】
請求項10に記載した認証情報生成方法をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2009−211407(P2009−211407A)
【公開日】平成21年9月17日(2009.9.17)
【国際特許分類】
【出願番号】特願2008−53817(P2008−53817)
【出願日】平成20年3月4日(2008.3.4)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】