説明

復号化バックアップ方法、復号化リストア方法、認証デバイス、個別鍵設定機、利用者端末、バックアップ装置、暗号化バックアッププログラム、復号化リストアプログラム

【課題】バックアップやリストアに用いていた鍵データの紛失等に際しても、クライアントデータの簡便確実なリストアを可能とする。
【解決手段】デバイスIDとグローバル鍵とからデバイス個別鍵を生成し、認証デバイスに設定する。利用者のデータを暗号化するための暗復号用鍵を、認証デバイス内で生成する(S202)。パスワードとデバイス個別鍵とから再発行用データ処理鍵を生成し(S203)、生成した鍵で暗復号用鍵を暗号化して再発行用データを生成する(S204)。サーバ装置に暗号化した利用者のデータ、再発行用データ、デバイスIDをバックアップする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、復号化バックアップ方法、復号化リストア方法、認証デバイス、個別鍵設定機、利用者端末、バックアップ装置、暗号化バックアッププログラム、復号化リストアプログラムに関し、特に、ICカードなどのデバイスに格納する電子鍵を用いて、ICカード内や携帯電話などの利用者端末内のデータを暗号化するデータバックアップ方法に係わり、さらにバックアップした暗号データを、電子鍵を用いて安全、簡単にリストアするデータリストア方法に係わる。
【背景技術】
【0002】
利用者端末内のデータを簡単、安全、即座にバックアップおよびリストアする手段として、一度使用したパソコンの環境を別のパソコンでも構築可能とする方法が開示されている。例えば、現に使用する特定の共同利用コンピュータにおいて設定・記憶させる情報を当該特定の共同利用コンピュータにおいて暗号化し、当該暗号化した暗号文を当該特定の共同利用コンピュータに対するサーバの記憶手段に暗号化差分情報として記憶させておき、当該サーバに接続可能な共同利用コンピュータを別途使用する際に当該暗号化差分情報を当該共同利用コンピュータにて復号して使用する、ことを特徴とする共同利用コンピュータ利用方法(特許文献1参照)などが提案されている。
【特許文献1】特開2001−34580号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら従来技術においては、鍵を保持するICカードが故障したり、紛失したりしたときに、サーバに格納した利用者のデータをリストアするための手段が開示されていない。
そこで本発明では、バックアップやリストアに用いていた鍵データの紛失等に際しても、クライアントデータの簡便確実なリストアを可能とすることを目的とする。
【課題を解決するための手段】
【0004】
上記課題を解決する本発明の暗号化バックアップ方法は、認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムにおける、前記認証デバイスが実行する暗号化バックアップ方法であって、デバイス固有のデバイス個別鍵を記憶装置から取得するステップと、利用者固有の秘密情報を入力インターフェイスより受信するステップと、該秘密情報を記憶装置に格納するステップと、該デバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成するステップと、を含む。
【0005】
また、本発明の暗号化バックアップ方法は、クライアントデータを暗号化する暗復号用鍵を生成するステップと、該暗復号用鍵を記憶装置に格納するステップと、該再発行用データ処理鍵で前記暗復号用鍵を暗号化し再発行用データを生成するステップと、を含むこととすれば好適である。
【0006】
また、本発明の暗号化バックアップ方法は、認証デバイスを識別するためのデバイス識別データを記憶装置から取得するステップと、デバイス識別データをデバイス個別鍵で暗号化することにより、個別鍵検証データを生成するステップと、該個別鍵検証データをバックアップ装置に送信するステップと、を含むこととすれば好適である。
【0007】
また、本発明の復号化リストア方法は、認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムにおける、前記認証デバイスが実行する復号化リストア方法であって、デバイス固有のデバイス個別鍵を、第一のデバイス個別鍵として個別鍵設定機から受信するステップと、利用者固有の秘密情報を入力インターフェイスより受信するステップと、該秘密情報を記憶装置に格納するステップと、該第一のデバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成するステップと、を含む。
【0008】
また、本発明の復号化リストア方法は、該再発行用データ処理鍵で暗復号用鍵を暗号化して事前に生成していた再発行用データを、当該再発行用データ格納先の情報処理装置より取得するステップと、前記再発行用データ処理鍵で該再発行用データを復号化し、暗号化クライアントデータを復号化する暗復号用鍵を取り出すステップと、を含むこととすれば好適である。
【0009】
また、本発明の復号化リストア方法は、認証デバイスを識別するためのデバイス識別データを、第一のデバイス識別データとしてバックアップ装置から受信するステップと、認証デバイスを識別するためのデバイス識別データを、該第一のデバイス個別鍵で暗号化して事前に生成していた個別鍵検証データをバックアップ装置から受信するステップと、該個別鍵検証データを該第一のデバイス個別鍵で復号化し、デバイス識別データを第二のデバイス識別データとして取り出すステップと、該第一の識別データと該第二の識別データの一致を判定するステップと、を含むこととすれば好適である。
【0010】
また、本発明の復号化リストア方法は、デバイス固有のデバイス個別鍵を、第二のデバイス個別鍵として記憶装置から取得するステップを含むこととすれば好適である。
【0011】
また、本発明の復号化リストア方法は、該第一のデバイス個別鍵を該第二のデバイス個別鍵で暗号化した暗号化デバイス個別鍵データを、該第二のデバイス個別鍵で復号化するステップと、を含み、デバイス固有のデバイス個別鍵を、第一のデバイス個別鍵として受信するステップにおいて、該第一のデバイス個別鍵は該第二のデバイス個別鍵で暗号化されていることとすれば好適である。
【0012】
また、本発明の復号化リストア方法は、認証デバイスを識別するためのデバイス識別データを、第三のデバイス識別データとして記憶装置から取得するステップと、該第三のデバイス識別データに対する電子署名データを、該第二のデバイス個別鍵を鍵として生成するステップと、該電子署名データを個別鍵設定機に送信するステップと、を含むこととすれば好適である。
【0013】
また、本発明の復号化リストア方法は、認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムにおける、個別鍵設定機が実行する復号化リストア方法であって、デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得するステップと、認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信するステップと、該グローバル鍵と該第一のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第一のデバイス個別鍵として生成するステップと、認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信するステップと、該グローバル鍵と該第二のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第二のデバイス個別鍵として生成するステップと、該第二のデバイス個別鍵で該第一のデバイス個別鍵を暗号化した暗号化デバイス個別鍵データを生成するステップと、該暗号化デバイス個別鍵データを認証デバイスに送信するステップと、を含む。
【0014】
また、本発明の復号化リストア方法は、認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムにおける、個別鍵設定機が実行する復号化リストア方法であって、デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得するステップと、認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信するステップと、該グローバル鍵と該第一のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第一のデバイス個別鍵として生成するステップと、認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信するステップと、該グローバル鍵と該第二のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第二のデバイス個別鍵として生成するステップと、該第二のデバイス個別鍵を鍵とし、該第二のデバイス識別データを対象として生成された、電子署名データを入力インターフェイスより受信するステップと、該電子署名データの正当性を検証するステップと、該第二のデバイス識別データが存在するか記憶装置を検索するステップと、該第二のデバイス識別データが記憶装置に存在しなかった場合、該第二のデバイス識別データを記憶装置に登録するステップと、を含む。
【0015】
また、本発明の認証デバイスは、バックアップ装置および個別鍵設定機とシステムを構成する認証デバイスであって、デバイス固有のデバイス個別鍵を記憶装置から取得する処理部と、利用者固有の秘密情報を入力インターフェイスより受信する処理部と、該秘密情報を記憶装置に格納する処理部と、該デバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成する処理部と、を備える。
【0016】
また、本発明の認証デバイスは、バックアップ装置および個別鍵設定機とシステムを構成する、認証デバイスであって、 デバイス固有のデバイス個別鍵を、第一のデバイス個別鍵として個別鍵設定機から受信する処理部と、利用者固有の秘密情報を入力インターフェイスより受信する処理部と、該秘密情報を記憶装置に格納する処理部と、該第一のデバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成する処理部と、を備える。
【0017】
また、本発明の個別鍵設定機は、認証デバイスおよびバックアップ装置とシステムを構成する、個別鍵設定機であって、デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得する処理部と、認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信する処理部と、該グローバル鍵と該第一のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第一のデバイス個別鍵として生成する処理部と、認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信する処理部と、該グローバル鍵と該第二のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第二のデバイス個別鍵として生成する処理部と、該第二のデバイス個別鍵で該第一のデバイス個別鍵を暗号化した暗号化デバイス個別鍵データを生成する処理部と、該暗号化デバイス個別鍵データを認証デバイスに送信する処理部と、を備える。
【0018】
また、本発明の個別鍵設定機は、認証デバイスおよびバックアップ装置とシステムを構成する、個別鍵設定機であって、デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得する処理部と、認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信する処理部と、該グローバル鍵と該第一のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第一のデバイス個別鍵として生成する処理部と、認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信する処理部と、該グローバル鍵と該第二のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第二のデバイス個別鍵として生成する処理部と、該第二のデバイス個別鍵を鍵とし、該第二のデバイス識別データを対象として生成された、電子署名データを入力インターフェイスより受信する処理部と、該電子署名データの正当性を検証する処理部と、該第二のデバイス識別データが存在するか記憶装置を検索する処理部と、該第二のデバイス識別データが記憶装置に存在しなかった場合、該第二のデバイス識別データを記憶装置に登録する処理部と、を備える。
【0019】
また、本発明の利用者端末は、認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムを利用して、格納情報の暗号化バックアップ処理を図る利用者端末であって、利用者固有の秘密情報を個別鍵設定機に送信する処理部を備える。
【0020】
また、本発明の利用者端末は、認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムを利用して、格納情報の暗号化バックアップ処理を図る利用者端末であって、利用者固有の秘密情報を認証デバイスに送信する処理部を備える。
【0021】
また、本発明のバックアップ装置は、認証デバイスおよび個別鍵設定機とシステムを構成する、バックアップ装置であって、デバイス固有のデバイス個別鍵で、認証デバイスを識別するためのデバイス識別データを暗号化することにより認証デバイスが生成した個別鍵検証データを、当該認証デバイスより受信する処理部を備える。
【0022】
また、本発明のバックアップ装置は、認証デバイスおよび個別鍵設定機とシステムを構成する、バックアップ装置であって、認証デバイスを識別するためのデバイス識別データを、第一のデバイス識別データとして認証デバイスに送信する処理部と、認証デバイスを識別するためのデバイス識別データを、デバイス固有のデバイス個別鍵たる第一のデバイス個別鍵で暗号化して事前に生成していた、個別鍵検証データを認証デバイスに送信する処理部と、を備える。
【0023】
また、本発明の暗号化バックアッププログラムは、バックアップ装置および個別鍵設定機とシステムを構成する認証デバイスに、暗号化バックアップ方法を実行させるためのプログラムであって、デバイス固有のデバイス個別鍵を記憶装置から取得するステップと、利用者固有の秘密情報を入力インターフェイスより受信するステップと、該秘密情報を記憶装置に格納するステップと、該デバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成するステップと、を含む。
【0024】
また、本発明の復号化リストアプログラムは、バックアップ装置および個別鍵設定機とシステムを構成する認証デバイスに、復号化リストア方法を実行させるためのプログラムであって、デバイス固有のデバイス個別鍵を、第一のデバイス個別鍵として個別鍵設定機から受信するステップと、利用者固有の秘密情報を入力インターフェイスより受信するステップと、該秘密情報を記憶装置に格納するステップと、該第一のデバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成するステップと、を含む。
【0025】
また、本発明の復号化リストアプログラムは、認証デバイスおよびバックアップ装置とシステムを構成する個別鍵設定機に、復号化リストア方法を実行させるための復号化リストアプログラムであって、デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得するステップと、認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信するステップと、該グローバル鍵と該第一のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第一のデバイス個別鍵として生成するステップと、認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信するステップと、該グローバル鍵と該第二のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第二のデバイス個別鍵として生成するステップと、該第二のデバイス個別鍵で該第一のデバイス個別鍵を暗号化した暗号化デバイス個別鍵データを生成するステップと、該暗号化デバイス個別鍵データを認証デバイスに送信するステップと、を含む。
【0026】
また、本発明の復号化リストアプログラムは、認証デバイスおよびバックアップ装置とシステムを構成する個別鍵設定機に、復号化リストア方法を実行させるためのプログラムであって、デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得するステップと、認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信するステップと、該グローバル鍵と該第一のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第一のデバイス個別鍵として生成するステップと、認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信するステップと、該グローバル鍵と該第二のデバイス識別データを入力データとし、かつ該グローバル鍵が未知であれば値の推定が困難なデータを、第二のデバイス個別鍵として生成するステップと、該第二のデバイス個別鍵を鍵とし、該第二のデバイス識別データを対象として生成された、電子署名データを入力インターフェイスより受信するステップと、該電子署名データの正当性を検証するステップと、該第二のデバイス識別データが存在するか記憶装置を検索するステップと、該第二のデバイス識別データが記憶装置に存在しなかった場合、該第二のデバイス識別データを記憶装置に登録するステップと、を含む。
【0027】
その他、本願が開示する課題、及びその解決方法は、発明の実施の形態の欄、及び図面により明らかにされる。
【発明の効果】
【0028】
本発明によれば、バックアップやリストアに用いていた鍵データの紛失等に際しても、クライアントデータの簡便確実なリストアを可能とできる。
【発明を実施するための最良の形態】
【0029】
以下、本発明を実施するための最良の形態を、図面を用いて説明する。図1に本実施形態を適用した、クライアントデータバックアップ/リストアシステムの構成を示す。認証デバイス100は、各種電子鍵の生成と格納や、データの暗号化などを行う。各種電子鍵とは例えば、クライアントデータの暗復号を行うための暗復号用鍵である。具体的な電子鍵の生成方法やデータの暗号化方法については後述する。また、この認証デバイス100は、利用者端末200や個別鍵設定機500と電子的に接続することが可能である。なお、本発明の認証デバイス100は、認証デバイスとして備えるべき処理部(請求項記載)を、例えばハードウェアまたはソフトウェアの機能ブロックとして実現し、保持している。
【0030】
利用者端末200は利用者が保有する端末であり、利用者のクライアントデータを格納する。また、インターネットや携帯電話網などの通信ネットワーク400を介して、サーバ装置300や個別鍵設定機500と接続する。なお、本発明の利用者端末200は、利用者端末として備えるべき処理部(請求項記載)を、例えばハードウェアまたはソフトウェアの機能ブロックとして実現し、保持している。
【0031】
サーバ装置300は、利用者端末200からの要求に応じてクライアントデータのバックアップ先となったり、或いはリストア元となったりする。つまり、サーバ装置300は、本発明におけるバックアップ装置にあたる。なお、本発明のサーバ装置300は、バックアップ装置として備えるべき処理部(請求項記載)を、例えばハードウェアまたはソフトウェアの機能ブロックとして実現し、保持している。
【0032】
個別鍵設定機500は、認証デバイス100を一意に識別するためのデバイスIDや、認証デバイス100毎に異なるデバイス個別鍵を生成したり、認証デバイス100に対してそれらのデータを設定したりする装置である。なお、本発明の個別鍵設定機500は、個別鍵設定機として備えるべき処理部(請求項記載)を、例えばハードウェアまたはソフトウェアの機能ブロックとして実現し、保持している。
【0033】
図2に認証デバイス100、利用者端末200、サーバ装置300、個別鍵設定機500のハードウェア構成を示す。認証デバイス100は、暗復号用鍵などの各種電子鍵の生成やデータの暗号化などのデータの加工・演算を行うCPU101と、CPU101が直接読み書き可能なメモリ102と、利用者端末200や個別鍵設定機500とのデータの受け渡しを行う通信装置103とを有する。
【0034】
前記メモリ102は、一時的に記憶を保持する機能と静的に記憶を保持する機能の両方を備えるものとできる。また、認証デバイス100は、暗復号用鍵などの各種電子鍵の偽造や不正コピーを防止するために、耐タンパ性を有することが望ましい。このような認証デバイス100の具体例としては、CPU機能を有するメモリカードやICカードなどがある。
【0035】
利用者端末200は、アプリケーションプログラムの実行などを行うCPU201と、CPU201が直接読み書き可能なメモリ202と、ハードディスク等の外部記憶装置205と、認証デバイス100との通信を行う認証デバイス通信装置203と、サーバ装置300や個別鍵設定機500と通信を行うネットワーク通信装置204と、入力装置206(キーボード、マウス、キーボタン、音声入力等)と、ディスプレイ等の表示装置207とを有する一般的なコンピュータシステムである。利用者端末200の具体例としては、例えば携帯電話、PDA(Personal Digital Assistant)、PC(Personal Computer)などがある。
【0036】
サーバ装置300は、アプリケーションプログラムの実行などを行うCPU301と、CPU301が直接読み書き可能なメモリ302と、利用者端末200と通信を行うネットワーク通信装置303と、データを格納する外部記憶装置304とを有する一般的なコンピュータシステムである。サーバ装置300の具体例としては、例えばPCサーバ、ワークステーション、ホストコンピュータなどがある。
【0037】
個別鍵設定機500は、アプリケーションプログラムの実行などを行うCPU501と、CPU501が直接読み書き可能なメモリ502と、利用者端末200と通信ネットワーク400を介して通信を行うネットワーク通信装置503と、データを格納する外部記憶装置504と、利用者端末200と直接的に通信を行う認証デバイス通信装置505とを有する一般的なコンピュータシステムである。サーバ装置500の具体例としては、例えばPCサーバ、ワークステーション、ホストコンピュータなどがある。
【0038】
図3は本システムにおける、データの配置を表したものである。認証デバイス100においては、デバイスID、デバイス個別鍵、利用者ID、暗復号用鍵、利用者パスワード(以下、パスワードはPWと略記する)を保持する。デバイスIDは、認証デバイス100を一意に識別する値である。デバイス個別鍵は、認証デバイス100毎に異なる電子鍵である。利用者IDは、利用者を一意に識別する値である。暗復号用鍵は、クライアントデータの暗号化や復号化を行うための電子鍵である。利用者PWは、利用者が設定するパスワードであり、他者による認証デバイス100の不正利用を防ぐための利用者識別情報である。
【0039】
利用者端末200においては、クライアントデータを保持する。クライアントデータは、利用者端末200が紛失したり故障したりした場合の復旧(リストア)対象となるデータであり、例えば携帯電話のアドレス帳、電子メール、各種ドキュメントデータである。
【0040】
サーバ装置300においては、デバイスID、利用者ID、再発行用データ、暗号化クライアントデータ、個別鍵検証データを保持する。デバイスIDと利用者IDについては前述の通りである。再発行用データは、クライアントデータのリストア時に必要となる各種電子鍵データを、認証デバイス100内に再設定するためのデータである。暗号化クライアントデータは、クライアントデータを暗復号用鍵で暗号化したデータである。個別鍵検証データは、クライアントデータのリストア時に必要となる正しい個別鍵を、取得したか否か認証デバイス100内で判定するためのデータである。なお、これらのデータは、利用者IDを一意キーとするレコードであり、利用者ID毎に複数存在する。
【0041】
個別鍵設定機500においては、グローバル鍵、発行シリアルカウンタ、リストア済みデバイスIDを保持する。グローバル鍵はデバイス個別鍵の生成に使用されるデータである。グローバル鍵が流出した場合、不正なデバイスや端末による認証デバイス100の成りすましが可能となるため、個別鍵設定機500内にて厳重に管理する。発行シリアルカウンタは、個別鍵設定機500において発行された認証デバイス100の個数をカウントするデータであり、デバイスIDの生成に使用されるデータである。リストア済みデバイスIDは、リストア処理に使用された認証デバイス100のデバイスIDである。なお、グローバル鍵および発行シリアルカウンタは、個別鍵設定機500においてただ一つ存在するデータである。リストア済みデバイスIDは、個別鍵設定機500において複数個存在するデータである。なお、上記データの生成方法や設定タイミングについては後述する。
【0042】
図4は本システムにおけるデータの遷移を表したものである。図中の表において、横軸はシステムの状態を表す。縦軸はデータ項目とそのデータの格納先となる装置を表す。図中で、「○」はデータが存在することを意味し、「−」はデータが存在しないことを意味する。
【0043】
本システム利用時には、まず認証デバイス100と個別鍵設定機500との間で1次発行処理が実行される。1次発行処理は、本システムを利用するための基本的なデータ、具体的にはデバイスIDとデバイス個別鍵を、個別鍵設定機500が認証デバイス100に設定する処理である。この処理の後、利用者は認証デバイス100を入手し、利用者端末200と接続する。その後に、認証デバイス100と利用者端末200との間でメニュー選択処理が実行される。この処理に続いて、利用者端末200が備えるクライアントデータの前記サーバ装置300へのバックアップ処理が行われる。
【0044】
このバックアップ処理は、2次発行処理と暗号化バックアップ処理の二つの処理から成る。2次発行処理は、認証デバイス100を利用するための利用者カスタマイズにあたる処理であり、認証デバイス100とサーバ装置300との間で実行される。この処理に続いて、利用者端末200のクライアントデータの暗号化バックアップ処理が実行され、サーバ装置300に対して暗号化クライアントデータなどがバックアップされる。
【0045】
暗号化されたクライアントデータのリストア処理は、上記の暗号化バックアップ処理後に、利用者が例えば認証デバイス100および利用者端末200の両方を紛失・故障などした場合に行われる。この場合、前記利用者が、新たな利用者端末200と、1次発行処理済みの新たな認証デバイス100を用意しておくものとする。
【0046】
続いて、認証デバイス100とサーバ装置300との間、および認証デバイス100と個別鍵設定機500との間で、認証デバイス100を利用するための再カスタマイズ処理にあたる2次再発行処理が実行される。その後、サーバ装置300にバックアップしておいた、暗号化クライアントデータを復号化リストアして利用者端末200に格納し、元の状態に復旧させる。
【0047】
図5に1次発行処理の処理フローを示す。本処理の実行にあたっては、安全な設備内で実行するなどの運用により、個別鍵設定機500と認証デバイス100との間のデータ送受信内容が外部に流出しないようにすることが望ましい。1次発行処理前のシステムのデータ配置は次のようになる(図4における”初期状態”の列を参照)。個別鍵設定機500には、グローバル鍵と発行シリアルカウンタが格納されている。グローバル鍵は、本システムにおいてただ一つ存在する電子鍵であり、例えばDESやAESなどの共通鍵暗号アルゴリズムの鍵とする。初期値は乱数値などにより決定する。発行シリアルカウンタは、発行シリアルカウンタは、個別鍵設定機500において発行された認証デバイス100の個数をカウントするデータであり、初期値は0(ゼロ)とする。一方、認証デバイス100、利用者端末200、サーバ装置300には本システムに関するデータは、特に格納されていない。
【0048】
個別鍵設定機500は、デバイスIDを生成する(ステップS101)。デバイスIDの値としては、例えば発行シリアルカウンタの値をそのまま用いる。この場合、デバイスID生成後に発行シリアルカウンタの値をインクリメントする。
次に、個別鍵設定機500は、デバイス個別鍵を生成する(ステップS102)。本生成処理に関しては、例えば、デバイスIDを入力データに、グローバル鍵を鍵データとし、共通鍵暗号アルゴリズム(DESやAESなど)を適用し、その出力をデバイス個別鍵とする。他にも、デバイスID毎にデバイス個別鍵が異なり、かつ、グローバル鍵が未知の場合にデバイス個別鍵の生成や推定を防止できるアルゴリズムであれば、前記生成処理に適用が可能である。
その後、個別鍵設定機500は、デバイスIDとデバイス個別鍵を含む1次発行データ設定要求メッセージを送信する。
認証デバイス100は、1次発行データ設定要求メッセージを受信すると、デバイスIDとデバイス個別鍵をメモリ102に静的に格納し(ステップS103)、処理を終了する。
1次発行処理の実行後は、認証デバイス100において、デバイスIDとデバイス個別鍵が追加格納される(図4参照)。
【0049】
次に、1次発行処理後に、利用者がメニュー選択を行うための処理の流れについて説明する。図6はメニュー選択処理時の利用者端末200の画面遷移図である。画面は、例えば携帯電話のディスプレイ画面を想定している。本処理は、利用者が認証デバイス100を入手し、認証デバイス100を利用者端末200と接続した後に実行される。
【0050】
利用者端末200は、メニュー選択処理の開始後、認証デバイス100に対して新規認証デバイス確認要求メッセージを送信する。認証デバイス100は該メッセージを受信後、自身が新規認証デバイスか否かを判定して、その結果とともに新規認証デバイス確認応答メッセージを利用者端末200に対して送信する。なお、新規認証デバイス100とは、1次発行処理を施した段階の認証デバイス100を指すものとする。
【0051】
新規認証デバイスであるか否かの判定は、2次発行処理および2次再発行処理の前後で認証デバイス100内に変化があるデータに基づいて判断する。例えば、後述する暗復号用鍵がメモリ102に格納されているか、などである。
【0052】
また、紛失後に再発行された認証デバイス100が利用者端末200に接続された場合などは、例えば利用者端末200においてクライアントデータが存在しないことや、サーバ装置300における再発行用データが存在することなどを検証することで、当該認証デバイス100が紛失後に再発行されたものであることを利用者端末200が判定することとできる。ここで判定した紛失歴の情報は利用者端末200において表示装置207などに出力する。この場合、2次再発行処理が必要となるから、例えば図6の例では、画面11における「2.復旧処理」を強調表示したり、或いはこの復旧処理の項目のみを表示したりするなどして、利用者を2次再発行処理へと誘導する。
【0053】
利用者端末200は新規接続確認応答メッセージ受信後、認証デバイス100が新規認証デバイスである場合は表示装置207に画面11を表示し、新規デバイスでない場合には画面12を表示し、それぞれ利用メニューの選択を受け付ける。
【0054】
画面11において「1.新規サービス利用」を選択すると2次発行処理に進み、「2.復旧処理」を選択すると2次再発行処理に進む。また画面12において「1.バックアップ」を選択すると暗号化バックアップ処理、「2.リストア」を選択すると復号化リストア処理に進む。それぞれの処理については後述する。
【0055】
次に、クライアントデータのバックアップ処理について説明する。クライアントデータのバックアップ処理とは、認証デバイス100や利用者端末200の故障・紛失などに備えて、リストア時に必要な各種データを暗号化してサーバ装置300にバックアップする処理のことを指す。この処理は、2次発行処理と暗号化バックアップ処理の2つの処理に分かれる。2次発行処理では、クライアントデータの復号化リストアに必要な再発行用データなどをサーバ装置300にバックアップし、一方、暗号化バックアップ処理では、利用者端末200のクライアントデータを暗号化してサーバ装置300にバックアップする。
【0056】
なお、本実施形態ではサーバ装置300にデータをバックアップするが、利用者端末200にバックアップを行っても良い。
【0057】
図7にクライアントデータのバックアップ処理時の、利用者端末200の画面図を、図8に2次発行処理の処理フローを示す。図7における画面は、例えば携帯電話のディスプレイ画面を想定している。以下、2次発行処理について図7、図8を用いて説明する。
【0058】
利用者端末200は、表示装置207に画面21を表示し、利用者110から利用者IDと利用者PWの入力を受け付ける(ステップS201)。ここで利用者PWは利用者110が任意で設定するもので、他者による認証デバイス100の不正利用を防ぐための利用者識別情報である。
なお、本実施形態では利用者PWを用いたが、利用者PWではなくて利用者の生体情報を利用して生体認証を行っても良い。生体情報としては例えば、指紋、サイン、虹彩などがある。他にも、利用者だけが入力可能な秘密情報であれば、利用者PWの代わりに使用可能である。
【0059】
利用者端末200は、利用者110からのデータ入力受付後、認証デバイス100に対して、利用者ID、利用者PWを含む2次発行データ生成要求メッセージを送信する。
認証デバイス100は、該メッセージを受信し、利用者ID、利用者PWをメモリ102に一時的に保持する。次に、例えば乱数を発生させるなどして暗復号用鍵を生成する(ステップS202)。次に、利用者IDと利用者PW、およびデバイス個別鍵から、再発行用データ処理鍵を生成する(ステップS203)。
【0060】
本生成処理に関しては、例えば、利用者PWと利用者IDとを連結したデータを入力データとし、デバイス個別鍵を鍵データとし、HMAC(鍵付きハッシュアルゴリズム)を適用し、その出力を再発行用データ処理鍵とすることが考えられる。あるいは、利用者PWと利用者IDとを連結したデータにハッシュ関数(SHA1やMD5など)を適用したものを入力データとし、デバイス鍵を鍵データとし、共通鍵暗号アルゴリズム(DESやAESなど)を適用し、その出力を再発行用データ処理鍵とするとしても良い。他にも、利用者PWかデバイス鍵が未知の場合に再発行用データ処理鍵の生成や推定を防止できるアルゴリズムであれば、前記生成処理に適用が可能である。
【0061】
続いて、認証デバイス100は、前記再発行用データ処理鍵で、暗復号用鍵と利用者IDとを連結したデータを暗号化して、再発行用データを生成する(ステップS204)。また、デバイス個別鍵でデバイスIDを暗号化して、個別鍵検証データを生成する(ステップS2045)。いずれの場合も、データの暗号化にはDESやAESなどの共通鍵暗号アルゴリズムを適用する。その後利用者端末200に、再発行用データ、デバイスID、個別鍵検証データを含む2次発行データ生成応答メッセージを送信する。
利用者端末200は、該メッセージを受信後、サーバ装置300に、利用者ID、再発行用データ、デバイスID、個別鍵検証データを含む再発行用データ登録要求メッセージを送信する。
【0062】
サーバ装置300は、該再発行用データ登録要求メッセージを受信し、受信した利用者ID、再発行用データ、デバイスID、個別鍵検証データを、利用者IDで一意に特定される利用者110個別のデータ格納領域に格納する(ステップS206)。その後サーバ装置300は、利用者端末200に再発行用データ登録応答メッセージを送信する。
利用者端末200は、該メッセージを受信後、認証デバイス100に2次発行データ格納要求メッセージを送信する。
【0063】
認証デバイス100は、該メッセージを受信後、利用者ID、利用者PW、暗復号用鍵を、メモリ102に静的に格納し(ステップS207)、利用者端末200に2次発行データ格納応答メッセージを送信し、処理を終了する。
2次発行処理の実行後は、認証デバイス100には利用者ID、利用者PW、暗復号用鍵が追加格納され、サーバ装置300には、利用者ID、再発行用データ、デバイスID、個別鍵検証データが追加格納される(図4参照)。
【0064】
次に、前記2次発行処理後に引き続く、暗号化バックアップ処理について説明する。暗号化バックアップ処理は、上記2次発行処理後に初めて行う場合はこの2次発行処理から続けて行うが、暗号化バックアップ処理が2回目以降の場合は暗号化バックアップ処理だけを独立して行うものとする。
【0065】
図9に、クライアントデータ暗号化バックアップ処理の処理フローを示す。利用者端末200は、表示装置207に画面25(図7)を表示し、利用者から利用者PWの入力を受け付ける(ステップS301)。なお2次発行処理後の初回バックアップの場合は、2次発行処理時にすでに利用者PWを入力済みなので、このステップを省くことができる。
【0066】
利用者端末200は、利用者PWの入力受付後、表示装置207に画面23を表示し、利用者PWを含む暗復号用鍵等要求メッセージを認証デバイス100に送信する。
認証デバイス100は、該メッセージを受信後、受信した利用者PWと、メモリ102に格納している利用者PWとを照合し、利用者PWの正当性を検証する(ステップS302)。ここで利用者PWが正しいと判定した場合、認証デバイス100は、メモリ102に格納している、利用者ID、暗復号用鍵を含む暗復号用鍵等応答メッセージを、利用者端末200に送信する。
【0067】
なお、図9におけるフローでは省略しているが、利用者PWが誤りである場合でも、所定回数までは、ステップS301からの処理を繰り返す(再度、利用者PWの入力を受け付ける)ものとできる。このような処理において、もし所定回数を超えて利用者PWが誤りであった場合、認証デバイス100はそれ以降の処理を一切実行しない。
【0068】
利用者端末200は、暗復号用鍵等応答メッセージを受信後、利用者端末200に格納されているクライアントデータを暗復号用鍵で暗号化し(ステップS303)、暗号化クライアントデータを生成する。その後、利用者端末200はサーバ装置300に対し、利用者ID、暗号化クライアントデータを含むバックアップ要求メッセージを送信する。
【0069】
なお、ステップS303は、利用者端末200内でなく、認証デバイス100内で実行しても良い。その場合は、前述までの処理フローを以下のように変更する。利用者端末200は、認証デバイス100に対し、暗復号用鍵等要求メッセージの代わりに、利用者PWとクライアントデータを含む暗号化クライアントデータ生成要求メッセージを送信する。
【0070】
認証デバイス100は該メッセージ受信後、ステップS302を実行し利用者PW検証を行い、利用者PWが正しければ、メモリ102に格納されている暗復号用鍵を用いてステップS303を実行する。その後、利用者端末200に対し、暗復号用鍵等応答メッセージの代わりに、利用者ID、暗号化クライアントデータを含む、暗号化クライアントデータ生成応答メッセージを送信する。利用者端末200は該メッセージ受信後、ステップS303は省き、サーバ装置300にバックアップ要求メッセージを送信する。
【0071】
サーバ装置300は、バックアップ要求メッセージを受信後、受信した暗号化クライアントデータを、利用者IDで一意に特定される利用者個別のデータ格納領域に格納する(ステップS305)。その後、利用者端末200にバックアップ応答メッセージを送信する。利用者端末200は、該メッセージを受信すると、表示装置207に画面24を表示し、処理を終了する。
暗号化バックアップ処理の実行後は、サーバ装置300において、暗号化クライアントデータが追加格納される(図4参照)。
【0072】
このように、サーバ装置300は、暗号化クライアントデータと共に、再発行用データを格納する。再発行用データは、暗号化クライアントデータを暗復号化する暗復号用鍵を再発行用データ処理鍵で暗号化したデータである。暗復号用鍵を暗号化してバックアップすることにより、サーバの運用者などが不正に暗号化クライアントデータを復号化することを防止する。
【0073】
本実施形態では利用者端末200内のクライアントデータのみを暗号化バックアップしているが、利用者端末200ではなく認証デバイス100内のデータのみを暗号化バックアップしても良いし、両方をバックアップしても良い。どちらの場合も認証デバイス100から利用者端末200に、認証デバイス内のデータを送信するステップを加える。
【0074】
また、本実施形態では暗号化バックアップの処理フローにおいて、暗復号用鍵を用いてクライアントデータを暗号化したが(ステップS303)、再発行用データ処理鍵でクライアントデータを暗号化しても良い。
【0075】
その場合、暗復号用鍵は不要であり、2次発行処理のフローにおいて、ステップS202、ステップS204は省略する。2次発行データ生成応答メッセージ、再発行用データ登録要求メッセージ中の、再発行用データも省略する。ステップS206では、再発行用データの格納を省略する。ステップS207では、暗復号用鍵の格納を省略する。暗号化バックアップ処理のフローにおいては、認証デバイス100はステップS302の実行後に再発行用データ処理鍵を生成し(ステップS203)、暗復号用鍵等応答メッセージに、暗復号用鍵ではなく再発行用データ処理鍵を含める。
【0076】
続いてクライアントデータのリストア処理について説明する。クライアントデータのリストア処理とは、クライアントデータの暗号化バックアップ処理後に、例えば利用者が認証デバイス100及び利用者端末200の両方を紛失・故障などした場合に実行される処理である。この場合、利用者により用意された新たな認証デバイスおよび新たな利用者端末に対しデータを復旧させる処理がなされる。このクライアントデータのリストア処理は、2次再発行処理と復号化リストア処理の2つの処理に分かれる。2次再発行処理では認証デバイス100を2次発行処理後の状態にし、一方、復号化バックアップ処理では利用者端末200のクライアントデータを復旧する。
【0077】
なお、本実施形態ではサーバ装置300にデータをバックアップした場合について記述するが、利用者端末200にバックアップを行った場合には、サーバ装置300ではなく、利用者端末200からデータのリストア処理を行う。
【0078】
図10に利用者端末200の画面図を示す。図10に示す画面は、例えば携帯電話のディスプレイ画面を想定する。また、図11および図12に、2次再発行処理の処理フローを示す。
【0079】
利用者端末200は、表示装置207に画面41を表示し、利用者110から、利用者ID、利用者PWの入力を受け付ける(ステップS501)。その後利用者端末200は表示装置207に画面42を表示し、サーバ装置300に対して、利用者IDを含むデバイスID要求メッセージを送信する。
【0080】
サーバ装置300は、該メッセージを受信後、受信した利用者IDで特定されるデバイスIDを、外部記憶装置304から取得する(ステップS402)。ここで取得したデバイスIDを、以下ではdiと表記する。その後、デバイスID:diを含むデバイスID応答メッセージを、利用者端末200に送信する。
利用者端末200は、該メッセージを受信すると、利用者IDとデバイスID:diを含むデバイス個別鍵準備要求メッセージを、認証デバイス100に送信する。
【0081】
認証デバイス100は該メッセージを受信すると、利用者IDとデバイスID:diをメモリ102に一時的に保持する。続いてデバイスID:diと、認証デバイス100内に格納されているデバイスID(以下、djと表記する)を結合したデータを生成する(ステップS403)。その後、認証デバイス100内に格納されているデバイス個別鍵(以下、Kdjと表記する)を鍵として、該結合データに対する電子署名データであるデバイスID署名データを生成する(ステップS404)。
【0082】
その後、認証デバイス100は、デバイスID:di、デバイスID:dj、デバイスID署名を含むデバイス個別鍵準備応答メッセージを、利用者端末200に送信する。利用者端末200は該メッセージを受信すると、デバイスID:di、デバイスID:dj、デバイスID署名を含むデバイス個別鍵要求メッセージを、個別鍵設定機500に送信する。
【0083】
個別鍵設定機500は該メッセージを受信すると、デバイスID:djとグローバル鍵を使用して、デバイス個別鍵Kdjを生成する(ステップS405)。本ステップの処理方法に関しては、ステップS102と同様である。次に、デバイス個別鍵Kdjを鍵として、デバイスID署名データを検証する(ステップS406)。具体的には、デバイスID:diおよびdjを結合したデータに対して、ステップS405で生成したデバイス個別鍵Kdjを鍵データとして電子署名データを生成し、該電子署名データが受信したデバイスID署名と一致するか判定する。
【0084】
検証に成功した場合、個別鍵設定機500は、受信したデバイスID:djと一致するデータがリストア済みデバイスIDとして外部記憶装置504に格納済みか検索し、発見した場合は再発行不能、発見しなかった場合は再発行可能と判定する(ステップS407)。再発行可能と判定した場合、デバイスID:djをリストア済みデバイスIDとして外部記憶装置504に追加格納する(ステップS408)。
【0085】
なお、再発行回数の値をリストア済みデバイスIDと対応づけて外部記憶装置504に格納し、ステップS407においてリストア済みデバイスIDを発見した場合は再発行回数の値を判定し、所定回数(例えば3回)を超えていた場合にだけ再発行不能と判定するようにしても良い。この場合、ステップS408においては、該再発行回数の値を1増やす。
【0086】
その後、デバイスID:diとグローバル鍵を使用して、デバイス個別鍵Kdiを生成する(ステップS409)。本ステップの処理方法に関しては、ステップS102と同様である。続いて、KdiをKdjで暗号化したデータである暗号化デバイス個別鍵データを生成し(ステップS410)、該暗号化デバイス個別鍵を含むデバイス個別鍵応答メッセージを利用者端末200に送信する。
【0087】
利用者端末200は該メッセージを受信すると、利用者IDを含む再発行用データ要求メッセージをサーバ装置300に送信する。サーバ装置300は、該メッセージを受信すると、外部記憶装置304から該利用者IDで特定される、再発行用データおよび個別鍵検証データを取得し(ステップS502)、利用者端末200に再発行用データおよび個別鍵検証データを含む再発行用データ応答メッセージを送信する。
利用者端末200は、該メッセージを受信すると、認証デバイス100に対して、利用者PW、再発行用データ、暗号化デバイス個別鍵、個別鍵検証データを含む2次再発行データ格納要求メッセージを送信する。
【0088】
認証デバイス100は、該メッセージを受信すると、利用者PW、再発行用データ、暗号化デバイス個別鍵、個別鍵検証データをメモリ102に一時的に保持する。続いて、デバイス個別鍵Kdjを鍵データとして、暗号化デバイス個別鍵を復号化し、デバイス個別鍵Kdiを取得する(ステップS701)。次に、該デバイス個別鍵Kdiを鍵データとして個別鍵検証データを復号化し、デバイスID:diを取得する(ステップS702)。ここで取得したdiと、デバイス個別鍵準備要求メッセージで受信したdiを比較し、一致するか判定する(ステップS703)。
【0089】
一致すると判定した場合、続いて認証デバイス100は、利用者IDと利用者PW、デバイス個別鍵Kdiとから再発行用データ処理鍵を生成する(ステップS203)。次に該再発行用データ処理鍵で再発行用データを復号化し、暗復号用鍵と利用者IDを取得する(ステップS503)。続いて、ここで取得した利用者IDと、デバイス個別鍵準備要求メッセージで受信した利用者IDが一致するか判定する(ステップS704)。
一致すると判定した場合、利用者ID、利用者PW、暗復号用鍵をメモリ102に静的に格納し(ステップS504)、利用者端末200に2次再発行データ格納応答メッセージを送信し処理を終了する。
【0090】
こうした2次再発行処理の実行後においては、認証デバイス100に、利用者ID、利用者PW、暗復号用鍵、が追加格納されている(図4参照)。
なお、前述の暗号化バックアップ処理で、再発行用データ処理鍵でクライアントデータを暗号化した場合は、再発行用データおよび暗復号用鍵を省く。
【0091】
次に、上記の2次再発行処理に続く、復号化リストア処理の説明を行う。復号化リストア処理は、上記2次再発行処理後に初めて行う場合はこの2次再発行処理から続けて行うが、復号化リストア処理が2回目以降の場合は復号化リストア処理だけを独立して行うものとする。図13に復号化リストア処理の処理フローを示す。利用者端末200は、表示装置207に画面44を表示し、利用者110から利用者PWの入力を受け付ける(ステップS601)。なお2次再発行処理後の初回リストアの場合は、2次再発行処理で既に利用者PWは入力済みであるので、このステップは省いても良い。
【0092】
利用者端末200は、利用者PWの入力受付後、認証デバイス100に対して、利用者PWを含む暗復号用鍵等要求メッセージを送信する。認証デバイス100は、該メッセージを受信後、利用者PW検証を行う(ステップS302)。利用者PWが正しければ、利用者端末200に対して、メモリ102に格納している、利用者IDおよび暗復号用鍵を含む暗復号用鍵等応答メッセージを送信する。
【0093】
なお、図13におけるフローでは省略しているが、利用者PWが誤りである場合でも、所定回数までは、ステップS601からの処理を繰り返す(再度、利用者PWの入力を受け付ける)ものとできる。このような処理に際し、所定回数を超えて利用者PWが誤りであった場合、認証デバイス100はそれ以降の処理を一切実行しない。
【0094】
利用者端末200は、暗復号用鍵等応答メッセージの受信後、サーバ装置300に、利用者IDを含むリストア要求メッセージを送信する。サーバ装置300は、該メッセージを受信後、外部記憶装置304から該利用者IDで特定される暗号化クライアントデータを取得し(ステップS602)、利用者端末200に対して暗号化クライアントデータを含むリストア応答メッセージを送信する。利用者端末200は、該メッセージを受信後、暗復号用鍵で暗号化クライアントデータを復号化してクライアントデータを取り出して(ステップS603)、格納し(ステップS604)、表示装置207に画面43を表示して処理を終了する。
【0095】
なお、ステップS603は、利用者端末200内でなく、認証デバイス100内で実行しても良い。その場合は、前述までの処理フローを以下のように変更する。利用者端末200は、認証デバイス100に対して、暗復号用鍵等要求メッセージではなく、利用者PWを含む利用者ID等要求メッセージを送信する。認証デバイス100は、該メッセージを受信後、ステップ302を実行し、利用者端末200に対し、暗復号用鍵等応答メッセージではなく、利用者IDを含む利用者ID等応答メッセージを送信する。また利用者端末200はサーバ装置300からリストア応答メッセージを受信後、認証デバイス100に対し、暗号化クライアントデータを含むクライアントデータ復号化要求メッセージを送信する。認証デバイス100は、該メッセージを受信後、ステップS603を実行し、利用者端末200に対し、クライアントデータを含む暗号化クライアントデータ復号化応答メッセージを送信する。利用者端末200は、該メッセージを受信後、ステップS604を実行して処理を終了する。
【0096】
また、暗号化バックアップ処理で利用者端末200のクライアントデータとともに認証デバイス100内のデータもバックアップした場合は、上記の復号化リストアの処理フローを以下のように変更する。ステップS603の実行後に認証デバイス100に対し、認証デバイス内のデータを含む認証デバイスデータ格納要求メッセージを送信する。認証デバイス100は該メッセージを受信後、メモリ102に該認証デバイスデータを格納し、利用者端末200に対し、認証デバイスデータ格納応答メッセージを送信する。利用者端末200は、該メッセージを受信後、ステップS604を実行して処理を終了する。なお、暗号化バックアップ処理で、利用者端末200のクライアントデータではなく、認証デバイス内のデータのみをバックアップした場合はステップ604を省く。
【0097】
また、前述の暗号化バックアップ処理で、暗復号用鍵でなく再発行用データ処理鍵でクライアントデータを暗号化した場合、利用者端末200は、認証デバイス100に対して、暗復号用鍵等要求メッセージではなく、利用者PWを含む再発行用データ処理鍵等要求メッセージを送信する。
【0098】
認証デバイス100は該メッセージを受信後、利用者ID、利用者PW、およびデバイス鍵から再発行用データ処理鍵を生成する。その後、利用者端末200に対して、暗復号用鍵等応答メッセージではなく、利用者IDおよび再発行用データ処理鍵を含む再発行用データ処理鍵等応答メッセージを送信する。また、ステップS603は暗復号用鍵ではなく再発行用データ処理鍵を用いる。
【0099】
こうした復号化リストア処理の実行後においては、利用者端末200にクライアントデータが格納された状態となる(図4参照)。このように、クライアントデータの復号化リストアに再発行用データを用いることで、サーバ装置にクライアントデータの内容を知られることなくバックアップ、リストアを行える。
【0100】
また、再発行用データを暗復号化する再発行用データ処理鍵は、利用者ID、利用者PW、認証デバイス100毎に異なるデバイス個別鍵などから生成する。利用者PWを用いることで利用者PWを知る者のみが鍵を生成できるようにしている。また、デバイス鍵を用いることで、利用者個別の鍵が生成でき、かつ再発行用データ処理鍵の生成に認証デバイス100が不可欠としている。これにより、PCなどによるパスワード総当り攻撃を防止している。これらにより再発行用データ処理鍵は安全に生成できる。
【0101】
さらに、バックアップ処理およびリストア処理は、認証デバイス100と利用者端末200を入手することを除いてオンラインで実行される。そのため本発明によれば、利用者110にとって簡便性の高いバックアップ処理およびリストア処理を提供できる。
【0102】
また、本発明では、デバイスを一意に識別するデバイスIDとグローバル鍵とを入力データとしてデバイス個別鍵を生成(S102、S409)し、該デバイス個別鍵を利用して再発行用データ処理鍵を生成している(S203)。これにより、仮に攻撃者が、認証デバイス100の内部のデータを解析・取得し、暗号化クライアントデータと再発行用データをサーバ装置300から取得し、かつブルート・フォース攻撃(総当たり法)などによるパスワード推定に成功した場合でも、暗号化クライアントデータを復号化される被害を制限することができる。
【0103】
具体的には、復号化されるデータを、解析された認証デバイス100内の個別鍵を使用してバックアップ処理されたクライアントデータと、他のただ一つのクライアントデータの合わせて二つに、制限することができる。ただしこの制限は、下記の事項を前提とする。すなわち、暗号方式(DESやAES)自体が破られないこと、グローバル鍵が流出しないこと、個別鍵設定機500から認証デバイス100まで、デバイス個別鍵は安全に送信されること、2次再発行処理時に個別鍵設定機500から認証デバイス100が取得可能な新たなデバイス個別鍵は、認証デバイス100内のデバイス個別鍵につき一つであること、である。
【0104】
前記前提のうち、デバイス個別鍵の安全な送信を実現するために本発明では、送信先の認証デバイス100のデバイス個別鍵で、送信するデバイス個別鍵を暗号化して送信し(ステップS410)、認証デバイス100内で復号化している(ステップS701)。なお、別の方法などによりデバイス個別鍵を安全に送信可能などの場合には、ステップS410、ステップS701は省略しても良い。この場合、デバイス個別鍵応答メッセージおよび2次再発行データ格納要求メッセージにおいては、暗号化デバイス個別鍵データの代わりにデバイス個別鍵Kdiを含める。
【0105】
また、前記前提のうち、2次再発行処理時に取得可能なデバイス個別鍵の個数制限を実現するために本発明では、認証デバイス100内のデバイスID:djとデバイス個別鍵Kdjを使用した電子署名を生成し(ステップS404)、該電子署名とデバイスID:djを個別鍵設定機500に送信し、個別鍵設定機500は該電子署名を検証し(ステップS406)、該デバイスID:djが外部記憶装置504に格納済みか判定し(ステップS407)、該検証が成功し、かつ該デバイスID:djが未格納な場合にだけ2次再発行処理を続行するようにしている。これにより、認証デバイス100内のデバイス個別鍵Kdjが、ハードウェア的な攻撃などにより解析された場合でも、一回は2次再発行処理を実行可能だが、2回目以降は実行不能とするようにしている。
【0106】
なお、別の方法などにより、前記の個数制限を実現可能な場合には、ステップS403、ステップS404、ステップS406、ステップS407、ステップS408は省略しても良い。この場合、本実施形態において示した各種メッセージから、デバイスID署名データは省略する。
【0107】
また、本発明では、2次発行処理時に認証デバイス100内において、デバイス個別鍵でデバイスIDを暗号化して、個別鍵検証データを生成し(ステップS2045)、該個別鍵検証データをサーバ装置300に送信し、2次再発行処理時には認証デバイス100内において、個別鍵検証データを復号化し(ステップS702)、デバイスIDの一致を検証している(ステップS703)。これにより、バックアップ時とリストア時とで、再発行用データ処理鍵の生成に使用するデバイス個別鍵が一致するか、認証デバイス100が判定することを可能にしている。例えば、サーバ装置300に格納するデバイスIDのデータが壊れた場合でも、認証デバイス100においてそれを判定することが可能である。 サーバ装置300に格納するデバイスIDが壊れた場合でも、別の手段でそれを修復するなどの理由により、前記のデバイス個別鍵の一致を判定することが不要な場合は、ステップS2045、ステップS702、ステップ703は省略しても良い。この場合、本実施形態において示した各種メッセージから、個別鍵検証データは省略する。また、ステップS206およびステップS502における、個別鍵検証データの登録や取得も省略する。
【0108】
なお、本実施例では、デバイスIDをデバイス識別するためのデータ(デバイス識別データ)として使用したが、デバイスIDの代わりに利用者IDや、認証デバイス100のロット毎に異なるロットIDを使用しても良い。
【0109】
また、本発明では、利用者端末200を取り替えたり、クライアントデータを誤消去したりした場合にも、クライアントデータのリストアが可能である。その場合には2次再発行処理を省略し、復号化リストア処理だけを独立して実行する。ただし復号化リストア処理フローのステップS601は必須である。
【0110】
また、本発明では、認証デバイス100と利用者端末200を共に紛失・故障した場合でのデータリストア処理について説明したが、認証デバイス100のみが紛失・故障した場合には2次再発行処理のみを実行する。ただし、クライアントデータの暗号化バックアップ処理で、認証デバイス100内のデータをバックアップした場合は、2次再発行処理と復号化リストア処理の両方を行う。また、利用者端末200のみが紛失・故障した場合には復号化リストア処理だけを実行する。この場合は、ステップS601は必須である。
【0111】
なお、上記に示した、認証デバイス100、利用者端末200、サーバ装置300あるいは個別鍵設定機500における各ステップは、認証デバイス100など各々においてハードウェアとして実現しても良いし、HDDやメモリなどの適宜な記憶装置に格納したプログラムとして実現するとしても良い。この場合、各ステップを有する前記認証デバイス100らのそれぞれにおけるCPUがプログラム実行に合わせて記憶装置より該当プログラムをメモリに読み出して、これを実行することとなる。
【0112】
本発明によれば、鍵を保持するICカードが故障したり、紛失したりした場合であっても、利用者による簡便確実なデータのリストアが可能となる。また、利用者がクライアント端末のデータを誤消去した場合や、クライアント端末を交換した場合にも、簡便確実にクライアントデータのリストアを行える。したがって、バックアップやリストアに用いていた鍵データの紛失等に際しても、クライアントデータの簡便確実なリストアを可能とできる。
【0113】
以上、本発明の実施の形態について、その実施の形態に基づき具体的に説明したが、これに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【図面の簡単な説明】
【0114】
【図1】本発明の実施形態におけるシステム全体図である。
【図2】本発明の実施形態におけるハードウェア構成図である。
【図3】本発明の実施形態におけるデータ配置図である。
【図4】本発明の実施形態におけるデータ遷移図である。
【図5】本発明の実施形態における1次発行処理のフロー図である。
【図6】本発明の実施形態におけるメニュー選択処理の画面図である。
【図7】本発明の実施形態におけるバックアップ処理の画面図である。
【図8】本発明の実施形態における2次発行処理のフロー図である。
【図9】本発明の実施形態における暗号化バックアップ処理のフロー図である。
【図10】本発明の実施形態におけるリストア処理の画面図である。
【図11】本発明の実施形態における2次再発行処理のフロー図である。
【図12】本発明の実施形態における2次再発行処理のフロー図である。
【図13】本発明の実施形態における復号化リストア処理のフロー図である。
【符号の説明】
【0115】
100 認証デバイス
200 利用者端末
300 サーバ装置
400 通信ネットワーク
500 個別鍵設定機
S201 利用者ID・利用者PW入力ステップ
S202 暗復号鍵生成ステップ
S203 再発行用データ処理鍵生成ステップ
S204 再発行用データ生成ステップ
S2045 個別鍵検証データ生成ステップ
S206 再発行用データ等登録ステップ
S207 暗復号用鍵等格納ステップ

【特許請求の範囲】
【請求項1】
認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムにおける、前記認証デバイスが実行する暗号化バックアップ方法であって、
デバイス固有のデバイス個別鍵を記憶装置から取得するステップと、
利用者固有の秘密情報を入力インターフェイスより受信するステップと、
該秘密情報を記憶装置に格納するステップと、
該デバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成するステップと、
を含む暗号化バックアップ方法。
【請求項2】
請求項1において、
クライアントデータを暗号化する暗復号用鍵を生成するステップと、
該暗復号用鍵を記憶装置に格納するステップと、
該再発行用データ処理鍵で前記暗復号用鍵を暗号化し再発行用データを生成するステップと、
を含む暗号化バックアップ方法。
【請求項3】
請求項1または請求項2において、
認証デバイスを識別するためのデバイス識別データを記憶装置から取得するステップと、
デバイス識別データをデバイス個別鍵で暗号化することにより、個別鍵検証データを生成するステップと、
該個別鍵検証データをバックアップ装置に送信するステップと、
を含む暗号化バックアップ方法。
【請求項4】
認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムにおける、前記認証デバイスが実行する復号化リストア方法であって、
デバイス固有のデバイス個別鍵を、第一のデバイス個別鍵として個別鍵設定機から受信するステップと、
利用者固有の秘密情報を入力インターフェイスより受信するステップと、
該秘密情報を記憶装置に格納するステップと、
該第一のデバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成するステップと、
を含む復号化リストア方法。
【請求項5】
請求項4において、
該再発行用データ処理鍵で暗復号用鍵を暗号化して事前に生成していた再発行用データを、当該再発行用データ格納先の情報処理装置より取得するステップと、
前記再発行用データ処理鍵で該再発行用データを復号化し、暗号化クライアントデータを復号化する暗復号用鍵を取り出すステップと、
を含む復号化リストア方法。
【請求項6】
請求項4または請求項5において、
認証デバイスを識別するためのデバイス識別データを、第一のデバイス識別データとしてバックアップ装置から受信するステップと、
認証デバイスを識別するためのデバイス識別データを、該第一のデバイス個別鍵で暗号化して事前に生成していた個別鍵検証データをバックアップ装置から受信するステップと、
該個別鍵検証データを該第一のデバイス個別鍵で復号化し、デバイス識別データを第二のデバイス識別データとして取り出すステップと、
該第一の識別データと該第二の識別データの一致を判定するステップと、
を含む復号化リストア方法。
【請求項7】
請求項4から請求項6のいずれかにおいて、
デバイス固有のデバイス個別鍵を、第二のデバイス個別鍵として記憶装置から取得するステップと、
を含む復号化リストア方法。
【請求項8】
請求項7において、
該第一のデバイス個別鍵を該第二のデバイス個別鍵で暗号化した暗号化デバイス個別鍵データを、該第二のデバイス個別鍵で復号化するステップと、を含み、
デバイス固有のデバイス個別鍵を、第一のデバイス個別鍵として受信するステップにおいて、該第一のデバイス個別鍵は該第二のデバイス個別鍵で暗号化されていることを特徴とする、復号化リストア方法。
【請求項9】
請求項7または請求項8において、
認証デバイスを識別するためのデバイス識別データを、第三のデバイス識別データとして記憶装置から取得するステップと、
該第三のデバイス識別データに対する電子署名データを、該第二のデバイス個別鍵を鍵として生成するステップと、
該電子署名データを個別鍵設定機に送信するステップと、
を含む復号化リストア方法。
【請求項10】
認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムにおける、個別鍵設定機が実行する復号化リストア方法であって、
デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得するステップと、
認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信するステップと、
該グローバル鍵と該第一のデバイス識別データに基づいて、第一のデバイス個別鍵を生成するステップと、
認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信するステップと、
該グローバル鍵と該第二のデバイス識別データに基づいて、第二のデバイス個別鍵を生成するステップと、
該第二のデバイス個別鍵で該第一のデバイス個別鍵を暗号化した暗号化デバイス個別鍵データを生成するステップと、
該暗号化デバイス個別鍵データを認証デバイスに送信するステップと、
を含む復号化リストア方法。
【請求項11】
認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムにおける、個別鍵設定機が実行する復号化リストア方法であって、
デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得するステップと、
認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信するステップと、
該グローバル鍵と該第一のデバイス識別データに基づいて、第一のデバイス個別鍵を生成するステップと、
認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信するステップと、
該グローバル鍵と該第二のデバイス識別データに基づいて、第二のデバイス個別鍵を生成するステップと、
該第二のデバイス個別鍵を鍵とし、該第二のデバイス識別データを対象として生成された、電子署名データを入力インターフェイスより受信するステップと、
該電子署名データの正当性を検証するステップと、
該第二のデバイス識別データが存在するか記憶装置を検索するステップと、
該第二のデバイス識別データが記憶装置に存在しなかった場合、該第二のデバイス識別データを記憶装置に登録するステップと、
を含む復号化リストア方法。
【請求項12】
バックアップ装置および個別鍵設定機とシステムを構成する認証デバイスであって、
デバイス固有のデバイス個別鍵を記憶装置から取得する処理部と、
利用者固有の秘密情報を入力インターフェイスより受信する処理部と、
該秘密情報を記憶装置に格納する処理部と、
該デバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成する処理部と、
を備える認証デバイス。
【請求項13】
バックアップ装置および個別鍵設定機とシステムを構成する、認証デバイスであって、 デバイス固有のデバイス個別鍵を、第一のデバイス個別鍵として個別鍵設定機から受信する処理部と、
利用者固有の秘密情報を入力インターフェイスより受信する処理部と、
該秘密情報を記憶装置に格納する処理部と、
該第一のデバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成する処理部と、
を備える認証デバイス。
【請求項14】
認証デバイスおよびバックアップ装置とシステムを構成する、個別鍵設定機であって、
デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得する処理部と、
認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信する処理部と、
該グローバル鍵と該第一のデバイス識別データに基づいて、第一のデバイス個別鍵を生成する処理部と、
認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信する処理部と、
該グローバル鍵と該第二のデバイス識別データに基づいて、第二のデバイス個別鍵を生成する処理部と、
該第二のデバイス個別鍵で該第一のデバイス個別鍵を暗号化した暗号化デバイス個別鍵データを生成する処理部と、
該暗号化デバイス個別鍵データを認証デバイスに送信する処理部と、
を備える個別鍵設定機。
【請求項15】
認証デバイスおよびバックアップ装置とシステムを構成する、個別鍵設定機であって、
デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得する処理部と、
認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信する処理部と、
該グローバル鍵と該第一のデバイス識別データに基づいて、第一のデバイス個別鍵を生成する処理部と、
認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信する処理部と、
該グローバル鍵と該第二のデバイス識別データに基づいて、第二のデバイス個別鍵を生成する処理部と、
該第二のデバイス個別鍵を鍵とし、該第二のデバイス識別データを対象として生成された、電子署名データを入力インターフェイスより受信する処理部と、
該電子署名データの正当性を検証する処理部と、
該第二のデバイス識別データが存在するか記憶装置を検索する処理部と、
該第二のデバイス識別データが記憶装置に存在しなかった場合、該第二のデバイス識別データを記憶装置に登録する処理部と、
を備える個別鍵設定機。
【請求項16】
認証デバイスとバックアップ装置と個別鍵設定機とを少なくとも構成要素として持つシステムを利用して、格納情報の暗号化バックアップ処理を図る利用者端末であって、
利用者の秘密情報を含む、暗復号用鍵の要求メッセージを認証デバイスに送信する処理部と、
認証デバイスから、前記秘密情報に基づく認証結果と当該秘密情報に対応する利用者の利用者ID、暗復号用鍵の情報を受信後、クライアントデータを前記暗復号用鍵で暗号化し、暗号化クライアントデータを生成する処理部と、
前記利用者IDおよび前記暗号化クライアントデータを含むバックアップ要求メッセージをサーバ装置に対して送信する処理部と、
前記バックアップ要求メッセージに応じて前記暗号化クライアントデータの格納処理が実行された旨の応答情報を、サーバ装置から受信し、表示装置に出力する処理部と、
を備える利用者端末。
【請求項17】
請求項16において、
デバイスID、デバイスID署名を含むデバイス個別鍵要求メッセージを、個別鍵設定機に送信する処理部と、
個別鍵設定機より暗号化デバイス個別鍵データを含むデバイス個別鍵応答メッセージを受信する処理部と、
を備える利用者端末。
【請求項18】
請求項16において、
利用者IDとデバイスIDを含むデバイス個別鍵準備要求メッセージを、認証デバイスに送信する処理部と、
デバイスID、デバイスID署名を含むデバイス個別鍵準備応答メッセージを認証デバイスから受信すると、デバイスID、デバイスID署名を含むデバイス個別鍵要求メッセージを個別鍵設定機に送信する処理部と、
を備える利用者端末。
【請求項19】
認証デバイスおよび個別鍵設定機とシステムを構成する、バックアップ装置であって、
デバイス固有のデバイス個別鍵で、認証デバイスを識別するためのデバイス識別データを暗号化することにより認証デバイスが生成した個別鍵検証データを、当該認証デバイスより受信する処理部を備えるバックアップ装置。
【請求項20】
認証デバイスおよび個別鍵設定機とシステムを構成する、バックアップ装置であって、
認証デバイスを識別するためのデバイス識別データを、第一のデバイス識別データとして認証デバイスに送信する処理部と、
認証デバイスを識別するためのデバイス識別データを、デバイス固有のデバイス個別鍵たる第一のデバイス個別鍵で暗号化して事前に生成していた、個別鍵検証データを認証デバイスに送信する処理部と、
を備えるバックアップ装置。
【請求項21】
バックアップ装置および個別鍵設定機とシステムを構成する認証デバイスに、暗号化バックアップ方法を実行させるためのプログラムであって、
デバイス固有のデバイス個別鍵を記憶装置から取得するステップと、
利用者固有の秘密情報を入力インターフェイスより受信するステップと、
該秘密情報を記憶装置に格納するステップと、
該デバイス個別鍵と該秘密情報を入力データとし、かつ入力データのうちいずれかが未知であれば値の推定が困難なデータを、再発行用データ処理鍵として生成するステップと、
を含む暗号化バックアッププログラム。
【請求項22】
バックアップ装置および個別鍵設定機とシステムを構成する認証デバイスに、復号化リストア方法を実行させるためのプログラムであって、
デバイス固有のデバイス個別鍵を、第一のデバイス個別鍵として個別鍵設定機から受信するステップと、
利用者固有の秘密情報を入力インターフェイスより受信するステップと、
該秘密情報を記憶装置に格納するステップと、
該第一のデバイス個別鍵と該秘密情報に基づいて、再発行用データ処理鍵を生成するステップと、
を含む復号化リストアプログラム。
【請求項23】
認証デバイスおよびバックアップ装置とシステムを構成する個別鍵設定機に、復号化リストア方法を実行させるための復号化リストアプログラムであって、
デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得するステップと、
認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信するステップと、
該グローバル鍵と該第一のデバイス識別データに基づいて、第一のデバイス個別鍵を生成するステップと、
認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信するステップと、
該グローバル鍵と該第二のデバイス識別データに基づいて、第二のデバイス個別鍵を生成するステップと、
該第二のデバイス個別鍵で該第一のデバイス個別鍵を暗号化した暗号化デバイス個別鍵データを生成するステップと、
該暗号化デバイス個別鍵データを認証デバイスに送信するステップと、
を含む復号化リストアプログラム。
【請求項24】
認証デバイスおよびバックアップ装置とシステムを構成する個別鍵設定機に、復号化リストア方法を実行させるためのプログラムであって、
デバイス固有のデバイス個別鍵を、生成するための元データとなるグローバル鍵を、記憶装置から取得するステップと、
認証デバイスを識別するための第一のデバイス識別データを入力インターフェイスより受信するステップと、
該グローバル鍵と該第一のデバイス識別データに基づいて、第一のデバイス個別鍵を生成するステップと、
認証デバイスを識別するための第二のデバイス識別データを入力インターフェイスより受信するステップと、
該グローバル鍵と該第二のデバイス識別データに基づいて、第二のデバイス個別鍵を生成するステップと、
該第二のデバイス個別鍵を鍵とし、該第二のデバイス識別データを対象として生成された、電子署名データを入力インターフェイスより受信するステップと、
該電子署名データの正当性を検証するステップと、
該第二のデバイス識別データが存在するか記憶装置を検索するステップと、
該第二のデバイス識別データが記憶装置に存在しなかった場合、該第二のデバイス識別データを記憶装置に登録するステップと、
を含む復号化リストアプログラム。

【図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

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2007−20065(P2007−20065A)
【公開日】平成19年1月25日(2007.1.25)
【国際特許分類】
【出願番号】特願2005−201588(P2005−201588)
【出願日】平成17年7月11日(2005.7.11)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】