(57)【要約】【課題】  安全に機密情報を配布することができる装置や方法を提供する。【解決手段】  管理装置１０は、情報処理装置に対して機密情報を配布する装置であり、ユーザを識別するためのユーザ識別情報を情報処理装置に送信する送信手段３０と、情報処理装置がユーザ識別情報を用いて認証装置に問い合わせ、該認証装置から取得したユーザを証明する証明情報を使用して暗号化した一度だけ使用可能な認証情報を受信する受信手段３１と、暗号化された認証情報を復号する復号手段３２と、復号された認証情報を使用して機密情報を暗号化する暗号化手段３３とを含み、送信手段３０は、暗号化された機密情報を情報処理装置に送信することにより配布する。【選択図】  図４
2017041179.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置に対して機密情報を配布する管理装置であって、
ユーザを識別するためのユーザ識別情報を前記情報処理装置に送信する送信手段と、
前記情報処理装置が前記ユーザ識別情報を用いて認証装置に問い合わせ、該認証装置から取得した前記ユーザを証明する証明情報を使用して暗号化した一度だけ使用可能な認証情報を受信する受信手段と、
暗号化された前記認証情報を復号する復号手段と、
復号された前記認証情報を使用して前記機密情報を暗号化する暗号化手段とを含み、
前記送信手段は、暗号化された前記機密情報を前記情報処理装置に送信することにより配布する、管理装置。
【請求項２】
前記送信手段は、前記ユーザ識別情報を前記認証装置に送信し、前記ユーザの認証を行い、前記受信手段は、前記ユーザが認証された場合に前記認証装置が発行した前記情報処理装置と通信する資格を有することを示す資格情報を受信し、前記送信手段は、受信された前記資格情報を前記情報処理装置に送信して、該情報処理装置との間で通信を確立する、請求項１に記載の管理装置。
【請求項３】
前記受信手段は、前記情報処理装置に対して前記機密情報を配布した後に、該情報処理装置からの該機密情報を使用した通信が可能か否かを検証する要求を受信し、前記暗号化手段は、前記検証する要求を受けて、前記機密情報を使用して暗号化し、前記送信手段により前記情報処理装置へ送信させ、該情報処理装置に復号できるか否かを検証させる、請求項１または２に記載の管理装置。
【請求項４】
前記受信手段は、前記情報処理装置から検証結果を受信し、前記送信手段は、前記検証結果に応じて、前記機密情報を使用した通信が成功したか否かを、前記情報処理装置に通知する、請求項３に記載の管理装置。
【請求項５】
前記機密情報は、前記情報処理装置が通信に使用する公開鍵と秘密鍵の組であり、前記証明情報は、前記ユーザの公開鍵を含み、前記管理装置には、前記ユーザの公開鍵に対応する該ユーザの秘密鍵を格納する記憶装置が接続され、
前記受信手段は、前記情報処理装置から前記ユーザの公開鍵により暗号化された前記認証情報を受信し、前記復号手段は、暗号化された前記認証情報を、前記記憶装置から取得した前記ユーザの秘密鍵で復号する、請求項１〜４のいずれか１項に記載の管理装置。
【請求項６】
請求項１〜５のいずれか１項に記載の管理装置と、前記管理装置から機密情報の配布を受ける情報処理装置とを含む、情報配布システム。
【請求項７】
管理装置から機密情報の配布を受ける情報処理装置であって、
前記管理装置からユーザを識別するためのユーザ識別情報を受信する受信手段と、
前記ユーザ識別情報を用いて認証装置に問い合わせ、該認証装置から前記ユーザを証明する証明情報を取得する問い合わせ手段と、
一度だけ使用可能な認証情報を生成する生成手段と、
前記ユーザを証明する証明情報を使用して前記認証情報を暗号化する暗号化手段と、
暗号化された前記認証情報を前記管理装置に送信する送信手段とを含み、
前記受信手段は、前記管理装置において前記認証情報を使用して暗号化された前記機密情報を受信することにより該機密情報の配布を受ける、情報処理装置。
【請求項８】
前記認証情報を使用して暗号化された前記機密情報を復号する復号手段を含む、請求項７に記載の情報処理装置。
【請求項９】
前記受信手段は、前記管理装置から、前記認証装置が発行した前記情報処理装置と通信する資格を有することを示す資格情報を受信し、受信した前記資格情報を確認して、該管理装置との間で通信を確立する、請求項７または８に記載の情報処理装置。
【請求項１０】
前記管理装置から前記機密情報の配布を受けた後に、該機密情報を使用した通信が可能か否かを検証する要求を該管理装置に送信し、前記管理装置において前記機密情報を使用して暗号化された情報を受信して復号できるか否かを検証する検証手段を含む、請求項７〜９のいずれか１項に記載の情報処理装置。
【請求項１１】
前記送信手段は、前記検証手段が検証した検証結果を前記管理装置に送信し、前記受信手段は、前記管理装置が通知した前記機密情報を使用した通信が成功したか否かの結果を受信し、
前記情報処理装置は、前記受信手段が受信した結果を前記ユーザに対して通知する通知手段をさらに含む、請求項１０に記載の情報処理装置。
【請求項１２】
前記機密情報は、前記情報処理装置が通信に使用する公開鍵と秘密鍵の組であり、前記証明情報は、前記ユーザの公開鍵を含み、
前記暗号化手段は、前記ユーザの公開鍵で前記認証情報を暗号化する、請求項７〜１１のいずれか１項に記載の情報処理装置。
【請求項１３】
請求項７〜１２のいずれか１項に記載の情報処理装置と、前記情報処理装置に機密情報を配布する管理装置とを含む、情報配布システム。
【請求項１４】
管理装置から情報処理装置へ機密情報を配布する情報配布方法であって、
前記管理装置からユーザを識別するためのユーザ識別情報を前記情報処理装置に送信するステップと、
前記情報処理装置が前記ユーザ識別情報を用いて認証装置に前記ユーザについて問い合わせるステップと、
前記情報処理装置が前記認証装置から前記ユーザを証明する証明情報を取得するステップと、
前記情報処理装置が一度だけ使用可能な認証情報を生成するステップと、
前記情報処理装置が前記証明情報を使用して前記認証情報を暗号化するステップと、
前記情報処理装置から暗号化した前記認証情報を前記管理装置に送信するステップと、
前記管理装置において暗号化された前記認証情報を復号するステップと、
前記管理装置が復号された前記認証情報を使用して前記機密情報を暗号化するステップと、
前記管理装置から暗号化された前記機密情報を前記情報処理装置に送信することにより配布するステップとを含む、情報配布方法。
【請求項１５】
請求項１４に記載の各ステップを含む情報配布処理をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に対して安全に機密情報を配布する管理装置、管理情報から安全に機密情報を取得する情報処理装置、管理装置と情報処理装置とを含む情報配布システム、その情報配布方法およびその方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
近年、企業内において公開鍵暗号基盤(PKI)を利用した安全なWebサービスを構築することが増えてきている。このようなWebサービスでは、SSL(Secure Sockets Layer)やS/MINE等の公開鍵暗号方式を利用するため、秘密鍵と公開鍵の対を複数管理するためのファイル（キーストア）が必要となる。それ故、Webサービスを導入する際、このキーストアをサーバに配布しなければならない。
【０００３】
キーストアは、秘密鍵を含むことから、企業内においては最重要となる機密情報である。しかしながら、キーストアの配布は、手動で行うほかないため、その過程において無駄なコピーが作成されたり、安全ではないネットワークを介して送信されたりすることがある。企業で利用するWebサービスは、フェイルオーバ機能（障害が発生した際に代替システムが自動的に引き継ぐ機能）を備えるべく、複数台から構成されていることが多い。このため、１台１台に手動でキーストアを配布するのは手間がかかる。
【０００４】
そこで、暗号鍵や証明書等の機密情報の配布を自動で実施する技術が提案されている（例えば、特許文献１参照）。この技術では、鍵配備ポイントに対して配布すべき鍵のマッピングに基づき、自動的に鍵を鍵配備ポイントに配布する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１では、機密情報の配布を自動で実施することについて記載しているが、安全に配布するための具体的な実現方法について記載していない。このため、安全に機密情報を配布することができる装置や方法等の提供が望まれていた。
【課題を解決するための手段】
【０００６】
本発明は、上記課題に鑑み、情報処理装置に対して機密情報を配布する管理装置であって、ユーザを識別するためのユーザ識別情報と機密情報を送付する旨の要求とを情報処理装置に送信する送信手段と、情報処理装置がユーザ識別情報を用いて認証装置に問い合わせ、該認証装置から取得したユーザを証明する証明情報を使用して暗号化した一度だけ使用可能な認証情報を受信する受信手段と、暗号化された認証情報を復号する復号手段と、復号された認証情報を使用して機密情報を暗号化する暗号化手段とを含み、送信手段は、暗号化された機密情報を情報処理装置に送信することにより配布する、管理装置が提供される。
【発明の効果】
【０００７】
本発明によれば、安全に機密情報を配布することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態の情報配布システムの全体構成を示した図。
【図２】情報配布システムが備える管理装置のハードウェア構成を示した図。
【図３】情報配布システムの動作概要を説明する図。
【図４】管理装置の機能ブロック図。
【図５】認証装置の機能ブロック図。
【図６】サーバの機能ブロック図。
【図７】各装置が保持する情報について説明する図。
【図８】情報配布システムが行う処理の流れを示したシーケンス図。
【図９】機密情報の配布の流れを示したフローチャート。
【発明を実施するための形態】
【０００９】
図１は、本実施形態の情報配布システムの全体構成を示した図である。情報配布システムは、機器から機器へ情報を安全に配布する処理を行うシステムである。配布する情報は、外部へ漏洩しないように秘密管理される重要な機密情報である。その機密情報としては、例えば、暗号化して通信を行う際に使用する秘密鍵と公開鍵の組（キーペア）を管理するためのキーストアを挙げることができる。また、機密情報としては、SSL通信で信頼する認証局(CA)の証明書等を管理するためのファイル（トラストストア）も挙げることができる。なお、これらは一例であり、機密情報としてはこれらに限定されるものではない。以下、機密情報をキーストアおよびトラストストアとして説明するが、安全に配布しなければならない機密情報は、キーストアである。
【００１０】
情報配布システムは、機密情報を配布する機器として管理装置１０と、その機密情報の配布を受ける機器としてサーバ１１と、認証装置１２とを含んで構成される。図１では、それぞれが１台ずつしか示されていないが、それぞれが２台以上から構成されていてもよい。管理装置１０とサーバ１１と認証装置１２は、企業システム内で構築されたイントラネット等のネットワークを介して接続されている。なお、ネットワークは、イントラネットに限られるものではなく、エクストラネットやインターネットであってもよく、有線ネットワークおよび無線ネットワークのいずれであってもよい。
【００１１】
管理装置１０は、サーバ１１を管理するための装置で、機密情報としてのキーストアおよびトラストストアを保持している。管理装置１０は、ユーザの一人であるシステムの管理者により操作され、管理装置１０が保持している機密情報をサーバ１１に配布する処理を行う。サーバ１１が複数台存在する場合、管理装置１０は、機密情報を適切なサーバ１１に配布する。
【００１２】
サーバ１１は、企業システム内でイントラネットを経由したWebサービスを提供する。Webサービスは、図示しないクライアントからの要求を受け、そのクライアントに対して提供される。クライアントは、イントラネット等のネットワークに接続されたPC等である。ネットワークを介して安全な通信を行うために、SSLやS/MINE等の暗号化してデータを送受信する仕組みが使用される。その暗号化してデータを送受信する際に、キーストアやトラストストアで管理される鍵や証明書が使われる。このため、管理装置１０は、必要なキーストアやトラストストアをサーバ１１に配布し、サーバ１１は、そのキーストアやトラストストアの配布を受ける。
【００１３】
認証装置１２は、ユーザやサーバ１１の証明書を管理する装置で、KDC(Key Distribution Center)としても動作する。これらの証明書は、ユーザやサーバ１１の正当性を証明する証明情報である。KDCは、ケルベロス認証を行う認証情報を一元管理するサーバである。ケルベロス認証は、ユーザやサーバ１１の身元を確認するためのネットワーク認証方式の１つで、１回の認証で複数のサービスを利用できるようにする仕組みを提供する。この仕組みは、シングルサインオンと呼ばれている。認証情報は、認証に使用される、ユーザを識別するためのユーザ識別情報であるユーザ名、機器を識別するための機器識別情報であるサーバ名、パスワード等である。
【００１４】
KDCは、ユーザからの認証を受け付ける認証サーバ(AS)と、サーバ１１へアクセスする資格を有することを示す資格情報としてのサービスチケットを発行するチケット発行サーバ(TGS)とを含んで構成される。
【００１５】
情報配布システムで行われる機密情報の配布について説明する前に、情報配布システムを構成する各装置のハードウェア構成について簡単に説明しておく。管理装置１０は、図２に示すように、ハードウェアとしてCPU２０、ROM２１、RAM２２、HDD２３、通信I/F２４、外部記憶I/F２５、入出力I/F２６、入力装置２７、表示装置２８を含んで構成される。CPU２０等は、バス２９を介して相互に接続され、情報のやりとりを行う。なお、サーバ１１や認証装置１２も同様の構成とすることができるため、これらの装置の説明は省略する。
【００１６】
CPU２０は、管理装置１０本体の動作を統括的に制御する。CPU２０は、RAM２２を作業領域として使用し、ROM２１またはHDD２３に格納されたプログラムを実行することにより、装置の起動やキーストア等の配布を行う。
【００１７】
通信I/F２４は、ネットワークに接続するためのインタフェースで、外部記憶I/F２５は、後述する補助記憶装置を接続するためのインタフェースである。入出力I/F２６は、入力装置２７や表示装置２８をバス２９に接続するためのインタフェースである。入出力I/F２６は、入力装置２７から入力された情報をCPU２０へ送り、CPU２０から受け付けた情報を表示装置２８に送り、出力させる。入力装置２７は、マウスやキーボード等であり、表示装置２８は、CRT(Cathode Ray Tube)や液晶ディスプレイ等である。
【００１８】
以下、情報配布システムで行われる機密情報の配布について詳細に説明するが、まず、図３を参照して、情報配布システムの動作概要について説明する。このシステムの管理者は、管理装置１０を操作し、機密情報の配布処理を実施するために、例えばログイン画面を表示させ、ユーザ名およびパスワードを入力する。入力するユーザ情報は、ユーザIDや生体情報等であってもよい。入力されたユーザ名およびパスワードは、認証装置１２へ送られる。認証装置１２は、自身が保持し管理する認証情報の中に、一致するユーザ名およびパスワードがある場合、認証成功と判断し、認証が成功した場合、サービスチケットを管理装置１０に対して発行する。認証が失敗した場合は、失敗した旨を管理装置１０に通知し、管理者にその旨を知らせる。
【００１９】
管理装置１０は、認証装置１２から受信したサービスチケットをサーバ１１へ送信する。サーバ１１は、このサービスチケットの送付を受け、サーバ１１にアクセスする資格を有することを確認し、管理装置１０との接続（セッション）を確立する。サービスチケットは、管理装置１０とサーバ１１との間で共通に使用される暗号鍵としてのトークンを含む。管理装置１０は、セッションを確立した後、機密情報を送付する旨の要求（機密情報送付要求）と、トラストストアと、認証に使用したユーザ名とを、トークンにより暗号化し、サーバ１１に送信する。このトークンで暗号化して情報を送受信する通信は、ケルベロス暗号化通信と呼ばれ、ログインしてセッションを確立し、ログオフしてセッションを終了するまで行われる。
【００２０】
サーバ１１は、KDCに対してサービスあるいはサーバ１１を認証する際に使用するサービスアカウント情報を保持し、そのサービスアカウント情報を認証装置１２へ送信してセッションを確立する。これにより、サーバ１１と認証装置１２との間でケルベロス暗号化通信が行われる。サービスアカウント情報は、サービス名やサーバ名等のアカウント情報と、パスワードとを含み、一般的にKeytabファイルに格納される。このKeytabファイルは、手動でサーバ１１に設定してもよいし、管理装置１０が上記の機密情報送付要求等とともに送信し、サーバ１１が自動で設定することもできる。
【００２１】
サーバ１１は、そのセッションを確立した後、管理装置１０から取得したトラストストアとユーザ名とを用いて、機密情報送付要求を発行した管理者をSSL通信にて認証装置１２に対して問い合わせる。トラストストアには、信頼する機器の証明書として、管理装置１０や認証装置１２の証明書が含まれており、それらの証明書には、それらの公開鍵が含まれている。サーバ１１は、その認証装置１２の公開鍵を使用して、認証装置１２との間でSSL通信を行う。
【００２２】
認証装置１２は、SSL接続が成功した場合、問い合わせの内容を確認する。ここでは、問い合わせの内容が、その管理者が認証されているかの問い合わせであるため、ユーザ検索を行い、検索できたか否かを検索結果としてサーバ１１に送信する。認証装置１２は、SSL接続が失敗した場合、失敗した旨をサーバ１１に通知する。
【００２３】
サーバ１１は、検索結果で検索できた場合、認証装置１２から管理者の証明書（管理者アカウント証明書）を取得し、管理者アカウント証明書を使用してSSL通信により機密情報の取得要求を管理装置１０に送信する。具体的には、管理者アカウント証明書に含まれる管理者の公開鍵を使用して、機密情報の取得要求を暗号化し、管理装置１０に送信する。このとき、サーバ１１は、一度だけ使用可能な認証情報としての使い捨てのパスワード（ワンタイムパスワード）を生成し、ワンタイムパスワードも同時にSSL通信により送信する。ここでは、機密情報の取得要求もSSL通信により送信しているが、機密情報の取得要求の送信は、SSL通信でなくてもよい。
【００２４】
管理装置１０は、管理者の公開鍵に対応する秘密鍵を格納した補助記憶装置が接続されており、その補助記憶装置からその秘密鍵を取り出し、受信した機密情報の取得要求およびワンタイムパスワードを復号する。そして、管理装置１０は、ワンタイムパスワードを使用してキーストアを暗号化し、サーバ１１に送信する。
【００２５】
サーバ１１は、管理装置１０に送信したワンタイムパスワードと同じものを保持しており、保持しているワンタイムパスワードを使用して暗号化されたキーストアを復号し、キーストアを取り出す。サーバ１１は、その取り出したキーストアが本当に使えるかどうかを確認するために、管理装置１０に対してコネクションテストの要求を行う。その際、サーバ１１は、キーストアに含まれるキーペアのうち、秘密鍵を取り出し、使用の準備を行う。
【００２６】
管理装置１０は、サーバ１１に送信したキーストアと同じものを保持しており、コネクションテスト要求を受け、保持しているキーストアに含まれる公開鍵を用いて、SSL接続の確立をサーバ１１に要求する。これにより、管理装置１０は、サーバ１１に対してSSL通信を試みる。
【００２７】
管理装置１０は、例えばSSL通信で共通に使用する共通鍵を、保持しているキーストアに含まれる公開鍵で暗号化して、サーバ１１に送信する。サーバ１１は、それを受信し、準備した秘密鍵により復号する。サーバ１１は、復号できたか否かを管理装置１０に通知し、復号できた場合、コネクションテストが成功し、共通鍵を使用したSSL通信接続を確立する。管理装置１０は、このSSL通信接続が確立したことを受けて、サーバ１１に成功通知を送る。一方、失敗した場合、管理装置１０は、サーバ１１に失敗通知を送る。
【００２８】
このように、管理装置１０は、認証装置１２に対して認証したユーザ情報を提供し、サーバ１１は、認証装置１２に対してそのユーザの確認を行う。サーバ１１は、その確認によってそのユーザが信頼できることを確認した後、暗号化したワンタイムパスワードを管理装置１０に送信する。管理装置１０は、そのワンタイムパスワードを使用し、機密情報を暗号化してサーバ１１に送信し、配布する。このような処理を行うことで、正当なユーザでなければ機密情報を配布することができず、また、配布する際にワンタイムパスワードで暗号化して配布するため、管理装置１０からサーバ１１へ安全に機密情報を配布することができる。
【００２９】
全体の大まかな流れは、以上の通りであるが、次に、各装置が備える機能、詳細な処理の流れについて説明する。図４は、管理装置１０の機能ブロック図である。管理装置１０は、機能手段として、送信手段３０、受信手段３１、復号手段３２、暗号化手段３３、記憶手段３４を備える。これらの機能は、CPU２０がHDD２３に記憶されたプログラムを読み出し実行することにより、また、HDD２３や通信I/F２４により実現される。
【００３０】
送信手段３０は、管理者により入力されたユーザ名やパスワードを認証装置１２に送信し、サービスチケットや機密情報送付要求等をサーバ１１に送信する。また、送信手段３０は、暗号化されたキーストアや、コネクションテストの成功通知あるいは失敗通知等もサーバ１１に送信する。
【００３１】
受信手段３１は、認証装置１２からサービスチケットを受信し、サーバ１１から暗号化された機密情報の取得要求およびワンタイムパスワードや、コネクションテストの結果等を受信する。
【００３２】
復号手段３２は、暗号化された機密情報の取得要求およびワンタイムパスワード等を、管理装置１０が保持し管理する公開鍵や秘密鍵、管理装置１０に接続された補助記憶装置に格納された秘密鍵等を使用して復号する。暗号化手段３３は、復号手段３２とは反対に、それらの公開鍵や秘密鍵等を使用して、キーストア等を暗号化する。
【００３３】
記憶手段３４は、管理者が登録し、サーバ１１に配布するための機密情報を記憶する。機密情報は、キーストアおよびトラストストアである。キーストアやトラストストアは、そのまま記憶されていてもよいし、安全性を高めるために、管理者が指定するパスワードやシステムが自動生成するパスワードにより暗号化されていてもよい。
【００３４】
図５は、サーバ１１の機能ブロック図である。サーバ１１は、機能手段として、受信手段４０、問い合わせ手段４１、送信手段４２、暗号化手段４３、復号手段４４、生成手段４５、検証手段４６、記憶手段４７、通知手段４８を備える。これらの手段も、管理装置１０と同様、CPUがHDDに記憶されたプログラムを読み出し実行することにより、また、HDDや通信I/F等により実現される。
【００３５】
受信手段４０は、管理装置１０からサービスチケット、暗号化された機密情報送付要求、暗号化された機密情報、コネクションテストの成功通知あるいは失敗通知等を受信する。
【００３６】
問い合わせ手段４１は、受信手段４０および送信手段４２を介して、認証装置１２に対して機密情報送付要求を発行した管理者の問い合わせを行う。また、問い合わせ手段４１は、受信手段４０および送信手段４２を介して、管理装置１０が送信したサービスチケット等が正当なものかどうかを認証装置１２に対して問い合わせる。
【００３７】
送信手段４２は、暗号化された機密情報送付指示およびワンタイムパスワードや、コネクションテストの要求等を管理装置１０に送信する。また、送信手段４２は、問い合わせ手段４１が認証装置１２に対して問い合わせる際に必要な情報、例えばユーザ名を認証装置１２に送信する。
【００３８】
暗号化手段４３は、管理装置１０および認証装置１２との通信において送信手段４２が送信する情報を、管理装置１０および認証装置１２から取得した公開鍵や秘密鍵等で暗号化する。復号手段４４は、その反対に、管理装置１０および認証装置１２との通信において受信手段４０が受信した暗号化された情報を、管理装置１０および認証装置１２から取得した公開鍵や秘密鍵等で復号する。また、復号手段４４は、ワンタイムパスワードで暗号化された機密情報の復号も行う。
【００３９】
生成手段４５は、機密情報取得要求やワンタイムパスワードを生成する。機密情報取得要求は、サーバ１１が特定され、要求毎に一意であるような文字列であれば、どのようなものであってもよい。機密情報取得要求は、例えば、サーバ１１のIPアドレスに、機密情報取得要求の送信回数を連結した「192.168.0.1_001」のようなものとすることができる。ワンタイムパスワードは、ランダムな文字列であれば、どのようなものであってもよい。
【００４０】
検証手段４６は、復号手段４４が復号した機密情報を使用して正常な通信を行うことができるかどうかの検証を行う。具体的には、検証手段４６は、上記のコネクションテスト要求を生成し、送信手段４２に管理装置１０への送信を指示する。そして、検証手段４６は、管理装置１０から取得した暗号化された要求の復号を復号手段４４に指示し、キーストアを用いて正常な通信を行うことができるかどうかの検証を行う。
【００４１】
記憶手段４７は、管理装置１０から取得したトラストストアやキーストアを記憶する。また、記憶手段４７は、認証装置１２に対して送付するサービスアカウント情報も記憶する。通知手段４８は、管理装置１０がサーバ１１に機密情報を配布する処理において、認証装置１２への接続が失敗した場合や、ユーザが検索されない場合等に、異常終了を管理者に対して通知する。通知手段４８は、その異常終了を音声や表示等により通知することができる。また、通知手段４８は、コネクションテストの成功通知あるいは失敗通知を音声や表示等により行う。
【００４２】
図６は、認証装置１２の機能ブロック図である。認証装置１２は、機能手段として、受信手段５０、認証手段５１、発行手段５２、送信手段５３、暗号化手段５４、復号手段５５、検索手段５６、記憶手段５７を備える。これらの手段も、管理装置１０やサーバ１１と同様、CPUがHDDに記憶されたプログラムを読み出し実行することにより、また、HDDや通信I/F等により実現される。
【００４３】
受信手段５０は、管理装置１０からユーザ名およびパスワードや、サーバ１１からの問い合わせ等を受信する。記憶手段５７は、ユーザ名やパスワード等の認証情報、管理者アカウント証明書、サーバ１１のサービスアカウント情報を記憶する。認証手段５１は、受信手段５０が受信したユーザ名およびパスワードを、記憶手段５７が記憶する認証情報の中に一致するものがあるかどうかを検索し、一致するものがある場合、認証成功を通知する。認証手段５１は、一致するものが存在しない場合、認証失敗を通知する。
【００４４】
発行手段５２は、認証成功の場合に、管理装置１０に対してサービスチケットを発行する。送信手段５３は、そのサービスチケットを管理装置１０に送信し、また、サーバ１１からの問い合わせに対する結果等を送信する。暗号化手段５４は、送信手段５３が送信する情報を、自機が保持する公開鍵や秘密鍵等で暗号化する。復号手段５５は、受信手段５０が受信した暗号化された情報を、自機が保持する公開鍵や秘密鍵等で復号する。検索手段５６は、サーバ１１からの問い合わせを受けて、ユーザ名を検索する。送信手段５３は、暗号化された管理者アカウントの証明書を検索結果としてサーバ１１に送信する。
【００４５】
図７は、各装置が保持する情報を例示した図である。認証装置１２は、管理者アカウント証明書６０を保持する。管理者アカウント証明書６０は、管理者のユーザ情報と、管理者の公開鍵とを一組にしたものである。ユーザ情報は、ユーザ名、メールアドレス、電話番号等を含む。管理者の公開鍵は、管理装置１０に接続される補助記憶装置に格納された秘密鍵と対応し、キーペアを構成する。補助記憶装置は、USBメモリやICカード等の可搬記憶媒体とすることができ、この可搬記憶媒体内に管理者の秘密鍵（管理者アカウント秘密鍵）７０が格納される。
【００４６】
管理装置１０は、管理装置キーストア８０、管理装置トラストストア８１、配布用キーストア８２、キーストアパスワード８３、配布用トラストストア８４、トラストストアパスワード８５を保持する。管理装置キーストア８０は、管理装置１０がSSL通信に利用する公開鍵および秘密鍵の組を格納したファイルである。管理装置トラストストア８１は、管理装置１０がSSL通信で信頼するCAの証明書等を格納したファイルである。CAの証明書は、CA自らが署名して発行するデジタル証明書で、SSL接続を要求した際、相手の機器から送信される証明書になされている署名が、CAの署名と同じかどうかを確認するために利用される。
【００４７】
管理装置トラストストア８１は、CA以外にも、信頼する機器の証明書も格納する。例えば、認証装置１２の証明書を格納することができる。CAの証明書は、CAの公開鍵を含み、認証装置１２の証明書は、認証装置１２の公開鍵を含む。
【００４８】
配布用キーストア８２は、管理装置１０が配布する対象の機密情報であり、例えばサーバ１１がSSL通信に利用する公開鍵８６および秘密鍵８７の組を格納する。これらの鍵は、サーバ１１がWebサービスを提供するために使用する鍵である。すなわち、秘密鍵８７は、サーバ１１がSSL通信で利用するための鍵であり、公開鍵８６は、クライアントがSSL通信で利用するための鍵である。キーストアパスワード８３は、配布用キーストア８２から公開鍵８６、秘密鍵８７を取得するのに必要となるパスワードである。
【００４９】
配布用トラストストア８４は、管理装置１０が配布する対象の機密情報であり、サーバ１１がSSL通信で信頼するCAの証明書を格納する。配布用トラストストア８４は、CAの証明書のほか、SSL通信で信頼する管理装置１０の証明書や認証装置１２の証明書を含む。管理装置１０の証明書は、管理装置１０の公開鍵を含み、認証装置１２の証明書は、認証装置１２の公開鍵を含む。トラストストアパスワード８５は、配布用トラストストア８４から公開鍵８８を取得するのに必要となるパスワードである。
【００５０】
管理者アカウント秘密鍵７０は、認証装置１２内で保管されている管理者アカウント証明書６０に含まれる公開鍵に対応する秘密鍵である。
【００５１】
サーバ１１は、サービスアカウント情報９０、配布後キーストア９１、キーストアパスワード９２、配布後トラストストア９３、トラストストアパスワード９４を保持する。サービスアカウント情報９０は、サーバ１１が認証装置１２に対してケルベロス認証を行うための認証情報である。
【００５２】
配布後キーストア９１は、管理装置１０が保持する配布用キーストア８２がサーバ１１へ配布され、サーバ１１に保存されたキーストアである。配布後キーストア９１は、公開鍵９５、秘密鍵９６の組をキーペアとして格納する。公開鍵９５は、サーバ１１に配布された配布用キーストア８２の公開鍵８６であり、秘密鍵９６は、サーバ１１に配布された配布用キーストア８２の秘密鍵８７である。
【００５３】
キーストアパスワード９２は、配布後キーストア９１から公開鍵９５、秘密鍵９６を取得するのに必要となるパスワードで、サーバ１１に配布され、格納されたキーストアパスワード８３である。
【００５４】
配布後トラストストア９３は、管理装置１０が保持する配布用トラストストア８４がサーバ１１へ配布され、サーバ１１内に格納されたトラストストアである。配布後トラストストア９３は、公開鍵９７を含む。公開鍵９７は、サーバ１１に配布された配布用トラストストア８４の公開鍵８８である。
【００５５】
トラストストアパスワード９４は、配布後トラストストア９３から公開鍵９７を取得するのに必要となるパスワードで、サーバ１１に配布され、格納されたトラストストアパスワード８５である。
【００５６】
図８は、情報配布システムが行う配布処理の全体の流れを示したシーケンス図である。このシーケンス図を参照して、この配布処理を詳細に説明する。ステップ８００において、ケルベロス認証およびセッション確立を行う。管理者は、上述したようにユーザ名およびパスワードを入力してログインし、管理装置１０に補助記憶装置を接続する等して、管理者アカウント秘密鍵を管理装置１０に対してアクセス可能な状態にする。
【００５７】
管理装置１０は、管理装置トラストストア８１に認証装置１２の公開鍵が格納されているので、その認証装置１２の公開鍵を使用してユーザ名およびパスワードを暗号化し、認証装置１２に送信する。認証装置１２は、それを受信すると、認証装置１２の秘密鍵で復号して、ユーザ名およびパスワードを取得する。
【００５８】
認証装置１２は、自身が管理する認証情報を使用し、管理者の認証を行う。この認証は、ケルベロス認証である。認証装置１２は、管理者を認証できた場合、例えば認証装置１２が自身の秘密鍵で暗号化したトークンを管理装置１０に送り、管理装置１０と認証装置１２とが共通のトークンを使用して暗号化通信を行えるようにすることで、セッションを確立する。セッションは、ログオフするまで続けられる。このセッションでは、ケルベロス暗号化通信が行われ、図８では、ケルベロス暗号化通信によるセッションが実線の枠で表されている。
【００５９】
ステップ８０５において、管理装置１０は、セッションが確立されたことを受けて、認証装置１２に対してサービスチケットの発行を要求する。認証装置１２は、管理装置１０に対して要求されたサーバ１１のサービスチケットを発行する。
【００６０】
管理装置１０は、認証装置１２からサービスチケットを受信すると、ステップ８１０において、それをサーバ１１に送付する。サーバ１１は、そのサービスチケットを受け取り、そのサービスチケットにより管理装置１０にアクセスする資格があることを確認し、サービスチケットに含まれるトークンを両者が共有し、管理装置１０との間のセッションを確立する。したがって、資格がない場合は、セッションは確立されない。
【００６１】
ステップ８１５では、管理装置１０は、セッションが確立されたことを受けて、サーバ１１に対して機密情報送付要求、配布用トラストストア８４、トラストストアパスワード８５、管理装置１０に対して管理者が入力したユーザ名を送付する。配布用トラストストア８４は、機密情報の１つではあるが、公開鍵８８のみで、秘密鍵は含まれていないため、ここではトークンのみによるケルベロス暗号化通信により送付している。
【００６２】
ステップ８２０では、サーバ１１がそれらを受け取ると、配布用トラストストア８４に含まれる公開鍵８８を用い、認証装置１２とのSSL通信接続を行う。公開鍵８８は、認証装置１２の公開鍵を含むため、サーバ１１は、認証装置１２に対して接続要求を送り、認証装置１２から受け取った認証装置１２の証明書を、この公開鍵を用いて信頼できるかどうかを判断する。公開鍵が同じで信頼できると判断した場合、サーバ１１は、認証装置１２の公開鍵を使用し、認証装置１２とのSSL通信接続を行う。SSL通信では、公開鍵と秘密鍵とを使用して共通鍵を交換し、それぞれが共通鍵を使用して暗号化した通信が行われる。図８では、SSL通信によるセッションが破線で表されている。
【００６３】
また、サーバ１１は、サービスアカウント情報９０を認証装置１２に送付し、認証装置１２がそのサービスアカウント情報９０を受信し、そのサービスアカウント情報９０によりサーバ１１を認証する。これにより、認証装置１２は、サーバ１１との間のセッションを確立し、サーバ１１と認証装置１２との間でも、ケルベロス暗号化通信が行われる。その結果、サーバ１１と認証装置１２との間の通信は、図８の破線で示されるSSL通信に、実線で示されるケルベロス暗号化通信が重ねて行われることになる。このため、図８では、破線と実線とが二重で表されている。
【００６４】
ステップ８２５では、サーバ１１は、管理装置１０から取得したユーザ名を用い、機密情報送付要求を発行した管理者を認証装置１２に問い合わせる。認証装置１２は、そのユーザ名と同じユーザ名が、管理する認証情報の中にあるかどうかを検索する。認証装置１２は、検索結果をサーバ１１に通知する。サーバ１１は、検索結果が、管理者が見つかったことを示す場合、認証装置１２に対して、ユーザの証明書である管理者アカウント証明書６０を要求する。認証装置１２は、その要求を受けて、その管理者アカウント証明書６０をサーバ１１に送付する。
【００６５】
サーバ１１は、認証装置１２から管理者アカウント証明書６０を取得すると、ステップ８３０において公開鍵８８を用いて、管理装置１０とのSSL通信接続を行う。公開鍵８８は、管理装置１０の公開鍵も含む。このため、サーバ１１は、管理装置１０の公開鍵を使用し、管理装置１０とのSSL通信接続を行う。
【００６６】
ステップ８３５では、サーバ１１は、SSL通信接続の確立後、そのSSL通信に、既に確立しているケルベロスによる暗号化通信を重ねて行い、機密情報の送付要求を送る。サーバ１１は、ワンタイムパスワードを生成し、このワンタイムパスワードも同時に送る。このSSL通信では、認証装置１２から取得した管理者アカウント証明書６０に含まれる管理者の公開鍵で暗号化したものが送られる。
【００６７】
ステップ８４０では、管理装置１０は、受け取った機密情報の取得要求およびワンタイムパスワードを、接続された補助記憶装置に格納された管理者アカウント秘密鍵７０で復号する。管理装置１０は、復号したワンタイムパスワードを用いて、配布用キーストア８２およびキーストアパスワード８３を暗号化し、サーバ１１へ送信する。図８では、ワンタイムパスワード等のケルベロス暗号化通信およびSSL通信以外の暗号化通信によるセッションが一点鎖線で表されている。ここでは、さらに、ワンタイムパスワードによる暗号化通信が重ねられるため、実線と破線と一点鎖線の三重で表されている。
【００６８】
サーバ１１は、自機で生成し、保持する同じワンタイムパスワードを用いて、配布用キーストア８２およびキーストアパスワード８３を復号し、自機の環境へ適用する。具体的には、配布後キーストア９１およびキーストアパスワード９２としてサーバ１１に保存される。ステップ８４５では、サーバ１１は、キーストアパスワード９２を使用して配布後キーストア９１から秘密鍵９６を取得する。そして、サーバ１１は、管理装置１０に対して、コネクションテスト要求を作成し、送信する。
【００６９】
ステップ８５０では、管理装置１０は、そのコネクションテスト要求を受け取ると、配布用キーストア８２内の公開鍵８６を用いて、サーバ１１に対してSSL通信接続の確立を要求する。例えば、管理装置１０は、共通鍵を生成し、その共通鍵を公開鍵８６で暗号化し、それをサーバ１１に送信する。サーバ１１は、その暗号化された共通鍵を、配布後キーストア９１の秘密鍵９６により復号を試みる。サーバ１１は、その結果を管理装置１０に通知する。管理装置１０は、その結果が復号できたことを示す場合、SSL通信接続を確立し、コネクションテストに成功したと判断する。一方、復号できないことを示す場合、コネクションテストに失敗したと判断する。
【００７０】
ステップ８５５では、SSL通信接続が確立し、コネクションテストに成功した場合、管理装置１０は、サーバ１１に成功通知を送る。一方、失敗した場合、管理装置１０は、サーバ１１に失敗通知を送る。ここでは、共通鍵を公開鍵８６で暗号化してサーバ１１に送信しているが、公開鍵８６で暗号化されるものは、共通鍵でなくてもよく、何らかのメッセージや特に意味のない情報等であってもよい。この場合、コネクションテストが成功した後に共通鍵を送付し、SSL通信接続を確立することができる。
【００７１】
配布用トラストストア８４とトラストストアパスワード８５、配布用キーストア８２とキーストアパスワード８３をそれぞれ同時にサーバ１１に送信しているが、安全性を高めるためには、別個に送信するほうが望ましい。別個に送信するために、例えば、配布用トラストストア８４と配布用キーストア８２とを管理する管理装置と、トラストストアパスワード８５とキーストアパスワード８３とを管理する管理装置とを設けてもよい。また、ワンタイムパスワードも、配布用キーストア８２に対するものと、キーストアパスワード８３に対するものの２つを同時に、あるいは別個に管理装置１０へ送信することができる。
【００７２】
図８を参照して、管理装置１０、サーバ１１、認証装置１２の各々が行う処理を詳細に説明してきたが、図９を参照して、サーバ１１が行う処理をさらに詳細に説明する。ステップ９００からこの処理を開始し、ステップ９０５では、受信手段４０が、管理装置１０から機密情報送付要求を受信する。受信手段４０は、受信した機密情報送付要求を問い合わせ手段４１に渡す。問い合わせ手段４１は、受信手段４０が機密情報送付要求とともに受信した配布用トラストストア８４、トラストストアパスワード８５、ユーザ名を取得する。
【００７３】
ステップ９１０では、送信手段４２が、取得した配布用トラストストア８４を用い、SSL通信接続を確立し、サービスアカウント情報９０を用い、ケルベロス認証を行う。そして、問い合わせ手段４１が、SSL通信にケルベロス認証のセッション上で、ユーザ名を用い、認証装置１２に対してユーザの問い合わせを行う。
【００７４】
ステップ９１５では、問い合わせ手段４１は、通信結果および検索結果に基づき、認証装置１２とのSSL通信接続が成功し、かつユーザが存在するかを判断する。配布用トラストストア８４に、認証装置１２の公開鍵がない場合や、公開鍵が違う場合は、SSL通信自体の接続が失敗する。また、認証されたユーザの中に、問い合わせをしたユーザ名のユーザが存在しない場合、ユーザが存在しないと判断される。SSL通信接続が成功し、かつユーザが存在する場合は、配布用トラストストア８４およびトラストストアパスワード８５を、記憶手段４７に配布後トラストストア９３およびトラストストアパスワード９４として記憶させる。そして、ステップ９２０に進む。そうでない場合は、ステップ９７５へ進み、機密情報送付要求が不正であったと判断し、異常終了となる。
【００７５】
ステップ９２０では、問い合わせ手段４１が、認証装置１２に対してユーザの証明書を要求し、認証装置１２からそのユーザの証明書を取得する。ユーザの証明書は、管理者アカウント証明書６０である。ステップ９２５では、生成手段４５が、機密情報取得要求を生成し、ワンタイムパスワードも生成する。
【００７６】
ステップ９２５では、暗号化手段４３が、取得したユーザの証明書を用いて、機密情報取得要求およびワンタイムパスワードを暗号化する。暗号化は、これまでに知られたいかなる暗号アルゴリズムでも使用して行うことができる。ステップ９３０では、送信手段４２が、記憶手段４７に記憶した配布後トラストストア９３を用い、SSL通信にて管理装置１０に暗号化された機密情報取得要求およびワンタイムパスワードを送信する。
【００７７】
ステップ９３５では、送信手段４２が、暗号化された機密情報取得要求等が送信できたか否かにより送信成功か否かを判断する。送信成功の場合、ステップ９４０へ進み、送信失敗の場合、ステップ９６０へ進む。管理装置１０は、暗号化された機密情報取得要求等を受信すると、管理者アカウント秘密鍵７０を用いて復号し、ワンタイムパスワードを取得する。そして、管理装置１０は、ワンタイムパスワードにより配布用キーストア８２およびキーストアパスワード８３を暗号化し、サーバ１１に送信する。
【００７８】
ステップ９４０では、受信手段４０が、ワンタイムパスワードで暗号化された配布用キーストア８２およびキーストアパスワード８３を受信し、取得する。復号手段４４は、サーバ１１が保持している同じワンタイムパスワードで復号し、配布用キーストア８２およびキーストアパスワード８３を取得する。そして、キーストアパスワード８３を使用し、配布用キーストア８２から秘密鍵８７を取得する。このようにして、秘密鍵８７を取得することができたか否かを、ステップ９４５では判断する。ワンタイムパスワードは、回数のほか、有効期限があり、有効期限内に使用しなければ、それ以降使用することはできないからである。ステップ９４５で秘密鍵８７を取得できた場合は、ステップ９５０へ進み、取得できない場合は、ステップ９６０へ進む。
【００７９】
ステップ９５０では、検証手段４６が、配布後キーストア９１から公開鍵９５を取得し、その公開鍵９５を使用して、SSL通信によりコネクションテスト要求を送信するように送信手段４２に指示し、送信手段４２がその要求を管理装置１０に送信する。管理装置１０は、配布用キーストア８２の公開鍵８６を使用して、SSL接続の確立をサーバ１１に要求する。
【００８０】
管理装置１０は、配布用キーストア８２の公開鍵８６を使用し、自身で生成した管理装置１０とサーバ１１とが共通して使用する共通鍵を暗号化し、それをサーバ１１に送信する。サーバ１１は、暗号化された共通鍵を、配布後キーストア９１から取得した秘密鍵８７で復号できるかを試みる。復号できた場合は、共通鍵を使用して、SSL通信接続を確立し、復号できた旨を検証結果として管理装置１０に通知する。管理装置１０は、その検証結果を受信して、コネクションテストが成功したと判断し、成功通知をサーバ１１に送信する。一方、復号できない場合、復号できない旨を検証結果として管理装置１０に通知する。管理装置１０は、その検証結果を受信して、コネクションテストが失敗したと判断し、失敗通知をサーバ１１に送信する。
【００８１】
ステップ９５５では、検証手段４６が、管理装置１０からの通知が成功通知かどうかを判断する。成功通知である場合、ステップ９７０へ進み、処理が成功したものとして終了する。
【００８２】
ステップ９３５で送信失敗した場合、ステップ９４５で秘密鍵の取得が失敗した場合、ステップ９５５で失敗通知を受け取った場合、ステップ９６０でこれまでに取得した情報を全て消去する。具体的には、トラストストア、トラストストアパスワード、キーストア、キーストアパスワード等である。この情報には、記憶手段４７に記憶された配布後キーストア等も全て消去する。取得した情報を全て消去した後、ステップ９６５において管理者アカウント証明書６０に含まれるユーザ情報を使用し、処理の異常終了を通知する。ユーザ情報のメールアドレスや電話番号等を使用して、この通知を行う。そして、ステップ９７０で機密情報送付処理を異常終了する。
【００８３】
ステップ９３５で送信失敗する場合としては、タイムアウトを一例として挙げることができる。ステップ９４５で秘密鍵の取得が失敗する場合としては、キーストアパスワード８３がない場合、キーストアパスワード８３が違う場合等が挙げられる。ステップ９５５で失敗通知を受け取った場合としては、秘密鍵８７がない場合、秘密鍵８７が違う場合等を挙げることができる。このような場合に、異常終了し、それまでにサーバ１１に送付された機密情報を全て消去することにより、安全に機密情報を送付することを担保することができる。
【００８４】
これまで本発明を、管理装置、情報処理装置、情報配布システム、情報配布方法およびプログラムとして上述した実施の形態をもって説明してきた。しかしながら、本発明は上述した実施の形態に限定されるものではなく、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができるものである。また、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。したがって、上記のプログラムが記録された記録媒体やそのプログラムを提供するサーバ装置等としても提供することができるものである。
【符号の説明】
【００８５】
１０…管理装置、１１…サーバ、１２…認証装置、２０…CPU、２１…ROM、２２…RAM、２３…HDD、２４…通信I/F、２５…外部記憶I/F、２６…入出力I/F、２７…入力装置、２８…表示装置、２９…バス、３０…送信手段、３１…受信手段、３２…復号手段、３３…暗号化手段、３４…記憶手段、４０…受信手段、４１…問い合わせ手段、４２…送信手段、４３…暗号化手段、４４…復号手段、４５…生成手段、４６…検証手段、４７…記憶手段、４８…通知手段、５０…受信手段、５１…認証手段、５２…発行手段、５３…送信手段、５４…暗号化手段、５５…復号手段、５６…検索手段、５７…記憶手段、６０…管理者アカウント証明書、７０…管理者アカウント秘密鍵、８０…管理装置キーストア、８１…管理装置トラストストア、８２…配布用キーストア、８３…キーストアパスワード、８４…配布用トラストストア、８５…トラストストアパスワード、８６…公開鍵、８７…秘密鍵、８８…公開鍵、９０…サーバアカウント情報、９１…配布後キーストア、９２…キーストアパスワード、９３…配布後トラストストア、９４…トラストストアパスワード、９５…公開鍵、９６…秘密鍵
【先行技術文献】
【特許文献】
【００８６】
【特許文献１】特許第４５６６２５６号公報
【図１】
2017041179.tif 000003
【図２】
2017041179.tif 000004
【図３】
2017041179.tif 000005
【図４】
2017041179.tif 000006
【図５】
2017041179.tif 000007
【図６】
2017041179.tif 000008
【図７】
2017041179.tif 000009
【図８】
2017041179.tif 000010
【図９】
2017041179.tif 000011