JP5179921B2 - ENCRYPTION DEVICE, DECRYPTION DEVICE, DATA PROTECTION SYSTEM, DATA PROTECTION METHOD - Google Patents
ENCRYPTION DEVICE, DECRYPTION DEVICE, DATA PROTECTION SYSTEM, DATA PROTECTION METHOD Download PDFInfo
- Publication number
- JP5179921B2 JP5179921B2 JP2008087273A JP2008087273A JP5179921B2 JP 5179921 B2 JP5179921 B2 JP 5179921B2 JP 2008087273 A JP2008087273 A JP 2008087273A JP 2008087273 A JP2008087273 A JP 2008087273A JP 5179921 B2 JP5179921 B2 JP 5179921B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- mask
- unit
- acquisition unit
- encryption
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 72
- 238000012545 processing Methods 0.000 claims description 143
- 230000008569 process Effects 0.000 claims description 42
- 238000004891 communication Methods 0.000 claims description 17
- 230000000873 masking effect Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000013523 data management Methods 0.000 description 5
- 230000006872 improvement Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Description
本発明は、データ暗号化復号化システムにおけるデータ保護レベルの向上に寄与する技術に関するものである。 The present invention relates to a technique that contributes to improvement of a data protection level in a data encryption / decryption system.
従来、暗号鍵とそれと対になる復号鍵を用いたデータ暗号化復号化技術が知られる。 Conventionally, a data encryption / decryption technique using an encryption key and a decryption key paired therewith is known.
上記従来のデータ暗号化復号化システムにおいては、所定の暗号鍵を用いた暗号化処理により生成された暗号化データを復号化するためには、対応する復号鍵が必要となる(例えば、非特許文献1および2参照。)。
In the above conventional data encryption / decryption system, in order to decrypt the encrypted data generated by the encryption process using a predetermined encryption key, a corresponding decryption key is required (for example, non-patent) See
悪意のある第三者は、この暗号化データを入手した際に、データの不正入手のために、復号鍵を総当たりすることにより復号化を試みる「Brute Force Attack」もしくは「Brute Force Password Cracking」と呼ばれる復号化手法を利用可能である。 When a malicious third party obtains this encrypted data, it attempts to decrypt it by brute force using the decryption key in order to obtain unauthorized data, such as “Brute Force Attack” or “Brute Force Password Cracking”. Can be used.
この手法に対しては、復号鍵の長さを長くしたり、復号化処理のための演算負荷が大きい暗号化アルゴリズムを採用したりすることにより、総当たりに要するコストを増加させるといった対策が考えられる。しかしながら、上記対策では、計算機の性能向上などにより、暗号化時に想定していたレベルでのデータ保護機能を長期間維持できなくなるおそれがある。 For this technique, measures such as increasing the cost of brute force by increasing the length of the decryption key or adopting an encryption algorithm with a large computation load for decryption processing are considered. It is done. However, with the above measures, there is a possibility that the data protection function at the level assumed at the time of encryption cannot be maintained for a long period of time due to improvement in the performance of the computer.
また、上述のような、計算機の性能向上に起因する問題を解決する手法として、暗号化対象である平文のデータと同じデータ長の乱数を用いた暗号化手法「ワンタイムパッド暗号」が知られる(例えば、非特許文献3参照。)。
しかし、上記「ワンタイムパッド暗号」では、暗号化データの復号化を行う装置にて、暗号化対象である平文のデータと同じデータ長の乱数を、暗号化データと同様に受信する必要があり、当該復号化を行う装置における通信量が多いという問題がある。 However, in the above "One Time Pad Encryption", it is necessary for the device that decrypts the encrypted data to receive a random number having the same data length as the plaintext data to be encrypted in the same way as the encrypted data. There is a problem that the amount of communication in the device that performs the decoding is large.
本発明は上述した問題点を解決するためになされたものであり、データの暗号化および復号化を行うデータ保護システムにおいて、データの復号化に要するデータ容量の低減を図るとともに、悪意の第三者による不正な復号化の困難性を高めることのできる技術を提供することを目的とする。 The present invention has been made to solve the above-described problems. In a data protection system for encrypting and decrypting data, the present invention aims to reduce the data capacity required for data decryption and It is an object of the present invention to provide a technique that can increase the difficulty of unauthorized decryption by a person.
上述した課題を解決するため、本発明の一態様に係る暗号化装置は、暗号化すべき対象データに所定の暗号化処理を施す暗号化処理部と、前記暗号化処理部での暗号化処理により生成される暗号化データの一部のデータ列と、該データ列と同じデータ長である乱数との排他的論理和を算出するマスク処理部と、を備えてなることを特徴とするものである。 In order to solve the above-described problem, an encryption apparatus according to an aspect of the present invention includes an encryption processing unit that performs predetermined encryption processing on target data to be encrypted, and encryption processing performed by the encryption processing unit. A mask processing unit that calculates an exclusive OR of a partial data string of the generated encrypted data and a random number having the same data length as the data string is provided. .
また、本発明の一態様に係る復号化装置は、乱数データを用いた所定のマスク処理が施された暗号化済みのデータを復号化する復号化装置であって、復号化の対象となる復号対象データを取得するデータ取得部と、前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を取得するマスク情報取得部と、前記マスク情報取得部にて取得される情報に基づいて、前記データ取得部にて取得される復号対象データについての、所定のマスク処理によるデータ保護を解除するマスク解除部と、前記マスク解除部にて生成される暗号化済みデータを復号化するための復号鍵を取得する復号鍵取得部と、前記復号鍵取得部にて取得される復号鍵に基づいて、前記マスク解除部にて生成される暗号化済みデータを復号化する復号化部と備えてなることを特徴とするものである。 In addition, a decryption device according to an aspect of the present invention is a decryption device that decrypts encrypted data that has been subjected to predetermined mask processing using random number data, and is a decryption target A data acquisition unit for acquiring target data; a mask information acquisition unit for acquiring random number data used in the predetermined mask processing; and a data area obtained by calculating an exclusive OR with the random number data; and the mask information Based on the information acquired by the acquisition unit, generated by the mask cancellation unit and the mask cancellation unit for canceling data protection by predetermined mask processing for the data to be decoded acquired by the data acquisition unit A decryption key obtaining unit for obtaining a decryption key for decrypting the encrypted data, and an encryption generated by the mask release unit based on the decryption key obtained by the decryption key obtaining unit. It is to characterized in that it comprises a decoding unit for decoding of Data.
また、本発明の一態様に係るデータ保護システムは、暗号化すべき対象データに所定の暗号化処理を施す暗号化処理部と、前記暗号化処理部での暗号化処理により生成される暗号化データの一部のデータ列と、該データ列と同じデータ長である乱数データとの排他的論理和を算出する所定のマスク処理を行うマスク処理部とを有する暗号化装置と、前記マスク処理部にてマスク処理が施されたデータを取得するデータ取得部と、前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を取得するマスク情報取得部と、前記マスク情報取得部にて取得される情報に基づいて、前記データ取得部にて取得される復号対象データについての、所定のマスク処理によるデータ保護を解除するマスク解除部と、前記マスク解除部にて生成される暗号化済みデータを復号化するための復号鍵を取得する復号鍵取得部と、前記復号鍵取得部にて取得される復号鍵に基づいて、前記マスク解除部にて生成される暗号化済みデータを復号化する復号化部とを有する復号化装置とを備えてなることを特徴とするものである。 The data protection system according to one aspect of the present invention includes an encryption processing unit that performs predetermined encryption processing on target data to be encrypted, and encrypted data generated by the encryption processing in the encryption processing unit. And a mask processing unit for performing a predetermined mask process for calculating an exclusive OR of a part of the data string and random number data having the same data length as the data string, and the mask processing unit A data acquisition unit that acquires data subjected to mask processing, and mask information acquisition that acquires random number data used in the predetermined mask processing and information indicating a data area obtained by calculating an exclusive OR with the random number data The data protection by the predetermined mask process for the data to be decoded acquired by the data acquisition unit based on the information acquired by the unit and the mask information acquisition unit Based on the decryption key, the decryption key acquisition unit for acquiring the decryption key for decrypting the encrypted data generated by the mask release unit, and the decryption key acquired by the decryption key acquisition unit And a decryption device having a decryption unit for decrypting the encrypted data generated by the mask canceling unit.
また、本発明の一態様に係るデータ保護方法は、暗号化すべき対象データに所定の暗号化処理を施す暗号化処理ステップと、前記暗号化処理ステップでの暗号化処理により生成される暗号化データの一部のデータ列と、該データ列と同じデータ長である乱数データとの排他的論理和を算出する所定のマスク処理を行うマスク処理ステップと、前記マスク処理ステップにてマスク処理が施されたデータを取得するデータ取得ステップと、前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を取得するマスク情報取得ステップと、前記マスク情報取得ステップにて取得される情報に基づいて、前記データ取得部にて取得される復号対象データについての、所定のマスク処理によるデータ保護を解除するマスク解除ステップと、前記マスク解除ステップにて生成される暗号化済みデータを復号化するための復号鍵を取得する復号鍵取得ステップと、前記復号鍵取得ステップにて取得される復号鍵に基づいて、前記マスク解除ステップにて生成される暗号化済みデータを復号化する復号化ステップと、を備えてなることを特徴とするものである。 The data protection method according to one aspect of the present invention includes an encryption processing step for performing predetermined encryption processing on target data to be encrypted, and encrypted data generated by the encryption processing in the encryption processing step. A mask processing step for performing a predetermined mask processing for calculating an exclusive OR of a part of the data sequence and random number data having the same data length as the data sequence, and the mask processing is performed in the mask processing step. A data acquisition step of acquiring the acquired data, a mask information acquisition step of acquiring information indicating a random number data used in the predetermined mask process and a data area obtained by calculating an exclusive OR with the random number data, and the mask information Based on the information acquired in the acquisition step, the data to be decoded acquired by the data acquisition unit is decoded by a predetermined mask process. Acquired in the mask release step for releasing the data protection, the decryption key acquisition step for acquiring the decryption key for decrypting the encrypted data generated in the mask release step, and the decryption key acquisition step And a decrypting step for decrypting the encrypted data generated in the unmasking step based on the decryption key.
また、本発明の一態様に係る暗号化プログラムは、暗号化すべき対象データに所定の暗号化処理を施す暗号化処理ステップと、前記暗号化処理ステップでの暗号化処理により生成される暗号化データの一部のデータ列と、該データ列と同じデータ長である乱数との排他的論理和を算出するマスク処理ステップと、をコンピュータに実行させることを特徴とするものである。 An encryption program according to one aspect of the present invention includes an encryption processing step for performing predetermined encryption processing on target data to be encrypted, and encrypted data generated by the encryption processing in the encryption processing step. A mask processing step of calculating an exclusive OR of a part of the data string and a random number having the same data length as the data string is executed by a computer.
また、本発明の一態様に係る復号化プログラムは、乱数データを用いた所定のマスク処理が施された暗号化済みデータを復号化する復号化プログラムであって、復号化の対象となる復号対象データを取得するデータ取得ステップと、前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を取得するマスク情報取得ステップと、前記マスク情報取得ステップにて取得される情報に基づいて、前記データ取得部にて取得される復号対象データについての、所定のマスク処理によるデータ保護を解除するマスク解除ステップと、前記マスク解除ステップにて生成される暗号化済みデータを復号化するための復号鍵を取得する復号鍵取得ステップと、前記復号鍵取得ステップにて取得される復号鍵に基づいて、前記マスク解除ステップにて生成される暗号化済みデータを復号化する復号化ステップとをコンピュータに実行させることを特徴とするものである。 In addition, a decryption program according to an aspect of the present invention is a decryption program for decrypting encrypted data that has been subjected to predetermined mask processing using random number data, and is a decryption target to be decrypted A data acquisition step for acquiring data; a mask information acquisition step for acquiring random number data used in the predetermined mask processing; and information indicating a data area obtained by calculating exclusive OR with the random number data; and the mask information acquisition Based on the information acquired in the step, the data to be decrypted acquired in the data acquisition unit is generated in a mask cancellation step for canceling data protection by a predetermined mask process and the mask cancellation step. Obtained in a decryption key obtaining step for obtaining a decryption key for decrypting encrypted data and the decryption key obtaining step Based on the decryption key, it is characterized in that to execute a decoding step of decoding the encrypted data generated by the unmasking step on the computer.
以上に詳述したように本発明によれば、データの暗号化および復号化を行うデータ保護システムにおいて、データの復号化に要するデータ容量の低減を図るとともに、悪意の第三者による不正な復号化の困難性を高めることのできる技術を提供することができる。 As described above in detail, according to the present invention, in a data protection system that encrypts and decrypts data, the data capacity required for decrypting data is reduced, and unauthorized decryption by a malicious third party is performed. It is possible to provide a technique capable of increasing the difficulty of the conversion.
以下、本発明の実施の形態について図面を参照しつつ説明する。 Embodiments of the present invention will be described below with reference to the drawings.
図1は、本発明の実施の形態によるデータ保護システムの概略的なシステム構成を示す図である。図1に示すように、本実施の形態によるデータ保護システムは、暗号化装置1、復号化装置2およびデータベース3を備えている。
FIG. 1 is a diagram showing a schematic system configuration of a data protection system according to an embodiment of the present invention. As shown in FIG. 1, the data protection system according to the present embodiment includes an
本実施の形態によるデータ保護システムでは、暗号化装置1、復号化装置2およびデータベース3は、それぞれが互いに例えばインターネット9等の電気通信回線を介して相互に通信可能となっている。なお、本実施の形態では、一例として、暗号化装置1、復号化装置2およびデータベース3が、インターネット回線を介して通信可能に接続されている例を挙げているが、これに限られるものではなく、例えば、LAN(Local Area Network)やWAN(Wide Area Network)などの電気通信回線を介して接続する構成としてもよい。
In the data protection system according to the present embodiment, the
本実施の形態によるデータ保護システムでは、暗号化装置1にて暗号化等のデータ保護処理が施されたデータが、インターネット9を介して復号化装置2へと送信される。復号化装置2は、データベース3から取得される各種情報に基づいて、暗号化装置1から受信したデータの復号化を行う。
In the data protection system according to the present embodiment, data that has been subjected to data protection processing such as encryption by the
以下、暗号化装置1、復号化装置2およびデータベース3の機能の詳細について説明する。図2は、本実施の形態によるデータ保護システムを構成する各構成要素の機能について説明するための機能ブロック図である。
Details of the functions of the
まず、暗号化装置1について説明する。本実施の形態による暗号化装置1は、暗号化処理部101、マスク処理部102、マスクデータ設定部103、マスクデータ生成部104、操作入力部105、CPU108およびMEMORY109を備えてなる構成となっている。
First, the
暗号化処理部101は、暗号化装置1にて暗号化すべき対象データに所定の暗号化処理を施す役割を有している。
The encryption processing unit 101 has a role of performing predetermined encryption processing on target data to be encrypted by the
暗号化処理部101にて実行する暗号化処理は、例えば、共通鍵を用いるブロック暗号方式(例えば、CBC(Cipher Block Chaining)方式)を採用するものとする。具体的に、暗号化処理部101におけるブロック暗号処理では、上記暗号化の対象となる「対象データ」を、それぞれが所定のデータ長を有する複数ブロックに分割し、該複数ブロックそれぞれに暗号処理を施すブロック暗号処理を実行する。 The encryption processing executed by the encryption processing unit 101 is, for example, a block encryption method using a common key (for example, a CBC (Cipher Block Chaining) method). Specifically, in the block encryption processing in the encryption processing unit 101, the “target data” to be encrypted is divided into a plurality of blocks each having a predetermined data length, and the encryption processing is performed on each of the plurality of blocks. The block encryption process to be performed is executed.
もちろん、暗号化処理部101における暗号化は、CBC方式に限定されるものではなく、鍵方式についても、共通鍵方式に限らず、例えば公開鍵方式を採用することもできる。本実施の形態における暗号化処理部101は、暗号化処理部101にて暗号化されたデータを復号化するための復号鍵を、例えばインターネット9等の電気通信回線を介して復号化装置2に送信する。
Of course, the encryption in the encryption processing unit 101 is not limited to the CBC method, and the key method is not limited to the common key method, and for example, a public key method can be adopted. The encryption processing unit 101 according to the present embodiment sends a decryption key for decrypting the data encrypted by the encryption processing unit 101 to the
マスク処理部102は、暗号化処理部101での暗号化処理により生成される暗号化済データの一部のデータ列と、該データ列と同じデータ長である乱数との排他的論理和を算出する。
The
マスクデータ設定部103は、操作入力部105へのユーザの操作入力に基づいて、マスク処理部102にて暗号化処理部101での暗号化処理により生成される暗号化データの一部のデータ列と排他的論理和を算出するのに用いる乱数データのデータ長を設定する。
The mask
マスクデータ生成部104は、マスクデータ設定部103における設定処理に基づいて、(1)所定のマスク処理に用いる所望の疑似乱数データ、および(2)暗号化済データにおける該乱数データと排他的論理和が演算されるデータ領域(マスク位置)を示す情報(もしくは、マスク位置に関する情報)を生成する。マスクデータ生成部104にて生成される乱数データは、マスク処理部102に送信されるとともに、データベース3へも送信され、データベース3にて登録される。
Based on the setting process in the mask
操作入力部105は、例えば、キーボード、マウス、タッチパネルディスプレイ等から構成されており、ユーザによる操作入力を受け付ける役割を有している。
The
CPU108は、暗号化装置1における各種処理を行う役割を有しており、またMEMORY109に格納されているプログラムを実行することにより種々の機能を実現する役割も有している。MEMORY109は、例えばROMやRAM等から構成されており、暗号化装置1において利用される種々の情報やプログラムを格納する役割を有している。
The
続いて、本実施の形態による復号化装置2の機能の詳細について説明する。本実施の形態による復号化装置2は、暗号化装置1にて所定のマスク処理が施された暗号化済みのデータを復号化する役割を有している。復号化装置2は、データ取得部201、マスク情報取得部202、マスク解除部203、復号鍵取得部204、復号化部205、CPU208、MEMORY209および操作入力部210を備えている。
Next, details of the function of the
データ取得部201は、インターネット9を介して暗号化装置1から送信される復号化の対象となる復号対象データ(暗号化装置1にて暗号化処理およびマスク処理が施されたデータ)を取得する。ここでの復号対象データは、例えば、Eメールに添付ファイルとして添付することによるメール送信処理や、FTP等のデータ転送技術によるデータ送信処理により、例えばインターネット9を介して復号化装置2に送信される。
The
マスク情報取得部202は、所定のマスク処理に用いられた乱数データ、および該乱数データと排他的論理和を演算した暗号化済データのデータ領域を示す情報を、データベース3から取得する。
The mask
マスク解除部203は、マスク情報取得部202にて取得される情報に基づいて、データ取得部201にて取得される「復号対象データ」についての、所定のマスク処理によるデータ保護を解除する。
Based on the information acquired by the mask
復号鍵取得部204は、マスク解除部203にて生成される暗号化済みデータを復号化するための復号鍵を、暗号化装置1における暗号化処理部101からインターネット9経由で取得する。
The decryption
このように、本実施の形態では、マスク処理部102にてマスク処理が施されたデータと、暗号化処理部101から送信される復号鍵情報とが、インターネット9を介して復号化装置2に送信される構成となっている。もちろん、これに限られるものではなく、更なるセキュリティレベルの向上のために、マスク処理が施されたデータと復号鍵情報とを、互いに異なる通信手段を介して復号化装置2に送信する構成とすることもできる。
As described above, in the present embodiment, the data subjected to the mask processing by the
復号化部205は、復号鍵取得部204にて取得される復号鍵に基づいて、マスク解除部203にて生成される暗号化済みデータを復号化する。具体的に、CBC方式を採用した暗号化処理部101における暗号化処理が施されたデータの復号化処理は、暗号化データの各ブロックをCi(i=1,2,…,n)とした場合に、図3の式で表される。同図の式において、miは復号化後のデータを示し、Kは復号鍵を示し、D()は復号処理を示している。
The
CPU208は、復号化装置2における各種処理を行う役割を有しており、またMEMORY209に格納されているプログラムを実行することにより種々の機能を実現する役割も有している。MEMORY209は、例えばROMやRAM等から構成されており、復号化装置2において利用される種々の情報やプログラムを格納する役割を有している。操作入力部210は、例えば、キーボード、マウス、タッチパネルディスプレイ等から構成されており、ユーザによる操作入力を受け付ける役割を有している。
The
次に、本実施の形態におけるデータベース3の機能の詳細について説明する。本実施の形態によるデータベース3は、本実施の形態によるデータ保護システムにおいて用いられる各種情報の管理を行うデータデータベースとしての役割を有している。具体的に、データベース3は、暗号化装置1および復号化装置2にて利用される乱数データやマスク処理におけるマスク位置に関する情報などを管理するマスクデータ管理部301を備えている。なお、データベース3は、暗号化装置1とは異なる通信経路(例えば、図2におけるルートBなど)を用いて復号化装置2に対してデータを送信することのできる機器によって実現されている。
Next, details of the functions of the database 3 in the present embodiment will be described. The database 3 according to the present embodiment has a role as a data database for managing various information used in the data protection system according to the present embodiment. Specifically, the database 3 includes a mask
このように、本実施の形態では、悪意の第三者によるデータ復号化のリスクを低減させるため、マスクデータ生成部104にて生成される乱数データ等をルートB(図2に示す、データベース3を経由するルート)経由で復号化装置2に送信し、マスク処理部102にてマスク処理を施したデータをルートA(図2に示す、マスク処理部102から復号化装置2に対して直接送信するルート)経由で復号化装置2に送信している。また、暗号化装置1、復号化装置2およびデータベース3との間の通信については、通信内容が第三者に漏洩を防止するため、通信の暗号化をおこなうことが望ましい。
As described above, in the present embodiment, in order to reduce the risk of data decryption by a malicious third party, random data generated by the mask
また、マスクデータ生成部104における乱数データの生成処理は、マスク処理を行う必要が生じた場合における乱数生成要求の発生から乱数生成完了までの処理時間を短縮するために、予め乱数を生成してMEMORY109等に格納させておき、これら予め格納されている乱数データ中から適宜選択して利用するようにしてもよい。
In addition, the random number data generation processing in the mask
続いて、本実施の形態におけるデータ保護システムでの処理の詳細について説明する。 Next, details of processing in the data protection system according to the present embodiment will be described.
暗号化装置1における暗号化処理部101により暗号化された暗号化済データは、マスク処理部102にて、マスクデータ生成部104にて生成されるマスクデータ(暗号化データと同じサイズのデータ)とBIT単位でのXOR(排他的論理和)処理を施される。図4は、マスク処理部102における暗号化済データとマスクデータとのXOR処理の概要を示すイメージ図である。
The encrypted data encrypted by the encryption processing unit 101 in the
図4において各々の横長の長方形は、ブロック暗号のCBC方式における各ブロックを示しており、図4における「マスクデータ」は奇数番目のブロックを乱数データで埋め、残りを「0」で埋めたものとなっている。 In FIG. 4, each horizontally long rectangle indicates each block in the CBC scheme of block cipher, and “mask data” in FIG. 4 is obtained by filling odd-numbered blocks with random number data and filling the rest with “0”. It has become.
図5は、マスクデータ生成部104内部にて実行される処理の詳細について説明するための図である。マスクデータ生成部104は、乱数分布パターン生成器104a、乱数生成器104bおよび乱数データ位置生成器104cを備えている。
FIG. 5 is a diagram for explaining details of processing executed in the mask
マスクデータ生成部104は、例えば操作入力部105へのユーザの操作入力に基づいてマスクデータ設定部103にて設定される「対象データの保護についての保護強度の要求レベル」、「復号化装置2にて用いられる通信回線の容量」、「マスクデータを保持する保存エリア(例えば、データベース3やMEMORY209)の容量」などからマスクデータパターンを選定して生成する。具体的に、マスクデータ設定部103からマスクデータ生成部104に対してマスクデータパターンとして与えるパラメータは、「乱数データ比率(「乱数データのデータ長」の「マスク処理の対象である暗号化済データのデータ長」に対する比率)」、「細分化数」および「ブロック選択則」等である。
The mask
マスクデータ生成部104は、まず対象となる暗号化済データのサイズZと乱数データ比率Pから、乱数分布パターン生成器104aにおいて全乱数データ長Z*Pを求める。次に、乱数生成器104bにおいて、長さZ*Pの乱数データを生成する。乱数分布パターン生成器104aは、生成された乱数データを細分化数Mにより分割し、予め長さZの0で埋められたデータ内に、分割された乱数データを埋め込んでいく。この埋め込み位置は、所定のブロック選択則に則り、次のように決定される。
First, the mask
(1)ブロック選択則が「0」であるなら奇数ブロックを選択し、
分割された乱数データの長さ ≧ ブロック長
であるなら、各奇数ブロックの開始位置から乱数データを埋め込んでいく。
(1) If the block selection rule is “0”, select an odd block,
Length of divided random data ≥ Block length
If so, random number data is embedded from the start position of each odd block.
一方、
分割された乱数データの長さ < ブロック長
の場合は、乱数データ位置生成器104cにて、0からブロック長の範囲の一様乱数を生成し、その乱数値をブロック内開始位置として分割された乱数データを埋め込んでいく。
on the other hand,
Length of divided random data <block length
In this case, the random number
(2)ブロック選択則が「1」であるなら偶数ブロックを選択し、上記奇数ブロックと同じく処理し、分割された乱数データを埋め込んでいく。 (2) If the block selection rule is “1”, an even block is selected, processed in the same manner as the odd block, and the divided random number data is embedded.
(3)ブロック選択則が「2」である場合に、
分割された乱数データの長さ ≧ ブロック長
であるならば、乱数データ位置生成器において、0から全ブロック数の範囲の一様乱数を生成し、その乱数値のブロックの開始位置から分割された乱数データを埋め込んでいく。
(3) When the block selection rule is “2”,
Length of divided random data ≥ Block length
If so, the random number data position generator generates a uniform random number ranging from 0 to the total number of blocks, and embeds the random number data divided from the start position of the block of the random value.
一方、
分割された乱数データの長さ < ブロック長
であるならば、乱数データ位置生成器において、0から全ブロック数の範囲の一様乱数と、0からブロック長の範囲の一様乱数を生成し、その乱数値に基づいて、埋め込み対象となるブロックとブロック内開始位置を選択し、分割された乱数データを埋め込んでいく。
on the other hand,
Length of divided random data <block length
If so, the random number data position generator generates a uniform random number in the range from 0 to the total number of blocks and a uniform random number in the range from 0 to the block length, and becomes an embedding target based on the random number value. Select the block and the start position in the block, and embed the divided random number data.
なお、選択されたブロック内におけるマスクデータの開始位置によっては、マスクデータである乱数データが、隣接するブロックにまたがってしまう場合もあり得る。このような場合、隣接する複数のブロックにおいて、ブロック内における同じ領域においてマスク処理が施されないという事態が生ずるおそれがある。そこで、上述のような事態の発生を防ぐため、マスク対象となるブロックの後端を超えるマスクデータがある場合には、当該マスクデータをマスク対象であるブロックにおける未だマスクされていない領域に割り当てることにより、乱数データの埋め込みを行うことが好ましい。図6は、マスク対象であるブロックに対するマスクデータの配置方法の一例を示す図である。 Depending on the start position of the mask data in the selected block, the random number data as the mask data may straddle adjacent blocks. In such a case, there is a possibility that the mask process is not performed in the same area in the block in a plurality of adjacent blocks. Therefore, in order to prevent the occurrence of the above situation, if there is mask data exceeding the rear end of the block to be masked, the mask data is assigned to an unmasked area in the block to be masked. Therefore, it is preferable to embed random number data. FIG. 6 is a diagram illustrating an example of a mask data arrangement method for blocks to be masked.
なお、図6に示す例では、マスク対象であるブロックの後端を超えるマスクデータについては、ブロック先端から配列(図6における記号Qを参照)しているが、これに限られるものではなく、例えば、ブロック内開始位置からブロックの先端方向へ向けて残りのマスクデータを配列するようにしてもよい(図6における破線で囲まれた領域Zを参照)。 In the example shown in FIG. 6, the mask data exceeding the rear end of the block to be masked is arranged from the front end of the block (see symbol Q in FIG. 6), but is not limited to this. For example, the remaining mask data may be arranged from the start position in the block toward the front end of the block (see the region Z surrounded by the broken line in FIG. 6).
上述のようにして生成されたマスクデータと暗号化済データは、マスク処理部102によりマスク処理を施され(図4を参照)、マスク処理済みの暗号化データ(以下、マスク暗号化データと呼ぶ)として復号化装置2へ向けて出力される。マスク処理部102から送信されたマスク暗号化データは、復号化装置2におけるデータ取得部201にて取得され、例えばMEMORY209に保存される。
The mask data and the encrypted data generated as described above are subjected to mask processing by the mask processing unit 102 (see FIG. 4), and the masked encrypted data (hereinafter referred to as mask encrypted data). ) To the
このようにして、マスク処理部102は、例えば、暗号化処理部101による暗号化処理において複数ブロックに分割された対象データの内の先頭ブロックから偶数番目もしくは奇数番目のブロックのデータ列と、該データ列と同じデータ長である乱数との排他的論理和を算出することができる。もちろん、必ずしも上記偶数番目もしくは奇数番目のブロックのデータ列をマスク対象とする必要はなく、マスク処理部102は、暗号化処理部101による暗号処理において複数ブロックに分割された対象データの内の少なくとも1つのブロックに含まれるデータ列と、該データ列と同じデータ長である乱数との排他的論理和を算出する構成としてもよい。
In this way, the
なお、マスク処理部102におけるマスク処理で用いられるマスクデータは、データベース3内に保存される。マスクデータ管理部301は、データベース3に保持される各マスクデータと、当該マスクデータとマスク暗号化データとの対応づけを保持しながらデータ管理を行う。
Note that the mask data used in the mask processing in the
次に、復号化装置2においてマスク暗号化データを受信した後、当該マスク暗号化データに対して行われる処理の流れについて詳述する。
Next, the flow of processing performed on the mask encrypted data after the
復号化装置2におけるマスク情報取得部202は、データ取得部201にて取得したマスク暗号化データに対応するマスクデータ(乱数データおよびマスク位置を示す情報など)をデータベース3から取得する。この際、データベース3におけるマスクデータ管理部301は必要に応じて、利用者又は復号化装置2が正当な目的により利用されていることを認証処理等によって確認し、不正利用であると判断する場合にはマスクデータの提供を拒否しても良い。
The mask
マスク情報取得部202は、取得したマスクデータと、データ取得部201にて取得したマスク暗号化データ(もしくは、MEMORY209に保持しているマスク暗号化データ)をマスク解除部203に入力する。
The mask
図7は、マスク解除部203におけるマスク解除処理の詳細を示す図である。マスク解除部203は、図7に示すように排他的論理和を算出することで、同じマスクデータを適用したときの排他的論理和の性質から、暗号化済データを得る。
FIG. 7 is a diagram showing details of the mask release processing in the
復号鍵取得部204は、暗号化処理部101から上記暗号化済データの復号化に必要な復号鍵を取得する。
The decryption
復号化部205は、復号鍵取得部204にて取得される復号鍵を用いて、マスク解除部203において得られる暗号化済データの復号処理を行う。なお、本実施の形態では、一例として、復号鍵が暗号化処理部101からインターネット9を介して復号化装置2に直接送信される構成を示したが、これに限られるものではない。例えば、復号化装置2のユーザによる操作入力部210への操作入力による入力や、USBキー等のメディア経由での入力といった入力方法により、復号化装置2にて復号鍵を取得するようにしてもよいし、復号化装置2の内部に外部からは情報を容易に取り出せないセキュアなデータ格納領域(耐タンパ性の高いメモリ領域等)を設け、当該データ格納領域に復号鍵をあらかじめ格納しておいてもよい。
The
一般に、「CBCブロック方式」による暗号化処理は、暗号化時に複数ブロックに分割した内の連続する二つのブロックがあれば、復号鍵に対する総当たり攻撃により復号化データを不正入手することができる。 In general, in the encryption process by the “CBC block method”, if there are two consecutive blocks divided into a plurality of blocks at the time of encryption, the decrypted data can be obtained illegally by a brute force attack against the decryption key.
しかし、本実施の形態のように暗号化済データに対して更にマスク処理を行うことにより(図4参照)、Ci又はCi+1のどちらか一方は乱数データによりXOR処理されたものとなり、正しい結果miを得るために、不正利用者は復号鍵K以外に、乱数データを総当たり攻撃により推定する必要が生じ、不正に結果を得ることはより困難となる。また、ブロック単位に着目すれば、ワンタイムパッド暗号と同様な効果が得られる。 However, if the encrypted data is further masked as in this embodiment (see FIG. 4), either C i or C i + 1 is XORed with random number data. , to get the correct result m i, unauthorized users other than the decryption key K, it is necessary to estimate the brute random data, it becomes more difficult to obtain unauthorized results. If attention is paid to the block unit, the same effect as the one-time pad encryption can be obtained.
また、本実施の形態に示す処理により生成されるマスクデータは、通信時に、各乱数データのブロックと、乱数データ適用位置(奇数番目)を示す情報を復号化装置2に送るだけで良いため、ワンタイムパッド暗号により暗号化する場合に比べ、大幅なデータ通信量の低減を図ることができる。また、マスクデータの保存についても、ワンタイムパッド暗号に比して、保存エリア容量の大幅な削減を実現することができる。また、復号化部205における復号化処理時の乱数データとマスク暗号化データとのXOR(排他的論理和)処理についても、ワンタイムパッド暗号のように全データ長に適用する場合に比べて大幅処理の削減を実現することができる。
In addition, since the mask data generated by the processing shown in the present embodiment only needs to send each block of random number data and information indicating the random number data application position (odd number) to the
また、更なる通信容量、保存エリア容量および演算処理量の削減を目指す場合には、図8に示すように、マスクデータの乱数データで埋める領域を小さくし、代わりに図8の「α」で示す様に「0」で埋めるようにしてもよい。この場合は、マスクデータを持たない不正利用者は、マスク暗号化データの乱数データにより攪乱された部位のサイズ及び情報を推定しながら復号鍵の総当たり攻撃を行いつつ復号鍵を推定することが必要となり、単なる復号鍵Kの推定よりも困難な作業となる。 In order to further reduce the communication capacity, the storage area capacity, and the calculation processing amount, as shown in FIG. 8, the area to be filled with the random number data of the mask data is reduced, and “α” in FIG. 8 is used instead. As shown, it may be filled with “0”. In this case, an unauthorized user who does not have mask data may estimate the decryption key while performing a brute force attack of the decryption key while estimating the size and information of the part disturbed by the random number data of the mask encryption data. This is necessary and is more difficult than simply estimating the decryption key K.
また、ワンタイムパッド暗号の効果から容易に類推できるように、マスクデータ中の乱数データにより攪乱された領域のデータは、例え正しい復号鍵Kをもってしても、マスクデータ無しでは正常に復号化することはできない。また、乱数データによるマスクする位置についても、様々なパターンを採用可能であり、このパターンを必要に応じて変更することにより、保護対象データの不正入手を更に困難なものとすることができる。なお、マスクデータによるマスク位置のパターンについては、予めテンプレートとして暗号化装置1のMEMORY109等に保持させておき、適宜利用可能なようにしてもよい。図9〜図12は、マスクデータによるマスク位置のいくつかのパターン例を示す図である。
Further, as can be easily inferred from the effect of the one-time pad encryption, even if the data in the region disturbed by the random number data in the mask data has the correct decryption key K, it can be normally decrypted without the mask data. It is not possible. Also, various patterns can be adopted for the masking position by the random number data, and unauthorized acquisition of the protection target data can be made more difficult by changing this pattern as necessary. Note that the mask position pattern based on the mask data may be stored in advance in the
また、上述の実施の形態では、マスク処理において乱数データによってマスクするデータ列として、暗号化処理部101による暗号化処理において複数ブロックに分割された対象データの内の先頭ブロックから偶数番目もしくは奇数番目のブロックのデータ列を採用しているが、必ずしもこのように規則的なマスク処理を行う必要はない。例えば、保護対象データが圧縮データである場合、当該圧縮データにおける辞書データが格納されているデータ領域は、保護対象となるデータを解読する上で特に重要なデータ部分となる。このような場合、当該データ部分(所定のデータ領域に位置するデータ列)を重点的にマスクすることで、データ保護のレベルを更に高めることが可能となる。 In the above-described embodiment, the data sequence masked with the random number data in the mask processing is an even number or an odd number from the first block of the target data divided into a plurality of blocks in the encryption processing by the encryption processing unit 101. However, it is not always necessary to perform such regular mask processing. For example, when the data to be protected is compressed data, the data area in which the dictionary data in the compressed data is stored becomes a particularly important data part for decoding the data to be protected. In such a case, it is possible to further increase the level of data protection by intensively masking the data portion (data string located in a predetermined data area).
また、マスク処理部102によるマスク処理では、暗号化済データの全データ列に対して常に均一にマスク処理を施す必要はなく、上述のような重要なデータ部分周辺だけ、マスク処理されるエリアの密度や被覆率を高めるようにしてもよい。例えば、マスク処理部102は、暗号化処理部101による暗号処理において生成された暗号化データの内の所定のデータ領域に位置するデータ列が、該所定のデータ領域以外のデータ領域のデータ列よりも上記乱数との排他的論理和を算出するデータ量の割合が多くなるようにマスク処理を行うこともできる。
Further, in the mask processing by the
図13は、本実施の形態によるデータ保護システムにおける処理(データ保護方法)の流れについて説明するためのフローチャートである。 FIG. 13 is a flowchart for explaining the flow of processing (data protection method) in the data protection system according to this embodiment.
マスクデータ設定部103は、操作入力部105へのユーザの操作入力に基づいて、マスク処理部102にて暗号化処理部101での暗号化処理により生成される暗号化データの一部のデータ列と排他的論理和を算出するのに用いる乱数データのデータ長を設定する(マスクデータ設定ステップ)(S101)。このように、暗号化すべき対象データの重要度(要求されるセキュリティレベル)に応じて、マスク処理に用いる乱数データのデータ長(データ容量)を調整することで、復号化時の通信量の制御及び追加処理量の制御を行うことができる。
The mask
なお、マスクデータ設定部103による各種設定処理は、必ずしもユーザの操作入力に基づく必要はなく、例えば、対象データのデータ長、暗号化装置1と復号化装置2との間での通信に用いる通信回線の種別、トラフィック負荷、暗号化装置1および復号化装置2における演算負荷等に基づいて、自動的に設定するようにしてもよい。
Note that the various setting processes by the mask
マスクデータ生成部104は、マスクデータ設定部103における設定処理に基づいて、所望の疑似乱数データを生成する(マスクデータ生成ステップ)(S102)。
The mask
暗号化処理部101は、暗号化すべき対象データに所定の暗号化処理を施す(暗号化処理ステップ)(S103)。 The encryption processing unit 101 performs predetermined encryption processing on the target data to be encrypted (encryption processing step) (S103).
マスク処理部102は、暗号化処理ステップでの暗号化処理により生成される暗号化データの一部のデータ列と、該データ列と同じデータ長である乱数データ(マスクデータ生成ステップにて生成)との排他的論理和を算出する所定のマスク処理を行う(マスク処理ステップ)(S104)。
The
データ取得部201は、マスク処理ステップにてマスク処理が施されたデータを取得する(データ取得ステップ)(S105)。
The
マスク情報取得部202は、所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を取得する(マスク情報取得ステップ)(S106)。
The mask
マスク解除部203は、マスク情報取得ステップにて取得される情報に基づいて、データ取得部にて取得される復号対象データについての、所定のマスク処理によるデータ保護を解除する(マスク解除ステップ)(S107)。
Based on the information acquired in the mask information acquisition step, the
復号鍵取得部204は、マスク解除ステップにて生成される暗号化済みデータを復号化するための復号鍵を取得する(復号鍵取得ステップ)(S108)。
The decryption
復号化部205は、復号鍵取得ステップにて取得される復号鍵に基づいて、マスク解除ステップにて生成される暗号化済みデータを復号化する(復号化ステップ)(S109)。
Based on the decryption key acquired in the decryption key acquisition step, the
上述の暗号化装置での処理における各ステップは、MEMORY109に格納されている暗号化プログラムをCPU108に実行させることにより実現されるものである。また、復号化装置での処理における各ステップは、MEMORY209に格納されている暗号化プログラムをCPU208に実行させることにより実現されるものである。
Each step in the processing in the encryption apparatus described above is realized by causing the
本実施の形態では装置内部に発明を実施する機能が予め記録されている場合で説明をしたが、これに限らず同様の機能をネットワークから装置にダウンロードしても良いし、同様の機能を記録媒体に記憶させたものを装置にインストールしてもよい。記録媒体としては、CD−ROM等プログラムを記憶でき、かつ装置が読み取り可能な記録媒体であれば、その形態は何れの形態であっても良い。またこのように予めインストールやダウンロードにより得る機能は装置内部のOS(オペレーティング・システム)等と共働してその機能を実現させるものであってもよい。 In this embodiment, the function for implementing the invention is recorded in advance in the apparatus. However, the present invention is not limited to this, and the same function may be downloaded from the network to the apparatus, and the same function is recorded. What is stored in the medium may be installed in the apparatus. The recording medium may be any form as long as the recording medium can store the program and can be read by the apparatus, such as a CD-ROM. Further, the function obtained by installing or downloading in advance may be realized in cooperation with an OS (operating system) or the like inside the apparatus.
このように、本実施の形態では、データの暗号化に一般的に利用されるブロック暗号処理の性質と、ワンタイムパッド暗号方式の性質を応用し、通常の方法により暗号化された暗号データに対して、後処理を施す構成となっている。これにより、復号鍵に対する総当たり攻撃による不正なデータ復号化を、より困難にすることができる。また、復号化を行う装置が、処理能力の低い小型の端末装置などである場合においても、復号化に必要となる情報のデータ量を極力削減することにより、復号化における演算負荷および通信量をワンタイムパッド暗号方式に比べて低く抑えることができる。 As described above, in the present embodiment, the properties of the block encryption processing generally used for data encryption and the properties of the one-time pad encryption method are applied to the encrypted data encrypted by a normal method. On the other hand, post-processing is performed. Thereby, unauthorized data decryption by a brute force attack on the decryption key can be made more difficult. In addition, even when a device that performs decoding is a small terminal device with low processing capability, by reducing the data amount of information necessary for decoding as much as possible, the computation load and communication amount in decoding can be reduced. Compared to the one-time pad encryption method, it can be kept low.
本発明を特定の態様により詳細に説明したが、本発明の精神および範囲を逸脱しないかぎり、様々な変更および改質がなされ得ることは、当業者には自明であろう。 Although the present invention has been described in detail according to particular embodiments, it will be apparent to those skilled in the art that various changes and modifications can be made without departing from the spirit and scope of the invention.
1 暗号化装置、101 暗号化処理部、102 マスク処理部、103 マスクデータ設定部、104 マスクデータ生成部、105 操作入力部、108 CPU、109 MEMORY、2 復号化装置、201 データ取得部、202 マスク情報取得部、203 マスク解除部、204 復号鍵取得部、205 復号化部、208 CPU、209 MEMORY、210 操作入力部、3 データベース、マスクデータ管理部301。
DESCRIPTION OF
Claims (7)
復号化の対象となる復号対象データを取得するデータ取得部と、
前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を取得するマスク情報取得部と、
前記マスク情報取得部にて取得される情報に基づいて、前記データ取得部にて取得される復号対象データについての、所定のマスク処理によるデータ保護を解除するマスク解除部と、
前記マスク解除部にて生成される暗号化済みデータを復号化するための復号鍵を取得する復号鍵取得部と、
前記復号鍵取得部にて取得される復号鍵に基づいて、前記マスク解除部にて生成される暗号化済みデータを復号化する復号化部と
を備えてなる復号化装置。 A decryption device for decrypting encrypted data subjected to a predetermined mask process using random number data,
A data acquisition unit for acquiring the decoding target data to be decoded;
A mask information acquisition unit that acquires information indicating a random number data used in the predetermined mask processing and a data area obtained by calculating an exclusive OR with the random number data;
Based on the information acquired by the mask information acquisition unit, the mask release unit for releasing data protection by a predetermined mask process for the data to be decoded acquired by the data acquisition unit;
A decryption key acquisition unit for acquiring a decryption key for decrypting the encrypted data generated by the mask release unit;
A decryption device comprising: a decryption unit that decrypts encrypted data generated by the mask release unit based on a decryption key acquired by the decryption key acquisition unit.
前記データ取得部と前記マスク情報取得部は、互いに異なる通信経路を介してデータの取得を行う復号化装置。 The decoding device according to claim 1 , wherein
The data acquisition unit and the mask information acquisition unit are decoding devices that acquire data via different communication paths.
暗号化すべき対象データに対して暗号化処理を施した暗号化済みデータを前記復号化装置のデータ取得部に送信する暗号化処理部と、An encryption processing unit for transmitting encrypted data obtained by performing encryption processing on target data to be encrypted to a data acquisition unit of the decryption device;
前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を、前記復号化装置のマスク情報取得部により取得可能に前記データベースに格納する格納部とA storage unit that stores the random number data used in the predetermined mask processing and information indicating the data area obtained by calculating exclusive OR with the random number data in the database so as to be acquired by the mask information acquisition unit of the decoding device When
を備えてなる暗号化装置。An encryption device comprising:
前記暗号化処理部での暗号化処理により生成される暗号化データの一部のデータ列と、該データ列と同じデータ長である乱数データとの排他的論理和を算出する所定のマスク処理を行うマスク処理部と
を有する暗号化装置と、
前記マスク処理部にてマスク処理が施されたデータを取得するデータ取得部と、
前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を取得するマスク情報取得部と、
前記マスク情報取得部にて取得される情報に基づいて、前記データ取得部にて取得される復号対象データについての、所定のマスク処理によるデータ保護を解除するマスク解除部と、
前記マスク解除部にて生成される暗号化済みデータを復号化するための復号鍵を取得する復号鍵取得部と、
前記復号鍵取得部にて取得される復号鍵に基づいて、前記マスク解除部にて生成される暗号化済みデータを復号化する復号化部と
を有する復号化装置と
を備えてなるデータ保護システム。 An encryption processing unit that performs predetermined encryption processing on target data to be encrypted;
A predetermined mask process for calculating an exclusive OR of a partial data string of the encrypted data generated by the encryption process in the encryption processing unit and random number data having the same data length as the data string; An encryption device having a mask processing unit to perform,
A data acquisition unit for acquiring data subjected to mask processing in the mask processing unit;
A mask information acquisition unit that acquires information indicating a random number data used in the predetermined mask processing and a data area obtained by calculating an exclusive OR with the random number data;
Based on the information acquired by the mask information acquisition unit, the mask release unit for releasing data protection by a predetermined mask process for the data to be decoded acquired by the data acquisition unit;
A decryption key acquisition unit for acquiring a decryption key for decrypting the encrypted data generated by the mask release unit;
A data protection system comprising: a decryption device having a decryption unit that decrypts encrypted data generated by the mask release unit based on a decryption key acquired by the decryption key acquisition unit .
前記データ取得部と前記マスク情報取得部は、互いに異なる通信経路を介してデータの取得を行うデータ保護システム。 The data protection system according to claim 4 .
The data acquisition system wherein the data acquisition unit and the mask information acquisition unit acquire data via different communication paths.
前記暗号化装置と前記復号化装置は、それぞれ、データベースとネットワークにより接続され、The encryption device and the decryption device are connected by a database and a network, respectively.
前記暗号化装置は、前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を前記データベースに格納する格納部をさらに有し、The encryption apparatus further includes a storage unit that stores, in the database, random number data used for the predetermined mask process and information indicating a data area obtained by calculating an exclusive OR with the random number data,
前記暗号化処理部は、暗号化すべき対象データに対して暗号化処理を施した暗号化済みデータを前記復号化装置のデータ取得部に送信し、The encryption processing unit transmits encrypted data obtained by performing encryption processing on target data to be encrypted to the data acquisition unit of the decryption device,
前記マスク情報取得部は、前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を、 前記データベースより取得することを特徴とするデータ保護システム。The mask information acquisition unit acquires, from the database, random number data used for the predetermined mask processing and information indicating a data area obtained by calculating an exclusive OR with the random number data. .
前記暗号化処理部が、暗号化すべき対象データに所定の暗号化処理を施し、
前記マスク処理部が、前記暗号化処理により生成される暗号化データの一部のデータ列と、該データ列と同じデータ長である乱数データとの排他的論理和を算出する所定のマスク処理を行い、
前記データ取得部が、前記マスク処理が施されたデータを取得し、
前記マスク情報取得部が、前記所定のマスク処理に用いられた乱数データおよび該乱数データと排他的論理和を演算したデータ領域を示す情報を取得し、
前記マスク解除部が、前記マスク情報取得部により取得される情報に基づいて、前記データ取得部により取得される復号対象データについての、所定のマスク処理によるデータ保護を解除し、
前記復号鍵取得部が、前記マスク解除部により生成される暗号化済みデータを復号化するための復号鍵を取得し、
前記復号化部が、前記復号鍵取得部により取得される復号鍵に基づいて、前記マスク解除部により生成される暗号化済みデータを復号化するデータ保護方法。 A data protection method executed by a computer including an encryption processing unit, a mask processing unit, a data acquisition unit, a mask information acquisition unit, a mask release unit, a decryption key acquisition unit, and a decryption unit ,
The encryption processing unit, and facilities predetermined encryption to target data to be encrypted,
A predetermined mask process in which the mask processing unit calculates an exclusive OR of a partial data string of the encrypted data generated by the encryption process and random number data having the same data length as the data string; There line,
The data acquisition unit acquires the data to which the masking process is performed,
The mask information acquisition unit acquires information indicating a random number data used for the predetermined mask processing and a data area obtained by calculating an exclusive OR with the random number data,
The unmasking unit, based on the information acquired by said mask information acquisition unit, for decoding target data acquired by the data acquisition unit, to release the data protection predetermined mask processing,
The decryption key acquisition unit acquires the decryption key for decrypting the encrypted data generated by the mask release unit,
Said decoding unit, based on the decryption key acquired by the decryption key acquisition unit, Lud over data protection method turn into decrypting the encrypted data generated by the mask releasing portion.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008087273A JP5179921B2 (en) | 2008-03-28 | 2008-03-28 | ENCRYPTION DEVICE, DECRYPTION DEVICE, DATA PROTECTION SYSTEM, DATA PROTECTION METHOD |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008087273A JP5179921B2 (en) | 2008-03-28 | 2008-03-28 | ENCRYPTION DEVICE, DECRYPTION DEVICE, DATA PROTECTION SYSTEM, DATA PROTECTION METHOD |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009244302A JP2009244302A (en) | 2009-10-22 |
JP5179921B2 true JP5179921B2 (en) | 2013-04-10 |
Family
ID=41306316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008087273A Active JP5179921B2 (en) | 2008-03-28 | 2008-03-28 | ENCRYPTION DEVICE, DECRYPTION DEVICE, DATA PROTECTION SYSTEM, DATA PROTECTION METHOD |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5179921B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5516284B2 (en) * | 2010-09-29 | 2014-06-11 | 富士通株式会社 | Information processing method and apparatus |
CN111723388A (en) * | 2020-06-23 | 2020-09-29 | 湖南国科微电子股份有限公司 | Password operation protection method, device, equipment and medium |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01122227A (en) * | 1987-11-06 | 1989-05-15 | Konica Corp | Transmission equipment |
JPH0227389A (en) * | 1988-07-15 | 1990-01-30 | Sony Corp | Enciphering method and enciphering device/decoding device using enciphering method concerned |
JPH05333776A (en) * | 1992-05-29 | 1993-12-17 | Toshiba Corp | Function processing module |
JP2003304521A (en) * | 2002-04-09 | 2003-10-24 | Sony Corp | Signal processing apparatus and method, and communication system |
JP2007189659A (en) * | 2005-12-15 | 2007-07-26 | Toshiba Corp | Encryption device, encryption method, and encryption program |
JP2007334016A (en) * | 2006-06-15 | 2007-12-27 | Matsushita Electric Ind Co Ltd | Data enciphering device and method |
-
2008
- 2008-03-28 JP JP2008087273A patent/JP5179921B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2009244302A (en) | 2009-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220141038A1 (en) | Method of rsa signature or decryption protected using a homomorphic encryption | |
CN104683099B (en) | A kind of method and apparatus of improved encryption/decryption content and distribution encrypted content | |
EP2763345B1 (en) | Server device and program | |
US9246683B2 (en) | Re-encryption key generator, re-encryption apparatus, and program | |
US10187207B2 (en) | Re-encryption key generator, re-encryption apparatus, encryption apparatus, decryption apparatus, and storage medium | |
JP6753403B2 (en) | Information processing equipment, authentication systems, authentication methods, and computer programs | |
US9698984B2 (en) | Re-encrypted data verification program, re-encryption apparatus and re-encryption system | |
US8392723B2 (en) | Information processing apparatus and computer readable medium for preventing unauthorized operation of a program | |
JP6877889B2 (en) | Cryptographic device, encryption method, decryption device, and decryption method | |
CN111066077B (en) | Encryption device, encryption method, decryption device, and decryption method | |
WO2014034018A1 (en) | Re-encryption system, re-encryption method and re-encryption program | |
US20160013933A1 (en) | Order-preserving encryption system, device, method, and program | |
JP6041864B2 (en) | Method, computer program, and apparatus for data encryption | |
JP2005252384A (en) | Encrypted data storage server system, encrypted data storage method, and re-encryption method | |
JP5171787B2 (en) | Sign-encryption system and sign-encryption generation method | |
CN113079177B (en) | Remote sensing data sharing method based on time and decryption frequency limitation | |
JP5179921B2 (en) | ENCRYPTION DEVICE, DECRYPTION DEVICE, DATA PROTECTION SYSTEM, DATA PROTECTION METHOD | |
JP5992651B2 (en) | ENCRYPTION METHOD, PROGRAM, AND SYSTEM | |
JPWO2019031025A1 (en) | Cryptographic device, encryption method, decryption device, and decryption method | |
JP5633699B2 (en) | Content distribution system, mobile communication terminal device, and browsing control program | |
CN113595982B (en) | Data transmission method and device, electronic equipment and storage medium | |
JP2012156809A5 (en) | ||
CN111953480B (en) | Key generation device and method, operation key generation device and method | |
KR20140028233A (en) | Homomorphic encryption and decryption method using chinese remainder theorem and apparatus using the same | |
JP5440285B2 (en) | Key sharing method, key sharing method, and key sharing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100401 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100401 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100517 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120925 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121126 |
|
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: 20121218 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130110 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5179921 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |