JP2015045674A - Encryption system, encryption method and computer program - Google Patents

Encryption system, encryption method and computer program Download PDF

Info

Publication number
JP2015045674A
JP2015045674A JP2013175191A JP2013175191A JP2015045674A JP 2015045674 A JP2015045674 A JP 2015045674A JP 2013175191 A JP2013175191 A JP 2013175191A JP 2013175191 A JP2013175191 A JP 2013175191A JP 2015045674 A JP2015045674 A JP 2015045674A
Authority
JP
Japan
Prior art keywords
block
blocks
shuffle
encryption
encrypted
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.)
Granted
Application number
JP2013175191A
Other languages
Japanese (ja)
Other versions
JP5955285B2 (en
Inventor
健治 渡邉
Kenji Watanabe
健治 渡邉
和彦 小室
Kazuhiko Komuro
和彦 小室
山口 博史
Hiroshi Yamaguchi
博史 山口
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.)
Hitachi Industry and Control Solutions Co Ltd
Original Assignee
Hitachi Industry and Control Solutions Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Industry and Control Solutions Co Ltd filed Critical Hitachi Industry and Control Solutions Co Ltd
Priority to JP2013175191A priority Critical patent/JP5955285B2/en
Publication of JP2015045674A publication Critical patent/JP2015045674A/en
Application granted granted Critical
Publication of JP5955285B2 publication Critical patent/JP5955285B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To improve safety for eavesdropping of data.SOLUTION: An encryption device generates block information including a block number for original data, a block length, a shuffle number and key information, and divides the original data by the block length corresponding to the block number in order of the block number, and encrypts each block, and rearranges and couples in order of the shuffle number, and generates encryption data. A decryption device generates the same block information as the encryption device, and divides the encryption data by the block length corresponding to the shuffle number in order of the shuffle number, and decrypts each block, and rearranges and couples in order of the block number, and restores the original data.

Description

本発明は、データの暗号化および復号化の技術に関する。   The present invention relates to a technology for data encryption and decryption.

送信データを複数のブロックに分割し、各ブロックをそれぞれ異なる暗号鍵で暗号化し、その暗号化ブロックを送信する暗号化通信方法は知られている(特許文献1)。   An encryption communication method is known in which transmission data is divided into a plurality of blocks, each block is encrypted with a different encryption key, and the encrypted block is transmitted (Patent Document 1).

特開平10−313306号公報JP-A-10-313306

特許文献1の暗号化通信方法において、通信の途中で暗号化ブロックが盗聴された場合、その盗聴者は、その暗号化ブロックのデータサイズを知ることができる。暗号化ブロックのデータサイズは、その暗号化ブロックの解読のヒントの一つとなりえる。   In the encrypted communication method of Patent Document 1, if an encrypted block is wiretapped during communication, the eavesdropper can know the data size of the encrypted block. The data size of the encrypted block can be one of hints for decrypting the encrypted block.

そこで、本発明の目的は、暗号化ブロックのデータサイズを隠蔽し、送信データの盗聴に対する安全性を高めることができるようにした暗号化システム、暗号化方法及びコンピュータプログラムを提供することにある。   SUMMARY OF THE INVENTION An object of the present invention is to provide an encryption system, an encryption method, and a computer program that can conceal the data size of an encryption block and improve the security against eavesdropping of transmission data.

本発明の一実施例に係る暗号化システムは、暗号化装置と復号化装置とを備える。
暗号化装置は、
元データを複数のブロックに分割した際の各々のブロックを示すブロック番号と、ブロック番号に対応するブロック長と、ブロック番号に対応するシャッフル番号と、ブロック番号に対応する鍵情報と、を含むブロック情報を生成するブロック情報生成部と、
元データを、ブロック番号の順番に、そのブロック番号に対応するブロック長で分割し、複数のブロックを生成する第1分割部と、
複数のブロックの各々を、そのブロック番号に対応する鍵情報を用いて暗号化し、複数の暗号化ブロックを生成する暗号化部と、
複数の暗号化ブロックの各々を、シャッフル番号の順番に並び替えて結合し、暗号化データを生成する第1結合部と、を有する。
復号化装置は、
暗号化装置と同一のブロック情報を生成するブロック情報生成部と、
暗号化装置で生成された暗号化データを、シャッフル番号の順番に、そのシャッフル番号に対応するブロック長で分割し、複数の暗号化ブロックを生成する第2分割部と、
複数の暗号化ブロックの各々を、そのシャッフル番号に対応する鍵情報を用いて復号化し、複数の復号化ブロックを生成する復号化部と、
複数の復号化ブロックを、ブロック番号の順番に並び替えて結合し、元データを復元する第2結合部と、を有する。
An encryption system according to an embodiment of the present invention includes an encryption device and a decryption device.
The encryption device
A block including a block number indicating each block when the original data is divided into a plurality of blocks, a block length corresponding to the block number, a shuffle number corresponding to the block number, and key information corresponding to the block number A block information generation unit for generating information;
A first dividing unit that divides the original data in the order of block numbers by a block length corresponding to the block number, and generates a plurality of blocks;
An encryption unit that encrypts each of the plurality of blocks using key information corresponding to the block number and generates a plurality of encrypted blocks;
Each of the plurality of encrypted blocks is rearranged in the order of the shuffle numbers and combined to have a first combining unit that generates encrypted data.
The decryption device
A block information generation unit that generates the same block information as the encryption device;
A second dividing unit that divides the encrypted data generated by the encryption device in the order of the shuffle numbers by a block length corresponding to the shuffle numbers, and generates a plurality of encrypted blocks;
A decryption unit that decrypts each of the plurality of encrypted blocks using key information corresponding to the shuffle number, and generates a plurality of decrypted blocks;
A second combining unit that recombines a plurality of decoded blocks in the order of the block numbers and restores the original data.

本発明によれば、暗号化ブロックのデータサイズを隠蔽し、送信データの盗聴に対する安全性を高めることができる。   According to the present invention, the data size of the encrypted block can be concealed, and the security against eavesdropping of transmission data can be improved.

暗号化システムの備える暗号化装置および復号化装置の機能構成の一例を示す。2 shows an example of functional configurations of an encryption device and a decryption device included in an encryption system. シャッフル情報に含まれる情報の一例を示す。An example of the information contained in shuffle information is shown. 暗号化装置が元データから暗号化データを生成する過程の一例を示す。An example of the process in which an encryption apparatus produces | generates encryption data from original data is shown. 復号化装置が暗号化データから元データを生成する過程の一例を示す。An example of a process in which a decryption device generates original data from encrypted data is shown. 暗号化装置および復号化装置の処理の一例を示すフローチャートである。It is a flowchart which shows an example of a process of an encryption apparatus and a decryption apparatus.

以下、暗号化装置と復号化装置との間で盗聴に対して安全にデータをやりとりすることのできる暗号化システム実施例について、図面を参照しながら説明する。   Hereinafter, an embodiment of an encryption system capable of safely exchanging data between an encryption device and a decryption device against wiretapping will be described with reference to the drawings.

図1は、暗号化システム1の備える暗号化装置11および復号化装置12の機能構成の一例を示す。   FIG. 1 shows an example of the functional configuration of the encryption device 11 and the decryption device 12 included in the encryption system 1.

暗号化システム1は、暗号化装置11と、復号化装置12とを備える。暗号化装置11と復号化装置12とは、通信ネットワーク41を介して、データを送受信する。   The encryption system 1 includes an encryption device 11 and a decryption device 12. The encryption device 11 and the decryption device 12 transmit and receive data via the communication network 41.

暗号化装置11および復号化装置12はそれぞれ、CPU、メモリ、記憶媒体および通信デバイス(何れも不図示)などを備える計算機装置であり、所定のコンピュータプログラムをCPU等で実行することにより、図1に示す各種機能を実現する。   Each of the encryption device 11 and the decryption device 12 is a computer device including a CPU, a memory, a storage medium, a communication device (all not shown), and the like, and by executing a predetermined computer program on the CPU or the like, FIG. Implements various functions shown in.

メモリは、例えば、DRAM(Dynamic Random Access Memory)などによって構成される。記憶媒体は、例えば、HDD(Hard Disk Drive)またはフラッシュメモリなどによって構成される。通信デバイスは、例えば、Ethernet(登録商標)、無線LAN(IEEE802.11)または3G/LTE(Long Term Evolution)などに対応するデバイスによって構成される。通信ネットワークは、例えば、有線/無線LAN(Local Area Network)、WAN(Wide Area Network)又はインターネット網、もしくはこれらの組み合わせによって構成される。   The memory is constituted by, for example, a DRAM (Dynamic Random Access Memory). The storage medium is configured by, for example, an HDD (Hard Disk Drive) or a flash memory. The communication device includes, for example, a device that supports Ethernet (registered trademark), wireless LAN (IEEE 802.11), 3G / LTE (Long Term Evolution), and the like. The communication network includes, for example, a wired / wireless LAN (Local Area Network), a WAN (Wide Area Network), an Internet network, or a combination thereof.

<暗号化装置>
暗号化装置11は、機能として、送受信部28と、秘密情報管理部21と、乱数生成部22と、シャッフル情報生成部23と、暗号鍵生成部24と、第1シャッフル部25と、暗号化部26と、第1結合部27とを有する。
<Encryption device>
The encryption device 11 functions as a transmission / reception unit 28, a secret information management unit 21, a random number generation unit 22, a shuffle information generation unit 23, an encryption key generation unit 24, a first shuffle unit 25, and an encryption. Part 26 and first coupling part 27.

秘密情報管理部21は、ユーザ情報Iおよび秘密情報kを保持すると共に、ユーザ情報Iと秘密情報kとの対応関係を管理する。ユーザ情報Iは、ユーザ又は装置を一意に識別し得る情報である。秘密情報kは、後述するシャッフル情報100と、暗号/復号用の鍵とを生成するための情報である。秘密情報kは、ユーザ情報Iと一意の対応関係を有する。秘密情報kは、例えば、耐タンパ性を有する不揮発性メモリなどに格納され、外部に漏洩しないように保護される。秘密情報管理部21は、ユーザ情報Iが入力されると、そのユーザ情報Iに対応する秘密情報kを、シャッフル情報生成部23および暗号鍵生成部24に提供する。   The secret information management unit 21 holds the user information I and the secret information k, and manages the correspondence between the user information I and the secret information k. The user information I is information that can uniquely identify a user or a device. The secret information k is information for generating shuffle information 100, which will be described later, and an encryption / decryption key. The secret information k has a unique correspondence with the user information I. The secret information k is stored, for example, in a non-volatile memory having tamper resistance and is protected so as not to leak outside. When the user information I is input, the secret information management unit 21 provides the secret information k corresponding to the user information I to the shuffle information generation unit 23 and the encryption key generation unit 24.

乱数生成部22は、乱数rを生成する。乱数生成部22は、生成した乱数rを、シャッフル情報生成部23および暗号鍵生成部24に提供する。また、乱数生成部22は、その生成した乱数rを、復号化装置12に送信する。乱数生成部22は、復号化装置12からのデータ要求を受信したことをトリガーとして、乱数rを生成してもよい。もしくは、乱数生成部22は、シャッフル情報生成部23からの乱数の要求をトリガーとして、乱数rを生成してもよい。   The random number generator 22 generates a random number r. The random number generation unit 22 provides the generated random number r to the shuffle information generation unit 23 and the encryption key generation unit 24. In addition, the random number generation unit 22 transmits the generated random number r to the decryption device 12. The random number generation unit 22 may generate a random number r triggered by receiving a data request from the decryption device 12. Alternatively, the random number generation unit 22 may generate a random number r using a request for a random number from the shuffle information generation unit 23 as a trigger.

シャッフル情報生成部23は、シャッフル情報100を生成する。シャッフル情報生成部23は、乱数生成部22から提供された乱数rと、秘密情報管理部21から提供された秘密情報kと、復号化装置12へ送信する元データのデータ長sと、を所定の関数f(r,k,s)に代入して、シャッフル情報100を生成する。関数fは、例えば、r,k,sからf(r,k,s)の算出は容易であるが、f(r,k,s)からr,k,sを推測することは極めて困難な一方向性関数である。秘密情報kと、乱数rと、データ長sとが全て同一の場合は、同一のシャッフル情報100が生成される。シャッフル情報100も、例えば、耐タンパ性を有する不揮発性メモリなどに格納される。   The shuffle information generation unit 23 generates the shuffle information 100. The shuffle information generation unit 23 determines the random number r provided from the random number generation unit 22, the secret information k provided from the secret information management unit 21, and the data length s of the original data to be transmitted to the decryption device 12. Substituting into the function f (r, k, s) in FIG. For example, in the function f, it is easy to calculate f (r, k, s) from r, k, s, but it is extremely difficult to estimate r, k, s from f (r, k, s). It is a one-way function. When the secret information k, the random number r, and the data length s are all the same, the same shuffle information 100 is generated. The shuffle information 100 is also stored in a non-volatile memory having tamper resistance, for example.

図2は、シャッフル情報100に含まれる情報の一例を示す。なお、図2は、説明の便宜上、シャッフル情報100をテーブル形式で表記しているが、暗号化装置11の内部において、シャッフル情報100がこのように管理されていることを示すものではない。   FIG. 2 shows an example of information included in the shuffle information 100. Note that FIG. 2 shows the shuffle information 100 in a table format for convenience of explanation, but does not indicate that the shuffle information 100 is managed in this manner in the encryption apparatus 11.

シャッフル情報100には、ブロックの数と、ブロック番号101と、オフセット102と、ブロック長103と、シャッフル番号104との対応関係を示す情報が含まれる。   The shuffle information 100 includes information indicating the correspondence between the number of blocks, the block number 101, the offset 102, the block length 103, and the shuffle number 104.

ブロックの数は、元データをいくつのブロックに分割するかを示す。元データをいくつのブロックに分割するかは、f(r,k,s)によって決定される。図2に示すシャッフル情報100おいては、ブロック番号101の最大数がブロックの数に対応する。   The number of blocks indicates how many blocks the original data is divided into. The number of blocks into which the original data is divided is determined by f (r, k, s). In the shuffle information 100 shown in FIG. 2, the maximum number of block numbers 101 corresponds to the number of blocks.

ブロック番号101は、元データを複数のブロックに分割したときに、先頭のブロックから順番に割り当てられる番号である。つまり、分割された複数のブロックを、ブロック番号の順番に結合すると、元データが復元される。   The block number 101 is a number assigned in order from the first block when the original data is divided into a plurality of blocks. That is, when the plurality of divided blocks are combined in the order of the block numbers, the original data is restored.

オフセット102は、ブロック番号101の示すブロックの元データにおける開始位置を示す。ブロック長103は、ブロック番号101の示すブロックの長さ(データサイズ)を示す。オフセット102およびブロック長103は、例えば、Byte単位で指定される。本実施例において、ブロック長103は、ブロック毎に異なり得る。しかし、全てのブロックが同じブロック長103であってもよい。各ブロックをどのくらいの長さにするかも、f(r,k,s)によって決定される。   The offset 102 indicates the start position in the original data of the block indicated by the block number 101. The block length 103 indicates the length (data size) of the block indicated by the block number 101. The offset 102 and the block length 103 are specified in units of bytes, for example. In this embodiment, the block length 103 can be different for each block. However, all blocks may have the same block length 103. The length of each block is also determined by f (r, k, s).

シャッフル番号104は、複数のブロックのシャッフル後の順番を示す。後述する第1結合部27は、このシャッフル番号104の順番にブロックを並び替えて結合する。各ブロックがどのシャッフル番号となるかも、f(r,k,s)によって決定される。   The shuffle number 104 indicates the order after shuffling of a plurality of blocks. The first combining unit 27 to be described later arranges the blocks in the order of the shuffle numbers 104 and combines them. The shuffle number for each block is also determined by f (r, k, s).

例えば、図2の行110は、ブロック番号101が「3」のブロックは、元データの先頭から「250byte(オフセット)」を開始位置として「200byte(ブロック長)」分を抽出したデータであり、シャッフル後の順番は「1番目(シャッフル番号)」であることを示す。以下、図1の説明に戻る。   For example, the row 110 in FIG. 2 is data obtained by extracting “200 bytes (block length)” from the beginning of the original data, starting with “250 bytes (offset)”, for the block having the block number 101 of “3”. This indicates that the order after shuffling is “first (shuffle number)”. Returning to the description of FIG.

暗号鍵生成部24は、暗号鍵を生成する。暗号鍵生成部24は、ブロック毎に異なる暗号鍵を生成する。暗号鍵生成部24は、乱数生成部22から提供された乱数rと、秘密情報管理部21から提供されたkと、シャッフル情報生成部23において生成されたシャッフル情報100に含まれるブロック番号iと、を所定の関数g(r,k,i)に代入し、暗号鍵を生成する。関数gは、例えば、r,k,iからg(r,k,i)の算出は容易であるが、g(r,k,i)からr,k,iを推測することは極めて困難な一方向性関数である。乱数rと、秘密情報kと、ブロック番号iとが全て同一の場合は、同一の暗号鍵が生成される。暗号鍵生成部24は、ブロック番号iに対応する暗号鍵を、暗号化部26へ提供する。   The encryption key generation unit 24 generates an encryption key. The encryption key generation unit 24 generates a different encryption key for each block. The encryption key generation unit 24 includes a random number r provided from the random number generation unit 22, k provided from the secret information management unit 21, and a block number i included in the shuffle information 100 generated in the shuffle information generation unit 23. Are substituted into a predetermined function g (r, k, i) to generate an encryption key. For example, the function g is easy to calculate g (r, k, i) from r, k, i, but it is extremely difficult to estimate r, k, i from g (r, k, i). It is a one-way function. When the random number r, the secret information k, and the block number i are all the same, the same encryption key is generated. The encryption key generation unit 24 provides the encryption key corresponding to the block number i to the encryption unit 26.

第1シャッフル部25は、元データを先頭から、シャッフル情報100の有するブロック番号101の順番に、そのブロック番号101に対応するオフセット102およびブロック長103に従って、複数のブロックに分割する。そして、第1シャッフル部25は、複数のブロックを、シャッフル情報100の有するシャッフル番号104の順番に並び替える。   The first shuffle unit 25 divides the original data into a plurality of blocks from the top in the order of the block number 101 included in the shuffle information 100 according to the offset 102 and the block length 103 corresponding to the block number 101. Then, the first shuffle unit 25 rearranges the plurality of blocks in the order of the shuffle numbers 104 included in the shuffle information 100.

暗号化部26は、第1シャッフル部25で分割された複数のブロックの各々を、そのブロックに対応する暗号鍵で暗号化する。つまり、暗号化部26は、ブロック番号iのブロックを、暗号鍵g(r,k,i)を用いて暗号化する。以下、暗号化されたブロックを「暗号化ブロック」という。   The encryption unit 26 encrypts each of the plurality of blocks divided by the first shuffle unit 25 with an encryption key corresponding to the block. That is, the encryption unit 26 encrypts the block with the block number i using the encryption key g (r, k, i). Hereinafter, the encrypted block is referred to as “encrypted block”.

第1結合部27は、第1シャッフル部25によって分割及び並び替えられ、暗号化部26によって暗号化された複数の暗号化ブロックを、シャッフル情報100の有するシャッフル番号101の順番に結合し、暗号化データを生成する。   The first combining unit 27 combines a plurality of encrypted blocks divided and rearranged by the first shuffle unit 25 and encrypted by the encryption unit 26 in the order of the shuffle numbers 101 included in the shuffle information 100, and Generate data.

送受信部28は、通信ネットワーク14を通じて、復号化装置12と様々なデータを送受信する。送受信部28の受信したユーザ情報Iは、秘密情報管理部21へ提供される。送受信部28は、乱数rを復号化装置12へ送信する。送受信部28は、暗号化データを復号化装置12へ送信する。   The transmission / reception unit 28 transmits / receives various data to / from the decoding device 12 through the communication network 14. The user information I received by the transmission / reception unit 28 is provided to the secret information management unit 21. The transmission / reception unit 28 transmits the random number r to the decryption device 12. The transmission / reception unit 28 transmits the encrypted data to the decryption device 12.

図3は、暗号化装置11が元データから暗号化データを生成する過程の一例を示す。
(1)第1シャッフル部25は、所定の記憶媒体から元データを読み出す。
(2)第1シャッフル部25は、元データの先頭から、図2に示すシャッフル情報100のブロック番号101の順番に、そのブロック番号101に対応するオフセット102およびブロック長103に従って、ブロック長103の異なる複数のブロック1、2。3、4に分割する。
(3)第1シャッフル部25は、複数のブロック1、2、3、4を、図2に示すシャッフル情報100のシャッフル番号104の順番に従って、ブロック番号3、2、4、1に並べ替える。
(4)暗号化部26は、ブロック番号3、2、4、1のブロックをそれぞれ、暗号鍵g(r,k,3)、g(r,k,2)、g(r,k,4)、g(r,k,1)で暗号化する。
(5)第1結合部27は、図2に示すシャッフル情報100のシャッフル番号104の順番に従って、ブロック番号3、2、4、1の順番に暗号化ブロックを結合し、暗号化データを生成する。
FIG. 3 shows an example of a process in which the encryption device 11 generates encrypted data from original data.
(1) The first shuffle unit 25 reads original data from a predetermined storage medium.
(2) The first shuffle unit 25 sets the block length 103 in accordance with the offset 102 and the block length 103 corresponding to the block number 101 in the order of the block number 101 of the shuffle information 100 shown in FIG. Divide into different blocks 1, 2, 3, 4
(3) The first shuffle unit 25 rearranges the plurality of blocks 1, 2, 3, and 4 into block numbers 3, 2, 4, and 1 according to the order of the shuffle numbers 104 of the shuffle information 100 illustrated in FIG.
(4) The encryption unit 26 converts the blocks with block numbers 3, 2, 4, 1 into encryption keys g (r, k, 3), g (r, k, 2), g (r, k, 4), respectively. ), G (r, k, 1).
(5) The first combining unit 27 combines the encrypted blocks in the order of block numbers 3, 2, 4, and 1 in accordance with the order of the shuffle numbers 104 of the shuffle information 100 shown in FIG. 2, and generates encrypted data. .

なお、上記の(3)と(4)は、入れ替えられてもよい。つまり、(2)元データの分割後、(3)暗号鍵を用いてブロック1、2、3、4を暗号化し、(4)暗号化したブロック1、2、3、4を、シャッフル情報100のシャッフル番号104に従ってブロック3、2、4、1の順番に並び替えてから、(5)結合してもよい。以下、図1の説明に戻る。   The above (3) and (4) may be interchanged. That is, (2) after dividing the original data, (3) encrypting blocks 1, 2, 3, and 4 using the encryption key, and (4) encrypting blocks 1, 2, 3, and 4 with the shuffle information 100 The blocks 3, 2, 4, and 1 may be rearranged in accordance with the shuffle number 104, and (5) may be combined. Returning to the description of FIG.

<復号化装置>
復号化装置12は、機能として、送受信部38と、秘密情報管理部31と、シャッフル情報生成部33と、復号鍵生成部34と、第2シャッフル部35と、復号化部36と、第2結合部37とを有する。
<Decryption device>
The decryption device 12 functions as a transmission / reception unit 38, a secret information management unit 31, a shuffle information generation unit 33, a decryption key generation unit 34, a second shuffle unit 35, a decryption unit 36, and a second And a coupling portion 37.

秘密情報管理部31は、基本的に、暗号化装置11の秘密情報管理部21と同様の機能を有する。暗号化装置11の秘密情報管理部21と、復号化装置12の秘密情報管理部31とは、同じユーザ情報Iおよび秘密情報kを保持すると共に、同じユーザ情報Iと秘密情報kとの対応関係を管理する。   The secret information management unit 31 basically has the same function as the secret information management unit 21 of the encryption device 11. The secret information management unit 21 of the encryption device 11 and the secret information management unit 31 of the decryption device 12 hold the same user information I and secret information k, and also correspond to the same user information I and secret information k. Manage.

秘密情報kは、予め(例えば、製造段階で)暗号化装置11および復号化装置12に格納されていてもよいし、所定のサーバからセキュアな通信経路を介して取得されて暗号化装置11および復号化装置12に格納されてもよい。   The secret information k may be stored in advance in the encryption device 11 and the decryption device 12 (for example, at the manufacturing stage), or may be acquired from a predetermined server via a secure communication path, and the encryption device 11 and It may be stored in the decryption device 12.

シャッフル情報生成部33は、基本的に、暗号化装置11のシャッフル情報生成部23と同様の機能及び関数f(r,k,s)を有する。シャッフル情報生成部33は、乱数rについては、暗号化装置11から送信されたものを使用する。シャッフル情報生成部33は、データ長sについては、暗号化装置11から送信された暗号化データのデータ長から算出する。これにより、シャッフル情報生成部33は、関数f(r,k,s)を用いて、暗号化装置11と同じシャッフル情報100を生成することができる。   The shuffle information generation unit 33 basically has the same functions and functions f (r, k, s) as the shuffle information generation unit 23 of the encryption device 11. The shuffle information generation unit 33 uses the random number r transmitted from the encryption device 11. The shuffle information generation unit 33 calculates the data length s from the data length of the encrypted data transmitted from the encryption device 11. Thereby, the shuffle information generation unit 33 can generate the same shuffle information 100 as that of the encryption device 11 using the function f (r, k, s).

復号鍵生成部34は、復号鍵を生成する。暗号鍵と復号鍵とが共通鍵である場合、復号鍵生成部34は、基本的に、暗号鍵生成部34と同様の機能及び関数g(r,k,i)を有する。復号鍵生成部34は、乱数rについては、暗号化装置11から送信されたものを使用する。これにより復号鍵生成部34は、関数g(r,k,i)を用いて、各暗号化ブロックの復号鍵を生成することができる。   The decryption key generation unit 34 generates a decryption key. When the encryption key and the decryption key are common keys, the decryption key generation unit 34 basically has the same function and function g (r, k, i) as the encryption key generation unit 34. The decryption key generation unit 34 uses the random number r transmitted from the encryption device 11. Accordingly, the decryption key generation unit 34 can generate a decryption key for each encrypted block using the function g (r, k, i).

第2シャッフル部35は、暗号化データを先頭から、シャッフル情報100の有するシャッフル番号104の順番に、そのシャッフル番号104に対応するオフセット101およびデータ長102に従って、複数の暗号化ブロックに分割する。そして、第2シャッフル部35は、複数の暗号化ブロックを、シャッフル情報100の有するブロック番号101の順番に並び替える。   The second shuffle unit 35 divides the encrypted data into a plurality of encrypted blocks from the top in the order of the shuffle numbers 104 included in the shuffle information 100 according to the offset 101 and the data length 102 corresponding to the shuffle numbers 104. Then, the second shuffle unit 35 rearranges the plurality of encrypted blocks in the order of the block numbers 101 included in the shuffle information 100.

復号化部36は、第2シャッフル部35で分割された複数の暗号化ブロックの各々を、そのブロックに対応する復号鍵で復号化する。つまり、復号化部36は、ブロック番号iのブロックを、復号鍵g(r,k,i)を用いて復号化する。   The decryption unit 36 decrypts each of the plurality of encrypted blocks divided by the second shuffle unit 35 with a decryption key corresponding to the block. That is, the decryption unit 36 decrypts the block with the block number i using the decryption key g (r, k, i).

第2結合部37は、第2シャッフル部35によって分割され、ブロック番号101の順番(元の順番)に並び替えられ、復号化部36によって復号化された複数のブロックを、シャッフル情報100の有するブロック番号101の順番に結合し、元データを生成する。   The second combining unit 37 is divided by the second shuffle unit 35, rearranged in the order of the block number 101 (original order), and has a plurality of blocks decoded by the decoding unit 36 in the shuffle information 100. The original data is generated by combining them in the order of the block numbers 101.

送受信部38は、通信ネットワーク14を通じて、暗号化装置11と様々なデータを送受信する。送受信部38は、ユーザ情報Iおよびデータ要求を暗号化装置11へ送信する。送受信部38の受信した暗号化データは、第2シャッフル部35へ提供される。   The transmission / reception unit 38 transmits / receives various data to / from the encryption device 11 through the communication network 14. The transmission / reception unit 38 transmits the user information I and the data request to the encryption device 11. The encrypted data received by the transmission / reception unit 38 is provided to the second shuffle unit 35.

図4は、復号化装置12が暗号化データから元データを生成する過程の一例を示す。
(1)第2シャッフル部35は、送受信部39を通じて、暗号化データを受信する。
(2)第2シャッフル部35は、暗号化データの先頭から、図2に示すシャッフル情報100のシャッフル番号101の順番に、そのシャッフル番号101に対応するオフセット102およびブロック長103に従って、ブロック長の異なる複数の暗号化ブロック3、2、4、1に分割する。
(3)第2シャッフル部35は、複数の暗号化ブロック3、2、4、1を、図2に示すシャッフル情報100のブロック番号101の順番に従って、ブロック番号1、2、3、4に並べ替える。
(4)復号化部36は、ブロック番号1、2、3、4の暗号化ブロックをそれぞれ、復号鍵g(r,k,1)、g(r,k,2)、g(r,k,3)、g(r,k,4)で復号化する。
(5)第2結合部37は、図2に示すシャッフル情報100のブロック番号101の順番に従って、ブロック番号1、2、3、4の順番にブロックを結合し、元データを復元する。
FIG. 4 shows an example of a process in which the decryption device 12 generates original data from encrypted data.
(1) The second shuffle unit 35 receives the encrypted data through the transmission / reception unit 39.
(2) The second shuffle unit 35, in the order of the shuffle number 101 of the shuffle information 100 shown in FIG. It is divided into a plurality of different encrypted blocks 3, 2, 4, 1.
(3) The second shuffle unit 35 arranges the plurality of encrypted blocks 3, 2, 4, 1 in block numbers 1, 2, 3, 4 according to the order of the block numbers 101 of the shuffle information 100 shown in FIG. Change.
(4) The decryption unit 36 decrypts the encrypted blocks of block numbers 1, 2, 3, and 4 with decryption keys g (r, k, 1), g (r, k, 2), and g (r, k , 3) and g (r, k, 4).
(5) The second combining unit 37 combines the blocks in the order of block numbers 1, 2, 3, and 4 according to the order of the block numbers 101 of the shuffle information 100 shown in FIG.

なお、上記の(3)と(4)は、入れ替えられてもよい。つまり、(2)暗号化データの分割後、(3)復号鍵を用いてブロック3、2、4、1を復号化し、(4)復号化したブロック3、2、4、1を、シャッフル情報のブロック番号に従ってブロック1、2、3、4の順番に並び替えてから、(5)結合してもよい。   The above (3) and (4) may be interchanged. That is, (2) after dividing the encrypted data, (3) decrypting the blocks 3, 2, 4, 1 using the decryption key, and (4) shuffle the blocks 3, 2, 4, 1 into the shuffle information The blocks may be rearranged in the order of blocks 1, 2, 3, and 4 according to the block number (5) and then combined.

図5は、暗号化装置11および復号化装置12の処理の一例を示すフローチャートである。   FIG. 5 is a flowchart illustrating an example of processing of the encryption device 11 and the decryption device 12.

復号化装置12は、暗号化装置11に、データ要求およびユーザ情報Iを送信する(S10)。ユーザ情報Iは、データ要求に含まれていてもよい。   The decryption device 12 transmits a data request and user information I to the encryption device 11 (S10). User information I may be included in the data request.

データ要求を受信した暗号化装置11は、乱数rを生成し、その乱数rを復号化装置12へ送信する(S11)。   The encryption device 11 that has received the data request generates a random number r and transmits the random number r to the decryption device 12 (S11).

そして、暗号化装置11は、その生成した乱数rと、復号化装置12から受信したユーザ情報Iに対応する秘密情報kと、復号化装置12へ送信する元データのデータ長sとを用いて、シャッフル情報f(r,k,s)を生成する(S12)。   Then, the encryption device 11 uses the generated random number r, the secret information k corresponding to the user information I received from the decryption device 12, and the data length s of the original data to be transmitted to the decryption device 12. Then, the shuffle information f (r, k, s) is generated (S12).

暗号化装置11は、その生成したシャッフル情報100のブロック番号101の順番に、元データを、そのブロック番号101に対応するオフセット102およびデータ長103に従って分割し、複数のブロックを生成する(S13)。   The encryption device 11 divides the original data in the order of the block number 101 of the generated shuffle information 100 according to the offset 102 and the data length 103 corresponding to the block number 101, and generates a plurality of blocks (S13). .

暗号化装置11は、その複数のブロックをシャッフル情報100のシャッフル番号104の順番に並び替える(S14)。   The encryption device 11 rearranges the plurality of blocks in the order of the shuffle number 104 of the shuffle information 100 (S14).

暗号化装置11は、ブロック番号101毎に異なる暗号鍵g(r,k,i)を生成する(S15)。
暗号化装置11は、ブロック番号101に対応するブロックを、そのブロック番号101に対応する暗号鍵g(r,k,i)を用いて暗号化する(S16)。
The encryption device 11 generates a different encryption key g (r, k, i) for each block number 101 (S15).
The encryption device 11 encrypts the block corresponding to the block number 101 using the encryption key g (r, k, i) corresponding to the block number 101 (S16).

暗号化装置11は、複数の暗号化ブロックを、シャッフル情報100のシャッフル番号101の順番に結合し、暗号化データを生成する(S17)。
暗号化装置11は、その暗号化データを、復号化装置12へ送信する(S18)。
The encryption device 11 combines the plurality of encrypted blocks in the order of the shuffle number 101 of the shuffle information 100 to generate encrypted data (S17).
The encryption device 11 transmits the encrypted data to the decryption device 12 (S18).

暗号化データを受信した復号化装置12は、暗号化装置11から受信した乱数rと、暗号化装置11へ送信したユーザ情報Iに対応する秘密情報kと、暗号化装置11から受信した暗号化データのデータ長sとを関数f(r,k,s)へ代入し、シャッフル情報100を生成する(S22)。このシャッフル情報100は、暗号化装置11で生成されたシャッフル情報100と同じである。   The decryption device 12 that has received the encrypted data receives the random number r received from the encryption device 11, the secret information k corresponding to the user information I transmitted to the encryption device 11, and the encryption received from the encryption device 11. The data length s of the data is substituted into the function f (r, k, s) to generate the shuffle information 100 (S22). The shuffle information 100 is the same as the shuffle information 100 generated by the encryption device 11.

復号化装置12は、その生成したシャッフル情報100のシャッフル番号104の順番に、暗号化データを、そのシャッフル番号104に対応するオフセット102およびデータ長103に従って分割し、複数の暗号化ブロックを生成する(S23)。   The decryption device 12 divides the encrypted data in the order of the shuffle number 104 of the generated shuffle information 100 according to the offset 102 and the data length 103 corresponding to the shuffle number 104, and generates a plurality of encrypted blocks. (S23).

復号化装置12は、その複数の暗号化ブロックをシャッフル情報100のブロック番号101の順番(元の順番)に並び替える(S24)。   The decryption device 12 rearranges the plurality of encrypted blocks in the order of the block number 101 of the shuffle information 100 (original order) (S24).

復号化装置12は、ブロック番号101毎に異なる復号鍵g(r,k,i)を生成する(S25)。暗号鍵と復号鍵とが共通鍵である場合、この復号鍵は、暗号化装置11で生成された暗号鍵と同じである。   The decryption device 12 generates a different decryption key g (r, k, i) for each block number 101 (S25). When the encryption key and the decryption key are common keys, the decryption key is the same as the encryption key generated by the encryption device 11.

復号化装置12は、ブロック番号101に対応するブロックを、そのブロック番号101に対応する復号鍵g(r,k,i)を用いて復号化する(S26)。   The decryption device 12 decrypts the block corresponding to the block number 101 using the decryption key g (r, k, i) corresponding to the block number 101 (S26).

復号化装置12は、複数の複合化されたブロックを、シャッフル情報100のブロック番号101の順番に結合し、元データを生成する(S27)   The decryption device 12 combines the plurality of combined blocks in the order of the block number 101 of the shuffle information 100 to generate original data (S27).

以上の処理により、暗号化装置11は、復号化装置12に元データをセキュアに送信することができる。そして、上述の構成によれば、第三者(盗聴者)に暗号化データが解読される虞をさらに小さくすることができる。なぜなら、暗号化データは、異なるブロック長の暗号化ブロックが結合されて構成されているため、第三者は、暗号化データを解読しようとしても、その暗号化データの分割位置を推測することができないからである。さらに、それぞれのブロック長が異なり、ブロックの順番も並び替えられており、各ブロックが異なる暗号鍵で暗号化されていることもまた、第三者の暗号化データの解読を困難にする。また、ブロック内にブロック番号に関する情報も含まれていないため、第三者の暗号化データの解読をさらに困難にする。   Through the above processing, the encryption device 11 can securely transmit the original data to the decryption device 12. And according to the above-mentioned composition, a possibility that encryption data may be deciphered by a third party (the eavesdropper) can be further reduced. Because encrypted data is composed of encrypted blocks with different block lengths, even if a third party tries to decrypt the encrypted data, the third party can guess the division position of the encrypted data. It is not possible. Furthermore, the block length is different, the order of the blocks is rearranged, and the fact that each block is encrypted with a different encryption key also makes it difficult for a third party to decrypt the encrypted data. In addition, since information regarding the block number is not included in the block, it becomes more difficult to decrypt the encrypted data of a third party.

<変形例>
上述の実施例は、以下のように変形されてもよい。
<Modification>
The embodiment described above may be modified as follows.

(1)上述において、暗号化装置11と復号化装置12は、それぞれ独自にシャッフル情報100を生成している。しかし、暗号化装置11は、生成したシャッフル情報100を暗号化し、暗号化データと一緒に復号化装置12へ送信してもよい。そして、復号化装置12は、その暗号化装置11から送信されたシャッフル情報100を用いて、暗号化データを元データに変換してもよい。これにより、復号化装置12は、自分でシャッフル情報100を生成する必要がなくなる。つまり、復号化装置12の処理負荷が軽減される。 (1) In the above description, the encryption device 11 and the decryption device 12 each independently generate shuffle information 100. However, the encryption device 11 may encrypt the generated shuffle information 100 and transmit it to the decryption device 12 together with the encrypted data. Then, the decryption device 12 may convert the encrypted data into the original data using the shuffle information 100 transmitted from the encryption device 11. This eliminates the need for the decoding device 12 to generate the shuffle information 100 by itself. That is, the processing load on the decoding device 12 is reduced.

(2)暗号化装置11は、暗号化データを外部記憶媒体(USBメモリ又はSDカード等)に出力する機能を有し、復号化装置12は、その外部記憶媒体から暗号化データを読み出して、元データを生成する機能を有してもよい。この場合、例えば、暗号化装置11は、自己のユーザ情報Iと生成した乱数rとを暗号化データと合わせて外部記憶媒体に出力する。そして、復号化装置12は、外部記憶媒体に格納されているユーザ情報Iと乱数rとを用いて、暗号化データを元データに変換する。 (2) The encryption device 11 has a function of outputting the encrypted data to an external storage medium (such as a USB memory or an SD card), and the decryption device 12 reads the encrypted data from the external storage medium, It may have a function of generating original data. In this case, for example, the encryption device 11 outputs its own user information I and the generated random number r together with the encrypted data to an external storage medium. Then, the decryption device 12 converts the encrypted data into the original data using the user information I and the random number r stored in the external storage medium.

(3)上記(2)の構成において、暗号化装置11は、生成したシャッフル情報100を暗号化して、暗号化データと共に外部記憶媒体へ出力してもよい。そして、復号化装置12は、その外部記憶媒体から読み出したシャッフル情報100を用いて、暗号化データを元データに変換してもよい。 (3) In the configuration of (2) above, the encryption device 11 may encrypt the generated shuffle information 100 and output it together with the encrypted data to an external storage medium. Then, the decryption device 12 may convert the encrypted data into the original data using the shuffle information 100 read from the external storage medium.

(4)上記(2)又は(3)の構成において、暗号化装置11は、1つの乱数rを用いて複数の暗号化データを生成した場合、その1つの乱数rと複数の暗号化データとをまとめて外部記憶媒体へ出力してもよい。そして、復号化装置12は、その外部記憶媒体から読み出した1つの乱数rを用いて、複数の暗号化データをそれぞれ元データに変換してもよい。 (4) In the configuration of (2) or (3) above, when the encryption device 11 generates a plurality of encrypted data using one random number r, the one random number r and the plurality of encrypted data May be collectively output to an external storage medium. Then, the decryption device 12 may convert a plurality of encrypted data into original data using one random number r read from the external storage medium.

(5)暗号鍵および復号鍵として用いられる共通鍵は、例えば、AES(Advanced Encryption Standard)、Triple DES(Data Encryption Standard)、RC4等の暗号アルゴリズムを用いて生成されてよい。 (5) The common key used as the encryption key and the decryption key may be generated using an encryption algorithm such as AES (Advanced Encryption Standard), Triple DES (Data Encryption Standard), or RC4.

(6)暗号鍵と復号鍵は、共通鍵でなく、何れか一方が「秘密鍵」で他方が「公開鍵」であってもよい。 (6) The encryption key and the decryption key may not be a common key, but one of them may be a “secret key” and the other a “public key”.

上述した本発明の実施例は、本発明の説明のための例示であり、本発明の範囲をそれらの実施例にのみ限定する趣旨ではない。当業者は、本発明の要旨を逸脱することなしに、他の様々な態様で本発明を実施することができる。   The above-described embodiments of the present invention are examples for explaining the present invention, and are not intended to limit the scope of the present invention only to those embodiments. Those skilled in the art can implement the present invention in various other modes without departing from the gist of the present invention.

1…暗号化システム 11…暗号化装置 12…復号化装置



DESCRIPTION OF SYMBOLS 1 ... Encryption system 11 ... Encryption apparatus 12 ... Decryption apparatus



Claims (6)

暗号化装置と復号化装置とを備える暗号化システムであって、
暗号化装置は、
元データを複数のブロックに分割した際の各々のブロックを示すブロック番号と、前記ブロック番号に対応するブロック長と、前記ブロック番号に対応するシャッフル番号と、前記ブロック番号に対応する鍵情報と、を含むブロック情報を生成するブロック情報生成部と、
前記元データを、ブロック番号の順番に、そのブロック番号に対応するブロック長で分割し、複数のブロックを生成する第1分割部と、
前記複数のブロックの各々を、そのブロック番号に対応する鍵情報を用いて暗号化し、複数の暗号化ブロックを生成する暗号化部と、
前記複数の暗号化ブロックを、シャッフル番号の順番に並び替えて結合し、暗号化データを生成する第1結合部と、を有し、
復号化装置は、
前記暗号化装置と同一のブロック情報を生成するブロック情報生成部と、
前記暗号化装置で生成された暗号化データを、シャッフル番号の順番に、そのシャッフル番号に対応するブロック長で分割し、複数の暗号化ブロックを生成する第2分割部と、
複数の暗号化ブロックの各々を、そのシャッフル番号に対応する鍵情報を用いて復号化し、複数の復号化ブロックを生成する復号化部と、
前記複数の復号化ブロックを、ブロック番号の順番に並び替えて結合し、前記元データを復元する第2結合部と、を有する
暗号化システム。
An encryption system comprising an encryption device and a decryption device,
The encryption device
A block number indicating each block when the original data is divided into a plurality of blocks, a block length corresponding to the block number, a shuffle number corresponding to the block number, and key information corresponding to the block number; A block information generation unit that generates block information including:
A first dividing unit that divides the original data in block number order by a block length corresponding to the block number, and generates a plurality of blocks;
An encryption unit that encrypts each of the plurality of blocks using key information corresponding to the block number, and generates a plurality of encrypted blocks;
A plurality of encrypted blocks that are rearranged in the order of shuffle numbers and combined to generate encrypted data;
The decryption device
A block information generation unit that generates the same block information as the encryption device;
A second dividing unit that divides the encrypted data generated by the encryption device in the order of shuffle numbers by a block length corresponding to the shuffle numbers, and generates a plurality of encrypted blocks;
A decryption unit that decrypts each of the plurality of encrypted blocks using key information corresponding to the shuffle number, and generates a plurality of decrypted blocks;
And a second combining unit that combines the plurality of decrypted blocks in the order of block numbers and restores the original data.
前記元データの分割数と、前記ブロック番号に対応する前記ブロック長と、前記ブロック番号に対応する前記シャッフル番号とは、所定の秘密情報と、前記元データに対応する乱数と、前記元データのデータ長とに基づいて一意に決定される
請求項1に記載の暗号化システム。
The number of divisions of the original data, the block length corresponding to the block number, and the shuffle number corresponding to the block number are predetermined secret information, a random number corresponding to the original data, and the original data The encryption system according to claim 1, wherein the encryption system is uniquely determined based on the data length.
前記暗号化装置は、前記元データに対応する乱数を、前記復号化装置へ送信し、
前記復号化装置における前記ブロック情報生成部は、前記暗号化装置から受信した前記元データに対応する乱数を用いて、前記元データに対応するブロック情報を生成する
請求項2に記載の暗号化システム。
The encryption device transmits a random number corresponding to the original data to the decryption device;
The encryption system according to claim 2, wherein the block information generation unit in the decryption device generates block information corresponding to the original data using a random number corresponding to the original data received from the encryption device. .
前記暗号化装置は、前記元データに対応する乱数と、前記第1結合部において生成された前記暗号化データとを、外部記憶媒体へ書き込み、
前記復号化装置における前記ブロック情報生成部は、前記外部記憶媒体から読み出した前記元データに対応する乱数を用いて、前記元データに対応するブロック情報を生成する
請求項2に記載の暗号化システム。
The encryption device writes a random number corresponding to the original data and the encrypted data generated in the first combining unit to an external storage medium,
3. The encryption system according to claim 2, wherein the block information generation unit in the decryption device generates block information corresponding to the original data using a random number corresponding to the original data read from the external storage medium. .
データの暗号化方法であって、
暗号化装置において、
元データを複数のブロックに分割した際の各々のブロックを示すブロック番号と、前記ブロック番号に対応するブロック長と、前記ブロック番号に対応するシャッフル番号と、前記ブロック番号に対応する鍵情報と、を含むブロック情報を生成し、
前記元データを、ブロック番号の順番に、そのブロック番号に対応するブロック長で分割し、複数のブロックを生成し、
前記複数のブロックの各々を、そのブロック番号に対応する鍵情報を用いて暗号化し、複数の暗号化ブロックを生成し、
前記複数の暗号化ブロックを、シャッフル番号の順番に並び替えて結合し、暗号化データを生成し、
復号化装置において、
前記暗号化装置と同一のブロック情報を生成し、
前記暗号化装置で生成された暗号化データを、シャッフル番号の順番に、そのシャッフル番号に対応するブロック長で分割し、複数の暗号化ブロックを生成し、
複数の暗号化ブロックの各々を、そのシャッフル番号に対応する鍵情報を用いて復号化し、複数の復号化ブロックを生成し、
前記複数の復号化ブロックを、ブロック番号の順番に並び替えて結合し、前記元データを復元する
データの暗号化方法。
A data encryption method,
In the encryption device,
A block number indicating each block when the original data is divided into a plurality of blocks, a block length corresponding to the block number, a shuffle number corresponding to the block number, and key information corresponding to the block number; Generate block information including
The original data is divided in block number order by a block length corresponding to the block number to generate a plurality of blocks,
Each of the plurality of blocks is encrypted using key information corresponding to the block number to generate a plurality of encrypted blocks,
Reordering and combining the plurality of encrypted blocks in the order of shuffle numbers to generate encrypted data;
In the decryption device,
Generate the same block information as the encryption device,
The encrypted data generated by the encryption device is divided in the order of shuffle numbers, with a block length corresponding to the shuffle numbers, to generate a plurality of encrypted blocks,
Each of the plurality of encrypted blocks is decrypted using the key information corresponding to the shuffle number to generate a plurality of decrypted blocks,
A data encryption method in which the plurality of decryption blocks are rearranged and combined in the order of block numbers to restore the original data.
データの暗号化に係るコンピュータプログラムであって、
暗号化装置において実行されると、
元データを複数のブロックに分割した際の各々のブロックを示すブロック番号と、前記ブロック番号に対応するブロック長と、前記ブロック番号に対応するシャッフル番号と、前記ブロック番号に対応する鍵情報と、を含むブロック情報を生成し、
前記元データを、ブロック番号の示す順番に、そのブロック番号に対応するブロック長で分割し、複数のブロックを生成し、
前記複数のブロックの各々を、そのブロック番号に対応する鍵情報を用いて暗号化し、複数の暗号化ブロックを生成し、
前記複数の暗号化ブロックの各々を、シャッフル番号の順番に並び替えて結合し、暗号化データを生成し、
復号化装置において実行されると、
前記暗号化装置と同一のブロック情報を生成し、
前記暗号化装置で生成された暗号化データを、シャッフル番号の順番に、そのシャッフル番号に対応するブロック長で分割し、複数の暗号化ブロックを生成し、
複数の暗号化ブロックの各々を、そのシャッフル番号に対応する鍵情報を用いて復号化し、複数の復号化ブロックを生成し、
前記複数の復号化ブロックを、ブロック番号の順番に並び替えて結合し、前記元データを復元する
コンピュータプログラム。


A computer program for data encryption,
When executed on the encryption device:
A block number indicating each block when the original data is divided into a plurality of blocks, a block length corresponding to the block number, a shuffle number corresponding to the block number, and key information corresponding to the block number; Generate block information including
The original data is divided in the order indicated by the block number by the block length corresponding to the block number, to generate a plurality of blocks,
Each of the plurality of blocks is encrypted using key information corresponding to the block number to generate a plurality of encrypted blocks,
Reordering and combining each of the plurality of encrypted blocks in the order of shuffle numbers to generate encrypted data;
When executed in the decryption device,
Generate the same block information as the encryption device,
The encrypted data generated by the encryption device is divided in the order of shuffle numbers, with a block length corresponding to the shuffle numbers, to generate a plurality of encrypted blocks,
Each of the plurality of encrypted blocks is decrypted using the key information corresponding to the shuffle number to generate a plurality of decrypted blocks,
A computer program that restores the original data by rearranging and combining the plurality of decoded blocks in the order of block numbers.


JP2013175191A 2013-08-27 2013-08-27 ENCRYPTION SYSTEM, ENCRYPTION METHOD, AND COMPUTER PROGRAM Expired - Fee Related JP5955285B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013175191A JP5955285B2 (en) 2013-08-27 2013-08-27 ENCRYPTION SYSTEM, ENCRYPTION METHOD, AND COMPUTER PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013175191A JP5955285B2 (en) 2013-08-27 2013-08-27 ENCRYPTION SYSTEM, ENCRYPTION METHOD, AND COMPUTER PROGRAM

Publications (2)

Publication Number Publication Date
JP2015045674A true JP2015045674A (en) 2015-03-12
JP5955285B2 JP5955285B2 (en) 2016-07-20

Family

ID=52671247

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013175191A Expired - Fee Related JP5955285B2 (en) 2013-08-27 2013-08-27 ENCRYPTION SYSTEM, ENCRYPTION METHOD, AND COMPUTER PROGRAM

Country Status (1)

Country Link
JP (1) JP5955285B2 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101748299B1 (en) * 2017-02-02 2017-06-19 주식회사 한국넷킹콜 IoT-Based Integrated Remote Restrooms Management System, IoT-Based Integrated Remote Management Server, and IoT-Based Integrated Remote Restrooms Management Method
KR20180084583A (en) * 2017-01-17 2018-07-25 인제대학교 산학협력단 Method and system for securing data based on multi-path tcp
JP2019079051A (en) * 2017-10-24 2019-05-23 大国創新智能科技(東莞)有限公司 Information secrecy method and system based upon big data, and information extraction method and system
WO2019123794A1 (en) * 2017-12-20 2019-06-27 Necプラットフォームズ株式会社 Bios setting automatic switching method, bios setting automatic switching device, and bios setting automatic switching program recording medium
KR20210087353A (en) * 2020-01-02 2021-07-12 재단법인대구경북과학기술원 System and Method for encryption/decription and channel-coding
CN115150201A (en) * 2022-09-02 2022-10-04 南通市艺龙科技有限公司 Remote encryption transmission method for cloud computing data
CN115438365A (en) * 2022-11-08 2022-12-06 山东捷瑞数字科技股份有限公司 File rapid encryption system and method based on digital twin
CN115529192A (en) * 2022-10-25 2022-12-27 武汉天翌数据科技发展有限公司 Method, device, equipment and storage medium for secure transmission of network data
CN117811734A (en) * 2024-02-29 2024-04-02 浙江金网信息产业股份有限公司 Service source code encryption storage and evaluation and authentication method

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62237834A (en) * 1986-04-09 1987-10-17 Hitachi Ltd Data ciphering device
JPH07281596A (en) * 1994-04-05 1995-10-27 Internatl Business Mach Corp <Ibm> Encrypting method and system
JPH10313306A (en) * 1997-05-13 1998-11-24 Oki Electric Ind Co Ltd Authentication device, ciphering device, decoding device and cipher communication system
JP2000059355A (en) * 1998-08-04 2000-02-25 Dainippon Printing Co Ltd Enciphering processing system
JP2001290707A (en) * 2000-04-05 2001-10-19 Kazumi Mochizuki Method and device for data processing and computer- readable storage medium with data processing program stored thereon
JP2004252888A (en) * 2003-02-21 2004-09-09 Ricoh Co Ltd Security printing program, security printing system and storage medium storing security printing program
JP2006292958A (en) * 2005-04-08 2006-10-26 Canon Inc Encryption device and decryption device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62237834A (en) * 1986-04-09 1987-10-17 Hitachi Ltd Data ciphering device
JPH07281596A (en) * 1994-04-05 1995-10-27 Internatl Business Mach Corp <Ibm> Encrypting method and system
JPH10313306A (en) * 1997-05-13 1998-11-24 Oki Electric Ind Co Ltd Authentication device, ciphering device, decoding device and cipher communication system
JP2000059355A (en) * 1998-08-04 2000-02-25 Dainippon Printing Co Ltd Enciphering processing system
JP2001290707A (en) * 2000-04-05 2001-10-19 Kazumi Mochizuki Method and device for data processing and computer- readable storage medium with data processing program stored thereon
JP2004252888A (en) * 2003-02-21 2004-09-09 Ricoh Co Ltd Security printing program, security printing system and storage medium storing security printing program
JP2006292958A (en) * 2005-04-08 2006-10-26 Canon Inc Encryption device and decryption device

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180084583A (en) * 2017-01-17 2018-07-25 인제대학교 산학협력단 Method and system for securing data based on multi-path tcp
KR102011193B1 (en) * 2017-01-17 2019-08-14 인제대학교 산학협력단 Method and system for securing data based on multi-path tcp
KR101748299B1 (en) * 2017-02-02 2017-06-19 주식회사 한국넷킹콜 IoT-Based Integrated Remote Restrooms Management System, IoT-Based Integrated Remote Management Server, and IoT-Based Integrated Remote Restrooms Management Method
JP2019079051A (en) * 2017-10-24 2019-05-23 大国創新智能科技(東莞)有限公司 Information secrecy method and system based upon big data, and information extraction method and system
WO2019123794A1 (en) * 2017-12-20 2019-06-27 Necプラットフォームズ株式会社 Bios setting automatic switching method, bios setting automatic switching device, and bios setting automatic switching program recording medium
JP2019109801A (en) * 2017-12-20 2019-07-04 Necプラットフォームズ株式会社 Bios setting automatic switching method, bios setting automatic switching device, and bios setting automatic switching program
KR20210087353A (en) * 2020-01-02 2021-07-12 재단법인대구경북과학기술원 System and Method for encryption/decription and channel-coding
KR102631694B1 (en) * 2020-01-02 2024-01-31 재단법인 대구경북과학기술원 System and Method for encryption/decription and channel-coding
CN115150201A (en) * 2022-09-02 2022-10-04 南通市艺龙科技有限公司 Remote encryption transmission method for cloud computing data
CN115150201B (en) * 2022-09-02 2022-11-08 南通市艺龙科技有限公司 Remote encryption transmission method for cloud computing data
CN115529192A (en) * 2022-10-25 2022-12-27 武汉天翌数据科技发展有限公司 Method, device, equipment and storage medium for secure transmission of network data
CN115438365A (en) * 2022-11-08 2022-12-06 山东捷瑞数字科技股份有限公司 File rapid encryption system and method based on digital twin
CN117811734A (en) * 2024-02-29 2024-04-02 浙江金网信息产业股份有限公司 Service source code encryption storage and evaluation and authentication method

Also Published As

Publication number Publication date
JP5955285B2 (en) 2016-07-20

Similar Documents

Publication Publication Date Title
JP5955285B2 (en) ENCRYPTION SYSTEM, ENCRYPTION METHOD, AND COMPUTER PROGRAM
JP5167374B2 (en) Data encryption device and memory card
KR101725847B1 (en) Master key encryption functions for transmitter-receiver pairing as a countermeasure to thwart key recovery attacks
KR101369748B1 (en) Method for encrypting datas and appatus therefor
RU2017131640A (en) CONFIDENTIAL COMMUNICATION MANAGEMENT
CN103488915B (en) The resource encryption decryption method of the double secret key encryption that a kind of software and hardware combines
JP2013243667A5 (en)
CN113259329A (en) Method and device for data inadvertent transmission, electronic equipment and storage medium
WO2019127265A1 (en) Blockchain smart contract-based data writing method, device and storage medium
JP2014175970A (en) Information distribution system, information processing device, and program
CN103152362A (en) Cloud-computing-based encrypted transmission method for large data files
JP2014085674A5 (en)
JP2009135890A5 (en)
Hazra et al. A hybrid cryptosystem of image and text files using blowfish and Diffie-Hellman techniques
KR101424972B1 (en) Method for using contents with a mobile card, host device, and mobile card
WO2010067660A1 (en) Communication apparatus, communication method and program
US20240048377A1 (en) Ciphertext conversion system, conversion key generation method, and non-transitory computer readable medium
JP6348273B2 (en) Information processing system
JP4287397B2 (en) Ciphertext generation apparatus, ciphertext decryption apparatus, ciphertext generation program, and ciphertext decryption program
JP2015022269A (en) Encryption device, decryption device, encryption method, decryption method, and program
JP5586758B1 (en) Dynamic encryption key generation system
US20170126399A1 (en) Encryption apparatus, storage system, decryption apparatus, encryption method, decryption method, and computer readable medium
JP2016139861A (en) Encryption device, encryption method and distribution system
WO2016181976A1 (en) Information transmitting device
JP7310938B2 (en) Encryption system, encryption method, decryption method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150825

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160525

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160614

R150 Certificate of patent or registration of utility model

Ref document number: 5955285

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees