JP6426520B2 - 暗号鍵管理システムおよび暗号鍵管理方法 - Google Patents

暗号鍵管理システムおよび暗号鍵管理方法 Download PDF

Info

Publication number
JP6426520B2
JP6426520B2 JP2015072484A JP2015072484A JP6426520B2 JP 6426520 B2 JP6426520 B2 JP 6426520B2 JP 2015072484 A JP2015072484 A JP 2015072484A JP 2015072484 A JP2015072484 A JP 2015072484A JP 6426520 B2 JP6426520 B2 JP 6426520B2
Authority
JP
Japan
Prior art keywords
key
user
authentication
information
password
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2015072484A
Other languages
English (en)
Other versions
JP2016192715A (ja
Inventor
敏治 和田
敏治 和田
文明 大畑
文明 大畑
翼 青木
翼 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Digital Solutions Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Toshiba Digital Solutions Corp filed Critical Toshiba Corp
Priority to JP2015072484A priority Critical patent/JP6426520B2/ja
Publication of JP2016192715A publication Critical patent/JP2016192715A/ja
Application granted granted Critical
Publication of JP6426520B2 publication Critical patent/JP6426520B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本実施形態は、暗号鍵管理システムおよび暗号鍵管理方法
に関する。
近年、個人情報などの秘匿したい情報(以下、秘匿情報という。)について、ユーザ認証により情報を保護できるだけでなく、データベースの複製やHDDの抜き取り(2次記憶の詐取)、又はバックアップメディアの盗難(3次記憶の詐取)など、2次記憶や3次記憶に保存された情報が詐取された場合あっても秘匿情報を保護できるシステムが求められている。
このような要求に対し、データサーバ側で秘匿情報を暗号化して保存し、その暗号化に使用した暗号鍵をアプリケーションサーバ側に保存するシステムなどが知られているが、両サーバの2次記憶の情報が詐取されてしまうと、暗号化された秘匿情報を暗号鍵で復号することが可能になってしまう。
そこで、システムを利用するユーザ自身しか知り得ない情報(例えばパスワード)から作成した暗号鍵(鍵ハッシュ)をシステム内に保存する手法が有効となっている。
特開2012−79231号公報
しかしながら、従来技術においては、ユーザが認証後にシステムを利用しながら、並行してパスワードを変更した場合には、認証時に作成した暗号鍵(以下、旧暗号鍵という。)と、パスワード変更によって新たに作成された暗号鍵(以下、新暗号鍵という。)の内容が異なってしまう。この結果、旧暗号鍵を用いて秘匿された情報(保護データ)を新暗号鍵で復号しようとすると失敗してしまうため、復号時のエラーを回避するためには再認証を行った上で新暗号鍵を作成しなければならず、作業効率の低下を招くという問題があった。
そこで、本発明は、上記従来技術の問題に鑑み、認証されたユーザがシステムを利用している際に、並行してパスワードの変更があった場合に、再認証を実行することなく、パスワード変更前の旧暗号鍵によって暗号化された保護データを継続して復号可能にするものである。
本実施形態の暗号鍵管理システムは、マスター鍵により保護データを暗号化および復号化するサーバと、ユーザIDおよびパスワードを含む入力情報に基づいて前記サーバにネットワークを介してユーザ認証を要求するとともに、前記保護データの暗号化および復号化を要求するユーザ端末と、を備える暗号鍵管理システムであって、前記サーバが、前記ユーザID、前記パスワードから算出されたパスワードハッシュ、および前記パスワードハッシュのリビジョンを関連付けたユーザ情報を記憶するユーザ情報記憶手段と、前記ユーザID、前記パスワードから算出された鍵ハッシュにより前記マスター鍵を暗号化した暗号化済鍵、および前記リビジョンを関連付けた鍵情報を記憶する鍵情報記憶手段と、前記入力情報と前記ユーザ情報とを照合して前記ユーザ認証が完了した場合に、認証IDを発行するとともに、この認証IDに対して、前記ユーザID、前記リビジョン、前記鍵ハッシュ、および認証時刻を関連付けた認証情報を生成し、保持する認証手段と、前記パスワードを新たなパスワードへ変更する場合に、前記認証情報に含まれる前記ユーザIDと前記リビジョンの組合せを検索キーとして前記鍵情報から取得した前記暗号化済鍵を、前記鍵ハッシュで復号して前記マスター鍵を取得するとともに、前記新たなパスワードと前記マスター鍵に基づいて新たな暗号化済鍵を作成し、前記ユーザID、前記新たなパスワードに係る新たなリビジョン、および前記新たな暗号化済鍵を関連付けた新たな鍵情報を同一の前記ユーザIDに係る他の鍵情報と併存した状態で前記鍵情報記憶手段へ保存する鍵再暗号化手段と、を有することを特徴とする。
一実施形態に係る暗号鍵管理システムの全体構成の一例を示すブロック図。 認証情報の一例を示す図。 ユーザ情報の一例を示す図。 鍵情報の一例を示す図。 保護データの一例を示す図。 ユーザ認証処理の説明図。 保護データ登録処理の説明図。 保護データ取得処理の説明図。 同一ユーザの要求によるパスワード変更処理の説明図。 他のユーザの要求によるパスワード変更処理の説明図。 認証維持処理の説明図。 鍵情報掃除処理の説明図。 認証情報削除処理の説明図。 一実施形態に係る暗号鍵管理システムにおけるパスワード変更時の動作の一例を示すシーケンス図。
以下、本実施形態に係る暗号鍵管理システムについて図面を参照して詳細に説明する。
図1は、一実施形態に係る暗号鍵管理システムの全体構成の一例を示すブロック図である。同図に示されるように、暗号鍵管理システムは、ユーザ端末1、認証サーバ2、ユーザDB3、アプリケーションサーバ4、およびデータサーバ5が通信ネットワークNWを介して接続されることで構成されている。
各装置は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、入力装置、表示装置、HDD(Hard Disk Drive)などの大容量の記憶装置、および通信装置などから構成されたコンピュータであり、台数はそれぞれ任意である。また、本システムでは複数台のサーバを含んでいるが、一台あるいは複数台のサーバに適宜統合あるいは分散した上でネットワーク接続してもよい。
ユーザ端末1は、ユーザがデータ編集作業などに用いるパーソナルコンピュータなどの情報端末であり、認証依頼手段11、データ参照依頼手段12、データ登録依頼手段13、パスワード変更依頼手段14を有している。
認証依頼手段11は、認証サーバ2に対してユーザIDおよびパスワードを含む入力情報を送信し、ユーザ認証処理を要求する。データ参照依頼手段12は、ユーザ認証の完了後、認証情報に基づいてアプリケーションサーバ4に接続し、データサーバ5内で管理されている保護データの参照処理を要求する。
データ登録依頼手段13は、認証情報に基づいてアプリケーションサーバ4に接続し、データサーバ5へ保護データの登録処理を要求する。パスワード変更依頼手段14は、認証サーバ2に対して既存のパスワードから新たなパスワードへの変更処理を要求する。
認証サーバ2は、認証処理を実行するサーバコンピュータであり、認証情報提供手段22、パスワード変更手段23、認証維持手段24、認証情報確認手段25、鍵掃除手段26、認証削除手段27を有している。
認証手段21は、入力情報に含まれるユーザIDおよびパスワードから算出した新たなパスワードハッシュを、ユーザDB3が記憶するユーザ情報と照合してユーザ認証を行う。認証手段21は、ユーザ認証が完了(成功)した場合に、固有の認証IDを発行するとともに、この認証IDに対して、ユーザごとに固有なユーザID、パスワードの世代番号であるリビジョン、鍵ハッシュ、および認証時刻を関連付けた認証情報を生成し、保持する。尚、鍵ハッシュは、所定のハッシュ関数を用いて算出するものとする。
図2は、認証情報の一例を示す図である。ここでは、認証情報が、認証IDごとに、ユーザID、リビジョン、鍵ハッシュ、最後に認証情報にアクセスした時刻を関連付けた情報であることが示されている。鍵ハッシュは、鍵用のハッシュ関数Hk(x)を用いて算出する。ハッシュ関数Hk(x)のxとしては、パスワードの平文Pn_m(n:ユーザ番号,m:リビジョン番号)が使用されている。
認証情報提供手段22は、アプリケーションサーバ4から認証IDを受信した場合に、当該認証IDの認証情報をアプリケーションサーバ4に提供する。
パスワード変更手段23は、ユーザ端末1からパスワードの変更要求があった場合に、ユーザID、新たなパスワードから算出したパスワードハッシュ、およびパスワードのリビジョンからなる新たなユーザ情報をユーザDB3に送信し、ユーザ情報を更新する。また、パスワード変更手段23は、ユーザID、現時点のパスワードのリビジョンと鍵ハッシュ、新たなパスワードに基づく鍵ハッシュをユーザDB3へ送信し、新たな鍵情報の登録を行う。
認証維持手段24は、アプリケーションサーバ4が保持する認証情報の認証IDを受信した場合に、受信した認証IDに基づいて認証サーバ2内で保持する認証情報を検索し、認証IDが一致する認証情報の時刻を現在時刻に更新することで認証を維持する。
認証情報確認手段25は、鍵掃除手段26から受信したユーザIDとリビジョンの組合せ情報に対応する認証情報が認証サーバ2内に存在するか否かを確認し、組合せごとの確認結果を鍵掃除手段26へ送信する。
鍵掃除手段26は、ユーザDB3が記憶する鍵情報を参照して、ユーザIDとリビジョンの組合せ情報を抽出し、認証情報確認手段25へ定期的に送信する。そして、鍵掃除手段26は、認証情報確認手段25からの応答情報として、認証サーバ2内に存在しない鍵情報があった場合には、この鍵情報を削除する。
認証削除手段27は、認証サーバ2側で保持している認証情報の時刻と現在時刻を定期的に比較し、所定のタイムアウト時間が経過した認証情報を削除する。
ユーザDB3は、認証サーバ2における認証処理、データサーバ5におけるデータ書込み・読取処理にそれぞれ必要な情報を記憶するデータベースであり、ユーザ情報記憶手段31、鍵情報記憶手段32、鍵再暗号化手段33を有している。
ユーザ情報記憶手段31は、ユーザを特定するユーザID、パスワードハッシュ、リビジョンを関連付けたユーザ情報を記憶する。図3は、ユーザ情報の一例を示す図である。パスワードハッシュは、パスワード用のハッシュ関数Hp(x)を用いて算出する。ハッシュ関数Hp(x)のxとしては、パスワードの平文Pn_m(n:ユーザ番号,m:リビジョン番号)が使用されている。
鍵情報記憶手段32は、ユーザID、リビジョン、および暗号化済鍵を関連付けた鍵情報を記憶する。図4は、鍵情報の一例を示す図である。暗号化済鍵は、鍵用の関数Ck(x,y)を用いて算出されている。ここでは、関数Ck(x,y)のxには鍵ハッシュ、yにはマスター鍵(共通鍵)Mが使用されている。
鍵再暗号化手段33は、ユーザ認証で入力されたパスワードを新たなパスワードへ変更する場合に、認証情報に含まれるユーザIDとリビジョンの組合せを検索キーとして鍵情報から取得した暗号化済鍵を、認証情報に含まれる鍵ハッシュで復号してマスター鍵を取得するとともに、新たなパスワードとマスター鍵に基づいて新たな暗号化済鍵を作成し、ユーザID、新たなパスワードに係る新たなリビジョン、および新たな暗号化済鍵を関連付けた新たな鍵情報を同一のユーザIDに係る他の鍵情報と併存した状態で鍵情報記憶手段32へ保存する。
また、鍵再暗号化手段33は、ユーザ端末1側から共通の認証IDに対して認証時と異なる他のユーザIDおよび他のパスワードを関連付けるパスワード変更要求があった場合に、他のパスワードから他の鍵ハッシュを生成するとともに、認証サーバ2に保持されている認証情報から共通の認証IDに関連付けられているユーザID、鍵ハッシュを取得してマスター鍵を復号し、このマスター鍵により他の鍵ハッシュを暗号化した他の暗号化済鍵、他のユーザID、および他のパスワードのリビジョンを組み合わせた他の鍵情報を鍵情報記憶手段32に保存する。
アプリケーションサーバ4は、種々のアプリケーション(図示省略する)の実行によりユーザ端末1に対してサービスを提供するサーバコンピュータであり、データ登録手段41、認証情報参照手段42、データ参照手段43、認証維持依頼手段44、認証削除手段45を有している。
データ登録手段41は、認証済みのユーザ端末1からデータ登録要求があった場合に、受信データをデータサーバ5へ登録する。
認証情報参照手段42は、アプリケーションの実行に伴って認証情報が必要になった場合に、認証サーバ2に対して認証情報の参照を要求する。
データ参照手段43は、認証済みのユーザ端末1からデータ参照要求があった場合に、データサーバ5から保護データを取得し、ユーザ端末1へ返信する。
認証維持依頼手段44は、アプリケーションサーバ4側で保持している認証情報の認証IDを認証サーバ2へ定期的に送信し、認証維持を要求する。認証削除手段45は、アプリケーションサーバ4側で保持している認証情報の時刻と現在時刻を定期的に比較し、所定のタイムアウト時間が経過した認証情報を削除する。
データサーバ5は、保護データを管理するサーバコンピュータであり、保護データ記憶手段51、データ書込手段52、データ読取手段53を有している。
保護データ記憶手段51は、ユーザ端末1からアプリケーションサーバ4を介して登録要求のあった保護データを暗号化してデータIDごとに記憶する。図5は、保護データの一例を示す図である。ここでは、保護データを特定するデータIDに対して保護データをカラムごとにデータ用の関数Cd(x,y)により暗号化して関連付けて記憶している。ここでは、関数Cd(x,y)のxはマスター鍵M、yはDn_mデータの平文(n:データ番号,m:カラム)となっている。
データ書込手段52は、ユーザ端末1からアプリケーションサーバ4を介して取得したデータを鍵情報から復号したマスター鍵により暗号化し、これを保護データとして保護データ記憶手段51に書き込む。データ読取手段53は、保護データ記憶手段51から暗号化された保護データを読取り、鍵情報の暗号化済鍵から復号したマスター鍵で復号してアプリケーションサーバ4へ送信する。
続いて、暗号鍵管理システムを構成する装置間の処理の流れを具体的に説明する。
(1)ユーザ認証処理
図6は、ユーザ認証処理の説明図である。同図に示されるように、ユーザが、ユーザ端末1の認証依頼手段11を用いて、ユーザID[U1]とパスワード[P1_1]を入力すると、ユーザ端末1は、認証サーバ2の認証手段21に対して、ユーザID[U1]、パスワード[P1_1]とともに認証を要求する。
認証手段21は、ユーザID[U1]、及びパスワード[P1_1]から生成したパスワードハッシュ[Hp(P1_1)]を、ユーザDB3が保持するユーザ情報と突き合わせることにより、ユーザを認証する。ユーザ情報には、ユーザID[U1]、パスワードハッシュ[Hp(P1_1)]のほか、パスワードハッシュの更新回数を表す、リビジョン[R1]を持つ。
認証に成功すると、認証手段21は、認証処理毎に付与する認証ID[A1]、ユーザID[U1]、リビジョン[R1]、認証時刻[T1]、パスワード[P1_1]から生成した鍵ハッシュ[Hk(P1_1)]の組を認証情報に新規追加し、認証ID[A1]を認証依頼手段11に応答する。
(2)保護データ登録処理
図7は、保護データ登録処理の説明図である。同図に示されるように、ユーザが、ユーザ端末1のデータ登録依頼手段13を用いて、認証ID[A1]とともに、登録データキー[D1]、登録データ値[D1_1]、[D1_2]を入力すると、ユーザ端末1は、アプリケーションサーバ4のデータ登録手段41に対して、認証ID[A1]、登録データキー[D2]、登録データ値[D2_1]、[D2_2]とともにデータ登録を要求する。
データ登録手段41は、認証情報参照手段42に認証ID[A1]を与えることにより、認証サーバ2の認証情報提供手段22を介して、認証ID[A1]に紐付く、ユーザID[U1]、リビジョン[R1]、鍵ハッシュ[Hk(P1_1)]を取得し、アプリケーションサーバ4内の認証情報にそれらを新規追加する。
次に、データ登録手段41は、データサーバ5のデータ書込手段52に対して、ユーザID[U1]、リビジョン[R1]、鍵ハッシュ[Hk(P1_1)]、登録データキー[D2]、登録データ値[D2_1]、[D2_2]を与え、保護データの登録を要求する。
データ書込手段52は、ユーザDB3が保持する鍵情報の中から、ユーザID[U1]、リビジョン[R1]に紐付く、暗号化済鍵[Ck(Hk(P1_1),M)]を取得し、鍵ハッシュ[Hk(P1_1)]を用いてマスター鍵[M]を復号する。
次に、データ書込手段52は、マスター鍵[M]を用いて登録データ値[D2_1]、[D2_2]を暗号化し、それぞれ[Cd(M, D2_1)]、[Cd(M, D2_2)]として保護データに登録する。
(3)保護データ取得処理
図8は、保護データ取得処理の説明図である。同図に示されるように、ユーザが、ユーザ端末1のデータ参照依頼手段12を用いて、認証ID[A1]とともに、参照データキー[D1]を入力すると、ユーザ端末1は、アプリケーションサーバ4のデータ参照手段43に対し、認証ID[A1]、参照データキー[D1]とともにデータ参照を要求する。
データ参照手段43は、認証情報参照手段42に認証ID[A1]を与えることにより、認証サーバ2の認証情報提供手段22を介して、認証ID[A1]に紐付く、ユーザID[U1]、リビジョン[R1]、鍵ハッシュ[Hk(P1_1)]を取得し、アプリケーションサーバ4内の認証情報にそれを新規追加する。
次に、データ参照手段43は、データサーバ5のデータ読取手段53に対して、ユーザID[U1]、リビジョン[R1]、鍵ハッシュ[Hk(P1_1)]、参照データキー[D1]を与え、保護データの参照を要求する。
データ読取手段53は、ユーザDB3が保持する鍵情報の中から、ユーザID[U1]、リビジョン[R1]に紐付く、暗号化済鍵[Ck(Hk(P1_1),M)]を取得し、鍵ハッシュ[Hk(P1_1)]を用いてマスター鍵[M]を復号する。次に、データ読取手段53は、マスター鍵[M]を用いて保護データが保持する[Cd(M, D1_1)]、[Cd(M, D1_2)]を復号し、それぞれ参照データ値[D1_1]、[D1_2]としてデータ参照手段43に応答する。最後に、データ参照手段43は、受け取った参照データ値[D1_1]、[D1_2]をデータ参照依頼手段12に応答する。
(4)第1のパスワード変更処理
図9は、同一ユーザの要求によるパスワード変更処理の説明図である。同図に示されるように、ユーザが、ユーザ端末1のパスワード変更依頼手段14を用いて、認証ID[A1]とともに、ログインユーザ自身のユーザID(以下、自ユーザIDという。)[U1]、新パスワード[P1_2]を入力すると、ユーザ端末1は、認証サーバ2のパスワード変更手段23に対し、認証ID[A1]、ユーザID[U1]、[P1_2]とともにパスワード変更を要求する。
パスワード変更手段23は、自身が保持する認証情報の中から、認証ID[A1]に紐付く、自ユーザID[U1]、変更前のパスワード(以下、旧パスワードという。)のリビジョン(以下、旧リビジョンという。)[R1]、旧パスワード[P1_1]から生成した鍵ハッシュ[Hk(P1_1)]を取得し、さらに[P1_2]から鍵ハッシュ[Hk(P1_2)]を生成する。
次に、パスワード変更手段23は、ユーザDB3の鍵再暗号化手段33に対して、ユーザID[U1]、リビジョン[R1]、鍵ハッシュ[Hk(P1_1)]、ユーザID[U1]、鍵ハッシュ[Hk(P1_2)]を与え、マスター鍵[M]の再暗号化を要求する。
鍵再暗号化手段33は、ユーザDB3が保持する鍵情報の中から、ユーザID[U1]、リビジョン[R1]に紐付く、旧暗号化済鍵[Ck(Hk(P1_1),M)]を取得し、鍵ハッシュ[Hk(P1_1)]を用いてマスター鍵[M]を復号する。また、ユーザID[U1]に紐付くリビジョンのうち、最新の旧リビジョン[R1]を取得する。
次に、鍵再暗号化手段33は、マスター鍵[M]を[Hk(P1_2)]を用いて暗号化し、生成された新暗号化済鍵[Ck(Hk(P1_2),M)]、ユーザID[U1]、及び新リビジョン[R2]を鍵情報に新規追加する。
最後に、パスワード変更手段23は、ユーザDB3が保持するユーザ情報に存在する、ユーザID[U1]に紐付くリビジョン[R1]、パスワードハッシュ[Hp(P1_1)]を、鍵再暗号化手段33から応答として受け取ったリビジョン[R2]、新パスワード[P1_2]から生成したパスワードハッシュ[Hp(P1_2)]で上書更新し、パスワード変更依頼手段14に応答する。
(5)第2のパスワード変更処理
図10は、他のユーザの要求によるパスワード変更処理の説明図である。同図に示されるように、ユーザが、ユーザ端末1のパスワード変更依頼手段14を用いて、認証ID[A1]とともに、ログインユーザ以外のユーザID(以下、他ユーザIDという。)[U2]、新パスワード[P2_6]を入力すると、ユーザ端末1は、認証サーバ2のパスワード変更手段23に、認証ID[A1]、他ユーザID[U2]、新パスワード[P2_6]とともにパスワード変更を要求する。
認証サーバ2のパスワード変更手段23は、自身が保持する認証情報の中から、認証ID[A1]に紐付く、自ユーザID[U1]、自リビジョン[R1]、自パスワード[P1_1]から生成した鍵ハッシュ[Hk(P1_1)]を取得し、さらに[P2_6]から鍵ハッシュ[Hk(P2_6)]を生成する。次に、パスワード変更手段23は、ユーザDB3の鍵再暗号化手段33に対して、ユーザID[U1]、自リビジョン[R1]、鍵ハッシュ[Hk(P1_1)]、他ユーザID[U2]、[Hk(P2_6)]を与え、マスター鍵[M]の再暗号化を要求する。
ユーザDB3の鍵再暗号化手段33は、ユーザDB3が保持する鍵情報の中から、ユーザID[U1]、自リビジョン[R1]に紐付く、自暗号化済鍵[Ck(Hk(P1_1),M)]を取得し、鍵ハッシュ[Hk(P1_1)]を用いてマスター鍵[M]を復号する。また、[U2]に紐付くリビジョンのうち、最新の旧リビジョン[R5]を取得する。次に、鍵再暗号化手段33は、鍵ハッシュ[Hk(P2_6)]を用いてマスター鍵[M]を暗号化し、生成された新暗号化済鍵[Ck(Hk(P2_6),M)]、他ユーザID[U2]、及び新リビジョン[R6]の組合せを鍵情報に新規追加する。
最後に、認証サーバ2のパスワード変更手段23は、ユーザDB3のユーザ情報記憶手段31が保持するユーザ情報内に存在する、他ユーザID[U2]に紐付くリビジョン[R5]、パスワードハッシュ[Hp(P2_5)]を、鍵再暗号化手段33から応答として受け取った[R6]、[P2_6]から生成したパスワードハッシュ[Hp(P2_6)]で上書更新し、パスワード変更依頼手段14に応答する。
管理者などの上位ユーザが下位の一般ユーザのパスワードを変更するような場合に、他人に設定する新しいパスワードで鍵を暗号化する必要があるが、この鍵を自身のパスワードを用いて取得し、他人の新しいパスワードを使って暗号化を行い、他人が新しいパスワードを使用した際に鍵を取得できるようにしている。仕組は本人のパスワードを変更する場合(上記(5))と同じであり、処理の対象が他人のユーザ情報に変わるだけである。
(6)認証維持処理
図11は、認証維持処理の説明図である。同図に示されるように、アプリケーションサーバ4の認証維持依頼手段44は、定期的に、自機が保持する認証情報の中から、現在使用されているものを抽出し、対応する時刻を現在時刻で上書更新する。また、認証維持依頼手段44は、定期的に、認証サーバ2の認証維持手段24に、自機が保持する認証情報に含まれる認証ID([A1]、[A2])とともに認証維持を要求する。
認証サーバ2の認証維持手段24は、アプリケーションサーバ4(認証維持依頼手段44)から与えられた認証ID[A1]、[A2]と自機が保持する認証情報を突き合わせ、同一認証IDに紐付く時刻を現在時刻[T6]で上書更新し、認証維持依頼手段44に応答する。
(7)鍵情報掃除処理
図12は、鍵情報掃除処理の説明図である。同図に示されるように、認証サーバ2の鍵掃除手段26は、定期的に、ユーザDB3が保持する鍵情報の中から、古いリビジョンをユーザIDに紐付けて取得する。
次に、鍵掃除手段26は、同サーバの認証情報確認手段25及び他の認証サーバ2´(認証情報確認手段25)のそれぞれに対して、取得したユーザIDと旧リビジョンの組([U1],[R3])、([U1],[R4])、([U2],[R3])が認証情報に含まれていないことの確認を要求する。
認証情報確認手段25は、与えられたユーザIDと旧リビジョンの組と認証情報を突き合わせ、存在の確認結果([U1],[R3],true)、([U1],[R4],false)、([U2],[R3],false)を鍵掃除手段26に応答する。
最後に、鍵掃除手段26は、認証情報に存在しないことが判明した、ユーザIDと旧リビジョンの組([U1],[R4])、([U2],[R3])を鍵情報から削除する。過去のリビジョンの暗号化済鍵が使われなくなったことを確認してユーザDB3から削除することで、不要になった古いデータがユーザDB3内に保存され続けることを防ぐことができる。尚、他の認証サーバ2´においても同様の処理が行われるものとする。
(8)認証情報削除処理
図13は、認証情報削除処理の説明図である。同図に示されるように、認証サーバ2(又はアプリケーションサーバ4)の認証削除手段27(又は認証削除手段45)は、定期的に、自機が保持する認証情報の中から、時刻が現在時刻から一定時間以上古い、すなわち、最後の認証から一定時間以上経過した情報を削除する。
以下、上記のように構成された暗号鍵管理システムの一連の動作を説明する。図14は、一実施形態に係る暗号鍵管理システムにおけるパスワード変更時の動作の一例を示すシーケンス図である。
先ず、ユーザ端末1が、ユーザからの入力情報{ユーザID_1,パスワード_1}を認証サーバ2に送信し、認証要求を行う(S101)。
次に、認証サーバ2は、パスワード_1に基づいて鍵ハッシュを作成し(S102)、保持している認証情報において同ユーザIDに関連付けられた最新リビジョン_1の鍵ハッシュ_1と比較する(S103)。比較結果が一致すると、認証サーバ2は、認証ID{認証ID_1}をユーザ端末1へ返信する(S104)。
次に、ユーザ端末1は、認証ID{認証ID_1}に基づいてアプリケーションサーバ4に接続要求を行う(S105)。
次に、アプリケーションサーバ4が、認証ID{認証ID_1}に基づいて認証サーバ2に認証情報の参照を要求すると(S106)、認証サーバ2は認証ID{認証ID_1}、リビジョン{リビジョン_1}、鍵ハッシュ{鍵ハッシュ_1}を含む認証情報を返信する(S107)。そして、アプリケーションサーバ4は、ユーザ端末1に接続完了を通知する(S108)。
次に、ユーザ端末1´が、同一ユーザからの入力情報{ユーザID_1,パスワード_1}を認証サーバ2に送信し、認証要求を行うと(S109)、認証サーバ2は、入力パスワード{パスワード_1}に基づいて鍵ハッシュを作成し(S110)、保持している認証情報において同ユーザIDに関連付けられたリビジョン{リビジョン_1}の鍵ハッシュ{鍵ハッシュ_1}と比較する(S111)。比較結果が一致すると、認証サーバ2は、S104とは異なる認証情報{認証ID_2}をユーザ端末1´へ返信する(S112)。
次に、ユーザ端末1´が、{認証ID_2,パスワード_2}を含むパスワードの変更要求を認証サーバ2へ送信すると(S113)、認証サーバ2は、{パスワード_2}による鍵ハッシュ{鍵ハッシュ_2}を作成し、変更後のリビジョン{リビジョン_2}および鍵ハッシュ{鍵ハッシュ_2}をメモリ領域(図示省略する)に保持する(S114)。
次に、認証サーバ2は、ユーザDB3に対して{ユーザID_1}に関連付けられている{リビジョン_1,鍵ハッシュ_1}、{リビジョン_2,鍵ハッシュ_2}を送信し、鍵再暗号化を要求する(S115)。従来技術との違いは、ここで新しいパスワードの鍵ハッシュ{鍵ハッシュ_2}で復号できる暗号化済鍵を作成するだけでなく、古いパスワードの鍵ハッシュ{鍵ハッシュ_1}で復号できる暗号化済鍵を残すことである。
次に、ユーザDB3は、鍵再暗号化が完了すると、これを認証サーバ2へ通知する(S116)。すなわち、この時点では二つのユーザ端末1、ユーザ端末1´がそれぞれ異なる認証IDで認証済みとなっている。
次に、最初に認証済みのユーザ端末1が、アプリケーションサーバ4に対してデータ参照を要求すると(S117)、アプリケーションサーバ4はデータサーバ5に{リビジョン_1,鍵ハッシュ_1}を送信し、データ読取を要求する(S118)。
次に、ユーザDB3は、データサーバ5に鍵ハッシュ{鍵ハッシュ_1}で復号可能な暗号化済鍵の送信を要求し(S119)、これをユーザDB3が返信する(S120)。
次に、データサーバ5は、鍵ハッシュ{鍵ハッシュ_1}により暗号化済鍵を復号してマスター鍵を取得し(S121)、このマスター鍵により保護データを復号して読取り(S122)、読取データをアプリケーションサーバ4へ送信する(S123)。
そして、アプリケーションサーバ4は、ユーザ端末1にデータ参照を開始させる(S124)。
このように、本実施形態に係る暗号鍵管理システムによれば、以下のような効果を奏する。
(1)認証されたユーザがシステムを利用している際に、並行してパスワードの変更があった場合でも、再認証を実行することなく、パスワード変更前のパスワードのリビジョンとユーザIDの組合せに係る暗号化済鍵によって保護データを継続して復号可能となる。例えば、ユーザ端末1が複数のアプリケーションサーバ4に接続されているような場合でも、アプリケーションサーバ4ごとに再認証を行う必要が無くなる利点がある。
(2)同一認証IDの認証情報を利用中の他のユーザによってパスワードが変更された場合にも、認証済みのユーザは継続して保護データの登録・読取作業を行うことができる。
(3)古い鍵ハッシュに基づいて開始された処理に時間がかかる場合や、アプリケーションサーバの台数が多い場合であっても、パスワード変更による暗号関連情報の同期のために、再認証、ロック、処理完了待ち等が発生せず、操作性が向上する。
以上、本発明の実施形態を説明したが、本実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。本実施形態およびその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1…ユーザ端末、
2…認証サーバ、
3…ユーザDB、
4…アプリケーションサーバ、
5…データサーバ、
11…認証依頼手段、
12…データ参照依頼手段、
13…データ登録依頼手段、
14…パスワード変更依頼手段、
21…認証手段、
22…認証情報提供手段、
23…パスワード変更手段、
24…認証維持手段、
25…認証情報確認手段、
26…鍵掃除手段、
27…認証削除手段、
31…ユーザ情報記憶手段、
32…鍵情報記憶手段、
33…鍵再暗号化手段、
41…データ登録手段、
42…認証情報参照手段、
43…データ参照手段、
44…認証維持依頼手段、
45…認証削除手段、
51…保護データ記憶手段、
52…データ書込手段、
53…データ読取手段。

Claims (5)

  1. マスター鍵により保護データを暗号化および復号化するサーバと、
    ユーザIDおよびパスワードを含む入力情報に基づいて前記サーバにユーザ認証を要求するとともに、前記保護データの暗号化および復号化を要求するユーザ端末と、を備え、
    前記サーバが、
    前記ユーザID、前記パスワードから算出されたパスワードハッシュ、および前記パスワードハッシュのリビジョンを関連付けたユーザ情報を記憶するユーザ情報記憶手段と、
    前記ユーザID、前記パスワードから算出された鍵ハッシュにより前記マスター鍵を暗号化した暗号化済鍵、および前記リビジョンを関連付けた鍵情報を記憶する鍵情報記憶手段と、
    前記入力情報と前記ユーザ情報とを照合して前記ユーザ認証が完了した場合に、認証IDを発行するとともに、この認証IDに対して、前記ユーザID、前記リビジョン、前記鍵ハッシュ、および認証時刻を関連付けた認証情報を生成し、保持する認証手段と、
    前記パスワードを新たなパスワードへ変更する場合に、前記認証情報に含まれる前記ユーザIDと前記リビジョンの組合せを検索キーとして前記鍵情報から取得した前記暗号化済鍵を、前記鍵ハッシュで復号して前記マスター鍵を取得するとともに、前記新たなパスワードと前記マスター鍵に基づいて新たな暗号化済鍵を作成し、前記ユーザID、前記新たなパスワードに係る新たなリビジョン、および前記新たな暗号化済鍵を関連付けた新たな鍵情報を同一の前記ユーザIDに係る他の鍵情報と併存した状態で前記鍵情報記憶手段へ保存する鍵再暗号化手段と、
    を有することを特徴とする暗号鍵管理システム。
  2. 前記鍵再暗号化手段は、前記ユーザ端末側から共通の前記認証IDに対して認証時と異なる他のユーザIDおよび他のパスワードを関連付けるパスワード変更要求があった場合に、前記他のパスワードから他の鍵ハッシュを生成するとともに、前記認証情報から共通の前記認証IDに関連付けられている前記ユーザID、前記鍵ハッシュを取得して前記マスター鍵を復号し、このマスター鍵により前記他の鍵ハッシュを暗号化した他の暗号化済鍵、前記他のユーザID、および前記他のパスワードのリビジョンを組み合わせた他の鍵情報を前記鍵情報記憶手段に保存することを特徴とする請求項1記載の暗号鍵管理システム。
  3. 前記鍵情報記憶手段内に記憶されている鍵情報に含まれる前記ユーザIDおよび前記リビジョンの組合せが前記認証手段内に保持されている前記認証情報の中に存在しない場合に、前記存在しない組合せに対応する前記鍵情報を前記鍵情報記憶手段から削除する鍵掃除手段を更に備えることを特徴とする請求項1または請求項2記載の暗号鍵管理システム。
  4. 前記サーバは、前記認証手段、前記鍵再暗号化手段、前記ユーザ情報記憶手段および前記鍵情報記憶手段を2以上のコンピュータに分散配置し、ネットワークを介して互いに接続することで構成されている請求項1乃至請求項3のいずれか一項記載の暗号鍵管理システム。
  5. マスター鍵により保護データを暗号化および復号化するサーバと、ユーザIDおよびパスワードを含む入力情報に基づいて前記サーバにユーザ認証を要求するとともに、前記保護データの暗号化および復号化を要求するユーザ端末と、からなるコンピュータシステムにおける暗号鍵管理方法であって、
    前記サーバが、前記ユーザID、前記パスワードから算出されたパスワードハッシュ、および前記パスワードハッシュのリビジョンを関連付けたユーザ情報を記憶領域へ記憶するユーザ情報記憶ステップと、
    前記ユーザID、前記パスワードから算出された鍵ハッシュにより前記マスター鍵を暗号化した暗号化済鍵、および前記リビジョンを関連付けた鍵情報を前記記憶領域へ記憶する鍵情報記憶ステップと、
    前記入力情報と前記ユーザ情報とを照合して前記ユーザ認証が完了した場合に、認証IDを発行するとともに、この認証IDに対して、前記ユーザID、前記リビジョン、前記鍵ハッシュ、および認証時刻を関連付けた認証情報を生成し、保持する認証ステップと、
    前記ユーザ認証で入力された前記パスワードを新たなパスワードへ変更する場合に、前記認証情報に含まれる前記ユーザIDと前記リビジョンの組合せを検索キーとして前記鍵情報から取得した前記暗号化済鍵を、前記認証情報に含まれる前記鍵ハッシュで復号して前記マスター鍵を取得するとともに、前記新たなパスワードと前記マスター鍵に基づいて新たな暗号化済鍵を作成し、前記ユーザID、前記新たなパスワードに係る新たなリビジョン、および前記新たな暗号化済鍵を関連付けた新たな鍵情報を同一の前記ユーザIDに係る他の鍵情報と併存した状態で前記記憶領域へ保存する鍵再暗号化ステップと、
    を有することを特徴とする暗号鍵管理方法。
JP2015072484A 2015-03-31 2015-03-31 暗号鍵管理システムおよび暗号鍵管理方法 Expired - Fee Related JP6426520B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015072484A JP6426520B2 (ja) 2015-03-31 2015-03-31 暗号鍵管理システムおよび暗号鍵管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015072484A JP6426520B2 (ja) 2015-03-31 2015-03-31 暗号鍵管理システムおよび暗号鍵管理方法

Publications (2)

Publication Number Publication Date
JP2016192715A JP2016192715A (ja) 2016-11-10
JP6426520B2 true JP6426520B2 (ja) 2018-11-21

Family

ID=57245729

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015072484A Expired - Fee Related JP6426520B2 (ja) 2015-03-31 2015-03-31 暗号鍵管理システムおよび暗号鍵管理方法

Country Status (1)

Country Link
JP (1) JP6426520B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11956223B2 (en) * 2018-12-04 2024-04-09 Journey.ai Securing attestation using a zero-knowledge data management network

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10305690B1 (en) * 2017-11-29 2019-05-28 Fingerprint Cards Ab Two-step central matching
SG10201902395SA (en) * 2019-03-18 2019-11-28 Qrypted Tech Pte Ltd Method and system for a secure transaction
CN113079001B (zh) * 2021-03-08 2023-03-10 北京忆芯科技有限公司 密钥更新方法、信息处理设备及密钥更新装置
CN115037450B (zh) * 2021-11-19 2023-04-14 荣耀终端有限公司 数据保护方法及电子设备
CN116527236B (zh) * 2023-06-29 2023-09-19 深圳市亲邻科技有限公司 一种加密卡的信息变更验证方法及***

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0530103A (ja) * 1991-07-23 1993-02-05 Fujitsu Ltd リモートによるパスワード設定方式
US6249866B1 (en) * 1997-09-16 2001-06-19 Microsoft Corporation Encrypting file system and method
JP4078792B2 (ja) * 2000-06-21 2008-04-23 ソニー株式会社 情報記録装置、情報再生装置、暗号処理キー更新方法、並びにプログラム提供媒体
US7302570B2 (en) * 2003-08-19 2007-11-27 International Business Machines Corporation Apparatus, system, and method for authorized remote access to a target system
JP2006268719A (ja) * 2005-03-25 2006-10-05 Nec Corp パスワード認証システム及びパスワード認証方法
US20080184035A1 (en) * 2007-01-30 2008-07-31 Technology Properties Limited System and Method of Storage Device Data Encryption and Data Access
JP5333785B2 (ja) * 2010-06-07 2013-11-06 トヨタ自動車株式会社 鍵装置、錠制御装置、制御用プログラムおよび制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11956223B2 (en) * 2018-12-04 2024-04-09 Journey.ai Securing attestation using a zero-knowledge data management network

Also Published As

Publication number Publication date
JP2016192715A (ja) 2016-11-10

Similar Documents

Publication Publication Date Title
JP6426520B2 (ja) 暗号鍵管理システムおよび暗号鍵管理方法
CN106462718B (zh) 存储设备的快速数据保护
US8856530B2 (en) Data storage incorporating cryptographically enhanced data protection
US8111828B2 (en) Management of cryptographic keys for securing stored data
JP4902207B2 (ja) ファイルの暗号化と復号化のための複数のキーを管理するシステムと方法
US7925023B2 (en) Method and apparatus for managing cryptographic keys
US9088557B2 (en) Encryption key management program, data management system
JP2019522412A (ja) 登録・認可方法、装置及びシステム
JP4597784B2 (ja) データ処理装置
KR20170083039A (ko) 디바이스를 통한 콘텐츠 와이핑 동작 로밍 기법
CN105103488A (zh) 借助相关联的数据的策略施行
WO2008121157A2 (en) Cryptographic key management system facilitating secure access of data portions to corresponding groups of users
US20100098246A1 (en) Smart card based encryption key and password generation and management
EP3395004B1 (en) A method for encrypting data and a method for decrypting data
JP6049914B2 (ja) 暗号システム、鍵生成装置及び再暗号化装置
WO2020253105A1 (zh) 授权管理方法、***、设备及计算机可读存储介质
US20150143107A1 (en) Data security tools for shared data
US20220200791A1 (en) Method for encrypting and storing computer files and associated encryption and storage device
CN115412236A (zh) 一种密钥管理和密码计算的方法、加密方法及装置
TWI430643B (zh) Secure key recovery system and method
JPH11331145A (ja) 情報共有システム、情報保管装置およびそれらの情報処理方法、並びに記録媒体
CN108345801B (zh) 一种面向密文数据库的中间件动态用户认证方法及***
JP6293617B2 (ja) 認証制御システム、制御サーバ、認証制御方法、プログラム
JP6092159B2 (ja) 暗号鍵管理装置および暗号鍵管理方法
JP6806433B2 (ja) 鍵管理システム、鍵管理装置、鍵管理方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180118

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180911

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180925

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181025

R150 Certificate of patent or registration of utility model

Ref document number: 6426520

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees