JP5411034B2 - データベース暗号化システム及び方法 - Google Patents
データベース暗号化システム及び方法 Download PDFInfo
- Publication number
- JP5411034B2 JP5411034B2 JP2010064555A JP2010064555A JP5411034B2 JP 5411034 B2 JP5411034 B2 JP 5411034B2 JP 2010064555 A JP2010064555 A JP 2010064555A JP 2010064555 A JP2010064555 A JP 2010064555A JP 5411034 B2 JP5411034 B2 JP 5411034B2
- Authority
- JP
- Japan
- Prior art keywords
- ciphertext
- cipher
- database
- stochastic
- deterministic
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Description
そこで、データベースのセキュリティ対策として、データを暗号化してデータベースに格納するデータベース暗号化システムがある。
データを決定的暗号化した場合、同一データは同一暗号文として記憶されため、不正者はレコード間で同一データであることが分かるという問題点がある。
図11に、データを確率的暗号化したデータベースの一例を示す。
データを確率的暗号化した場合、同一データでも異なる暗号文として記憶されるため、不正者はレコード間で同一データであることが分からないという利点がある。
したがって、データを確率的暗号化したデータベースでは、完全一致検索処理を高速に行なうことができないという課題がある。
例えば、部分一致検索文字列「AAA」から始まるデータを検索する場合、完全一致検索データ「AAAA...A」から「AAAZ...Z」までの莫大な数の完全一致検索データについて暗号化して探す必要があり、事実上不可能である。
したがって、データを暗号化したデータベースでは、部分一致検索処理を高速に行なうことができないという課題がある。
前記データベースへのデータ登録処理を行うために、
前記アプリケーションサーバが、前記データベースへの登録対象データを確率的暗号化と決定的暗号化し、前記データベースサーバに確率的暗号文と決定的暗号文とを送信する手段を備え、
前記データベースサーバが、前記確率的暗号テーブルに確率的暗号文と確率的暗号IDを含むレコードを挿入し、前記決定的暗号テーブルに決定的暗号文と決定的暗号IDを含むレコードを挿入した後、前記アプリケーションサーバに確率的暗号IDと決定的暗号IDを送信する手段を備え、
アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号IDと決定的暗号IDを決定的暗号化し、前記データベースサーバに確率的暗号ID暗号文と決定的暗号ID暗号文を送信する手段を備え、
前記データベースサーバが、前記暗号文関係テーブルに確率的暗号ID暗号文と決定的暗号ID暗号文を含むレコードを挿入する手段を備えることを特徴とする。
前記アプリケーションサーバが、
データを決定的暗号化して前記データベースサーバに決定的暗号文を送信する手段を備え、
前記データベースサーバが、前記決定的暗号テーブルから決定的暗号文を含むレコードから決定的暗号IDを射影し、アプリケーションサーバに決定的暗号IDを送信する手段を備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で決定的暗号IDを決定的暗号化して前記データベースサーバに決定的暗号ID暗号文を送信する手段を備え、
前記データベースサーバが、前記暗号文関係テーブルから決定的暗号ID暗号文を含むレコードから確率的暗号ID暗号文を射影し、前記アプリケーションサーバに確率的暗号ID暗号文を送信する手段を備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号ID暗号文を決定的復号し、前記データベースサーバに確率的暗号IDを送信する手段を備え、
前記データベースサーバが、前記確率的暗号テーブルから確率的暗号IDを含むレコードを選択し、前記アプリケーションサーバに当該レコードを送信する手段を備え、
前記アプリケーションサーバが、前記データベースサーバから受信したレコードから確率的暗号文を射影し、確率的暗号文を確率的復号し、レコードの確率的暗号文を平文に置換し、検索結果としてレコードを取得する手段を備えることを特徴とする。
前記データベースサーバが、前記データベースのインデックス値登録処理を決定的暗号IDと決定的暗号文を入力として実行する手段を備え、
データベースのデータ部分一致検索処理として、
前記アプリケーションサーバが、検索範囲開始データと検索範囲終端データを決定的暗号化し、前記データベースサーバに検索範囲開始データ暗号文と検索範囲終端データ暗号文を送信する手段を備え、
前記データベースサーバが、前記データベースのインデックス値取得処理を検索範囲開始データ暗号文を入力として実行し、前記データベースのインデックス値取得処理を検索範囲終端データ暗号文を入力として実行し、前記決定的暗号テーブルからインデックス値が検索範囲開始インデックス値以上かつ検索範囲終端インデックス値未満であるレコードから決定的暗号IDと決定的暗号文を射影し、前記アプリケーションサーバに決定的暗号IDと決定的暗号文を送信する手段を備え、
前記アプリケーションサーバが、前記決定的暗号文を決定的復号し、平文のソート順番が検索範囲開始データと検索範囲終端データの間ならば、前記決定的暗号文から取得した暗号鍵で決定的暗号IDを決定的暗号化し、前記データベースサーバに決定的暗号ID暗号文を送信する手段を備え、
前記データベースサーバが、前記暗号文関係テーブルから決定的暗号ID暗号文を含むレコードから確率的暗号ID暗号文を射影し、前記アプリケーションサーバに確率的暗号ID暗号文を送信する手段を備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号ID暗号文を決定的復号し、前記データベースサーバに確率的暗号IDを送信する手段を備え、
前記データベースサーバが、前記確率的暗号テーブルから確率的暗号IDを含むレコードを選択し、前記アプリケーションサーバに当該レコードを送信する手段を備え、
前記アプリケーションサーバが、前記データベースサーバから受信したレコードから確率的暗号文を射影し、確率的暗号文を確率的復号し、前記レコードの確率的暗号文を平文に置換し、検索結果としてレコードを取得する手段を備えることを特徴とする。
前記データベースへのデータ登録処理を行うために、
前記アプリケーションサーバが、前記データベースへの登録対象データを確率的暗号化と決定的暗号化し、前記データベースサーバに確率的暗号文と決定的暗号文とを送信するステップを備え、
前記データベースサーバが、前記確率的暗号テーブルに確率的暗号文と確率的暗号IDを含むレコードを挿入し、前記決定的暗号テーブルに決定的暗号文と決定的暗号IDを含むレコードを挿入した後、前記アプリケーションサーバに確率的暗号IDと決定的暗号IDを送信するステップを備え、
アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号IDと決定的暗号IDを決定的暗号化し、前記データベースサーバに確率的暗号ID暗号文と決定的暗号ID暗号文を送信するステップを備え、
前記データベースサーバが、前記暗号文関係テーブルに確率的暗号ID暗号文と決定的暗号ID暗号文を含むレコードを挿入するステップを備えることを特徴とする。
前記アプリケーションサーバが、
データを決定的暗号化して前記データベースサーバに決定的暗号文を送信するステップを備え、
前記データベースサーバが、前記決定的暗号テーブルから決定的暗号文を含むレコードから決定的暗号IDを射影し、アプリケーションサーバに決定的暗号IDを送信するステップを備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で決定的暗号IDを決定的暗号化して前記データベースサーバに決定的暗号ID暗号文を送信するステップを備え、
前記データベースサーバが、前記暗号文関係テーブルから決定的暗号ID暗号文を含むレコードから確率的暗号ID暗号文を射影し、前記アプリケーションサーバに確率的暗号ID暗号文を送信するステップを備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号ID暗号文を決定的復号し、前記データベースサーバに確率的暗号IDを送信するステップを備え、
前記データベースサーバが、前記確率的暗号テーブルから確率的暗号IDを含むレコードを選択し、前記アプリケーションサーバに当該レコードを送信するステップを備え、
前記アプリケーションサーバが、前記データベースサーバから受信したレコードから確率的暗号文を射影し、確率的暗号文を確率的復号し、レコードの確率的暗号文を平文に置換し、検索結果としてレコードを取得するステップを備えることを特徴とする。
前記データベースサーバが、前記データベースのインデックス値登録処理を決定的暗号IDと決定的暗号文を入力として実行するステップを備え、
データベースのデータ部分一致検索処理として、
前記アプリケーションサーバが、検索範囲開始データと検索範囲終端データを決定的暗号化し、前記データベースサーバに検索範囲開始データ暗号文と検索範囲終端データ暗号文を送信するステップを備え、
前記データベースサーバが、前記データベースのインデックス値取得処理を検索範囲開始データ暗号文を入力として実行し、前記データベースのインデックス値取得処理を検索範囲終端データ暗号文を入力として実行し、前記決定的暗号テーブルからインデックス値が検索範囲開始インデックス値以上かつ検索範囲終端インデックス値未満であるレコードから決定的暗号IDと決定的暗号文を射影し、前記アプリケーションサーバに決定的暗号IDと決定的暗号文を送信するステップを備え、
前記アプリケーションサーバが、前記決定的暗号文を決定的復号し、平文のソート順番が検索範囲開始データと検索範囲終端データの間ならば、前記決定的暗号文から取得した暗号鍵で決定的暗号IDを決定的暗号化し、前記データベースサーバに決定的暗号ID暗号文を送信するステップを備え、
前記データベースサーバが、前記暗号文関係テーブルから決定的暗号ID暗号文を含むレコードから確率的暗号ID暗号文を射影し、前記アプリケーションサーバに確率的暗号ID暗号文を送信するステップを備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号ID暗号文を決定的復号し、前記データベースサーバに確率的暗号IDを送信するステップを備え、
前記データベースサーバが、前記確率的暗号テーブルから確率的暗号IDを含むレコードを選択し、前記アプリケーションサーバに当該レコードを送信するステップを備え、
前記アプリケーションサーバが、前記データベースサーバから受信したレコードから確率的暗号文を射影し、確率的暗号文を確率的復号し、前記レコードの確率的暗号文を平文に置換し、検索結果としてレコードを取得するステップを備えることを特徴とする。
これにより、データを確率的暗号化したデータベースでも、完全一致検索処理を高速に行なうことができる。
インデックス値を保持する決定的暗号テーブルを設け、この決定的暗号テーブルでインデックス値に基づいて決定的暗号文をバイナリサーチすることで、部分一致検索範囲を絞り込む。
これにより、データを暗号化したデータベースでも、部分一致検索処理を高速に行なうことができる。
検索結果を暗号文関係テーブルで変換する際に、検索結果の関係を変換することを、検索結果データの決定的暗号文から取得した暗号鍵で変換することで保証する。
これにより、不正者が任意の関係を変換できないため、不正者が任意のレコード間で同一データであることが分からないようにできる。
図1において、本発明のデータベース暗号化システムは、データベースサーバ1とアプリケーションサーバ2がネットワーク3を介して接続して構成される。
データベースサーバ1は、中央演算処理装置4と主記憶装置6と補助記憶装置8とネットワーク通信装置12がデータバス8を介して接続して構成される。
また、アプリケーションサーバ2は、中央演算処理装置5と主記憶装置7と補助記憶装置9とネットワーク通信装置13がデータバス11を介して接続して構成される。
データベースサーバの補助記憶装置8には、確率的暗号テーブル81、決定的暗号テーブル82、暗号文関係テーブル83が設けられている。
また、アプリケーションサーバ2の補助記憶装置9には暗号鍵Kの記憶領域91が設けられている。
確率的暗号とは、IV(暗号利用モードの初期化ベクトル)またはSALT(平文に付加するランダムなビット列)が有る共通鍵暗号である。
確率的暗号化処理PEは、暗号鍵Kと平文Mを入力として、暗号文PE(K,M)を出力する。
確率的暗号化処理では、入力が同一の暗号鍵と平文であっても、IVまたはSALTの値が異なれば、出力は異なる暗号文になる。
確率的復号処理PDは、暗号鍵Kと暗号文Cを入力として、平文PD(K,C)を出力する。
決定的暗号とは、IVおよびSALTが無い共通鍵暗号である。
決定的暗号化処理DEは、暗号鍵Kと平文Mを入力として、暗号文DE(K,M)を出力する。
決定的暗号化処理では、入力が同一の暗号鍵と平文ならば、出力は同一の暗号文になる。
決定的復号処理DDは、暗号鍵Kと暗号文Cを入力として、平文DD(K,C)を出力する。
鍵付きセキュアハッシュ処理Hは、暗号鍵KとメッセージMを入力として、セキュアハッシュ値H(K,M)を出力する。
アプリケーションサーバ2が、暗号鍵Kを記憶する。
確率的暗号テーブル81の必須カラムは、確率的暗号ID811と確率的暗号文812である。
確率的暗号ID811は、ユニーク制約のあるカラムである。
図2の確率的暗号テーブル81は、確率的暗号文カラムとして名前812とカード番号813を確率的暗号化した暗号文と、個人情報カラムとして年齢814を格納したテーブルである。
データベースサーバ1が記憶する決定的暗号テーブル82の一例について、図3を参照しながら説明する。
決定的暗号テーブル82のカラムは、決定的暗号ID821と決定的暗号文822とインデックス値823である。
決定的暗号ID821は、ユニーク制約のあるカラムである。
データベースサーバ1が記憶する暗号文関係テーブル83の一例について、図4を参照しながら説明する。
暗号文関係テーブル83のカラムは、確率的暗号ID暗号文831と決定的暗号ID暗号文832である。
確率的暗号ID暗号文831は、確率的暗号テーブル81の確率的暗号ID811を決定的暗号化した暗号文である。
決定的暗号ID暗号文832は、決定的暗号テーブル82の決定的暗号ID821を決定的暗号化した暗号文である。
データベースのデータ登録処理の一例について、図5を参照しながら説明する。
ただし、アプリケーションサーバ2が、データM(例えば名前やカード番号に相当)と個人情報(例えば年齢に相当)を記憶しているものとする。
まず、ステップ501において、アプリケーションサーバ2が、確率的暗号化処理を、暗号鍵KとデータMを入力として実行し、出力された確率的暗号文PC=PE(K,M)を取得し、また決定的暗号化処理を、暗号鍵KとデータMを入力として実行して、出力された決定的暗号文DC=DE(K,M)を取得して、データベースサーバ1に確率的暗号文812と決定的暗号文と個人情報822を送信する。
アプリケーションサーバ2から確率的暗号ID暗号文と決定的暗号ID暗号文を受信して、暗号文関係テーブル83に受信した確率的暗号ID暗号文と決定的暗号ID暗号文を含むレコードを挿入する。
データベースのインデックス値登録処理の一例について、図6を参照しながら説明する。
ただし、決定的暗号IDと決定的暗号文を入力とする。
ステップ601において、データベースサーバ1が、データベースのインデックス値取得処理を、決定的暗号文を入力として実行して、出力された登録インデックス値を取得する。
ただし、決定的暗号文を入力として、インデックス値を出力とする。
ステップ701において、データベースサーバ1が、決定的暗号テーブル82にレコードが無いならば、出力インデックス値を1として、ステップ707を実行する。
ステップ702において、データベースサーバ1が、決定的暗号テーブル82から最大のインデックス値を取得して、下限インデックス値を1として、上限インデックス値を取得した最大インデックス値とする。
ここで、入力決定的暗号文とは、バイナリサーチにおける検索したい値の暗号文 ということであり、また中央決定的暗号文とはバイナリサーチにおける中央の値の暗号文 ということである。
入力平文「ABC」と中央平文「ABC」のソート順番比較結果は「同一平文」であり、
入力平文「ABC」と中央平文「ACC」のソート順番比較結果は「昇順」であり、
入力平文「ABC」と中央平文「ABB」のソート順番比較結果は「降順」である。
例えば、平文が数値の場合で、
入力平文「1000」と中央平文「1000」のソート順番比較結果は「同一平文」であり、
入力平文「1000」と中央平文「1001」のソート順番比較結果は「昇順」であり、
入力平文「1000」と中央平文「999」のソート順番比較結果は「降順」である。
ステップ706において、データベースサーバ1が、アプリケーションサーバ2からソート順番比較結果を受信して、ソート順番比較結果が「同一平文」ならば、出力インデックス値を中央インデックス値として、ステップ707を実行してソート順番比較結果が「昇順」ならば、上限インデックス値を中央インデックス値−1として、ステップ703を実行して、ソート順番比較結果が「降順」ならば、下限インデックス値を中央インデックス値+1として、ステップ703を実行する。
データベースのインデックス値取得処理の例を、図6のステップ601において、決定的暗号文= DE(K, 1111222222222222)を入力として実行する場合で説明する。
1ステップ目に、ステップ701において、決定的暗号テーブルにレコードが有る場合なので、何も実行しない。
3ステップ目に、ステップ703において、下限インデックス値1≦上限インデックス値3の場合なので、中央インデックス値=(下限インデックス値1+上限インデックス値3)/2=2。
4ステップ目に、ステップ704において、入力決定的暗号文=DE(K, 1111222222222222)と中央決定的暗号文=DE(K,1111333333333333)を送信。
6ステップ目に、ステップ706において、ソート順番比較結果が「昇順」の場合なので、上限インデックス値=中央インデックス値2−1=1。
7ステップ目に、ステップ703において、下限インデックス値1≦上限インデックス値1の場合なので、中央インデックス値=(下限インデックス値1+上限インデックス値1)/2=1。
9ステップ目に、ステップ705において、入力平文=1111222222222222と中央平文=1111111111111111のソート順番を比較して、ソート順番比較結果「降順」を送信。
10ステップ目に、ステップ706において、ソート順番比較結果が「降順」の場合なので、下限インデックス値=中央インデックス値1+1=2。
11ステップ目に、ステップ703において、下限インデックス値2>上限インデックス値1の場合なので、出力インデックス値=下限インデックス値2。
12ステップ目に、ステップ707において、出力インデックス値2を出力する。
ただし、アプリケーションサーバ2が、データM(例えば名前やカード番号に相当)を記憶しているものとする。
図8の例は、データベースサーバ1が記憶するテーブルが図2〜4の状態であり、データM(名前=”HITACHI TARO”)についてデータ完全一致検索処理を実行する場合である。
ステップ801において、アプリケーションサーバ2が、決定的暗号化処理を、暗号鍵KとデータMを入力として実行して、出力された決定的暗号文DC=DE(K,M)を取得して、データベースサーバ1に決定的暗号文を送信する。
データベースサーバ1に決定的暗号ID暗号文822を送信する。
図9の例は、データベースサーバ1が記憶するテーブルが図2〜4の状態であり、検索範囲開始データM1(カード番号=1000000000000000)と検索範囲終端データM2(カード番号=2000000000000000)についてデータ部分一致検索処理を実行する場合である。
データ部分一致検索とは、データが文字列の場合では文字列前方一致検索であり、データが数値の場合では数値範囲検索である。
ステップ901において、アプリケーションサーバ2が、決定的暗号化処理を、暗号鍵Kと検索範囲開始データM1を入力として実行して、出力された検索範囲開始データ暗号文DC1=DE(K,M1)を取得して、決定的暗号化処理を、暗号鍵Kと検索範囲終端データM2を入力として実行して、出力された検索範囲終端データ暗号文DC2=DE(K,M2)を取得して、データベースサーバ1に検索範囲開始データ暗号文と検索範囲終端データ暗号文を送信する。
ステップ904において、アプリケーションサーバ2が、データベースサーバ1から決定的暗号ID821と決定的暗号文DCを受信して、決定的復号処理を、暗号鍵Kと受信した決定的暗号文DCを入力として実行して、出力された平文M=PD(K,DC)を取得して、検索範囲開始データM1と平文Mのソート順番を比較して、ソート順番比較結果として「同一平文」または「昇順」を取得したならば、かつ、平文Mと検索範囲終端データM2のソート順番を比較して、ソート順番比較結果として「昇順」を取得したならば、鍵付きセキュアハッシュ処理を、暗号鍵Kと受信した決定的暗号文DCを入力として実行して、出力されたセキュアハッシュ値KH=H(K,DC)を取得して、決定的暗号化処理を、暗号鍵KHと受信した決定的暗号IDを入力として実行して、出力された決定的暗号ID暗号文DE(KH,決定的暗号ID)を取得して、データベースサーバ1に決定的暗号ID暗号文を送信する。
ステップ908において、アプリケーションサーバ2が、データベースサーバ1からレコードを受信して、受信したレコードから確率的暗号文を射影して、確率的復号処理を、暗号鍵Kと射影した確率的暗号文を入力として実行して、出力された平文M=PD(K,確率的暗号文)を取得して、受信したレコードの確率的暗号文を平文Mに置換して、データ部分一致検索処理の検索結果としてレコードを取得する。
2 アプリケーションサーバ
3 ネットワーク
4、5 中央演算処理装置
6,7 主記憶装置
8,9 補助記憶装置
12,13 ネットワーク通信装置
10,11 データバス
81 確率的暗号テーブル
82 決定的暗号テーブル
83 暗号文関係テーブル
Claims (6)
- データベースサーバとアプリケーションサーバがネットワークを介して接続して構成され、前記データベースサーバのデータベースが確率的暗号テーブルと決定的暗号テーブルと暗号文関係テーブルとを記憶し、前記アプリケーションサーバのデータベースが暗号鍵を記憶するデータベース暗号化システムであって、
前記データベースへのデータ登録処理を行うために、
前記アプリケーションサーバが、前記データベースへの登録対象データを確率的暗号化と決定的暗号化し、前記データベースサーバに確率的暗号文と決定的暗号文とを送信する手段を備え、
前記データベースサーバが、前記確率的暗号テーブルに確率的暗号文と確率的暗号IDを含むレコードを挿入し、前記決定的暗号テーブルに決定的暗号文と決定的暗号IDを含むレコードを挿入した後、前記アプリケーションサーバに確率的暗号IDと決定的暗号IDを送信する手段を備え、
アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号IDと決定的暗号IDを決定的暗号化し、前記データベースサーバに確率的暗号ID暗号文と決定的暗号ID暗号文を送信する手段を備え、
前記データベースサーバが、前記暗号文関係テーブルに確率的暗号ID暗号文と決定的暗号ID暗号文を含むレコードを挿入する手段を備えることを特徴とするデータベース暗号化システム。 - 前記データベースのデータ完全一致検索処理として、
前記アプリケーションサーバが、
データを決定的暗号化して前記データベースサーバに決定的暗号文を送信する手段を備え、
前記データベースサーバが、前記決定的暗号テーブルから決定的暗号文を含むレコードから決定的暗号IDを射影し、アプリケーションサーバに決定的暗号IDを送信する手段を備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で決定的暗号IDを決定的暗号化して前記データベースサーバに決定的暗号ID暗号文を送信する手段を備え、
前記データベースサーバが、前記暗号文関係テーブルから決定的暗号ID暗号文を含むレコードから確率的暗号ID暗号文を射影し、前記アプリケーションサーバに確率的暗号ID暗号文を送信する手段を備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号ID暗号文を決定的復号し、前記データベースサーバに確率的暗号IDを送信する手段を備え、
前記データベースサーバが、前記確率的暗号テーブルから確率的暗号IDを含むレコードを選択し、前記アプリケーションサーバに当該レコードを送信する手段を備え、
前記アプリケーションサーバが、前記データベースサーバから受信したレコードから確率的暗号文を射影し、確率的暗号文を確率的復号し、レコードの確率的暗号文を平文に置換し、検索結果としてレコードを取得する手段を備えることを特徴とする請求項1に記載のデータベース暗号化システム。 - データベースのデータ登録処理として、
前記データベースサーバが、前記データベースのインデックス値登録処理を決定的暗号IDと決定的暗号文を入力として実行する手段を備え、
データベースのデータ部分一致検索処理として、
前記アプリケーションサーバが、検索範囲開始データと検索範囲終端データを決定的暗号化し、前記データベースサーバに検索範囲開始データ暗号文と検索範囲終端データ暗号文を送信する手段を備え、
前記データベースサーバが、前記データベースのインデックス値取得処理を検索範囲開始データ暗号文を入力として実行し、前記データベースのインデックス値取得処理を検索範囲終端データ暗号文を入力として実行し、前記決定的暗号テーブルからインデックス値が検索範囲開始インデックス値以上かつ検索範囲終端インデックス値未満であるレコードから決定的暗号IDと決定的暗号文を射影し、前記アプリケーションサーバに決定的暗号IDと決定的暗号文を送信する手段を備え、
前記アプリケーションサーバが、前記決定的暗号文を決定的復号し、平文のソート順番が検索範囲開始データと検索範囲終端データの間ならば、前記決定的暗号文から取得した暗号鍵で決定的暗号IDを決定的暗号化し、前記データベースサーバに決定的暗号ID暗号文を送信する手段を備え、
前記データベースサーバが、前記暗号文関係テーブルから決定的暗号ID暗号文を含むレコードから確率的暗号ID暗号文を射影し、前記アプリケーションサーバに確率的暗号ID暗号文を送信する手段を備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号ID暗号文を決定的復号し、前記データベースサーバに確率的暗号IDを送信する手段を備え、
前記データベースサーバが、前記確率的暗号テーブルから確率的暗号IDを含むレコードを選択し、前記アプリケーションサーバに当該レコードを送信する手段を備え、
前記アプリケーションサーバが、前記データベースサーバから受信したレコードから確率的暗号文を射影し、確率的暗号文を確率的復号し、前記レコードの確率的暗号文を平文に置換し、検索結果としてレコードを取得する手段を備えることを特徴とする請求項1に記載のデータベース暗号化システム。 - データベースサーバとアプリケーションサーバがネットワークを介して接続して構成され、前記データベースサーバのデータベースが確率的暗号テーブルと決定的暗号テーブルと暗号文関係テーブルとを記憶し、前記アプリケーションサーバのデータベースが暗号鍵を記憶するデータベース暗号化方法であって、
前記データベースへのデータ登録処理を行うために、
前記アプリケーションサーバが、前記データベースへの登録対象データを確率的暗号化と決定的暗号化し、前記データベースサーバに確率的暗号文と決定的暗号文とを送信するステップを備え、
前記データベースサーバが、前記確率的暗号テーブルに確率的暗号文と確率的暗号IDを含むレコードを挿入し、前記決定的暗号テーブルに決定的暗号文と決定的暗号IDを含むレコードを挿入した後、前記アプリケーションサーバに確率的暗号IDと決定的暗号IDを送信するステップを備え、
アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号IDと決定的暗号IDを決定的暗号化し、前記データベースサーバに確率的暗号ID暗号文と決定的暗号ID暗号文を送信するステップを備え、
前記データベースサーバが、前記暗号文関係テーブルに確率的暗号ID暗号文と決定的暗号ID暗号文を含むレコードを挿入するステップを備えることを特徴とするデータベース暗号化方法。 - 前記データベースのデータ完全一致検索処理として、
前記アプリケーションサーバが、
データを決定的暗号化して前記データベースサーバに決定的暗号文を送信するステップを備え、
前記データベースサーバが、前記決定的暗号テーブルから決定的暗号文を含むレコードから決定的暗号IDを射影し、アプリケーションサーバに決定的暗号IDを送信するステップを備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で決定的暗号IDを決定的暗号化して前記データベースサーバに決定的暗号ID暗号文を送信するステップを備え、
前記データベースサーバが、前記暗号文関係テーブルから決定的暗号ID暗号文を含むレコードから確率的暗号ID暗号文を射影し、前記アプリケーションサーバに確率的暗号ID暗号文を送信するステップを備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号ID暗号文を決定的復号し、前記データベースサーバに確率的暗号IDを送信するステップを備え、
前記データベースサーバが、前記確率的暗号テーブルから確率的暗号IDを含むレコードを選択し、前記アプリケーションサーバに当該レコードを送信するステップを備え、
前記アプリケーションサーバが、前記データベースサーバから受信したレコードから確率的暗号文を射影し、確率的暗号文を確率的復号し、レコードの確率的暗号文を平文に置換し、検索結果としてレコードを取得するステップを備えることを特徴とする請求項4に記載のデータベース暗号化方法。 - データベースのデータ登録処理として、
前記データベースサーバが、前記データベースのインデックス値登録処理を決定的暗号IDと決定的暗号文を入力として実行するステップを備え、
データベースのデータ部分一致検索処理として、
前記アプリケーションサーバが、検索範囲開始データと検索範囲終端データを決定的暗号化し、前記データベースサーバに検索範囲開始データ暗号文と検索範囲終端データ暗号文を送信するステップを備え、
前記データベースサーバが、前記データベースのインデックス値取得処理を検索範囲開始データ暗号文を入力として実行し、前記データベースのインデックス値取得処理を検索範囲終端データ暗号文を入力として実行し、前記決定的暗号テーブルからインデックス値が検索範囲開始インデックス値以上かつ検索範囲終端インデックス値未満であるレコードから決定的暗号IDと決定的暗号文を射影し、前記アプリケーションサーバに決定的暗号IDと決定的暗号文を送信するステップを備え、
前記アプリケーションサーバが、前記決定的暗号文を決定的復号し、平文のソート順番が検索範囲開始データと検索範囲終端データの間ならば、前記決定的暗号文から取得した暗号鍵で決定的暗号IDを決定的暗号化し、前記データベースサーバに決定的暗号ID暗号文を送信するステップを備え、
前記データベースサーバが、前記暗号文関係テーブルから決定的暗号ID暗号文を含むレコードから確率的暗号ID暗号文を射影し、前記アプリケーションサーバに確率的暗号ID暗号文を送信するステップを備え、
前記アプリケーションサーバが、前記決定的暗号文から取得した暗号鍵で確率的暗号ID暗号文を決定的復号し、前記データベースサーバに確率的暗号IDを送信するステップを備え、
前記データベースサーバが、前記確率的暗号テーブルから確率的暗号IDを含むレコードを選択し、前記アプリケーションサーバに当該レコードを送信するステップを備え、
前記アプリケーションサーバが、前記データベースサーバから受信したレコードから確率的暗号文を射影し、確率的暗号文を確率的復号し、前記レコードの確率的暗号文を平文に置換し、検索結果としてレコードを取得するステップを備えることを特徴とする請求項4に記載のデータベース暗号化方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010064555A JP5411034B2 (ja) | 2010-03-19 | 2010-03-19 | データベース暗号化システム及び方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010064555A JP5411034B2 (ja) | 2010-03-19 | 2010-03-19 | データベース暗号化システム及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011198079A JP2011198079A (ja) | 2011-10-06 |
JP5411034B2 true JP5411034B2 (ja) | 2014-02-12 |
Family
ID=44876185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010064555A Expired - Fee Related JP5411034B2 (ja) | 2010-03-19 | 2010-03-19 | データベース暗号化システム及び方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5411034B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5606642B2 (ja) | 2012-01-25 | 2014-10-15 | 三菱電機株式会社 | データ検索装置、データ検索方法、データ検索プログラム、データ登録装置、データ登録方法、データ登録プログラムおよび情報処理装置 |
WO2014128958A1 (ja) | 2013-02-25 | 2014-08-28 | 三菱電機株式会社 | サーバ装置、秘匿検索プログラム,記録媒体及び秘匿検索システム |
DE112015002839T5 (de) | 2014-06-16 | 2017-03-09 | Nec Corporation | Kriterienerzeugungsvorrichtung, Kriterienerzeugungsverfahren, Speichermedium, das ein Kriterienerzeugungsprogramm speichert, Datenbanksuchsystem und Speichermedium, das ein Datenbanksuchprogramm aufweist |
US10673627B2 (en) | 2016-01-18 | 2020-06-02 | Mitsubishi Electric Corporation | Encryption device, search device, computer readable medium, encryption method, and search method |
US10789374B2 (en) * | 2016-03-28 | 2020-09-29 | Hitachi, Ltd. | Database system and data retrieval method |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11143780A (ja) * | 1997-11-05 | 1999-05-28 | Hitachi Ltd | データベースにおける秘密情報管理方法およびデータベースの秘密情報管理装置 |
US7689547B2 (en) * | 2006-09-06 | 2010-03-30 | Microsoft Corporation | Encrypted data search |
-
2010
- 2010-03-19 JP JP2010064555A patent/JP5411034B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011198079A (ja) | 2011-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9275250B2 (en) | Searchable encryption processing system | |
JP6180177B2 (ja) | プライバシーを保護することができる暗号化データの問い合わせ方法及びシステム | |
US8694467B2 (en) | Random number based data integrity verification method and system for distributed cloud storage | |
KR102219476B1 (ko) | 데이터를 암호화하는 방법 및 그를 위한 장치 | |
TWI489847B (zh) | 資料加密方法、資料驗證方法及電子裝置 | |
US8892881B2 (en) | Split key secure access system | |
CN106599723B (zh) | 一种文件加密方法及装置、文件解密方法及装置 | |
Abusukhon et al. | New direction of cryptography: A review on text-to-image encryption algorithms based on RGB color value | |
JP6961324B2 (ja) | 検索可能暗号処理システム | |
JP5411034B2 (ja) | データベース暗号化システム及び方法 | |
CN113098675B (zh) | 基于多项式完全同态的二进制数据加密系统及方法 | |
Joshy et al. | Text to image encryption technique using RGB substitution and AES | |
KR101217491B1 (ko) | 공개키 기반의 키워드 검색 방법 | |
US8458452B1 (en) | System and method for encryption and decryption of data transferred between computer systems | |
Ahmad et al. | Protection of the texts using Base64 and MD5 | |
KR20140033824A (ko) | 스마트 디바이스에서 해쉬값 기반 대칭키 암호화 시스템 및 방법 | |
KR100951034B1 (ko) | 암호문 크기를 줄이기 위한 공개키 기반의 검색가능암호문생성 방법과, 그에 따른 공개키 기반의 데이터 검색 방법 | |
JP2012050075A (ja) | 暗号化通信システム及び暗号化通信方法 | |
JP2005114870A (ja) | 暗号通信システム | |
Kadry et al. | An improvement of RC4 cipher using vigenère cipher | |
JP5586758B1 (ja) | 動的暗号化鍵生成システム | |
KR101808313B1 (ko) | 데이터 암호화 방법 | |
Shaik et al. | A compatible hexadecimal encryption-booster algorithm for augmenting security in the advanced encryption standard | |
Park et al. | Methods for practical whitebox cryptography | |
Li et al. | The code for securing web applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120802 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130911 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130913 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130926 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20131017 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131107 |
|
LAPS | Cancellation because of no payment of annual fees |