JP4995651B2 - 木構造を持つ鍵管理ソフトウエアにおける、鍵使用の高速化手段、及び装置 - Google Patents

木構造を持つ鍵管理ソフトウエアにおける、鍵使用の高速化手段、及び装置 Download PDF

Info

Publication number
JP4995651B2
JP4995651B2 JP2007166318A JP2007166318A JP4995651B2 JP 4995651 B2 JP4995651 B2 JP 4995651B2 JP 2007166318 A JP2007166318 A JP 2007166318A JP 2007166318 A JP2007166318 A JP 2007166318A JP 4995651 B2 JP4995651 B2 JP 4995651B2
Authority
JP
Japan
Prior art keywords
key
node
encryption
data
decryption
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
JP2007166318A
Other languages
English (en)
Other versions
JP2009005249A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2007166318A priority Critical patent/JP4995651B2/ja
Priority to US12/146,255 priority patent/US8223972B2/en
Publication of JP2009005249A publication Critical patent/JP2009005249A/ja
Application granted granted Critical
Publication of JP4995651B2 publication Critical patent/JP4995651B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms

Description

本発明は、ファイルやデータを暗復号する装置等で、暗復号に使用する鍵を、木構造の鍵データベースを用いて管理する鍵管理ソフトウエアにおいて、高速に暗復号処理を行う方法に関するものである。
近年、Personal Computer(PC)や携帯電話などのデータ処理装置に格納された個人情報などのデータの盗難が問題となっている。
前述のデータの盗難は、コンピュータウイルスなどの悪意のあるプログラムによって行われることがある。ここで、悪意のあるプログラムは、対象とするデータ処理装置で動作するプログラムの不具合などを利用して、対象とするデータ処理装置において不正に動作し、PCや携帯電話の記憶装置に格納されているデータを読み取る。そして、悪意のあるプログラムは、ネットワークを介して、読み取ったデータを攻撃者などに送付する。
このようなデータの盗難を防ぐ技術として、データ暗復号化手段がある。データ暗復号化手段は、公開鍵暗号方式であるRSA暗号や共通鍵暗号方式であるAES暗号などの暗号アルゴリズムを用いて、データを秘密の鍵で暗号化する暗号化手段と、暗号化されたデータを復号化する復号化手段を含む。ここで、暗号化されたデータは暗号化に用いた鍵と対応する鍵を使わなくては正しく復号できない。
データ暗復号化手段を用いることによって、たとえ、悪意のあるプログラムが、データ処理装置に格納されたデータを読み取り、攻撃者に送付した場合であっても、鍵を知らない攻撃者はデータを正しく復号できない。したがって、攻撃者に正しい情報を取得されることを防ぐ事ができる。しかしながら、データ暗復号化手段では、秘密の鍵が暴露された場合には、攻撃者が暗号化されたデータを復号できるようになり、正しい情報を盗難されるという課題がある。
そこで、Trusted Computing Gruop(TCG)において、データ暗号化手段に使用する鍵を保護する仕様が公開されている。
以下に、図15、図16、図17、図18を用いて、非特許文献1においてProtected Storageという名称で公開されているデータ暗復号手段の説明を行う。
図15は、データ暗復号手段を実現するための鍵管理ソフトウエアが管理する鍵データベースを示す図である。
鍵データベース 200は、鍵を木構造で管理する。鍵データベース 200の木構造は、ルート鍵のノード 201とルート鍵で暗号化された鍵Aのノード 202とルート鍵で暗号化された鍵Bのノード 203で構成される。
ルート鍵で暗号化された鍵Aのノード 202には、ルート鍵で暗号化された鍵Aが格納されている。鍵Aは、図示していないデータを暗復号するために使用される鍵である。
ルート鍵で暗号化された鍵Bのノード 202には、ルート鍵で暗号化された鍵Bが格納されている。鍵Bは、図示していないデータを暗復号するために使用される鍵である。
図16は、鍵管理ソフトウエアが鍵のロードやデータの暗復号に利用する暗復号処理装置のハードウエア構成図である。
暗復号処理装置 210は、不揮発性メモリ 211と暗復号エンジン 212と鍵格納部 213を含む。
さらに、暗復号処理装置 210は、暗復号処理装置 210外部からの処理データの盗み取り及び改竄ができないように耐タンパ化されている。
不揮発性メモリ 211は外部電源から電力が供給されない場合でも、記憶しているデータが失われない不揮発な記憶装置である。不揮発性メモリ 211はルート鍵 214を格納する。ルート鍵 214は公開鍵暗号方式の秘密鍵や、共通鍵暗号方式の秘密鍵である。
暗復号エンジン 212は、暗号化された鍵の復号と、鍵の暗号化と、暗号化されたデータの復号と、データの暗号化を行う装置である。
鍵格納部 213は、暗号エンジン 212が使用する鍵を格納する装置である。
図17は、鍵管理ソフトウエアが、暗復号処理装置 210に鍵をロードする処理の流れを示す図である。
図18は、鍵管理ソフトウエアが、暗復号処理装置 210を用いてデータを暗復号する処理の流れを示す図である。
以下、図17と図18を用いて、図15の鍵Aが暗復号処理装置 210にロードされ、データの暗復号を実現する処理の説明を行う。
<鍵のロード処理>
鍵管理ソフトウエアは、図示していないアプリケーションから鍵Aのロードを要求される。(S200)
鍵管理ソフトウエアは、指定された鍵に対応するノード 202を鍵管理データベース 200から取得し、暗復号処理装置 210にロードする。(S201)
暗復号処理装置 210は、暗号エンジン 212を用いて、ルート鍵で暗号化された鍵Aを、ルート鍵 214で復号化し、鍵格納部 213に格納する。(S202)
鍵管理ソフトウエアは、暗復号処理装置 210から鍵のロード終了を示す通知を受け取り、鍵のロード処理を終了する。(S203)
<データの暗復号処理>
前述の鍵のロード手段によって鍵Aが鍵格納部 213に格納された後に、鍵管理ソフトウエアは、図示していないアプリケーションからデータの暗号または復号処理を要求される。(S210)
鍵管理ソフトウエアは、アプリケーションから入力されたデータを、暗復号処理装置 210に入力し、鍵Aを用いて暗号化もしくは復号化を行うように、暗復号処理装置 210に依頼する。(S211)
暗復号処理装置 210は、入力されたデータを、暗号エンジン 212を用いて、鍵格納部 213に格納された鍵Aで暗号化もしくは復号化し、出力する。(S212)
鍵管理ソフトウエアは、暗復号処理装置 210から出力されたデータを、アプリケーションに通知して、暗復号処理を終了する。(S213)
前述のように、鍵データベースと暗復号処理装置を用いることで、平文の鍵は常に耐タンパ化された暗復号処理装置内部に格納されて使用することが可能となる。そのため、平文の鍵の盗み取りを防ぐ事が可能となる。
また、データ暗復号を行うユーザまたはアプリケーションは、鍵データベース 200に鍵を登録する際に、図15のルート鍵で暗号化された鍵Aのノード 202やルート鍵で暗号化された鍵Bのノード 203にパスワードを設定する場合もある。その場合には、データ暗復号を行う場合に、ユーザまたはアプリケーションは、鍵管理ソフトウエアに、使用する鍵が格納されているノードに対応するパスワードを入力して、データの暗復号を行う。
また、特許文献1は、木構造を用いたデータ管理において、ノードの削除を実現する技術である。以下、図19を用いて簡単に説明を行う。
図19は、DVD再生装置などの端末を管理する端末管理データベース 220を示す図である。
端末管理データベース 220は、ルート 221と中間ノードA 222と中間ノードB 223とリーフC 224と中間ノードD 225とリーフE 226とリーフF 227とリーフG 228で構成する木構造のデータベースである。ここで、ルートとは親ノードを持たないノードであり、木構造の頂点に位置する。また、中間ノードとは、親ノードと子ノードを持つノードである。また、リーフとは、親ノードのみを持つノードである。
端末管理データベース 220のリーフC 224とリーフE 226とリーフF 227とリーフG 228は、端末に対応する情報を格納する。
ここで、リーフF 227とリーフG 228に対応する端末を無効化(リボーク処理)する場合には、中間ノードD 225を、端末管理データベース 220から削除する。これによって、リーフF 227とリーフG 228を一度に、端末管理データベース 220から削除することが可能である。
特開2002−152187号公報 TCG Specification Architecture Overview Specification Revision 1.3 28th March 2007
非特許文献1の手法では、木構造を用いた鍵データベースを用いて、平文の鍵を保護してデータ暗復号が行う。
しかしながら、この手法では、ルートからリーフまでに存在する中間ノードの数(以下、木構造の深さと呼ぶ)が多くなると、データの暗復号処理性能が低下するという課題があった。
以下、図20を用いて、この課題を簡単に説明する。図20は、鍵データベース 230を示した図である。鍵データベース 230は、ルート鍵を格納するノード 231と、ルート鍵で暗号化された鍵Aを格納するノード 232と、鍵Aで暗号化された鍵Bを格納するノード 233と、鍵Bで暗号化された鍵Cを格納するノード 234と、鍵Cで暗号化された鍵Dを格納するノード 235によって構成される。
鍵データベース 230から鍵Dを取得するには、ルート鍵で暗号化された鍵Aをルート鍵で復号化して鍵Aを取得するロード処理と、鍵Aで暗号化された鍵Bを鍵Aで復号化して鍵Bを取得するロード処理と、鍵Bで暗号化された鍵Cを鍵Bで復号化して鍵Cを取得するロード処理と、鍵Cで暗号化された鍵Dを鍵Cで復号化して鍵Dを取得するロード処理の合計4回の鍵のロード処理が必要となる。
さらに、特許文献1の手法では、木構造のデータベースを用いて、効率的にリーフを削除する方法は開示されているが、中間ノードを削除した場合、その中間ノードに接続する全てのリーフが削除されてしまうという課題がある。
本発明は、前述従来の課題を解決するものであり、複数の暗号アルゴリズムの鍵管理を、木構造の鍵データベースで行うソフトウエアにおいて、鍵の削除及び追加を行う場合に、セキュリティ強度を低下させることなく、木構造を変更することで、高速な処理を実現する手段を提供することを目的とする。
前記従来の課題を解決するために、本発明に関するデータ処理装置は、データの暗号化及び復号する鍵を、親ノードに格納された鍵で暗号化し、子ノードで保持する木構造で管理する鍵データベースと、前記データの暗号化及び復号と前記鍵の暗号化及び復号を行う暗復号処理装置と、前記鍵データベースと前記暗復号処理装置を用いて、前記データの暗号化及び復号を行う鍵管理ソフトウエアを備え、前記鍵管理ソフトウエアは、鍵削除手段を備え、前記鍵削除手段は、上位アプリケーションからの前記木構造のノードの削除の要求に対して、暗号強度比較表と処理時間比較表を参照して、新たな親ノードを決定するノード探索部と、前記暗号強度比較表と前記処理時間比較表を参照して、前記ノード探索部によって探索された前記ノードよりセキュリティ強度を低下させない新たなノードを作成する、新規ノード作成部と、前記新規ノード作成部によって作成したノードに、前記削除が指定されたノードに接続しているノード群を接続する、ノード接続部を備えることを特徴とする。
さらに、前記暗復号処理装置は、さらに、前記鍵データベースの木構造のルートに対応する鍵を格納すること、を特徴とする。
このような構成により、本発明に関するデータ処理装置は、鍵の盗み取りを保護して、データの暗復号を行う事ができる。
このような構成により、本発明のデータ処理装置は、木構造の一部ノードを変更することで、鍵の追加及び削除を柔軟に行う事ができる。
さらに、前記鍵データベースは、さらに、前記ノードにパスワードを格納し、前記鍵管理ソフトウエアは、前記新規ノード作成部によって作成したノードのパスワードを決定するパスワード変更部とを備え、前記パスワード変更部は、さらに、前記削除が指定されたノードからルートまでの全てのノードに格納された複数のパスワードから、最も語長が長いパスワードを選択する、ことを特徴とする。
このような構成により、本発明のデータ処理装置は、パスワードによる保護を用いて特定のユーザまたはアプリケーションのみに鍵を使用させることができる
らに、データの暗号化及び復号する鍵を、親ノードに格納された鍵で暗号化し、子ノードで保持する木構造で管理する鍵データベースと、前記データの暗号化及び復号と前記鍵の暗号化及び復号を行う暗復号処理装置と、前記鍵データベースと前記暗復号処理装置を用いて、前記データの暗号化及び復号を行う鍵管理ソフトウエアと、で構成されるデータ処理装置であって、前記鍵管理ソフトウエアは、鍵追加部を備え、前記鍵追加部は、上位アプリケーションから、前記木構造のノードの追加の要求に対して、暗号強度比較表と処理時間比較表を参照して、親ノードの暗号アルゴリズムと鍵の長さを変更するノード変更手段と、前記ノード変更手段によって変更された親ノードに、前記追加が要求されたノードを接続する、ことを特徴とし、さらに、前記暗復号処理装置は、さらに、前記鍵データベースの木構造のルートに対応する鍵を格納すること、を特徴とする。
このような構成により、本発明に関するデータ処理装置は、鍵の盗み取りを保護して、データの暗復号を行う事ができる。
このような構成により、本発明のデータ処理装置は、木構造の一部ノードを変更することで、鍵の追加及び削除を柔軟に行う事ができる
以下に、本発明の実施の形態について、図面を参照しながら説明を行う。
(実施の形態1)
図1は、本発明の実施の形態1に関わる鍵データベースを示す図である。
図1において、鍵データベース 100は、ルート 101と、中間ノード−1 102と、中間ノード−2 103と、中間ノード−3 104と、中間ノード−4 105と、中間ノード−5 106と、中間ノード−6 107と、リーフ−1 108と、リーフ−2 109と、リーフ−3 110と、リーフ−4 111と、リーフ−5 112と、リーフ−6 113と、リーフ−7 114と、リーフ−8 115とで構成されている。ここで、ルートとは親ノードを持たないノードであり、木構造の頂点に位置する。また、中間ノードとは、親ノードと子ノードを持つノードである。また、リーフとは、親ノードのみを持つノードである。
ルート 101は、中間ノード−1 102と中間ノード−2 103の親ノードである。中間ノード−1 102は、中間ノード−3 104と中間ノード−4 105の親ノードである。中間ノード−2 103は、中間ノード−5 106と中間ノード−6 107の親ノードである。中間ノード−3はリーフ−1 108とリーフ−2 109の親ノードである。中間ノード−4 105はリーフ−3 110とリーフ−4 111の親ノードである。中間ノード−5 106はリーフ−5 112とリーフ−6 113の親ノードである。中間ノード−6 107はリーフ−7 114とリーフ−8 115の親ノードである。
図1のルート及び中間ノードには、子ノードに格納される鍵を保護するために使用する鍵が割り当てられており、リーフにはデータの暗復号を行うために使用する鍵が割り当てられる。
図1のルートと中間ノードとリーフには、鍵を管理するために、それぞれノード情報構造が使用される。
図2は、ノード情報構造 120のデータ構造を示す図である。
ノード情報構造 120は、暗号種別 121と、鍵長 122と、鍵 123と、親ノード識別子 124と、パスワード 125と、その他の付属情報 126のフィールドで構成される。
暗号種別 121のフィールドには、RSA暗号や楕円暗号などの公開鍵暗号方式や、AES暗号や3DES暗号などの共通鍵暗号方式の暗号アルゴリズムの名称や、前述の暗号アルゴリズムに対応する識別子が格納される。
鍵長 122のフィールドには、暗号種別 121で指定された暗号アルゴリズムで暗復号を行う場合に使用する鍵の長さが格納される。格納される値はビット長やバイト長などの数値でもよい。さらに、予め決められている鍵の長さに対応する識別子でもよい。
鍵 123のフィールドには、暗号種別 121で指定された暗号アルゴリズムで暗復号を行う場合に使用する鍵が暗号化されて格納される。格納される値は鍵の値を直接格納してもよい。ただし、ルートに対応する鍵は、ノード情報構造の鍵 123のフィールドには格納しない。ルートに対応する鍵の格納場所については後述する。また、鍵 123のフィールドに格納する鍵は、親ノード識別子 124で指定されている中間ノードまたはルートの鍵(各ノードの親ノードの鍵)を使用して暗号化されている。
親ノード識別子 124は、図1に示す木構造において、ノード情報構造 120が割り当てられているノードに対する親ノードを指定する識別子が格納される。格納される値は、親ノードの位置を格納してもよい。さらに、予め決められている識別子や動的に生成した識別子を格納してもよい。
パスワード 125は、各ノードの割り当てられたパスワードを格納するフィールドである。格納する値は、入力されたパスワードを格納してもよい。さらに、入力されたパスワードに対して、SHA1演算などの一方向性関数を用いて識別子を作成し、作成した識別子を格納してもよい。また、パスワード 125は、鍵を登録する際に、記載していないユーザまたはアプリケーションによって、その鍵に対応するパスワードが、鍵管理ソフトウエアに入力されることによって、値が格納される。さらに、パスワード 125は、データ暗復号を行う際に、記載していないユーザまたはアプリケーションによって入力されたパスワードと比較する際に、参照される。
その他の付属情報 126は、他に各ノードが必要とする情報を格納するフィールドである。
<実施の形態1のハードウエアの構成の説明>
図3は、図1の鍵データベース及び図2のノード情報構造を用いてデータ暗復号を行う、データ処理装置 130のハードウエア構成図である。
図3において、データ処理装置 130は、CPU 131とメモリ 132と記憶装置 133と暗復号処理装置 134とで構成される。さらに、CPU 131とメモリ 132と記憶装置 133と暗復号処理装置 134とが、バス 135を介して互いに接続されている。
データ処理装置 130は、さらに、図3に図示されていない入出力部などを備えているが、これらは本発明の本質ではないので説明を省略する。
以下、データ処理装置 130の各構成要素の詳細について説明する。
<データ処理装置のハードウエアの構成要素の説明>
CPU 131は、メモリ 132に格納されたプログラム等に含まれる命令コードを実行することにより、データ処理装置 130全体の動作を制御する。
メモリ 132は、鍵管理ソフトウエア 135と、アプリケーションA 136とアプリケーションB 137と、オペレーティングシステム 138とデバイスドライバ 139と、鍵データベース 146を格納する揮発性メモリである。なお、鍵データベース146は、データ処理装置 130が暗復号に用いる鍵を、図1に示したデータ構造で管理するデータベースである。
記憶装置 133は、アプリケーションA 136やアプリケーションB 137などで使用する暗号化されたデータA 140と暗号化されたデータB 141を格納する。
暗復号処理装置 134は、不揮発性メモリ 142と暗復号エンジン 143と鍵格納部 144で構成される。
さらに、暗復号処理装置 134は、暗復号処理装置 134外部からの処理データの盗み取り及び改竄ができないように耐タンパ化されている。
<暗復号処理装置の構成要素の説明>
不揮発性メモリ 142は外部電源から電力が供給されない場合でも、記憶しているデータが失われない不揮発な記憶装置である。不揮発性メモリ 142はルート鍵 145を格納する。ルート鍵 145は公開鍵暗号方式の秘密鍵や、共通鍵暗号方式の秘密鍵である。さらに、ルート鍵 145は、図1の鍵データベース 100のルート 101に対応する鍵である。ルート鍵 145は、他のすべてのノードの鍵の復号に用いる鍵であるので、メモリ上の鍵データベース 146ではなく、耐タンパ化された暗復号処理装置が管理している。なお、鍵データベース 146に含まれる鍵すべてを耐タンパ化された領域に記録すると、求められる記録容量が大きくなってしまうため、他の全てのノードの鍵を復号する際に必要となるルート鍵だけを耐タンパ化された領域で保護している。
暗号エンジン 143は、暗号化された鍵の復号と、鍵の暗号化と、暗号化されたデータの復号と、データの暗号化を行う装置である。暗復号に用いる暗号アルゴリズムは、公開鍵暗号方式であるRSA暗号や共通鍵暗号方式であるAES暗号などの暗号アルゴリズムなどを用いる。
鍵格納部 144は、暗号エンジン 143が使用する鍵を格納する装置である。
<実施の形態1のソフトウエアの構成の説明>
図4は、図1の鍵データベース及び図2のノード情報構造を用いてデータ暗復号を行う、データ処理装置 130のソフトウエア構成図である。
図4の構成要素は、図3のメモリ 132に格納された各構成要素に対応する。
データ処理装置 150は、アプリケーションA 151とアプリケーションB 152と、鍵管理ソフトウエア 154とオペレーティングシステム 155とデバイスドライバ 156と鍵データベース 169とで構成される。
アプリケーションA 151とアプリケーションB 152は、図3に示したアプリケーションA 136とアプリケーションB 137と同一である。アプリケーションA 151とアプリケーションB 152は、データ処理装置 150が提供する応用機能を提供する。例えば、TCP/IPを用いた通信機能や、著作権で保護された音楽コンテンツの再生機能、個人情報を提供するサービスなどを提供する。
鍵管理ソフトウエア 154は、図3に示した鍵管理ソフトウェア135と同一である。鍵管理ソフトウエア 154は、鍵登録手段 157と、鍵削除手段 158と、データ暗復号部 159と、処理時間比較表更新手段 160と、ノード探索部 161と、ノード接続部 162と、新規ノード作成部 163と、ノード更新部 164と、パスワード変更部 165と、パスワード確認部 166と、暗号強度比較表格納部 167と、処理時間比較表格納部 168を含む。鍵管理ソフトウェア 154を構成する各機能部の詳細は後述する。
オペレーティングシステム 155は、図3に示したオペレーティングシステム 138と同一である。オペレーティングシステム 155は、アプリケーションA 151とアプリケーションB 152のスケジューリングやアプリケーション間のデータ通信を行う。
デバイスドライバ 156は、図3に示したデバイスドライバ 139と同一である。デバイスドライバ 155は、鍵管理ソフトウエア 154が、暗復号処理装置 134を制御する機能を提供する。
<鍵管理ソフトウエアの構成要素の説明>
以下、鍵管理ソフトウェア 157を構成する各機能部の説明を行う。
鍵登録手段 157は、上位アプリケーションから指示されて、鍵データベース 169に、新たに鍵を登録する。
鍵削除手段 158は、上位アプリケーションから指示されて、鍵データベース 169から、鍵を削除する。
データ暗復号部 159は、上位アプリケーションから指示されて、鍵データベース 169の鍵と暗復号処理装置 134を用いて、データの暗復号を行う。
処理時間比較表更新手段 160は、上位アプリケーションから指示されて、処理時間比較表格納部 167に格納されている処理時間比較表を更新する。
ノード探索部 161は、鍵データベース 169から指定されたノードと新たな親ノードを探索する手段である。詳細については後述する。
ノード接続部 162は、鍵データベース 169にノードを接続する手段である。詳細については後述する。
新規ノード作成部 163は、鍵データベース 169の新たなノードを作成する手段である。詳細については後述する。
ノード変更手段 164は、鍵データベース 169のノードの暗号アルゴリズムを変更する手段である。詳細については後述する。
パスワード変更部 165は、鍵データベース 169の新たなノードに割り当てられたパスワードを変更する手段である。詳細については後述する。
パスワード確認部 166は、鍵データベース 169で管理する鍵を使用する際に、パスワードを用いて認証する手段である。詳細ついては後述する。
暗号強度比較表格納部 167は、後述する暗号強度比較表を保持する手段である。
処理時間比較表格納部 168は、後述する処理時間比較表を保持する手段である。
<暗号強度比較表の説明>
図5は、暗号強度比較表格納部 167が保持する暗号強度比較表 170を示す図である。
暗号強度比較表 170は、暗号アルゴリズム 171と、同一セキュリティ強度の鍵長−1 172と、同一セキュリティ強度の鍵長−2 173と、同一セキュリティ強度の鍵長−3 174と、同一セキュリティ強度の鍵長−4 175の表で構成される。なお、同一セキュリティ強度の鍵長のフィールドは、5つ以上あっても良いし、3つ以下であってもよい。
暗号アルゴリズム 171のフィールドには、比較を行う暗号アルゴリズムの一覧表を格納する。例えば、RSA暗号や楕円暗号などの公開鍵暗号方式や、AES暗号や3DES暗号などの共通鍵暗号方式の暗号アルゴリズムなどを格納する。
同一セキュリティ強度の鍵長−1 172のフィールドには、各暗号アルゴリズムで、同一セキュリティ強度となる鍵長を格納する。例えば、RSA暗号の鍵長が1024ビットと同一のセキュリティ強度の楕円暗号の鍵長が160ビットの場合には、RSA暗号の鍵長の1024ビットに対応する楕円暗号のフィールドには、160ビットを格納する。同様に、RSA暗号の鍵長が1024ビットと同一のセキュリティ強度のAES暗号の鍵長が80ビットの場合には、RSA暗号の鍵長の1024ビットに対応するAES暗号のフィールドには、80ビットを格納する。
さらに、同一セキュリティ強度−2 173は、RSA暗号の2048ビットの鍵長のセキュリティと同等の各暗号アルゴリズムの鍵長を格納し、同一セキュリティ強度−3 174は、RSA暗号の3072ビットの鍵長のセキュリティと同等の各暗号アルゴリズムの鍵長を格納し、同一セキュリティ強度−4 175は、RSA暗号の7680ビットの鍵長のセキュリティと同等の各暗号アルゴリズムの鍵長を格納する。
なお、NIST SP 800−57 Recommendation for Key Management、 Part 1 pp.63(http://csrc.nist.gov/publications/nistpubs/800−57−Part1−revised2_Mar08−2007.pdf)に、各暗号アルゴリズムのセキュリティ強度を鍵長で比較する内容が開示されている。
なお、同一セキュリティ強度の鍵長−1 172、同一セキュリティ強度の鍵長−2 173、同一セキュリティ強度の鍵長−3 174のフィールドには、同一セキュリティ強度の鍵長が存在しない場合には、同一セキュリティ強度より長い鍵長を格納してもよい。
<処理時間比較表の説明>
図6は、処理時間比較表格納部 168が保持する処理時間比較表 180を示す図である。
処理時間比較表 180は、暗復号処理装置タイプ 181と暗号アルゴリズム毎の処理性能比較 182で構成される。
暗復号処理装置タイプ 181は、暗復号処理装置を識別する情報を格納する。格納する情報は暗復号処理装置の名称でもよい。さらに、暗復号処理装置の認証情報を格納してもよい。
暗号アルゴリズム毎の処理性能比較 182は、暗復号処理装置タイプ 181のフィールドに格納された暗復号処理装置に対する、各暗号アルゴリズムの比較可能な処理性能に関する情報を格納する。暗号アルゴリズム毎の処理性能比較 182は、暗号アルゴリズムのフィールド 183と、暗号アルゴリズム毎の比較情報 184とで構成される。
暗号アルゴリズムのフィールド 183はRSA暗号や楕円暗号などの公開鍵暗号方式や、AES暗号や3DES暗号などの共通鍵暗号方式の暗号アルゴリズムなどの名称を格納する。
比較情報 184は、暗号アルゴリズムのフィールド 183に格納された暗号アルゴリズムの処理性能を格納する。格納する値は、各暗号アルゴリズムで暗復号を行う場合の処理速度の順位を示す値や、単位時間あたりの処理可能なデータサイズを格納する。なお、図6では、一例として処理速度の順位を示す値が格納されている。
<データ処理装置の動作説明>
以下、データ処理装置の動作の説明を行う。中間ノードに格納された鍵の削除、新しい鍵の登録、および処理時間比較表の更新の処理以外は、非特許文献1に記載の仕様と同様であるので、説明を省略する。
1.データ処理装置による中間ノードに格納された鍵の削除の説明
以下に、図7を用いて、データ処理装置 150が、鍵データベース 100から中間ノードに格納された鍵の削除を実現する方法を説明する。
上位アプリケーションから、鍵管理ソフトウエア 154に、中間ノードに格納された鍵を指定して、鍵の削除が要求される。要求を受け付けると、鍵削除手段 158が、中間ノード削除処理を開始する(S100)。
鍵削除手段 158から指示されたノード探索部 161は、中間ノードの探索及び最適接続ノードの探索を行う(S101)。探索手段に関しては後述する。
次に、鍵削除手段 158は、探索された中間ノードを削除する(S102)。
次に、鍵削除手段 158から指示された新規ノード作成部 163は、新規ノードを作成する(S103)。作成手段に関しては後述する。
次に、鍵削除手段 158から指示されたノード接続部 162は、新規ノードに、関連するノードまたはリーフを接続する(S104)。接続手段に関しては後述する。
次に、鍵削除手段 158から指示されたパスワード変更部 165は、接続が変更された中間ノードまたはリーフのパスワードを変更する(S105)。パスワード変更部に関しては後述する。
そして、鍵削除手段 158は、中間ノードの削除処理を終了する。(S106)
1.1.中間ノードの探索及び最適接続ノードの探索の説明
以下に、図8を用いて、図7のS101で実現する、中間ノードの探索及び最適接続ノードの探索を説明する。図8は、図7のS101で行う処理の詳細を示している。
図7のS101に遷移することで、中間ノードの探索及び最適接続ノードの探索が開始する(S110)。
ノード探索部 161は、指定された中間ノードを、ルートからリーフに向かって探索し、発見する(S111)。ノードの探索は、木構造の探索で用いる一般的なアルゴリズム(深さ優先探索、幅優先探索など)で実現できるので詳細な説明は省略する。
次に、ノード探索部 161は、ルートから、指定された中間ノードの親ノードまでのパスに存在する、複数のノードをノード群として取得する(S112)。
次に、ノード探索部 161は、取得したノード群に格納された複数の鍵の中で、最も鍵長が長く、かつ、セキュリティ強度の最も高い鍵を持つ中間ノードを選択する。この選択には、暗号強度比較表 170を用いる(S113)。
次に、S113で選択した中間ノードを、新たな親ノードとして決定する(S114)。
そして、ノード探索部 161は、中間ノードの探索及び最適接続ノードの探索を終了する(S115)。
1.2.新規ノードの作成
以下に、図9を用いて、図7のS103で実現する、新規ノードの作成の探索を説明する。図9は、図7のS103で行う処理の詳細を示している。
図7のS103に遷移することで、新規ノードの作成の処理が開始する(S120)。
次に、新規ノード作成部 163は、ノード情報構造 120を新たに作成する(S121)。
次に、新規ノード作成部 163は、処理速度比較表 180を参照し、最も処理速度の速い暗号アルゴリズムを選択し、ノード情報構造 120の暗号種別のフィールド 121に格納する(S122)。
次に、新規ノード作成部 163は、ノード探索部 161がS101で取得した親ノードの鍵長と同一の鍵長を、暗号強度比較表 170を参照して取得し、ノード情報構造 120の鍵長のフィールド 122に格納する(S123)。
次に、新規ノード作成部 163は、S123で取得した鍵長と同じ長さの乱数を取得する(S124)。なお、乱数は図示していない乱数生成器を用いてもよいし、演算によって取得してもよい。
次に、新規ノード作成部 163は、S101で取得した親ノードの親ノードに格納された鍵で、S124で取得した乱数を暗号化して、ノード情報構造 120の鍵のフィールド 123に格納する(S125)。すなわち、この乱数を新規ノードに格納する鍵とする。なお、S125で行う鍵の暗号化は、暗復号処理装置 134を用いて行う。
次に、新規ノード作成部 163は、S101で取得した親ノードのパスワードを取得し、ノード情報構造 120のパスワードのフィールド 125に格納する(S126)。
次に、新規ノード作成部 163は、S101で取得した親ノードの親ノードの識別子を、ノード情報構造 120の親ノード識別子 124に格納に格納する(S127)。
そして、新規ノード作成部 163は、新規ノードの作成を終了する(S128)。
1.3.新規ノードへの関連するノードまたはリーフの接続
以下に、図10を用いて、図7のS104で実現する、新規ノードへの関連するノードまたはリーフの接続を説明する。
図7のS104に遷移することで、S130に遷移する。
次に、ノード接続部 162は、削除が指定された中間ノードに接続された中間ノードまたはリーフを1つ選択し、選択したノードの鍵を暗復号処理装置にロードする(S131)。なお、ロードされる鍵は、削除が指定された中間ノードの鍵で復号化した上でロードされる。
次に、ノード接続部 162は、S103で生成された新規ノードに格納された鍵で、ロードされた鍵を暗号化する(S132)。なお、S132で行う鍵の暗号化は、暗復号処理装置 134を用いて行う。
次に、ノード接続部 162は、S131で選択したノードのノード情報構造 120の鍵のフィールド 123に、S132で暗号化した鍵を格納する(S133)。
次に、ノード接続部 162は、S131で選択したノードのノード情報構造 120の親ノード識別子のフィールド 124に、S103で生成された新規ノードの識別子を格納する(S134)。
次に、ノード接続部 162は、削除が指定された中間ノードに接続する中間ノードまたはリーフが全て、S103で作成された新規ノードに接続しているか確認する(135)。全て接続されていない場合には、S131に遷移し、全て接続されている場合にはS136に遷移する。
S136に遷移することで、ノード接続部 162は、新規ノードへの関連するノードまたはリーフの接続を終了する。
1.4.パスワードの変更
以下に、図11を用いて、図7のS105で実現する、パスワード変更に関して説明する。図11は、図7のS105で行う処理の詳細を示している。
図7のS105に遷移することで、パスワードの変更の処理が開始する(S140)。
次に、パスワード変更部 165は、ルートから削除するように指定された中間ノードの親ノードまでのパスに存在する中間ノードをノード群として取得する(S141)。
次に、パスワード変更部 165は、S141で取得したノード群に格納されたパスワードの中で、最もパスワードの語長が長いパスワードを選択する(S142)。
次に、パスワード変更部 165は、S104で新たに接続された全ての中間ノードまたはリーフのノード情報構造 120のパスワードのフィールド 125に、S142で選択したパスワードを格納する(S143)。
そして、パスワード変更部 165は、パスワード変更処理を終了する(S144)。
なお、S142で選択するパスワードは、S141で選択したノード群の全てのパスワードを結合したものでもよい。
なお、S142で選択するパスワードは、予め決められたパスワードを選択してもよい。
なお、S142で選択するパスワードは、S141で取得したノード群に格納されたパスワードの中で、最もパスワードの語長が長いパスワードと、予め決められたパスワードを結合したものでもよい。
1.5 データ処理装置による鍵の削除のまとめ
本実施の形態では、中間ノードに格納されている鍵を削除する際に、前記中間ノードに接続する中間ノード及びリーフを、ルートから前記中間ノードの親ノードの中で最もルートに近く、かつノードに格納された鍵の鍵長が最も長いノードに接続する。これにより、新たに接続する前記中間ノード及び前記リーフに格納する鍵を暗復号処理装置にロードするために行う、鍵のロード処理の回数を削除することができる。
さらに、本実施の形態では、中間ノードに格納されている鍵を削除する際に、新たに接続されるノードと比較してより高速な暗号アルゴリズムに対応するノードを新たに作成し、その作成したノードに、新たに接続する前記中間ノード及び前記リーフを接続する。これにより、新たに接続する前記中間ノード及び前記リーフに格納する鍵を暗復号処理装置にロードする処理を、高速化することができる。
2.データ処理装置による鍵の登録の説明
以下に、図12を用いて、データ処理装置 150が、鍵データベース 100に、新たに鍵を登録する際の動作を説明する。
上位アプリケーションから、鍵管理ソフトウエア 154に、新たな鍵を指定して、鍵の登録を要求する。要求された鍵の登録によって、鍵登録手段 157が、鍵の登録処理を開始する(S150)。このとき指定される情報には、新たな鍵および、新たな鍵を用いる暗号の暗号種別、新たな鍵の鍵長、親ノード識別子、パスワードが含まれる。なお、親ノード識別子としては、新たな鍵の親ノードとしたいノードの識別子を指定する。
鍵登録手段 157から指示されたノード更新部 164は、親ノード識別子が示す親ノードの暗号アルゴリズムの変更を行う(S151)。この暗号アルゴリズムの変更に際して、親ノードに格納された鍵の変更も行われる。暗号アルゴリズムの変更の詳細に関しては後述する。
次に、鍵登録手段 157は、ノード情報構造 120を作成する。そして、S151で変更した親ノードに格納された鍵を用いて、指定された鍵を暗号化して、ノード情報構造 120の鍵のフィールドに格納する。さらに、暗号種別、鍵長、親ノード識別子、パスワードの各フィールドに、指定された値を格納する(S152)。なお、S152における、鍵の暗号化は、暗復号処理装置 134を用いて行う。
そして、鍵追加部 157は、鍵の登録処理を終了する(S153)。
なお、鍵管理ソフトウエア 154は、図12で示す鍵の登録処理を用いて作成する鍵データベースと、さらに上位アプリケーションから指定された木構造を持つ鍵データベースとを保持してもよい。
2つのデータベースを保持する場合には、データ暗復号処理手段 159が、データの暗復号処理の際に入力されるパスワードを、パスワード確認部 166を用いて、確認することによって、2つのデータベースを選択して、データの暗復号を行ってもよい。
2.1.親ノードの暗号アルゴリズムの変更
以下に、図13を用いて、図12のS151で実現する、親ノードの暗号アルゴリズムの変更に関して説明する。図13は、図12のS151で行う処理の詳細を示している。
図12のS151に遷移することで、親ノードの暗号アルゴリズムの変更の処理が開始する(S160)する。
次に、ノード更新部 164が、処理時間比較表 180を参照して、親ノードのノード情報構造 120に格納された暗号アルゴリズムより高速な暗号アルゴリズムを選択する(S161)。
次に、ノード更新部 164が、暗号強度比較表 170を参照して、親ノードの鍵長と同一となる、S161で選択した暗号アルゴリズムの同一セキュリティ強度の鍵長を選択する(S162)。
次に、ノード更新部 164が、S162で選択した鍵長と同じ長さの乱数を取得する(S163)。なお、乱数は図示していない乱数生成器を用いてもよいし、演算によって取得してもよい。
次に、ノード更新部 164は、上位アプリケーションから指定された親ノードの鍵で、S163で取得した乱数を暗号化して、親ノードのノード情報構造 120の鍵のフィールド 123に格納する(S164)。すなわち、生成した乱数を親ノードの鍵とする。
そして、ノード更新部 164は、親ノードの暗号アルゴリズムの変更を終了する(S165)。
2.2.データ処理装置による鍵の登録のまとめ
本実施の形態では、鍵を登録する際に、新たに接続される親ノードと比較してより高速な暗号アルゴリズムに対応するノードを新たに作成し、その作成したノードに、リーフを接続する。これにより、新たに接続するリーフに格納する鍵を暗復号処理装置にロードする処理を、高速化することができる。
3.データ処理装置による処理時間比較表の更新の説明
以下に、図14を用いて、データ処理装置 150が、処理時間比較表 180を更新する方法を説明する。
上位アプリケーションが、鍵管理ソフトウエア 154に、新たな処理時間比較表を指定して、処理時間比較表の更新を要求する。要求によって、処理時間比較表更新手段 160が、処理時間比較表の更新を開始する(S170)。
次に、処理時間比較表更新手段 160は、新たな処理情報比較表 180の暗復号処理装置タイプのフィールド 181を確認する(S171)。
次に、処理時間比較表更新手段 160は、処理時間比較表格納部 168に格納されている処理時間比較表 180を削除する(S172)。
次に、処理時間比較表更新手段 160は、新たな処理時間比較表 180を、処理時間比較表格納部 168に格納する(S173)。
そして、処理時間比較表更新手段 160は、処理時間比較表の更新を終了する(S174)。
なお、S171の確認手段は、暗復号処理装置タイプのフィールドに格納されている識別子を確認してもよい。
なお、S171の確認手段は、暗復号処理装置タイプのフィールドに格納されている処理時間比較表の電子署名を確認してもよい。
なお、S100の中間ノードの削除処理は、鍵管理データベースの整理処理(デフラグ処理)で行ってもよい。
なお、ノード情報構造 120のその他の付属情報 126は、対応する中間ノードが削除されていることを示す削除済みフラグを格納してもよい。さらに、その他の付属情報 126の削除済みフラグは、上位アプリケーションが、中間ノードに格納された鍵を削除する要求を行った際に設定され、そして、鍵管理データベースの整理処理(デフラグ処理)を行う際に、実際の中間ノードに格納された鍵の削除を行ってもよい。
(その他変形例)
(1)上記の実施の形態では、鍵データベース 146が、メモリ 132に格納されていたが、記憶装置 133に格納されていてもよい。
(2)上記の実施の形態では、S113において、暗号強度比較表を参照して、取得したノード群の鍵の中で、同一セキュリティ強度が最も高いノードを選択していたが、同一セキュリティ強度が最も低いノードを選択してもよい。この場合、鍵長が最も短くなり、処理を高速化することができる。
(3)上記実施の形態では、暗復号処理装置 134を、ハードウエア装置で実現していたが、ソフトウエアで実現してもよい。さらに、暗復号処理装置 134を実現するソフトウエアは、安全なソフトウエア実行環境で実行されてもよい。
(4)上記の実施の形態で述べた構成要素については、その一部または全てを実現可能な範囲でソフトウェアとして実装してもよい。この場合、集積回路上に乗せなくてはならないハードウェアの量を抑えることができるので、より集積度を向上させることができる。
(5)上記の実施の形態で述べた構成要素については、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。
また、上記の各装置を構成する構成要素の各部は、個別に1チップ化されていても良いし、一部又は全てを含むように1チップ化されてもよい。この場合、上記の構成要素をソフトウェアで実装するよりも処理を高速化することができる。
(6)システムLSIは集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもあるが、システムLSI100を上記のいずれの集積度で実現した場合も本発明に含まれることは言うまでもない。また、LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて構成要素の集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
(7)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
(8)また、本発明は、前記コンピュータプログラムまたは前記ディジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−rayDisc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記ディジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(9)これらの実施の形態および変形例の組合せであってもよい。
本発明にかかる木構造を持つ鍵管理ソフトウエアによるデータ暗復号の実行手法は、鍵の削除及び追加の際に、セキュリティ強度を保持して木構造の変更を行うことにより、木構造の深さを短くするという効果を有する。そのため、高速なデータの暗号化を行う機器等の分野で特に有効である。
本発明の実施の形態1の鍵データベースを示す図 本発明の実施の形態1のノード情報構造のデータ構造を示すブロック図 本発明の実施の形態1のハードウエア構成を示すブロック図 本発明の実施の形態1のソフトウエア構成を示すブロック図 本発明の実施の形態1の暗号強度比較表のデータ構造を示す図 本発明の実施の形態1の処理速度比較表のデータ構造を示す図 本発明の実施の形態1の中間ノードに格納された鍵の削除を示すシーケンス図 本発明の実施の形態1の中間ノードの探索及び最適接続ノードの探索を示すシーケンス図 本発明の実施の形態1の新規ノードの作成を示すシーケンス図 本発明の実施の形態1の新規ノードへの関連するノードまたはリーフの接続を示すシーケンス図 本発明の実施の形態1のパスワードの変更を示すシーケンス図 本発明の実施の形態1のデータ処理装置による鍵の登録を示すシーケンス図 本発明の実施の形態1の親ノードの暗号アルゴリズムの変更を示すシーケンス図 本発明の実施の形態1の処理時間比較表の更新を示すシーケンス図 従来の鍵データベースの一例を示す図 従来の暗復号処理装置の一例を示す図 鍵のロード処理を示すシーケンス図 データの暗復号処理を示すシーケンス図 従来の端末管理を行う端末管理データベースを示す図 従来の鍵データベースの一例を示す図
符号の説明
100、146、169、200、220、230 鍵データベース
101、201、221、231 ルート
102、103、104、105、106、107、222、223、225、232、233、234 中間ノード
108、109、110、111、112、113、114、115、202、203、224、226、227、228、235 リーフ
120 ノード情報構造
121 暗号種別のフィールド
122 鍵長のフィールド
123 鍵のフィールド
124 親ノード識別子のフィールド
125 パスワードのフィールド
126 その他の付属情報のフィールド
130、150 データ処理装置
131 CPU
132 メモリ
133 記憶装置
134、210 暗復号処理装置
135、154 鍵管理ソフトウエア
136、137、151、152 アプリケーション
138、155 オペレーティングシステム
139、156 デバイスドライバ
140、141 暗号化されたデータ
142、211 不揮発性メモリ
143、212 暗復号エンジン
144、213 鍵格納部
145、214 ルート鍵
157 鍵登録手段
158 鍵削除手段
159 データ暗復号処理手段
160 処理時間比較表更新手段
161 ノード探索部
162 ノード接続部
163 新規ノード作成部
164 ノード更新部
165 パスワード変更部
166 パスワード確認部
167 暗号強度比較表格納部
168 処理時間比較表格納部
170 暗号強度比較表
171 暗号アルゴリズムのフィールド
172、173、174、175 同一セキュリティ強度の鍵長のフィールド
180 処理時間比較表
181 暗復号処理装置タイプのフィールド
182 暗号アルゴリズム毎の処理性能比較のフィールド
183 暗号アルゴリズムのフィールド
184 比較値のフィールド

Claims (6)

  1. 親ノードに親ノードの鍵である親ノード鍵を配置し、子ノードにデータの暗号化及または復号する子ノードの鍵である子ノード鍵または子ノードのデータである子ノードデータを前記親ノード鍵で暗号化したデータを配置するような木構造で、鍵及びデータを管理する鍵データベースと、
    前記データの暗号化及び復号と前記鍵の暗号化及び復号を行う暗復号処理装置と、
    前記鍵データベースと前記暗復号処理装置を用いて、前記データの暗号化及び復号を行う鍵管理ソフトウエアと、で構成されるデータ処理装置であって、
    前記鍵管理ソフトウエアは、鍵削除手段を備え、
    前記鍵削除手段は、上位アプリケーションからの前記木構造のノードの削除の要求に対して、
    暗号強度比較表と処理時間比較表を参照して、新たな親ノードを決定するノード探索部と、
    前記暗号強度比較表と前記処理時間比較表を参照して、前記ノード探索部によって探索された前記ノードよりセキュリティ強度を低下させない新たなノードを作成する、新規ノード作成部と、
    前記新規ノード作成部によって作成したノードに、前記削除が指定されたノードをルートノードとする部分木を接続する、ノード接続部と、
    を行う手段を備えることを特徴とするデータ処理装置。
  2. 前記暗復号処理装置は、さらに、前記鍵データベースの木構造のルートに対応する鍵を格納すること、を特徴とする請求項1に記載のデータ処理装置。
  3. 前記鍵データベースは、さらに、前記ノードにパスワードを格納し、
    前記鍵管理ソフトウエアは、前記新規ノード作成部によって作成したノードのパスワードを決定するパスワード変更部と
    を備えることを特徴とする請求項2に記載のデータ処理装置。
  4. 前記パスワード変更部は、さらに、前記削除が指定されたノードからルートまでの全てのノードに格納された複数のパスワードから、最も長いパスワードを選択する、
    ことを特徴とする請求項3に記載のデータ処理装置。
  5. 親ノードに親ノードの鍵である親ノード鍵を配置し、子ノードにデータの暗号化及または復号する子ノードの鍵である子ノード鍵または子ノードのデータである子ノードデータを前記親ノード鍵で暗号化したデータを配置するような木構造で、鍵及びデータを管理する鍵データベースと、
    前記データの暗号化及び復号と前記鍵の暗号化及び復号を行う暗復号処理装置と、
    前記鍵データベースと前記暗復号処理装置を用いて、前記データの暗号化及び復号を行う鍵管理ソフトウエアと、で構成されるデータ処理装置であって、
    前記鍵管理ソフトウエアは、鍵追加部を備え、
    前記鍵追加部は、上位アプリケーションからの前記木構造のノードの追加の要求に対して、
    暗号強度比較表と処理時間比較表を参照して、親ノードの暗号アルゴリズムと鍵長を変更するノード変更手段と、
    前記ノード変更手段によって変更された親ノードに、前記追加が要求されたノードを接続する
    ことを特徴とする前記データ処理装置。
  6. 前記暗復号処理装置は、さらに、前記鍵データベースの木構造のルートに対応する鍵を格納すること、
    を特徴とする請求項5に記載のデータ処理装置。
JP2007166318A 2007-06-25 2007-06-25 木構造を持つ鍵管理ソフトウエアにおける、鍵使用の高速化手段、及び装置 Expired - Fee Related JP4995651B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007166318A JP4995651B2 (ja) 2007-06-25 2007-06-25 木構造を持つ鍵管理ソフトウエアにおける、鍵使用の高速化手段、及び装置
US12/146,255 US8223972B2 (en) 2007-06-25 2008-06-25 Method and device for speeding up key use in key management software with tree structure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007166318A JP4995651B2 (ja) 2007-06-25 2007-06-25 木構造を持つ鍵管理ソフトウエアにおける、鍵使用の高速化手段、及び装置

Publications (2)

Publication Number Publication Date
JP2009005249A JP2009005249A (ja) 2009-01-08
JP4995651B2 true JP4995651B2 (ja) 2012-08-08

Family

ID=40321116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007166318A Expired - Fee Related JP4995651B2 (ja) 2007-06-25 2007-06-25 木構造を持つ鍵管理ソフトウエアにおける、鍵使用の高速化手段、及び装置

Country Status (2)

Country Link
US (1) US8223972B2 (ja)
JP (1) JP4995651B2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101953112A (zh) * 2008-02-25 2011-01-19 松下电器产业株式会社 信息安全装置及信息安全系统
JP2011008701A (ja) * 2009-06-29 2011-01-13 Sony Corp 情報処理サーバ、情報処理装置、および情報処理方法
US8675875B2 (en) 2010-05-18 2014-03-18 International Business Machines Corporation Optimizing use of hardware security modules
US20120069995A1 (en) * 2010-09-22 2012-03-22 Seagate Technology Llc Controller chip with zeroizable root key
JP5676331B2 (ja) * 2011-03-24 2015-02-25 株式会社東芝 ルートノード及びプログラム
EP2731040B1 (en) * 2012-11-08 2017-04-19 CompuGroup Medical SE Computer system for storing and retrieval of encrypted data items, client computer, computer program product and computer-implemented method
GB2520489A (en) * 2013-11-20 2015-05-27 Ibm Deletion of content in digital storage systems
KR102306676B1 (ko) 2014-06-27 2021-09-28 삼성전자주식회사 스토리지 디바이스용 호스트 키 생성 방법 및 시스템
US10965459B2 (en) 2015-03-13 2021-03-30 Fornetix Llc Server-client key escrow for applied key management system and process
US10402792B2 (en) * 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US9787730B2 (en) * 2015-09-08 2017-10-10 Hong Fu Jin Precision Industry (Shenzhen) Co., Ltd. Data sharing method and electronic device using same
US10931653B2 (en) * 2016-02-26 2021-02-23 Fornetix Llc System and method for hierarchy manipulation in an encryption key management system
US10540356B2 (en) 2017-10-25 2020-01-21 International Business Machines Corporation Transparent analytical query accelerator over encrypted data
US10698883B2 (en) 2017-10-25 2020-06-30 International Business Machines Corporation Data coherency between trusted DBMS and untrusted DBMS
US11025425B2 (en) 2018-06-25 2021-06-01 Elasticsearch B.V. User security token invalidation
US11223626B2 (en) 2018-06-28 2022-01-11 Elasticsearch B.V. Service-to-service role mapping systems and methods
US11196554B2 (en) * 2018-07-27 2021-12-07 Elasticsearch B.V. Default password removal
US11349655B2 (en) * 2018-10-05 2022-05-31 Oracle International Corporation System and method for a distributed keystore
US11023598B2 (en) 2018-12-06 2021-06-01 Elasticsearch B.V. Document-level attribute-based access control
CN112749780A (zh) * 2019-10-31 2021-05-04 阿里巴巴集团控股有限公司 数据的处理方法、装置及设备
US20220229903A1 (en) * 2021-01-21 2022-07-21 Intuit Inc. Feature extraction and time series anomaly detection over dynamic graphs

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7089240B2 (en) * 2000-04-06 2006-08-08 International Business Machines Corporation Longest prefix match lookup using hash function
JP4622087B2 (ja) 2000-11-09 2011-02-02 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム記憶媒体
US7149749B2 (en) * 2002-06-03 2006-12-12 International Business Machines Corporation Method of inserting and deleting leaves in tree table structures
KR100949420B1 (ko) * 2002-10-31 2010-03-24 파나소닉 주식회사 통신장치, 통신 시스템 및 알고리즘 선택방법
EP1703476A1 (en) * 2005-03-18 2006-09-20 Hewlett-Packard Development Company, L.P. Multi-application and incremental personalization of smart cards
US7610276B2 (en) * 2006-09-22 2009-10-27 Advertise.Com, Inc. Internet site access monitoring
US7986787B2 (en) * 2006-12-08 2011-07-26 International Business Machines Corporation System, method, and service for tracing traitors from content protection circumvention devices
JP2008187399A (ja) * 2007-01-29 2008-08-14 Kddi Corp 処理負荷分散方法およびプログラム

Also Published As

Publication number Publication date
US8223972B2 (en) 2012-07-17
JP2009005249A (ja) 2009-01-08
US20090046862A1 (en) 2009-02-19

Similar Documents

Publication Publication Date Title
JP4995651B2 (ja) 木構造を持つ鍵管理ソフトウエアにおける、鍵使用の高速化手段、及び装置
US8464043B2 (en) Information security device and information security system
JP5314016B2 (ja) 情報処理装置、暗号鍵の管理方法、コンピュータプログラム及び集積回路
JP5281074B2 (ja) 情報セキュリティ装置および情報セキュリティシステム
KR101224749B1 (ko) 파일 암호화 및 복호화를 위한 다수의 키를 관리하는시스템 및 방법
US20110016330A1 (en) Information leak prevention device, and method and program thereof
EP2337262A1 (en) Information processing device, method, program, and integrated circuit
JP5260081B2 (ja) 情報処理装置及びその制御方法
JP5180203B2 (ja) メモリ装置から供給される情報を制御するシステムおよび方法
JP2013514587A (ja) 証明書失効リストを用いたコンテンツ管理方法
NZ555998A (en) Method and portable storage device for allocating secure area in insecure area
CN107644174B (zh) 数据泄漏防止系统及数据泄漏防止方法
JP5266322B2 (ja) 鍵移動装置
JP2005032130A (ja) データ管理装置、およびデータ管理方法、並びにコンピュータ・プログラム
EP3788536B1 (en) Cryptographic key distribution
JP2009543211A (ja) 汎用管理構造を使用するコンテンツ管理システムおよび方法
JP5178716B2 (ja) 証明書取消リストを使用するコンテンツ管理システムおよび方法
JP2009543208A (ja) 証明書連鎖を使用するコンテンツ管理システムおよび方法
KR101761799B1 (ko) 단말의 보안 데이터 관리 장치 및 그 방법
JP4972165B2 (ja) アイデンティティオブジェクトを使用する制御システムおよび方法
KR20150050899A (ko) 재암호화 기반 안전 저장 장치 및 방법
US20200067717A1 (en) Authentication system, authentication device, terminal device, authentication method, and recording medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120327

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: 20120417

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120510

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150518

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4995651

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees