JP2007134860A - Encryption program and decryption program - Google Patents

Encryption program and decryption program Download PDF

Info

Publication number
JP2007134860A
JP2007134860A JP2005324439A JP2005324439A JP2007134860A JP 2007134860 A JP2007134860 A JP 2007134860A JP 2005324439 A JP2005324439 A JP 2005324439A JP 2005324439 A JP2005324439 A JP 2005324439A JP 2007134860 A JP2007134860 A JP 2007134860A
Authority
JP
Japan
Prior art keywords
random number
number sequence
encryption
data
compression
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.)
Withdrawn
Application number
JP2005324439A
Other languages
Japanese (ja)
Inventor
Hironori Yahagi
裕紀 矢作
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005324439A priority Critical patent/JP2007134860A/en
Publication of JP2007134860A publication Critical patent/JP2007134860A/en
Withdrawn legal-status Critical Current

Links

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technology capable of reducing the time required for processings, while keeping security and confidentiality. <P>SOLUTION: In an encryption program disclosed herein for encrypting data, the data are compression-coded data. The encryption program generates each of random number sequences, each length of which is shorter than the length of the compression-coded data. The encryption program sequentially segments a random number sequence in length, depending on the compression rate of the data. The encryption program uses each segmented random number sequence to encrypt a prescribed position of the compression-coded data, corresponding to each segmented random number sequence. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、暗号化および復号化技術に関する。   The present invention relates to encryption and decryption techniques.

近年、インターネット等のネットワークを介して各種データを送受信する際における安全性や機密性の確保が、ますます重要になってきている。そこで、データの内容を第三者に隠してそのデータを送信する方法として、暗号化アルゴリズムが多岐にわたって提案され、標準化されている。   In recent years, it has become increasingly important to ensure safety and confidentiality when transmitting and receiving various types of data via a network such as the Internet. Therefore, various encryption algorithms have been proposed and standardized as a method of transmitting the data while hiding the contents of the data from a third party.

一般的に、暗号化アルゴリズムは、ブロック暗号およびストリーム暗号の2つに分けられる。このうち、ブロック暗号は、所定のビット数のまとまり、すなわちブロックを一度に処理する暗号アルゴリズムの総称で、ブロックのビット数をブロック長という。図16(a)は、従来技術に係るブロック暗号方法を説明する図である。ブロック暗号アルゴリズムにおいて暗号化の対象とされる、長さがブロック長の平文を、「平文ブロック」という。このブロック暗号アルゴリズムを用いて平文ブロックを暗号化した暗号文を、「暗号文ブロック」という。   In general, the encryption algorithm is divided into a block cipher and a stream cipher. Among these, the block cipher is a collective term for a predetermined number of bits, that is, a general term for an encryption algorithm for processing a block at a time, and the number of bits of a block is called a block length. FIG. 16A is a diagram for explaining a block cipher method according to the prior art. A plaintext having a block length that is an object of encryption in the block cipher algorithm is referred to as a “plaintext block”. A ciphertext obtained by encrypting a plaintext block using this block cipher algorithm is referred to as a “ciphertext block”.

他方のストリーム暗号は、データの流れ、すなわちストリームを順次処理していく暗号アルゴリズムの総称である。ストリーム暗号においては、例えば、1ビット、8ビットあるいは32ビット等の単位で暗号化処理を実行する。図16(b)は、従来技術に係るストリーム暗号方法を説明する図である。従来技術に係るストリーム暗号においては、初期値に基づいて、平文と同じ長さの乱数列、すなわちストリーム暗号を算出しておき、算出した乱数列と平文(画像符号)とで排他的論理和を取る。   The other stream cipher is a general term for a cipher algorithm that sequentially processes a data flow, that is, a stream. In the stream cipher, for example, encryption processing is executed in units of 1 bit, 8 bits, 32 bits, or the like. FIG. 16B is a diagram for explaining a stream encryption method according to the prior art. In the stream cipher according to the prior art, a random number sequence having the same length as the plaintext, that is, a stream cipher is calculated based on the initial value, and an exclusive OR is calculated between the calculated random number sequence and the plaintext (image code). take.

ところで、特にデジタルカメラやハードディスク等の記憶装置において画像を圧縮するのに用いられるJPEG(Joint Photographic Experts Group)画像符号の暗号化に関しては、第三者にはスクランブルをかけて一部のみ見えるようにする方法や、あるいは、画像全体を暗号化する方法が存在している。画像全体を暗号化するには、圧縮されていない元画像からJPEG圧縮をかける過程において暗号化アルゴリズムを適用する、という手法が従来から用いられてきている。   By the way, especially with regard to encryption of JPEG (Joint Photographic Experts Group) image codes used for compressing images in a storage device such as a digital camera or a hard disk, it is scrambled so that only a part can be seen by a third party. There is a method for performing encryption or a method for encrypting the entire image. In order to encrypt the entire image, a method of applying an encryption algorithm in the process of applying JPEG compression from an uncompressed original image has been conventionally used.

画像全体を暗号化する場合、画像データは文書データと比較してデータ量が大きいため、JPEG画像符号等の画像データの暗号化においては、平文と同じ長さの暗号文を算出する処理に時間を要することとなる。そこで、平文よりも短いストリーム暗号を用いて、平文中の所定の箇所を暗号化することにより、暗号化に要する処理を低減させる技術について開示されている(例えば、特許文献1、2)。
特開2002−175008号公報 特開平6−125553号公報
When encrypting an entire image, the amount of image data is larger than that of document data. Therefore, when encrypting image data such as JPEG image code, it takes time to calculate ciphertext having the same length as plaintext. Will be required. Therefore, a technique for reducing the processing required for encryption by encrypting a predetermined portion in plain text using a stream cipher shorter than plain text is disclosed (for example, Patent Documents 1 and 2).
JP 2002-175008 A JP-A-6-125553

例えばJPEG画像符号等のように容量が大きいデータであっても、暗号化すべき箇所、すなわちデータ内容を第三者に知得されないようにしておくことが必要な箇所について重点的に暗号化することで、符号全体を暗号化する場合と同等の安全性や機密性は維持しつつ、暗号化の処理の高速化が見込まれる。   For example, even for data with a large capacity, such as JPEG image code, etc., it is important to encrypt the part that should be encrypted, that is, the part that requires the data contents not to be known by a third party. Therefore, it is expected that the speed of the encryption process will be increased while maintaining the same security and confidentiality as when the entire code is encrypted.

本発明は、圧縮符号化されているデータの暗号化処理において、安全性や機密性を保ちつつ、処理に要する時間を短縮することと、このようにして暗号化されたデータを復号化することのできる技術を提供することを目的とする。   The present invention reduces the time required for processing while encrypting data that has been compressed and encoded, and decrypts the data thus encrypted. It aims at providing the technology that can do.

上記課題を解決するために、本発明は、データを暗号化するための暗号化プログラムであって、前記データは圧縮符号であり、前記暗号化プログラムは、前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について暗号化する処理をコンピュータに実行させる構成とする。圧縮符号よりも短い長さの乱数列を用いて、圧縮符号において暗号化すべき所定の箇所について暗号化の処理が実行される。   In order to solve the above problems, the present invention provides an encryption program for encrypting data, wherein the data is a compression code, and the encryption program has a length shorter than the length of the compression code. A random number sequence having a length corresponding to the compression ratio of the data, and sequentially cutting out the random number sequence, and using the extracted random number sequence, the extracted random number sequence in the compression code The computer is configured to execute a process for encrypting a corresponding predetermined portion. Using a random number sequence having a shorter length than the compression code, an encryption process is executed for a predetermined portion to be encrypted in the compression code.

前記所定の箇所は、切り出された乱数に基づいて決定されることとしてもよい。更には、前記データは画像データであり、前記圧縮符号は、JPEG方式により圧縮符号化されて生成された画像符号であってもよい。   The predetermined portion may be determined based on the cut random number. Furthermore, the data may be image data, and the compression code may be an image code generated by compression encoding according to a JPEG method.

また、本発明は、暗号化されたデータを復号化するための復号化プログラムであって、前記データは圧縮符号であり、前記復号化プログラムは、暗号化処理において使用された所定の初期値を用いて、前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について復号化する処理をコンピュータに実行させる構成とする。   The present invention is also a decryption program for decrypting encrypted data, wherein the data is a compression code, and the decryption program uses a predetermined initial value used in the encryption process. Using a random number sequence having a length shorter than the length of the compression code, sequentially cutting out the random number sequence at a length according to the compression rate of the data, and using each of the extracted random number sequences, The computer is configured to execute a process of decoding a predetermined portion corresponding to each extracted random number sequence in the compressed code.

本発明によれば、安全性や機密性を維持しつつ、より高速な暗号化/復号化処理が可能とされる。   According to the present invention, it is possible to perform higher-speed encryption / decryption processing while maintaining safety and confidentiality.

以下、本発明の好適な実施の形態について、図面を参照しながら詳細に説明する。
図1は、本発明に係る暗号化および復号化方法の原理図である。本発明に係る暗号化方法および復号化方法は、例えば、デジタルカメラやハードディスク等の記憶装置において、画像を圧縮して得られたJPEG(Joint Photographic Experts Group)画像符号を暗号化/復号化するときに実行され、コンピュータのメモリに格納された、暗号化/復号化プログラムが実行されることにより実現される。
DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, preferred embodiments of the invention will be described in detail with reference to the drawings.
FIG. 1 is a principle diagram of an encryption and decryption method according to the present invention. The encryption method and the decryption method according to the present invention are used when, for example, a JPEG (Joint Photographic Experts Group) image code obtained by compressing an image is encrypted / decrypted in a storage device such as a digital camera or a hard disk. This is realized by executing an encryption / decryption program stored in the memory of the computer.

図1(a)に示されるように、本発明に係る暗号化方法においては、まず、算出された初期値(初期化ベクトル)に基づいて乱数列を生成する。ここで用いられる初期値は、暗号化の都度異なる値が算出される、無作為のビット列から構成される。生成される乱数列は、暗号化すべきJPEG画像符号等の平文と比べて、短い長さを有する。次に、生成した乱数列を用いて、平文と同じ長さの数列を生成する。生成される数列には、平文中の暗号化すべき箇所との間で排他的論理和(XOR)を取ることができるように、先に生成した乱数列が分散して配置される。排他的論理和を取って得られた暗号文の先頭に初期値を付与すると、その暗号文が出力される。   As shown in FIG. 1A, in the encryption method according to the present invention, first, a random number sequence is generated based on the calculated initial value (initialization vector). The initial value used here is composed of a random bit string from which a different value is calculated for each encryption. The generated random number sequence has a shorter length than plain text such as a JPEG image code to be encrypted. Next, using the generated random number sequence, a number sequence having the same length as the plaintext is generated. In the generated number sequence, the previously generated random number sequence is arranged in a distributed manner so that an exclusive OR (XOR) can be obtained with a portion to be encrypted in the plaintext. When an initial value is given to the head of the ciphertext obtained by taking the exclusive OR, the ciphertext is output.

図1(a)に示される方法で暗号化された暗号文は、図1(b)に示されるような方法によって復号化される。図1(b)に示されるように、まず、暗号文の先頭に付与された初期値を切り出して、切り出した初期値に基づいて乱数列を生成する。ここで生成される乱数列は、暗号文に付与された初期値に基づいて生成されていることにより、図1(a)の方法により暗号化に用いるために生成された乱数列に対応している。次に、生成した乱数列を使用して、暗号文と同じ長さの数列を生成する。生成される数列には、暗号文において復号化すべき箇所との間で排他的論理和を取ることができるように、先に生成した乱数列が分散して配置されている。数列と暗号文とで排他的論理和を取った結果として、平文が得られる。   The ciphertext encrypted by the method shown in FIG. 1A is decrypted by the method shown in FIG. As shown in FIG. 1B, first, an initial value given to the beginning of the ciphertext is cut out, and a random number sequence is generated based on the cut out initial value. Since the random number sequence generated here is generated based on the initial value given to the ciphertext, it corresponds to the random number sequence generated for use in encryption by the method of FIG. Yes. Next, using the generated random number sequence, a number sequence having the same length as the ciphertext is generated. In the generated number sequence, the previously generated random number sequence is distributed and arranged so that an exclusive OR can be obtained with a portion to be decrypted in the ciphertext. The plaintext is obtained as a result of the exclusive OR of the sequence and the ciphertext.

図2は、本実施形態に係る暗号化装置1の構成図である。暗号化装置1は、初期値算出部11、乱数列生成部12、乱数列記憶部13、乱数列分散部14、分散乱数列記憶部15、画像符号記憶部16、暗号化部17および暗号文出力部18を含んで構成される。   FIG. 2 is a configuration diagram of the encryption device 1 according to the present embodiment. The encryption device 1 includes an initial value calculation unit 11, a random number sequence generation unit 12, a random number sequence storage unit 13, a random number sequence distribution unit 14, a distributed random number sequence storage unit 15, an image code storage unit 16, an encryption unit 17, and a ciphertext. An output unit 18 is included.

初期値算出部11は、ある平文を暗号化する処理を実行するたびに、異なる無作為なビット列を生成し、生成したビット列を初期値として乱数列生成部12に与える。乱数列生成部12は、初期値を元に乱数列を生成する。生成される乱数列は、例えば、暗号化すべき平文の半分程度の長さを有する。乱数列記憶部13には、生成された乱数列が格納される。   Each time the initial value calculation unit 11 executes a process for encrypting a certain plaintext, the initial value calculation unit 11 generates a different random bit string, and gives the generated bit string to the random number string generation unit 12 as an initial value. The random number sequence generation unit 12 generates a random number sequence based on the initial value. The generated random number sequence has, for example, about half the length of plaintext to be encrypted. The random number sequence storage unit 13 stores the generated random number sequence.

乱数列分散部14は、乱数列記憶部13に格納されている乱数列を読み出し、先頭から順次読み出して、暗号化すべき平文と同じ長さの空ビット列に配置していく。乱数列からどれだけのビットを読み出すかは、JPEG画像符号の圧縮率に応じて決定される。分散乱数列記憶部15は、乱数列分散部14によって作成された、乱数列を分散させた数列(以下、数列と略記)を格納する。   The random number sequence distribution unit 14 reads the random number sequence stored in the random number sequence storage unit 13, sequentially reads from the top, and arranges it in an empty bit sequence having the same length as the plaintext to be encrypted. How many bits are read from the random number sequence is determined according to the compression rate of the JPEG image code. The distributed random number sequence storage unit 15 stores a number sequence (hereinafter abbreviated as a number sequence) generated by the random number sequence distribution unit 14 in which the random number sequence is distributed.

一方、暗号化装置1に入力されたJPEG画像符号は、上記の乱数列分散部14に与えられると共に、画像符号記憶部16に格納される。具体的な処理については後述する。暗号化部17は、分散乱数列記憶部15および画像符号記憶部16にそれぞれ格納された数列および平文である画像符号を読み出して、排他的論理和を取って暗号化する。暗号文出力部18は、暗号文を出力する。   On the other hand, the JPEG image code input to the encryption device 1 is given to the random number sequence distribution unit 14 and stored in the image code storage unit 16. Specific processing will be described later. The encryption unit 17 reads out the number sequence stored in the distributed random number sequence storage unit 15 and the image code storage unit 16 and the image code as plain text, and performs exclusive OR to encrypt them. The ciphertext output unit 18 outputs a ciphertext.

図3は、本実施形態に係る復号化装置2の構成図である。復号化装置2は、暗号文入力部21、初期値切り出し部22、乱数列生成部23、乱数列記憶部24、 乱数列分散部25、分散乱数列記憶部26、暗号文記憶部27、復号化部28および平文出力部29を含んで構成される。   FIG. 3 is a configuration diagram of the decoding device 2 according to the present embodiment. The decryption device 2 includes a ciphertext input unit 21, an initial value cutout unit 22, a random number sequence generation unit 23, a random number sequence storage unit 24, a random number sequence distribution unit 25, a distributed random number sequence storage unit 26, a ciphertext storage unit 27, a decryption And a plaintext output unit 29.

暗号文入力部21は、暗号化された画像符号を受け付けるインタフェースである。初期値切り出し部22は、入力された暗号文の先頭に付与された初期値を切り出す。乱数列生成部23は、初期値切り出し部22により切り出された初期値に基づいて乱数列を生成する。乱数列記憶部24は、生成された乱数列を格納する。なお、図2の暗号化装置1で暗号化された画像符号を復号化するとき、入力された暗号文に付与された初期値は、暗号化装置1の初期値算出部11において算出された初期値と一致する。同一の初期値を元に生成されることにより、図3の復号化装置2の乱数列生成部23は、図2の暗号化装置1において生成されるのと同じ乱数列を生成する。   The ciphertext input unit 21 is an interface that receives an encrypted image code. The initial value cutout unit 22 cuts out an initial value given to the head of the input ciphertext. The random number sequence generation unit 23 generates a random number sequence based on the initial value cut out by the initial value cutout unit 22. The random number sequence storage unit 24 stores the generated random number sequence. When the image code encrypted by the encryption device 1 in FIG. 2 is decrypted, the initial value given to the input ciphertext is the initial value calculated by the initial value calculation unit 11 of the encryption device 1. Matches the value. By generating based on the same initial value, the random number sequence generation unit 23 of the decryption device 2 in FIG. 3 generates the same random number sequence as that generated in the encryption device 1 in FIG.

乱数列分散部25および分散乱数列記憶部26の動作については、それぞれ図2の乱数列分散部14および分散乱数列記憶部15と同様であるのでここでは省略する。復号化装置2に入力された、暗号化されたJPEG画像符号は、暗号文入力部21を介して上記の初期値切り出し部22に与えられると共に、暗号文記憶部27に格納される。復号化部28は、分散乱数列記憶部26および暗号文記憶部27にそれぞれ格納されている数列および暗号文を読み出して、排他的論理和を取って復号化する。平文出力部29は、復号化して得られた平文である画像符号を出力する。   The operations of the random number sequence distribution unit 25 and the distributed random number sequence storage unit 26 are the same as those of the random number sequence distribution unit 14 and the distributed random number sequence storage unit 15 in FIG. The encrypted JPEG image code input to the decryption device 2 is given to the initial value cutout unit 22 via the ciphertext input unit 21 and stored in the ciphertext storage unit 27. The decryption unit 28 reads out the number sequence and ciphertext stored in the distributed random number sequence storage unit 26 and the ciphertext storage unit 27, respectively, and performs exclusive OR to decrypt them. The plaintext output unit 29 outputs an image code that is plaintext obtained by decoding.

図2に示される暗号化装置1によって、例えばJPEG画像符号等の圧縮符号が暗号化され、暗号文は、図3に示される復号化装置2によって復号される。復号化処理については、暗号化の際に用いた初期値を使用して生成した乱数に基づいて、暗号文について排他的論理和を取ることのほかは、暗号化と同様の処理を行うことから、以下、本実施形態に係る暗号化方法を中心に説明する。   A compression code such as a JPEG image code is encrypted by the encryption apparatus 1 shown in FIG. 2, and the ciphertext is decrypted by the decryption apparatus 2 shown in FIG. The decryption process is the same as the encryption process except that the exclusive OR is performed on the ciphertext based on the random number generated using the initial value used for encryption. Hereinafter, the encryption method according to the present embodiment will be mainly described.

図4は、本実施形態に係る暗号化装置1における、乱数列分散部14の構成図である。乱数列分散部14は、圧縮率算出部41、乱数列切り出し部42、部分乱数列記憶部43、開始位置算出部44、数列算出部45および参照表(ルックアップテーブル、以下LUTと表記)46を含む。   FIG. 4 is a configuration diagram of the random number sequence distribution unit 14 in the encryption device 1 according to the present embodiment. The random number sequence distribution unit 14 includes a compression rate calculation unit 41, a random number sequence cutout unit 42, a partial random number sequence storage unit 43, a start position calculation unit 44, a sequence calculation unit 45, and a reference table (lookup table, hereinafter referred to as LUT) 46. including.

圧縮率算出部41は、図5の圧縮率算出方法を説明する図に示されるように、暗号化装置1に入力された画像符号と、その画像符号のヘッダ情報から得られるもとの画像とについての大きさの比から、圧縮率を算出する。乱数列切り出し部42は、算出された圧縮率に応じたビット数だけ乱数列から値を切り出す。切り出した乱数は、以下、部分乱数列とする。部分乱数列記憶部43は、部分乱数列を格納する。   As shown in the drawing explaining the compression rate calculation method in FIG. 5, the compression rate calculation unit 41 includes the image code input to the encryption device 1 and the original image obtained from the header information of the image code. The compression ratio is calculated from the ratio of the sizes of. The random number sequence cutout unit 42 cuts out values from the random number sequence by the number of bits corresponding to the calculated compression rate. The extracted random number is hereinafter referred to as a partial random number sequence. The partial random number sequence storage unit 43 stores a partial random number sequence.

開始位置算出部44および数列算出部45は、部分乱数列および画像符号の圧縮率に基づいて、それぞれ平文と同じ長さの空ビット列に部分乱数列を配置する開始位置および配置後の数列を算出する。これらの部による数列を算出する処理は、LUT46を参照することにより行われる。   Based on the partial random number sequence and the compression rate of the image code, the start position calculation unit 44 and the sequence calculation unit 45 calculate the start position and the post-arrangement sequence where the partial random number sequence is arranged in an empty bit sequence having the same length as the plaintext, respectively. To do. The process of calculating the numerical sequence by these units is performed by referring to the LUT 46.

図4に示される乱数列分散部14によって、乱数列は先頭から切り出されて順に空ビット列に配置され、暗号化の処理を行う際に平文との間で排他的論理和を取るための数列が作成される。平文は、例えばJPEG画像符号であり、本実施形態においては、JPEG画像符号のうち、安全性や機密性が維持されるように、暗号化すべき位置について重点的に暗号化される。   By the random number sequence distribution unit 14 shown in FIG. 4, the random number sequence is cut out from the beginning and sequentially arranged in the empty bit sequence, and when performing the encryption process, a sequence for taking an exclusive OR with the plaintext is obtained. Created. The plain text is, for example, a JPEG image code, and in the present embodiment, the position to be encrypted is intensively encrypted in the JPEG image code so that safety and confidentiality are maintained.

図6は、本実施形態に係る暗号化方法において、暗号化される符号を説明するための図である。JPEG画像は、まず、8×8の64画素(64バイト)を1ブロックとした、ブロック単位で離散コサイン変換(Discrete Cosine Transform、以下DCTと略記)される。次に、DCTにより得られたDCT係数は、水平方向および垂直方向の周波数成分において、それぞれ図中左方、および上方に行くほど周波数が低くなるように配置され、図6中において示されるように、8×8画素ブロックのDCT係数の各値を符号化するときにはジグザグスキャンが行われる。量子化テーブルの量子化ステップ値を大きくとり、圧縮率が高いほど、全体のデータ量は小さくなる。なお、図6に示す圧縮率が比較的高い場合と低い場合における各DCT成分については、簡単のため、実際とは異なりいずれのDCT成分もほぼ等しい長さであるように表されているが、実際は、周波数が低いDCT係数ほどビット長も長い。   FIG. 6 is a diagram for explaining codes to be encrypted in the encryption method according to the present embodiment. The JPEG image is first subjected to discrete cosine transform (hereinafter abbreviated as DCT) in units of blocks, with 8 × 8 64 pixels (64 bytes) as one block. Next, the DCT coefficients obtained by DCT are arranged so that the frequency decreases in the horizontal and vertical frequency components in the left and upper directions in the figure, respectively, as shown in FIG. When encoding each value of the DCT coefficient of the 8 × 8 pixel block, zigzag scanning is performed. The larger the quantization step value in the quantization table, the higher the compression ratio, the smaller the total data amount. Note that each DCT component in the case where the compression rate shown in FIG. 6 is relatively high and low is shown to be almost equal in length for the sake of simplicity. Actually, the DCT coefficient having a lower frequency has a longer bit length.

エントロピー符号化された圧縮符号のうち、直流成分DC、および交流成分AC0、AC1およびAC2の符号で、符号全体のおよそ80%を占めることが知られている。そして、それぞれの圧縮符号は、ハフマン符号と付加ビットとから構成される。
ハフマン符号も負荷ビット数も共に、DC係数の差分値(隣接ブロックのDC係数との差分値)や、AC係数の値をグループ分けした結果に対して、設定される。ハフマン符号は、各グループの出現確率に対応した符号が、符号表に明記されている。但し、AC係数のハフマン符号の場合は、出現確率と、ブロック内の無効係数の連長(ランレングス)との組み合わせで設定される。
It is known that among the compression codes encoded by entropy, the DC component DC and the AC components AC0, AC1, and AC2 account for about 80% of the entire code. Each compression code is composed of a Huffman code and additional bits.
Both the Huffman code and the number of load bits are set for the difference value of the DC coefficient (difference value with the DC coefficient of the adjacent block) and the result of grouping the AC coefficient values. As for the Huffman code, a code corresponding to the appearance probability of each group is specified in the code table. However, in the case of the AC coefficient Huffman code, it is set by a combination of the appearance probability and the run length (run length) of the invalid coefficient in the block.

付加ビットは、ビット数が上記のようにグループ毎に設定され、先のハフマン符号が同じグループに属するどの係数を指すかを示す。これは、ビット数が固定して等確率で現れるので、比較的、第三者により推定されにくい。   The number of bits is set for each group as described above, and indicates which coefficient the previous Huffman code indicates belongs to the same group. Since this appears with an equal probability with the number of bits fixed, it is relatively difficult to estimate by a third party.

これより、本実施形態においては、これらJPEG圧縮画像符号すなわちDC、AC1、AC2およびAC3の付加ビットについて暗号化することで、安全性を維持しつつ、暗号化に要する処理を短縮化する。このとき、JPEGの圧縮率により、それぞれ異なるDCT係数の長さに応じて、対応する付加ビットの位置が決定される。以下、図7から図11を参照して、本実施形態に係る暗号化方法においては、JPEG画像符号中の付加ビットの暗号化を実現する方法について、具体的に説明する。   Thus, in the present embodiment, by encrypting these JPEG compressed image codes, that is, additional bits of DC, AC1, AC2, and AC3, the processing required for encryption is shortened while maintaining safety. At this time, according to the compression rate of JPEG, the position of the corresponding additional bit is determined according to the length of each different DCT coefficient. Hereinafter, with reference to FIGS. 7 to 11, in the encryption method according to the present embodiment, a method for realizing the encryption of the additional bits in the JPEG image code will be specifically described.

図7は、乱数列分散部14の動作を説明するための図である。乱数列記憶部13から読み出した乱数列Rは、暗号化すべき平文(JPEG画像符号)の半分以下の長さである。具体的には、例えば平文の30〜50%の長さを有する。平文であるJPEG画像符号の圧縮率に応じて、乱数列Rの長さを適切に設定する。この乱数列Rの長さを決定する処理については後述する。   FIG. 7 is a diagram for explaining the operation of the random number sequence distribution unit 14. The random number sequence R read from the random number sequence storage unit 13 has a length that is half or less of the plaintext (JPEG image code) to be encrypted. Specifically, for example, it has a length of 30 to 50% of plain text. The length of the random number sequence R is appropriately set according to the compression rate of the plaintext JPEG image code. Processing for determining the length of the random number sequence R will be described later.

乱数列Rは、その先頭から順に切り出され、部分乱数列R1、R2、…(以下、部分乱数列R1等とする)が生成される。部分乱数列R1等は、自身が保有する情報に基づいて、暗号化用の数列C(以下、数列Cと略記)の所定の箇所に配置される。こうして、乱数列Rは、図7に示すように、数列Cに分割して配置される。 The random number sequence R is cut out in order from the head, and partial random number sequences R 1 , R 2 ,... (Hereinafter referred to as partial random number sequence R 1 etc.) are generated. The partial random number sequence R 1 or the like is arranged at a predetermined location of an encryption number sequence C (hereinafter abbreviated as number sequence C) based on information held by itself. In this way, the random number sequence R is divided into a number sequence C and arranged as shown in FIG.

なお、数列Cは、部分乱数列R1等が配置される前は、全て「0」が格納されている。すなわち、分割した乱数列R(部分乱数列R1等)を配置した数列Cは、平文との間で排他的論理和を取ると、乱数列Rが配置された箇所については暗号文になるが、その他の箇所はすべて排他的論理和を取った結果として平文と同じビット列が得られる。 It should be noted that the number sequence C stores “0” before the partial random number sequence R 1 and the like are arranged. That is, when the number sequence C in which the divided random number sequence R (partial random number sequence R 1 and the like) is arranged is ORed with the plaintext, the portion where the random number sequence R is arranged becomes a ciphertext. As for the other parts, the same bit string as the plaintext is obtained as a result of taking the exclusive OR.

図8は、乱数列分散部14の動作を更に説明するための図である。算出された圧縮率を元に、乱数列Rの先頭から所定のビット数だけ切り出す。図8の例においては、所定のビット数を指定ビット数とし、nビット(nは8以下の正の整数)であると仮定する。図8に示されるように、nビット分乱数列から切り出した、k番目の部分乱数列Rk(kは正の整数)を、本実施形態においては、8ビットの空ビット列に格納する。部分乱数列Rkに基づいて、数列Cの乱数を格納(配置)する箇所、および格納する乱数の値が決定される。 FIG. 8 is a diagram for further explaining the operation of the random number sequence distribution unit 14. Based on the calculated compression rate, a predetermined number of bits are cut out from the beginning of the random number sequence R. In the example of FIG. 8, it is assumed that a predetermined number of bits is a designated number of bits and n bits (n is a positive integer of 8 or less). As shown in FIG. 8, the kth partial random number sequence R k (k is a positive integer) cut out from the n-bit random number sequence is stored in an 8-bit empty bit sequence in the present embodiment. Based on the partial random number sequence R k , the location for storing (arranging) the random numbers in the sequence C and the value of the stored random number are determined.

図9は、本実施形態における分散乱数列の生成を説明するための図である。数列Cとの間で排他的論理和を取るJPEG画像符号の圧縮率に応じて、例えば図9の(a)から(d)に示されるような場合分けを行って、それぞれに応じた方法により数列Cを生成する。図9に示される4つの例は、JPEG画像符号の圧縮率の小さい場合から大きい場合について、順に示されている。本実施形態においては、(a)圧縮率12%以上のとき、(b)圧縮率6%以上12%未満のとき、(c)圧縮率3%以上6%未満のときおよび(d)圧縮率3%未満のときに分けている。   FIG. 9 is a diagram for explaining generation of a distributed random number sequence in the present embodiment. According to the compression rate of the JPEG image code that takes the exclusive OR with the sequence C, for example, the case classification as shown in (a) to (d) of FIG. A sequence C is generated. The four examples shown in FIG. 9 are shown in order from the case where the compression rate of the JPEG image code is small to large. In this embodiment, (a) when the compression rate is 12% or more, (b) when the compression rate is 6% or more and less than 12%, (c) when the compression rate is 3% or more and less than 6%, and (d) the compression rate Divided when less than 3%.

まず、図9(a)を用いて、圧縮率がおよそ16%の場合における、部分乱数列Rkを用いて数列Cを生成する処理を説明する。乱数列から指定ビット数である8ビット分だけ切り出して得られた部分乱数列Rkを、図9(a)の左方に示す。8ビットのうち前半の4ビットは、後半の4ビットを格納する箇所を決定するために使用される。前半の4ビットの乱数列を、位置決め用乱数とする。後半の4ビットの乱数列を、XOR用乱数とする。図10のLUT46を参照して、位置決め用乱数を用いてXOR用乱数を配置する箇所を決定する方法について説明する。 First, with reference to FIG. 9A, a process of generating a sequence C using the partial random number sequence R k when the compression rate is approximately 16% will be described. A partial random number sequence R k obtained by cutting out a specified number of 8 bits from the random number sequence is shown on the left side of FIG. Of the 8 bits, the first 4 bits are used to determine where to store the latter 4 bits. The first 4-bit random number sequence is used as a positioning random number. The latter half of the 4-bit random number sequence is used as the XOR random number. With reference to the LUT 46 in FIG. 10, a method for determining the location where the random number for XOR is arranged using the random number for positioning will be described.

図10は、LUT46の例である。図10(a)から(d)は、それぞれ圧縮率が(a)12%以上のとき、(b)圧縮率6%以上12%未満のとき、(c)圧縮率3%以上6%未満のときおよび(d)圧縮率3%未満のときのLUT46を示している。   FIG. 10 is an example of the LUT 46. 10 (a) to 10 (d) show that when the compression rate is (a) 12% or more, (b) When the compression rate is 6% or more and less than 12%, (c) The compression rate is 3% or more and less than 6%, respectively. And (d) the LUT 46 when the compression rate is less than 3%.

指定ビット列n=8、すなわち部分乱数列Rkが8ビットから構成されるとき、部分乱数列Rkのうち先頭からの4ビットに基づいて、残りの4ビットを数列C上のどこに配置させるかを決定する。例えば、位置決め用乱数が「0000」であれば、空ビット列の1ビット目から4ビット目にXOR用乱数を格納し、位置決め用乱数が「0001」であれば、空ビット列の2ビット目から5ビット目にXOR用乱数を格納する。図9(a)の例においては位置決め用乱数が4ビットで構成されていることから、24=16通りの配置の仕方が存在することになる。 Specified bit string n = 8, that is, when the partial random number sequence R k is composed of 8 bits, based on the 4 bits from the beginning of the partial random number sequence R k, or to place the remaining 4 bits where on the sequence C To decide. For example, if the positioning random number is “0000”, the XOR random number is stored in the first bit to the fourth bit of the empty bit string, and if the positioning random number is “0001”, the second bit of the empty bit string is 5 The XOR random number is stored in the bit. In the example of FIG. 9A, since the positioning random number is composed of 4 bits, there are 2 4 = 16 arrangement methods.

位置決め用乱数により空ビット上の配置位置が決定されるXOR用乱数は、切り出された乱数列のうち残りの4ビットであり、その内容は24=16通りである。したがって、暗号化用の16ビットの空ビット列に8ビットの部分乱数列Rkのうち、4ビットのXOR乱数を配置することで生成される数列Cの組み合わせは、24×24=256通りになる。 The XOR random number whose arrangement position on the empty bit is determined by the positioning random number is the remaining 4 bits of the extracted random number sequence, and its content is 2 4 = 16. Therefore, 2 4 × 2 4 = 256 combinations of the sequence C generated by arranging the 4-bit XOR random numbers in the 8-bit partial random number sequence R k in the 16-bit empty bit sequence for encryption. become.

図9(b)は、例えば圧縮率がおよそ8%の場合における部分乱数列Rkおよび部分乱数列Rkから生成された数列Cである。この場合、乱数を切り出すための指定ビット列n=4ビットであるので、図9(b)左方に示されているように、8ビットから構成される乱数列Rkのうち、網掛けで示される先頭から4ビットにのみ、乱数列Rから切り出した値が格納されており、残りは「0」が格納されている。 FIG. 9 (b), for example, the compression ratio is a partial random number sequence R k and the partial random number sequence R k sequences generated from C in the case of approximately 8%. In this case, since the designated bit string n for cutting out the random number is 4 bits, as shown on the left side of FIG. 9B, the random number string R k composed of 8 bits is indicated by shading. A value cut out from the random number sequence R is stored only in the 4 bits from the beginning, and “0” is stored in the rest.

上記図9(a)のときと同様に、指定ビット数の乱数のうち前半を位置決め用乱数、後半をXOR用乱数とする。図9(b)においては、乱数列Rkのうち先頭から2ビットが位置決め用乱数、これに続く2ビットがXOR用乱数である。 As in the case of FIG. 9A, the first half of the random number of the designated number of bits is the positioning random number, and the second half is the XOR random number. In FIG. 9B, in the random number sequence R k , the first 2 bits are positioning random numbers, and the subsequent 2 bits are XOR random numbers.

位置決め用乱数は2×2=4通りの組み合わせが存在することから、これにより、8ビットの数列上に配置される位置の組み合わせについても4通りとなる。さらに、XOR用乱数自体の組み合わせも2×2=4通りであるから、図10(b)に示されるように、4×4=16通りの組み合わせがLUT46に用意される。   Since there are 2 × 2 = 4 combinations of positioning random numbers, there are four combinations of positions arranged on an 8-bit number sequence. Furthermore, since there are 2 × 2 = 4 combinations of the XOR random numbers themselves, 4 × 4 = 16 combinations are prepared in the LUT 46 as shown in FIG.

図9(c)は、圧縮率がおよそ4%の場合における部分乱数列Rkおよびこれにより生成された数列Cである。このとき、指定ビット列n=4である。上記の2つの例とは異なり、図9(c)の例においては、部分乱数列Rkの全てをXOR用乱数として使用する。XOR用乱数は、例えば空ビット列に所定の間隔毎に配置され、位置決め用乱数は使用しない。 FIG. 9C shows a partial random number sequence R k and a number sequence C generated thereby when the compression rate is approximately 4%. At this time, the designated bit string n = 4. Unlike the above two examples, in the example of FIG. 9C, the entire partial random number sequence R k is used as a random number for XOR. For example, the XOR random numbers are arranged at predetermined intervals in an empty bit string, and the positioning random numbers are not used.

図9(c)の右方に示されるように、圧縮率がおよそ4%と比較的小さいときは、8ビットの数列C上に、2ビットごとに部分乱数列を格納する。上記の(a)や(b)の場合とは異なり、位置決め用の乱数によらない。乱数の格納位置は予め定められており、その内容については、XOR用乱数が4ビットから構成されることから、LUT46には、24=16通りの組み合わせが用意される。 As shown on the right side of FIG. 9 (c), when the compression rate is relatively small at about 4%, a partial random number sequence is stored every 2 bits on the 8-bit number sequence C. Unlike the cases (a) and (b) above, the positioning random numbers are not used. The random number storage position is determined in advance, and since the XOR random number is composed of 4 bits, 2 4 = 16 combinations are prepared in the LUT 46.

図9(d)は、圧縮率がおよそ2%のときの部分乱数列Rkおよび生成される数列Cである。このとき、指定ビット列n=4である。図9(c)の圧縮率およそ4%の場合と比べて、数列C上に分散させて配置するときにXOR用乱数を4分割して1ビットおきに数列Cに格納する点で異なっている。 FIG. 9D shows a partial random number sequence R k and a generated number sequence C when the compression rate is approximately 2%. At this time, the designated bit string n = 4. Compared with the case of the compression rate of about 4% in FIG. 9C, it is different in that the random number for XOR is divided into four and stored in the sequence C every other bit when being distributed on the sequence C. .

図11は、暗号化部17の動作を説明するための図である。暗号化すべきJPEG画像符号は、図2の画像符号記憶部16から、1語ずつ読み出されて暗号化部17に与えられる。また、画像符号を暗号化するための上記数列Cは、分数乱数列記憶部15から1語ずつ読み出されて暗号化部17に与えられる。暗号化部17において、画像符号と数列Cとで排他的論理和を取り、暗号文を得る。ここで、1語とは、一般的に32ビット以上から構成されている。図11の(a)から(d)は、それぞれ1語長=32ビットのうち16ビットあるいは8ビットについて、部分的に表している。また、図11(a)から(d)において示されている数列Cは、それぞれ図9(a)から(d)で生成した数列Cに対応している。   FIG. 11 is a diagram for explaining the operation of the encryption unit 17. The JPEG image code to be encrypted is read one word at a time from the image code storage unit 16 in FIG. The number sequence C for encrypting the image code is read word by word from the fractional random number sequence storage unit 15 and given to the encryption unit 17. In the encryption unit 17, an exclusive OR is performed between the image code and the sequence C to obtain a ciphertext. Here, one word is generally composed of 32 bits or more. (A) to (d) of FIG. 11 partially represent 16 bits or 8 bits of one word length = 32 bits. Further, the numerical sequence C shown in FIGS. 11A to 11D corresponds to the numerical sequence C generated in FIGS. 9A to 9D, respectively.

まず、図11(a)に示される、圧縮率がおよそ16%のときの暗号化処理について説明する。平文のうち、まずDC成分は、ハフマン符号および付加ビットそれぞれがおよそ8ビットで構成されている。続くAC成分は、DC成分と比較すると、順次その長さは短くなっていく。既に説明した通り、本実施形態においては、圧縮率がおよそ16%のときに生成される数列Cは16ビットであり、このうち部分乱数列Rkは4ビットである。すなわち、各成分のビット長は一定でないのに対し、数列Cは16ビットで一定であるので、数列Cおよび平文をそれぞれ1語ずつ暗号化部17に与えるとしても、必ずしも数列Cの先頭と各成分の先頭とのタイミングが合致するわけではない。しかし、DC成分およびAC成分におけるハフマン符号や付加ビットの長さはいずれも圧縮率に基づいて決定されており、数列Cの長さも圧縮率に基づいて算出されているので、概ね付加ビットにXOR用乱数を重ねることができる。 First, the encryption process shown in FIG. 11A when the compression rate is approximately 16% will be described. Of the plaintext, the DC component is composed of approximately 8 bits each for the Huffman code and the additional bits. The length of the subsequent AC component becomes shorter as compared with the DC component. As already described, in the present embodiment, the number sequence C generated when the compression rate is approximately 16% is 16 bits, and the partial random number sequence R k is 4 bits. That is, although the bit length of each component is not constant, the sequence C is constant at 16 bits. Therefore, even if the sequence C and the plaintext are each given to the encryption unit 17 one word at a time, the top of the sequence C and each The timing with the beginning of the component does not match. However, since the lengths of the Huffman codes and additional bits in the DC component and the AC component are both determined based on the compression rate, and the length of the sequence C is also calculated based on the compression rate, the additional bits are generally XORed. Random numbers can be superimposed.

図11(b)の圧縮率がおよそ8%の場合も同様に、数列Cの長さおよびDC成分やAC成分の長さはいずれも画像符号の圧縮率に基づいて決定されているので、数列CにおけるXOR用乱数を、画像符号の各成分における付加ビットに重ねることができる。   Similarly, when the compression rate in FIG. 11B is approximately 8%, the length of the sequence C and the lengths of the DC component and the AC component are all determined based on the compression rate of the image code. The XOR random number in C can be superimposed on the additional bits in each component of the image code.

次に、図11(c)を参照して、圧縮率がおよそ4%のときの暗号化処理を説明する。このとき、画像符号のDC成分やAC成分は、いずれもおよそ4ビットであり、これに対し、数列Cは8ビットである。図9(c)を参照して既に述べたように、乱数列から切り出されたXOR用乱数は、2ビットごとに数列Cに格納されている。これにより、概ね各成分の付加ビットに対して、2ビットごとに格納されているXOR用乱数を重ねることができる。   Next, an encryption process when the compression rate is approximately 4% will be described with reference to FIG. At this time, the DC component and AC component of the image code are all about 4 bits, while the sequence C is 8 bits. As already described with reference to FIG. 9C, the XOR random numbers cut out from the random number sequence are stored in the sequence C every 2 bits. As a result, the XOR random numbers stored every two bits can be superimposed on the additional bits of each component.

図11(d)の、圧縮率がおよそ2%のときについても同様に、数列Cには1ビットごとにXOR用乱数が格納されており、画像符号の各成分において、ハフマン符号と付加ビットとはおよそ1ビットごとに現れるので、概ねXOR用乱数を付加ビットに重ねることができる。   Similarly, when the compression rate is about 2% in FIG. 11D, the sequence C stores a random number for XOR for each bit. In each component of the image code, a Huffman code and an additional bit are stored. Appears at about every 1 bit, so that the random number for XOR can be almost superimposed on the additional bits.

図11(a)から(d)を参照して説明したように、JPEG画像符号においては付加ビットの出現する位置が画像符号の圧縮率に応じて変化することを利用して、本実施形態においては、圧縮率に応じて場合分けし、付加ビットの現れる位置に部分乱数列Rkを格納して重点的に暗号化を行っている。 As described with reference to FIGS. 11A to 11D, in the present embodiment, the position where the additional bits appear in the JPEG image code changes according to the compression rate of the image code. Is classified according to the compression rate, and the partial random number sequence R k is stored at the position where the additional bit appears, and encryption is performed intensively.

図12は、本実施形態に係る暗号化の処理を示したフローチャートである。図12に示される処理は、暗号化装置1に対して、暗号化すべきJPEG画像符号が入力されたことを契機として開始される。   FIG. 12 is a flowchart showing encryption processing according to the present embodiment. The process illustrated in FIG. 12 is started when a JPEG image code to be encrypted is input to the encryption apparatus 1.

まず、ステップS1で、部分乱数列を生成し、ステップS2で、暗号化すべきJPEG画像符号の圧縮率を算出する。ステップS3で、圧縮率が第1のしきい値TH0以上であるか否かを判定する。上記実施例においては、TH0=0.12である。すなわち、圧縮率が12%以上の場合、ステップS4に進み、ステップS1で生成した部分乱数列から4ビット切り出し、ステップS5で、切り出した乱数列に基づいて、暗号化開始位置、すなわち、上記実施形態においては、XOR乱数を格納する位置を算出し、ステップS10に進む。   First, in step S1, a partial random number sequence is generated, and in step S2, the compression rate of the JPEG image code to be encrypted is calculated. In step S3, it is determined whether or not the compression rate is equal to or greater than a first threshold value TH0. In the above embodiment, TH0 = 0.12. That is, when the compression rate is 12% or more, the process proceeds to step S4, where 4 bits are extracted from the partial random number sequence generated in step S1, and the encryption start position, that is, the above-described implementation is performed based on the extracted random number sequence in step S5. In the embodiment, the position for storing the XOR random number is calculated, and the process proceeds to step S10.

ステップS3で、圧縮率が12%未満である場合、ステップS6に進み、更に、画像符号の圧縮率が第2のしきい値TH1以上であるか否かを判定する。上記実施例においては、TH1=0.06、すなわち圧縮率6%である。ステップS6で、画像符号の圧縮率が6%以上であるとき、ステップS7に進み、上記部分乱数列から2ビット切り出し、ステップS8で、切り出した乱数列に基づいて上記暗号化位置を算出し、ステップS10に進む。   If the compression rate is less than 12% in step S3, the process proceeds to step S6, and it is further determined whether or not the compression rate of the image code is equal to or greater than the second threshold value TH1. In the above embodiment, TH1 = 0.06, that is, the compression rate is 6%. When the compression rate of the image code is 6% or more in step S6, the process proceeds to step S7, where 2 bits are extracted from the partial random number sequence, and in step S8, the encrypted position is calculated based on the extracted random number sequence, Proceed to step S10.

ステップS6で、圧縮率が6%未満である場合、更にステップS9に進み、画像符号の圧縮率が第3のしきい値TH2以上であるか否かを判定する。上記実施例においては、TH2=0.03、すなわち圧縮率3%である。ステップS9で、画像符号の圧縮率が3%以上であるか否かを判定した後、ステップS10に進む。   If the compression rate is less than 6% in step S6, the process further proceeds to step S9 to determine whether or not the compression rate of the image code is equal to or greater than the third threshold value TH2. In the above embodiment, TH2 = 0.03, that is, the compression rate is 3%. In step S9, after determining whether or not the compression rate of the image code is 3% or more, the process proceeds to step S10.

ステップS10では、先にステップS3、ステップS6、およびステップS9で判定した結果に基づいて、XOR用乱数を、画像符号の圧縮率に応じた方法で、例えば求めた暗号化開始位置に基づいて、あるいは、所定のビット間隔で切り出すことによって算出し、処理を終了する。   In step S10, based on the results determined in steps S3, S6, and S9, the XOR random number is calculated according to the compression rate of the image code, for example, based on the obtained encryption start position. Alternatively, it is calculated by cutting out at a predetermined bit interval, and the process ends.

図13は、本実施形態に係る復号化の処理を示したフローチャートである。図13に示される処理は、復号化装置2に対して、暗号化されたJPEG画像符号が入力されたことを契機として開始される。   FIG. 13 is a flowchart showing a decoding process according to this embodiment. The process illustrated in FIG. 13 is started when an encrypted JPEG image code is input to the decryption apparatus 2.

まず、ステップS21で、初期値を切り出し、ステップS22で、切り出した初期値に基づいて部分乱数列を生成し、ステップS23で、入力されたJPEG画像符号の圧縮率を算出する。ステップS24で、圧縮率が上記第1のしきい値TH0(例えば0.12)以上であるか否かを判定する。算出された圧縮率が12%以上の場合、ステップS25に進み、ステップS1で生成した部分乱数列から4ビット切り出し、ステップS26で、切り出した乱数列に基づいて、復号化開始位置、すなわち、乱数列を格納する位置を算出し、ステップS31に進む。   First, in step S21, an initial value is cut out. In step S22, a partial random number sequence is generated based on the cut out initial value. In step S23, the compression rate of the input JPEG image code is calculated. In step S24, it is determined whether or not the compression rate is equal to or greater than the first threshold value TH0 (for example, 0.12). When the calculated compression rate is 12% or more, the process proceeds to step S25, where 4 bits are extracted from the partial random number sequence generated in step S1, and in step S26, the decoding start position, that is, the random number is extracted based on the extracted random number sequence. The position for storing the column is calculated, and the process proceeds to step S31.

ステップS24で、圧縮率が12%未満である場合、ステップS27に進み、更に、圧縮率が上記第2のしきい値TH1(例えば0.06)以上であるか否かを判定する。ステップS27で、圧縮率が6%以上のとき、ステップS28に進み、上記部分乱数列から2ビット切り出し、ステップS29で、切り出した乱数列に基づいて上記復号化位置を算出し、ステップS31に進む。   If the compression rate is less than 12% in step S24, the process proceeds to step S27, and it is further determined whether or not the compression rate is equal to or higher than the second threshold value TH1 (for example, 0.06). If the compression rate is 6% or more in step S27, the process proceeds to step S28, where 2 bits are extracted from the partial random number sequence. In step S29, the decoding position is calculated based on the extracted random number sequence, and the process proceeds to step S31. .

ステップS27で、圧縮率が6%未満である場合、更にステップS30に進み、圧縮率が上記第3のしきい値TH2(例えば0.03)以上であるか否かを判定した後、ステップS31に進む。   If the compression rate is less than 6% in step S27, the process further proceeds to step S30 to determine whether or not the compression rate is equal to or greater than the third threshold value TH2 (for example, 0.03), and then step S31. Proceed to

ステップS31では、先にステップS24、ステップS27およびステップS30で判定した結果に基づいて、乱数を、暗号化された画像符号の圧縮率に応じた方法で、例えば求めた復号化開始位置に基づいて、あるいは、所定のビット間隔で切り出すことによって算出し、処理を終了する。   In step S31, based on the result determined in steps S24, S27, and S30, the random number is calculated in accordance with the compression rate of the encrypted image code, for example, based on the obtained decoding start position. Alternatively, calculation is performed by cutting out at predetermined bit intervals, and the process is terminated.

ところで、図2の暗号化装置1と、図3の復号化装置2は、例えば、図14に示すような情報処理装置(コンピュータ)を用いて構成することができる。図14の情報処理装置は、CPU(中央処理装置)101、メモリ102、入力装置103、出力装置104、外部記憶装置105、媒体駆動装置106、ネットワーク接続装置107を備え、それらはバス108により互いに接続されている。   Incidentally, the encryption device 1 in FIG. 2 and the decryption device 2 in FIG. 3 can be configured using, for example, an information processing device (computer) as shown in FIG. 14 includes a CPU (central processing unit) 101, a memory 102, an input device 103, an output device 104, an external storage device 105, a medium driving device 106, and a network connection device 107, which are connected to each other by a bus 108. It is connected.

メモリ102は、例えば、ROM(read only memory)、RAM(random access memory)等を含み、処理に用いられるプログラムおよびデータを格納する。CPU101は、メモリ102を利用してプログラムを実行することにより、必要な処理を行う。   The memory 102 includes, for example, a read only memory (ROM), a random access memory (RAM), and the like, and stores programs and data used for processing. The CPU 101 performs necessary processing by executing a program using the memory 102.

図2の暗号化装置1や図3の復号化装置2は、メモリ102に格納されたプログラムを実行することにより実現される機能に対応する。
入力装置103は、例えば、キーボード、ポインティングデバイス、タッチパネル等であり、オペレータ等からの指示や情報の入力に用いられる。出力装置104は、例えば、ディスプレイ、プリンタ、スピーカ等であり、オペレータへの問い合わせ、アラーム、処理結果等の出力に用いられる。
The encryption device 1 in FIG. 2 and the decryption device 2 in FIG. 3 correspond to functions realized by executing a program stored in the memory 102.
The input device 103 is, for example, a keyboard, a pointing device, a touch panel, and the like, and is used for inputting instructions and information from an operator or the like. The output device 104 is, for example, a display, a printer, a speaker, and the like, and is used for outputting an inquiry to the operator, an alarm, a processing result, and the like.

外部記憶装置105は、例えば、磁気ディスク装置、光ディスク装置、光磁気ディスク装置、テープ装置等である。情報処理装置は、この外部記憶装置105に、上記プログラムおよびデータを格納しておき、必要に応じて、それらをメモリ102にロードして使用する。   The external storage device 105 is, for example, a magnetic disk device, an optical disk device, a magneto-optical disk device, a tape device, or the like. The information processing apparatus stores the program and data in the external storage device 105 and loads them into the memory 102 for use as necessary.

媒体駆動装置106は、可搬記録媒体109を駆動し、その記録内容にアクセスする。可搬記録媒体109は、メモリカード、フレキシブルディスク、CD−ROM(compact disk read only memory )、光ディスク、光磁気ディスク等の任意のコンピュータ読み取り可能な記録媒体である。オペレータは、この可搬記録媒体109に上記プログラムおよびデータを格納しておき、必要に応じて、それらをメモリ102にロードして使用する。   The medium driving device 106 drives a portable recording medium 109 and accesses the recorded contents. The portable recording medium 109 is an arbitrary computer-readable recording medium such as a memory card, a flexible disk, a CD-ROM (compact disk read only memory), an optical disk, and a magneto-optical disk. The operator stores the program and data in the portable recording medium 109 and loads them into the memory 102 for use as necessary.

ネットワーク接続装置107は、LAN(local area network)、インターネット等の任意の通信ネットワークに接続され、通信に伴うデータ変換を行う。情報処理装置は、必要に応じて、上記プログラムおよびデータを外部の装置からネットワーク接続装置107を介して受け取り、それらをメモリ102にロードして使用する。   The network connection device 107 is connected to an arbitrary communication network such as a local area network (LAN) or the Internet, and performs data conversion accompanying communication. The information processing apparatus receives the program and data from an external apparatus via the network connection apparatus 107 as necessary, and loads them into the memory 102 for use.

図15は、図14の情報処理装置にプログラムおよびデータを供給することのできるコンピュータ読み取り可能な記録媒体を示している。可搬記録媒体109やサーバ111のデータベース113に格納されたプログラムおよびデータは、情報処理装置112のメモリ102にロードされる。サーバ111は、そのプログラムおよびデータを搬送する搬送信号を生成し、ネットワーク上の任意の伝送媒体を介して情報処理装置112に送信する。CPU101は、そのデータを用いてそのプログラムを実行し、必要な処理を行う。   FIG. 15 shows a computer-readable recording medium that can supply a program and data to the information processing apparatus of FIG. Programs and data stored in the portable recording medium 109 and the database 113 of the server 111 are loaded into the memory 102 of the information processing apparatus 112. The server 111 generates a carrier signal that carries the program and data, and transmits the carrier signal to the information processing apparatus 112 via an arbitrary transmission medium on the network. The CPU 101 executes the program using the data and performs necessary processing.

以上説明したように、本実施形態に係る暗号化方法および復号化方法によれば、画像を圧縮して得られたJPEG画像符号について暗号化/復号化する際に、その圧縮率に応じて、暗号化/復号化すべき箇所、具体的には付加ビットについて第三者に隠す必要性の低い情報(例えばハフマン符号)については処理を行わないようにして、暗号化/復号化するよう処理を実行する。情報の安全性や機密性を維持するために必要な箇所について重点的に暗号化/復号化の処理を実行することで、全体については第三者による復号を防止しつつ、処理に要する時間を短縮化させることが可能とされる。   As described above, according to the encryption method and the decryption method according to the present embodiment, when encrypting / decrypting a JPEG image code obtained by compressing an image, according to the compression rate, Executes the process to encrypt / decrypt the information to be encrypted / decrypted, specifically, the information that is not necessary to hide the additional bits (eg, Huffman code). To do. By performing encryption / decryption processing with emphasis on the parts necessary to maintain the safety and confidentiality of information, the entire process is prevented while being decrypted by a third party. It can be shortened.

(付記1)
データを暗号化するための暗号化プログラムであって、
前記データは圧縮符号であり、
前記暗号化プログラムは、
前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について暗号化する
処理をコンピュータに実行させる
ことを特徴とする暗号化プログラム。
(付記2)
前記所定の箇所は、切り出された乱数に基づいて決定される
ことを特徴とする付記1に記載の暗号化プログラム。
(付記3)
前記所定の箇所は、更に前記データの圧縮率に基づいて決定される
ことを特徴とする付記2に記載の暗号化プログラム。
(付記4)
前記データは画像データであり、前記圧縮符号は、JPEG方式により圧縮符号化されて生成された画像符号である
ことを特徴とする付記2に記載の暗号化プログラム。
(付記5)
前記所定の箇所は、JPEG方式である前記画像符号における付加ビットに含まれ、
前記暗号化の処理は、前記切り出された各乱数列と前記付加ビットとで排他的論理和を取ることにより行われる
ことを特徴とする付記4に記載の暗号化プログラム。
(付記6)
前記乱数列は、所定の初期値に基づいて算出され、
前記暗号化の処理の結果得られる暗号は、排他的論理和を取った結果に前記初期値を付与することにより得られる
ことを特徴とする付記5に記載の暗号化プログラム。
(付記7)
空ビットから構成され、前記画像符号と同じ長さを有する数列上に、前記切り出した乱数列をそれぞれ配置し、
前記数列との排他的論理和を取ることにより、前記画像符号を暗号化する
ことを特徴とする付記4に記載の暗号化プログラム。
(付記8)
暗号化されたデータを復号化するための復号化プログラムであって、
前記データは圧縮符号であり、
前記復号化プログラムは、
暗号化処理において使用された所定の初期値を用いて、前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について復号化する
処理をコンピュータに実行させる
ことを特徴とする復号化プログラム。
(付記9)
前記圧縮符号は、
前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出されたかく乱数列に対応する所定の箇所について排他的論理和を取る
処理により暗号化されている
ことを特徴とする付記8に記載の復号化プログラム。
(付記10)
前記データは画像データであり、前記圧縮符号は、JPEG方式により圧縮符号化されて生成された画像符号である
ことを特徴とする付記9に記載の復号化プログラム。
(付記11)
前記復号化の処理において用いられる乱数列は、所定の初期値に基づいて算出される
ことを特徴とする付記10に記載の復号化プログラム。
(付記12)
データを暗号化するための暗号化方法であって、
前記データは圧縮符号であり、
前記暗号化方法は、
前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について暗号化する
ことを特徴とする暗号化方法。
(付記13)
暗号化されたデータを復号化するための復号化方法であって、
前記データは圧縮符号であり、
前記復号化方法は、
暗号化処理において使用された所定の初期値を用いて、前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について復号化する
ことを特徴とする復号化方法。
(付記14)
データを暗号化するための暗号化装置であって、
前記データは圧縮符号であり、
前記暗号化装置は、
前記圧縮符号の長さよりも短い長さを有する乱数列を生成する生成手段と、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出す切り出し手段と、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について暗号化する暗号化手段と
を備えたことを特徴とする暗号化装置。
(付記15)
データを復号化するための復号化装置であって、
前記データは圧縮符号であり、
前記復号化装置は、
暗号化処理において使用された所定の初期値を用いて、前記圧縮符号の長さよりも短い長さを有する乱数列を生成する生成手段と、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出す切り出し手段と、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について復号化する復号化手段と
を備えたことを特徴とする復号化装置。
(Appendix 1)
An encryption program for encrypting data,
The data is a compression code;
The encryption program is
Generating a random number sequence having a length shorter than the length of the compression code;
The random number sequence is sequentially cut out with a length corresponding to the compression ratio of the data,
An encryption program that causes a computer to execute processing for encrypting a predetermined portion corresponding to each of the extracted random number sequences in the compression code using each of the extracted random number sequences.
(Appendix 2)
The encryption program according to appendix 1, wherein the predetermined portion is determined based on a cut random number.
(Appendix 3)
The encryption program according to appendix 2, wherein the predetermined portion is further determined based on a compression rate of the data.
(Appendix 4)
The encryption program according to appendix 2, wherein the data is image data, and the compression code is an image code generated by compression encoding according to a JPEG method.
(Appendix 5)
The predetermined portion is included in an additional bit in the image code that is a JPEG method,
The encryption program according to appendix 4, wherein the encryption process is performed by taking an exclusive OR between the extracted random number sequence and the additional bits.
(Appendix 6)
The random number sequence is calculated based on a predetermined initial value,
The encryption program according to appendix 5, wherein the encryption obtained as a result of the encryption process is obtained by adding the initial value to the result of exclusive OR.
(Appendix 7)
Each of the extracted random number sequences is arranged on a number sequence composed of empty bits and having the same length as the image code,
The encryption program according to appendix 4, wherein the image code is encrypted by taking an exclusive OR with the number sequence.
(Appendix 8)
A decryption program for decrypting encrypted data,
The data is a compression code;
The decryption program is
Using a predetermined initial value used in the encryption process, generate a random number sequence having a length shorter than the length of the compression code,
The random number sequence is sequentially cut out with a length corresponding to the compression ratio of the data,
A decoding program that causes a computer to execute a process of decoding a predetermined portion corresponding to each extracted random number sequence in the compression code using each extracted random number sequence.
(Appendix 9)
The compression code is
Generating a random number sequence having a length shorter than the length of the compression code;
The random number sequence is sequentially cut out with a length corresponding to the compression ratio of the data,
The appendix 8 is characterized in that each extracted random number sequence is encrypted by a process of taking an exclusive OR for a predetermined portion corresponding to the extracted random number sequence in the compressed code. Decryption program.
(Appendix 10)
The decoding program according to appendix 9, wherein the data is image data, and the compression code is an image code generated by compression encoding according to a JPEG method.
(Appendix 11)
The decryption program according to appendix 10, wherein the random number sequence used in the decryption process is calculated based on a predetermined initial value.
(Appendix 12)
An encryption method for encrypting data,
The data is a compression code;
The encryption method is:
Generating a random number sequence having a length shorter than the length of the compression code;
The random number sequence is sequentially cut out with a length corresponding to the compression ratio of the data,
An encryption method comprising: encrypting a predetermined portion corresponding to each extracted random number sequence in the compression code using each extracted random number sequence.
(Appendix 13)
A decryption method for decrypting encrypted data, comprising:
The data is a compression code;
The decoding method is:
Using a predetermined initial value used in the encryption process, generate a random number sequence having a length shorter than the length of the compression code,
The random number sequence is sequentially cut out with a length corresponding to the compression ratio of the data,
A decoding method, wherein a predetermined portion corresponding to each extracted random number sequence in the compression code is decoded using each extracted random number sequence.
(Appendix 14)
An encryption device for encrypting data,
The data is a compression code;
The encryption device is:
Generating means for generating a random number sequence having a length shorter than the length of the compression code;
Cutout means for sequentially cutting out the random number sequence with a length according to the compression rate of the data;
An encryption apparatus comprising: an encryption unit that encrypts a predetermined portion corresponding to each extracted random number sequence in the compressed code using each extracted random number sequence.
(Appendix 15)
A decoding device for decoding data,
The data is a compression code;
The decoding device
Generating means for generating a random number sequence having a length shorter than the length of the compression code using a predetermined initial value used in the encryption process;
Cutout means for sequentially cutting out the random number sequence with a length according to the compression rate of the data;
A decoding apparatus comprising: decoding means for decoding a predetermined portion corresponding to each of the extracted random number sequences in the compressed code using each of the extracted random number sequences.

本発明に係る暗号化および復号化方法の原理図である。It is a principle diagram of the encryption and decryption method according to the present invention. 本実施形態に係る暗号化装置の構成図である。It is a block diagram of the encryption apparatus which concerns on this embodiment. 本実施形態に係る復号化装置の構成図である。It is a block diagram of the decoding apparatus which concerns on this embodiment. 本実施形態に係る暗号化装置における、乱数列分散部の構成図である。It is a block diagram of the random number sequence dispersion | distribution part in the encryption apparatus which concerns on this embodiment. 圧縮率算出方法を説明する図である。It is a figure explaining the compression rate calculation method. 本実施形態に係る暗号化方法において、暗号化される符号を説明するための図である。It is a figure for demonstrating the code | symbol encrypted in the encryption method which concerns on this embodiment. 乱数列分散部の動作を説明するための図である。It is a figure for demonstrating operation | movement of a random number sequence dispersion | distribution part. 乱数列分散部の動作を更に説明するための図であるIt is a figure for further explaining operation of a random number sequence distribution part 本実施形態における分散乱数列の生成を説明するための図である。It is a figure for demonstrating the production | generation of the distributed random number sequence in this embodiment. ルックアップテーブルの例である。It is an example of a lookup table. 暗号化部の動作を説明するための図である。It is a figure for demonstrating operation | movement of an encryption part. 本実施形態に係る暗号化の処理を示したフローチャートである。It is the flowchart which showed the process of the encryption which concerns on this embodiment. 本実施形態に係る復号化の処理を示したフローチャートである。It is the flowchart which showed the process of the decoding which concerns on this embodiment. 情報処理装置(コンピュータ)の構成図である。It is a block diagram of information processing apparatus (computer). 図14の情報処理装置にプログラムおよびデータを供給することのできるコンピュータ読み取り可能な記録媒体を示した図である。It is the figure which showed the computer-readable recording medium which can supply a program and data to the information processing apparatus of FIG. 従来技術に係るブロック暗号方法およびストリーム暗号方法を説明する図である。It is a figure explaining the block encryption method and stream encryption method which concern on a prior art.

符号の説明Explanation of symbols

1 暗号化装置
2 復号化装置
11 初期値算出部
12 乱数列生成部
13 乱数列記憶部
14 乱数列分散部
15 分散乱数列記憶部
16 画像符号記憶部
17 暗号化部
18 暗号文出力部
21 暗号文入力部
22 初期値切り出し部
23 乱数列生成部
24 乱数列記憶部
25 乱数列分散部
26 分散乱数列記憶部
27 暗号文記憶部
28 復号化部
29 平文出力部
DESCRIPTION OF SYMBOLS 1 Encryption apparatus 2 Decryption apparatus 11 Initial value calculation part 12 Random number sequence generation part 13 Random number sequence storage part 14 Random number sequence distribution part 15 Distributed random number sequence storage part 16 Image code storage part 17 Encryption part 18 Ciphertext output part 21 Encryption Sentence input unit 22 Initial value cutout unit 23 Random number sequence generation unit 24 Random number sequence storage unit 25 Random number sequence distribution unit 26 Distributed random number sequence storage unit 27 Ciphertext storage unit 28 Decryption unit 29 Plaintext output unit

Claims (5)

データを暗号化するための暗号化プログラムであって、
前記データは圧縮符号であり、
前記暗号化プログラムは、
前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について暗号化する
処理をコンピュータに実行させる
ことを特徴とする暗号化プログラム。
An encryption program for encrypting data,
The data is a compression code;
The encryption program is
Generating a random number sequence having a length shorter than the length of the compression code;
The random number sequence is sequentially cut out with a length corresponding to the compression ratio of the data,
An encryption program that causes a computer to execute processing for encrypting a predetermined portion corresponding to each of the extracted random number sequences in the compression code using each of the extracted random number sequences.
前記所定の箇所は、切り出された乱数に基づいて決定される
ことを特徴とする請求項1に記載の暗号化プログラム。
The encryption program according to claim 1, wherein the predetermined portion is determined based on a cut random number.
前記データは画像データであり、前記圧縮符号は、JPEG方式により圧縮符号化されて生成された画像符号である
ことを特徴とする請求項2に記載の暗号化プログラム。
The encryption program according to claim 2, wherein the data is image data, and the compression code is an image code generated by compression encoding according to a JPEG method.
暗号化されたデータを復号化するための復号化プログラムであって、
前記データは圧縮符号であり、
前記復号化プログラムは、
暗号化処理において使用された所定の初期値を用いて、前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出された各乱数列に対応する所定の箇所について復号化する
処理をコンピュータに実行させる
ことを特徴とする復号化プログラム。
A decryption program for decrypting encrypted data,
The data is a compression code;
The decryption program is
Using a predetermined initial value used in the encryption process, generate a random number sequence having a length shorter than the length of the compression code,
The random number sequence is sequentially cut out with a length corresponding to the compression ratio of the data,
A decoding program that causes a computer to execute a process of decoding a predetermined portion corresponding to each extracted random number sequence in the compression code using each extracted random number sequence.
前記圧縮符号は、
前記圧縮符号の長さよりも短い長さを有する乱数列を生成し、
前記データの圧縮率に応じた長さで、前記乱数列を順次切り出し、
切り出された各乱数列を用いて、前記圧縮符号における、該切り出されたかく乱数列に対応する所定の箇所について排他的論理和を取る
処理により暗号化されている
ことを特徴とする請求項4に記載の復号化プログラム。
The compression code is
Generating a random number sequence having a length shorter than the length of the compression code;
The random number sequence is sequentially cut out with a length corresponding to the compression ratio of the data,
The encrypted code is encrypted by a process of taking an exclusive OR for a predetermined portion corresponding to the extracted random number sequence in the compression code, using each extracted random number sequence. The decryption program described.
JP2005324439A 2005-11-09 2005-11-09 Encryption program and decryption program Withdrawn JP2007134860A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005324439A JP2007134860A (en) 2005-11-09 2005-11-09 Encryption program and decryption program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005324439A JP2007134860A (en) 2005-11-09 2005-11-09 Encryption program and decryption program

Publications (1)

Publication Number Publication Date
JP2007134860A true JP2007134860A (en) 2007-05-31

Family

ID=38156172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005324439A Withdrawn JP2007134860A (en) 2005-11-09 2005-11-09 Encryption program and decryption program

Country Status (1)

Country Link
JP (1) JP2007134860A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9143326B2 (en) 2012-03-29 2015-09-22 International Business Machines Corporation Method and system for encrypting data
JP2017184147A (en) * 2016-03-31 2017-10-05 株式会社メガチップス Encryption device, program, and encryption method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9143326B2 (en) 2012-03-29 2015-09-22 International Business Machines Corporation Method and system for encrypting data
US9344274B2 (en) 2012-03-29 2016-05-17 International Business Machines Corporation Method and system for encrypting data
US9634827B2 (en) 2012-03-29 2017-04-25 International Business Machines Corporation Encrypting data
US10396977B2 (en) 2012-03-29 2019-08-27 International Business Machines Corporation Encrypting data
US11539505B2 (en) 2012-03-29 2022-12-27 Kyndryl, Inc. Encrypting data
JP2017184147A (en) * 2016-03-31 2017-10-05 株式会社メガチップス Encryption device, program, and encryption method

Similar Documents

Publication Publication Date Title
JP4893750B2 (en) Data compression apparatus and data decompression apparatus
JP5579760B2 (en) Method and apparatus for coding the location of coefficients
Chen et al. Compression-unimpaired batch-image encryption combining vector quantization and index compression
US7961871B2 (en) Encryption process, encryption device, and computer-readable medium storing encryption program
US10785545B2 (en) Systems and methods for simultaneous compression and encryption
JP6608436B2 (en) Encoder, decoder and method using partial data encryption
CN101465724B (en) Encrypted Huffman encoding method and decoding method
US8645713B2 (en) Encrypting method, recording medium of encrypting program, decrypting method, and recording medium of decrypting program
JP2006191534A (en) Data processing apparatus and data processing method
WO2015057282A1 (en) Block management unification system and method
US7751556B2 (en) Apparatus and method of generating falsification detecting data of encrypted data in the course of process
CN100456668C (en) Information processing method, information processing apparatus, program, and storage medium
US8989432B2 (en) System and method of adding a watermark to a JPEG image file
JP2004198760A (en) Compression enciphering device and expansion decoding device
JP2007134860A (en) Encryption program and decryption program
JP2010145691A (en) Content encrypting apparatus, content decrypting apparatus, and data conversion method
JP3434088B2 (en) Image data conversion device and its inverse conversion device
JP2006270343A (en) Partial encryption device, its method, and its program
JP4672971B2 (en) Encryption / decryption method and apparatus
WO2010146666A1 (en) Information processing device, data processing method and program
JP4371663B2 (en) Information processing apparatus and information processing method
JP2009124456A (en) Information processor, information processing method, information processing program, and information recording medium
US20130259395A1 (en) System and Method of Manipulating a JPEG Header
JP2003345243A (en) Convolution encryption method, convolution encryption system, and convolution encryption program
JP5610981B2 (en) Image encryption device, image decryption device, image encryption method, image decryption method, image encryption program, and image decryption program

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20090203