JPH117239A - Cipher processor, cipher processing method and storage medium storing cipher processing program - Google Patents

Cipher processor, cipher processing method and storage medium storing cipher processing program

Info

Publication number
JPH117239A
JPH117239A JP10114009A JP11400998A JPH117239A JP H117239 A JPH117239 A JP H117239A JP 10114009 A JP10114009 A JP 10114009A JP 11400998 A JP11400998 A JP 11400998A JP H117239 A JPH117239 A JP H117239A
Authority
JP
Japan
Prior art keywords
data
block
processing
encryption
key
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
JP10114009A
Other languages
Japanese (ja)
Other versions
JP3035889B2 (en
Inventor
Motoji Omori
基司 大森
Natsume Matsuzaki
なつめ 松崎
Makoto Tatebayashi
誠 館林
Masakatsu Maruyama
征克 丸山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP10114009A priority Critical patent/JP3035889B2/en
Publication of JPH117239A publication Critical patent/JPH117239A/en
Application granted granted Critical
Publication of JP3035889B2 publication Critical patent/JP3035889B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a cipher processor improving safety without remarkably increasing a device scale and a processing time, etc. SOLUTION: This device is a data ciphering device 10 performing cipher processing specified by the key data and generating a ciphered message from a plain text, and is provided with a block storage part 102 storing the chain data to be used for affecting the former data to the later data and updating the chain data whenever the cipher processing is performed, a key data fusion part 103 fusing the chain data stored in the block storage part 102 to the key data and generating the fusion key data and the first - eight ciphering parts 105a-h performing the cipher processing based on the fusion key data, generating the ciphered message and outputting the middle data generated in a process until the ciphered message is generated. Then, the block storage part 102 updates the chain data stored in itself with the middle data outputted from the first - eight ciphering parts 105a-h as the new chain data to make them use to the next cipher processing.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、秘密鍵に基づい
て、被暗号処理データをブロック単位で暗号化又は復号
化する暗号処理装置、暗号処理方法、暗号処理プログラ
ムを記憶した記憶媒体であって、特に装置規模や処理時
間等を大幅に増大させることなく安全性を向上させる技
術に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a cryptographic processing apparatus, a cryptographic processing method, and a storage medium storing a cryptographic processing program for encrypting or decrypting encrypted data in block units based on a secret key. In particular, the present invention relates to a technique for improving safety without greatly increasing the scale of the apparatus, processing time, and the like.

【0002】[0002]

【従来の技術】近年、デジタル通信による送金やあらゆ
る情報の通信が普及してきたのに伴い、通信される重要
な情報を第三者による盗聴や改竄から守る、安全性を向
上させる為の技術への要求が高まっている。安全性を向
上させる為の有効な技術の1つに暗号(cryptog
raphy)がある。
2. Description of the Related Art In recent years, remittance by digital communication and communication of all kinds of information have become widespread, so that important information to be transmitted is protected from eavesdropping and tampering by a third party, and a technique for improving security is improved. The demand for is increasing. One of the effective technologies to improve security is cryptography.
raphy).

【0003】暗号を用いて通信するシステムにおいて
は、元の通信文を平文(plaintext)と呼び、
その意味内容が第三者に分かりにくい形に変換されたも
のを暗号文(cryptogram)と呼ぶ。また、こ
の変換を暗号化(encryption)と呼び、逆
に、暗号文を元の平文に復元する逆変換を復号化(de
cryption)と呼ぶ。
[0003] In a system that communicates using encryption, the original message is called plaintext.
The one whose meaning is converted into a form that is difficult for a third party to understand is called a cryptogram. Also, this conversion is called encryption, and conversely, the inverse conversion for restoring the ciphertext to the original plaintext is decrypted (decryption).
(cryption).

【0004】暗号化及び復号化の変換内容は、アルゴリ
ズム(algorithm)とそのパラメータとなる鍵
(key)によって特定される。アルゴリズムは複数の
変換から成る変換の族(family)を特定し、鍵は
その族のなかの1つの変換を特定する。通常、装置の固
定部分に対応するものがアルゴリズムであり、1つの装
置において時々取り替えられるものが鍵である。
[0004] The contents of conversion between encryption and decryption are specified by an algorithm and a parameter key. The algorithm identifies a family of transforms consisting of multiple transforms, and the key identifies one transform within that family. Usually, what corresponds to a fixed part of the device is an algorithm, and what is sometimes replaced in one device is a key.

【0005】暗号文は、盗聴(eavesdrop)さ
れることを前提としている。盗聴者等がアルゴリズムや
鍵の情報を持たずに平文等に復号しようとすることを、
暗号解読(cryptanalysis)という。暗号
解読しようとする者(以下、「暗号解読者(crypt
analyst)」という)は、暗号文は既知であると
いう前提で暗号解読を行なう。基本的に暗号文からのみ
秘密の平文や鍵を決定する解読法を、「暗号文単独攻撃
(ciphertext−only attack)」
という。また、いくつかの不特定な暗号文と平文のペア
から秘密の鍵を決定し、任意の暗号文に対応する平文を
決定する解読法を、「既知平文攻撃(known−pl
aintextattack)」という。
[0005] The ciphertext is assumed to be eavesdropped. The fact that an eavesdropper or the like attempts to decrypt into plain text without having algorithm or key information,
It is referred to as cryptoanalysis. A person attempting to decipher (hereinafter, referred to as “cryptanalyst (crypt
analyst) ") performs decryption on the assumption that the ciphertext is known. Basically, a ciphertext-only attack refers to a decryption method that determines a secret plaintext or key only from ciphertext.
That. Further, a decryption method of determining a secret key from a pair of unspecified ciphertexts and plaintexts and determining a plaintext corresponding to an arbitrary ciphertext is referred to as “known plaintext attack (known-pl).
aintextattack) ".

【0006】暗号の例の1つに、疑似乱数加算型暗号が
ある。
[0006] One example of encryption is pseudo-random number addition type encryption.

【0007】この暗号は、同一の鍵を送信者と受信者が
秘密に共有し、それぞれ同じアルゴリズムを持つ乱数発
生機を用いてこの鍵をシード(seed)として所定の
ビット数(以下、「ブロック」という)の乱数を発生さ
せ、送信者側による暗号化においては、ブロック単位
で、この乱数と平文とを、対応するビット毎に排他的論
理和の演算を行なうことによって暗号文を生成し、受信
者側による復号化においては、ブロック単位で、この乱
数と暗号文とを、対応するビット毎に排他的論理和の演
算を行なうことによって平文を生成する。
In this cipher, a sender and a receiver secretly share the same key, and use a random number generator having the same algorithm to set the key as a seed to a predetermined number of bits (hereinafter referred to as “block”). )), And in the encryption by the sender, a ciphertext is generated by performing an exclusive OR operation on the random number and the plaintext for each corresponding bit in block units, In decryption on the receiver side, a plaintext is generated by performing an exclusive OR operation on the random number and the ciphertext for each corresponding bit in block units.

【0008】ここで、ブロック単位の平文を「M」、ブ
ロック単位の暗号文を「C」、この乱数を「R」、対応
するビット毎の排他的論理和の演算を「(+)」とする
と、暗号化は以下の(式1)で、復号化は以下の(式
2)で表せる。 C=M(+)R ・・・(式1) M=C(+)R ・・・(式2)
Here, the plaintext in block units is “M”, the ciphertext in block units is “C”, the random number is “R”, and the exclusive OR operation for each corresponding bit is “(+)”. Then, encryption can be expressed by the following (Equation 1), and decryption can be expressed by the following (Equation 2). C = M (+) R (Equation 1) M = C (+) R (Equation 2)

【0009】この暗号の問題点は、「既知平文攻撃」に
非常に弱いことである。例えば、それぞれ1ブロックの
平文と暗号文のペアが既知であれば、以下の(式3)よ
り乱数Rが判明するので他の全ての平文を解読すること
ができる。 R=M(+)C ・・・(式3)
The problem with this encryption is that it is very vulnerable to "known plaintext attacks". For example, if a pair of a plaintext and a ciphertext of one block is known, the random number R is obtained from the following (Equation 3), so that all other plaintexts can be decrypted. R = M (+) C (Equation 3)

【0010】よって、暗号解読者は既知平文攻撃によっ
て、疑似乱数加算型暗号を非常に容易に解読することが
できる。既知平文攻撃によっても比較的容易に解読され
ない暗号の例に、DES(DataEncryption Standard)
やFEAL(Fast Data Encipherment Algorithm)があ
る。これらについては「暗号理論入門」(岡本栄司著:
共立出版発行)に詳しく述べられている。
[0010] Therefore, the cryptanalyst can very easily decrypt the pseudo-random number addition type cipher by the known plaintext attack. An example of a cipher that cannot be easily deciphered by a known plaintext attack is the DES (Data Encryption Standard).
And FEAL (Fast Data Encipherment Algorithm). These are described in "Introduction to Cryptography" (Eiji Okamoto:
Published by Kyoritsu Shuppan).

【0011】これらの暗号は、64ビットを1ブロック
とし、ブロック単位で強力にデータを撹乱する。例え
ば、DESのアルゴリズムは、転置(transpos
ion)と換字(substitution)を組み合
わせた処理を16段繰り返す。DESを、暗号解読や能
動的な不正行為に対して強くするために、暗号文ブロッ
ク連鎖方式(Cipher Block Chaining)(以下、略して
「CBCモー ド」という)が考案されている。CBC
モードは、「現代暗号理論」(池野信一,小山謙二著:
電子情報通信学会発行)p66〜67に詳しく述べられ
ている。
[0011] These ciphers make 64 bits one block, and strongly disturb data in block units. For example, the DES algorithm uses transpos
(ion) and substitution (substitution) are repeated 16 times. Cipher block chaining (Cipher Block Chaining) (hereinafter abbreviated as “CBC mode”) has been devised in order to make DES resistant to cryptanalysis and active fraud. CBC
The mode is “Modern Cryptography Theory” (Shinichi Ikeno, Kenji Koyama:
This is described in detail in pages 66-67 of the Institute of Electronics, Information and Communication Engineers.

【0012】図50は、CBCモードを実現する暗号化
装置30の構成を示す図である。暗号化装置30は、排
他的論理和部301、データ暗号化部302、レジスタ
303で構成される。レジスタ303は、直前に暗号化
した1ブロックの暗号文を保管する。なお、最初のブロ
ックを暗号化する際には1ブロックの初期値IV(In
itialValue)が設定されている。
FIG. 50 is a diagram showing a configuration of the encryption device 30 for realizing the CBC mode. The encryption device 30 includes an exclusive OR unit 301, a data encryption unit 302, and a register 303. The register 303 stores the ciphertext of one block encrypted immediately before. When the first block is encrypted, the initial value IV (In
initialValue) is set.

【0013】排他的論理和部301は、レジスタ303
が保管する直前の1ブロックの暗号文と次に暗号化すべ
き1ブロックの平文とを、対応するビット毎に排他的論
理和の演算を行ない、データ暗号化部302へ渡す。な
お、最初のブロックを暗号化する際には初期値IVと最
初の1ブロックの平文とを、対応するビット毎に排他的
論理和の演算を行なう。データ暗号化部302は、64
ビットの鍵データに基づいて、排他的論理和部301か
ら渡された64ビットのデータを、DESのアルゴリズ
ムで暗号化する。
The exclusive OR unit 301 includes a register 303
The exclusive-OR operation is performed for each block of the ciphertext of one block immediately before storage and the plaintext of one block to be encrypted next, and the result is passed to the data encryption unit 302. When the first block is encrypted, an exclusive OR operation is performed on the initial value IV and the plaintext of the first block for each corresponding bit. The data encryption unit 302
Based on the key data of bits, the 64-bit data passed from the exclusive OR unit 301 is encrypted by a DES algorithm.

【0014】この暗号化装置30は、ブロック単位で、
初期値IVと最初の1ブロックの平文とを、対応するビ
ット毎に排他的論理和の演算を行ない、64ビットの鍵
データに基づいて暗号化して1ブロックの暗号文を生成
し、更にこの暗号文と次のブロックの平文とを、対応す
るビット毎に排他的論理和の演算を行ない次の暗号化の
入力とする。
[0014] The encryption device 30 is a block unit.
An exclusive OR operation is performed on the initial value IV and the first block of plaintext for each corresponding bit, and encrypted based on the 64-bit key data to generate one block of ciphertext. The sentence and the plaintext of the next block are subjected to an exclusive OR operation for each corresponding bit, and are input to the next encryption.

【0015】ブロック単位の平文をMi、ブロック単位
の暗号文をCi(iはブロック番号:i=2,3,・・
・)とし、64ビットの鍵データをK、鍵データKを用
いた暗号化をEkとし、対応するビット毎の排他的論理
和の演算を「(+)」とすると、CBCモードは以下の
(式4)、(式5)で表せる。 C1=Ek(M1(+)IV) ・・・(式4) Ci=Ek(Mi(+)Ci−1)(i=2,3,・・・) ・・・(式5) CBCモードでは、各CiはCiより前の全ての暗号文
データに依存しているので、平文の統計的な特徴は攪乱
される。
The plaintext in block units is Mi, and the ciphertext in block units is Ci (i is the block number: i = 2, 3,...).
), The key data of 64 bits is K, the encryption using the key data K is Ek, and the exclusive OR operation for each corresponding bit is “(+)”. Equations 4) and 5 can be used. C1 = Ek (M1 (+) IV) (Equation 4) Ci = Ek (Mi (+) Ci-1) (i = 2, 3,...) (Equation 5) In the CBC mode Since each Ci depends on all ciphertext data before Ci, the statistical characteristics of the plaintext are disturbed.

【0016】よって、暗号解読や能動的な不正行為に対
して強くなっている。以上の様なDES、FEAL及び
DESにおけるCBCモード等の問題点は、アルゴリズ
ムが公になっており、鍵の長さが限られているので、
「既知平文攻撃」において、全ての鍵をしらみつぶしに
使って暗号化してみることにより、いつか必ず正しい鍵
が発見されることである。なお、DESの鍵の長さは、
前述のうに64ビットであるがパリティビットが8ビッ
ト有るため有効な長さは56ビットであり、鍵のとりう
る数は2の56乗個である。
[0016] Therefore, it is more resistant to decryption and active fraud. Problems such as CBC mode in DES, FEAL and DES as described above are because the algorithm is public and the key length is limited.
In the "known plaintext attack", the correct key is always discovered sometime by trying to encrypt using all the keys. The key length of DES is
As described above, since the parity bit is 64 bits but the parity bit is 8 bits, the effective length is 56 bits, and the possible number of keys is 2 to the 56th power.

【0017】DESのような56ビット程度の鍵の長さ
では、膨大なコストはかかるものの、現在の技術レベル
で総当たりによる解読が可能であろうという説がある。
しかし、独立な複数の鍵を用いて多重に暗号化すれば、
総当たりによる解読は現在の技術レベルでは不可能とな
る。しかしながら、コンピュータの処理能力が、この十
数年においてあまりにも急激な向上を遂げていることを
鑑みると、いかに多重に暗号化しようとも、今後総当た
りによる解読が可能となる日が来ないとは言い切れな
い。
It is theorized that, with a key length of about 56 bits such as DES, enormous costs are incurred, but brute force decryption will be possible at the current technology level.
However, if multiple encryption is performed using multiple independent keys,
Brute force decoding is not possible at the current technology level. However, given that computer processing power has improved so rapidly in the last decade or so, no matter how much encryption is used, it will not be possible to use brute force decryption in the future. could not say it all.

【0018】また、多重に暗号化すればするほど安全性
も向上するが、単純に従来の装置を多重に暗号化するよ
うに変更すると、装置規模や処理時間等が大幅に増大す
るので、あまり望ましくない。多重に暗号化することな
くCBCモード等の安全性を向上させる従来の技術は、
特開昭52−130504号公報(暗号処理装置)、特
公平8−12537号公報(暗号化装置)において開示
されている。前者は暗号文等の暗号処理結果に基づいて
次の暗号処理で用いる鍵データを更新する。後者は、予
め暗号鍵から複数の中間鍵を生成して記憶し、各中間鍵
を用いたビット変換をそれぞれ行うことにより生成した
各中間鍵更新情報に基づいて、各中間鍵をそれぞれ更新
する。
Further, the security is improved as the number of multiplexed encryptions is increased. However, if the conventional device is simply changed to the multiplexed encryption, the device scale and the processing time are greatly increased. Not desirable. The conventional technology for improving security such as CBC mode without multiple encryption is as follows.
It is disclosed in Japanese Patent Application Laid-Open No. Sho 52-130504 (encryption processing device) and Japanese Patent Publication No. 8-12537 (encryption device). The former updates key data used in the next encryption processing based on the result of encryption processing such as cipher text. In the latter, a plurality of intermediate keys are generated in advance from an encryption key and stored, and each intermediate key is updated based on each intermediate key update information generated by performing bit conversion using each intermediate key.

【0019】[0019]

【発明が解決しようとする課題】しかしながら、上記従
来の暗号処理装置等では、十分に安全性が確保されたと
はいいきれず、更なる安全性の向上が望まれている。そ
こで、本発明はかかる問題点に鑑みてなされたものであ
り、装置規模や処理時間等を大幅に増大させることな
く、安全性を向上させることができる暗号処理装置、暗
号処理方法、暗号処理プログラムを記憶した記憶媒体を
提供することを目的とする。
However, in the above-mentioned conventional cryptographic processing apparatus, etc., it cannot be said that sufficient security has been secured, and further improvement in security is desired. Therefore, the present invention has been made in view of such a problem, and a cryptographic processing apparatus, a cryptographic processing method, and a cryptographic processing program capable of improving security without significantly increasing the apparatus scale, processing time, and the like. It is an object of the present invention to provide a storage medium in which is stored.

【0020】[0020]

【課題を解決するための手段】上記目的を達成するため
に、本発明に係る暗号処理装置は、入力データに基づい
て暗号処理を施して出力データを生成する暗号処理装置
であって、前のデータの影響を後のデータに及ぼす為に
用いる連鎖データを記憶し暗号処理を施す毎にその連鎖
データを更新する記憶手段と、記憶手段が記憶する連鎖
データを入力データに融合して融合データを生成する融
合手段と、融合データに基づいて主暗号処理を施して出
力データを生成し出力データを生成するまでの過程にお
いて生成される中間データを出力する主暗号処理手段と
を備え、記憶手段は主暗号処理手段が出力する中間デー
タを新たな連鎖データとして自身が記憶する連鎖データ
を更新し次の暗号処理に供させることを特徴としてい
る。
In order to achieve the above object, an encryption processing apparatus according to the present invention is an encryption processing apparatus that performs encryption processing based on input data to generate output data. Storage means for storing chain data used to exert the influence of the data on subsequent data and updating the chain data each time encryption processing is performed; and merging the chain data stored in the storage means with the input data to generate the merged data. Fusion means for generating, and main encryption processing means for performing intermediate encryption processing based on the fusion data, generating output data, and outputting intermediate data generated in the process of generating output data, wherein the storage means It is characterized in that the intermediate data output from the main encryption processing means is updated as chain data stored therein as new chain data, and is used for the next encryption process.

【0021】この構成によれば、暗号処理を施す過程に
おいて生成される中間データを連鎖データとして記憶
し、後の暗号処理の際に鍵データ、又は、被暗号処理デ
ータ等の入力データに融合し、暗号処理を施す度にその
連鎖データを更新するので、各出力データは自身よりも
前の全てのデータに依存することになり、平文の統計的
な特徴は各連鎖データによって攪乱され、装置規模や処
理時間等をさほど増大させていないにもかかわらず暗号
解読が難しくなる。また、暗号解読者は、暗号文と平文
のペアを入手することはできたとしても、暗号処理に用
いられた連鎖データを入手することは事実上不可能であ
り、さらに、連鎖データを生成するアルゴリズムや連鎖
データの初期値は非公開なので、「既知平文攻撃」によ
る暗号解読はさらに難しくなり、総当たりによる解読も
困難である。よって、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
According to this configuration, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is merged with the input data such as the key data or the data to be encrypted in the subsequent encryption process. Since each time the cryptographic process is performed, the chain data is updated, each output data depends on all the data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the size of the device is reduced. Decryption becomes difficult even though the processing time and the like are not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force. Therefore, the safety can be improved without significantly increasing the device scale, the processing time, and the like.

【0022】[0022]

【発明の実施の形態】BEST MODE FOR CARRYING OUT THE INVENTION

(実施の形態1)本発明の実施の形態1は、鍵データに
より特定される暗号化処理又は復号化処理(暗号化処理
又は復号化処理を共に「暗号処理」と呼ぶ)を施して、
平文データから暗号文データを生成する暗号化装置と暗
号文データから平文データを生成する復号化装置(暗号
化装置又は復号化装置を共に「被暗号処理データから出
力データを生成する暗号処理装置」と呼ぶ)であって、
ブロック単位で暗号処理を施す度に1ブロックの出力デ
ータを生成するまでの暗号処理を施す過程において生成
される中間ブロックを連鎖ブロックとして記憶し、次の
ブロックの暗号処理を施す際に記憶している連鎖ブロッ
クを鍵データに融合する暗号処理装置である。
(Embodiment 1) Embodiment 1 of the present invention performs an encryption process or a decryption process specified by key data (both encryption and decryption processes are referred to as “encryption processes”).
An encryption device that generates ciphertext data from plaintext data and a decryption device that generates plaintext data from ciphertext data (both encryption devices and decryption devices are referred to as “cipher processing devices that generate output data from data to be encrypted”). )
Each time an encryption process is performed on a block basis, an intermediate block generated in the process of performing the encryption process until one block of output data is generated is stored as a chain block, and stored when the next block is encrypted. This is a cryptographic processing device that fuses a chained block into key data.

【0023】<構成> (暗号通信システムの構成)図1は、本発明の実施の形
態1における暗号通信システムの構成を示す図である。
この暗号通信システムは、平文データを暗号化して送信
する送信機1及び暗号文データを受信して復号する受信
機2から構成される。なお、送信機1から受信機2へ暗
号文データを伝送する伝送路3を同じ図上に示す。送信
機1は、図1に示すように、データ暗号化装置10及び
送信部11を備える。
<Configuration> (Configuration of Cryptographic Communication System) FIG. 1 is a diagram showing a configuration of a cryptographic communication system according to the first embodiment of the present invention.
This cipher communication system includes a transmitter 1 for encrypting and transmitting plaintext data and a receiver 2 for receiving and decrypting ciphertext data. The transmission path 3 for transmitting ciphertext data from the transmitter 1 to the receiver 2 is shown on the same figure. The transmitter 1 includes a data encryption device 10 and a transmission unit 11, as shown in FIG.

【0024】データ暗号化装置10は、平文データを入
手し、予め設定された鍵データに基づいて、所定数のビ
ットから成るブロック毎に、所定のアルゴリズムに従い
暗号化することにより、入手した平文データから暗号文
データを生成する。ここで用いた鍵データは予め送信機
1と受信機2とが秘密に共有するものであり、所定のア
ルゴリズムは装置固有のもので、変換の族(famil
y)を特定し、この鍵データによってその族のなかの1
つの変換が特定される。また平文データは、音声、画像
情報及び文字コード等をディジタル符号化したディジタ
ル情報である。ここでは、所定数のビットから成る1ブ
ロックを、例えば64ビットとして説明する。送信部1
1は、暗号文データを変調し増幅等を施した送信データ
を伝送路3に送出する。受信機2は、図1に示すよう
に、データ復号化装置20及び受信部21を備える。
The data encryption device 10 obtains the plaintext data by encrypting each block of a predetermined number of bits according to a predetermined algorithm based on preset key data. Generate ciphertext data from The key data used here is secretly shared between the transmitter 1 and the receiver 2 in advance, the predetermined algorithm is device-specific, and the conversion family (famil) is used.
y), and this key data identifies one of the family
Two transformations are specified. The plaintext data is digital information obtained by digitally encoding voice, image information, character codes, and the like. Here, one block composed of a predetermined number of bits will be described as, for example, 64 bits. Transmission unit 1
1 transmits to the transmission line 3 transmission data obtained by modulating and amplifying ciphertext data. The receiver 2 includes a data decoding device 20 and a receiving unit 21 as shown in FIG.

【0025】受信部21は、伝送路3を介して送信デー
タを受信し、復調等を施した暗号文データをデータ復号
化装置20に渡す。データ復号化装置20は、鍵データ
に基づいて、ブロック毎に所定のアルゴリズムに従い復
号化することにより、暗号文データから平文データを生
成する。 (データ暗号化装置10の構成)図2は、本発明の実施
の形態1における図1に示すデータ暗号化装置10の詳
細な構成を示す図である。
The receiving section 21 receives the transmission data via the transmission path 3 and passes the demodulated ciphertext data to the data decryption device 20. The data decryption device 20 generates plaintext data from ciphertext data by decrypting each block according to a predetermined algorithm based on the key data. (Configuration of Data Encryption Device 10) FIG. 2 is a diagram showing a detailed configuration of the data encryption device 10 shown in FIG. 1 according to the first embodiment of the present invention.

【0026】このデータ暗号化装置10は、ブロック分
割部101、ブロック記憶部102、鍵データ融合部1
03、部分鍵生成部104、第1〜8暗号化部105a
〜105h、端数データ処理部106及びブロック結合
部107で構成される。図50に示す従来の暗号化装置
30と図2に示す本発明の実施の形態1におけるデータ
暗号化装置10との関係は、排他的論理和部301は鍵
データ融合部103と対応し、データ暗号化部302は
ブロック分割部101、部分鍵生成部104、第1〜8
暗号化部105a〜105h、端数データ処理部106
及びブロック結合部107と対応し、レジスタ303は
ブロック記憶部102と対応する。
The data encryption device 10 includes a block division unit 101, a block storage unit 102, a key data fusion unit 1
03, partial key generation unit 104, first to eighth encryption units 105a
105h, a fraction data processing unit 106 and a block combining unit 107. The relationship between the conventional encryption device 30 shown in FIG. 50 and the data encryption device 10 according to the first embodiment of the present invention shown in FIG. 2 is such that the exclusive OR unit 301 corresponds to the key data fusion unit 103, The encryption unit 302 includes a block division unit 101, a partial key generation unit 104,
Encryption units 105a to 105h, fraction data processing unit 106
The register 303 corresponds to the block storage unit 102.

【0027】ブロック分割部101は、入手した平文デ
ータを64ビットから成る平文データの1ブロック(以
下、「平文ブロック」と言う)単位に分割して、順番に
第1暗号化部105aへ渡し、最後に64ビットに満た
ない端数平文データが生じた場合は、その端数平文デー
タを端数データ処理部106へ渡す。ここでは、一例と
して、200ビットの平文データを入手して、先頭から
1〜64ビットの第1平文ブロック、65〜128ビッ
トの第2平文ブロック、129〜192ビットの第3平
文ブロック及び193〜200ビットの端数平文データ
に分割し、順番に第1〜3平文ブロックを第1暗号化部
105aへ、端数平文データを端数データ処理部106
へ渡すものとする。
The block dividing unit 101 divides the obtained plaintext data into units of 64-bit plaintext data (hereinafter, referred to as "plaintext blocks"), and sequentially passes them to the first encryption unit 105a. Finally, when fraction plaintext data of less than 64 bits is generated, the fraction plaintext data is passed to the fraction data processing unit 106. Here, as an example, 200-bit plaintext data is obtained, a first plaintext block of 1 to 64 bits from the beginning, a second plaintext block of 65 to 128 bits, a third plaintext block of 129 to 192 bits, and 193 to 193 bits. The first to third plaintext blocks are sequentially divided into 200-bit fractional plaintext data, and the fractional plaintext data is fractionally processed to the fractional data processing unit 106.
Shall be passed to

【0028】ブロック記憶部102は、ブロック分割部
101が分割した各ブロックを処理する際に、前のブロ
ックの影響を後のブロックに及ぼす為に用いる連鎖ブロ
ックを記憶する。なお、最初のブロックを処理する際に
は、予め連鎖ブロックの初期値IVが記憶される。
The block storage unit 102 stores a chain block used to apply the influence of the preceding block to the succeeding block when processing each block divided by the block dividing unit 101. When processing the first block, the initial value IV of the chained block is stored in advance.

【0029】鍵データ融合部103は、ブロック記憶部
102に記憶された連鎖ブロックを、鍵データに融合し
融合鍵データを生成する。ここでは、予め設定された6
4ビットの鍵データを入手し、第1平文ブロックを処理
する際には、64ビットの連鎖ブロックの初期値IVと
64ビットの鍵データとを、対応するビット毎に排他的
論理和の演算を行ない、第2〜3平文ブロックを処理す
る際には、第1〜2平文ブロックの処理の際に生成され
た64ビットの連鎖ブロックと64ビットの鍵データと
を、対応するビット毎に排他的論理和の演算を行なう。
The key data fusion unit 103 fuses the chained blocks stored in the block storage unit 102 with key data to generate fusion key data. Here, the preset 6
When 4-bit key data is obtained and the first plaintext block is processed, an exclusive OR operation is performed on the initial value IV of the 64-bit chain block and the 64-bit key data for each corresponding bit. When processing the second and third plaintext blocks, the 64-bit chain block generated during the processing of the first and second plaintext blocks and the 64-bit key data are exclusively processed for each corresponding bit. Performs OR operation.

【0030】部分鍵生成部104は、鍵データ融合部1
03が生成した融合鍵データから、暗号化部の数に相当
する数の部分鍵を生成する。ここでは、64ビットの融
合鍵データから48ビットの部分鍵を8個生成する。
The partial key generation unit 104 includes a key data fusion unit 1
03 generates partial keys corresponding to the number of encryption units from the fusion key data generated. Here, eight 48-bit partial keys are generated from the 64-bit fusion key data.

【0031】第1暗号化部105aは、第1の部分鍵に
基づいて、平文ブロックから第1中間ブロックを生成す
る。第2〜7暗号化部105b〜105gは、それぞれ
第2〜7の部分鍵に基づいて、第1〜6中間ブロックか
ら第2〜7中間ブロックを生成する。
The first encryption unit 105a generates a first intermediate block from a plaintext block based on the first partial key. The second to seventh encryption units 105b to 105g generate the second to seventh intermediate blocks from the first to sixth intermediate blocks based on the second to seventh partial keys, respectively.

【0032】第8暗号化部105hは、第8の部分鍵に
基づいて、第7中間ブロックから暗号文データの1ブロ
ック(以下、「暗号文ブロック」と言う)を生成する。
第1〜8暗号化部105a〜105hは、全て同じ構造
を持ち、48ビットの部分鍵により特定された変換によ
り、64ビットの入力の内の下位32ビットを用いて上
位32ビットを変換し、上位32ビットと下位32ビッ
トを入れ替える変換をそれぞれ直列に行ない、この変換
を合計で8段行なう。ここでは、第1〜3平文ブロック
から、それぞれに対応する第1〜7中間ブロックと、第
1〜3暗号文ブロックとを生成する。
The eighth encryption unit 105h generates one block of ciphertext data (hereinafter, referred to as "ciphertext block") from the seventh intermediate block based on the eighth partial key.
The first to eighth encryption units 105a to 105h all have the same structure, and convert the upper 32 bits using the lower 32 bits of the 64-bit input by the conversion specified by the 48-bit partial key, Conversions for exchanging the upper 32 bits and the lower 32 bits are respectively performed in series, and this conversion is performed in a total of eight stages. Here, the first to seventh intermediate blocks and the first to third ciphertext blocks respectively corresponding to the first to third plaintext blocks are generated.

【0033】図3は、第1〜8暗号化部105a〜10
5hの詳細な構成を示す図である。
FIG. 3 shows the first to eighth encrypting units 105a to 105a.
It is a figure which shows the detailed structure of 5h.

【0034】64ビットの平文ブロックは、上位32ビ
ットと下位32ビットに分割され、これらの上位をH
0、下位をL0とし、第n暗号化部の入力を{H(n−
1),L(n−1)}、出力を(Hn,Ln)とする
と、Hn、Lnは以下の(式6)、(式7)で表され
る。 Hn=L(n−1) ・・・(式6) Ln=H(n−1)(+)f{L(n−1)、Kn} ・・・(式7)
The 64-bit plaintext block is divided into upper 32 bits and lower 32 bits.
0, the lower order is L0, and the input of the n-th encryption unit is ΔH (n−
1), L (n-1)}, and assuming that the output is (Hn, Ln), Hn and Ln are represented by the following (Equation 6) and (Equation 7). Hn = L (n-1) (Equation 6) Ln = H (n-1) (+) f {L (n-1), Kn} (Equation 7)

【0035】ここで、「(+)」は対応するビット毎の
排他的論理和の演算を意味し、「Kn」は第n暗号化部
に入力される48ビットの部分鍵であり、「f」はL
(n−1)とKnを用いて32ビットのデータを出力す
る関数である。図4は、関数「f」を計算する部分の詳
細な構成を示す図である。
Here, “(+)” means an exclusive OR operation for each corresponding bit, “Kn” is a 48-bit partial key input to the n-th encryption unit, and “f” Is L
This is a function that outputs 32-bit data using (n-1) and Kn. FIG. 4 is a diagram showing a detailed configuration of a part for calculating the function “f”.

【0036】32ビットのL(n−1)は以下の(表
1)に示す拡大転置Eによって、48ビットに拡大され
て並びかえられる。
The 32-bit L (n-1) is expanded to 48 bits and rearranged by an expansion transposition E shown in (Table 1) below.

【0037】表中の数値は入力ビットが置き換わる新た
なビット位置を示しており、例えば、入力の32ビット
目は出力の第1ビット目と第47ビット目に、入力の1
ビット目は出力の第2ビット目と第48ビット目に置き
換えられる。
The numerical values in the table indicate the new bit positions at which the input bits are replaced. For example, the 32nd bit of the input is the 1st and 47th bits of the output, and the 1st bit of the input is
The bit is replaced by the second bit and the 48th bit of the output.

【0038】この48ビットと、48ビットの部分鍵K
nとを対応するビット毎に排他的論理和EXORの演算
を行ない、その結果を、さらに、6ビットずつ8組に分
割して、選択関数S1〜S8の8個にそれぞれ入力す
る。
The 48 bits and the 48-bit partial key K
The exclusive OR EXOR operation is performed for each bit corresponding to n, and the result is further divided into eight sets of 6 bits each and input to eight selection functions S1 to S8.

【0039】選択関数S1〜S8(Sボックスとも言
う)は、6ビットを入力し4ビットを出力する関数であ
り、その処理内容は換字表で表せる。図5は、選択関数
S1〜S8の換字表を示す図である。
The selection functions S1 to S8 (also called S boxes) are functions for inputting 6 bits and outputting 4 bits, and the processing contents can be represented by a substitution table. FIG. 5 is a diagram showing a substitution table of the selection functions S1 to S8.

【0040】1つの選択関数には、0〜15までの数字
が64個あり、4行16列に並んでいる。入力される6
ビットの内の最初と最後のビットが、この換字表の行を
特定し、最初と最後を除く4ビットが列を特定する。
One selection function has 64 numbers from 0 to 15, arranged in 4 rows and 16 columns. Input 6
The first and last bits of the bits identify the row of the substitution table, and the four bits except the first and last identify the columns.

【0041】例えば、選択関数S1に「011011」
を入力すると、最初のビット「0」と、最後のビット
「1」から、2行目と特定し、最初と最後を除く4ビッ
ト「1101」から、14列目と特定する。そして、選
択関数S1の換字表の2行14列が「5」なので、「0
101」を出力する。
For example, "011011" is added to the selection function S1.
Is input, the second row is specified from the first bit “0” and the last bit “1”, and the fourteenth bit is specified from the four bits “1101” excluding the first and last bits. Then, since the 2nd row and 14th column of the substitution table of the selection function S1 are “5”, “0”
101 "is output.

【0042】8個の選択関数S1〜S8が出力する合計
32ビット(4ビット×8=32ビット)の出力は以下
の(表2)に示す転置Pを行ない「f{L(n−1)、
Kn}」の出力となる。
The outputs of a total of 32 bits (4 bits × 8 = 32 bits) output from the eight selection functions S1 to S8 are subjected to the transposition P shown in (Table 2) below to obtain “f {L (n−1) ,
Kn #}.

【0043】表中の数値は入力ビットが置き換わる新た
なビット位置を示しており、例えば、入力の16ビット
目は出力の第1ビット目に、入力の7ビット目は出力の
第2ビット目に置き換えられる。
The numerical values in the table indicate the new bit positions at which the input bits are replaced. For example, the 16th bit of the input is the first bit of the output, and the 7th bit of the input is the second bit of the output. Be replaced.

【0044】ブロック記憶部102はブロック更新機能
を備え、第4暗号化部105dが第4中間ブロックを生
成する度に、この第4中間ブロックを新たな連鎖ブロッ
クとして記憶している連鎖ブロックを更新し、次のブロ
ックを処理する際に用いる。ここでは、予め64ビット
の初期値IVが記憶され、この初期値IVが第1平文ブ
ロックを処理する際に用いられ、この処理の際に生成さ
れた第4中間ブロックを新たな連鎖ブロックとして更新
する。次に、第1平文ブロックの処理の際に更新した連
鎖ブロックが第2平文ブロックを処理する際に用いら
れ、この処理の際に生成された第4中間ブロックを新た
な連鎖ブロックとして更新する。次に、第2平文ブロッ
クの処理の際に更新した連鎖ブロックが第3平文ブロッ
クを処理する際に用いられ、この処理の際に生成された
第4中間ブロックを新たな連鎖ブロックとして更新す
る。最後に、第3平文ブロックの処理の際に更新した連
鎖ブロックが端数平文データを処理する際に用いられ
る。
The block storage unit 102 has a block updating function. Each time the fourth encryption unit 105d generates a fourth intermediate block, the fourth intermediate unit updates the chained block storing the fourth intermediate block as a new chained block. Then, it is used when processing the next block. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first plaintext block, and the fourth intermediate block generated during this processing is updated as a new chain block. I do. Next, the chain block updated in the processing of the first plaintext block is used in processing the second plaintext block, and the fourth intermediate block generated in this processing is updated as a new chain block. Next, the chain block updated in the processing of the second plaintext block is used in processing the third plaintext block, and the fourth intermediate block generated in this process is updated as a new chain block. Finally, the chain block updated during the processing of the third plaintext block is used when processing the fractional plaintext data.

【0045】端数データ処理部106は、ブロック分割
部101から端数平文データを受け取り、ブロック記憶
部102に記憶された連鎖ブロックに基づいて、端数平
文データから端数平文データと同じビット数の端数暗号
文データを生成するものであり、データ整合部106a
及び端数データ融合部106bを含む。
The fraction data processing unit 106 receives the fraction plaintext data from the block division unit 101 and, based on the chained blocks stored in the block storage unit 102, converts the fraction plaintext data into a fraction ciphertext having the same bit number as the fraction plaintext data. The data is generated by the data matching unit 106a.
And a fraction data fusion unit 106b.

【0046】図6は、本発明の実施の形態1における図
2に示す端数データ処理部106の詳細な構成を示す図
である。データ整合部106aは、ブロック記憶部10
2に記憶された連鎖ブロックから、端数平文データと同
じビット数の端数連鎖データを生成する。ここでは、端
数平文データが8ビットなので、ブロック記憶部102
に記憶された連鎖ブロックの、例えば上位8ビットで構
成される端数連鎖データを生成する。
FIG. 6 is a diagram showing a detailed configuration of the fraction data processing unit 106 shown in FIG. 2 according to the first embodiment of the present invention. The data matching unit 106 a
From the chained blocks stored in 2, fraction chained data having the same bit number as the fractional plaintext data is generated. Here, since the fractional plaintext data is 8 bits, the block storage unit 102
In this case, fractional chain data composed of, for example, upper 8 bits of the chained block stored in is generated.

【0047】端数データ融合部106bは、端数連鎖デ
ータを端数平文データに融合する。ここでは、8ビット
の端数連鎖データと8ビットの端数平文データとを、対
応するビット毎に排他的論理和の演算を行ない、8ビッ
トの端数暗号文データを生成する。
The fraction data fusion unit 106b fuses the fraction chain data into the fraction plaintext data. Here, an exclusive OR operation is performed on the 8-bit fraction chain data and the 8-bit fraction plaintext data for each corresponding bit to generate 8-bit fraction ciphertext data.

【0048】ブロック結合部107は、第8暗号化部1
05hが生成した各暗号文ブロック及び端数データ処理
部106が生成した端数暗号文データを結合して暗号文
データを生成する。ここでは、各64ビットの第1〜3
暗号文ブロック及び8ビットの端数暗号文データを結合
して200ビットの暗号文データを生成する。
The block combining section 107 is connected to the eighth encrypting section 1
Each ciphertext block generated by 05h and the fraction ciphertext data generated by the fraction data processing unit 106 are combined to generate ciphertext data. Here, the first to third bits of each 64 bits are used.
The ciphertext block and the 8-bit fractional ciphertext data are combined to generate 200-bit ciphertext data.

【0049】なお、ブロック記憶部102は、連鎖ブロ
ックを第4暗号化部105dが生成した第4中間ブロッ
クに更新したが、これはほんの一例であり、処理の過程
で生成した中間ブロックならどれであってもよいので、
第1〜7暗号化部105a〜105gが生成した第1〜
7中間ブロックの内の別の1個に更新するものであって
もよい。
The block storage unit 102 updates the chained block to the fourth intermediate block generated by the fourth encryption unit 105d, but this is only an example, and any intermediate block generated in the process of processing is used. Since there may be
The first to seventh generated by the first to seventh encryption units 105a to 105g
It may be updated to another one of the seven intermediate blocks.

【0050】(データ復号化装置20の構成)図7は、
本発明の実施の形態1における図1に示すデータ復号化
装置20の詳細な構成を示す図である。このデータ復号
化装置20は、ブロック分割部201、ブロック記憶部
202、鍵データ融合部203、部分鍵生成部204、
第1〜8復号化部205a〜205h、端数データ処理
部206及びブロック結合部207で構成される。
(Configuration of Data Decoding Apparatus 20) FIG.
FIG. 2 is a diagram illustrating a detailed configuration of the data decoding device 20 illustrated in FIG. 1 according to Embodiment 1 of the present invention. The data decryption device 20 includes a block division unit 201, a block storage unit 202, a key data fusion unit 203, a partial key generation unit 204,
It comprises first to eighth decoding units 205a to 205h, a fraction data processing unit 206, and a block combining unit 207.

【0051】図50に示す暗号化装置30と図7に示す
データ復号化装置20との関係は、排他的論理和部30
1は鍵データ融合部203と対応し、データ暗号化部3
02はブロック分割部201、部分鍵生成部204、第
1〜8復号化部205a〜205h、端数データ処理部
206及びブロック結合部207と対応し、レジスタ3
03はブロック記憶部202と対応する。
The relationship between the encryption device 30 shown in FIG. 50 and the data decryption device 20 shown in FIG.
1 corresponds to the key data fusion unit 203 and the data encryption unit 3
Reference numeral 02 corresponds to the block division unit 201, the partial key generation unit 204, the first to eighth decryption units 205a to 205h, the fraction data processing unit 206, and the block combination unit 207.
03 corresponds to the block storage unit 202.

【0052】ブロック分割部201は、入手した暗号文
データを64ビットから成るブロックに分割して第1復
号化部205aへ渡し、最後に64ビットに満たない端
数暗号文データが生じた場合は、その端数暗号文データ
を端数データ処理部206へ渡す。ここでは、一例とし
て、200ビットの暗号文データを入手して、先頭から
1〜64ビットの第1暗号文ブロック、65〜128ビ
ットの第2暗号文ブロック、129〜192ビットの第
3暗号文ブロック及び193〜200ビットの端数暗号
文データに分割し、第1〜3暗号文ブロックを第1復号
化部205aへ、端数暗号文データを端数データ処理部
206へ渡すものとする。
The block dividing unit 201 divides the obtained ciphertext data into blocks each having 64 bits and transfers the block to the first decryption unit 205a. If fractional ciphertext data of less than 64 bits is generated at the end, The fraction ciphertext data is passed to the fraction data processing unit 206. Here, as an example, 200-bit ciphertext data is obtained, a first ciphertext block of 1 to 64 bits from the beginning, a second ciphertext block of 65 to 128 bits, and a third ciphertext of 129 to 192 bits. It is divided into blocks and fractional ciphertext data of 193 to 200 bits, and the first to third ciphertext blocks are passed to the first decryption unit 205a, and the fractional ciphertext data is passed to the fraction data processing unit 206.

【0053】ブロック記憶部202は、ブロック分割部
201が分割した各ブロックを処理する際に、前のブロ
ックの影響を及ぼす為に用いる連鎖ブロックを記憶す
る。なお、最初のブロックを処理する際には、予め連鎖
ブロックの初期値IVが記憶される。また、この初期値
IVはデータ暗号化装置10で用いたのもと同一のもの
である。ある平文データの暗号化に用いた初期値IV
と、その平文データに対応する暗号文データの復号化に
用いる初期値IVとは同一である。
The block storage unit 202 stores a chain block used to influence the previous block when processing each block divided by the block division unit 201. When processing the first block, the initial value IV of the chained block is stored in advance. The initial value IV is the same as that used in the data encryption device 10. Initial value IV used to encrypt certain plaintext data
And the initial value IV used for decrypting the ciphertext data corresponding to the plaintext data.

【0054】鍵データ融合部203は、ブロック記憶部
202に記憶された連鎖ブロックを、鍵データに融合し
融合鍵データを生成する。なお、この融合は、データ暗
号化装置10の鍵データ融合部103が行なう融合と同
一である。また、この鍵データはデータ暗号化装置10
で用いたのもと同一のものである。ある平文データの暗
号化に用いた鍵データと、その平文データに対応する暗
号文データの復号化に用いる鍵データとは同一である。
ここでは、予め設定された64ビットの鍵データを入手
し、第1暗号文ブロックを処理する際には、64ビット
の連鎖ブロックの初期値IVと64ビットの鍵データと
を、対応するビット毎に排他的論理和の演算を行ない、
第2〜3暗号文ブロックを処理する際には、第1〜2暗
号文ブロックの処理の際に生成された64ビットの連鎖
ブロックと64ビットの鍵データとを、対応するビット
毎に排他的論理和の演算を行なう。
The key data fusion unit 203 fuses the chained blocks stored in the block storage unit 202 with key data to generate fusion key data. This fusion is the same as the fusion performed by the key data fusion unit 103 of the data encryption device 10. This key data is stored in the data encryption device 10.
It is the same as used in. The key data used for encrypting certain plaintext data and the key data used for decrypting ciphertext data corresponding to the plaintext data are the same.
Here, a predetermined 64-bit key data is obtained, and when the first ciphertext block is processed, the initial value IV of the 64-bit chain block and the 64-bit key data are converted into the corresponding bits for each corresponding bit. Perform exclusive OR operation on
When processing the second and third ciphertext blocks, the 64-bit chain block and the 64-bit key data generated during the processing of the first and second ciphertext blocks are exclusively processed for each corresponding bit. Performs OR operation.

【0055】部分鍵生成部204は、鍵データ融合部2
03が生成した融合鍵データから、復号化部の数に相当
する数の部分鍵を生成する。ここでは、64ビットの融
合鍵データから48ビットの部分鍵を8個生成する。な
お、この部分鍵を生成する機能は、データ暗号化装置1
0の部分鍵生成部104が行なうそれと全く同一であ
る。
The partial key generation unit 204 includes a key data fusion unit 2
03 generates partial keys corresponding to the number of decryption units from the fusion key data generated. Here, eight 48-bit partial keys are generated from the 64-bit fusion key data. Note that the function of generating the partial key is performed by the data encryption device 1.
This is exactly the same as that performed by the partial key generation unit 104 of 0.

【0056】第1復号化部205aは、第8の部分鍵に
基づいて、暗号文ブロックから第7中間ブロックを生成
する。第2〜7復号化部205b〜205gは、それぞ
れ第7〜2の部分鍵に基づいて、第7〜2中間ブロック
から第6〜1中間ブロックを生成する。
The first decryption unit 205a generates a seventh intermediate block from a ciphertext block based on the eighth partial key. The second to seventh decryption units 205b to 205g generate the sixth to first intermediate blocks from the seventh to second intermediate blocks based on the seventh to second partial keys, respectively.

【0057】第8復号化部205hは、第1の部分鍵に
基づいて、第1中間ブロックから平文ブロックを生成す
る。第1〜8復号化部205a〜205hは、全て同じ
構造を持ち、48ビットの部分鍵により特定された変換
により、64ビットの入力の内の下位32ビットを用い
て上位32ビットを変換し、上位32ビットと下位32
ビットを入れ替える変換をそれぞれ直列に行ない、この
変換を合計で8段行なう。ここでは、第1〜3暗号文ブ
ロックから、それぞれに対応する第7〜1中間ブロック
と、第1〜3平文ブロックとを生成する。なお、第1〜
8復号化部205a〜205hが行なう変換は、それぞ
れデータ暗号化装置10の第8〜1暗号化部105h〜
105aが行なう変換の逆変換である。
The eighth decryption unit 205h generates a plaintext block from the first intermediate block based on the first partial key. The first to eighth decoding units 205a to 205h have the same structure, and convert the upper 32 bits using the lower 32 bits of the 64-bit input by the conversion specified by the 48-bit partial key, Upper 32 bits and lower 32
Conversions for exchanging bits are performed in series, and this conversion is performed for a total of eight stages. Here, the seventh to first intermediate blocks and the first to third plaintext blocks are respectively generated from the first to third ciphertext blocks. Note that the first to first
The conversions performed by the 8 decryption units 205a to 205h are performed by the 8th to 1st encryption units 105h to 105h of the data encryption device 10, respectively.
This is the inverse of the conversion performed by 105a.

【0058】ブロック記憶部202はブロック更新機能
を備え、第4復号化部205dが第4中間ブロックを生
成する度に、この第4中間ブロックを新たな連鎖ブロッ
クとして記憶している連鎖ブロックを更新し、次のブロ
ックを処理する際に用いる。ここでは、予め64ビット
の初期値IVが記憶され、この初期値IVが第1暗号文
ブロックを処理する際に用いられ、この処理の際に生成
された第4中間ブロックを新たな連鎖ブロックとして記
憶する。次に、第1暗号文ブロックの処理の際に更新さ
れた連鎖ブロックが第2暗号文ブロックを処理する際に
用いられ、この処理の際に生成された第4中間ブロック
を新たな連鎖ブロックとして記憶する。次に、第2暗号
文ブロックの処理の際に記憶された連鎖ブロックが第3
暗号文ブロックを処理する際に用いられ、この処理の際
に生成された第4中間ブロックを新たな連鎖ブロックと
して記憶する。最後に、第3暗号文ブロックの処理の際
に記憶された連鎖ブロックが端数暗号文データを処理す
る際に用いられる。
The block storage unit 202 has a block updating function. Every time the fourth decoding unit 205d generates a fourth intermediate block, the fourth intermediate unit updates the chained block storing the fourth intermediate block as a new chained block. Then, it is used when processing the next block. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first ciphertext block, and the fourth intermediate block generated during this processing is used as a new chain block. Remember. Next, the chain block updated during the processing of the first ciphertext block is used when processing the second ciphertext block, and the fourth intermediate block generated at the time of this processing is used as a new chain block. Remember. Next, the chained block stored in the processing of the second ciphertext block is the third block.
Used when processing a ciphertext block, the fourth intermediate block generated during this processing is stored as a new chained block. Finally, the chain block stored during the processing of the third ciphertext block is used when processing the fractional ciphertext data.

【0059】端数データ処理部206は、ブロック分割
部201から端数暗号文データを受け取り、ブロック記
憶部202に記憶された連鎖ブロックに基づいて、端数
暗号文データから端数暗号文データと同じビット数の端
数平文データを生成するものであり、データ整合部20
6a及び端数データ融合部206bを含む。
The fraction data processing unit 206 receives the fraction cipher text data from the block dividing unit 201 and, based on the chained blocks stored in the block storage unit 202, converts the fraction cipher text data into the same number of bits as the fraction cipher text data. The data matching unit 20 generates fractional plaintext data.
6a and a fraction data fusion unit 206b.

【0060】図8は、本発明の実施の形態1における図
7に示す端数データ処理部206の詳細な構成を示す図
である。データ整合部206aは、ブロック記憶部20
2に記憶された連鎖ブロックから、端数暗号文データと
同じビット数の端数連鎖データを生成する。ここでは、
端数暗号文データが8ビットなので、ブロック記憶部2
02に記憶された連鎖ブロックの、例えば上位8ビット
で構成される端数連鎖データを生成する。
FIG. 8 is a diagram showing a detailed configuration of the fraction data processing unit 206 shown in FIG. 7 according to the first embodiment of the present invention. The data matching unit 206 a
From the chained blocks stored in 2, fraction chained data having the same bit number as the fraction ciphertext data is generated. here,
Since the fraction cipher data is 8 bits, the block storage unit 2
For example, fraction chain data composed of upper 8 bits of the chain block stored in 02 is generated.

【0061】端数データ融合部206bは、端数連鎖デ
ータを端数暗号文データに融合する。ここでは、8ビッ
トの端数連鎖データと8ビットの端数暗号文データと
を、対応するビット毎に排他的論理和の演算を行ない、
8ビットの端数平文データを生成する。
The fraction data fusion unit 206b fuses the fraction chained data into the fraction ciphertext data. Here, an exclusive-OR operation is performed on the 8-bit fraction chain data and the 8-bit fraction ciphertext data for each corresponding bit,
Generate 8-bit fractional plaintext data.

【0062】ブロック結合部207は、第8復号化部2
05hが生成した平文データの各ブロック及び端数デー
タ処理部206が生成した端数平文データを結合して平
文データを生成する。ここでは、各64ビットの第1〜
3平文データ及び8ビットの端数平文データを結合して
200ビットの平文データを生成する。
The block combining section 207 is connected to the eighth decoding section 2
Each block of the plaintext data generated by 05h and the fractional plaintext data generated by the fraction data processing unit 206 are combined to generate plaintext data. Here, the first to 64 bits are
The 3-plaintext data and the 8-bit fractional plaintext data are combined to generate 200-bit plaintext data.

【0063】なお、ブロック記憶部202は、連鎖ブロ
ックを第4復号化部205dが生成した第4中間ブロッ
クに更新したが、これはほんの一例であり、処理の過程
で生成した中間ブロックならどれであってもよいので、
第1〜7復号化部205a〜205gが生成した第1〜
7中間ブロックの内の別の1個に更新するものであって
もよい。ただし、データ暗号化装置10のブロック記憶
部102と同一の中間ブロックに更新する必要がある。
Note that the block storage unit 202 has updated the chained block to the fourth intermediate block generated by the fourth decoding unit 205d, but this is only an example, and any intermediate block generated during the processing is used. Since there may be
The first to seventh generated by the first to seventh decoding units 205a to 205g
It may be updated to another one of the seven intermediate blocks. However, it is necessary to update to the same intermediate block as the block storage unit 102 of the data encryption device 10.

【0064】<動作> (データ暗号化装置10の動作)図9は、本発明の実施
の形態1のデータ暗号化装置10における暗号化処理の
流れを示す図である。ここでは、一例として、200ビ
ットの平文データを入手し、ブロック記憶部102には
予め初期値IVが記憶されるものとして、DESのアル
ゴリズムに準じて説明する。
<Operation> (Operation of Data Encryption Apparatus 10) FIG. 9 is a diagram showing a flow of an encryption process in the data encryption apparatus 10 according to the first embodiment of the present invention. Here, as an example, a description will be given in accordance with the DES algorithm assuming that 200-bit plaintext data is obtained and the initial value IV is stored in the block storage unit 102 in advance.

【0065】(1)ブロック分割部101が、入手した
平文データの未処理分が64ビット以上で有るか否かを
判定する(ステップS101)。ここでは、1回目は、
入手した平文データの未処理分は200ビットなので6
4ビット以上と判定する(ステップS101:1回
目)。
(1) The block division unit 101 determines whether or not the unprocessed portion of the obtained plaintext data has 64 bits or more (step S101). Here, the first time
The unprocessed portion of the obtained plaintext data is 200 bits, so 6
It is determined that the number of bits is 4 bits or more (step S101: first time).

【0066】(2)平文データの未処理分が64ビット
以上の場合は、未処理分の先頭から64ビット分離する
(ステップS102)。ここでは、200ビットの内の
先頭から数えて1〜64ビットを第1平文ブロックとし
て分離する(ステップS102:1回目)。
(2) If the unprocessed portion of the plaintext data is 64 bits or more, 64 bits are separated from the head of the unprocessed portion (step S102). Here, 1 to 64 bits counted from the head of the 200 bits are separated as the first plaintext block (step S102: first time).

【0067】(3)鍵データ融合部103が、ブロック
記憶部102に記憶された連鎖ブロックを鍵データに融
合し、融合鍵データを生成する(ステップS103)。
ここでは、64ビットの連鎖ブロックの初期値IVと6
4ビットの鍵データとを、対応するビット毎に排他的論
理和の演算を行ない、融合鍵データを生成して部分鍵生
成部104に渡す(ステップS103:1回目)。
(3) The key data fusion unit 103 fuses the chained blocks stored in the block storage unit 102 with key data to generate fusion key data (step S103).
Here, the initial values IV and 6 of the 64-bit chain block are set.
The exclusive-OR operation is performed on the 4-bit key data for each corresponding bit to generate fusion key data and pass it to the partial key generation unit 104 (step S103: first time).

【0068】(4)部分鍵生成部104が、融合鍵デー
タから暗号化部の数に相当する数の部分鍵を生成する
(ステップS104)。ここでは、64ビットの融合鍵
データから48ビットの部分鍵を8個生成する(ステッ
プS104:1回目)。 パリティビットを8ビット含む64ビットの鍵データか
ら、第1〜8までの8個×48ビットの部分鍵を生成す
る手順は、例えば、以下のようになっている。
(4) The partial key generation unit 104 generates a number of partial keys corresponding to the number of encryption units from the fusion key data (step S104). Here, eight 48-bit partial keys are generated from the 64-bit fusion key data (step S104: first time). The procedure for generating the first to eighth 8 × 48-bit partial keys from the 64-bit key data including 8 parity bits is, for example, as follows.

【0069】パリティビットを含む64ビットの鍵デー
タは(表3)に示す転置により、転置が行なわれるとと
もにパリティビットが除かれた56ビットとなる。
The 64-bit key data including the parity bit is transposed by the transposition shown in (Table 3) into 56 bits with the parity bit removed.

【0070】表中の数値は入力ビットが置き換わる新た
なビット位置を示しており、例えば、入力の57ビット
目は出力に第1ビット目に、入力の49ビット目は出力
の第2ビット目に置き換えられる。
The numerical values in the table indicate the new bit positions where the input bits are replaced. For example, the 57th bit of the input is the first bit in the output, and the 49th bit of the input is the second bit in the output. Be replaced.

【0071】この56ビットの内、前半の28ビットを
C0、後半の28ビットをD0とし、このC0とD0を
(表4)に示すシフト回数だけ左にシフトすることによ
り、C1〜C8及びD1〜D8を生成する。 (表4) −−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 部分鍵ナンバー 1 2 3 4 5 6 7 8 シフト回数 2 4 8 12 16 20 24 26 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 例えば、C0=(c1 c2 c3 ・・・ c26
c27 c28)とすると、C1=(c3 c4 c5
・・・ c28 c1 c2)となる。次に、それぞれ
の56ビットは、(表5)に示す転置により48ビット
となる。
Of the 56 bits, the first 28 bits are C0 and the second 28 bits are D0, and C0 and D0 are shifted to the left by the number of shifts shown in (Table 4) to obtain C1 to C8 and D1. To D8. (Table 4) Partial key number 1 2 3 4 5 6 7 8 8 Number of shifts 2 4 8--------------------- 12 16 20 24 26 ----------------------------------------- For example, C0 = (c1 c2 c3... C26
c27 c28), C1 = (c3 c4 c5
... c28 c1 c2). Next, each of the 56 bits becomes 48 bits by the transposition shown in (Table 5).

【0072】表中の数値は入力ビットが置き換わる新た
なビット位置を示しており、例えば、入力の14ビット
目は出力の第1ビット目に、入力の17ビット目は出力
の第2ビット目に置き換えられる。
The numerical values in the table indicate the new bit positions at which the input bits are replaced. For example, the 14th bit of the input is the first bit of the output, and the 17th bit of the input is the second bit of the output. Be replaced.

【0073】(5)第1暗号化部105aが、第1の部
分鍵に基づいて、平文ブロックから第1中間ブロックを
生成する(ステップS105)。ここでは、第1平文ブ
ロックから第1中間ブロックを生成する(ステップS1
05:1回目)。
(5) The first encryption unit 105a generates a first intermediate block from a plaintext block based on the first partial key (step S105). Here, a first intermediate block is generated from the first plaintext block (step S1).
05: the first time).

【0074】(6)第2〜4暗号化部105b〜105
dが、それぞれ第2〜4の部分鍵に基づいて、第1〜3
中間ブロックから第2〜4中間ブロックを生成する(ス
テップS106)。ここでは、第1平文ブロックに対応
する第1〜3中間ブロックから第2〜4中間ブロックを
生成する(ステップS106:1回目)。
(6) Second to fourth encryption units 105b to 105
d is based on the second to fourth partial keys, respectively,
The second to fourth intermediate blocks are generated from the intermediate blocks (step S106). Here, the second to fourth intermediate blocks are generated from the first to third intermediate blocks corresponding to the first plaintext block (step S106: first time).

【0075】(7)ブロック記憶部102が、第4中間
ブロックを新たな連鎖ブロックとして、記憶している連
鎖ブロックを更新する(ステップS107)。ここで
は、第1平文ブロックに対応する第4中間ブロックに更
新する(ステップS107:1回目)。
(7) The block storage unit 102 updates the stored chain block with the fourth intermediate block as a new chain block (step S107). Here, it is updated to a fourth intermediate block corresponding to the first plaintext block (step S107: first time).

【0076】(8)第5〜7暗号化部105e〜105
gが、それぞれ第5〜7の部分鍵に基づいて、第4〜6
中間ブロックから第5〜7中間ブロックを生成する(ス
テップS108)。ここでは、第1平文ブロックに対応
する第4〜6中間ブロックから第5〜7中間ブロックを
生成する(ステップS108:1回目)。
(8) Fifth to seventh encryption units 105e to 105
g is the fourth to sixth keys based on the fifth to seventh partial keys, respectively.
The fifth to seventh intermediate blocks are generated from the intermediate blocks (step S108). Here, the fifth to seventh intermediate blocks are generated from the fourth and sixth intermediate blocks corresponding to the first plaintext block (step S108: first time).

【0077】(9)第8暗号化部105hが、第8の部
分鍵に基づいて、第7中間ブロックから暗号文ブロック
を生成する(ステップS109)。ここでは、第1平文
ブロックに対応する第7中間ブロックから第1暗号文ブ
ロックを生成する(ステップS109:1回目)。
(9) The eighth encryption unit 105h generates a ciphertext block from the seventh intermediate block based on the eighth partial key (step S109). Here, the first ciphertext block is generated from the seventh intermediate block corresponding to the first plaintext block (step S109: first time).

【0078】(10)平文データの未処理分が有るか否
かを判断する。まだ未処理分が有る場合は、次の平文プ
ロック又は端数平文データを処理しに、ステップS10
1に戻る(ステップS110)。ここでは、まだ未処理
分が有るのでステップS101に戻る(ステップS11
0:1回目)。
(10) It is determined whether there is any unprocessed plaintext data. If there is still unprocessed data, the next plaintext block or fractional plaintext data is processed in step S10.
It returns to 1 (step S110). Here, since there is still an unprocessed portion, the process returns to step S101 (step S11).
0: the first time).

【0079】(11)ステップS101において、ここ
では、1回目に200ビットの平文データから64ビッ
トが分離され、その残りが136ビットなので、64ビ
ット以上と判定する(ステップS101:2回目)。
(11) In step S101, here, 64 bits are separated from the 200-bit plaintext data for the first time, and the rest is 136 bits. Therefore, it is determined that the number is 64 bits or more (step S101: second time).

【0080】(12)ステップS102において、ここ
では、最初の200ビットの先頭から数えて65〜12
8ビットを第2平文ブロックとして分離する(ステップ
S102:2回目)。
(12) In step S102, here, 65 to 12 counting from the head of the first 200 bits
8 bits are separated as a second plaintext block (step S102: second time).

【0081】(13)ステップS103において、ここ
では、第1平文ブロックの処理の際に生成された64ビ
ットの連鎖ブロックと64ビットの鍵データとを、対応
するビット毎に排他的論理和の演算を行ない、融合鍵デ
ータを生成して部分鍵生成部104に渡す(ステップS
103:2回目)。
(13) In step S103, the 64-bit chain block generated in the processing of the first plaintext block and the 64-bit key data are exclusive-ORed for each corresponding bit. To generate the fusion key data and pass it to the partial key generation unit 104 (step S
103: 2nd time).

【0082】(14)ステップS104において、ここ
では、64ビットの融合鍵データから48ビットの部分
鍵を8個生成する(ステップS104:2回目)。
(14) In step S104, here, eight 48-bit partial keys are generated from the 64-bit fusion key data (step S104: second time).

【0083】(15)〜(19)ステップS105〜ス
テップS109において、第2平文ブロックについて、
第1平文ブロックと同様の処理を行ない、第2平文ブロ
ックに対応する第1〜7中間ブロック及び暗号文ブロッ
クを生成し、ブロック記憶部102が記憶している連鎖
ブロックを第2平文ブロックに対応する第4中間ブロッ
クに更新する(ステップS105〜ステップS109:
2回目)。
(15)-(19) In steps S105-S109, the second plaintext block is
The same processing as the first plaintext block is performed to generate first to seventh intermediate blocks and ciphertext blocks corresponding to the second plaintext block, and the chained block stored in the block storage unit 102 corresponds to the second plaintext block. (Steps S105 to S109:
The second).

【0084】(20)ステップS110において、ここ
では、まだ平文データの未処理分が有るのでステップS
101に戻る(ステップS110:2回目)。
(20) In step S110, since there is still unprocessed plaintext data, step S110 is executed.
It returns to 101 (step S110: 2nd time).

【0085】(21)ステップS101において、ここ
では、2回目に136ビットの平文データから64ビッ
トが分離され、その残りが72ビットなので、64ビッ
ト以上と判定する(ステップS101:3回目)。
(21) In step S101, here, 64 bits are separated from the 136-bit plaintext data for the second time, and the rest are 72 bits. Therefore, it is determined that the number is 64 bits or more (step S101: third time).

【0086】(22)ステップS102において、ここ
では、最初の200ビットの先頭から数えて129〜1
92ビットを第3平文ブロックとして分離する(ステッ
プS102:3回目)。
(22) In step S102, here, 129 to 1 counted from the head of the first 200 bits
The 92 bits are separated as a third plaintext block (step S102: third time).

【0087】(23)ステップS103において、ここ
では、第2平文ブロックの処理の際に生成された連鎖ブ
ロックと64ビットの鍵データとを、対応するビット毎
に排他的論理和の演算を行ない、融合鍵データを生成し
て部分鍵生成部104に渡す(ステップS103:3回
目)。
(23) In step S103, an exclusive OR operation is performed on the chained block generated during the processing of the second plaintext block and the 64-bit key data for each corresponding bit. The fusion key data is generated and passed to the partial key generation unit 104 (step S103: third time).

【0088】(24)ステップS104において、ここ
では、64ビットの融合鍵データから48ビットの部分
鍵を8個生成する(ステップS104:3回目)。
(24) In step S104, here, eight 48-bit partial keys are generated from the 64-bit fusion key data (step S104: third time).

【0089】(25)〜(29)ステップS105〜ス
テップS109において、第3平文ブロックについて、
第1平文ブロックと同様の処理を行ない、第3平文ブロ
ックに対応する第1〜7中間ブロック及び暗号文ブロッ
クを生成し、ブロック記憶部102が記憶している連鎖
ブロックを第3平文ブロックに対応する第4中間ブロッ
クに更新する(ステップS105〜ステップS109:
3回目)。
(25)-(29) In steps S105-S109, for the third plaintext block,
The same processing as the first plaintext block is performed to generate first to seventh intermediate blocks and ciphertext blocks corresponding to the third plaintext block, and the chained block stored in the block storage unit 102 corresponds to the third plaintext block. (Steps S105 to S109:
Third time).

【0090】(30)ステップS110において、ここ
では、まだ平文データの未処理分が有るのでステップS
101に戻る(ステップS110:3回目)。
(30) In step S110, since there is still unprocessed plaintext data, step S110
It returns to 101 (step S110: 3rd time).

【0091】(31)ステップS101において、ここ
では、3回目に72ビットの平文データから64ビット
が分離され、その残りが8ビットなので、64ビット未
満であると判定する(ステップS101:4回目)。
(31) In step S101, here, 64 bits are separated from the 72-bit plaintext data for the third time, and the rest is 8 bits, so it is determined that it is less than 64 bits (step S101: fourth time) .

【0092】(32)平文データの未処理分が64ビッ
ト未満の場合は、その未処理分を端数データ処理部10
6へ渡す(ステップS111)。ここでは、最初の20
0ビットの先頭から数えて193〜200ビットを端数
平文データとして端数データ処理部106へ渡す。
(32) If the unprocessed portion of the plaintext data is less than 64 bits, the unprocessed portion is converted to the fraction data processing unit 10
6 (step S111). Here, the first 20
193 to 200 bits counted from the beginning of 0 bits are passed to the fraction data processing unit 106 as fraction plaintext data.

【0093】(33)端数データ処理部106が、ブロ
ック分割部101から端数平文データを受け取り、ブロ
ック記憶部102に記憶された連鎖ブロックに基づい
て、端数平文データから端数平文データと同じビット数
の端数暗号文データを生成する(ステップS112)。
ここでは、ブロック記憶部102に記憶された第3平文
ブロックの処理の際に生成された64ビットの連鎖ブロ
ックの内の上位8ビットと、8ビットの端数平文データ
とを、対応するビット毎に排他的論理和の演算を行な
い、8ビットの端数暗号文データを生成する。
(33) The fraction data processing unit 106 receives the fraction plaintext data from the block division unit 101 and, based on the chained blocks stored in the block storage unit 102, converts the fraction plaintext data to the same number of bits as the fraction plaintext data. The fraction ciphertext data is generated (step S112).
Here, the upper 8 bits and the 8-bit fractional plaintext data of the 64-bit chain block generated at the time of processing the third plaintext block stored in the block storage unit 102 are stored for each corresponding bit. An exclusive OR operation is performed to generate 8-bit fractional ciphertext data.

【0094】(34)ステップS110で平文データの
未処理分が無いと判断された場合か、又は、ステップS
112における端数暗号文データの生成後に、ブロック
結合部107が、第8暗号化部105hが生成した各暗
号文ブロック及び端数データ処理部106が生成した端
数暗号文データを結合して暗号文データを生成する(ス
テップS113)。ここでは、第1〜3平文ブロックに
それぞれ対応する各暗号文ブロック及び端数暗号文デー
タを結合して200ビットの暗号文データを生成する。
(34) If it is determined in step S110 that there is no unprocessed plaintext data, or
After the generation of the fraction ciphertext data in 112, the block combining unit 107 combines the ciphertext blocks generated by the eighth encryption unit 105h and the fraction ciphertext data generated by the fraction data processing unit 106 to generate the ciphertext data. It is generated (step S113). Here, the ciphertext blocks corresponding to the first to third plaintext blocks and the fraction ciphertext data are combined to generate 200-bit ciphertext data.

【0095】(データ復号化装置20の動作)図10
は、本発明の実施の形態1のデータ復号化装置20にお
ける暗号化処理の流れを示す図である。データ復号化装
置20の動作は、データ暗号化装置10の動作の逆変換
である。
(Operation of Data Decoding Device 20) FIG.
FIG. 4 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the first embodiment of the present invention. The operation of the data decryption device 20 is an inverse conversion of the operation of the data encryption device 10.

【0096】ここでは、一例として、200ビットの暗
号文データを入手し、ブロック記憶部202にはデータ
暗号化装置10のブロック記憶部102と同様に、予め
初期値IVが記憶されるものとして、DESのアルゴリ
ズムに準じて説明する。
Here, as an example, it is assumed that 200-bit ciphertext data is obtained, and the initial value IV is previously stored in the block storage unit 202, similarly to the block storage unit 102 of the data encryption device 10. The description will be made according to the DES algorithm.

【0097】(1)ブロック分割部201が、入手した
暗号文データの未処理分が64ビット以上で有るか否か
を判定する(ステップS201)。ここでは、1回目
は、入手した暗号文データの未処理分は200ビットな
ので64ビット以上と判定する(ステップS201:1
回目)。
(1) The block division unit 201 determines whether or not the unprocessed portion of the obtained ciphertext data has 64 bits or more (step S201). Here, in the first time, since the unprocessed portion of the obtained encrypted data is 200 bits, it is determined to be 64 bits or more (step S201: 1).
Times).

【0098】(2)暗号文データの未処理分が64ビッ
ト以上の場合は、未処理分の先頭から64ビット分離す
る(ステップS202)。ここでは、200ビットの内
の先頭から数えて1〜64ビットを第1暗号文ブロック
として分離する(ステップS202:1回目)。
(2) If the unprocessed portion of the ciphertext data is 64 bits or more, 64 bits are separated from the head of the unprocessed portion (step S202). Here, 1 to 64 bits counted from the beginning of the 200 bits are separated as the first ciphertext block (step S202: first time).

【0099】(3)鍵データ融合部203が、ブロック
記憶部202に記憶された連鎖ブロックを鍵データに融
合し、融合鍵データを生成する(ステップS203)。
ここでは、64ビットの連鎖ブロックの初期値IVと6
4ビットの鍵データとを、対応するビット毎に排他的論
理和の演算を行ない、融合鍵データを生成して部分鍵生
成部204に渡す(ステップS203:1回目)。
(3) The key data fusion unit 203 fuses the chained blocks stored in the block storage unit 202 with key data to generate fusion key data (step S203).
Here, the initial values IV and 6 of the 64-bit chain block are set.
The exclusive-OR operation is performed on the 4-bit key data for each corresponding bit to generate fusion key data and pass it to the partial key generation unit 204 (step S203: first time).

【0100】(4)部分鍵生成部204が、融合鍵デー
タから復号化部の数に相当する数の部分鍵を生成する
(ステップS204)。ここでは、64ビットの融合鍵
データから48ビットの部分鍵を8個生成する(ステッ
プS204:1回目)。パリティビットを8ビット含む
64ビットの鍵データから、第1〜8までの8個×48
ビットの部分鍵を生成する手順は、データ暗号化装置1
0の部分鍵生成部104と同様である。
(4) The partial key generation unit 204 generates a number of partial keys corresponding to the number of decryption units from the fusion key data (step S204). Here, eight 48-bit partial keys are generated from the 64-bit fusion key data (step S204: first time). From 64-bit key data including 8 parity bits, 8 × 48 from the first to eighth key data
The procedure for generating a bit partial key is as follows:
0 is the same as the partial key generation unit 104.

【0101】(5)第1復号化部205aが、第8の部
分鍵に基づいて、暗号文ブロックから第7中間ブロック
を生成する(ステップS205)。ここでは、第1暗号
文ブロックから第7中間ブロックを生成する(ステップ
S205:1回目)。
(5) The first decryption unit 205a generates a seventh intermediate block from a ciphertext block based on the eighth partial key (step S205). Here, a seventh intermediate block is generated from the first ciphertext block (step S205: first time).

【0102】(6)第2〜4復号化部205b〜205
dが、それぞれ第7〜5の部分鍵に基づいて、第7〜5
中間ブロックから第6〜4中間ブロックを生成する(ス
テップS206)。ここでは、第1暗号文ブロックに対
応する第7〜5中間ブロックから第6〜4中間ブロック
を生成する(ステップS206:1回目)。
(6) Second to fourth decoding units 205b to 205
d is the seventh through fifth partial keys based on the seventh through fifth partial keys, respectively.
The sixth to fourth intermediate blocks are generated from the intermediate blocks (step S206). Here, the sixth to fourth intermediate blocks are generated from the seventh to fifth intermediate blocks corresponding to the first ciphertext block (step S206: first time).

【0103】(7)ブロック記憶部202が、第4復号
化部205dが生成した第4中間ブロックを新たな連鎖
ブロックとして、記憶している連鎖ブロックを更新する
(ステップS207)。ここでは、第1暗号文ブロック
に対応する第4中間ブロックに更新する(ステップS2
07:1回目)。
(7) The block storage unit 202 updates the stored chain block with the fourth intermediate block generated by the fourth decoding unit 205d as a new chain block (step S207). Here, it is updated to a fourth intermediate block corresponding to the first ciphertext block (step S2).
07: the first time).

【0104】(8)第5〜7復号化部205e〜205
gが、それぞれ第4〜2の部分鍵に基づいて、第4〜2
中間ブロックから第3〜1中間ブロックを生成する(ス
テップS208)。ここでは、第1暗号文ブロックに対
応する第4〜2中間ブロックから第3〜1中間ブロック
を生成する(ステップS208:1回目)。
(8) Fifth to seventh decoding units 205e to 205
g is based on the fourth to second partial keys, respectively,
The third to first intermediate blocks are generated from the intermediate blocks (step S208). Here, the third to first intermediate blocks are generated from the fourth and second intermediate blocks corresponding to the first ciphertext block (step S208: first time).

【0105】(9)第8復号化部205hが、第1の部
分鍵に基づいて、第1中間ブロックから平文ブロックを
生成する(ステップS209)。ここでは、第1暗号文
ブロックに対応する第1中間ブロックから平文ブロック
を生成する(ステップS209:1回目)。
(9) The eighth decryption unit 205h generates a plaintext block from the first intermediate block based on the first partial key (step S209). Here, a plaintext block is generated from the first intermediate block corresponding to the first ciphertext block (step S209: first time).

【0106】(10)暗号文データの未処理分が有るか
否かを判断する。まだ未処理分が有る場合は、次の暗号
文プロック又は端数暗号文データを処理しに、ステップ
S201に戻る(ステップS210)。ここでは、まだ
未処理分が有るのでステップS201に戻る(ステップ
S210:1回目)。
(10) It is determined whether there is any unprocessed ciphertext data. If there is an unprocessed portion, the process returns to step S201 to process the next ciphertext block or fractional ciphertext data (step S210). Here, since there is still an unprocessed portion, the process returns to step S201 (step S210: first time).

【0107】(11)ステップS201において、ここ
では、1回目に200ビットの暗号文データから64ビ
ットが分離され、その残りが136ビットなので、64
ビット以上と判定する(ステップS201:2回目)。
(11) In step S201, 64 bits are separated from the 200-bit ciphertext data at the first time, and the rest is 136 bits.
It is determined that the number is equal to or more than the bit (step S201: second time).

【0108】(12)ステップS202において、ここ
では、最初の200ビットの先頭から数えて65〜12
8ビットを第2暗号文ブロックとして分離する(ステッ
プS202:2回目)。
(12) In step S202, here, 65 to 12 counting from the beginning of the first 200 bits
8 bits are separated as a second ciphertext block (step S202: second time).

【0109】(13)ステップS203において、ここ
では、第1暗号文ブロックの処理の際に生成された64
ビットの連鎖ブロックと64ビットの鍵データとを、対
応するビット毎に排他的論理和の演算を行ない、融合鍵
データを生成して部分鍵生成部204に渡す(ステップ
S203:2回目)。
(13) In step S203, here, the 64 generated at the time of processing the first ciphertext block is used.
The exclusive-OR operation is performed on the bit chain block and the 64-bit key data for each corresponding bit to generate fusion key data and pass it to the partial key generation unit 204 (step S203: second time).

【0110】(14)ステップS204において、ここ
では、64ビットの融合鍵データから48ビットの部分
鍵を8個生成する(ステップS204:2回目)。
(14) In step S204, here, eight 48-bit partial keys are generated from the 64-bit fused key data (step S204: second time).

【0111】(15)〜(19)ステップS205〜ス
テップS209において、第2暗号文ブロックについ
て、第1暗号文ブロックと同様の処理を行ない、第2暗
号文ブロックに対応する第7〜1中間ブロック及び平文
ブロックを生成し、ブロック記憶部202が記憶してい
る連鎖ブロックを第2暗号文ブロックに対応する第4中
間ブロックに更新する(ステップS205〜ステップS
209:2回目)。
(15) to (19) In steps S205 to S209, the same processing as that of the first ciphertext block is performed on the second ciphertext block, and the seventh to first intermediate blocks corresponding to the second ciphertext block are performed. And a plaintext block, and updates the chained block stored in the block storage unit 202 to a fourth intermediate block corresponding to the second ciphertext block (steps S205 to S205).
209: 2nd time).

【0112】(20)ステップS210において、ここ
では、まだ暗号文データの未処理分が有るのでステップ
S201に戻る(ステップS210:2回目)。
(20) In step S210, since there is still unprocessed ciphertext data, the process returns to step S201 (step S210: second time).

【0113】(21)ステップS201において、ここ
では、2回目に136ビットの暗号文データから64ビ
ットが分離され、その残りが72ビットなので、64ビ
ット以上と判定する(ステップS201:3回目)。
(21) In step S201, here, 64 bits are separated from the 136-bit ciphertext data for the second time, and the remaining is 72 bits. Therefore, it is determined that the number is 64 bits or more (step S201: third time).

【0114】(22)ステップS202において、ここ
では、最初の200ビットの先頭から数えて129〜1
92ビットを第3暗号文ブロックとして分離する(ステ
ップS202:3回目)。
(22) In step S202, here, 129 to 1 counted from the head of the first 200 bits
92 bits are separated as a third ciphertext block (step S202: third time).

【0115】(23)ステップS203において、ここ
では、第2暗号文ブロックの処理の際に生成された連鎖
ブロックと64ビットの鍵データとを、対応するビット
毎に排他的論理和の演算を行ない、融合鍵データを生成
して部分鍵生成部204に渡す(ステップS203:3
回目)。
(23) In step S203, an exclusive OR operation is performed on the chain block generated in the processing of the second ciphertext block and the 64-bit key data for each corresponding bit. Generates the fusion key data and passes it to the partial key generation unit 204 (step S203: 3)
Times).

【0116】(24)ステップS204において、ここ
では、64ビットの融合鍵データから48ビットの部分
鍵を8個生成する(ステップS204:3回目)。
(24) In step S204, here, eight 48-bit partial keys are generated from the 64-bit fusion key data (step S204: third time).

【0117】(25)〜(29)ステップS205〜ス
テップS209において、第3暗号文ブロックについ
て、第1暗号文ブロックと同様の処理を行ない、第3暗
号文ブロックに対応する第7〜1中間ブロック及び平文
ブロックを生成し、ブロック記憶部202が記憶してい
る連鎖ブロックを第3暗号文ブロックに対応する第4中
間ブロックに更新する(ステップS205〜ステップS
209:3回目)。
(25)-(29) In steps S205-S209, the same processing as that of the first ciphertext block is performed on the third ciphertext block, and the seventh to first intermediate blocks corresponding to the third ciphertext block are processed. And a plaintext block, and updates the chained block stored in the block storage unit 202 to a fourth intermediate block corresponding to the third ciphertext block (steps S205 to S205).
209: 3rd time).

【0118】(30)ステップS210において、ここ
では、まだ暗号文データの未処理分が有るのでステップ
S201に戻る(ステップS210:3回目)。
(30) In step S210, the process returns to step S201 because there is still unprocessed ciphertext data (step S210: third time).

【0119】(31)ステップS201において、ここ
では、3回目に72ビットの暗号文データから64ビッ
トが分離され、その残りが8ビットなので、64ビット
未満であると判定する(ステップS201:4回目)。
(31) In step S201, here, 64 bits are separated from the 72-bit ciphertext data for the third time, and the rest is 8 bits, so that it is determined that it is less than 64 bits (step S201: fourth time) ).

【0120】(32)暗号文データの未処理分が64ビ
ット未満の場合は、その未処理分を端数データ処理部2
06へ渡す(ステップS211)。ここでは、最初の2
00ビットの先頭から数えて193〜200ビットを端
数暗号文データとして端数データ処理部206へ渡す。
(32) If the unprocessed portion of the ciphertext data is less than 64 bits, the unprocessed portion is converted to the fraction data processing unit 2
06 (step S211). Here, the first two
193 to 200 bits counted from the beginning of the 00 bits are passed to the fraction data processing unit 206 as fraction ciphertext data.

【0121】(33)端数データ処理部206が、ブロ
ック分割部201から端数暗号文データを受け取り、ブ
ロック記憶部202に記憶された連鎖ブロックに基づい
て、端数暗号文データから端数暗号文データと同じビッ
ト数の端数平文データを生成する(ステップS21
2)。ここでは、ブロック記憶部202に記憶された第
3暗号文ブロックの処理の際に生成された64ビットの
連鎖ブロックの内の上位8ビットと、8ビットの端数暗
号文データとを、対応するビット毎に排他的論理和の演
算を行ない、8ビットの端数平文データを生成する。
(33) The fraction data processing unit 206 receives the fraction cipher text data from the block dividing unit 201 and, based on the chained blocks stored in the block storage unit 202, converts the fraction cipher text data to the same as the fraction cipher text data. Generate fractional plaintext data of the bit number (step S21)
2). Here, the upper 8 bits and the 8-bit fractional ciphertext data in the 64-bit chain block generated at the time of processing the third ciphertext block stored in the block storage unit 202 are stored in the corresponding bits. An exclusive OR operation is performed every time to generate 8-bit fraction plaintext data.

【0122】(34)ステップS210で暗号文データ
の未処理分が無いと判断された場合か、又は、ステップ
S212における端数平文データの生成後に、ブロック
結合部207が、各平文ブロック及び端数データ処理部
206が生成した端数平文データを結合して平文データ
を生成する(ステップS213)。ここでは、第1〜3
暗号文ブロックにそれぞれ対応する平文ブロック及び端
数平文データを結合して200ビットの平文データを生
成する。
(34) If it is determined in step S210 that there is no unprocessed ciphertext data, or after the generation of the fractional plaintext data in step S212, the block combining unit 207 causes the plaintext block and the fractional data processing to be performed. The plaintext data generated by the unit 206 is combined to generate plaintext data (step S213). Here, the first to third
The plaintext block and the fractional plaintext data respectively corresponding to the ciphertext blocks are combined to generate 200-bit plaintext data.

【0123】実施の形態1の暗号処理装置は、前のブロ
ックに暗号処理に施した過程において生成された中間ブ
ロックを連鎖ブロックとして記憶しておき、後の暗号処
理の際に鍵データに融合し、暗号処理を施す度にその連
鎖ブロックを更新するものである。
The cryptographic processing apparatus according to the first embodiment stores intermediate blocks generated in the process of performing cryptographic processing on a previous block as chained blocks, and merges them with key data at the time of subsequent cryptographic processing. Each time the encryption process is performed, the chain block is updated.

【0124】(実施の形態2)本発明の実施の形態2
は、記憶している連鎖ブロックを鍵データに融合するの
ではなく、被暗号処理データ又は被暗号処理データに暗
号処理を施した後のデータに融合する点が実施の形態1
と異なる。
(Embodiment 2) Embodiment 2 of the present invention
Is that the stored chained block is not fused to the key data, but to the data to be encrypted or the data after the encryption processing is performed on the data to be encrypted.
And different.

【0125】<構成>暗号通信システムの構成は実施の
形態1と同様なので説明を省略する。 (データ暗号化装置10の構成)図11は、本発明の実
施の形態2における図1に示すデータ暗号化装置10の
詳細な構成を示す図である。
<Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and the description is omitted. (Configuration of Data Encryption Device 10) FIG. 11 is a diagram showing a detailed configuration of the data encryption device 10 shown in FIG. 1 according to the second embodiment of the present invention.

【0126】実施の形態1における図2に示すデータ暗
号化装置10と共通する構成部分には同一符号を付し、
同一の機能を有する構成部分の説明は省略する。このデ
ータ暗号化装置10は、ブロック分割部101、ブロッ
ク記憶部102、部分鍵生成部104、第1〜8暗号化
部105a〜105h、端数データ処理部106、ブロ
ック結合部107及びブロック融合部108で構成され
る。
The same components as those of the data encryption device 10 shown in FIG.
The description of the components having the same functions is omitted. The data encryption device 10 includes a block division unit 101, a block storage unit 102, a partial key generation unit 104, first to eighth encryption units 105a to 105h, a fraction data processing unit 106, a block combination unit 107, and a block fusion unit 108. It consists of.

【0127】図50に示す従来の暗号化装置30と図1
1に示す本発明の実施の形態2におけるデータ暗号化装
置10との関係は、排他的論理和部301はブロック融
合部108と対応し、データ暗号化部302はブロック
分割部101、部分鍵生成部104、第1〜8暗号化部
105a〜105h、端数データ処理部106及びブロ
ック結合部107と対応し、レジスタ303はブロック
記憶部102と対応する。
The conventional encryption device 30 shown in FIG.
1, the exclusive OR section 301 corresponds to the block fusion section 108, the data encryption section 302 corresponds to the block division section 101, and the partial key generation. The register 104 corresponds to the block storage unit 102, and corresponds to the unit 104, the first to eighth encryption units 105a to 105h, the fraction data processing unit 106, and the block combining unit 107.

【0128】ブロック分割部101は、分割したブロッ
クを第1暗号化部105aへ渡さずにブロック融合部1
08へ渡す点のみ実施の形態1と異なる。ブロック融合
部108は、ブロック記憶部102に記憶された連鎖ブ
ロックを、平文ブロックに融合し融合平文ブロックを生
成する。ここでは、第1平文ブロックを処理する際に
は、64ビットの連鎖ブロックの初期値IVと64ビッ
トの第1平文ブロックとを、対応するビット毎に排他的
論理和の演算を行ない64ビットの第1融合平文ブロッ
クを生成し、第2〜3平文ブロックを処理する際には、
第1〜2平文ブロックの処理の際に生成された64ビッ
トの連鎖ブロックと64ビットの第2〜3平文ブロック
とを、対応するビット毎に排他的論理和の演算を行ない
64ビットの第2〜3融合平文ブロックを生成する。
[0128] The block dividing section 101 sends the divided block to the block combining section 1 without passing it to the first encrypting section 105a.
The second embodiment is different from the first embodiment only in that the data is passed to the step 08. The block fusion unit 108 fuses the chained blocks stored in the block storage unit 102 into plaintext blocks to generate a fused plaintext block. Here, when the first plaintext block is processed, the initial value IV of the 64-bit chain block and the 64-bit first plaintext block are subjected to an exclusive OR operation for each corresponding bit, and the 64-bit first block is processed. When generating the first fused plaintext block and processing the second and third plaintext blocks,
The 64-bit chained block generated in the processing of the first and second plaintext blocks and the 64-bit second and third plaintext blocks are subjected to an exclusive OR operation for each corresponding bit, and the 64-bit second block is processed. Generate a ~ 3 fused plaintext block.

【0129】部分鍵生成部104は、鍵データから、暗
号化部の数に相当する数の部分鍵を生成する。ここで
は、予め設定された64ビットの鍵データを入手し、6
4ビットの鍵データから48ビットの部分鍵を8個生成
する。第1暗号化部105aは、平文ブロックからでは
なく、ブロック融合部108が生成した融合平文ブロッ
クから第1中間ブロックを生成する。
The partial key generation unit 104 generates a number of partial keys corresponding to the number of encryption units from the key data. Here, a 64-bit key data set in advance is obtained, and 6-bit key data is acquired.
Eight 48-bit partial keys are generated from the 4-bit key data. The first encryption unit 105a generates the first intermediate block not from the plaintext block but from the fused plaintext block generated by the block fusion unit 108.

【0130】第1〜8暗号化部105a〜105hは、
実施の形態1のそれらと同一の機能を有する。ここで
は、第1〜3融合平文ブロックから、それぞれに対応す
る第1〜7中間ブロックと、第1〜3暗号文ブロックと
を生成する。
The first to eighth encryption units 105a to 105h
It has the same functions as those of the first embodiment. Here, the first to seventh intermediate blocks and the first to third ciphertext blocks respectively corresponding to the first to third fused plaintext blocks are generated.

【0131】(データ復号化装置20の構成)図12
は、本発明の実施の形態2における図1に示すデータ復
号化装置20の詳細な構成を示す図である。実施の形態
1における図7に示すデータ復号化装置20と共通する
構成部分には同一符号を付し、同一の機能を有する構成
部分の説明は省略する。
(Configuration of Data Decoding Apparatus 20) FIG.
FIG. 14 is a diagram showing a detailed configuration of the data decoding device 20 shown in FIG. 1 according to Embodiment 2 of the present invention. The same components as those of the data decoding device 20 shown in FIG. 7 in the first embodiment are denoted by the same reference numerals, and the description of the components having the same functions will be omitted.

【0132】このデータ復号化装置20は、ブロック分
割部201、ブロック記憶部202、部分鍵生成部20
4、第1〜8復号化部205a〜205h、端数データ
処理部206、ブロック結合部207及びブロック融合
部208で構成される。部分鍵生成部204は、鍵デー
タから、復号化部の数に相当する数の部分鍵を生成す
る。ここでは、予め設定された64ビットの鍵データを
入手し、64ビットの鍵データから48ビットの部分鍵
を8個生成する。なお、この部分鍵を生成する機能は、
データ暗号化装置10の部分鍵生成部104が行なうそ
れと全く同一である。
This data decryption device 20 includes a block division unit 201, a block storage unit 202, a partial key generation unit 20
4, the first to eighth decoding units 205a to 205h, the fraction data processing unit 206, the block combination unit 207, and the block fusion unit 208. The partial key generation unit 204 generates a number of partial keys corresponding to the number of decryption units from the key data. Here, 64-bit key data set in advance is obtained, and eight 48-bit partial keys are generated from the 64-bit key data. The function to generate this partial key is as follows:
This is exactly the same as that performed by the partial key generation unit 104 of the data encryption device 10.

【0133】第8復号化部205hは、第1の部分鍵に
基づいて、第1中間ブロックから、暗号処理ブロックを
生成する。第1〜8復号化部205a〜205hは、実
施の形態1のそれらと同一の機能を有する。ここでは、
第1〜3暗号文ブロックから、それぞれに対応する第1
〜7中間ブロックと、第1〜3暗号処理ブロックとを生
成する。
The eighth decryption unit 205h generates an encryption processing block from the first intermediate block based on the first partial key. The first to eighth decoding units 205a to 205h have the same functions as those of the first embodiment. here,
From the first to third ciphertext blocks, the first
To 7 intermediate blocks and first to third cryptographic processing blocks.

【0134】ブロック融合部208は、ブロック記憶部
202に記憶された連鎖ブロックを、暗号処理ブロック
に融合し、平文ブロックを生成する。ここでは、第1暗
号文ブロックを処理する際には、64ビットの連鎖ブロ
ックの初期値IVと64ビットの第1暗号処理ブロック
とを、対応するビット毎に排他的論理和の演算を行ない
64ビットの第1平文ブロックを生成し、第2〜3暗号
文ブロックを処理する際には、第1〜2暗号文ブロック
の処理の際に生成された64ビットの連鎖ブロックと6
4ビットの第2〜3暗号処理ブロックとを、対応するビ
ット毎に排他的論理和の演算を行ない64ビットの第2
〜3平文ブロックを生成する。
The block fusion unit 208 fuses the chained blocks stored in the block storage unit 202 with the cryptographic processing block to generate a plaintext block. Here, when processing the first ciphertext block, an exclusive OR operation is performed on the initial value IV of the 64-bit chain block and the 64-bit first cryptographic processing block for each corresponding bit. When generating the first plaintext block of bits and processing the second and third ciphertext blocks, the 64-bit chain block generated during the processing of the first and second ciphertext blocks and 6
An exclusive OR operation is performed on the 4-bit second and third encryption processing blocks for each corresponding bit, and a 64-bit second
Generate ~ 3 plaintext blocks.

【0135】ブロック結合部207は、ブロック融合部
208が生成した平文データの各ブロック及び端数デー
タ処理部206が生成した端数平文データを結合して平
文データを生成する。ここでは、各64ビットの第1〜
3平文データ及び8ビットの端数平文データを結合して
200ビットの平文データを生成する。
The block combining section 207 combines each block of the plaintext data generated by the block fusion section 208 and the fractional plaintext data generated by the fractional data processing section 206 to generate plaintext data. Here, the first to 64 bits are
The 3-plaintext data and the 8-bit fractional plaintext data are combined to generate 200-bit plaintext data.

【0136】<動作> (データ暗号化装置10の動作)図13は、本発明の実
施の形態2のデータ暗号化装置10における暗号化処理
の流れを示す図である。実施の形態1における図9に示
すデータ暗号化装置10の動作と共通するステップには
同一符号を付し、その説明を省略する。
<Operation> (Operation of Data Encryption Apparatus 10) FIG. 13 is a diagram showing a flow of an encryption process in the data encryption apparatus 10 according to the second embodiment of the present invention. Steps common to the operations of the data encryption device 10 shown in FIG. 9 in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted.

【0137】(1)〜(2)実施の形態1と同様である
(ステップS101、ステップS102:1回目)。
(1) and (2) Same as in the first embodiment (step S101, step S102: first time).

【0138】(3)部分鍵生成部104が、鍵データか
ら、暗号化部の数に相当する数の部分鍵を生成する(ス
テップS301)。ここでは、予め設定された64ビッ
トの鍵データを入手し、64ビットの鍵データから48
ビットの部分鍵を8個生成する(ステップS301:1
回目)。
(3) The partial key generation unit 104 generates a number of partial keys corresponding to the number of encryption units from the key data (step S301). Here, a 64-bit key data set in advance is obtained, and 48 bits are obtained from the 64-bit key data.
Eight bit partial keys are generated (step S301: 1)
Times).

【0139】(4)ブロック融合部108が、ブロック
記憶部102に記憶された連鎖ブロックを、平文ブロッ
クに融合し、融合平文ブロックを生成する(ステップS
302)。ここでは、64ビットの連鎖ブロックの初期
値IVと64ビットの第1平文ブロックとを、対応する
ビット毎に排他的論理和を行ない、64ビットの第1融
合平文ブロックを生成する(ステップS302:1回
目)。
(4) The block merging section 108 merges the chained blocks stored in the block storage section 102 into plaintext blocks to generate a merged plaintext block (step S).
302). Here, the initial value IV of the 64-bit chained block and the 64-bit first plaintext block are subjected to an exclusive OR operation for each corresponding bit to generate a 64-bit first fused plaintext block (step S302: First time).

【0140】(5)第1暗号化部105aが、第1の部
分鍵に基づいて、融合平文ブロックから第1中間ブロッ
クを生成する(ステップS303)。ここでは、第1融
合平文ブロックから第1中間ブロックを生成する(ステ
ップS303:1回目)。
(5) The first encryption unit 105a generates a first intermediate block from the fused plaintext block based on the first partial key (step S303). Here, a first intermediate block is generated from the first fused plaintext block (step S303: first time).

【0141】(6)〜(12)実施の形態1と同様であ
る(ステップS106〜ステップS110:1回目、ス
テップS101、ステップS102:2回目)。
(6) to (12) Same as in the first embodiment (steps S106 to S110: first time, step S101, step S102: second time).

【0142】(13)ステップS301において、ここ
では、64ビットの鍵データから48ビットの部分鍵を
8個生成する。なお、鍵データの変更がなければ1回目
と全く同じ処理なので、各部分鍵を記憶しておいてもか
まわない(ステップS301:2回目)。
(13) In step S301, here, eight 48-bit partial keys are generated from 64-bit key data. If there is no change in the key data, the process is exactly the same as the first time, so each partial key may be stored (step S301: second time).

【0143】(14)ステップS302において、ここ
では、第1平文ブロックの処理の際に生成された64ビ
ットの連鎖ブロックと64ビットの第2平文ブロックと
を、対応するビット毎に排他的論理和の演算を行ない、
64ビットの第2融合平文ブロックを生成する(ステッ
プS302:2回目)。
(14) In step S302, the 64-bit chain block generated in the processing of the first plaintext block and the 64-bit second plaintext block are exclusive-ORed for each corresponding bit. , And
A 64-bit second fused plaintext block is generated (step S302: second time).

【0144】(15)ステップS303において、ここ
では、第2融合平文ブロックから第1中間ブロックを生
成する(ステップS303:2回目)。
(15) In step S303, a first intermediate block is generated from the second fused plaintext block (step S303: second time).

【0145】(16)〜(22)実施の形態1と同様で
ある(ステップS106〜ステップS110:2回目、
ステップS101、ステップS102:3回目)。
(16)-(22) Same as in the first embodiment (steps S106-S110: second time,
Step S101, Step S102: Third time).

【0146】(23)ステップS301において、ここ
では、64ビットの鍵データから48ビットの部分鍵を
8個生成する。なお、鍵データの変更がなければ1回目
と全く同じ処理なので、各部分鍵を記憶しておいてもか
まわない(ステップS301:3回目)。
(23) In step S301, here, eight 48-bit partial keys are generated from 64-bit key data. If there is no change in the key data, the process is exactly the same as the first process, so each partial key may be stored (step S301: third time).

【0147】(24)ステップS302において、ここ
では、第2平文ブロックの処理の際に生成された64ビ
ットの連鎖ブロックと64ビットの第3平文ブロックと
を、対応するビット毎に排他的論理和の演算を行ない、
64ビットの第3融合平文ブロックを生成する(ステッ
プS302:3回目)。
(24) In step S302, the 64-bit chain block generated in the processing of the second plaintext block and the 64-bit third plaintext block are exclusive-ORed for each corresponding bit. , And
A 64-bit third plaintext block is generated (step S302: third time).

【0148】(25)ステップS303において、ここ
では、第3融合平文ブロックから第1中間ブロックを生
成する(ステップS303:3回目)。
(25) In step S303, here, a first intermediate block is generated from the third fused plaintext block (step S303: third time).

【0149】(26)〜(34)実施の形態1と同様で
ある(ステップS106〜ステップS110:3回目、
ステップS101:4回目、ステップS111〜ステッ
プS113)。
(26) to (34) The same as the first embodiment (steps S106 to S110: the third time,
Step S101: fourth time, steps S111 to S113).

【0150】(データ復号化装置20の動作)図14
は、本発明の実施の形態2のデータ復号化装置20にお
ける暗号化処理の流れを示す図である。データ復号化装
置20の動作は、データ暗号化装置10の動作の逆変換
である。
(Operation of Data Decoding Apparatus 20) FIG.
FIG. 9 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the second embodiment of the present invention. The operation of the data decryption device 20 is an inverse conversion of the operation of the data encryption device 10.

【0151】実施の形態1における図10に示すデータ
復号化装置20の動作と共通するステップには同一符号
を付し、その説明を省略する。 (1)〜(2)実施の形態1と同様である(ステップS
201〜ステップS202:1回目)。
Steps common to those of data decoding apparatus 20 shown in FIG. 10 in the first embodiment are denoted by the same reference numerals, and description thereof is omitted. (1)-(2) Same as the first embodiment (step S
201 to step S202: first time).

【0152】(3)部分鍵生成部204が、鍵データか
ら、復号化部の数に相当する数の部分鍵を生成する(ス
テップS401)。ここでは、予め設定された64ビッ
トの鍵データを入手し、64ビットの鍵データから48
ビットの部分鍵を8個生成する(ステップS401:1
回目)。
(3) The partial key generation unit 204 generates a number of partial keys corresponding to the number of decryption units from the key data (step S401). Here, a 64-bit key data set in advance is obtained, and 48 bits are obtained from the 64-bit key data.
Eight bit partial keys are generated (step S401: 1)
Times).

【0153】(4)〜(6)実施の形態1の(5)、
(6)、(8)と同様である(ステップS205、ステ
ップS206、ステップS208:1回目)。
(4) to (6) Embodiment (5),
This is the same as (6) and (8) (step S205, step S206, step S208: first time).

【0154】(7)第8復号化部205hが、第1の部
分鍵に基づいて、第1中間ブロックから暗号処理ブロッ
クを生成する(ステップS402)。ここでは、第1暗
号文ブロックに対応する第1中間ブロックから第1暗号
処理ブロックを生成する(ステップS402:1回
目)。
(7) The eighth decryption unit 205h generates an encryption processing block from the first intermediate block based on the first partial key (Step S402). Here, the first cipher processing block is generated from the first intermediate block corresponding to the first ciphertext block (step S402: first time).

【0155】(8)ブロック融合部208が、ブロック
記憶部202に記憶された連鎖ブロックを暗号処理ブロ
ックに融合し、平文ブロックを生成する(ステップS4
03)。ここでは、64ビットの連鎖ブロックの初期値
IVと64ビットの第1暗号処理ブロックとを、対応す
るビット毎に排他的論理和を行ない、64ビットの第1
平文ブロックを生成する(ステップS403:1回
目)。
(8) The block fusion unit 208 fuses the chained block stored in the block storage unit 202 with the cryptographic processing block to generate a plaintext block (step S4).
03). Here, the exclusive OR of the initial value IV of the 64-bit chained block and the 64-bit first cryptographic processing block is performed for each corresponding bit, and the 64-bit first bit is processed.
A plaintext block is generated (step S403: first time).

【0156】(9)実施の形態1の(7)と同様である
(ステップS207:1回目)。
(9) Same as (7) of the first embodiment (step S207: first time).

【0157】(10)〜(12)実施の形態1と同様で
ある(ステップS210:1回目、ステップS201〜
ステップS202:2回目)。
(10) to (12) Same as in the first embodiment (step S210: first time, steps S201 to S201)
Step S202: second time).

【0158】(13)ステップS401において、ここ
では、64ビットの鍵データから48ビットの部分鍵を
8個生成する。なお、鍵データの変更がなければ1回目
と全く同じ処理なので、各部分鍵を記憶しておいてもか
まわない(ステップS401:2回目)。
(13) In step S401, here, eight 48-bit partial keys are generated from 64-bit key data. If there is no change in the key data, the process is exactly the same as the first time, so each partial key may be stored (step S401: second time).

【0159】(14)〜(16)実施の形態1の(1
5)、(16)、(18)と同様である(ステップS2
05、ステップS206、ステップS208:2回
目)。
(14)-(16) In the first embodiment, (1)
5), (16), and (18) (Step S2)
05, step S206, step S208: second time).

【0160】(17)ステップS402において、ここ
では、第2暗号文ブロックに対応する第1中間ブロック
から第2暗号処理ブロックを生成する(ステップS40
2:2回目)。
(17) In step S402, a second cryptographic processing block is generated from the first intermediate block corresponding to the second ciphertext block (step S40).
2: Second time).

【0161】(18)ステップS403において、ここ
では、第1暗号文ブロックの処理の際に生成された64
ビットの連鎖ブロックと64ビットの第2暗号処理ブロ
ックとを、対応するビット毎に排他的論理和の演算を行
ない64ビットの第2平文ブロックを生成する(ステッ
プS403:2回目)。
(18) In step S403, here, the 64 generated at the time of processing the first ciphertext block is used.
An exclusive-OR operation is performed on the chained bits block and the 64-bit second cryptographic processing block for each corresponding bit to generate a 64-bit second plaintext block (step S403: second time).

【0162】(19)実施の形態1の(17)と同様で
ある(ステップS207:2回目)。 (20)〜(22)実施の形態1と同様である(ステッ
プS210:2回目、ステップS201〜ステップS2
02:3回目)。
(19) This is the same as (17) of the first embodiment (step S207: second time). (20) to (22) Same as in the first embodiment (step S210: second time, steps S201 to S2
02: 3rd time).

【0163】(23)ステップS401において、ここ
では、64ビットの鍵データから48ビットの部分鍵を
8個生成する。なお、鍵データの変更がなければ1回目
と全く同じ処理なので、各部分鍵を記憶しておいてもか
まわない(ステップS401:3回目)。 (24)〜(26)実施の形態1の(25)、(2
6)、(28)と同様である(ステップS205、ステ
ップS206、ステップS208:3回目)。
(23) In step S401, here, eight 48-bit partial keys are generated from 64-bit key data. If there is no change in the key data, the process is exactly the same as the first time, so each partial key may be stored (step S401: third time). (24) to (26) Embodiments (25) and (2)
6) and (28) (step S205, step S206, step S208: third time).

【0164】(27)ステップS402において、ここ
では、第3暗号文ブロックに対応する第1中間ブロック
から第3暗号処理ブロックを生成する(ステップS40
2:3回目)。
(27) In step S402, a third cryptographic processing block is generated from the first intermediate block corresponding to the third ciphertext block (step S40).
2: Third time).

【0165】(28)ステップS403において、ここ
では、第2暗号文ブロックの処理の際に生成された64
ビットの連鎖ブロックと64ビットの第3暗号処理ブロ
ックとを、対応するビット毎に排他的論理和の演算を行
ない64ビットの第3平文ブロックを生成する(ステッ
プS403:3回目)。
(28) In step S403, here, the 64 generated at the time of processing the second ciphertext block is used.
An exclusive OR operation is performed on the chained bits block and the 64-bit third encryption processing block for each corresponding bit to generate a 64-bit third plaintext block (step S403: third time).

【0166】(29)実施の形態1の(27)と同様で
ある(ステップS207:3回目)。 (30)〜(34)実施の形態1と同様である(ステッ
プS210:3回目、ステップS201:4回目、ステ
ップS211〜ステップS213)。 実施の形態2の暗号処理装置は、前のブロックに暗号処
理に施した過程において生成された中間ブロックを連鎖
ブロックとして記憶しておき、後の暗号処理の際に平文
ブロックや暗号処理ブロックに融合し、暗号処理を施す
度にその連鎖ブロックを更新するものである。
(29) This is the same as (27) of the first embodiment (step S207: third time). (30) to (34) The same as in the first embodiment (step S210: third time, step S201: fourth time, steps S211 to S213). The cryptographic processing device according to the second embodiment stores an intermediate block generated in a process of performing cryptographic processing on a previous block as a chained block, and fuses the intermediate block with a plaintext block or a cryptographic processing block during the subsequent cryptographic processing. Then, each time the encryption processing is performed, the chain block is updated.

【0167】(実施の形態3)本発明の実施の形態3の
データ暗号化装置10は、第5暗号化部105eの入力
のみが実施の形態1のそれと異なっている。実施の形態
1における第5暗号化部105eの入力は第4暗号化部
105dの出力となっているが、実施の形態3における
その入力は平文ブロックである。従って、連鎖ブロック
と平文ブロックは、それぞれ別の暗号化部によって処理
される。
(Embodiment 3) The data encryption device 10 of Embodiment 3 of the present invention is different from that of Embodiment 1 only in the input of the fifth encryption section 105e. The input of the fifth encryption unit 105e in the first embodiment is the output of the fourth encryption unit 105d, but the input in the third embodiment is a plaintext block. Therefore, the chained block and the plaintext block are processed by different encryption units.

【0168】また本発明の実施の形態3のデータ復号化
装置20は、データ暗号化装置10の逆変換であって、
第4復号化部205dの出力が平文ブロックとなり、こ
の平文ブロックをデータ暗号化装置10と同様に暗号化
して生成した第4中間ブロックを新たな連鎖ブロックと
して記憶する点が実施の形態1のデータ復号化装置20
と異なる。
Also, the data decryption device 20 according to the third embodiment of the present invention is a reverse conversion of the data
The data of the first embodiment is that the output of the fourth decryption unit 205d is a plaintext block, and the plaintext block is encrypted as in the data encryption device 10 and the fourth intermediate block generated and stored as a new chain block. Decryption device 20
And different.

【0169】<構成>暗号通信システムの構成は実施の
形態1と同様なので説明を省略する。 (データ暗号化装置10の構成)図15は、本発明の実
施の形態3における図1に示すデータ暗号化装置10の
詳細な構成を示す図である。実施の形態1における図2
に示すデータ暗号化装置10と共通する構成部分には同
一符号を付し、同一の機能を有する構成部分の説明は省
略する。
<Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and the description is omitted. (Configuration of Data Encryption Device 10) FIG. 15 is a diagram showing a detailed configuration of the data encryption device 10 shown in FIG. 1 according to the third embodiment of the present invention. FIG. 2 in Embodiment 1
The same reference numerals are given to the same components as those of the data encryption device 10 shown in FIG.

【0170】このデータ暗号化装置10の構成は実施の
形態1と同一であり、第5暗号化部105eが、第4中
間ブロックからではなく平文ブロックから第5中間ブロ
ックを生成する点のみ実施の形態1と異なる。
The configuration of this data encryption device 10 is the same as that of the first embodiment, except that the fifth encryption unit 105e generates the fifth intermediate block from a plaintext block instead of the fourth intermediate block. Different from the form 1.

【0171】(データ復号化装置20の構成)図16
は、本発明の実施の形態3における図1に示すデータ復
号化装置20の詳細な構成を示す図である。実施の形態
1における図7に示すデータ復号化装置20と共通する
構成部分には同一符号を付し、同一の機能を有する構成
部分の説明は省略する。
(Configuration of Data Decoding Apparatus 20) FIG.
FIG. 14 is a diagram showing a detailed configuration of the data decoding device 20 shown in FIG. 1 according to Embodiment 3 of the present invention. The same components as those of the data decoding device 20 shown in FIG. 7 in the first embodiment are denoted by the same reference numerals, and the description of the components having the same functions will be omitted.

【0172】このデータ復号化装置20は、ブロック分
割部201、ブロック記憶部202、鍵データ融合部2
03、部分鍵生成部204、第1〜4復号化部205a
〜205d、第1〜4暗号化部205i〜205l、端
数データ処理部206及びブロック結合部207で構成
される。
The data decrypting apparatus 20 includes a block dividing section 201, a block storing section 202, a key data fusing section 2
03, partial key generation unit 204, first to fourth decryption units 205a
To 205d, first to fourth encryption units 205i to 205l, a fraction data processing unit 206, and a block combining unit 207.

【0173】第4復号化部205dは、第5の部分鍵に
基づいて、第5中間ブロックから平文ブロックを生成す
る。ここでは、第1〜3暗号文ブロックにそれぞれ対応
する第5中間ブロックから、第1〜3平文ブロックを生
成する。なお、第1〜4復号化部205a〜205dが
行なう変換は、それぞれデータ暗号化装置10の第8〜
5暗号化部105h〜105eが行なう変換の逆変換で
ある。
The fourth decryption section 205d generates a plaintext block from the fifth intermediate block based on the fifth partial key. Here, the first to third plaintext blocks are generated from the fifth intermediate blocks respectively corresponding to the first to third ciphertext blocks. Note that the conversions performed by the first to fourth decryption units 205a to 205d are respectively performed by the eighth to
5 is a reverse conversion of the conversion performed by the encryption units 105h to 105e.

【0174】第1暗号化部205iは、第1の部分鍵に
基づいて、第4復号化部205dが生成した平文ブロッ
クから第1中間ブロックを生成する。第2〜4暗号化部
205j〜205lは、それぞれ第2〜4の部分鍵に基
づいて、第1〜3中間ブロックから第2〜4中間ブロッ
クを生成する。
The first encryption unit 205i generates a first intermediate block from the plaintext block generated by the fourth decryption unit 205d based on the first partial key. The second to fourth encryption units 205j to 205l generate the second to fourth intermediate blocks from the first to third intermediate blocks based on the second to fourth partial keys, respectively.

【0175】第1〜4暗号化部205i〜205lは、
それぞれデータ暗号化装置10の第1〜4暗号化部10
5a〜105dと同一の機能を有し、その動作も全く同
一である。ここでは、第1〜3平文ブロックから、それ
ぞれに対応する第1〜4中間ブロックを生成する。ブロ
ック記憶部202はブロック更新機能を備え、第4暗号
化部205lが第4中間ブロックを生成する度に、この
第4中間ブロックを新たな連鎖ブロックとして記憶して
いる連鎖ブロックを更新し、次のブロックを処理する際
に用いる。ここでの動作は、実施の形態1と同様であ
る。
The first to fourth encryption units 205i to 205l
The first to fourth encryption units 10 of the data encryption device 10 respectively
It has the same function as 5a-105d, and its operation is exactly the same. Here, first to fourth intermediate blocks corresponding to the first to third plaintext blocks are generated. The block storage unit 202 has a block update function. Each time the fourth encryption unit 205l generates a fourth intermediate block, the fourth encryption unit 205l updates a chained block that stores the fourth intermediate block as a new chained block. Used when processing the block. The operation here is the same as in the first embodiment.

【0176】ブロック結合部207は、第4復号化部2
05dが生成した平文データの各ブロック及び端数デー
タ処理部206が生成した端数平文データを結合して平
文データを生成する。ここでは、各64ビットの第1〜
3平文データ及び8ビットの端数平文データを結合して
200ビットの平文データを生成する。
[0176] The block combining section 207 is the fourth decoding section 2
Each block of the plaintext data generated by 05d and the fractional plaintext data generated by the fraction data processing unit 206 are combined to generate plaintext data. Here, the first to 64 bits are
The 3-plaintext data and the 8-bit fractional plaintext data are combined to generate 200-bit plaintext data.

【0177】<動作> (データ暗号化装置10の動作)図17は、本発明の実
施の形態3のデータ暗号化装置10における暗号化処理
の流れを示す図である。実施の形態1における図9に示
すデータ暗号化装置10の動作と共通するステップには
同一符号を付し、その説明を省略する。
<Operation> (Operation of Data Encryption Apparatus 10) FIG. 17 is a diagram showing a flow of an encryption process in the data encryption apparatus 10 according to the third embodiment of the present invention. Steps common to the operations of the data encryption device 10 shown in FIG. 9 in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted.

【0178】(1)〜(7)実施の形態1と同様である
(ステップS101〜ステップS107:1回目)。 (8)第5〜7暗号化部105e〜105gが、それぞ
れ第5〜7の部分鍵に基づいて、平文ブロック及び第5
〜6中間ブロックから第5〜7中間ブロックを生成する
(ステップS501)。ここでは、第1平文ブロック及
び第1平文ブロックに対応する第5〜6中間ブロックか
ら第5〜7中間ブロックを生成する(ステップS50
1:1回目)。
(1) to (7) Same as in the first embodiment (steps S101 to S107: first time). (8) The fifth to seventh encrypting units 105e to 105g respectively generate a plaintext block and a fifth plaintext block based on the fifth to seventh partial keys.
The fifth to seventh intermediate blocks are generated from the fifth to sixth intermediate blocks (step S501). Here, the fifth to seventh intermediate blocks are generated from the first plaintext block and the fifth to sixth intermediate blocks corresponding to the first plaintext block (step S50).
1: 1).

【0179】(9)〜(17)実施の形態1と同様であ
る(ステップS109、ステップS110:1回目、ス
テップS101〜ステップS107:2回目)。 (18)ステップS501において、ここでは、第2平
文ブロック及び第2平文ブロックに対応する第5〜6中
間ブロックから第5〜7中間ブロックを生成する(ステ
ップS501:2回目)。
(9)-(17) Same as in the first embodiment (step S109, step S110: first time, steps S101-S107: second time). (18) In step S501, here, the fifth to seventh intermediate blocks are generated from the second plaintext block and the fifth to sixth intermediate blocks corresponding to the second plaintext block (step S501: second time).

【0180】(19)〜(27)実施の形態1と同様で
ある(ステップS109、ステップS110:2回目、
ステップS101〜ステップS107:3回目)。 (28)ステップS501において、ここでは、第3平
文ブロック及び第3平文ブロックに対応する第5〜6中
間ブロックから第5〜7中間ブロックを生成する(ステ
ップS501:3回目)。
(19)-(27) The same as the first embodiment (step S109, step S110: second time,
Step S101 to step S107: third time). (28) In step S501, here, the third plaintext block and the fifth to seventh intermediate blocks are generated from the fifth to sixth intermediate blocks corresponding to the third plaintext block (step S501: third time).

【0181】(29)〜(34)実施の形態1と同様で
ある(ステップS109、ステップS110:3回目、
ステップS101:4回目、ステップS111〜ステッ
プS113)。 (データ復号化装置20の動作)
(29) to (34) The same as in the first embodiment (step S109, step S110: third time,
Step S101: fourth time, steps S111 to S113). (Operation of Data Decoding Device 20)

【0182】図18は、本発明の実施の形態3のデータ
復号化装置20における暗号化処理の流れを示す図であ
る。データ復号化装置20の動作は、データ暗号化装置
10の動作の逆変換である。実施の形態1における図1
0に示すデータ復号化装置20の動作と共通するステッ
プには同一符号を付し、その説明を省略する。
FIG. 18 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the third embodiment of the present invention. The operation of the data decryption device 20 is an inverse conversion of the operation of the data encryption device 10. FIG. 1 in Embodiment 1
Steps common to those of the operation of the data decoding device 20 indicated by 0 are denoted by the same reference numerals, and description thereof will be omitted.

【0183】(1)〜(5)実施の形態1と同様である
(ステップS201〜ステップS205:1回目)。 (6)第2〜4復号化部205b〜205dが、それぞ
れ第7〜5の部分鍵に基づいて、第7〜5中間ブロック
から第6中間ブロック、第5中間ブロック及び平文ブロ
ックを生成する(ステップS601)。ここでは、第1
暗号文ブロックに対応する第7〜5中間ブロックから第
6中間ブロック、第5中間ブロック及び第1平文ブロッ
クを生成する(ステップS601:1回目)。
(1) to (5) Same as in the first embodiment (steps S201 to S205: first time). (6) The second to fourth decryption units 205b to 205d generate a sixth intermediate block, a fifth intermediate block, and a plaintext block from the seventh to fifth intermediate blocks based on the seventh to fifth partial keys, respectively ( Step S601). Here, the first
A sixth intermediate block, a fifth intermediate block, and a first plaintext block are generated from the seventh to fifth intermediate blocks corresponding to the ciphertext blocks (step S601: first time).

【0184】(7)第1暗号化部205iが、第1の部
分鍵に基づいて、第4復号化部205dが生成した平文
ブロックから第1中間ブロックを生成する(ステップS
602)。ここでは、第1平文ブロックから第1中間ブ
ロックを生成する(ステップS602:1回目)。 (8)第2〜4暗号化部205j〜205lが、それぞ
れ第2〜4の部分鍵に基づいて、第1〜3中間ブロック
から第2〜4中間ブロックを生成する(ステップS60
3)。ここでは、第1平文ブロックに対応する第1〜3
中間ブロックから第2〜4中間ブロックを生成する(ス
テップS603:1回目)。
(7) The first encryption unit 205i generates a first intermediate block from the plaintext block generated by the fourth decryption unit 205d based on the first partial key (Step S).
602). Here, a first intermediate block is generated from the first plaintext block (step S602: first time). (8) The second to fourth encryption units 205j to 205l generate the second to fourth intermediate blocks from the first to third intermediate blocks based on the second to fourth partial keys, respectively (step S60).
3). Here, the first to third blocks corresponding to the first plaintext block
The second to fourth intermediate blocks are generated from the intermediate blocks (step S603: first time).

【0185】(9)ブロック記憶部202が、第4暗号
化部205lが生成した第4中間ブロックを新たな連鎖
ブロックとして、記憶している連鎖ブロックを更新する
(ステップS604)。ここでは、第1平文ブロックに
対応する第4中間ブロックに更新する(ステップS60
4:1回目)。 (10)〜(15)実施の形態1と同様である(ステッ
プS210:1回目、ステップS201〜ステップS2
05:2回目)。
(9) The block storage unit 202 updates the stored chain block with the fourth intermediate block generated by the fourth encryption unit 205l as a new chain block (step S604). Here, it is updated to a fourth intermediate block corresponding to the first plaintext block (step S60).
4: First time). (10) to (15) Same as in the first embodiment (step S210: first time, steps S201 to S2
05: 2nd time).

【0186】(16)ステップS601において、ここ
では、第2暗号文ブロックに対応する第7〜5中間ブロ
ックから第6中間ブロック、第5中間ブロック及び第2
平文ブロックを生成する(ステップS601:2回
目)。 (17)ステップS602において、ここでは、第2平
文ブロックから第1中間ブロックを生成する(ステップ
S602:2回目)。
(16) In step S601, here, from the seventh to fifth intermediate blocks corresponding to the second ciphertext block to the sixth intermediate block, the fifth intermediate block, and the second
A plaintext block is generated (step S601: second time). (17) In step S602, a first intermediate block is generated from the second plaintext block (step S602: second time).

【0187】(18)ステップS603において、ここ
では、第2平文ブロックに対応する第1〜3中間ブロッ
クから第2〜4中間ブロックを生成する(ステップS6
03:2回目)。 (19)ステップS604において、ここでは、第2平
文ブロックに対応する第4中間ブロックに更新する(ス
テップS604:2回目)。
(18) In step S603, here, the second to fourth intermediate blocks are generated from the first to third intermediate blocks corresponding to the second plaintext block (step S6).
03: 2nd time). (19) In step S604, update to a fourth intermediate block corresponding to the second plaintext block here (step S604: second time).

【0188】(20)〜(25)実施の形態1と同様で
ある(ステップS210:2回目、ステップS201〜
ステップS205:3回目)。 (26)ステップS601において、ここでは、第3暗
号文ブロックに対応する第7〜5中間ブロックから第6
中間ブロック、第5中間ブロック及び第3平文ブロック
を生成する(ステップS601:3回目)。 (27)ステップS602において、ここでは、第3平
文ブロックから第1中間ブロックを生成する(ステップ
S602:3回目)。
(20) to (25) The same as in the first embodiment (step S210: second time, steps S201 to S201)
Step S205: third time). (26) In step S601, here, from the seventh to fifth intermediate blocks corresponding to the third ciphertext block to the sixth
An intermediate block, a fifth intermediate block, and a third plaintext block are generated (step S601: third time). (27) In step S602, a first intermediate block is generated from the third plaintext block (step S602: third time).

【0189】(28)ステップS603において、ここ
では、第3平文ブロックに対応する第1〜3中間ブロッ
クから第2〜4中間ブロックを生成する(ステップS6
03:3回目)。 (29)ステップS604において、ここでは、第3平
文ブロックに対応する第4中間ブロックに更新する(ス
テップS604:3回目)。
(28) In step S603, here, the second to fourth intermediate blocks are generated from the first to third intermediate blocks corresponding to the third plaintext block (step S6).
03: Third time). (29) In step S604, update to a fourth intermediate block corresponding to the third plaintext block here (step S604: third time).

【0190】(30)〜(34)実施の形態1と同様で
ある(ステップS210:3回目、ステップS201:
4回目、ステップS211〜ステップS213)。 実施の形態3の暗号処理装置は、前のブロックに暗号処
理に施した過程において生成された中間ブロックを連鎖
ブロックとして記憶しておき、後の暗号処理の際に鍵デ
ータに融合し、暗号処理を施す度にその連鎖ブロックを
更新するものである。
(30) to (34) The same as in the first embodiment (step S210: third time, step S201:
Fourth time, steps S211 to S213). The cryptographic processing apparatus according to the third embodiment stores an intermediate block generated in a process of performing encryption processing on a previous block as a chained block, fuses the intermediate block with key data at the time of subsequent encryption processing, and performs encryption processing. Each time is performed, the chained block is updated.

【0191】なお、実施の形態3では、連鎖ブロックを
鍵データに融合する実施の形態1に上記のような変更を
行なったが、連鎖ブロックを平文ブロックや暗号処理ブ
ロックに融合する実施の形態2に、同様に上記のような
変更を行なうものであってもよい。このような暗号処理
装置は、前のブロックに暗号処理に施した過程において
生成された中間ブロックを連鎖ブロックとして記憶して
おき、後の暗号処理の際に平文ブロックや暗号処理ブロ
ックに融合し、暗号処理を施す度にその連鎖データを更
新する。
In the third embodiment, the above-described change is made to the first embodiment in which a chained block is merged with key data. However, the second embodiment in which a chained block is merged with a plaintext block or a cryptographic processing block is described. Alternatively, the above change may be similarly performed. Such a cryptographic processing device stores an intermediate block generated in a process of performing cryptographic processing on a previous block as a chained block, and fuses the intermediate block with a plaintext block or a cryptographic processing block in a subsequent cryptographic process, Each time the encryption process is performed, the chain data is updated.

【0192】(実施の形態4)本発明の実施の形態4
は、実施の形態2に実施の形態3のような変更を行った
場合において、融合するデータを暗号化する第1〜4暗
号化部と連鎖ブロックを記憶するブロック記憶部との順
番を逆にして、融合後又は融合前のブロックを新たな連
鎖ブロックとして記憶するものである。
(Embodiment 4) Embodiment 4 of the present invention
Reverses the order of the first to fourth encryption units for encrypting the data to be fused and the block storage unit for storing the chained blocks when the second embodiment is changed as in the third embodiment. Thus, the block after or before the fusion is stored as a new chain block.

【0193】<構成>暗号通信システムの構成は実施の
形態1と同様なので説明を省略する。 (データ暗号化装置10の構成)図19は、本発明の実
施の形態4における図1に示すデータ暗号化装置10の
詳細な構成を示す図である。
<Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and a description thereof will be omitted. (Configuration of Data Encryption Apparatus 10) FIG. 19 is a diagram showing a detailed configuration of data encryption apparatus 10 shown in FIG. 1 according to the fourth embodiment of the present invention.

【0194】実施の形態2における図11に示すデータ
暗号化装置10と共通する構成部分には同一符号を付
し、同一の機能を有する構成部分の説明は省略する。こ
のデータ暗号化装置10は、ブロック分割部101、ブ
ロック記憶部102、部分鍵生成部104、第1〜8暗
号化部105a〜105h、端数データ処理部106、
ブロック結合部107及びブロック融合部108で構成
される。
In the second embodiment, the same components as those of the data encryption device 10 shown in FIG. 11 are denoted by the same reference numerals, and the description of the components having the same functions will be omitted. The data encryption device 10 includes a block division unit 101, a block storage unit 102, a partial key generation unit 104, first to eighth encryption units 105a to 105h, a fraction data processing unit 106,
It comprises a block combining unit 107 and a block fusing unit 108.

【0195】第1暗号化部105aは、融合平文ブロッ
クからではなく、ブロック記憶部102に記憶された連
鎖ブロックから第1中間ブロックを生成する。第1〜4
暗号化部105a〜105dは、実施の形態2のそれら
と同一の機能を有する。ここでは、連鎖ブロックから、
それぞれに対応する第1〜3中間ブロック及び暗号処理
ブロックを生成する。ブロック融合部108は、第4暗
号化部105dが生成した暗号処理ブロックを平文ブロ
ックに融合し、第4中間ブロックを生成する。ここで
は、第1平文ブロックを処理する際には、連鎖ブロック
の初期値IVから生成された64ビットの第1暗号処理
ブロックと64ビットの第1平文ブロックとを、対応す
るビット毎に排他的論理和の演算を行ない、第2〜3平
文ブロックを処理する際には、第1〜2平文ブロックの
処理の際に生成された64ビットの第2〜3暗号処理ブ
ロックと64ビットの第2〜3平文ブロックとを、対応
するビット毎に排他的論理和の演算を行なう。
The first encryption unit 105a generates the first intermediate block from the chained block stored in the block storage unit 102, not from the fused plaintext block. First to fourth
The encryption units 105a to 105d have the same functions as those of the second embodiment. Here, from the chain block,
The first to third intermediate blocks and the encryption processing blocks corresponding to each are generated. The block fusion unit 108 fuses the cryptographic processing block generated by the fourth encryption unit 105d into a plaintext block to generate a fourth intermediate block. Here, when the first plaintext block is processed, the 64-bit first cryptographic processing block and the 64-bit first plaintext block generated from the initial value IV of the chained block are exclusively processed for each corresponding bit. When performing OR operation and processing the second and third plaintext blocks, the 64-bit second and third cryptographic processing blocks generated during the processing of the first and second plaintext blocks and the 64-bit second The exclusive OR operation is performed on the corresponding ~ 3 plaintext blocks for each corresponding bit.

【0196】ブロック記憶部102はブロック更新機能
を備え、ブロック融合部108が第4中間ブロックを生
成する度に、この第4中間ブロックを新たな連鎖ブロッ
クとして記憶している連鎖ブロックを更新し、次のブロ
ックを処理する際に用いる。ここでは、予め64ビット
の初期値IVが記憶され、この初期値IVが第1平文ブ
ロックを処理する際に用いられ、この処理の際に生成さ
れた第4中間ブロックを新たな連鎖ブロックとして記憶
する。次に、第1平文ブロックの処理の際に更新された
連鎖ブロックが第2平文ブロックを処理する際に用いら
れ、この処理の際に生成された第4中間ブロックを新た
な連鎖ブロックとして記憶する。次に、第2平文ブロッ
クの処理の際に記憶された連鎖ブロックが第3平文ブロ
ックを処理する際に用いられ、この処理の際に生成され
た第4中間ブロックを新たな連鎖ブロックとして記憶す
る。最後に、第3平文ブロックの処理の際に記憶された
連鎖ブロックが端数平文データを処理する際に用いられ
る。第5〜8暗号化部105e〜105hは、実施の形
態2のそれらと同一の機能を有する。ここでは、第4中
間ブロックから、それぞれに対応する第5〜7中間ブロ
ックと、第1〜3暗号文ブロックとを生成する。
The block storage unit 102 has a block updating function. Each time the block fusion unit 108 generates a fourth intermediate block, the block storage unit 102 updates a chain block storing the fourth intermediate block as a new chain block, Used when processing the next block. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first plaintext block, and the fourth intermediate block generated during this processing is stored as a new chained block. I do. Next, the chain block updated in the processing of the first plaintext block is used in processing the second plaintext block, and the fourth intermediate block generated in this processing is stored as a new chain block. . Next, the chain block stored in the processing of the second plaintext block is used in processing the third plaintext block, and the fourth intermediate block generated in this processing is stored as a new chain block. . Finally, the chain block stored during the processing of the third plaintext block is used when processing the fractional plaintext data. The fifth to eighth encryption units 105e to 105h have the same functions as those of the second embodiment. Here, corresponding fifth to seventh intermediate blocks and first to third ciphertext blocks are generated from the fourth intermediate block.

【0197】端数データ処理部106は、ブロック分割
部101から端数平文データを受け取り、第4暗号化部
105dが生成した暗号処理ブロックに基づいて、端数
平文データから端数平文データと同じビット数の端数暗
号データを生成するものであり、データ整合部106a
及び端数データ融合部106bを含む。データ整合部1
06aは、第4暗号化部105dが生成した暗号処理ブ
ロックから、端数平文データと同じビット数の端数暗号
処理データを生成する。ここでは、端数平文データが8
ビットなので、第4暗号化部105dが生成した暗号処
理ブロックの、例えば上位8ビットで構成される端数暗
号処理データを生成する。
[0197] The fraction data processing unit 106 receives the fraction plaintext data from the block division unit 101, and, based on the encryption processing block generated by the fourth encryption unit 105d, converts the fraction plaintext data into a fraction having the same number of bits as the fraction plaintext data. The data matching unit 106a generates encrypted data.
And a fraction data fusion unit 106b. Data matching unit 1
06a generates fraction encryption data having the same bit number as the fraction plaintext data from the encryption processing block generated by the fourth encryption unit 105d. Here, the fraction plaintext data is 8
Since it is a bit, fractional encryption processing data composed of, for example, upper 8 bits of the encryption processing block generated by the fourth encryption unit 105d is generated.

【0198】端数データ融合部106bは、端数暗号処
理データを端数平文データに融合する。ここでは、8ビ
ットの端数暗号処理データと8ビットの端数平文データ
とを、対応するビット毎に排他的論理和の演算を行な
い、8ビットの端数暗号文データを生成する。なお、端
数データ処理部106は実施の形態2のそれと同一の機
能を有するものであってもよい。
The fraction data fusion unit 106b fuses the fractionally encrypted data with the fractional plaintext data. In this case, the exclusive-OR operation is performed on the 8-bit fractional encrypted data and the 8-bit fractional plaintext data for each corresponding bit to generate 8-bit fractional encrypted data. Note that the fraction data processing unit 106 may have the same function as that of the second embodiment.

【0199】(データ復号化装置20の構成)図20
は、本発明の実施の形態4における図1に示すデータ復
号化装置20の詳細な構成を示す図である。実施の形態
2における図12に示すデータ復号化装置20と共通す
る構成部分には同一符号を付し、同一の機能を有する構
成部分の説明は省略する。
(Configuration of Data Decoding Apparatus 20) FIG.
FIG. 14 is a diagram showing a detailed configuration of the data decoding device 20 shown in FIG. 1 according to Embodiment 4 of the present invention. The same components as those of the data decoding device 20 shown in FIG. 12 according to the second embodiment are denoted by the same reference numerals, and the description of the components having the same functions will be omitted.

【0200】このデータ復号化装置20は、ブロック分
割部201、ブロック記憶部202、部分鍵生成部20
4、第1〜4復号化部205a〜205d、第1〜4暗
号化部205i〜205l、端数データ処理部206、
ブロック結合部207及びブロック融合部208で構成
される。第1暗号化部205iは、第1の部分鍵に基づ
いて、ブロック記憶部202に記憶された連鎖ブロック
から第1中間ブロックを生成する。
The data decrypting apparatus 20 includes a block dividing section 201, a block storing section 202, a partial key generating section 20
4, first to fourth decryption units 205a to 205d, first to fourth encryption units 205i to 205l, fraction data processing unit 206,
It comprises a block combining unit 207 and a block fusing unit 208. The first encryption unit 205i generates a first intermediate block from the chained block stored in the block storage unit 202 based on the first partial key.

【0201】第2〜4暗号化部205j〜205lは、
それぞれ第2〜4の部分鍵に基づいて、第1〜3中間ブ
ロックから第2中間ブロック、第3中間ブロック及び暗
号処理ブロックを生成する。ブロック融合部208は、
第4暗号化部205lが生成した暗号処理ブロックを第
4復号化部205dが生成した第4中間ブロックに融合
し、平文ブロックを生成する。ここでは、第1暗号文ブ
ロックを処理する際には、連鎖ブロックの初期値IVか
ら生成された64ビットの第1暗号処理ブロックと第1
暗号文ブロックから生成された64ビットの第4中間ブ
ロックとを、対応するビット毎に排他的論理和の演算を
行ない64ビットの第1平文ブロックを生成し、第2〜
3暗号文ブロックを処理する際には、第1〜2暗号文ブ
ロックの処理の際に生成された連鎖ブロックから生成さ
れた64ビットの第2〜3暗号処理ブロックと第2〜3
暗号文ブロックから生成された64ビットのそれぞれの
第4中間ブロックとを、対応するビット毎に排他的論理
和の演算を行ない64ビットの第2〜3平文ブロックを
生成する。
The second to fourth encryption units 205j to 205l
A second intermediate block, a third intermediate block, and a cryptographic processing block are generated from the first to third intermediate blocks based on the second to fourth partial keys, respectively. The block fusion unit 208
The encryption processing block generated by the fourth encryption unit 205l is merged with the fourth intermediate block generated by the fourth decryption unit 205d to generate a plaintext block. Here, when processing the first ciphertext block, the 64-bit first cipher processing block generated from the initial value IV of the chained block and the first ciphertext block are processed.
The 64-bit fourth intermediate block generated from the ciphertext block is subjected to an exclusive OR operation for each corresponding bit to generate a 64-bit first plaintext block.
When processing the three ciphertext blocks, the 64-bit second to third cipher processing blocks generated from the chained blocks generated during the processing of the first and second ciphertext blocks and the second to third ciphertext blocks are used.
An exclusive-OR operation is performed on each of the 64-bit fourth intermediate blocks generated from the ciphertext block with respect to each corresponding bit, to generate 64-bit second to third plaintext blocks.

【0202】端数データ処理部206は、ブロック分割
部201から端数暗号文データを受け取り、第4暗号化
部205lが生成した暗号処理ブロックに基づいて、端
数暗号文データから端数暗号文データと同じビット数の
端数平文データを生成するものであり、データ整合部2
06a及び端数データ融合部206bを含む。データ整
合部206aは、第4暗号化部205lが生成した暗号
処理ブロックから、端数暗号文データと同じビット数の
端数暗号処理データを生成する。ここでは、端数暗号文
データが8ビットなので、第4暗号化部205lが生成
した暗号処理ブロックの、例えば上位8ビットで構成さ
れる端数暗号処理データを生成する。
The fraction data processing unit 206 receives the fraction cipher text data from the block dividing unit 201 and, based on the cipher processing block generated by the fourth encrypting unit 205l, converts the fraction cipher text data into the same bits as the fraction cipher text data. The data matching unit 2 generates plaintext data of a fraction.
06a and the fraction data fusion unit 206b. The data matching unit 206a generates the fractional encryption processing data having the same bit number as the fractional ciphertext data from the encryption processing block generated by the fourth encryption unit 205l. In this case, since the fractional ciphertext data is 8 bits, fractional encryption processing data composed of, for example, upper 8 bits of the encryption processing block generated by the fourth encryption unit 205l is generated.

【0203】端数データ融合部206bは、端数暗号処
理データを端数暗号文データに融合する。ここでは、8
ビットの端数暗号処理データと8ビットの端数暗号文デ
ータとを、対応するビット毎に排他的論理和の演算を行
ない、8ビットの端数平文データを生成する。なお、端
数データ処理部206は実施の形態2のそれと同一の機
能を有するものであってもよい。
The fraction data fusion unit 206b fuses the fractionally encrypted data into the fractionally encrypted text data. Here, 8
An exclusive-OR operation is performed on the bit-fraction-encrypted data and the 8-bit fraction-ciphertext data for each corresponding bit to generate 8-bit fraction plaintext data. Note that the fraction data processing unit 206 may have the same function as that of the second embodiment.

【0204】<動作> (データ暗号化装置10の動作)図21は、本発明の実
施の形態4のデータ暗号化装置10における暗号化処理
の流れを示す図である。実施の形態2における図13に
示すデータ暗号化装置10の動作と共通するステップに
は同一符号を付し、その説明を省略する。
<Operation> (Operation of Data Encryption Apparatus 10) FIG. 21 is a diagram showing a flow of an encryption process in the data encryption apparatus 10 according to the fourth embodiment of the present invention. Steps common to the operations of the data encryption device 10 shown in FIG. 13 in the second embodiment are denoted by the same reference numerals, and description thereof will be omitted.

【0205】(1)〜(3)実施の形態2と同様である
(ステップS101、ステップS102、ステップS3
01:1回目)。 (4)第1暗号化部105aが、第1の部分鍵に基づい
て、ブロック記憶部102に記憶された連鎖ブロックか
ら第1中間ブロックを生成する(ステップS701)。
ここでは、連鎖ブロックの初期値IVから第1中間ブロ
ックを生成する(ステップS701:1回目)。
(1) to (3) The same as the second embodiment (steps S101, S102, S3)
01: the first time). (4) The first encryption unit 105a generates a first intermediate block from the chained blocks stored in the block storage unit 102 based on the first partial key (Step S701).
Here, the first intermediate block is generated from the initial value IV of the chained block (step S701: first time).

【0206】(5)第2〜4暗号化部105b〜105
dが、それぞれ第2〜4の部分鍵に基づいて、第1〜3
中間ブロックから第2中間ブロック、第3中間ブロック
及び暗号処理ブロックを生成する(ステップS70
2)。ここでは、連鎖ブロックの初期値IVに対応する
第1〜3中間ブロックから第2中間ブロック、第3中間
ブロック及び第1暗号処理ブロックを生成する(ステッ
プS702:1回目)。 (6)ブロック融合部108が、暗号処理ブロックを平
文ブロックに融合し、第4中間ブロックを生成する(ス
テップS703)。ここでは、64ビットの第1暗号処
理ブロックと64ビットの第1平文ブロックとを、対応
するビット毎に排他的論理和を行ない、64ビットの第
4中間ブロックを生成する(ステップS703:1回
目)。
(5) Second to fourth encryption units 105b to 105
d is based on the second to fourth partial keys, respectively,
A second intermediate block, a third intermediate block, and a cryptographic processing block are generated from the intermediate blocks (step S70).
2). Here, a second intermediate block, a third intermediate block, and a first cryptographic processing block are generated from the first to third intermediate blocks corresponding to the initial value IV of the chained block (step S702: first time). (6) The block fusion unit 108 fuses the cryptographic processing block into a plaintext block to generate a fourth intermediate block (step S703). Here, the 64-bit first cryptographic processing block and the 64-bit first plaintext block are subjected to exclusive OR for each corresponding bit to generate a 64-bit fourth intermediate block (step S703: first time). ).

【0207】(7)〜(13)実施の形態2と同様であ
る(ステップS107〜ステップS110:1回目、ス
テップS101、ステップS102、ステップS30
1:2回目)。 (14)ステップS701において、ここでは、第1平
文ブロックの処理の際に生成された64ビットの連鎖ブ
ロックから第1中間ブロックを生成する(ステップS7
01:2回目)。
(7)-(13) Same as the second embodiment (steps S107-S110: first time, step S101, step S102, step S30)
1: 2). (14) In step S701, here, a first intermediate block is generated from the 64-bit chain block generated during the processing of the first plaintext block (step S7).
01: 2nd time).

【0208】(15)ステップS702において、ここ
では、第1平文ブロックの処理の際に生成された連鎖ブ
ロックに対応する第1〜3中間ブロックから第2中間ブ
ロック、第3中間ブロック及び第2暗号処理ブロックを
生成する(ステップS702:2回目)。 (16)ステップS703において、ここでは、64ビ
ットの第2暗号処理ブロックと64ビットの第2平文ブ
ロックとを、対応するビット毎に排他的論理和を行な
い、64ビットの第4中間ブロックを生成する(ステッ
プS703:2回目)。
(15) In step S702, here, from the first to third intermediate blocks corresponding to the concatenated block generated in the processing of the first plaintext block, the second intermediate block, the third intermediate block, and the second cipher A processing block is generated (step S702: second time). (16) In step S703, the 64-bit second cryptographic processing block and the 64-bit second plaintext block are subjected to an exclusive OR operation for each corresponding bit to generate a 64-bit fourth intermediate block. (Step S703: second time).

【0209】(17)〜(23)実施の形態2と同様で
ある(ステップS107〜ステップS110:2回目、
ステップS101、ステップS102、ステップS30
1:3回目)。 (24)ステップS701において、ここでは、第2平
文ブロックの処理の際に生成された64ビットの連鎖ブ
ロックから第1中間ブロックを生成する(ステップS7
01:3回目)。
(17) to (23) The same as the second embodiment (steps S107 to S110: the second time,
Step S101, step S102, step S30
1: 3). (24) In step S701, the first intermediate block is generated from the 64-bit chain block generated in the processing of the second plaintext block (step S7).
01: third time).

【0210】(25)ステップS702において、ここ
では、第2平文ブロックの処理の際に生成された連鎖ブ
ロックに対応する第1〜3中間ブロックから第2中間ブ
ロック、第3中間ブロック及び第3暗号処理ブロックを
生成する(ステップS702:3回目)。 (26)ステップS703において、ここでは、64ビ
ットの第3暗号処理ブロックと64ビットの第3平文ブ
ロックとを、対応するビット毎に排他的論理和を行な
い、64ビットの第4中間ブロックを生成する(ステッ
プS703:3回目)。
(25) In step S702, here, the first to third intermediate blocks, the third intermediate block, the third intermediate block, and the third cipher block corresponding to the chain block generated during the processing of the second plaintext block are used. A processing block is generated (step S702: third time). (26) In step S703, an exclusive OR is performed on the 64-bit third cryptographic processing block and the 64-bit third plaintext block for each corresponding bit to generate a 64-bit fourth intermediate block. (Step S703: third time).

【0211】(27)〜(34)実施の形態2と同様で
ある(ステップS107〜ステップS110:3回目、
ステップS101:4回目、ステップS111〜ステッ
プS113)。 (データ復号化装置20の動作)図22は、本発明の実
施の形態4のデータ復号化装置20における暗号化処理
の流れを示す図である。
(27) to (34) The same as the second embodiment (steps S107 to S110: the third time,
Step S101: fourth time, steps S111 to S113). (Operation of Data Decryption Device 20) FIG. 22 is a diagram showing a flow of the encryption process in the data decryption device 20 according to the fourth embodiment of the present invention.

【0212】データ復号化装置20の動作は、データ暗
号化装置10の動作の逆変換である。実施の形態2にお
ける図14に示すデータ復号化装置20の動作と共通す
るステップには同一符号を付し、その説明を省略する。
The operation of the data decryption device 20 is the inverse conversion of the operation of the data encryption device 10. Steps common to the operations of data decoding apparatus 20 shown in FIG. 14 in the second embodiment are denoted by the same reference numerals, and description thereof will be omitted.

【0213】(1)〜(5)実施の形態2と同様である
(ステップS201、ステップS202、ステップS4
01、ステップS205、ステップS206:1回
目)。 (6)第1暗号化部205iが、第1の部分鍵に基づい
て、ブロック記憶部202に記憶された連鎖ブロックか
ら第1中間ブロックを生成する(ステップS801)。
ここでは、連鎖ブロックの初期値IVから第1中間ブロ
ックを生成する(ステップS801:1回目)。
(1) to (5) The same as in the second embodiment (step S201, step S202, step S4)
01, step S205, step S206: first time). (6) The first encryption unit 205i generates a first intermediate block from the chained blocks stored in the block storage unit 202 based on the first partial key (Step S801).
Here, the first intermediate block is generated from the initial value IV of the chained block (step S801: first time).

【0214】(7)第2〜4暗号化部205j〜205
lが、それぞれ第2〜4の部分鍵に基づいて、第1〜3
中間ブロックから第2中間ブロック、第3中間ブロック
及び暗号処理ブロックを生成する(ステップS80
2)。ここでは、連鎖ブロックの初期値IVに対応する
第1〜3中間ブロックから第2中間ブロック、第3中間
ブロック及び第1暗号処理ブロックを生成する(ステッ
プS802:1回目)。 (8)ブロック融合部208が、暗号処理ブロックを、
第4中間ブロックに融合し、平文ブロックを生成する
(ステップS803)。ここでは、64ビットの第1暗
号処理ブロックと第1暗号文ブロックに対応する64ビ
ットの第4中間ブロックとを、対応するビット毎に排他
的論理和を行ない、64ビットの第1平文ブロックを生
成する(ステップS803:1回目)。
(7) Second to fourth encryption units 205j to 205
1 is based on the second to fourth partial keys, respectively,
A second intermediate block, a third intermediate block, and a cryptographic processing block are generated from the intermediate blocks (step S80).
2). Here, a second intermediate block, a third intermediate block, and a first cryptographic processing block are generated from the first to third intermediate blocks corresponding to the initial value IV of the chained block (step S802: first time). (8) The block fusion unit 208 converts the cryptographic processing block into
A plaintext block is generated by merging with the fourth intermediate block (step S803). Here, an exclusive OR is performed on the 64-bit first cryptographic processing block and the 64-bit fourth intermediate block corresponding to the first ciphertext block for each corresponding bit, and the 64-bit first plaintext block is converted. Generated (step S803: first time).

【0215】(9)〜(15)実施の形態2と同様であ
る(ステップS207、ステップS210:1回目、ス
テップS201、ステップS202、ステップS40
1、ステップS205、ステップS206:2回目)。 (16)ステップS801において、ここでは、第1暗
号文ブロックの処理の際に生成された64ビットの連鎖
ブロックから第1中間ブロックを生成する(ステップS
801:2回目)。
(9)-(15) Same as in the second embodiment (step S207, step S210: first time, step S201, step S202, step S40)
1, step S205, step S206: second time). (16) In step S801, the first intermediate block is generated from the 64-bit chain block generated in the processing of the first ciphertext block (step S801).
801: the second time).

【0216】(17)ステップS802において、ここ
では、第1暗号文ブロックの処理の際に生成された連鎖
ブロックに対応する第1〜3中間ブロックから第2中間
ブロック、第3中間ブロック及び第2暗号処理ブロック
を生成する(ステップS802:2回目)。 (18)ステップS803において、ここでは、64ビ
ットの第2暗号処理ブロックと第2暗号文ブロックに対
応する64ビットの第4中間ブロックとを、対応するビ
ット毎に排他的論理和を行ない、64ビットの第2平文
ブロックを生成する(ステップS803:2回目)。
(17) In step S802, here, the first to third intermediate blocks, the third intermediate block, and the second intermediate block corresponding to the chained block generated during the processing of the first ciphertext block. An encryption processing block is generated (step S802: second time). (18) In step S803, exclusive OR is performed for the corresponding 64-bit second cryptographic processing block and the 64-bit fourth intermediate block corresponding to the second ciphertext block for each corresponding bit. A second plaintext block of bits is generated (step S803: second time).

【0217】(19)〜(25)実施の形態2と同様で
ある(ステップS207、ステップS210:2回目、
ステップS201、ステップS202、ステップS40
1、ステップS205、ステップS206:3回目)。 (26)ステップS801において、ここでは、第2暗
号文ブロックの処理の際に生成された64ビットの連鎖
ブロックから第1中間ブロックを生成する(ステップS
801:3回目)。
(19)-(25) Same as in the second embodiment (step S207, step S210: second time,
Step S201, step S202, step S40
1, step S205, step S206: third time). (26) In step S801, the first intermediate block is generated from the 64-bit chain block generated in the processing of the second ciphertext block (step S801).
801: the third time).

【0218】(27)ステップS802において、ここ
では、第2暗号文ブロックの処理の際に生成された連鎖
ブロックに対応する第1〜3中間ブロックから第2中間
ブロック、第3中間ブロック及び第3暗号処理ブロック
を生成する(ステップS802:3回目)。 (28)ステップS803において、ここでは、64ビ
ットの第3暗号処理ブロックと第3暗号文ブロックに対
応する64ビットの第4中間ブロックとを、対応するビ
ット毎に排他的論理和を行ない、64ビットの第3平文
ブロックを生成する(ステップS803:3回目)。
(27) In step S802, here, the first to third intermediate blocks, the third intermediate block, and the third intermediate block corresponding to the chained block generated during the processing of the second ciphertext block. An encryption processing block is generated (step S802: third time). (28) In step S803, exclusive OR of the 64-bit third cryptographic processing block and the 64-bit fourth intermediate block corresponding to the third ciphertext block is performed for each corresponding bit. A third plaintext block of bits is generated (step S803: third time).

【0219】(29)〜(34)実施の形態2と同様で
ある(ステップS207、ステップS210:3回目、
ステップS201:4回目、ステップS211〜ステッ
プS213)。 実施の形態4の暗号処理装置は、前のブロックに暗号処
理に施した過程において生成された中間ブロックを連鎖
ブロックとして記憶しておき、後の暗号処理の際に暗号
処理を施して平文ブロックや暗号処理ブロックに融合
し、暗号処理を施す度にその連鎖ブロックを更新するも
のである。
(29)-(34) The same as in the second embodiment (step S207, step S210: third time,
Step S201: fourth time, steps S211 to S213). The cryptographic processing device according to the fourth embodiment stores intermediate blocks generated in the process of performing encryption processing on a previous block as a chained block, and performs encryption processing on subsequent encryption processing to perform plaintext block processing. It is integrated with the cryptographic processing block, and the chained block is updated each time the cryptographic processing is performed.

【0220】(実施の形態5)本発明の実施の形態5
は、融合後又は融合前のブロックを新たな連鎖ブロック
とするのではなく、連鎖ブロックに暗号処理を施したブ
ロックを新たな連鎖ブロックとして記憶する点のみが実
施の形態4と異なる。
(Embodiment 5) Embodiment 5 of the present invention
Is different from the fourth embodiment only in that a block obtained by performing encryption processing on a chained block is stored as a new chained block, instead of using a block after or before fusion as a new chained block.

【0221】<構成>暗号通信システムの構成は実施の
形態1と同様なので説明を省略する。 (データ暗号化装置10の構成)図23は、本発明の実
施の形態5における図1に示すデータ暗号化装置10の
詳細な構成を示す図である。
<Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and the description is omitted. (Configuration of Data Encryption Apparatus 10) FIG. 23 is a diagram showing a detailed configuration of the data encryption apparatus 10 shown in FIG. 1 according to the fifth embodiment of the present invention.

【0222】実施の形態2における図11に示すデータ
暗号化装置10と共通する構成部分には同一符号を付
し、同一の機能を有する構成部分の説明は省略する。こ
のデータ暗号化装置10は、ブロック分割部101、ブ
ロック記憶部102、部分鍵生成部104、第1〜8暗
号化部105a〜105h、端数データ処理部106、
ブロック結合部107及びブロック融合部108で構成
される。第1暗号化部105aは、融合平文ブロックか
らではなく、ブロック記憶部102に記憶された連鎖ブ
ロックから第1中間ブロックを生成する。
The same components as those of the data encryption device 10 shown in FIG. 11 according to the second embodiment are denoted by the same reference numerals, and the description of the components having the same functions will be omitted. The data encryption device 10 includes a block division unit 101, a block storage unit 102, a partial key generation unit 104, first to eighth encryption units 105a to 105h, a fraction data processing unit 106,
It comprises a block combining unit 107 and a block fusing unit 108. The first encryption unit 105a generates the first intermediate block from the chained block stored in the block storage unit 102, not from the fused plaintext block.

【0223】第1〜4暗号化部105a〜105dは、
実施の形態2のそれらと同一の機能を有する。ここで
は、連鎖ブロックから、それぞれに対応する第1〜4中
間ブロックを生成する。ブロック融合部108は、第4
暗号化部105dが生成した第4中間ブロックを平文ブ
ロックに融合し、融合平文ブロックを生成する。ここで
は、第1平文ブロックを処理する際には、連鎖ブロック
の初期値IVから生成された64ビットの第4中間ブロ
ックと64ビットの第1平文ブロックとを、対応するビ
ット毎に排他的論理和の演算を行ない、第2〜3平文ブ
ロックを処理する際には、第1〜2平文ブロックの処理
の際に生成されたそれぞれに対応する64ビットの第4
中間ブロックと64ビットの第2〜3平文ブロックと
を、対応するビット毎に排他的論理和の演算を行なう。
The first to fourth encryption units 105a to 105d
It has the same functions as those of the second embodiment. Here, the corresponding first to fourth intermediate blocks are generated from the chained blocks. The block fusion unit 108
The fourth intermediate block generated by the encryption unit 105d is fused to a plaintext block to generate a fused plaintext block. Here, when processing the first plaintext block, the 64-bit fourth intermediate block and the 64-bit first plaintext block generated from the initial value IV of the chained block are subjected to exclusive logic for each corresponding bit. When a sum operation is performed and the second and third plaintext blocks are processed, a 64-bit fourth corresponding to each generated during the processing of the first and second plaintext blocks is used.
An exclusive OR operation is performed on the intermediate block and the second and third 64-bit plaintext blocks for each corresponding bit.

【0224】第5暗号化部105eは、第4中間ブロッ
クからではなく、ブロック融合部108が生成した融合
平文ブロックから第5中間ブロックを生成する。第5〜
8暗号化部105e〜105hは、実施の形態2のそれ
らと同一の機能を有する。ここでは、融合平文ブロック
から、それぞれに対応する第5〜7中間ブロックと、第
1〜3暗号文ブロックとを生成する。端数データ処理部
106は、実施の形態4のそれと同一の機能を有する。
The fifth encryption unit 105e generates the fifth intermediate block not from the fourth intermediate block but from the fused plaintext block generated by the block fusion unit 108. Fifth
The eight encryption units 105e to 105h have the same functions as those of the second embodiment. Here, the corresponding fifth to seventh intermediate blocks and first to third ciphertext blocks are generated from the fused plaintext block. The fraction data processing unit 106 has the same function as that of the fourth embodiment.

【0225】なお、端数データ処理部106は実施の形
態2のそれと同一の機能を有するものであってもよい。 (データ復号化装置20の構成)図24は、本発明の実
施の形態5における図1に示すデータ復号化装置20の
詳細な構成を示す図である。
Note that the fraction data processing unit 106 may have the same function as that of the second embodiment. (Structure of Data Decoding Device 20) FIG. 24 is a diagram showing a detailed structure of the data decoding device 20 shown in FIG. 1 according to the fifth embodiment of the present invention.

【0226】実施の形態2における図12に示すデータ
復号化装置20と共通する構成部分には同一符号を付
し、同一の機能を有する構成部分の説明は省略する。こ
のデータ復号化装置20は、ブロック分割部201、ブ
ロック記憶部202、部分鍵生成部204、第1〜4復
号化部205a〜205d、第1〜4暗号化部205i
〜205l、端数データ処理部206、ブロック結合部
207及びブロック融合部208で構成される。
The same components as those of data decoding apparatus 20 shown in FIG. 12 in the second embodiment are denoted by the same reference numerals, and description of the components having the same functions will be omitted. The data decryption device 20 includes a block division unit 201, a block storage unit 202, a partial key generation unit 204, first to fourth decryption units 205a to 205d, and first to fourth encryption units 205i.
2051; a fraction data processing unit 206; a block combining unit 207;

【0227】第4復号化部205dは、第5の部分鍵に
基づいて、第5中間ブロックから暗号処理ブロックを生
成する。ここでは、第1〜3暗号文ブロックにそれぞれ
対応する第5中間ブロックから、第1〜3暗号処理ブロ
ックを生成する。なお、第1〜4復号化部205a〜2
05dが行なう変換は、それぞれデータ暗号化装置10
の第4〜1暗号化部105d〜105aが行なう変換の
逆変換である。第1暗号化部205iは、第1の部分鍵
に基づいて、ブロック記憶部202に記憶された連鎖ブ
ロックから第1中間ブロックを生成する。
The fourth decryption unit 205d generates a cryptographic processing block from the fifth intermediate block based on the fifth partial key. Here, the first to third cipher processing blocks are generated from the fifth intermediate blocks respectively corresponding to the first to third ciphertext blocks. The first to fourth decoding units 205a to 205a-2
The conversion performed by each of the data encryption devices 10d
Is the inverse conversion of the conversion performed by the fourth to first encryption units 105d to 105a. The first encryption unit 205i generates a first intermediate block from the chained block stored in the block storage unit 202 based on the first partial key.

【0228】第2〜4暗号化部205j〜205lは、
それぞれ第2〜4の部分鍵に基づいて、第1〜3中間ブ
ロックから第2〜4中間ブロックを生成する。ブロック
記憶部202はブロック更新機能を備え、第4暗号化部
205lが第4中間ブロックを生成する度に、この第4
中間ブロックを新たな連鎖ブロックとして記憶している
連鎖ブロックを更新し、次のブロックを処理する際に用
いる。ここでの動作は、実施の形態1と同様である。第
1〜4暗号化部205i〜205lは、それぞれデータ
暗号化装置10の第1〜4暗号化部105a〜105d
と同一の機能を有し、その動作も全く同一である。ここ
では、各連鎖ブロックから、それぞれに対応する第1〜
4中間ブロックを生成する。
The second to fourth encryption units 205j to 205l
The second to fourth intermediate blocks are generated from the first to third intermediate blocks based on the second to fourth partial keys, respectively. The block storage unit 202 has a block update function, and every time the fourth encryption unit 205l generates a fourth intermediate block,
A chain block storing an intermediate block as a new chain block is updated and used when processing the next block. The operation here is the same as in the first embodiment. The first to fourth encryption units 205i to 205l are respectively the first to fourth encryption units 105a to 105d of the data encryption device 10.
And the operation is exactly the same. Here, from each chained block, the first to
Generate four intermediate blocks.

【0229】ブロック融合部208は、第4暗号化部2
05lが生成した第4中間ブロックを第4復号化部20
5dが生成した暗号処理ブロックに融合し、平文ブロッ
クを生成する。ここでは、第1暗号文ブロックを処理す
る際には、連鎖ブロックの初期値IVから生成された6
4ビットの第4中間ブロックと第1暗号文ブロックから
生成された64ビットの暗号処理ブロックとを、対応す
るビット毎に排他的論理和の演算を行ない64ビットの
第1平文ブロックを生成し、第2〜3暗号文ブロックを
処理する際には、第1〜2暗号文ブロックの処理の際に
生成された連鎖ブロックから生成された64ビットのそ
れぞれの第4中間ブロックと第2〜3暗号文ブロックか
ら生成された64ビットの第2〜3暗号処理ブロックと
を、対応するビット毎に排他的論理和の演算を行ない6
4ビットの第2〜3平文ブロックを生成する。端数デー
タ処理部206は、実施の形態4のそれと同一の機能を
有する。
[0229] The block fusion section 208 is the fourth encryption section 2
05l generated by the fourth decoding unit 20
5d is merged with the generated cryptographic processing block to generate a plaintext block. Here, when processing the first ciphertext block, 6 bits generated from the initial value IV of the chained block are used.
A 4-bit fourth intermediate block and a 64-bit cryptographic processing block generated from the first ciphertext block are subjected to an exclusive OR operation for each corresponding bit to generate a 64-bit first plaintext block, When processing the second to third ciphertext blocks, each of the 64-bit fourth intermediate blocks and the second to third ciphers generated from the chained blocks generated during the processing of the first and second ciphertext blocks is used. Exclusive OR operation is performed on the 64-bit second and third encryption processing blocks generated from the sentence block for each corresponding bit.
Generate the second and third 4-bit plaintext blocks. The fraction data processing unit 206 has the same function as that of the fourth embodiment.

【0230】なお、端数データ処理部206は実施の形
態2のそれと同一の機能を有するものであってもよい。 <動作> (データ暗号化装置10の動作)図25は、本発明の実
施の形態5のデータ暗号化装置10における暗号化処理
の流れを示す図である。
[0230] The fraction data processing unit 206 may have the same function as that of the second embodiment. <Operation> (Operation of Data Encryption Device 10) FIG. 25 is a diagram showing a flow of an encryption process in the data encryption device 10 according to the fifth embodiment of the present invention.

【0231】実施の形態2における図13に示すデータ
暗号化装置10の動作と共通するステップには同一符号
を付し、その説明を省略する。 (1)〜(3)実施の形態2と同様である(ステップS
101、ステップS102、ステップS301:1回
目)。 (4)第1暗号化部105aが、第1の部分鍵に基づい
て、ブロック記憶部102に記憶された連鎖ブロックか
ら第1中間ブロックを生成する(ステップS901)。
ここでは、連鎖ブロックの初期値IVから第1中間ブロ
ックを生成する(ステップS901:1回目)。
Steps common to the operations of data encryption apparatus 10 shown in FIG. 13 in the second embodiment are denoted by the same reference numerals, and description thereof will be omitted. (1) to (3) Same as in the second embodiment (step S
101, step S102, step S301: first time). (4) The first encryption unit 105a generates a first intermediate block from the chained blocks stored in the block storage unit 102 based on the first partial key (Step S901).
Here, a first intermediate block is generated from the initial value IV of the chained block (step S901: first time).

【0232】(5)〜(6)実施の形態2の(6)〜
(7)と同様である(ステップS106、ステップS1
07:1回目)。 (7)ブロック融合部108が、第4中間ブロックを平
文ブロックに融合し、融合平文ブロックを生成する(ス
テップS902)。ここでは、連鎖ブロックの初期値I
Vに対応する64ビットの第4中間ブロックと64ビッ
トの第1平文ブロックとを、対応するビット毎に排他的
論理和を行ない、64ビットの第1融合平文ブロックを
生成する(ステップS902:1回目)。 (8)第5暗号化部105eが、第5の部分鍵に基づい
て、融合平文ブロックから第5中間ブロックを生成し、
第6〜7暗号化部105f〜105gが、それぞれ第6
〜7の部分鍵に基づいて、第5〜6中間ブロックから第
6〜7中間ブロックを生成する(ステップS903)。
ここでは、第1融合平文ブロックから第5中間ブロック
を生成し、5〜6中間ブロックから第6〜7中間ブロッ
クを生成する(ステップS903:1回目)。
(5) to (6) Embodiments (6) to (6)
Same as (7) (Step S106, Step S1)
07: the first time). (7) The block fusion unit 108 fuses the fourth intermediate block into a plaintext block to generate a fused plaintext block (step S902). Here, the initial value I of the chained block is
An exclusive OR is performed on the 64-bit fourth intermediate block corresponding to V and the 64-bit first plaintext block for each corresponding bit to generate a 64-bit first fused plaintext block (step S902: 1). Times). (8) The fifth encryption unit 105e generates a fifth intermediate block from the fused plaintext block based on the fifth partial key,
The sixth and seventh encryption units 105f to 105g respectively
The sixth to seventh intermediate blocks are generated from the fifth to sixth intermediate blocks based on the partial keys to ((step S903).
Here, the fifth intermediate block is generated from the first fused plaintext block, and the sixth to seventh intermediate blocks are generated from the fifth to sixth intermediate blocks (step S903: first time).

【0233】(9)〜(13)実施の形態2と同様であ
る(ステップS109、ステップS110:1回目、ス
テップS101、ステップS102、ステップS30
1:2回目)。 (14)ステップS901において、ここでは、第1平
文ブロックの処理の際に生成された64ビットの連鎖ブ
ロックから第1中間ブロックを生成する(ステップS9
01:2回目)。 (15)〜(16)実施の形態2の(16)〜(17)
と同様である(ステップS106、ステップS107:
2回目)。
(9)-(13) Same as in the second embodiment (step S109, step S110: first time, step S101, step S102, step S30)
1: 2). (14) In step S901, here, the first intermediate block is generated from the 64-bit chain block generated in the processing of the first plaintext block (step S9).
01: 2nd time). (15)-(16) (16)-(17) of the second embodiment
(Steps S106 and S107:
The second).

【0234】(17)ステップS902において、ここ
では、第1平文ブロックの処理の際に生成された連鎖ブ
ロックに対応する64ビットの第4中間ブロックと64
ビットの第2平文ブロックとを、対応するビット毎に排
他的論理和を行ない、64ビットの第2融合平文ブロッ
クを生成する(ステップS902:2回目)。 (18)ステップS903において、ここでは、第2融
合平文ブロックから第5中間ブロックを生成し、5〜6
中間ブロックから第6〜7中間ブロックを生成する(ス
テップS903:2回目)。 (19)〜(23)実施の形態2と同様である(ステッ
プS109、ステップS110:2回目、ステップS1
01、ステップS102、ステップS301:3回
目)。
(17) In step S902, here, the 64-bit fourth intermediate block corresponding to the chain block generated in the processing of the first plaintext block and 64
An exclusive OR is performed on the second plaintext block of bits for each corresponding bit to generate a second fused plaintext block of 64 bits (step S902: second time). (18) In step S903, a fifth intermediate block is generated from the second fused plaintext block, and
The sixth and seventh intermediate blocks are generated from the intermediate blocks (step S903: second time). (19) to (23) Same as in the second embodiment (step S109, step S110: second time, step S1
01, step S102, step S301: third time).

【0235】(24)ステップS901において、ここ
では、第2平文ブロックの処理の際に生成された64ビ
ットの連鎖ブロックから第1中間ブロックを生成する
(ステップS901:3回目)。 (25)〜(26)実施の形態2の(26)〜(27)
と同様である(ステップS106、ステップS107:
3回目)。 (27)ステップS902において、ここでは、第2平
文ブロックの処理の際に生成された連鎖ブロックに対応
する64ビットの第4中間ブロックと64ビットの第3
平文ブロックとを、対応するビット毎に排他的論理和を
行ない、64ビットの第3融合平文ブロックを生成する
(ステップS902:3回目)。
(24) In step S901, here, the first intermediate block is generated from the 64-bit chain block generated in the processing of the second plaintext block (step S901: third time). (25) to (26) (26) to (27) of the second embodiment
(Steps S106 and S107:
Third time). (27) In step S902, here, the 64-bit fourth intermediate block and the 64-bit third intermediate block corresponding to the chained block generated during the processing of the second plaintext block are used.
An exclusive OR is performed with the plaintext block for each corresponding bit to generate a 64-bit third fused plaintext block (step S902: third time).

【0236】(28)ステップS903において、ここ
では、第3融合平文ブロックから第5中間ブロックを生
成し、5〜6中間ブロックから第6〜7中間ブロックを
生成する(ステップS903:3回目)。 (29)〜(34)実施の形態2と同様である(ステッ
プS109、ステップS110:3回目、ステップS1
01:4回目、ステップS111〜ステップS11
3)。 (データ復号化装置20の動作)
(28) In step S903, the fifth intermediate block is generated from the third fused plaintext block, and the sixth and seventh intermediate blocks are generated from the fifth and sixth intermediate blocks (step S903: third time). (29)-(34) Same as the second embodiment (step S109, step S110: third time, step S1
01: 4th time, steps S111 to S11
3). (Operation of Data Decoding Device 20)

【0237】図26は、本発明の実施の形態5のデータ
復号化装置20における暗号化処理の流れを示す図であ
る。データ復号化装置20の動作は、データ暗号化装置
10の動作の逆変換である。実施の形態2における図1
4に示すデータ復号化装置20の動作と共通するステッ
プには同一符号を付し、その説明を省略する。
FIG. 26 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the fifth embodiment of the present invention. The operation of the data decryption device 20 is an inverse conversion of the operation of the data encryption device 10. FIG. 1 in Embodiment 2
Steps common to those of the operation of the data decoding device 20 shown in FIG.

【0238】(1)〜(4)実施の形態2と同様である
(ステップS201、ステップS202、ステップS4
01、ステップS205:1回目)。 (5)第2〜4復号化部205b〜205dが、それぞ
れ第7〜5の部分鍵に基づいて、第7〜5中間ブロック
から第6中間ブロック、第5中間ブロック及び暗号処理
ブロックを生成する(ステップS1001)。ここで
は、第1暗号文ブロックに対応する第7〜5中間ブロッ
クから第6中間ブロック、第5中間ブロック及び第1暗
号処理ブロックを生成する(ステップS1001:1回
目)。 (6)第1暗号化部205iが、第1の部分鍵に基づい
て、ブロック記憶部202に記憶された連鎖ブロックか
ら第1中間ブロックを生成する(ステップS100
2)。ここでは、連鎖ブロックの初期値IVから第1中
間ブロックを生成する(ステップS1002:1回
目)。
(1) to (4) The same as the second embodiment (steps S201, S202, S4
01, step S205: first time). (5) The second to fourth decryption units 205b to 205d generate a sixth intermediate block, a fifth intermediate block, and a cryptographic processing block from the seventh to fifth intermediate blocks based on the seventh to fifth partial keys, respectively. (Step S1001). Here, a sixth intermediate block, a fifth intermediate block, and a first cryptographic processing block are generated from the seventh to fifth intermediate blocks corresponding to the first ciphertext block (step S1001: first time). (6) The first encryption unit 205i generates a first intermediate block from the chained blocks stored in the block storage unit 202 based on the first partial key (Step S100)
2). Here, a first intermediate block is generated from the initial value IV of the chained block (step S1002: first time).

【0239】(7)第2〜4暗号化部205j〜205
lが、それぞれ第2〜4の部分鍵に基づいて、第1〜3
中間ブロックから第2〜4中間ブロックを生成する(ス
テップS1003)。ここでは、連鎖ブロックの初期値
IVに対応する第1〜3中間ブロックから第2〜4中間
ブロックを生成する(ステップS1003:1回目)。 (8)ブロック融合部208が、第4中間ブロックを、
暗号処理ブロックに融合し、平文ブロックを生成する
(ステップS1004)。ここでは、第1暗号文ブロッ
クに対応する64ビットの第4中間ブロックと64ビッ
トの第1暗号処理ブロックとを、対応するビット毎に排
他的論理和を行ない、64ビットの第1平文ブロックを
生成する(ステップS1004:1回目)。 (9)〜(14)実施の形態2と同様である(ステップ
S207、ステップS210:1回目、ステップS20
1、ステップS202、ステップS401、ステップS
205:2回目)。
(7) Second to fourth encryption units 205j to 205
1 is based on the second to fourth partial keys, respectively,
The second to fourth intermediate blocks are generated from the intermediate blocks (step S1003). Here, the second to fourth intermediate blocks are generated from the first to third intermediate blocks corresponding to the initial value IV of the chained block (step S1003: first time). (8) The block fusion unit 208 defines the fourth intermediate block as
A plaintext block is generated by fusing with the cryptographic processing block (step S1004). Here, the 64-bit fourth intermediate block corresponding to the first ciphertext block and the 64-bit first cryptographic processing block are XORed for each corresponding bit, and the 64-bit first plaintext block is converted to a 64-bit first plaintext block. It is generated (step S1004: first time). (9) to (14) Same as the second embodiment (step S207, step S210: first time, step S20
1, Step S202, Step S401, Step S
205: 2nd time).

【0240】(15)ステップS1001において、こ
こでは、第2暗号文ブロックに対応する第7〜5中間ブ
ロックから第6中間ブロック、第5中間ブロック及び第
2暗号処理ブロックを生成する(ステップS1001:
2回目)。 (16)ステップS1002において、ここでは、第1
暗号文ブロックの処理の際に生成された64ビットの連
鎖ブロックから第1中間ブロックを生成する(ステップ
S1002:2回目)。 (17)ステップS1003において、ここでは、第1
暗号文ブロックの処理の際に生成された連鎖ブロックに
対応する第1〜3中間ブロックから第2〜4中間ブロッ
クを生成する(ステップS1003:2回目)。
(15) In step S1001, here, a sixth intermediate block, a fifth intermediate block, and a second cryptographic processing block are generated from the seventh to fifth intermediate blocks corresponding to the second ciphertext block (step S1001:
The second). (16) In step S1002, here, the first
A first intermediate block is generated from the 64-bit chain block generated during processing of the ciphertext block (step S1002: second time). (17) In step S1003, here, the first
The second to fourth intermediate blocks are generated from the first to third intermediate blocks corresponding to the chained blocks generated during the processing of the ciphertext block (step S1003: second time).

【0241】(18)ステップS1004において、こ
こでは、第2暗号文ブロックに対応する64ビットの第
4中間ブロックと64ビットの第2暗号処理ブロックと
を、対応するビット毎に排他的論理和を行ない、64ビ
ットの第2平文ブロックを生成する(ステップS100
4:2回目)。 (19)〜(24)実施の形態2と同様である(ステッ
プS207、ステップS210:2回目、ステップS2
01、ステップS202、ステップS401、ステップ
S205:3回目)。 (25)ステップS1001において、ここでは、第3
暗号文ブロックに対応する第7〜5中間ブロックから第
6中間ブロック、第5中間ブロック及び第3暗号処理ブ
ロックを生成する(ステップS1001:3回目)。
(18) In step S1004, exclusive OR of the 64-bit fourth intermediate block and the 64-bit second cryptographic processing block corresponding to the second ciphertext block is performed for each corresponding bit. To generate a 64-bit second plaintext block (step S100).
4: Second time). (19) to (24) Same as in the second embodiment (step S207, step S210: second time, step S2
01, step S202, step S401, step S205: third time). (25) In step S1001, here, the third
A sixth intermediate block, a fifth intermediate block, and a third cryptographic processing block are generated from the seventh to fifth intermediate blocks corresponding to the ciphertext blocks (step S1001: third time).

【0242】(26)ステップS1002において、こ
こでは、第2暗号文ブロックの処理の際に生成された6
4ビットの連鎖ブロックから第1中間ブロックを生成す
る(ステップS1002:3回目)。 (27)ステップS1003において、ここでは、第2
暗号文ブロックの処理の際に生成された連鎖ブロックに
対応する第1〜3中間ブロックから第2〜4中間ブロッ
クを生成する(ステップS1003:3回目)。 (28)ステップS1004において、ここでは、第3
暗号文ブロックに対応する64ビットの第4中間ブロッ
クと64ビットの第3暗号処理ブロックとを、対応する
ビット毎に排他的論理和を行ない、64ビットの第3平
文ブロックを生成する(ステップS1004:3回
目)。
(26) In step S1002, here, the 6 generated at the time of processing the second ciphertext block
A first intermediate block is generated from a 4-bit chain block (step S1002: third time). (27) In step S1003, here, the second
The second to fourth intermediate blocks are generated from the first to third intermediate blocks corresponding to the chained blocks generated during the processing of the ciphertext block (step S1003: third time). (28) In step S1004, here, the third
An exclusive-OR operation is performed on the 64-bit fourth intermediate block corresponding to the ciphertext block and the 64-bit third encryption processing block for each corresponding bit to generate a 64-bit third plaintext block (step S1004). : 3rd time).

【0243】(29)〜(34)実施の形態2と同様で
ある(ステップS207、ステップS210:3回目、
ステップS201:4回目、ステップS211〜ステッ
プS213)。
(29)-(34) The same as in the second embodiment (step S207, step S210: third time,
Step S201: fourth time, steps S211 to S213).

【0244】実施の形態5の暗号処理装置は、前のブロ
ックに暗号処理に施した過程において生成された中間ブ
ロックを連鎖ブロックとして記憶しておき、後の暗号処
理の際に暗号処理を施して平文ブロックや暗号処理ブロ
ックに融合し、暗号処理を施す度にその連鎖ブロックを
更新するものである。
The encryption processing apparatus according to the fifth embodiment stores intermediate blocks generated in the process of performing encryption processing on the previous block as a chain block, and performs encryption processing on the subsequent encryption processing. The block is merged with a plaintext block or a cryptographic processing block, and the chain block is updated each time cryptographic processing is performed.

【0245】(実施の形態6)(Embodiment 6)

【0246】本発明の実施の形態6は、鍵データにより
特定される暗号処理を施して、被暗号処理データから出
力データを生成する暗号処理装置であって、ブロック単
位で暗号処理を施す度に出力ブロック、被暗号処理ブロ
ック及び中間ブロック等を連鎖ブロックとして記憶し、
次のブロックの暗号処理を施す際に記憶している連鎖ブ
ロックにブロック変換を施して鍵データに融合する暗号
処理装置である。
The sixth embodiment of the present invention is a cryptographic processing apparatus that performs cryptographic processing specified by key data and generates output data from data to be encrypted. Output blocks, encrypted blocks and intermediate blocks are stored as chained blocks,
This is a cryptographic processing device that performs block conversion on a chained block stored when performing cryptographic processing of the next block and fuses it with key data.

【0247】<構成>暗号通信システムの構成は実施の
形態1と同様なので説明を省略する。 (データ暗号化装置10の構成)図27は、本発明の実
施の形態6における図1に示すデータ暗号化装置10の
詳細な構成を示す図である。実施の形態1における図2
に示すデータ暗号化装置10と共通する構成部分には同
一符号を付し、同一の機能を有する構成部分の説明は省
略する。このデータ暗号化装置10は、ブロック分割部
101、ブロック記憶部102、鍵データ融合部10
3、部分鍵生成部104、第1〜8暗号化部105a〜
105h、端数データ処理部106、ブロック結合部1
07及びブロック変換部109で構成される。
<Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and the description is omitted. (Configuration of Data Encryption Apparatus 10) FIG. 27 is a diagram showing a detailed configuration of the data encryption apparatus 10 shown in FIG. 1 according to the sixth embodiment of the present invention. FIG. 2 in Embodiment 1
The same reference numerals are given to the same components as those of the data encryption device 10 shown in FIG. The data encryption device 10 includes a block division unit 101, a block storage unit 102, a key data fusion unit 10
3. Partial key generation unit 104, first to eighth encryption units 105a to 105a
105h, fraction data processing unit 106, block combining unit 1
07 and a block conversion unit 109.

【0248】ブロック記憶部102はブロック更新機能
を備え、第8暗号化部105hが暗号文ブロックを生成
する度に、この暗号文ブロックを新たな連鎖ブロックと
して記憶している連鎖ブロックを更新し、次のブロック
を処理する際に用いる。ここでは、予め64ビットの初
期値IVが記憶され、この初期値IVが第1平文ブロッ
クを処理する際に用いられ、この処理の際に生成された
第1暗号文ブロックを新たな連鎖ブロックとして更新す
る。次に、第1平文ブロックの処理の際に更新した連鎖
ブロックが第2平文ブロックを処理する際に用いられ、
この処理の際に生成された第2暗号文ブロックを新たな
連鎖ブロックとして更新する。次に、第2平文ブロック
の処理の際に更新した連鎖ブロックが第3平文ブロック
を処理する際に用いられ、この処理の際に生成された第
3暗号文ブロックを新たな連鎖ブロックとして更新す
る。最後に、第3平文ブロックの処理の際に更新した連
鎖ブロックが端数平文データを処理する際に用いられ
る。
The block storage unit 102 has a block updating function, and every time the eighth encryption unit 105h generates a ciphertext block, it updates a chain block storing this ciphertext block as a new chain block. Used when processing the next block. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first plaintext block, and the first ciphertext block generated in this process is used as a new chain block. Update. Next, the chain block updated during the processing of the first plaintext block is used when processing the second plaintext block,
The second ciphertext block generated in this process is updated as a new chain block. Next, the chain block updated in the processing of the second plaintext block is used in processing the third plaintext block, and the third ciphertext block generated in this processing is updated as a new chain block. . Finally, the chain block updated during the processing of the third plaintext block is used when processing the fractional plaintext data.

【0249】ブロック変換部109は、ブロック記憶部
102に記憶された連鎖ブロックに、予め決めておいた
所定の変換を施して変換ブロックを生成する。ここで、
ブロック変換部109が施す所定の変換は、例えば、ビ
ット置換やビット変換等である。このビット置換とは、
実施例1の第1〜8暗号化部105a〜105hで説明
した転置Pと同様のビット単位の置き換えのことであ
り、このビット変換とは、特定のデータと排他的論理和
の演算を行なう等の固定的なビット単位の演算のことで
ある。ここでは、第1平文ブロックを処理する際には、
64ビットの連鎖ブロックの初期値IVから64ビット
の第1変換ブロックを生成し、第2〜3平文ブロックを
処理する際には、第1〜2平文ブロックの処理の際にそ
れぞれ生成された64ビットの連鎖ブロックから64ビ
ットの第2〜3変換ブロックを生成する。
[0249] The block converter 109 applies a predetermined conversion to the chained blocks stored in the block storage 102 to generate a converted block. here,
The predetermined conversion performed by the block conversion unit 109 is, for example, bit replacement or bit conversion. This bit replacement is
Bit-wise replacement similar to the transposition P described in the first to eighth encryption units 105a to 105h of the first embodiment. This bit conversion is, for example, performing an exclusive OR operation with specific data. Is a fixed bit-unit operation. Here, when processing the first plaintext block,
When a 64-bit first conversion block is generated from the initial value IV of the 64-bit chain block and the second to third plaintext blocks are processed, the 64 bits generated in the processing of the first and second plaintext blocks, respectively. A second conversion block of 64 bits is generated from the chain block of bits.

【0250】鍵データ融合部103は、ブロック変換部
109が生成した変換ブロックを鍵データに融合し融合
鍵データを生成する。ここでは、予め設定された64ビ
ットの鍵データを入手し、第1平文ブロックを処理する
際には、64ビットの第1変換ブロックと64ビットの
鍵データとを、対応するビット毎に排他的論理和の演算
を行ない、第2〜3平文ブロックを処理する際には、6
4ビットの第2〜3変換ブロックと64ビットの鍵デー
タとを、対応するビット毎に排他的論理和の演算を行な
う。
The key data fusion unit 103 fuses the conversion block generated by the block conversion unit 109 with key data to generate fusion key data. Here, when 64-bit key data set in advance is obtained and the first plaintext block is processed, the 64-bit first conversion block and the 64-bit key data are mutually exclusive for each corresponding bit. When performing a logical sum operation and processing the second and third plaintext blocks, 6
An exclusive-OR operation is performed on the 4-bit second and third conversion blocks and the 64-bit key data for each corresponding bit.

【0251】端数データ処理部106は、ブロック分割
部101から端数平文データを受け取り、ブロック変換
部109が生成した変換ブロックに基づいて、端数平文
データから端数平文データと同じビット数の端数暗号文
データを生成するものであり、データ整合部106a及
び端数データ融合部106bを含む。データ整合部10
6aは、ブロック変換部109が生成した変換ブロック
から、端数平文データと同じビット数の端数変換データ
を生成する。ここでは、端数平文データが8ビットなの
で、ブロック変換部109が生成した変換ブロックの、
例えば上位8ビットで構成される端数変換データを生成
する。
The fraction data processing unit 106 receives the fraction plaintext data from the block division unit 101 and, based on the conversion block generated by the block conversion unit 109, converts the fraction plaintext data to the fraction ciphertext data having the same bit number as the fraction plaintext data. , And includes a data matching unit 106a and a fractional data fusion unit 106b. Data matching unit 10
6a generates fraction conversion data having the same bit number as the fraction plaintext data from the conversion block generated by the block conversion unit 109. Here, since the fractional plaintext data is 8 bits, the conversion block generated by the block
For example, it generates fraction conversion data composed of upper 8 bits.

【0252】端数データ融合部106bは、端数変換デ
ータを端数平文データに融合する。ここでは、8ビット
の端数変換データと8ビットの端数平文データとを、対
応するビット毎に排他的論理和の演算を行ない、8ビッ
トの端数暗号文データを生成する。なお、端数データ処
理部106は実施の形態1のそれと同一の機能を有する
ものであってもよい。
The fraction data fusion unit 106b fuses the fraction converted data into the fraction plaintext data. Here, an exclusive OR operation is performed on the 8-bit fraction converted data and the 8-bit fraction plaintext data for each corresponding bit to generate 8-bit fraction ciphertext data. Note that the fraction data processing unit 106 may have the same function as that of the first embodiment.

【0253】(データ復号化装置20の構成)図28
は、本発明の実施の形態6における図1に示すデータ復
号化装置20の詳細な構成を示す図である。実施の形態
1における図7に示すデータ復号化装置20と共通する
構成部分には同一符号を付し、同一の機能を有する構成
部分の説明は省略する。このデータ復号化装置20は、
ブロック分割部201、ブロック記憶部202、鍵デー
タ融合部203、部分鍵生成部204、第1〜8復号化
部205a〜205h、端数データ処理部206、ブロ
ック結合部207及びブロック変換部209で構成され
る。
(Configuration of Data Decoding Apparatus 20) FIG.
FIG. 20 is a diagram showing a detailed configuration of the data decoding device 20 shown in FIG. 1 according to Embodiment 6 of the present invention. The same components as those of the data decoding device 20 shown in FIG. 7 in the first embodiment are denoted by the same reference numerals, and the description of the components having the same functions will be omitted. This data decoding device 20
A block division unit 201, a block storage unit 202, a key data fusion unit 203, a partial key generation unit 204, first to eighth decryption units 205a to 205h, a fraction data processing unit 206, a block combination unit 207, and a block conversion unit 209. Is done.

【0254】ブロック記憶部202はブロック更新機能
を備え、ブロック分割部201が暗号文ブロックを生成
する度に、この暗号文ブロックを新たな連鎖ブロックと
して記憶している連鎖ブロックを更新し、次のブロック
を処理する際に用いる。ここでは、予め64ビットの初
期値IVが記憶され、この初期値IVが第1暗号文ブロ
ックを処理する際に用いられ、第1暗号文ブロックを新
たな連鎖ブロックとして記憶する。次に、第1暗号文ブ
ロックの処理の際に更新された連鎖ブロックが第2暗号
文ブロックを処理する際に用いられ、第2暗号文ブロッ
クを新たな連鎖ブロックとして記憶する。次に、第2暗
号文ブロックの処理の際に記憶された連鎖ブロックが第
3暗号文ブロックを処理する際に用いられ、第3暗号文
ブロックを新たな連鎖ブロックとして記憶する。最後
に、第3暗号文ブロックの処理の際に記憶された連鎖ブ
ロックが端数暗号文データを処理する際に用いられる。
The block storage unit 202 has a block updating function. Each time the block dividing unit 201 generates a ciphertext block, the block storage unit 202 updates a chain block storing this ciphertext block as a new chain block, and Used when processing blocks. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first ciphertext block, and the first ciphertext block is stored as a new chain block. Next, the chain block updated during the processing of the first ciphertext block is used when processing the second ciphertext block, and the second ciphertext block is stored as a new chain block. Next, the chain block stored at the time of processing the second ciphertext block is used at the time of processing the third ciphertext block, and the third ciphertext block is stored as a new chain block. Finally, the chain block stored during the processing of the third ciphertext block is used when processing the fractional ciphertext data.

【0255】ブロック変換部209は、ブロック記憶部
202に記憶された連鎖ブロックに、予め決めておいた
所定の変換を施して変換ブロックを生成する。ここで、
ブロック変換部209が施す所定の変換は、データ暗号
化装置10のブロック変換部109が施す所定の変換と
同一であり、例えば、ビット置換やビット変換等であ
る。ここでは、第1暗号文ブロックを処理する際には、
64ビットの連鎖ブロックの初期値IVから64ビット
の第1変換ブロックを生成し、第2〜3暗号文ブロック
を処理する際には、第1〜2暗号文ブロックの処理の際
にそれぞれ生成された64ビットの連鎖ブロックから6
4ビットの第2〜3変換ブロックを生成する。
The block conversion unit 209 performs a predetermined conversion on the chained blocks stored in the block storage unit 202 to generate a conversion block. here,
The predetermined conversion performed by the block conversion unit 209 is the same as the predetermined conversion performed by the block conversion unit 109 of the data encryption device 10, and is, for example, bit replacement or bit conversion. Here, when processing the first ciphertext block,
A 64-bit first conversion block is generated from the initial value IV of the 64-bit chain block, and when processing the second to third ciphertext blocks, the first conversion block is generated when the first and second ciphertext blocks are processed. 6 bits from a 64-bit chained block
Generate 4-bit second to third conversion blocks.

【0256】鍵データ融合部203は、ブロック変換部
209が生成した変換ブロックを鍵データに融合し融合
鍵データを生成する。ここでは、予め設定された64ビ
ットの鍵データを入手し、第1暗号文ブロックを処理す
る際には、64ビットの第1変換ブロックと64ビット
の鍵データとを、対応するビット毎に排他的論理和の演
算を行ない、第2〜3暗号文ブロックを処理する際に
は、64ビットの第2〜3変換ブロックと64ビットの
鍵データとを、対応するビット毎に排他的論理和の演算
を行なう。
The key data fusion unit 203 fuses the conversion block generated by the block conversion unit 209 with key data to generate fusion key data. Here, when 64-bit key data set in advance is obtained and the first ciphertext block is processed, the 64-bit first conversion block and the 64-bit key data are mutually exclusive for each corresponding bit. When the second and third ciphertext blocks are processed by performing a logical OR operation, the 64-bit second and third conversion blocks and the 64-bit key data are subjected to exclusive OR operation for each corresponding bit. Perform the operation.

【0257】端数データ処理部206は、ブロック分割
部201から端数暗号文データを受け取り、ブロック変
換部109が生成した変換ブロックに基づいて、端数暗
号文データから端数暗号文データと同じビット数の端数
平文データを生成するものであり、データ整合部206
a及び端数データ融合部206bを含む。データ整合部
206aは、ブロック変換部109が生成した変換ブロ
ックから、端数暗号文データと同じビット数の端数変換
データを生成する。ここでは、端数暗号文データが8ビ
ットなので、ブロック変換部109が生成した変換ブロ
ックの、例えば上位8ビットで構成される端数変換デー
タを生成する。
The fraction data processing unit 206 receives the fraction cipher text data from the block dividing unit 201 and, based on the converted block generated by the block converting unit 109, converts the fraction cipher text data into The data matching unit 206 generates plaintext data.
a and a fraction data fusion unit 206b. The data matching unit 206a generates fraction conversion data having the same bit number as the fraction ciphertext data from the conversion block generated by the block conversion unit 109. Here, since the fractional ciphertext data is 8 bits, fraction conversion data composed of, for example, upper 8 bits of the conversion block generated by the block conversion unit 109 is generated.

【0258】端数データ融合部206bは、端数変換デ
ータを端数暗号文データに融合する。ここでは、8ビッ
トの端数変換データと8ビットの端数暗号文データと
を、対応するビット毎に排他的論理和の演算を行ない、
8ビットの端数平文データを生成する。なお、端数デー
タ処理部206は実施の形態1のそれと同一の機能を有
するものであってもよい。 <動作>
The fraction data fusion unit 206b fuses the fraction conversion data into the fraction ciphertext data. Here, an exclusive-OR operation is performed on the 8-bit fraction conversion data and the 8-bit fraction ciphertext data for each corresponding bit,
Generate 8-bit fractional plaintext data. Note that the fraction data processing unit 206 may have the same function as that of the first embodiment. <Operation>

【0259】(データ暗号化装置10の動作)図29
は、本発明の実施の形態6のデータ暗号化装置10にお
ける暗号化処理の流れを示す図である。実施の形態1に
おける図9に示すデータ暗号化装置10の動作と共通す
るステップには同一符号を付し、その説明を省略する。 (1)〜(2)実施の形態1と同様である(ステップS
101、ステップS102:1回目)。 (3)ブロック変換部109が、ブロック記憶部102
に記憶された連鎖ブロックに予め決めておいた所定の変
換を施して変換ブロックを生成し、鍵データ融合部10
3が、その変換ブロックを鍵データに融合し融合鍵デー
タを生成する(ステップS1101)。ここでは、64
ビットの連鎖ブロックの初期値IVから64ビットの第
1変換ブロックを生成し、予め設定された64ビットの
鍵データを入手し、64ビットの第1変換ブロックと6
4ビットの鍵データとを、対応するビット毎に排他的論
理和の演算を行なう(ステップS1101:1回目)。
(Operation of Data Encryption Apparatus 10) FIG.
FIG. 14 is a diagram showing a flow of an encryption process in the data encryption device 10 according to the sixth embodiment of the present invention. Steps common to the operations of the data encryption device 10 shown in FIG. 9 in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted. (1)-(2) Same as the first embodiment (step S
101, step S102: first time). (3) The block conversion unit 109 is used by the block storage unit 102
A conversion block is generated by performing a predetermined conversion predetermined on the chained block stored in the key data fusion unit 10.
3 fuses the converted block into key data and generates fused key data (step S1101). Here, 64
A first conversion block of 64 bits is generated from the initial value IV of the chain block of bits, a predetermined 64-bit key data is obtained, and the first conversion block of 64 bits and 6 bits are converted.
An exclusive OR operation is performed on the 4-bit key data for each corresponding bit (step S1101: first time).

【0260】(4)〜(8)実施の形態1の(4)〜
(6)、(8)、(9)と同様である(ステップS10
4〜ステップS106、ステップS108、ステップS
109:1回目)。
(4)-(8) Embodiments (4)-(8)
This is the same as (6), (8), and (9) (step S10).
4 to Step S106, Step S108, Step S
109: first time).

【0261】(9)ブロック記憶部102が、暗号文ブ
ロックを新たな連鎖ブロックとして、記憶している連鎖
ブロックを更新する(ステップS1102)。ここで
は、第1暗号文ブロックに更新する(ステップS110
2:1回目)。 (10)〜(12)実施の形態1と同様である(ステッ
プS110:1回目、ステップS101、ステップS1
02:2回目)。 (13)ステップS1101において、ここでは、第1
平文ブロックの処理の際に生成された64ビットの連鎖
ブロックから64ビットの第2変換ブロックを生成し、
64ビットの第2変換ブロックと64ビットの鍵データ
とを、対応するビット毎に排他的論理和の演算を行なう
(ステップS1101:2回目)。
(9) The block storage unit 102 updates the stored chain block with the ciphertext block as a new chain block (step S1102). Here, the first ciphertext block is updated (step S110).
2: 1). (10) to (12) Same as the first embodiment (step S110: first time, step S101, step S1
02: 2nd time). (13) In step S1101, here, the first
A 64-bit second conversion block is generated from the 64-bit chain block generated during the processing of the plaintext block,
The exclusive-OR operation is performed on the 64-bit second conversion block and the 64-bit key data for each corresponding bit (step S1101: second time).

【0262】(14)〜(18)実施の形態1の(1
4)〜(16)、(18)、(19)と同様である(ス
テップS104〜ステップS106、ステップS10
8、ステップS109:2回目)。 (19)ステップS1102において、ここでは、第2
暗号文ブロックに更新する(ステップS1102:2回
目)。 (20)〜(22)実施の形態1と同様である(ステッ
プS110:2回目、ステップS101、ステップS1
02:3回目)。
(14)-(18) In the first embodiment, (1)
4) to (16), (18), and (19) (Steps S104 to S106 and Step S10)
8, step S109: second time). (19) In step S1102, here, the second
The ciphertext block is updated (step S1102: second time). (20) to (22) Same as in the first embodiment (step S110: second time, step S101, step S1
02: 3rd time).

【0263】(23)ステップS1101において、こ
こでは、第2平文ブロックの処理の際に生成された64
ビットの連鎖ブロックから64ビットの第3変換ブロッ
クを生成し、64ビットの第3変換ブロックと64ビッ
トの鍵データとを、対応するビット毎に排他的論理和の
演算を行なう(ステップS1101:3回目)。 (24)〜(28)実施の形態1の(24)〜(2
6)、(28)、(29)と同様である(ステップS1
04〜ステップS106、ステップS108、ステップ
S109:3回目)。 (29)ステップS1102において、ここでは、第3
暗号文ブロックに更新する(ステップS1102:3回
目)。
(23) In step S1101, here, the 64 generated at the time of processing the second plaintext block is used.
A 64-bit third conversion block is generated from the bit chain block, and an exclusive-OR operation is performed on the 64-bit third conversion block and the 64-bit key data for each corresponding bit (steps S1101: 3). Times). (24) to (28) (24) to (2) of the first embodiment
6), (28), and (29) (Step S1)
04 to step S106, step S108, step S109: third time). (29) In step S1102, here, the third
The ciphertext block is updated (step S1102: third time).

【0264】(30)〜(34)実施の形態1と同様で
ある(ステップS110:3回目、ステップS101:
4回目、ステップS111〜ステップS113)。 (データ復号化装置20の動作)図30は、本発明の実
施の形態6のデータ復号化装置20における暗号化処理
の流れを示す図である。データ復号化装置20の動作
は、データ暗号化装置10の動作の逆変換である。
(30)-(34) The same as in the first embodiment (step S110: third time, step S101:
Fourth time, steps S111 to S113). (Operation of Data Decryption Device 20) FIG. 30 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the sixth embodiment of the present invention. The operation of the data decryption device 20 is an inverse conversion of the operation of the data encryption device 10.

【0265】実施の形態1における図10に示すデータ
復号化装置20の動作と共通するステップには同一符号
を付し、その説明を省略する。 (1)〜(2)実施の形態1と同様である(ステップS
201〜ステップS202:1回目)。 (3)ブロック変換部209が、ブロック記憶部202
に記憶された連鎖ブロックに予め決めておいた所定の変
換を施して変換ブロックを生成し、鍵データ融合部20
3が、その変換ブロックを鍵データに融合し融合鍵デー
タを生成する(ステップS1201)。ここでは、64
ビットの連鎖ブロックの初期値IVから64ビットの第
1変換ブロックを生成し、予め設定された64ビットの
鍵データを入手し、64ビットの第1変換ブロックと6
4ビットの鍵データとを、対応するビット毎に排他的論
理和の演算を行なう(ステップS1201:1回目)。
Steps common to those of data decoding apparatus 20 shown in FIG. 10 in the first embodiment are denoted by the same reference numerals, and description thereof is omitted. (1)-(2) Same as the first embodiment (step S
201 to step S202: first time). (3) The block conversion unit 209 uses the block storage unit 202
A conversion is generated by applying a predetermined conversion to the chained block stored in the key data fusion unit 20.
3 fuses the converted block into key data and generates fused key data (step S1201). Here, 64
A first conversion block of 64 bits is generated from the initial value IV of the chain block of bits, a predetermined 64-bit key data is obtained, and the first conversion block of 64 bits and 6 bits are converted.
The exclusive-OR operation is performed on the 4-bit key data for each corresponding bit (step S1201: first time).

【0266】(4)〜(8)実施の形態1の(4)〜
(6)、(8)、(9)と同様である(ステップS20
4〜ステップS206、ステップS208、ステップS
209:1回目)。 (9)ブロック記憶部202が、暗号文ブロックを新た
な連鎖ブロックとして、記憶している連鎖ブロックを更
新する(ステップS1202)。ここでは、第1暗号文
ブロックに更新する(ステップS1202:1回目)。 (10)〜(12)実施の形態1と同様である(ステッ
プS210:1回目、ステップS201、ステップS2
02:2回目)。
(4)-(8) Embodiments (4)-(4)
This is the same as (6), (8), and (9) (Step S20)
4 to Step S206, Step S208, Step S
209: the first time). (9) The block storage unit 202 updates the stored chain block with the ciphertext block as a new chain block (step S1202). Here, the first ciphertext block is updated (step S1202: first time). (10) to (12) Same as in the first embodiment (step S210: first time, step S201, step S2
02: 2nd time).

【0267】(13)ステップS1201において、こ
こでは、第1平文ブロックの処理の際に生成された64
ビットの連鎖ブロックから64ビットの第2変換ブロッ
クを生成し、64ビットの第2変換ブロックと64ビッ
トの鍵データとを、対応するビット毎に排他的論理和の
演算を行なう(ステップS1201:2回目)。 (14)〜(18)実施の形態1の(14)〜(1
6)、(18)、(19)と同様である(ステップS2
04〜ステップS206、ステップS208、ステップ
S209:2回目)。 (19)ステップS1202において、ここでは、第2
暗号文ブロックに更新する(ステップS1202:2回
目)。
(13) In step S 1201, here, the 64 generated at the time of processing the first plaintext block is used.
A 64-bit second conversion block is generated from the chained block of bits, and an exclusive-OR operation is performed on the 64-bit second conversion block and the 64-bit key data for each corresponding bit (steps S1201: 2). Times). (14) to (18) (14) to (1) of the first embodiment
6), (18), and (19) (Step S2)
04 to step S206, step S208, step S209: second time). (19) In step S1202, here, the second
The ciphertext block is updated (step S1202: second time).

【0268】(20)〜(22)実施の形態1と同様で
ある(ステップS210:2回目、ステップS201、
ステップS202:3回目)。 (23)ステップS1201において、ここでは、第2
平文ブロックの処理の際に生成された64ビットの連鎖
ブロックから64ビットの第3変換ブロックを生成し、
64ビットの第3変換ブロックと64ビットの鍵データ
とを、対応するビット毎に排他的論理和の演算を行なう
(ステップS1201:3回目)。 (24)〜(28)実施の形態1の(24)〜(2
6)、(28)、(29)と同様である(ステップS2
04〜ステップS206、ステップS208、ステップ
S209:3回目)。
(20)-(22) Same as in the first embodiment (step S210: second time, step S201,
Step S202: Third time). (23) In step S1201, here, the second
A 64-bit third transformation block is generated from the 64-bit chain block generated during the processing of the plaintext block,
An exclusive OR operation is performed on the 64-bit third conversion block and the 64-bit key data for each corresponding bit (step S1201: third time). (24) to (28) (24) to (2) of the first embodiment
6), (28), and (29) (Step S2)
04 to step S206, step S208, step S209: third time).

【0269】(29)ステップS1202において、こ
こでは、第3暗号文ブロックに更新する(ステップS1
202:3回目)。 (30)〜(34)実施の形態1と同様である(ステッ
プS210:3回目、ステップS201:4回目、ステ
ップS211〜ステップS213)。 実施の形態6の暗号処理装置は、前の暗号文ブロックを
連鎖ブロックとして記憶しておき、後の暗号処理の際に
ブロック変換を施して鍵データに融合し、暗号処理を施
す度にその連鎖ブロックを更新するものである。なお、
上記実施の形態6では、暗号文ブロックを新たな連鎖ブ
ロックとしたが、平文ブロック又は何れかの中間ブロッ
クを新たな連鎖ブロックとするものであってもよい。
(29) In step S1202, here, the block is updated to the third ciphertext block (step S1).
202: 3rd time). (30) to (34) The same as in the first embodiment (step S210: third time, step S201: fourth time, steps S211 to S213). The cryptographic processing apparatus according to the sixth embodiment stores a previous ciphertext block as a chained block, performs block conversion at the time of subsequent cryptographic processing, fuses it with key data, and performs chaining every time the cryptographic processing is performed. Updates a block. In addition,
Although the ciphertext block is a new chain block in the sixth embodiment, a plaintext block or any intermediate block may be a new chain block.

【0270】(実施の形態7)本発明の実施の形態7
は、連鎖ブロックにブロック変換を施した変換ブロック
を鍵データに融合するのではなく、被暗号処理データ又
は被暗号処理データに暗号処理を施した後のデータに融
合する点が実施の形態6と異なる。 <構成>暗号通信システムの構成は実施の形態1と同様
なので説明を省略する。 (データ暗号化装置10の構成)
(Embodiment 7) Embodiment 7 of the present invention
Embodiment 6 differs from Embodiment 6 in that instead of fusing a transformed block obtained by subjecting a chained block to block conversion to key data, fusing the data to be encrypted or data obtained by performing cryptographic processing on the data to be encrypted. different. <Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and the description is omitted. (Configuration of Data Encryption Device 10)

【0271】図31は、本発明の実施の形態7における
図1に示すデータ暗号化装置10の詳細な構成を示す図
である。実施の形態2における図11に示すデータ暗号
化装置10と共通する構成部分には同一符号を付し、同
一の機能を有する構成部分の説明は省略する。このデー
タ暗号化装置10は、ブロック分割部101、ブロック
記憶部102、部分鍵生成部104、第1〜8暗号化部
105a〜105h、端数データ処理部106、ブロッ
ク結合部107、ブロック融合部108及びブロック変
換部109で構成される。
FIG. 31 is a diagram showing a detailed configuration of the data encryption device 10 shown in FIG. 1 according to the seventh embodiment of the present invention. The same components as those of the data encryption device 10 according to the second embodiment shown in FIG. The data encryption device 10 includes a block division unit 101, a block storage unit 102, a partial key generation unit 104, first to eighth encryption units 105a to 105h, a fraction data processing unit 106, a block combination unit 107, and a block fusion unit 108. And a block conversion unit 109.

【0272】ブロック記憶部102はブロック更新機能
を備え、第8暗号化部105hが暗号文ブロックを生成
する度に、この暗号文ブロックを新たな連鎖ブロックと
して記憶している連鎖ブロックを更新し、次のブロック
を処理する際に用いる。ここでは、予め64ビットの初
期値IVが記憶され、この初期値IVが第1平文ブロッ
クを処理する際に用いられ、この処理の際に生成された
第1暗号文ブロックを新たな連鎖ブロックとして更新す
る。次に、第1平文ブロックの処理の際に更新した連鎖
ブロックが第2平文ブロックを処理する際に用いられ、
この処理の際に生成された第2暗号文ブロックを新たな
連鎖ブロックとして更新する。次に、第2平文ブロック
の処理の際に更新した連鎖ブロックが第3平文ブロック
を処理する際に用いられ、この処理の際に生成された第
3暗号文ブロックを新たな連鎖ブロックとして更新す
る。最後に、第3平文ブロックの処理の際に更新した連
鎖ブロックが端数平文データを処理する際に用いられ
る。ブロック変換部109は、ブロック記憶部102に
記憶された連鎖ブロックに、予め決めておいた所定の変
換を施して変換ブロックを生成する。ここで、ブロック
変換部109が施す所定の変換は、例えば、ビット置換
やビット変換等である。ここでは、第1平文ブロックを
処理する際には、64ビットの連鎖ブロックの初期値I
Vから64ビットの第1変換ブロックを生成し、第2〜
3平文ブロックを処理する際には、第1〜2平文ブロッ
クの処理の際にそれぞれ生成された64ビットの連鎖ブ
ロックから64ビットの第2〜3変換ブロックを生成す
る。
The block storage unit 102 has a block updating function. Every time the eighth encryption unit 105h generates a ciphertext block, the block storage unit 102 updates a chain block storing this ciphertext block as a new chain block. Used when processing the next block. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first plaintext block, and the first ciphertext block generated in this process is used as a new chain block. Update. Next, the chain block updated during the processing of the first plaintext block is used when processing the second plaintext block,
The second ciphertext block generated in this process is updated as a new chain block. Next, the chain block updated in the processing of the second plaintext block is used in processing the third plaintext block, and the third ciphertext block generated in this processing is updated as a new chain block. . Finally, the chain block updated during the processing of the third plaintext block is used when processing the fractional plaintext data. The block conversion unit 109 performs a predetermined conversion on the chained blocks stored in the block storage unit 102 to generate a conversion block. Here, the predetermined conversion performed by the block conversion unit 109 is, for example, bit replacement or bit conversion. Here, when processing the first plaintext block, the initial value I of the 64-bit chain block is used.
A first 64-bit conversion block is generated from V,
When processing three plaintext blocks, a 64-bit second to third conversion block is generated from the 64-bit chain block generated during the processing of the first and second plaintext blocks.

【0273】ブロック融合部108は、ブロック変換部
109が生成した変換ブロックを、平文ブロックに融合
し融合平文ブロックを生成する。ここでは、第1平文ブ
ロックを処理する際には、64ビットの第1変換ブロッ
クと64ビットの第1平文ブロックとを、対応するビッ
ト毎に排他的論理和の演算を行ない64ビットの第1融
合平文ブロックを生成し、第2〜3平文ブロックを処理
する際には、64ビットの第2〜3変換ブロックと64
ビットの第2〜3平文ブロックとを、対応するビット毎
に排他的論理和の演算を行ない64ビットの第2〜3融
合平文ブロックを生成する。 (データ復号化装置20の構成)
[0273] The block fusion unit 108 fuses the converted block generated by the block conversion unit 109 with a plaintext block to generate a fused plaintext block. Here, when processing the first plaintext block, the 64-bit first transform block and the 64-bit first plaintext block are subjected to exclusive OR operation for each corresponding bit, and the 64-bit first plaintext block is processed. When a fused plaintext block is generated and the second and third plaintext blocks are processed, the 64-bit second and third conversion blocks and 64
An exclusive OR operation is performed on the second and third plaintext blocks of bits for the corresponding bits to generate second and third fused plaintext blocks of 64 bits. (Configuration of Data Decoding Device 20)

【0274】図32は、本発明の実施の形態7における
図1に示すデータ復号化装置20の詳細な構成を示す図
である。実施の形態2における図12に示すデータ復号
化装置20と共通する構成部分には同一符号を付し、同
一の機能を有する構成部分の説明は省略する。このデー
タ復号化装置20は、ブロック分割部201、ブロック
記憶部202、鍵データ融合部203、部分鍵生成部2
04、第1〜8復号化部205a〜205h、端数デー
タ処理部206、ブロック結合部207及びブロック変
換部209で構成される。
FIG. 32 is a diagram showing a detailed configuration of the data decoding device 20 shown in FIG. 1 according to the seventh embodiment of the present invention. The same components as those of the data decoding device 20 shown in FIG. 12 according to the second embodiment are denoted by the same reference numerals, and the description of the components having the same functions will be omitted. The data decryption device 20 includes a block division unit 201, a block storage unit 202, a key data fusion unit 203, a partial key generation unit 2
04, the first to eighth decoding units 205a to 205h, the fraction data processing unit 206, the block combining unit 207, and the block converting unit 209.

【0275】ブロック記憶部202はブロック更新機能
を備え、ブロック分割部201が暗号文ブロックを生成
する度に、この暗号文ブロックを新たな連鎖ブロックと
して記憶している連鎖ブロックを更新し、次のブロック
を処理する際に用いる。ここでは、予め64ビットの初
期値IVが記憶され、この初期値IVが第1暗号文ブロ
ックを処理する際に用いられ、第1暗号文ブロックを新
たな連鎖ブロックとして記憶する。次に、第1暗号文ブ
ロックの処理の際に更新された連鎖ブロックが第2暗号
文ブロックを処理する際に用いられ、第2暗号文ブロッ
クを新たな連鎖ブロックとして記憶する。次に、第2暗
号文ブロックの処理の際に記憶された連鎖ブロックが第
3暗号文ブロックを処理する際に用いられ、第3暗号文
ブロックを新たな連鎖ブロックとして記憶する。最後
に、第3暗号文ブロックの処理の際に記憶された連鎖ブ
ロックが端数暗号文データを処理する際に用いられる。
The block storage unit 202 has a block updating function. Each time the block dividing unit 201 generates a ciphertext block, it updates a chain block storing this ciphertext block as a new chain block. Used when processing blocks. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first ciphertext block, and the first ciphertext block is stored as a new chain block. Next, the chain block updated during the processing of the first ciphertext block is used when processing the second ciphertext block, and the second ciphertext block is stored as a new chain block. Next, the chain block stored at the time of processing the second ciphertext block is used at the time of processing the third ciphertext block, and the third ciphertext block is stored as a new chain block. Finally, the chain block stored during the processing of the third ciphertext block is used when processing the fractional ciphertext data.

【0276】ブロック変換部209は、ブロック記憶部
202に記憶された連鎖ブロックに、予め決めておいた
所定の変換を施して変換ブロックを生成する。ここで、
ブロック変換部209が施す所定の変換は、データ暗号
化装置10のブロック変換部109が施す所定の変換と
同一であり、例えば、ビット置換やビット変換等であ
る。ここでは、第1暗号文ブロックを処理する際には、
64ビットの連鎖ブロックの初期値IVから64ビット
の第1変換ブロックを生成し、第2〜3暗号文ブロック
を処理する際には、第1〜2暗号文ブロックの処理の際
にそれぞれ生成された64ビットの連鎖ブロックから6
4ビットの第2〜3変換ブロックを生成する。
[0276] The block conversion unit 209 performs a predetermined conversion on the chained blocks stored in the block storage unit 202 to generate a conversion block. here,
The predetermined conversion performed by the block conversion unit 209 is the same as the predetermined conversion performed by the block conversion unit 109 of the data encryption device 10, and is, for example, bit replacement or bit conversion. Here, when processing the first ciphertext block,
A 64-bit first conversion block is generated from the initial value IV of the 64-bit chain block, and when processing the second to third ciphertext blocks, the first conversion block is generated when the first and second ciphertext blocks are processed. 6 bits from a 64-bit chained block
Generate 4-bit second to third conversion blocks.

【0277】ブロック融合部208は、ブロック変換部
209が生成した変換ブロックを、暗号処理ブロックに
融合し、平文ブロックを生成する。ここでは、第1暗号
文ブロックを処理する際には、64ビットの第1変換ブ
ロックと64ビットの第1暗号処理ブロックとを、対応
するビット毎に排他的論理和の演算を行ない64ビット
の第1平文ブロックを生成し、第2〜3暗号文ブロック
を処理する際には、64ビットの第2〜3変換ブロック
と64ビットの第2〜3暗号処理ブロックとを、対応す
るビット毎に排他的論理和の演算を行ない64ビットの
第2〜3平文ブロックを生成する。
[0277] The block fusion unit 208 fuses the conversion block generated by the block conversion unit 209 with the cryptographic processing block to generate a plaintext block. Here, when processing the first ciphertext block, a 64-bit first conversion block and a 64-bit first cipher processing block are subjected to an exclusive OR operation for each corresponding bit to perform a 64-bit conversion. When the first plaintext block is generated and the second and third ciphertext blocks are processed, the 64-bit second and third conversion blocks and the 64-bit second and third cryptographic processing blocks are divided into corresponding bits. The exclusive OR operation is performed to generate the second and third plaintext blocks of 64 bits.

【0278】<動作> (データ暗号化装置10の動作)図33は、本発明の実
施の形態7のデータ暗号化装置10における暗号化処理
の流れを示す図である。実施の形態2における図13に
示すデータ暗号化装置10の動作と共通するステップに
は同一符号を付し、その説明を省略する。 (1)〜(3)実施の形態2と同様である(ステップS
101、ステップS102、ステップS301:1回
目)。
<Operation> (Operation of Data Encryption Apparatus 10) FIG. 33 is a diagram showing a flow of an encryption process in the data encryption apparatus 10 according to the seventh embodiment of the present invention. Steps common to the operations of the data encryption device 10 shown in FIG. 13 in the second embodiment are denoted by the same reference numerals, and description thereof will be omitted. (1) to (3) Same as in the second embodiment (step S
101, step S102, step S301: first time).

【0279】(4)ブロック変換部109が、ブロック
記憶部102に記憶された連鎖ブロックに予め決めてお
いた所定の変換を施して変換ブロックを生成し、ブロッ
ク融合部108が、その変換ブロックを平文ブロックに
融合し融合平文ブロックを生成する(ステップS130
1)。ここでは、64ビットの連鎖ブロックの初期値I
Vから64ビットの第1変換ブロックを生成し、64ビ
ットの第1変換ブロックと64ビットの第1平文ブロッ
クとを、対応するビット毎に排他的論理和の演算を行な
い、64ビットの第1融合平文ブロックを生成する(ス
テップS1301:1回目)。 (5)〜(8)実施の形態2と同様である(ステップS
303、ステップS106、ステップS108、ステッ
プS109:1回目)。 (9)ブロック記憶部102が、暗号文ブロックを新た
な連鎖ブロックとして、記憶している連鎖ブロックを更
新する(ステップS1302)。ここでは、第1暗号文
ブロックに更新する(ステップS1302:1回目)。
(4) The block conversion section 109 performs a predetermined conversion on the chained blocks stored in the block storage section 102 to generate a conversion block, and the block fusion section 108 generates the conversion block. Fused with plaintext block to generate fused plaintext block (step S130)
1). Here, the initial value I of the 64-bit chain block is
A first conversion block of 64 bits is generated from V, an exclusive OR operation is performed on the first conversion block of 64 bits and the first plaintext block of 64 bits for each corresponding bit, and the first conversion block of 64 bits is generated. A fused plaintext block is generated (step S1301: first time). (5) to (8) Same as the second embodiment (step S
303, step S106, step S108, step S109: first time). (9) The block storage unit 102 updates the stored chain block with the ciphertext block as a new chain block (step S1302). Here, the first ciphertext block is updated (step S1302: first time).

【0280】(10)〜(13)実施の形態2と同様で
ある(ステップS110:1回目、ステップS101、
ステップS102、ステップS301:2回目)。 (14)ステップS1301において、ここでは、第1
平文ブロックの処理の際に生成された64ビットの連鎖
ブロックから64ビットの第2変換ブロックを生成し、
64ビットの第2変換ブロックと64ビットの第2平文
ブロックとを、対応するビット毎に排他的論理和の演算
を行ない、64ビットの第2融合平文ブロックを生成す
る(ステップS1301:2回目)。 (15)〜(18)実施の形態2と同様である(ステッ
プS303、ステップS106、ステップS108、ス
テップS109:2回目)。
(10)-(13) Same as the second embodiment (step S110: first time, step S101,
Step S102, step S301: second time). (14) In step S1301, here, the first
A 64-bit second conversion block is generated from the 64-bit chain block generated during the processing of the plaintext block,
An exclusive-OR operation is performed on the 64-bit second transformed block and the 64-bit second plaintext block for each corresponding bit to generate a 64-bit second fused plaintext block (step S1301: second time). . (15)-(18) Same as the second embodiment (step S303, step S106, step S108, step S109: second time).

【0281】(19)ステップS1302において、こ
こでは、第2暗号文ブロックに更新する(ステップS1
302:2回目)。 (20)〜(23)実施の形態2と同様である(ステッ
プS110:2回目、ステップS101、ステップS1
02、ステップS301:3回目)。 (24)ステップS1301において、ここでは、第2
平文ブロックの処理の際に生成された64ビットの連鎖
ブロックから64ビットの第3変換ブロックを生成し、
64ビットの第3変換ブロックと64ビットの第3平文
ブロックとを、対応するビット毎に排他的論理和の演算
を行ない、64ビットの第3融合平文ブロックを生成す
る(ステップS1301:3回目)。
(19) In step S1302, here, the block is updated to the second ciphertext block (step S1).
302: 2nd time). (20) to (23) Same as in the second embodiment (step S110: second time, step S101, step S1)
02, step S301: third time). (24) In step S1301, here, the second
A 64-bit third transformation block is generated from the 64-bit chain block generated during the processing of the plaintext block,
An exclusive OR operation is performed on the 64-bit third transformed block and the 64-bit third plaintext block for each corresponding bit to generate a 64-bit third fused plaintext block (step S1301: third time). .

【0282】(25)〜(28)実施の形態2と同様で
ある(ステップS303、ステップS106、ステップ
S108、ステップS109:3回目)。 (29)ステップS1302において、ここでは、第3
暗号文ブロックに更新する(ステップS1302:3回
目)。 (30)〜(34)実施の形態2と同様である(ステッ
プS110:3回目、ステップS101:4回目、ステ
ップS111〜ステップS113)。 (データ復号化装置20の動作)
(25)-(28) The same as the second embodiment (step S303, step S106, step S108, step S109: third time). (29) In step S1302, here, the third
The ciphertext block is updated (step S1302: third time). (30) to (34) The same as in the second embodiment (step S110: third time, step S101: fourth time, steps S111 to S113). (Operation of Data Decoding Device 20)

【0283】図34は、本発明の実施の形態7のデータ
復号化装置20における暗号化処理の流れを示す図であ
る。データ復号化装置20の動作は、データ暗号化装置
10の動作の逆変換である。実施の形態2における図1
4に示すデータ復号化装置20の動作と共通するステッ
プには同一符号を付し、その説明を省略する。 (1)〜(7)実施の形態1と同様である(ステップS
201〜ステップS202、ステップS401、ステッ
プS205、ステップS206、ステップS208、ス
テップS402:1回目)。
FIG. 34 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the seventh embodiment of the present invention. The operation of the data decryption device 20 is an inverse conversion of the operation of the data encryption device 10. FIG. 1 in Embodiment 2
Steps common to those of the operation of the data decoding device 20 shown in FIG. (1) to (7) Similar to the first embodiment (step S
201 to step S202, step S401, step S205, step S206, step S208, step S402: first time).

【0284】(8)ブロック変換部209が、ブロック
記憶部202に記憶された連鎖ブロックに予め決めてお
いた所定の変換を施して変換ブロックを生成し、ブロッ
ク融合部208が、その変換ブロックを暗号処理ブロッ
クに融合し平文ブロックを生成する(ステップS140
1)。ここでは、連鎖ブロックの初期値IVから64ビ
ットの第1変換ブロックを生成し、64ビットの第1変
換ブロックと64ビットの第1暗号処理ブロックとを、
対応するビット毎に排他的論理和の演算を行ない64ビ
ットの第1平文ブロックを生成する(ステップS140
1:1回目)。 (9)ブロック記憶部202が、暗号文ブロックを新た
な連鎖ブロックとして、記憶している連鎖ブロックを更
新する(ステップS1402)。ここでは、第1暗号文
ブロックに更新する(ステップS1402:1回目)。 (10)〜(17)実施の形態1と同様である(ステッ
プS210:1回目、ステップS201、ステップS2
02、ステップS401、ステップS205、ステップ
S206、ステップS208、ステップS402:2回
目)。
(8) The block conversion unit 209 performs a predetermined conversion on the chained blocks stored in the block storage unit 202 to generate a conversion block, and the block fusion unit 208 converts the conversion block into A plaintext block is generated by fusing with the cryptographic processing block (step S140)
1). Here, a 64-bit first conversion block is generated from the initial value IV of the chained block, and the 64-bit first conversion block and the 64-bit first encryption processing block are defined by:
An exclusive OR operation is performed for each corresponding bit to generate a 64-bit first plaintext block (step S140).
1: 1). (9) The block storage unit 202 updates the stored chain block with the ciphertext block as a new chain block (step S1402). Here, the first ciphertext block is updated (step S1402: first time). (10) to (17) Same as in the first embodiment (step S210: first time, step S201, step S2
02, step S401, step S205, step S206, step S208, step S402: second time).

【0285】(18)ステップS1401において、こ
こでは、第1平文ブロックの処理の際に生成された64
ビットの連鎖ブロックから64ビットの第2変換ブロッ
クを生成し、64ビットの第2変換ブロックと64ビッ
トの第2暗号処理ブロックとを、対応するビット毎に排
他的論理和の演算を行ない64ビットの第2平文ブロッ
クを生成する(ステップS1401:2回目)。 (19)ステップS1402において、ここでは、第2
暗号文ブロックに更新する(ステップS1402:2回
目)。 (20)〜(27)実施の形態1と同様である(ステッ
プS210:2回目、ステップS201、ステップS2
02、ステップS401、ステップS205、ステップ
S206、ステップS208、ステップS402:3回
目)。
(18) In step S1401, here, the 64 generated at the time of processing the first plaintext block is used.
A 64-bit second conversion block is generated from the bit chain block, and the 64-bit second conversion block and the 64-bit second cryptographic processing block are subjected to an exclusive OR operation for each corresponding bit to generate a 64-bit second conversion block. Is generated (step S1401: second time). (19) In step S1402, here, the second
The ciphertext block is updated (step S1402: second time). (20) to (27) Same as in the first embodiment (step S210: second time, step S201, step S2
02, step S401, step S205, step S206, step S208, step S402: third time).

【0286】(28)ステップS1401において、こ
こでは、第2平文ブロックの処理の際に生成された64
ビットの連鎖ブロックから64ビットの第3変換ブロッ
クを生成し、64ビットの第3変換ブロックと64ビッ
トの第3暗号処理ブロックとを、対応するビット毎に排
他的論理和の演算を行ない64ビットの第3平文ブロッ
クを生成する(ステップS1401:3回目)。 (29)ステップS1402において、ここでは、第3
暗号文ブロックに更新する(ステップS1402:3回
目)。 (30)〜(34)実施の形態1と同様である(ステッ
プS210:3回目、ステップS201:4回目、ステ
ップS211〜ステップS213)。
(28) In step S1401, here, the 64 generated at the time of processing the second plaintext block is used.
A 64-bit third conversion block is generated from the bit chain block, and the 64-bit third conversion block and the 64-bit third cryptographic processing block are subjected to an exclusive OR operation for each corresponding bit to generate a 64-bit third conversion block. Is generated (step S1401: third time). (29) In step S1402, here, the third
The ciphertext block is updated (step S1402: third time). (30) to (34) The same as in the first embodiment (step S210: third time, step S201: fourth time, steps S211 to S213).

【0287】実施の形態7の暗号処理装置は、前の暗号
文ブロックを連鎖ブロックとして記憶しておき、後の暗
号処理の際にブロック変換を施して平文ブロックや暗号
処理ブロックに融合し、暗号処理を施す度にその連鎖ブ
ロックを更新するものである。なお、上記実施の形態7
では、暗号文ブロックを新たな連鎖ブロックとしたが、
平文ブロック又は何れかの中間ブロックを新たな連鎖ブ
ロックとするものであってもよい。 (実施の形態8)
The cryptographic processing apparatus according to the seventh embodiment stores the previous ciphertext block as a chain block, performs block conversion at the time of subsequent cryptographic processing, fuses it into a plaintext block or a cryptographic processing block, and Each time processing is performed, the chained block is updated. Note that Embodiment 7 above
Now, the ciphertext block is a new chain block,
The plaintext block or any intermediate block may be a new chain block. (Embodiment 8)

【0288】本発明の実施の形態8のデータ暗号化装置
10は、第1暗号化部105a、ブロック記憶部10
2、ブロック結合部107及びブロック融合部108の
各入力が実施の形態7のそれらと異なっており、処理の
順番等が入れ代わっている。また、本発明の実施の形態
8のデータ復号化装置20は、ブロック記憶部の入力の
みがデータ暗号化装置10のそれと異なっている点以外
は、データ暗号化装置10と同様である。
The data encryption device 10 according to the eighth embodiment of the present invention includes a first encryption unit 105a, a block storage unit 10
2. The inputs of the block combining unit 107 and the block fusing unit 108 are different from those of the seventh embodiment, and the order of processing and the like are interchanged. The data decryption device 20 according to the eighth embodiment of the present invention is the same as the data encryption device 10 except that only the input of the block storage unit is different from that of the data encryption device 10.

【0289】<構成>暗号通信システムの構成は実施の
形態1と同様なので説明を省略する。 (データ暗号化装置10の構成)図35は、本発明の実
施の形態8における図1に示すデータ暗号化装置10の
詳細な構成を示す図である。実施の形態7における図3
1に示すデータ暗号化装置10と共通する構成部分には
同一符号を付し、同一の機能を有する構成部分の説明は
省略する。このデータ暗号化装置10の構成は、実施の
形態7と同様である。
<Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and a description thereof will be omitted. (Configuration of Data Encryption Apparatus 10) FIG. 35 shows a detailed configuration of data encryption apparatus 10 shown in FIG. 1 according to the eighth embodiment of the present invention. FIG. 3 in Embodiment 7
1 are denoted by the same reference numerals, and the description of the components having the same functions is omitted. The configuration of the data encryption device 10 is the same as that of the seventh embodiment.

【0290】第1暗号化部105aは、実施の形態7の
様にブロック融合部108が生成した融合平文ブロック
からではなく、ブロック変換部109が生成した変換ブ
ロックから第1中間ブロックを生成する。第8暗号化部
105hは、実施の形態7の様に暗号文ブロックではな
く、暗号処理ブロックを生成する。第1〜8暗号化部1
05a〜105hは、実施の形態7のそれらと同一の機
能を有する。ここでは、第1〜3変換ブロックから、そ
れぞれに対応する第1〜7中間ブロックと、第1〜3暗
号処理ブロックとを生成する。
The first encryption unit 105a generates the first intermediate block from the transformed block generated by the block conversion unit 109, not from the fused plaintext block generated by the block fusion unit 108 as in the seventh embodiment. The eighth encryption unit 105h generates a cryptographic processing block instead of a ciphertext block as in the seventh embodiment. First to eighth encryption units 1
05a to 105h have the same functions as those of the seventh embodiment. Here, first to seventh intermediate blocks and first to third encryption processing blocks corresponding to the first to third conversion blocks are generated.

【0291】ブロック記憶部102はブロック更新機能
を備え、ブロック融合部108が暗号文ブロックを生成
する度に、この暗号文ブロックを新たな連鎖ブロックと
して記憶している連鎖ブロックを更新し、次のブロック
を処理する際に用いる。ここでの動作は、実施の形態7
と同様である。ブロック融合部108は、実施の形態7
の様にブロック変換部109が生成した変換ブロックで
はなく、第8暗号化部105hが生成した暗号処理ブロ
ックを、平文ブロックに融合し暗号文ブロックを生成す
る。ここでは、第1平文ブロックを処理する際には、6
4ビットの第1暗号処理ブロックと64ビットの第1平
文ブロックとを、対応するビット毎に排他的論理和の演
算を行ない64ビットの第1暗号文ブロックを生成し、
第2〜3平文ブロックを処理する際には、64ビットの
第2〜3暗号処理ブロックと64ビットの第2〜3平文
ブロックとを、対応するビット毎に排他的論理和の演算
を行ない64ビットの第2〜3暗号文ブロックを生成す
る。
The block storage unit 102 has a block updating function. Each time the block fusion unit 108 generates a ciphertext block, it updates a chain block storing this ciphertext block as a new chain block. Used when processing blocks. The operation here is the same as in the seventh embodiment.
Is the same as The block fusion unit 108 is different from the seventh embodiment.
The cipher processing block generated by the eighth encryption unit 105h, instead of the conversion block generated by the block conversion unit 109, is fused to a plaintext block to generate a ciphertext block. Here, when processing the first plaintext block, 6
An exclusive-OR operation is performed on the 4-bit first cipher processing block and the 64-bit first plaintext block for each corresponding bit to generate a 64-bit first ciphertext block,
When processing the second and third plaintext blocks, the exclusive OR operation is performed on the corresponding 64-bit second and third plaintext blocks and the 64-bit second and third plaintext blocks for each corresponding bit. Generate a second to third ciphertext block of bits.

【0292】ブロック結合部107は、ブロック融合部
108が生成した各暗号文ブロック及び端数データ処理
部106が生成した端数暗号文データを結合して暗号文
データを生成する。ここでは、各64ビットの第1〜3
暗号文ブロック及び8ビットの端数暗号文データを結合
して200ビットの暗号文データを生成する。 (データ復号化装置20の構成)図36は、本発明の実
施の形態8における図1に示すデータ復号化装置20の
詳細な構成を示す図である。このデータ復号化装置20
は、ブロック分割部201、ブロック記憶部202、部
分鍵生成部204、第1〜8暗号化部205i〜205
p、端数データ処理部206、ブロック結合部207、
ブロック融合部208及びブロック変換部209で構成
される。
The block combining section 107 combines each of the ciphertext blocks generated by the block fusion section 108 and the fraction ciphertext data generated by the fraction data processing section 106 to generate ciphertext data. Here, the first to third bits of each 64 bits are used.
The ciphertext block and the 8-bit fractional ciphertext data are combined to generate 200-bit ciphertext data. (Configuration of Data Decoding Apparatus 20) FIG. 36 shows a detailed configuration of the data decoding apparatus 20 shown in FIG. 1 according to the eighth embodiment of the present invention. This data decryption device 20
Are the block dividing unit 201, the block storing unit 202, the partial key generating unit 204, the first to eighth encrypting units 205i to 205
p, fraction data processing unit 206, block combining unit 207,
It comprises a block fusion unit 208 and a block conversion unit 209.

【0293】ブロック記憶部202はブロック更新機能
を備え、ブロック分割部201が暗号文ブロックを生成
する度に、この暗号文ブロックを新たな連鎖ブロックと
して記憶している連鎖ブロックを更新し、次のブロック
を処理する際に用いる。ここでは、予め64ビットの初
期値IVが記憶され、この初期値IVが第1暗号文ブロ
ックを処理する際に用いられ、第1暗号文ブロックを新
たな連鎖ブロックとして更新する。次に、第1暗号文ブ
ロックの処理の際に更新した連鎖ブロックが第2暗号文
ブロックを処理する際に用いられ、第2暗号文ブロック
を新たな連鎖ブロックとして更新する。次に、第2暗号
文ブロックの処理の際に更新した連鎖ブロックが第3暗
号文ブロックを処理する際に用いられ、第3暗号文ブロ
ックを新たな連鎖ブロックとして更新する。最後に、第
3暗号文ブロックの処理の際に更新した連鎖ブロックが
端数暗号文データを処理する際に用いられる。実施の形
態8における図35に示すデータ暗号化装置10と同一
名称の構成部分は同一の機能を有し、ブロック記憶部2
02の入力のみがデータ暗号化装置10のブロック記憶
部102の入力と異なっている点以外は、データ暗号化
装置10と同様である。
The block storage unit 202 has a block updating function. Each time the block dividing unit 201 generates a ciphertext block, it updates a chain block storing this ciphertext block as a new chain block. Used when processing blocks. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first ciphertext block, and updates the first ciphertext block as a new chain block. Next, the chain block updated during the processing of the first ciphertext block is used when processing the second ciphertext block, and the second ciphertext block is updated as a new chain block. Next, the chain block updated during the processing of the second ciphertext block is used when processing the third ciphertext block, and the third ciphertext block is updated as a new chain block. Finally, the chained block updated during the processing of the third ciphertext block is used when processing the fractional ciphertext data. The components having the same names as those of the data encryption device 10 shown in FIG.
It is the same as the data encryption device 10 except that only the input of 02 is different from the input of the block storage unit 102 of the data encryption device 10.

【0294】<動作> (データ暗号化装置10の動作)図37は、本発明の実
施の形態8のデータ暗号化装置10における暗号化処理
の流れを示す図である。実施の形態7における図33に
示すデータ暗号化装置10の動作と共通するステップに
は同一符号を付し、その説明を省略する。 (1)〜(3)実施の形態7と同様である(ステップS
101、ステップS102、ステップS301:1回
目)。
<Operation> (Operation of Data Encryption Apparatus 10) FIG. 37 is a diagram showing a flow of an encryption process in the data encryption apparatus 10 according to the eighth embodiment of the present invention. Steps common to those of the data encryption device 10 shown in FIG. 33 according to the seventh embodiment are denoted by the same reference numerals, and description thereof is omitted. (1) to (3) Same as in the seventh embodiment (step S
101, step S102, step S301: first time).

【0295】(4)ブロック変換部109が、ブロック
記憶部102に記憶された連鎖ブロックに予め決めてお
いた所定の変換を施して変換ブロックを生成し、第1暗
号化部105aが、第1の部分鍵に基づいてその変換ブ
ロックから第1中間ブロックを生成する(ステップS1
501)。ここでは、64ビットの連鎖ブロックの初期
値IVから64ビットの第1変換ブロックを生成し、6
4ビットの第1変換ブロックから第1中間ブロックを生
成する(ステップS1501:1回目)。 (5)〜(6)実施の形態7の(6)〜(7)と同様で
ある(ステップS106、ステップS108:1回
目)。 (7)第8暗号化部105hが、第8の部分鍵に基づい
て、第7中間ブロックから暗号処理ブロックを生成する
(ステップS1502)。ここでは、連鎖ブロックの初
期値IVに対応する第7中間ブロックから第1暗号処理
ブロックを生成する(ステップS1502:1回目)。
(4) The block conversion unit 109 performs a predetermined conversion on the chained blocks stored in the block storage unit 102 to generate a conversion block, and the first encryption unit 105 a A first intermediate block is generated from the converted block based on the partial key of (1) (step S1).
501). Here, a 64-bit first conversion block is generated from the initial value IV of the 64-bit chain block, and
A first intermediate block is generated from the 4-bit first transform block (step S1501: first time). (5)-(6) Same as (6)-(7) of the seventh embodiment (step S106, step S108: first time). (7) The eighth encryption unit 105h generates an encryption processing block from the seventh intermediate block based on the eighth partial key (step S1502). Here, the first encryption processing block is generated from the seventh intermediate block corresponding to the initial value IV of the chained block (step S1502: first time).

【0296】(8)ブロック融合部108が、暗号処理
ブロックを平文ブロックに融合し暗号文ブロックを生成
する(ステップS1503)。ここでは、64ビットの
第1暗号処理ブロックと64ビットの第1平文ブロック
とを、対応するビット毎に排他的論理和の演算を行な
い、64ビットの第1暗号文ブロックを生成する(ステ
ップS1503:1回目)。 (9)〜(13)実施の形態7と同様である(ステップ
S1302、ステップS110:1回目、ステップS1
01、ステップS102、ステップS301:2回
目)。
(8) The block fusion unit 108 fuses the cryptographic processing block into a plaintext block to generate a ciphertext block (step S1503). Here, an exclusive OR operation is performed on the 64-bit first cipher processing block and the 64-bit first plaintext block for each corresponding bit to generate a 64-bit first ciphertext block (step S1503). : The first time). (9) to (13) Same as the seventh embodiment (step S1302, step S110: first time, step S1
01, step S102, step S301: second time).

【0297】(14)ステップS1501において、こ
こでは、第1平文ブロックの処理の際に生成された64
ビットの連鎖ブロックから64ビットの第2変換ブロッ
クを生成し、64ビットの第2変換ブロックから第1中
間ブロックを生成する(ステップS1501:2回
目)。 (15)〜(16)実施の形態7の(16)〜(17)
と同様である(ステップS106、ステップS108:
2回目)。 (17)ステップS1502において、ここでは、第1
平文ブロックの処理の際に生成された連鎖ブロックに対
応する第7中間ブロックから第2暗号処理ブロックを生
成する(ステップS1502:2回目)。
(14) In step S1501, in this case, the 64 generated at the time of processing the first plaintext block is used.
A 64-bit second transform block is generated from the bit chain block, and a first intermediate block is generated from the 64-bit second transform block (step S1501: second time). (15)-(16) (16)-(17) of the seventh embodiment
(Steps S106 and S108:
The second). (17) In step S1502, here, the first
A second cryptographic processing block is generated from the seventh intermediate block corresponding to the chain block generated during the processing of the plaintext block (step S1502: second time).

【0298】(18)ステップS1503において、こ
こでは、64ビットの第2暗号処理ブロックと64ビッ
トの第2平文ブロックとを、対応するビット毎に排他的
論理和の演算を行ない、64ビットの第2暗号文ブロッ
クを生成する(ステップS1503:2回目)。 (19)〜(23)実施の形態7と同様である(ステッ
プS1302、ステップS110:2回目、ステップS
101、ステップS102、ステップS301:3回
目)。 (24)ステップS1501において、ここでは、第2
平文ブロックの処理の際に生成された64ビットの連鎖
ブロックから64ビットの第3変換ブロックを生成し、
64ビットの第3変換ブロックから第1中間ブロックを
生成する(ステップS1501:3回目)。
(18) In step S1503, the 64-bit second cryptographic processing block and the 64-bit second plaintext block are subjected to exclusive OR operation for each corresponding bit, and the 64-bit second cryptographic processing block is processed. Two ciphertext blocks are generated (step S1503: second time). (19) to (23) Same as in the seventh embodiment (step S1302, step S110: second time, step S
101, step S102, step S301: third time). (24) In step S1501, here, the second
A 64-bit third transformation block is generated from the 64-bit chain block generated during the processing of the plaintext block,
A first intermediate block is generated from the 64-bit third transform block (step S1501: third time).

【0299】(25)〜(26)実施の形態7の(2
6)〜(27)と同様である(ステップS106、ステ
ップS108:3回目)。 (27)ステップS1502において、ここでは、第2
平文ブロックの処理の際に生成された連鎖ブロックに対
応する第7中間ブロックから第3暗号処理ブロックを生
成する(ステップS1502:3回目)。 (28)ステップS1503において、ここでは、64
ビットの第3暗号処理ブロックと64ビットの第3平文
ブロックとを、対応するビット毎に排他的論理和の演算
を行ない、64ビットの第3暗号文ブロックを生成する
(ステップS1503:3回目)。
(25)-(26) In the seventh embodiment, (2)
6) to (27) (step S106, step S108: third time). (27) In step S1502, here, the second
A third cryptographic processing block is generated from the seventh intermediate block corresponding to the chain block generated during the processing of the plaintext block (step S1502: third time). (28) In step S1503, here, 64
An exclusive-OR operation is performed on the bit-wise third cipher processing block and the 64-bit third plaintext block for each corresponding bit to generate a 64-bit third ciphertext block (step S1503: third time). .

【0300】(29)〜(34)実施の形態7と同様で
ある(ステップS1302、ステップS110:3回
目、ステップS101:4回目、ステップS111〜ス
テップS113)。 (データ復号化装置20の動作)データ復号化装置20
の動作は、データ暗号化装置10の動作の逆変換であ
る。実施の形態8におけるデータ復号化装置20の動作
は、ブロック記憶部の入力が異なっている点以外は実施
の形態8におけるデータ暗号化装置10の動作と同様な
ので、その説明を省略する
(29) to (34) The same as in the seventh embodiment (step S1302, step S110: third time, step S101: fourth time, steps S111 to S113). (Operation of Data Decoding Device 20) Data Decoding Device 20
Is an inverse conversion of the operation of the data encryption device 10. The operation of the data decryption device 20 according to the eighth embodiment is the same as the operation of the data encryption device 10 according to the eighth embodiment except that the input to the block storage unit is different.

【0301】実施の形態8の暗号処理装置は、前の暗号
文ブロックを連鎖ブロックとして記憶しておき、後の暗
号処理の際にブロック変換と暗号処理とを施して平文ブ
ロックや暗号文ブロックに融合し、暗号処理を施す度に
その連鎖ブロックを更新するものである。なお、上記実
施の形態8では、暗号文ブロックを新たな連鎖ブロック
としたが、平文ブロック又は何れかの中間ブロックを新
たな連鎖ブロックとするものであってもよい。 (実施の形態9)本発明の実施の形態9は、ブロック記
憶部の入力のみが実施の形態8と異なる。
The encryption processing device according to the eighth embodiment stores the previous ciphertext block as a chain block, and performs block conversion and encryption processing at the time of subsequent encryption processing to convert the block into a plaintext block or a ciphertext block. The chain block is merged and the chain block is updated each time the cryptographic process is performed. Although the ciphertext block is a new chain block in the eighth embodiment, a plaintext block or any intermediate block may be a new chain block. (Ninth Embodiment) A ninth embodiment of the present invention is different from the eighth embodiment only in the input of the block storage unit.

【0302】<構成>暗号通信システムの構成は実施の
形態1と同様なので説明を省略する。 (データ暗号化装置10の構成)図38は、本発明の実
施の形態9における図1に示すデータ暗号化装置10の
詳細な構成を示す図である。実施の形態8における図3
5に示すデータ暗号化装置10と共通する構成部分には
同一符号を付し、同一の機能を有する構成部分の説明は
省略する。このデータ暗号化装置10の構成は、実施の
形態8の構成と同様である。
<Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and a description thereof will be omitted. (Structure of Data Encryption Apparatus 10) FIG. 38 shows a detailed structure of data encryption apparatus 10 shown in FIG. 1 according to the ninth embodiment of the present invention. FIG. 3 in Embodiment 8
5, the same components as those of the data encryption device 10 shown in FIG. 5 are denoted by the same reference numerals, and the description of the components having the same functions will be omitted. The configuration of this data encryption device 10 is the same as the configuration of the eighth embodiment.

【0303】ブロック記憶部102はブロック更新機能
を備え、第8暗号化部105hが暗号処理ブロックを生
成する度に、この暗号処理ブロックを新たな連鎖ブロッ
クとして記憶している連鎖ブロックを更新し、次のブロ
ックを処理する際に用いる。ここでは、予め64ビット
の初期値IVが記憶され、この初期値IVが第1平文ブ
ロックを処理する際に用いられ、この処理の際に生成さ
れた第1暗号処理ブロックを新たな連鎖ブロックとして
更新する。次に、第1平文ブロックの処理の際に更新し
た連鎖ブロックが第2平文ブロックを処理する際に用い
られ、この処理の際に生成された第2暗号処理ブロック
を新たな連鎖ブロックとして更新する。次に、第2平文
ブロックの処理の際に更新した連鎖ブロックが第3平文
ブロックを処理する際に用いられ、この処理の際に生成
された第3暗号処理ブロックを新たな連鎖ブロックとし
て更新する。最後に、第3平文ブロックの処理の際に更
新した連鎖ブロックが端数平文データを処理する際に用
いられる。
[0303] The block storage unit 102 has a block updating function, and every time the eighth encryption unit 105h generates an encryption processing block, it updates a chain block storing this encryption processing block as a new chain block. Used when processing the next block. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first plaintext block, and the first cryptographic processing block generated during this processing is used as a new chain block. Update. Next, the chain block updated during the processing of the first plaintext block is used when processing the second plaintext block, and the second cryptographic processing block generated at the time of this processing is updated as a new chain block. . Next, the chain block updated in the processing of the second plaintext block is used in processing the third plaintext block, and the third cryptographic processing block generated in this process is updated as a new chain block. . Finally, the chain block updated during the processing of the third plaintext block is used when processing the fractional plaintext data.

【0304】(データ復号化装置20の構成)図39
は、本発明の実施の形態9における図1に示すデータ復
号化装置20の詳細な構成を示す図である。このデータ
復号化装置20の構成は、実施の形態8の構成と同様で
あり、また、実施の形態9における図38に示すデータ
暗号化装置10と同一名称の構成部分は同一の機能を有
するので、その説明を省略する。
(Configuration of Data Decoding Apparatus 20) FIG.
FIG. 21 is a diagram showing a detailed configuration of a data decoding device 20 shown in FIG. 1 according to Embodiment 9 of the present invention. The configuration of this data decryption device 20 is the same as that of the eighth embodiment, and the components having the same names as those of the data encryption device 10 shown in FIG. 38 in the ninth embodiment have the same functions. , The description of which is omitted.

【0305】<動作> (データ暗号化装置10の動作)本発明の実施の形態9
のデータ暗号化装置10は、ブロック記憶部102の入
力が異なっている点以外は、実施の形態8のデータ暗号
化装置10と同様なので、その動作の説明を省略する
<Operation> (Operation of Data Encryption Apparatus 10) Embodiment 9 of the Invention
Is the same as the data encryption device 10 according to the eighth embodiment except that the input to the block storage unit 102 is different, and the description of the operation is omitted.

【0306】(データ復号化装置20の動作)データ復
号化装置20の動作は、データ暗号化装置10の動作の
逆変換である。実施の形態9におけるデータ復号化装置
20の動作は、実施の形態9におけるデータ暗号化装置
10の動作と同様なので、その説明を省略する 実施の形態9の暗号処理装置は、前のブロックに暗号処
理に施した過程において生成された暗号処理ブロックを
新たな連鎖ブロックとして記憶しておき、後の暗号処理
の際にブロック変換と暗号処理とを施して平文ブロック
や暗号文ブロックに融合し、暗号処理を施す度にその連
鎖ブロックを更新するものである。
(Operation of Data Decryption Device 20) The operation of the data decryption device 20 is the inverse of the operation of the data encryption device 10. The operation of the data decryption device 20 according to the ninth embodiment is the same as the operation of the data encryption device 10 according to the ninth embodiment, and a description thereof will not be repeated. The cryptographic processing block generated in the process of processing is stored as a new chained block, and subjected to block conversion and cryptographic processing at the time of subsequent cryptographic processing to be fused into a plaintext block or ciphertext block, and Each time the processing is performed, the chained block is updated.

【0307】(実施の形態10)本発明の実施の形態1
0は、実施の形態1に、さらに、1ブロックを処理する
度に鍵データを更新する機能を追加したものである。 <構成>暗号通信システムの構成は実施の形態1と同様
なので説明を省略する。
(Embodiment 10) Embodiment 1 of the present invention
0 adds the function of updating the key data every time one block is processed to the first embodiment. <Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and the description is omitted.

【0308】(データ暗号化装置10の構成)図40
は、本発明の実施の形態10における図1に示すデータ
暗号化装置10の詳細な構成を示す図である。実施の形
態1における図2に示すデータ暗号化装置10と共通す
る構成部分には同一符号を付し、同一の機能を有する構
成部分の説明は省略する。このデータ暗号化装置10
は、ブロック分割部101、ブロック記憶部102、鍵
データ融合部103、部分鍵生成部104、第1〜8暗
号化部105a〜105h、端数データ処理部106、
ブロック結合部107及び鍵データ記憶部110で構成
される。
(Configuration of Data Encryption Apparatus 10) FIG.
FIG. 14 is a diagram showing a detailed configuration of the data encryption device 10 shown in FIG. 1 according to the tenth embodiment of the present invention. The same components as those of the data encryption device 10 according to the first embodiment shown in FIG. 2 are denoted by the same reference numerals, and the description of the components having the same functions will be omitted. This data encryption device 10
Is a block division unit 101, a block storage unit 102, a key data fusion unit 103, a partial key generation unit 104, first to eighth encryption units 105a to 105h, a fraction data processing unit 106,
It comprises a block combining unit 107 and a key data storage unit 110.

【0309】図50に示す従来の暗号化装置30と図4
0に示す本発明の実施の形態10におけるデータ暗号化
装置10との関係は、実施の形態1と同様であり、さら
に、鍵データ記憶部110が付加されている。鍵データ
記憶部110は鍵データを記憶する。なお、最初のブロ
ックを処理する際には、予め鍵データの初期値が記憶さ
れる。鍵データ融合部103は、ブロック記憶部102
に記憶された連鎖ブロックを、鍵データ記憶部110に
記憶された鍵データに融合し、融合鍵データを生成す
る。ここでは、第1平文ブロックを処理する際には、6
4ビットの連鎖ブロックの初期値IVと64ビットの鍵
データの初期値とを、対応するビット毎に排他的論理和
の演算を行ない、第2〜3平文ブロックを処理する際に
は、第1〜2平文ブロックの処理の際に生成された64
ビットの連鎖ブロックと第1〜2平文ブロックの処理の
際に生成された64ビットの鍵データとを、対応するビ
ット毎に排他的論理和の演算を行なう。鍵データ記憶部
110は鍵データ更新機能を備え、鍵データ融合部10
3が融合鍵データを生成する度に、融合鍵データを新た
な鍵データとして記憶している鍵データを更新し、次の
ブロックを処理する際に用いる。ここでは、予め64ビ
ットの初期値が記憶され、この初期値が第1平文ブロッ
クを処理する際に用いられ、この処理の際に生成された
融合鍵データを新たな鍵データとして更新する。次に、
第1平文ブロックの処理の際に更新した鍵データが第2
平文ブロックを処理する際に用いられ、この処理の際に
生成された融合鍵データを新たな鍵データとして更新す
る。次に、第2平文ブロックの処理の際に更新した鍵デ
ータが第3平文ブロックを処理する際に用いられ、この
処理の際に生成された融合鍵データを新たな鍵データと
して更新する。
The conventional encryption device 30 shown in FIG.
The relationship between the data encryption device 10 and the data encryption device 10 according to the tenth embodiment of the present invention shown in FIG. The key data storage unit 110 stores key data. When processing the first block, the initial value of the key data is stored in advance. The key data fusion unit 103
Is merged with the key data stored in the key data storage unit 110 to generate fused key data. Here, when processing the first plaintext block, 6
An exclusive OR operation is performed on the initial value IV of the 4-bit chain block and the initial value of the 64-bit key data for each corresponding bit, and when processing the second to third plaintext blocks, the first 64 generated during processing of ~ 2 plaintext blocks
The exclusive-OR operation is performed for each corresponding bit of the chained block of bits and the 64-bit key data generated in the processing of the first and second plaintext blocks. The key data storage unit 110 has a key data updating function, and the key data fusion unit 10
Each time 3 generates the fusion key data, it updates the key data storing the fusion key data as new key data and uses the updated key data when processing the next block. Here, a 64-bit initial value is stored in advance, and this initial value is used when processing the first plaintext block, and the fusion key data generated during this processing is updated as new key data. next,
The key data updated during the processing of the first plaintext block is the second key data.
Used when processing a plaintext block, the fusion key data generated during this processing is updated as new key data. Next, the key data updated in the processing of the second plaintext block is used in processing the third plaintext block, and the fusion key data generated in this processing is updated as new key data.

【0310】(データ復号化装置20の構成)図41
は、本発明の実施の形態10における図1に示すデータ
復号化装置20の詳細な構成を示す図である。実施の形
態1における図7に示すデータ復号化装置20と共通す
る構成部分には同一符号を付し、同一の機能を有する構
成部分の説明は省略する。このデータ復号化装置20
は、ブロック分割部201、ブロック記憶部202、鍵
データ融合部203、部分鍵生成部204、第1〜8復
号化部205a〜205h、端数データ処理部206、
ブロック結合部207及び鍵データ記憶部210で構成
される。
(Configuration of Data Decoding Apparatus 20) FIG.
FIG. 21 is a diagram showing a detailed configuration of a data decoding device 20 shown in FIG. 1 according to Embodiment 10 of the present invention. The same components as those of the data decoding device 20 shown in FIG. 7 in the first embodiment are denoted by the same reference numerals, and the description of the components having the same functions will be omitted. This data decryption device 20
Is a block division unit 201, a block storage unit 202, a key data fusion unit 203, a partial key generation unit 204, first to eighth decryption units 205a to 205h, a fraction data processing unit 206,
It comprises a block combining unit 207 and a key data storage unit 210.

【0311】鍵データ記憶部210は鍵データを記憶す
る。なお、最初のブロックを処理する際には、予め鍵デ
ータの初期値が記憶される。鍵データ融合部203は、
ブロック記憶部202に記憶された連鎖ブロックを、鍵
データ記憶部210に記憶された鍵データに融合し、融
合鍵データを生成する。ここでは、第1暗号文ブロック
を処理する際には、64ビットの連鎖ブロックの初期値
IVと64ビットの鍵データの初期値とを、対応するビ
ット毎に排他的論理和の演算を行ない第1融合鍵データ
を生成し、第2〜3暗号文ブロックを処理する際には、
第1〜2暗号文ブロックの処理の際にそれぞれ生成され
た64ビットの連鎖ブロックと第1〜2暗号文ブロック
の処理の際にそれぞれ生成された64ビットの鍵データ
とを、対応するビット毎に排他的論理和の演算を行ない
第2〜3融合鍵データを生成する。鍵データ記憶部21
0は鍵データ更新機能を備え、鍵データ融合部203が
融合鍵データを生成する度に、融合鍵データを新たな鍵
データとして記憶している鍵データを更新し、次のブロ
ックを処理する際に用いる。ここでは、予め64ビット
の初期値が記憶され、この初期値が第1暗号文ブロック
を処理する際に用いられ、この処理の際に生成された第
1融合鍵データを新たな鍵データとして更新する。次
に、第1暗号文ブロックの処理の際に更新した鍵データ
が第2暗号文ブロックを処理する際に用いられ、この処
理の際に生成された第2融合鍵データを新たな鍵データ
として更新する。次に、第2暗号文ブロックの処理の際
に更新した鍵データが第3暗号文ブロックを処理する際
に用いられ、この処理の際に生成された第3融合鍵デー
タを新たな鍵データとして更新する。
[0311] The key data storage section 210 stores key data. When processing the first block, the initial value of the key data is stored in advance. The key data fusion unit 203
The chained block stored in the block storage unit 202 is fused with the key data stored in the key data storage unit 210 to generate fused key data. Here, when processing the first ciphertext block, the exclusive OR of the initial value IV of the 64-bit chain block and the initial value of the 64-bit key data is calculated for each corresponding bit. When generating 1 fusion key data and processing the second and third ciphertext blocks,
The 64-bit chain block generated at the time of processing of the first and second ciphertext blocks and the 64-bit key data generated at the time of processing of the first and second ciphertext blocks are respectively associated with the corresponding bits. And an exclusive OR operation is performed to generate second and third fusion key data. Key data storage unit 21
0 is provided with a key data update function. Each time the key data fusion unit 203 generates fusion key data, it updates the key data storing the fusion key data as new key data, and processes the next block. Used for Here, a 64-bit initial value is stored in advance, and this initial value is used when processing the first ciphertext block, and the first fusion key data generated during this processing is updated as new key data. I do. Next, the key data updated at the time of processing the first ciphertext block is used at the time of processing the second ciphertext block, and the second fusion key data generated at the time of this processing is used as new key data. Update. Next, the key data updated at the time of processing the second ciphertext block is used at the time of processing the third ciphertext block, and the third fusion key data generated at the time of this processing is used as new key data. Update.

【0312】<動作> (データ暗号化装置10の動作)図42は、本発明の実
施の形態10のデータ暗号化装置10における暗号化処
理の流れを示す図である。実施の形態1における図9に
示すデータ暗号化装置10の動作と共通するステップに
は同一符号を付し、その説明を省略する。ここでは、実
施の形態1の条件に、更に、鍵データ記憶部110には
予め鍵データの初期値が記憶されるものとする。
<Operation> (Operation of Data Encryption Apparatus 10) FIG. 42 is a diagram showing a flow of an encryption process in the data encryption apparatus 10 according to the tenth embodiment of the present invention. Steps common to the operations of the data encryption device 10 shown in FIG. 9 in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted. Here, it is assumed that an initial value of key data is stored in advance in key data storage section 110 in addition to the conditions of the first embodiment.

【0313】(1)〜(2)実施の形態1と同様である
(ステップS101、ステップS102:1回目)。 (3)鍵データ融合部103がブロック記憶部102に
記憶された連鎖ブロックを、鍵データ記憶部110に記
憶された鍵データに融合して融合鍵データを生成し、鍵
データ記憶部110が、この融合鍵データを新たな鍵デ
ータとして自身が記憶する鍵データを更新する(ステッ
プS1601)。ここでは、ブロック記憶部102に記
憶された64ビットの初期値IVと、鍵データ記憶部1
10に記憶された64ビットの鍵データの初期値とを、
対応するビット毎に排他的論理和の演算を行ない、第1
融合鍵データを生成して部分鍵生成部104に渡し、第
1融合鍵データを新たな鍵データとして鍵データを更新
する(ステップS1601:1回目)。
(1) and (2) Same as in the first embodiment (step S101, step S102: first time). (3) The key data fusion unit 103 fuses the chained block stored in the block storage unit 102 with the key data stored in the key data storage unit 110 to generate fusion key data, and the key data storage unit 110 The key data stored by itself is updated using the fusion key data as new key data (step S1601). Here, the 64-bit initial value IV stored in the block storage unit 102 and the key data storage unit 1
10 and the initial value of the 64-bit key data stored in
The exclusive OR operation is performed for each corresponding bit.
The fusion key data is generated and passed to the partial key generation unit 104, and the key data is updated using the first fusion key data as new key data (step S1601: first time).

【0314】(4)〜(12)実施の形態1と同様であ
る(ステップS104〜ステップS110:1回目、ス
テップS101、ステップS102:2回目)。 (13)ステップS1601において、ここでは、第1
平文ブロックの処理の際に生成された64ビットの連鎖
ブロックと、第1平文ブロックの処理の際に生成された
64ビットの鍵データとを、対応するビット毎に排他的
論理和の演算を行ない、第2融合鍵データを生成して部
分鍵生成部104に渡し、第2融合鍵データを新たな鍵
データとして鍵データを更新する(ステップS160
1:2回目)。
(4) to (12) Same as in the first embodiment (steps S104 to S110: first time, step S101, step S102: second time). (13) In step S1601, here, the first
The 64-bit chain block generated during the processing of the plaintext block and the 64-bit key data generated during the processing of the first plaintext block are subjected to an exclusive OR operation for each corresponding bit. , Generates the second fusion key data and passes it to the partial key generation unit 104, and updates the key data with the second fusion key data as new key data (step S160)
1: 2).

【0315】(14)〜(22)実施の形態1と同様で
ある(ステップS104〜ステップS110:2回目、
ステップS101、ステップS102:3回目)。 (23)ステップS1601において、ここでは、第2
平文ブロックの処理の際に生成された64ビットの連鎖
ブロックと、第2平文ブロックの処理の際に生成された
64ビットの鍵データとを、対応するビット毎に排他的
論理和の演算を行ない、第3融合鍵データを生成して部
分鍵生成部104に渡し、第3融合鍵データを新たな鍵
データとして鍵データを更新する(ステップS160
1:3回目)。
(14)-(22) The same as in the first embodiment (steps S104-S110: the second time,
Step S101, Step S102: Third time). (23) In step S1601, here, the second
The 64-bit chain block generated during the processing of the plaintext block and the 64-bit key data generated during the processing of the second plaintext block are subjected to an exclusive OR operation for each corresponding bit. , Generates the third fusion key data and passes it to the partial key generation unit 104, and updates the key data with the third fusion key data as new key data (step S160)
1: 3).

【0316】(24)〜(34)実施の形態1と同様で
ある(ステップS104〜ステップS110:3回目、
ステップS101:4回目、ステップS111〜ステッ
プS113)。 (データ復号化装置20の動作)図43は、本発明の実
施の形態10のデータ復号化装置20における暗号化処
理の流れを示す図である。データ復号化装置20の動作
は、データ暗号化装置10の動作の逆変換である。
(24) to (34) The same as the first embodiment (steps S104 to S110: the third time,
Step S101: fourth time, steps S111 to S113). (Operation of Data Decryption Device 20) FIG. 43 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the tenth embodiment of the present invention. The operation of the data decryption device 20 is an inverse conversion of the operation of the data encryption device 10.

【0317】実施の形態1における図10に示すデータ
復号化装置20の動作と共通するステップには同一符号
を付し、その説明を省略する。 (1)〜(2)実施の形態1と同様である(ステップS
201、ステップS202:1回目)。 (3)鍵データ融合部203がブロック記憶部202に
記憶された連鎖ブロックを、鍵データ記憶部210に記
憶された鍵データに融合して融合鍵データを生成し、鍵
データ記憶部210が、この融合鍵データを新たな鍵デ
ータとして自身が記憶する鍵データを更新する(ステッ
プS1701)。ここでは、ブロック記憶部202に記
憶された64ビットの初期値IVと、鍵データ記憶部2
10に記憶された64ビットの鍵データの初期値とを、
対応するビット毎に排他的論理和の演算を行ない、第1
融合鍵データを生成して部分鍵生成部204に渡し、第
1融合鍵データを新たな鍵データとして鍵データを更新
する(ステップS1701:1回目)。
Steps common to those of data decoding apparatus 20 shown in FIG. 10 in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted. (1)-(2) Same as the first embodiment (step S
201, step S202: first time). (3) The key data fusion unit 203 fuses the chained block stored in the block storage unit 202 with the key data stored in the key data storage unit 210 to generate fusion key data, and the key data storage unit 210 The key data stored by itself is updated using the fusion key data as new key data (step S1701). Here, the 64-bit initial value IV stored in the block storage unit 202 and the key data storage unit 2
10 and the initial value of the 64-bit key data stored in
The exclusive OR operation is performed for each corresponding bit.
The fusion key data is generated and passed to the partial key generation unit 204, and the key data is updated using the first fusion key data as new key data (step S1701: first time).

【0318】(4)〜(12)実施の形態1と同様であ
る(ステップS204〜ステップS210:1回目、ス
テップS201、ステップS202:2回目)。 (13)ステップS1701において、ここでは、第1
暗号文ブロックの処理の際に生成された64ビットの連
鎖ブロックと、第1暗号文ブロックの処理の際に生成さ
れた64ビットの鍵データとを、対応するビット毎に排
他的論理和の演算を行ない、第2融合鍵データを生成し
て部分鍵生成部204に渡し、第2融合鍵データを新た
な鍵データとして鍵データを更新する(ステップS17
01:2回目)。
(4) to (12) Same as in the first embodiment (steps S204 to S210: first time, step S201, step S202: second time). (13) In step S1701, here, the first
XOR operation of the 64-bit chain block generated during the processing of the ciphertext block and the 64-bit key data generated during the processing of the first ciphertext block for each corresponding bit To generate the second fusion key data and pass it to the partial key generation unit 204 to update the key data with the second fusion key data as new key data (step S17).
01: 2nd time).

【0319】(14)〜(22)実施の形態1と同様で
ある(ステップS204〜ステップS210:2回目、
ステップS201、ステップS202:3回目)。 (23)ステップS1701において、ここでは、第2
暗号文ブロックの処理の際に生成された64ビットの連
鎖ブロックと、第2暗号文ブロックの処理の際に生成さ
れた64ビットの鍵データとを、対応するビット毎に排
他的論理和の演算を行ない、第3融合鍵データを生成し
て部分鍵生成部204に渡し、第3融合鍵データを新た
な鍵データとして鍵データを更新する(ステップS17
01:3回目)。
(14)-(22) The same as in the first embodiment (steps S204-S210: second time,
Step S201, Step S202: Third time). (23) In step S1701, here, the second
XOR operation of the 64-bit chain block generated during the processing of the ciphertext block and the 64-bit key data generated during the processing of the second ciphertext block for each corresponding bit Is performed, and the third fused key data is generated and passed to the partial key generating unit 204, and the key data is updated using the third fused key data as new key data (step S17).
01: third time).

【0320】(24)〜(34)実施の形態1と同様で
ある(ステップS204〜ステップS210:3回目、
ステップS201:4回目、ステップS211〜ステッ
プS213)。 実施の形態10の暗号処理装置は、前のブロックに暗号
処理に施した過程において生成された中間ブロック及び
融合鍵ブロックを連鎖ブロック及び鍵ブロックとして記
憶しておき、後の暗号処理の際に連鎖ブロックを鍵ブロ
ックに融合し、暗号処理を施す度にその連鎖ブロックと
鍵ブロックとを更新するものである。
(24) to (34) The same as in the first embodiment (steps S204 to S210: the third time,
Step S201: fourth time, steps S211 to S213). The cryptographic processing device according to the tenth embodiment stores the intermediate block and the fusion key block generated in the process of performing the encryption process on the previous block as a chain block and a key block, and stores the chain in the subsequent cryptographic process. The block is fused with the key block, and the chain block and the key block are updated each time the encryption processing is performed.

【0321】なお、上記実施の形態10では、実施の形
態1のデータ暗号化装置10に鍵データ記憶部110を
付加し、実施の形態1のデータ復号化装置20に鍵デー
タ記憶部210を付加したが、他の実施の形態2〜9に
同様に鍵データ記憶部110と鍵データ記憶部210を
付加するものであってもよい。 (実施の形態11)本発明の実施の形態11は、実施の
形態1に、さらに、記憶する連鎖ブロックに基づいて、
出力ブロック、被暗号処理ブロック及び中間ブロック等
の中から1個のブロックを選択する機能を追加したもの
である。
In the tenth embodiment, the key data storage unit 110 is added to the data encryption device 10 of the first embodiment, and the key data storage unit 210 is added to the data decryption device 20 of the first embodiment. However, a key data storage unit 110 and a key data storage unit 210 may be added similarly to the other embodiments 2 to 9. (Eleventh Embodiment) An eleventh embodiment of the present invention is the same as the first embodiment, except that
A function of selecting one block from an output block, a block to be processed, an intermediate block, and the like is added.

【0322】<構成>暗号通信システムの構成は実施の
形態1と同様なので説明を省略する。 (データ暗号化装置10の構成)図44は、本発明の実
施の形態11における図1に示すデータ暗号化装置10
の詳細な構成を示す図である。実施の形態1における図
2に示すデータ暗号化装置10と共通する構成部分には
同一符号を付し、同一の機能を有する構成部分の説明は
省略する。
<Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and a description thereof will be omitted. (Configuration of Data Encryption Apparatus 10) FIG. 44 shows a data encryption apparatus 10 according to the eleventh embodiment of the present invention shown in FIG.
FIG. 3 is a diagram showing a detailed configuration of the embodiment. The same components as those of the data encryption device 10 according to the first embodiment shown in FIG. 2 are denoted by the same reference numerals, and the description of the components having the same functions will be omitted.

【0323】このデータ暗号化装置10は、ブロック分
割部101、ブロック記憶部102、鍵データ融合部1
03、部分鍵生成部104、第1〜8暗号化部105a
〜105h、端数データ処理部106、ブロック結合部
107及びブロック選択部111で構成される。図50
に示す従来の暗号化装置30と図44に示す本発明の実
施の形態11におけるデータ暗号化装置10との関係
は、実施の形態1と同様であり、さらに、ブロック選択
部111が付加されている。
This data encryption device 10 includes a block division unit 101, a block storage unit 102, a key data fusion unit 1
03, partial key generation unit 104, first to eighth encryption units 105a
105h, a fraction data processing unit 106, a block combining unit 107, and a block selecting unit 111. FIG.
The relationship between the conventional encryption device 30 shown in FIG. 14 and the data encryption device 10 in the eleventh embodiment of the present invention shown in FIG. I have.

【0324】ブロック選択部111は、ブロック記憶部
102に記憶された連鎖ブロックに基づいて、平文ブロ
ック、各中間ブロック及び暗号文ブロックの中から1個
のブロックを選択し、ブロック記憶部102に渡す。具
体的には、例えば、ブロック記憶部102に記憶された
連鎖ブロックの下位3ビットが「001」の場合には第
1中間ブロックを選択し、同様に、「010」〜「11
1」の場合には第2中間ブロック〜第7中間ブロックを
選択する。また、連鎖ブロックの下位3ビットが「00
0」の場合であって、下位4ビット目が「0」の時には
平文ブロックを選択し、下位4ビット目が「1」の時に
は暗号文ブロックを選択する。ブロック記憶部102
は、ブロック選択部111に選択されたブロックを、新
たな連鎖ブロックとして記憶している連鎖ブロックを更
新し、次のブロックを処理する際に用いる。ここでは、
予め64ビットの初期値IVが記憶され、この初期値I
Vが第1平文ブロックを処理する際に用いられ、この初
期値IVの下位4ビットに基づいて選択されたブロック
を新たな連鎖ブロックとして更新する。次に、第1平文
ブロックの処理の際に更新した連鎖ブロックが第2平文
ブロックを処理する際に用いられ、この連鎖ブロックの
下位4ビットに基づいて選択されたブロックを新たな連
鎖ブロックとして更新する。次に、第2平文ブロックの
処理の際に更新した連鎖ブロックが第3平文ブロックを
処理する際に用いられ、この連鎖ブロックの下位4ビッ
トに基づいて選択されたブロックを新たな連鎖ブロック
として更新する。最後に、第3平文ブロックの処理の際
に更新した連鎖ブロックが端数平文データを処理する際
に用いられる。
[0324] The block selecting section 111 selects one block from the plaintext block, each intermediate block and the ciphertext block based on the chained blocks stored in the block storage section 102, and transfers it to the block storage section 102. . Specifically, for example, when the lower three bits of the chained block stored in the block storage unit 102 are “001”, the first intermediate block is selected, and similarly, “010” to “11”
In the case of "1", the second to seventh intermediate blocks are selected. Also, the lower three bits of the chained block are “00”.
In the case of "0", the plaintext block is selected when the lower 4th bit is "0", and the ciphertext block is selected when the lower 4th bit is "1". Block storage unit 102
Is used to update the chain block storing the block selected by the block selection unit 111 as a new chain block and to process the next block. here,
A 64-bit initial value IV is stored in advance, and this initial value I
V is used when processing the first plaintext block, and the block selected based on the lower 4 bits of the initial value IV is updated as a new chain block. Next, the chain block updated at the time of processing the first plaintext block is used at the time of processing the second plaintext block, and the block selected based on the lower 4 bits of this chain block is updated as a new chain block. I do. Next, the chain block updated at the time of processing the second plaintext block is used at the time of processing the third plaintext block, and the block selected based on the lower 4 bits of this chain block is updated as a new chain block. I do. Finally, the chain block updated during the processing of the third plaintext block is used when processing the fractional plaintext data.

【0325】(データ復号化装置20の構成)図45
は、本発明の実施の形態11における図1に示すデータ
復号化装置20の詳細な構成を示す図である。実施の形
態1における図7に示すデータ復号化装置20と共通す
る構成部分には同一符号を付し、同一の機能を有する構
成部分の説明は省略する。このデータ復号化装置20
は、ブロック分割部201、ブロック記憶部202、鍵
データ融合部203、部分鍵生成部204、第1〜8復
号化部205a〜205h、端数データ処理部206、
ブロック結合部207及びブロック選択部211で構成
される。
(Configuration of Data Decoding Apparatus 20) FIG.
FIG. 26 is a diagram showing a detailed configuration of the data decoding device 20 shown in FIG. 1 in Embodiment 11 of the present invention. The same components as those of the data decoding device 20 shown in FIG. 7 in the first embodiment are denoted by the same reference numerals, and the description of the components having the same functions will be omitted. This data decryption device 20
Is a block division unit 201, a block storage unit 202, a key data fusion unit 203, a partial key generation unit 204, first to eighth decryption units 205a to 205h, a fraction data processing unit 206,
It comprises a block combining unit 207 and a block selecting unit 211.

【0326】ブロック選択部211は、ブロック記憶部
202に記憶された連鎖ブロックに基づいて、暗号文ブ
ロック、各中間ブロック及び平文ブロックの中から1個
のブロックを選択し、ブロック記憶部202に渡す。具
体的には、例えば、ブロック記憶部202に記憶された
連鎖ブロックの下位3ビットが「001」の場合には第
1中間ブロックを選択し、同様に、「010」〜「11
1」の場合には第2中間ブロック〜第7中間ブロックを
選択する。また、連鎖ブロックの下位3ビットが「00
0」の場合であって、下位4ビット目が「0」の時には
平文ブロックを選択し、下位4ビット目が「1」の時に
は暗号文ブロックを選択する。
The block selecting section 211 selects one block from the ciphertext block, each intermediate block and the plaintext block based on the chained blocks stored in the block storage section 202 and transfers the block to the block storage section 202. . Specifically, for example, when the lower three bits of the chained block stored in the block storage unit 202 are “001”, the first intermediate block is selected, and similarly, “010” to “11”
In the case of "1", the second to seventh intermediate blocks are selected. Also, the lower three bits of the chained block are “00”.
In the case of "0", the plaintext block is selected when the lower 4th bit is "0", and the ciphertext block is selected when the lower 4th bit is "1".

【0327】ブロック記憶部202は、ブロック選択部
211に選択されたブロックを、新たな連鎖ブロックと
して記憶している連鎖ブロックを更新し、次のブロック
を処理する際に用いる。ここでは、予め64ビットの初
期値IVが記憶され、この初期値IVが第1暗号文ブロ
ックを処理する際に用いられ、この初期値IVの下位4
ビットに基づいて選択されたブロックを新たな連鎖ブロ
ックとして更新する。次に、第1暗号文ブロックの処理
の際に更新した連鎖ブロックが第2暗号文ブロックを処
理する際に用いられ、この連鎖ブロックの下位4ビット
に基づいて選択されたブロックを新たな連鎖ブロックと
して更新する。次に、第2暗号文ブロックの処理の際に
更新した連鎖ブロックが第3暗号文ブロックを処理する
際に用いられ、この連鎖ブロックの下位4ビットに基づ
いて選択されたブロックを新たな連鎖ブロックとして更
新する。最後に、第3暗号文ブロックの処理の際に更新
した連鎖ブロックが端数暗号文データを処理する際に用
いられる。
[0327] The block storage unit 202 updates the chain block storing the block selected by the block selection unit 211 as a new chain block, and uses the block to process the next block. Here, a 64-bit initial value IV is stored in advance, and this initial value IV is used when processing the first ciphertext block.
The block selected based on the bit is updated as a new chain block. Next, the chain block updated at the time of processing the first ciphertext block is used at the time of processing the second ciphertext block, and the block selected based on the lower 4 bits of this chain block is replaced with a new chain block. Update as Next, the chain block updated during the processing of the second ciphertext block is used when processing the third ciphertext block, and the block selected based on the lower 4 bits of this chain block is replaced with a new chain block. Update as Finally, the chained block updated during the processing of the third ciphertext block is used when processing the fractional ciphertext data.

【0328】<動作> (データ暗号化装置10の動作)図46は、本発明の実
施の形態11のデータ暗号化装置10における暗号化処
理の流れを示す図である。実施の形態1における図9に
示すデータ暗号化装置10の動作と共通するステップに
は同一符号を付し、その説明を省略する。 (1)〜(8)実施の形態1の(1)〜(6)、(8)
〜(9)と同様である(ステップS101〜ステップS
106、ステップS108、ステップS109:1回
目)。
<Operation> (Operation of Data Encryption Device 10) FIG. 46 is a diagram showing a flow of an encryption process in the data encryption device 10 according to the eleventh embodiment of the present invention. Steps common to the operations of the data encryption device 10 shown in FIG. 9 in the first embodiment are denoted by the same reference numerals, and description thereof will be omitted. (1) to (8) (1) to (6) and (8) of the first embodiment
(Steps S101 to S9)
106, step S108, step S109: first time).

【0329】(9)ブロック選択部111が、ブロック
記憶部102に記憶された連鎖ブロックに基づいて、平
文ブロック、各中間ブロック及び暗号文ブロックの中か
ら1個のブロックを選択し、ブロック記憶部102が、
選択されたブロックを新たな連鎖ブロックとして、記憶
している連鎖ブロックを更新する(ステップS180
1)。ここでは、例えば、ブロック記憶部102に記憶
された連鎖ブロックの初期値IVの下位3ビットが「0
11」であるとすると、第1平文ブロックに対応する第
3中間ブロックを選択し、選択された第3中間ブロック
を新たな連鎖ブロックとして連鎖ブロックを更新する
(ステップS1801:1回目)。 (10)〜(18)実施の形態1と同様である(ステッ
プS110:1回目、ステップS101〜ステップS1
06、ステップS108、ステップS109:2回
目)。 (19)ステップS1801において、ここでは、例え
ば、第1平文ブロックの処理の際に生成され選択された
連鎖ブロックの下位4ビットが「0000」であるとす
ると、第2平文ブロックを選択し、選択された第2平文
ブロックを新たな連鎖ブロックとして連鎖ブロックを更
新する(ステップS1801:2回目)。
(9) The block selection unit 111 selects one block from the plaintext block, each intermediate block and the ciphertext block based on the chained blocks stored in the block storage unit 102, and 102 is
The stored chain block is updated with the selected block as a new chain block (step S180)
1). Here, for example, the lower 3 bits of the initial value IV of the chained block stored in the block storage unit 102 are “0”.
If "11", the third intermediate block corresponding to the first plaintext block is selected, and the selected third intermediate block is updated as a new chain block, and the chain block is updated (step S1801: first time). (10) to (18) Same as in the first embodiment (step S110: first time, steps S101 to S1
06, step S108, step S109: second time). (19) In step S1801, for example, assuming that the lower 4 bits of the selected chained block generated and processed in the processing of the first plaintext block are “0000”, the second plaintext block is selected and selected. The chain block is updated with the second plaintext block thus obtained as a new chain block (step S1801: second time).

【0330】(20)〜(28)実施の形態1と同様で
ある(ステップS110:2回目、ステップS101〜
ステップS106、ステップS108、ステップS10
9:3回目)。 (29)ステップS1801において、ここでは、例え
ば、第2平文ブロックの処理の際に生成され選択された
連鎖ブロックの下位4ビットが「1000」であるとす
ると、第3暗号文ブロックを選択し、選択された第3暗
号文ブロックを新たな連鎖ブロックとして連鎖ブロック
を更新する(ステップS1801:3回目)。 (30)〜(34)実施の形態1と同様である(ステッ
プS110:3回目、ステップS101:4回目、ステ
ップS111〜ステップS113)。
(20) to (28) The same as in the first embodiment (step S110: second time, steps S101 to S101)
Step S106, step S108, step S10
9: Third time). (29) In step S1801, for example, assuming that the lower 4 bits of the selected chained block generated and processed in the processing of the second plaintext block are “1000”, the third ciphertext block is selected, The chain block is updated with the selected third ciphertext block as a new chain block (step S1801: third time). (30) to (34) The same as in the first embodiment (step S110: third time, step S101: fourth time, steps S111 to S113).

【0331】(データ復号化装置20の動作)図47
は、本発明の実施の形態11のデータ復号化装置20に
おける暗号化処理の流れを示す図である。データ復号化
装置20の動作は、データ暗号化装置10の動作の逆変
換である。
(Operation of Data Decoding Device 20) FIG.
FIG. 33 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the eleventh embodiment of the present invention. The operation of the data decryption device 20 is an inverse conversion of the operation of the data encryption device 10.

【0332】実施の形態1における図10に示すデータ
復号化装置20の動作と共通するステップには同一符号
を付し、その説明を省略する。 (1)〜(8)実施の形態1の(1)〜(6)、(8)
〜(9)と同様である(ステップS201〜ステップS
206、ステップS208、ステップS209:1回
目)。 (9)ブロック選択部211が、ブロック記憶部202
に記憶された連鎖ブロックに基づいて、暗号文ブロッ
ク、各中間ブロック及び平文ブロックの中から1個のブ
ロックを選択し、ブロック記憶部202が、選択された
ブロックを新たな連鎖ブロックとして、記憶している連
鎖ブロックを更新する(ステップS1901)。ここで
は、例えば、ブロック記憶部202に記憶された連鎖ブ
ロックの初期値IVの下位3ビットが「011」である
とすると、第1暗号文ブロックに対応する第3中間ブロ
ックを選択し、選択された第3中間ブロックを新たな連
鎖ブロックとして連鎖ブロックを更新する(ステップS
1901:1回目)。
Steps common to those of data decoding apparatus 20 shown in FIG. 10 in Embodiment 1 are denoted by the same reference numerals, and description thereof is omitted. (1) to (8) (1) to (6) and (8) of the first embodiment
To (9) (step S201 to step S201).
206, step S208, step S209: first time). (9) The block selection unit 211 determines that the block storage unit 202
, One block is selected from the ciphertext block, each intermediate block, and the plaintext block, and the block storage unit 202 stores the selected block as a new chained block. The linked chain block is updated (step S1901). Here, for example, assuming that the lower three bits of the initial value IV of the chained block stored in the block storage unit 202 are “011”, the third intermediate block corresponding to the first ciphertext block is selected and selected. The chained block is updated using the third intermediate block as a new chained block (step S
1901: the first time).

【0333】(10)〜(18)実施の形態1と同様で
ある(ステップS210:1回目、ステップS201〜
ステップS206、ステップS208、ステップS20
9:2回目)。 (19)ステップS1901において、ここでは、例え
ば、第1暗号文ブロックの処理の際に生成され選択され
た連鎖ブロックの下位4ビットが「0000」であると
すると、第2平文ブロックを選択し、選択された第2平
文ブロックを新たな連鎖ブロックとして連鎖ブロックを
更新する(ステップS1901:2回目)。
(10) to (18) Same as in the first embodiment (step S210: first time, steps S201 to S201)
Step S206, step S208, step S20
9: Second time). (19) In step S1901, for example, assuming that the lower 4 bits of the selected chain block generated and processed in the processing of the first ciphertext block are “0000”, the second plaintext block is selected. The chain block is updated with the selected second plaintext block as a new chain block (step S1901: second time).

【0334】(20)〜(28)実施の形態1と同様で
ある(ステップS210:2回目、ステップS201〜
ステップS206、ステップS208、ステップS20
9:3回目)。 (29)ステップS1901において、ここでは、例え
ば、第2暗号文ブロックの処理の際に生成され選択され
た連鎖ブロックの下位4ビットが「1000」であると
すると、第3暗号文ブロックを選択し、選択された第3
暗号文ブロックを新たな連鎖ブロックとして連鎖ブロッ
クを更新する(ステップS1901:3回目)。
(20) to (28) The same as in the first embodiment (step S210: second time, steps S201 to S201)
Step S206, step S208, step S20
9: Third time). (29) In step S1901, for example, assuming that the lower 4 bits of the selected chain block generated and processed in the processing of the second ciphertext block are “1000”, the third ciphertext block is selected. , Selected third
The chain block is updated with the ciphertext block as a new chain block (step S1901: third time).

【0335】(30)〜(34)実施の形態1と同様で
ある(ステップS210:3回目、ステップS201:
4回目、ステップS211〜ステップS213)。 実施の形態11の暗号処理装置は、前のブロックに暗号
処理に施した過程において生成された中間ブロック等を
連鎖ブロックとして記憶しておき、後の暗号処理の際に
鍵データに融合し、暗号処理を施す度にその連鎖ブロッ
クに基づいて複数の中間ブロック等から1個のブロック
を選択してその連鎖ブロックを更新するものである。な
お、上記実施の形態11では、実施の形態1のデータ暗
号化装置10にブロック選択部111を付加し、実施の
形態1のデータ復号化装置20にブロック選択部211
を付加したが、他の実施の形態2〜10に同様にブロッ
ク選択部111とブロック選択部211を付加するもの
であってもよい。
(30) to (34) The same as in the first embodiment (step S210: third time, step S201:
Fourth time, steps S211 to S213). The encryption processing device according to the eleventh embodiment stores intermediate blocks and the like generated in the process of performing encryption processing on a previous block as a chain block, and fuses the key data with key data at the time of subsequent encryption processing. Each time processing is performed, one block is selected from a plurality of intermediate blocks or the like based on the chained block and the chained block is updated. In the eleventh embodiment, the block selection unit 111 is added to the data encryption device 10 of the first embodiment, and the block selection unit 211 is added to the data decryption device 20 of the first embodiment.
Is added, but the block selecting unit 111 and the block selecting unit 211 may be added similarly to the other embodiments 2 to 10.

【0336】(実施の形態12)本発明の実施の形態1
2は、実施の形態1のデータ暗号化装置10における端
数データ処理部106が行なう端数データの処理を変更
したものである。 <構成>暗号通信システムの構成は実施の形態1と同様
なので説明を省略する。 (データ暗号化装置10の構成)このデータ暗号化装置
10の構成は、実施の形態1の構成と同様である。実施
の形態1における図2に示すデータ暗号化装置10と同
一の機能を有する構成部分の説明は省略する。
(Embodiment 12) Embodiment 1 of the present invention
2 is a modification of the fraction data processing performed by the fraction data processing unit 106 in the data encryption device 10 of the first embodiment. <Structure> The structure of the cryptographic communication system is the same as that of the first embodiment, and the description is omitted. (Configuration of Data Encryption Device 10) The configuration of the data encryption device 10 is the same as the configuration of the first embodiment. The description of the components having the same functions as those of the data encryption device 10 shown in FIG.

【0337】図48は、本発明の実施の形態12におけ
る端数データ処理部106の詳細な構成を示す図であ
る。端数データ処理部106は、ブロック分割部101
から端数平文データを受け取ると、第1〜8暗号化部1
05a〜105hに直前に処理した暗号文ブロックを渡
して暗号化させる等して、ブロック記憶部102に記憶
された連鎖ブロックに基づいて、直前に処理した暗号文
ブロックに暗号処理を施させて端数データ処理用ブロッ
クを生成し、これに基づいて、端数平文データから端数
平文データと同じビット数の端数暗号文データを生成す
るものであり、データ整合部106a、端数データ融合
部106b及び暗号文ブロック記憶部106cを含む。
FIG. 48 is a diagram showing a detailed configuration of the fraction data processing unit 106 according to the twelfth embodiment of the present invention. The fraction data processing unit 106 includes the block dividing unit 101
Receives the fractional plaintext data from the first to eighth encryption units 1
The ciphertext block processed immediately before is subjected to cipher processing based on the chained block stored in the block storage unit 102 by passing the ciphertext block processed immediately before to 05a to 105h and encrypting the ciphertext block. A data processing block is generated, and based on this, fraction ciphertext data having the same number of bits as the fraction plaintext data is generated from the fraction plaintext data. The data matching unit 106a, the fraction data fusion unit 106b, and the ciphertext block The storage unit 106c is included.

【0338】暗号文ブロック記憶部106cは、端数デ
ータの処理の直前に処理した暗号文ブロックを記憶し、
端数データに処理を施す際に、記憶している暗号文ブロ
ックを第1〜8暗号化部105a〜105hに渡す。こ
こでは、第3暗号文ブロックを記憶し、端数平文データ
に処理を施す際に、記憶している第3暗号文ブロックを
第1〜8暗号化部105a〜105hに渡す。ここで、
第1〜8暗号化部105a〜105hは、実施の形態1
と同様の暗号処理を施すことにより、暗号文ブロック記
憶部106cより渡された暗号文ブロックから端数デー
タ処理用ブロックを生成する。ここでは、第3暗号文ブ
ロックから端数データ処理用ブロックを生成する。
The ciphertext block storage unit 106c stores the ciphertext block processed immediately before the processing of the fraction data,
When processing the fraction data, the stored ciphertext blocks are passed to the first to eighth encryption units 105a to 105h. Here, when the third ciphertext block is stored and the fraction plaintext data is processed, the stored third ciphertext block is passed to the first to eighth encryption units 105a to 105h. here,
The first to eighth encryption units 105a to 105h correspond to the first embodiment.
By performing the same encryption processing as described above, a fraction data processing block is generated from the ciphertext block passed from the ciphertext block storage unit 106c. Here, a fraction data processing block is generated from the third ciphertext block.

【0339】データ整合部106aは、暗号処理を施し
て生成された端数データ処理用ブロックから、端数平文
データと同じビット数の整合データを生成する。ここで
は、端数平文データが8ビットなので、端数データ処理
用ブロックの、例えば上位8ビットで構成される整合デ
ータを生成する。端数データ融合部106bは、整合デ
ータを端数平文データに融合する。ここでは、8ビット
の整合データと8ビットの端数平文データとを、対応す
るビット毎に排他的論理和の演算を行ない、8ビットの
端数暗号文データを生成する。 <動作>
The data matching unit 106a generates matched data having the same number of bits as the fractional plaintext data from the fractional data processing block generated by performing the encryption processing. In this case, since the fractional plaintext data is 8 bits, matching data composed of, for example, upper 8 bits of the fractional data processing block is generated. The fraction data fusion unit 106b fuses the matching data into the fraction plaintext data. Here, the exclusive-OR operation is performed on the 8-bit matched data and the 8-bit fractional plaintext data for each corresponding bit to generate 8-bit fractional ciphertext data. <Operation>

【0340】(データ暗号化装置10の動作)このデー
タ暗号化装置10の動作は、図9に示す実施の形態1の
データ暗号化装置10の動作と同様である。 (データ暗号化装置10の動作)図49は、本発明の実
施の形態12のデータ暗号化装置10における端数デー
タ処理の流れを示す図である。
(Operation of Data Encryption Device 10) The operation of the data encryption device 10 is the same as the operation of the data encryption device 10 of the first embodiment shown in FIG. (Operation of Data Encryption Apparatus 10) FIG. 49 is a diagram showing a flow of the fraction data processing in the data encryption apparatus 10 according to the twelfth embodiment of the present invention.

【0341】ここでは、一例として、200ビットの平
文データを入手し、ブロック記憶部102には予め初期
値IVが記憶され、既に、第1〜3平文ブロックの暗号
化が終了し、第3暗号文ブロックが暗号文ブロック記憶
部106cに記憶されたものとし、残りの8ビットが端
数平文データとしてブロック分割部101から端数デー
タ処理部106へ渡されたものとして、DESのアルゴ
リズムに準じて説明する。 (1)鍵データ融合部103が、ブロック記憶部102
に記憶された連鎖ブロックを鍵データに融合し、融合鍵
データを生成する(ステップS2001)。ここでは、
第3平文ブロックの処理の際に生成された連鎖ブロック
と64ビットの鍵データとを、対応するビット毎に排他
的論理和の演算を行ない、融合鍵データを生成して部分
鍵生成部104に渡す。
Here, as an example, 200-bit plaintext data is obtained, the initial value IV is stored in the block storage unit 102 in advance, the encryption of the first to third plaintext blocks is already completed, and the third ciphertext is obtained. It is assumed that the sentence block is stored in the ciphertext block storage unit 106c, and that the remaining 8 bits are passed from the block division unit 101 to the fraction data processing unit 106 as fraction plaintext data, according to the DES algorithm. . (1) The key data fusion unit 103
Is merged with key data to generate fusion key data (step S2001). here,
An exclusive OR operation is performed on the chained block generated during the processing of the third plaintext block and the 64-bit key data for each corresponding bit to generate fusion key data, and the partial key generation unit 104 hand over.

【0342】(2)部分鍵生成部104が、融合鍵デー
タから暗号化部の数に相当する数の部分鍵を生成する
(ステップS2002)。ここでは、64ビットの融合
鍵データから48ビットの部分鍵を8個生成する。 (3)第1暗号化部105aが、第1の部分鍵に基づい
て、暗号文ブロック記憶部106cに記憶された直前に
処理した暗号文ブロックから第1中間ブロックを生成す
る(ステップS2003)。ここでは、第3暗号文ブロ
ックから第1中間ブロックを生成する。
(2) The partial key generation unit 104 generates a number of partial keys corresponding to the number of encryption units from the fusion key data (step S2002). Here, eight 48-bit partial keys are generated from the 64-bit fusion key data. (3) Based on the first partial key, the first encryption unit 105a generates a first intermediate block from the just-processed ciphertext block stored in the ciphertext block storage unit 106c (Step S2003). Here, a first intermediate block is generated from the third ciphertext block.

【0343】(4)第2〜7暗号化部105b〜105
gが、それぞれ第2〜7の部分鍵に基づいて、第1〜6
中間ブロックから第2〜7中間ブロックを生成する(ス
テップS2004)。ここでは、第3暗号文ブロックに
対応する第1〜6中間ブロックから第2〜7中間ブロッ
クを生成する。 (5)第8暗号化部105hが、第8の部分鍵に基づい
て、第7中間ブロックから端数データ処理用ブロックを
生成する(ステップS2005)。ここでは、第3暗号
文ブロックに対応する第7中間ブロックから端数データ
処理用ブロックを生成する。
(4) Second to seventh encryption units 105b to 105
g, based on the second to seventh partial keys, respectively,
The second to seventh intermediate blocks are generated from the intermediate blocks (step S2004). Here, the second to seventh intermediate blocks are generated from the first to sixth intermediate blocks corresponding to the third ciphertext block. (5) The eighth encryption unit 105h generates a fraction data processing block from the seventh intermediate block based on the eighth partial key (step S2005). Here, a fraction data processing block is generated from the seventh intermediate block corresponding to the third ciphertext block.

【0344】(6)データ整合部106aが、暗号処理
を施して生成された端数データ処理用ブロックから、端
数平文データと同じビット数の整合データを生成する
(ステップS2006)。ここでは、端数平文データが
8ビットなので、端数データ処理用ブロックの、例えば
上位8ビットで構成される整合データを生成する。 (7)端数データ融合部106bが、整合データを端数
平文データに融合する(ステップS2007)。ここで
は、8ビットの整合データと8ビットの端数平文データ
とを、対応するビット毎に排他的論理和の演算を行な
い、8ビットの端数暗号文データを生成する。
(6) The data matching unit 106a generates matched data having the same number of bits as the fractional plaintext data from the fractional data processing block generated by performing the encryption process (step S2006). In this case, since the fractional plaintext data is 8 bits, matching data composed of, for example, upper 8 bits of the fractional data processing block is generated. (7) The fraction data fusion unit 106b fuses the matched data into the fractional plain data (step S2007). Here, the exclusive-OR operation is performed on the 8-bit matched data and the 8-bit fractional plaintext data for each corresponding bit to generate 8-bit fractional ciphertext data.

【0345】(8)ブロック結合部107が、第8暗号
化部105hが生成した各暗号文ブロック及び端数デー
タ処理部106が生成した端数暗号文データを結合して
暗号文データを生成する(ステップS2008)。ここ
では、第1〜3平文ブロックにそれぞれ対応する各暗号
文ブロック及び端数暗号文データを結合して200ビッ
トの暗号文データを生成する。なお、データ暗号化装置
10における端数データ処理部106が行なう端数デー
タの処理の変更にともない、データ復号化装置20にお
ける端数データ処理部206が行なう端数データの処理
も変更となる。その変更内容は、連鎖ブロックに基づい
て、前の暗号文ブロックを新たな入力ブロックとして暗
号化させることにより端数データ処理用ブロックを生成
させ、これに基づいて、端数平文データから端数平文デ
ータと同じビット数の端数暗号文データを生成するもの
であり、端数データ処理部106と同様の変更であるの
で、その説明を省略する。
(8) The block combining unit 107 combines the ciphertext blocks generated by the eighth encryption unit 105h and the fraction ciphertext data generated by the fraction data processing unit 106 to generate ciphertext data (step S2008). Here, the ciphertext blocks corresponding to the first to third plaintext blocks and the fraction ciphertext data are combined to generate 200-bit ciphertext data. In accordance with the change in the processing of the fraction data performed by the fraction data processing unit 106 in the data encryption device 10, the processing of the fraction data performed by the fraction data processing unit 206 in the data decryption device 20 also changes. The content of the change is to generate a fraction data processing block by encrypting the previous ciphertext block as a new input block based on the chain block, and based on this, from the fraction plaintext data to the same as the fraction plaintext data This is for generating the fractional ciphertext data of the bit number, which is similar to the modification of the fractional data processing unit 106, and thus the description thereof is omitted.

【0346】また、上記実施の形態12では、実施の形
態1の端数データ処理部106が行なう端数データの処
理及び端数データ処理部206が行なう端数データの処
理を変更したが、他の実施の形態2〜11に同様に端数
データの処理を変更してもよい。また、本来のDESの
アルゴリズムは、各暗号処理部による暗号化処理に先立
って初期転置を行ない、16段の暗号化処理を経た後に
最終転置を行なうが、上記各実施の形態では説明の簡略
化の為に、初期転置、最終転置及び9段以降の暗号処理
部を省略した。
In the twelfth embodiment, the processing of the fraction data performed by the fraction data processing unit 106 and the processing of the fraction data performed by the fraction data processing unit 206 of the first embodiment are changed. The processing of the fraction data may be similarly changed to 2 to 11. The original DES algorithm performs the initial transposition before the encryption processing by each encryption processing unit and performs the final transposition after the 16-stage encryption processing. For this reason, the initial transposition, the final transposition, and the encryption processing unit in the 9th and subsequent stages are omitted.

【0347】また、上記各実施の形態のアルゴリズム
は、DESのアルゴリズムに限られるものではなく、ど
のようなアルゴリズムであってもよい。勿論、暗号処理
部の段数も8段に限られるものではなく、何段であって
もよい。また、上記各実施の形態では、主に4段目の出
力を新たな連鎖ブロックとしたが、勿論、これは4段目
の出力に限られるものではなく、何段目の出力であって
もよい。また、上記各実施の形態では、連鎖ブロックと
鍵データのビット数が同じである場合について説明した
が、必ずしもこれは同じでなくてよい。なお、連鎖ブロ
ック等と鍵データを融合する各実施の形態において、連
鎖ブロックと鍵データのビット数が違っている場合に
は、鍵データに融合すべきブロックから鍵データと同じ
ビット数のデータを生成して、これを鍵データに融合す
る。例えばここでは、鍵データのビット数が64ビット
よりも大きい場合は、鍵データに融合すべきブロックを
拡大転置等のよって鍵データと同じビット数のデータを
生成し、鍵データのビット数が64ビットよりも小さい
場合は、鍵データのビット数分の上位ビットで構成され
るデータを生成し、これを鍵データに融合する。
The algorithm of each of the above embodiments is not limited to the DES algorithm, but may be any algorithm. Of course, the number of stages of the encryption processing unit is not limited to eight, but may be any number. Further, in each of the above-described embodiments, the output of the fourth stage is mainly a new chain block. However, the output is not limited to the output of the fourth stage. Good. Further, in each of the above embodiments, the case where the number of bits of the chained block and the key data are the same has been described, but this is not necessarily the same. In each embodiment in which the chain block and the key data are merged, if the number of bits of the chain block and the key data are different, data having the same bit number as the key data is extracted from the block to be merged with the key data. Generate and fuse this with key data. For example, here, when the number of bits of the key data is larger than 64 bits, data having the same number of bits as the key data is generated by enlarging and transposing a block to be fused with the key data. If the number of bits is smaller than the number of bits, data composed of upper bits corresponding to the number of bits of the key data is generated and fused with the key data.

【0348】また、上記各実施の形態はデータ暗号化装
置10で平文データを入力して暗号化し、データ復号化
装置20で暗号文データを復号化するものであるが、デ
ータ暗号化装置10における暗号化とデータ復号化装置
20における復号化とは逆変換の関係にあるので、それ
ぞれ暗号化装置にも復号化装置にも成り得る。よって、
上記各実施の形態において、上記各データ復号化装置2
0が平文データを入力して暗号化し、上記各データ暗号
化装置10が暗号文データを復号化するものであっても
よい。
In each of the above embodiments, the plaintext data is input and encrypted by the data encryption device 10, and the encrypted data is decrypted by the data decryption device 20. Since the encryption and the decryption in the data decryption device 20 are in a reverse conversion relationship, each can be an encryption device and a decryption device. Therefore,
In each of the above embodiments, each of the data decoding devices 2
0 may input plaintext data and encrypt it, and each of the data encryption devices 10 may decrypt the ciphertext data.

【0349】[0349]

【発明の効果】本発明に係る暗号処理装置は、入力デー
タに基づいて暗号処理を施して出力データを生成する暗
号処理装置であって、前のデータの影響を後のデータに
及ぼす為に用いる連鎖データを記憶し暗号処理を施す毎
にその連鎖データを更新する記憶手段と、記憶手段が記
憶する連鎖データを入力データに融合して融合データを
生成する融合手段と、融合データに基づいて主暗号処理
を施して出力データを生成し出力データを生成するまで
の過程において生成される中間データを出力する主暗号
処理手段とを備え、記憶手段は主暗号処理手段が出力す
る中間データを新たな連鎖データとして自身が記憶する
連鎖データを更新し次の暗号処理に供させることを特徴
とする。
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing based on input data to generate output data, and is used to exert the influence of previous data on subsequent data. Storage means for storing the chained data and updating the chained data each time the encryption processing is performed; fusion means for merging the chained data stored in the storage means with the input data to generate fusion data; Main cryptographic processing means for generating intermediate data generated in the process of generating output data by performing cryptographic processing and generating output data, wherein the storage means stores the intermediate data output by the main cryptographic processing means as new data. The present invention is characterized in that the chain data stored by itself is updated as the chain data and used for the next encryption processing.

【0350】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に鍵データ、又は、被暗号処理データ等
の入力データに融合し、暗号処理を施す度にその連鎖デ
ータを更新するので、各出力データは自身よりも前の全
てのデータに依存することになり、平文の統計的な特徴
は各連鎖データによって攪乱され、装置規模や処理時間
等をさほど増大させていないにもかかわらず暗号解読が
難しくなる。また、暗号解読者は、暗号文と平文のペア
を入手することはできたとしても、暗号処理に用いられ
た連鎖データを入手することは事実上不可能であり、さ
らに、連鎖データを生成するアルゴリズムや連鎖データ
の初期値は非公開なので、「既知平文攻撃」による暗号
解読はさらに難しくなり、総当たりによる解読も困難で
ある。従って、装置規模や処理時間等を大幅に増大させ
ることなく、安全性を向上させることができる。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is merged with key data or input data such as data to be encrypted at the time of the subsequent encryption process. Each output data updates its chain data, so each output data depends on all data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the device size and processing time Decryption becomes difficult even though the number is not greatly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force. Therefore, safety can be improved without significantly increasing the apparatus scale, processing time, and the like.

【0351】また、前記主暗号処理手段は複数段の部分
処理を施し、複数段の部分処理とは部分処理の段階が複
数あり1段目で部分処理を施したデータに2段目で更に
部分処理を施しこれを段数分行なうことをいい、最終段
で部分処理を施したデータが出力データとなり、最終段
以外の各段で部分処理を施して得られたデータが各中間
データとなり、前記記憶手段は主暗号処理手段が出力す
る各中間データの内の1個を新たな連鎖データとして記
憶することを特徴とすることもできる。これによって、
どの中間データが新たな連鎖データとなるかを暗号解読
者が知ることができない。
Further, the main encryption processing means performs a plurality of stages of partial processing. The plurality of stages of partial processing includes a plurality of stages of partial processing, and the data subjected to the partial processing in the first stage is further partially processed in the second stage. Performing the processing and performing this for the number of stages.Data obtained by performing the partial processing in the final stage becomes output data, and data obtained by performing the partial processing in each stage other than the final stage becomes each intermediate data. The means may store one of the intermediate data output by the main encryption processing means as new chain data. by this,
The cryptanalyst cannot know which intermediate data becomes new chain data.

【0352】従って、装置規模や処理時間等を大幅に増
大させることなく、さらに安全性を向上させることがで
きる。また、前記入力データは鍵データと被暗号処理デ
ータとを含み、前記融合手段は前記記憶手段が記憶する
連鎖データを前記鍵データに融合して融合鍵データを生
成し、前記暗号処理装置は、さらに、融合鍵データから
前記主暗号処理手段の段数分の部分鍵を生成し主暗号処
理手段の各段階に給送しそれぞれの部分処理に供させる
部分鍵生成手段を備え、前記主暗号処理手段は段数分の
部分鍵により特定される複数段の部分処理を施し被暗号
処理データから出力データを生成することを特徴とする
こともできる。これによって、暗号処理を施す過程にお
いて生成される中間データを連鎖データとして記憶し、
後の暗号処理の際に鍵データに融合し、暗号処理を施す
度にその連鎖データを更新するので、各出力データは自
身よりも前の全てのデータに依存することになり、平文
の統計的な特徴は各連鎖データによって攪乱され、装置
規模や処理時間等をさほど増大させていないにもかかわ
らず暗号解読が難しくなる。
Therefore, the safety can be further improved without greatly increasing the scale of the apparatus and the processing time. Further, the input data includes key data and data to be encrypted, the fusion unit fuses the chain data stored in the storage unit with the key data to generate fusion key data, and the cryptographic processing device includes: Further, there is provided partial key generating means for generating partial keys corresponding to the number of stages of the main cryptographic processing means from the fusion key data, supplying the partial keys to the respective stages of the main cryptographic processing means, and subjecting them to respective partial processing, May perform a plurality of stages of partial processing specified by partial keys corresponding to the number of stages, and generate output data from the data to be encrypted. Thereby, the intermediate data generated in the process of performing the encryption process is stored as chained data,
Since it is merged with the key data at the time of later encryption processing, and the chain data is updated each time encryption processing is performed, each output data depends on all data before itself, and statistical data of plain text Such a characteristic is disturbed by each chain data, and the decryption becomes difficult even though the device scale and the processing time are not increased so much.

【0353】また、前記暗号処理装置は、さらに、前記
被暗号処理データを所定のビット数であるブロック単位
に分割しつつ順番に次に処理すべき1ブロックの被暗号
処理データを準備するブロック準備手段と、ブロック準
備手段が被暗号処理データをブロック単位に分割した際
に生じるブロック単位未満の端数データから前記連鎖デ
ータに基づいてその端数データと同じ長さの出力データ
を生成する端数データ処理手段とを備え、前記暗号処理
装置はブロック単位で暗号処理を施すことを特徴とする
こともできる。これによって、端数データから端数デー
タと同じ長さの出力データを生成することができるの
で、全入力データと全出力データの長さが同じとなる。
従って、暗号処理を施してもデータ長が変わらないた
め、データを扱い易い。
The encryption processing device further prepares a block of encrypted data to be processed next in order while dividing the data to be encrypted into blocks each having a predetermined number of bits. Means for generating output data having the same length as the fraction data based on the chained data from the fraction data smaller than the block generated when the block preparation means divides the data to be encrypted into blocks. Wherein the cryptographic processing device performs cryptographic processing in block units. As a result, output data having the same length as the fraction data can be generated from the fraction data, so that all input data and all output data have the same length.
Therefore, even if the encryption processing is performed, the data length does not change, and the data is easy to handle.

【0354】また、前記端数データ処理手段は、前記連
鎖データから前記端数データと同じ長さの端数連鎖デー
タを生成するデータ整合手段と、端数連鎖データを端数
データに融合してその端数データと同じ長さの出力デー
タを生成する端数データ融合手段とを含むことを特徴と
することもできる。これによって、連鎖データから端数
データと同じ長さの端数連鎖データを生成することがで
きるので、端数連鎖データを端数データに融合すること
ができる。従って、暗号処理を施してもデータ長が変わ
らないため、データを扱い易い。また、前記端数データ
処理手段は、前記主暗号処理手段により暗号処理を施さ
れたブロックを記憶し前記端数データが生じた際に記憶
しているブロックを新たな被暗号処理データとして前記
主暗号処理手段に渡すブロック記憶手段を含み、前記主
暗号処理手段はブロック記憶手段より渡されたブロック
から出力データを生成しこれを端数データ処理用ブロッ
クとして端数データ処理手段へ渡し、前記端数データ処
理手段は、さらに、端数データ処理用ブロックから前記
端数データと同じ長さの整合データを生成するデータ整
合手段と、整合データを端数データに融合してその端数
データと同じ長さの出力データを生成する端数データ融
合手段とを含むことを特徴とすることもできる。
In addition, the fraction data processing means includes data matching means for generating fraction chain data having the same length as the fraction data from the chain data, and the same as the fraction data by fusing the fraction chain data to the fraction data. And a fraction data fusion unit for generating length output data. Thereby, since the fraction chain data having the same length as the fraction data can be generated from the chain data, the fraction chain data can be fused with the fraction data. Therefore, even if the encryption processing is performed, the data length does not change, and the data is easy to handle. Further, the fraction data processing means stores the block that has been subjected to the encryption processing by the main encryption processing means, and uses the block stored when the fraction data is generated as new encrypted data to be processed. Means for outputting data from the block passed from the block storage means, and passing the output data to the fraction data processing means as a fraction data processing block, wherein the fraction data processing means Data matching means for generating matched data having the same length as the fraction data from the fraction data processing block; and a fraction for fusing the matched data into the fraction data to generate output data having the same length as the fraction data. And data fusion means.

【0355】これによって、端数データに施す暗号処理
が、各ブロックに施す暗号処理と比べても遜色のないも
のになる。従って、データ長が変わらないにもかかわら
ず、安全性を向上させることができる。また、前記融合
手段及び前記端数データ融合手段における融合は対応す
るビット毎の排他的論理和の計算であることを特徴とす
ることもできる。これによって、同じデータ長同士にビ
ット毎の排他的論理和の計算を施して同じデータ長の結
果が得られ、また、暗号化と復号化とを同じ処理にする
ことができる。
As a result, the encryption processing performed on the fractional data is comparable to the encryption processing performed on each block. Therefore, security can be improved even though the data length does not change. Further, the fusion in the fusion means and the fractional data fusion means may be a calculation of an exclusive OR for each corresponding bit. As a result, the same data length is subjected to exclusive OR calculation for each bit to obtain a result of the same data length, and the same processing can be performed for encryption and decryption.

【0356】また、前記記憶手段は予め連鎖データの初
期値を記憶し最初のブロックを処理する際に用い、前記
鍵データ、及び、連鎖データの初期値はある被暗号処理
データを暗号化する装置が用いるものとその暗号化する
装置の出力を受け取り復号化する装置が用いるものとが
同一であり、且つ、非公開であり、前記暗号化する装置
と前記復号化する装置とが同一の鍵データ、及び、同一
の連鎖データの初期値を用いる場合には前記復号化する
装置が施す暗号処理は常に前記暗号化する装置が施す暗
号処理の逆変換となることを特徴とすることもできる。
これによって、最初のブロックを処理する際に連鎖デー
タの初期値を用いることができ、また、暗号化と復号化
とで同じ鍵データ、及び、連鎖データの初期値を用いる
と復号化が暗号化の逆変換となるので、正しい鍵デー
タ、及び、連鎖データを持つものだけがデータを復号化
できる。
The storage means stores the initial value of the chained data in advance and uses it when processing the first block, and the key data and the initial value of the chained data are used to encrypt certain encrypted data. Is the same as the one used by the device that receives and decrypts the output of the encrypting device and is the same as the one used by the device that decrypts it, and the encrypting device and the decrypting device use the same key data. In the case where the same initial value of the chained data is used, the encryption processing performed by the decrypting apparatus is always the inverse conversion of the encryption processing performed by the encrypting apparatus.
This allows the initial value of the chained data to be used when processing the first block, and the same key data is used for encryption and decryption, and decryption is performed by using the initial value of the chained data. , Only those having correct key data and chained data can decrypt the data.

【0357】さらに、正しい鍵データ、及び、連鎖デー
タは非公開なので、鍵データだけが非公開の場合に比
べ、装置規模や処理時間等をさほど増大させていないに
もかかわらず暗号解読が難しくなる。従って、装置規模
や処理時間等を大幅に増大させることなく、さらに安全
性を向上させることができる。また、前記暗号処理装置
は、さらに、鍵データを記憶し暗号処理を施す毎にその
鍵データを更新する鍵データ記憶手段を備え、前記融合
手段は前記記憶手段が記憶する連鎖データを鍵データ記
憶手段が記憶する鍵データに融合し、鍵データ記憶手段
は鍵データの初期値を記憶し最初のデータを処理する際
に用い融合鍵データを新たな鍵データとして自身が記憶
する鍵データを更新し次の暗号処理に供させることを特
徴とすることもできる。
Further, since the correct key data and the chain data are not disclosed, the decryption becomes more difficult as compared with the case where only the key data is not disclosed, though the apparatus scale and the processing time are not increased so much. . Therefore, the safety can be further improved without greatly increasing the device scale, the processing time, and the like. Further, the cryptographic processing apparatus further includes key data storage means for storing key data and updating the key data each time encryption processing is performed, and the fusing means stores the chain data stored in the storage means in key data storage. The key data storage unit stores the initial value of the key data and uses the key data when processing the first data to update the key data stored therein as new key data. It may be characterized in that it is subjected to the next encryption processing.

【0358】これによって、鍵データを更新することが
できるので、鍵データを更新しない場合に比べ暗号解読
が難しくなる。従って、装置規模や処理時間等を大幅に
増大させることなく、さらに安全性を向上させることが
できる。また、前記記憶手段は自身が記憶する連鎖デー
タに基づいて前記主暗号処理手段が出力する各中間デー
タ、前記入力データ、前記融合データ及び前記出力デー
タの中から1個を選択し新たな連鎖データとして自身が
記憶する連鎖データを更新し次の暗号処理に供させるこ
とを特徴とすることもできる。これによって、どのデー
タが新たな連鎖データとなるかが連鎖データに基づいて
決まるので、固定された中間データが新たな連鎖データ
となる場合に比べ、暗号解読が難しくなる。
Thus, the key data can be updated, so that decryption becomes more difficult than when the key data is not updated. Therefore, the safety can be further improved without greatly increasing the device scale, the processing time, and the like. The storage unit selects one of the intermediate data, the input data, the fusion data, and the output data output from the main encryption processing unit based on the chain data stored therein, and creates a new chain data. It is also characterized in that the chain data stored by itself is updated and subjected to the next encryption processing. As a result, which data becomes new chained data is determined based on the chained data, so that decryption becomes more difficult than in the case where fixed intermediate data becomes new chained data.

【0359】従って、装置規模や処理時間等を大幅に増
大させることなく、さらに安全性を向上させることがで
きる。また、前記入力データは鍵データと被暗号処理デ
ータとを含み、前記融合手段は前記記憶手段が記憶する
連鎖データを前記被暗号処理データに融合して融合被暗
号処理データを生成し、前記主暗号処理手段は鍵データ
により特定される主暗号処理を施し融合被暗号処理デー
タから出力データを生成することを特徴とすることもで
きる。これによって、暗号処理を施す過程において生成
される中間データを連鎖データとして記憶し、後の暗号
処理の際に被暗号処理データに融合し、暗号処理を施す
度にその連鎖データを更新するので、各出力データは自
身よりも前の全てのデータに依存することになり、平文
の統計的な特徴は各連鎖データによって攪乱され、装置
規模や処理時間等をさほど増大させていないにもかかわ
らず暗号解読が難しくなる。
Therefore, the safety can be further improved without significantly increasing the scale of the apparatus and the processing time. The input data includes key data and data to be encrypted, and the fusing means fuses the chained data stored in the storage means with the data to be encrypted to generate fused data to be processed. The encryption processing means may perform a main encryption process specified by the key data and generate output data from the fusion-processed encrypted data. As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, merged with the data to be encrypted in the subsequent encryption process, and the chained data is updated each time the encryption process is performed. Each output data depends on all the data before it, and the statistical characteristics of the plaintext are disturbed by each chain data, and the encryption is performed even though the device size and processing time etc. do not increase much. Decryption becomes difficult.

【0360】本発明に係る暗号処理装置は、鍵データに
より特定される暗号処理を施して被暗号処理データから
出力データを生成する暗号処理装置であって、前のデー
タの影響を後のデータに及ぼす為に用いる連鎖データを
記憶し暗号処理を施す毎にその連鎖データを更新する記
憶手段と、鍵データにより特定される主暗号処理を施し
て被暗号処理データから暗号処理データを生成し暗号処
理データを生成するまでの過程において生成される中間
データを出力する主暗号処理手段と、記憶手段が記憶す
る連鎖データを暗号処理データに融合して出力データを
生成する融合手段とを備え、記憶手段は主暗号処理手段
が出力する中間データを新たな連鎖データとして自身が
記憶する連鎖データを更新し次の暗号処理に供させるこ
とを特徴とする。
The cryptographic processing device according to the present invention is a cryptographic processing device that performs an encryption process specified by key data to generate output data from data to be encrypted, and applies the effect of the preceding data to the subsequent data. Storage means for storing the chain data used for the application and updating the chain data each time the encryption processing is performed, and performing encryption processing by generating the encryption processing data from the data to be encrypted by performing the main encryption processing specified by the key data A main cryptographic processing unit for outputting intermediate data generated in a process until data is generated; and a fusing unit for generating output data by fusing chained data stored in the storage unit with cryptographically processed data. Is characterized in that the intermediate data output from the main encryption processing means is updated as new chain data, and the chain data stored therein is updated and subjected to the next encryption process.

【0361】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に暗号処理データに融合し、暗号処理を
施す度にその連鎖データを更新するので、各出力データ
は自身よりも前の全てのデータに依存することになり、
平文の統計的な特徴は各連鎖データによって攪乱され、
装置規模や処理時間等をさほど増大させていないにもか
かわらず暗号解読が難しくなる。また、暗号解読者は、
暗号文と平文のペアを入手することはできたとしても、
暗号処理に用いられた連鎖データを入手することは事実
上不可能であり、さらに、連鎖データを生成するアルゴ
リズムや連鎖データの初期値は非公開なので、「既知平
文攻撃」による暗号解読はさらに難しくなり、総当たり
による解読も困難である。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, merged with the encryption-processed data at the time of the subsequent encryption process, and the chained data is updated each time the encryption process is performed. Therefore, each output data depends on all data before itself,
The statistical characteristics of the plaintext are disturbed by each chain of data,
Decryption becomes difficult even though the device scale and processing time are not significantly increased. In addition, the cryptanalyst
Even if you could get a ciphertext / plaintext pair,
It is practically impossible to obtain the chain data used for the encryption process, and since the algorithm for generating the chain data and the initial value of the chain data are not disclosed, it is more difficult to decipher by "known plaintext attack" It is also difficult to decipher by brute force.

【0362】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、入力データに基づいて暗
号処理を施して出力データを生成する暗号処理装置であ
って、前のデータの影響を後のデータに及ぼす為に用い
る連鎖データを記憶し暗号処理を施す毎にその連鎖デー
タを更新する記憶手段と、記憶手段が記憶する連鎖デー
タを入力データの全部又は一部に融合して融合データを
生成する融合手段と、融合データに基づいて第1主暗号
処理を施し中間データを生成する第1主暗号処理手段
と、融合データに基づいて第2主暗号処理を施し出力デ
ータを生成する第2主暗号処理手段とを備え、記憶手段
は第1主暗号処理手段が生成した中間データを新たな連
鎖データとして自身が記憶する連鎖データを更新し次の
暗号処理に供させることを特徴とする。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus and the processing time.
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing based on input data to generate output data, and stores chained data used to exert the influence of previous data on subsequent data. Storage means for updating the chain data each time the cryptographic process is performed; fusion means for merging the chain data stored in the storage means with all or a part of the input data to generate fusion data; A first main encryption processing means for performing intermediate encryption data by performing one main encryption processing; and a second main encryption processing means for performing second main encryption processing based on the fusion data to generate output data, wherein the storage means includes: It is characterized in that the intermediate data generated by the primary encryption processing means is updated as chain data stored therein as new chain data, and is used for the next encryption processing.

【0363】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に鍵データ、又は、被暗号処理データ等
の入力データに融合し、暗号処理を施す度にその連鎖デ
ータを更新するので、各出力データは自身よりも前の全
てのデータに依存することになり、平文の統計的な特徴
は各連鎖データによって攪乱され、装置規模や処理時間
等をさほど増大させていないにもかかわらず暗号解読が
難しくなる。また、暗号解読者は、暗号文と平文のペア
を入手することはできたとしても、暗号処理に用いられ
た連鎖データを入手することは事実上不可能であり、さ
らに、連鎖データを生成するアルゴリズムや連鎖データ
の初期値は非公開なので、「既知平文攻撃」による暗号
解読はさらに難しくなり、総当たりによる解読も困難で
ある。従って、装置規模や処理時間等を大幅に増大させ
ることなく、安全性を向上させることができる。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is merged with key data or input data such as data to be encrypted at the time of the subsequent encryption process. Each output data updates its chain data, so each output data depends on all data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the device size and processing time Decryption becomes difficult even though the number is not greatly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force. Therefore, safety can be improved without significantly increasing the apparatus scale, processing time, and the like.

【0364】また、前記入力データは鍵データと被暗号
処理データとを含み、前記融合手段は前記記憶手段が記
憶する連鎖データを前記鍵データに融合して融合鍵デー
タを生成し、前記暗号処理装置は、さらに、融合鍵デー
タから前記第1主暗号処理手段及び第2主暗号処理手段
の部分鍵をそれぞれ生成しそれぞれの主暗号処理に供さ
せる部分鍵生成手段を備え、前記第1主暗号処理手段は
部分鍵により特定される第1主暗号処理を施して被暗号
処理データから中間データを生成し、前記第2主暗号処
理手段は部分鍵により特定される第2主暗号処理を施し
て被暗号処理データから出力データを生成することを特
徴とすることもできる。
The input data includes key data and data to be encrypted, and the fusing means fuses the chain data stored in the storage means with the key data to generate fusion key data. The apparatus further includes partial key generation means for respectively generating the partial keys of the first main encryption processing means and the second main encryption processing means from the fusion key data and subjecting them to the respective main encryption processing, The processing means performs a first main encryption process specified by the partial key to generate intermediate data from the data to be encrypted, and the second main encryption processing means performs a second main encryption process specified by the partial key. The output data may be generated from the data to be encrypted.

【0365】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に鍵データに融合し、暗号処理を施す度
にその連鎖データを更新するので、各出力データは自身
よりも前の全てのデータに依存することになり、平文の
統計的な特徴は各連鎖データによって攪乱され、装置規
模や処理時間等をさほど増大させていないにもかかわら
ず暗号解読が難しくなる。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, merged with the key data in the subsequent encryption process, and the chained data is updated each time the encryption process is performed. However, each output data depends on all the data before it, and the statistical characteristics of the plaintext are disturbed by each chained data, and although the device size and processing time etc. do not increase much, Decryption becomes difficult.

【0366】また、前記暗号処理装置は、さらに、前記
被暗号処理データを所定のビット数であるブロック単位
に分割しつつ順番に次に処理すべき1ブロックの被暗号
処理データを準備するブロック準備手段と、ブロック準
備手段が被暗号処理データをブロック単位に分割した際
に生じるブロック単位未満の端数データから前記連鎖デ
ータに基づいてその端数データと同じ長さの出力データ
を生成する端数データ処理手段とを備え、前記暗号処理
装置はブロック単位で暗号処理を施すことを特徴とする
こともできる。
Further, the encryption processing device further prepares a block of encrypted data to be processed next in order while dividing the data to be encrypted into blocks each having a predetermined number of bits. Means for generating output data having the same length as the fraction data based on the chained data from the fraction data smaller than the block generated when the block preparation means divides the data to be encrypted into blocks. Wherein the cryptographic processing device performs cryptographic processing in block units.

【0367】これによって、端数データから端数データ
と同じ長さの出力データを生成することができるので、
全入力データと全出力データの長さが同じとなる。従っ
て、暗号処理を施してもデータ長が変わらないため、デ
ータを扱い易い。また、前記端数データ処理手段は、前
記連鎖データから前記端数データと同じ長さの端数連鎖
データを生成するデータ整合手段と、端数連鎖データを
端数データに融合してその端数データと同じ長さの出力
データを生成する端数データ融合手段とを含むことを特
徴とすることもできる。
As a result, output data having the same length as the fraction data can be generated from the fraction data.
All input data and all output data have the same length. Therefore, even if the encryption processing is performed, the data length does not change, and the data is easy to handle. Further, the fraction data processing means includes data matching means for generating fraction chain data having the same length as the fraction data from the chain data, and combining the fraction chain data with the fraction data so as to have the same length as the fraction data. And a fraction data fusion unit for generating output data.

【0368】これによって、連鎖データから端数データ
と同じ長さの端数連鎖データを生成することができるの
で、端数連鎖データを端数データに融合することができ
る。従って、暗号処理を施してもデータ長が変わらない
ため、データを扱い易い。
[0368] Thereby, since fraction chain data having the same length as the fraction data can be generated from the chain data, the fraction chain data can be fused with the fraction data. Therefore, even if the encryption processing is performed, the data length does not change, and the data is easy to handle.

【0369】また、前記端数データ処理手段は、前記第
2主暗号処理手段により暗号処理を施されたブロックを
記憶し前記端数データが生じた際に記憶しているブロッ
クを新たな被暗号処理データとして前記第2主暗号処理
手段に渡すブロック記憶手段を含み、前記第2主暗号処
理手段はブロック記憶手段より渡されたブロックから出
力データを生成しこれを端数データ処理用ブロックとし
て端数データ処理手段へ渡し、前記端数データ処理手段
は、さらに、端数データ処理用ブロックから前記端数デ
ータと同じ長さの整合データを生成するデータ整合手段
と、整合データを端数データに融合してその端数データ
と同じ長さの出力データを生成する端数データ融合手段
とを含むことを特徴とすることもできる。
[0369] The fraction data processing means stores the block which has been subjected to the encryption processing by the second main encryption processing means, and stores the block stored when the fraction data is generated as new encrypted data. The second main cryptographic processing unit generates output data from the block passed from the block storage unit and uses the generated output data as a fraction data processing block as a fraction data processing unit. The fraction data processing means further includes data matching means for generating matched data having the same length as the fraction data from the fraction data processing block, and integrating the matched data into the fraction data to be the same as the fraction data. And a fraction data fusion unit for generating length output data.

【0370】これによって、端数データに施す暗号処理
が、各ブロックに施す暗号処理と比べても遜色のないも
のになる。従って、データ長が変わらないにもかかわら
ず、安全性を向上させることができる。また、前記暗号
処理装置は、さらに、鍵データを記憶し暗号処理を施す
毎にその鍵データを更新する鍵データ記憶手段を備え、
前記融合手段は前記記憶手段が記憶する連鎖データを鍵
データ記憶手段が記憶する鍵データに融合し、鍵データ
記憶手段は鍵データの初期値を記憶し最初のデータを処
理する際に用い融合鍵データを新たな鍵データとして自
身が記憶する鍵データを更新し次の暗号処理に供させる
ことを特徴とすることもできる。
As a result, the encryption processing performed on the fractional data is comparable to the encryption processing performed on each block. Therefore, security can be improved even though the data length does not change. Further, the cryptographic processing device further includes key data storage means for storing key data and updating the key data each time encryption processing is performed,
The fusion unit fuses the chain data stored in the storage unit with the key data stored in the key data storage unit. The key data stored therein may be updated with the data as new key data, and the key data may be subjected to the next encryption process.

【0371】これによって、鍵データを更新することが
できるので、鍵データを更新しない場合に比べ暗号解読
が難しくなる。従って、装置規模や処理時間等を大幅に
増大させることなく、さらに安全性を向上させることが
できる。
[0371] Thus, since the key data can be updated, decryption becomes more difficult than in the case where the key data is not updated. Therefore, the safety can be further improved without greatly increasing the device scale, the processing time, and the like.

【0372】また、前記入力データは鍵データと被暗号
処理データとを含み、前記融合手段は前記記憶手段が記
憶する連鎖データを前記被暗号処理データに融合して融
合被暗号処理データを生成し、前記第1主暗号処理手段
は鍵データにより特定される第1主暗号処理を施して融
合被暗号処理データから中間データを生成し、前記第2
主暗号処理手段は鍵データにより特定される第2主暗号
処理を施して融合被暗号処理データから出力データを生
成することを特徴とすることもできる。
The input data includes key data and data to be encrypted, and the fusing means fuses the chain data stored in the storage means with the data to be encrypted to generate fused data to be encrypted. The first main cryptographic processing means performs a first main cryptographic process specified by key data to generate intermediate data from the fusion-processed encrypted data,
The main encryption processing means may be characterized in that the second encryption processing specified by the key data is performed to generate output data from the fusion-processed encrypted data.

【0373】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に被暗号処理データに融合し、暗号処理
を施す度にその連鎖データを更新するので、各出力デー
タは自身よりも前の全てのデータに依存することにな
り、平文の統計的な特徴は各連鎖データによって攪乱さ
れ、装置規模や処理時間等をさほど増大させていないに
もかかわらず暗号解読が難しくなる。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, merged with the data to be encrypted in the subsequent encryption process, and the chained data is updated each time the encryption process is performed. Therefore, each output data depends on all the data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and even if the device scale and processing time etc. do not increase so much. Regardless, decryption becomes difficult.

【0374】本発明に係る暗号処理装置は、鍵データに
より特定される暗号処理を施して被暗号処理データから
出力データを生成する暗号処理装置であって、前のデー
タの影響を後のデータに及ぼす為に用いる連鎖データを
記憶し暗号処理を施す毎にその連鎖データを更新する記
憶手段と、記憶手段が記憶する連鎖データを前記鍵デー
タに融合して融合鍵データを生成する融合手段と、融合
鍵データから部分鍵を生成する部分鍵生成手段と、部分
鍵により特定される第1主暗号処理を施して被暗号処理
データから出力データを生成する第1主暗号処理手段
と、部分鍵により特定される第2主暗号処理を施して出
力データから中間データを生成する第2主暗号処理手段
とを備え、部分鍵生成手段は融合鍵データから前記第1
主暗号処理手段及び第2主暗号処理手段の部分鍵をそれ
ぞれ生成しそれぞれの主暗号処理に供させ、記憶手段は
第2主暗号処理手段が生成した中間データを新たな連鎖
データとして自身が記憶する連鎖データを更新し次の暗
号処理に供させることを特徴とする。
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted, and applies the effect of the preceding data to the subsequent data. Storage means for storing the chain data used for applying and updating the chain data each time the encryption processing is performed; fusion means for fusing the chain data stored by the storage means with the key data to generate fusion key data; Partial key generation means for generating a partial key from the fusion key data; first main encryption processing means for performing a first main encryption process specified by the partial key to generate output data from the data to be encrypted; Second main encryption processing means for performing intermediate processing from output data by performing a specified second main encryption processing, wherein the partial key generation means performs the first
The partial keys of the main cryptographic processing means and the second main cryptographic processing means are respectively generated and subjected to the respective main cryptographic processing, and the storage means stores the intermediate data generated by the second main cryptographic processing means as new chain data. It is characterized in that the chain data to be updated is updated and subjected to the next encryption processing.

【0375】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に鍵データに融合し、暗号処理を施す度
にその連鎖データを更新するので、各出力データは自身
よりも前の全てのデータに依存することになり、平文の
統計的な特徴は各連鎖データによって攪乱され、装置規
模や処理時間等をさほど増大させていないにもかかわら
ず暗号解読が難しくなる。また、暗号解読者は、暗号文
と平文のペアを入手することはできたとしても、暗号処
理に用いられた連鎖データを入手することは事実上不可
能であり、さらに、連鎖データを生成するアルゴリズム
や連鎖データの初期値は非公開なので、「既知平文攻
撃」による暗号解読はさらに難しくなり、総当たりによ
る解読も困難である。
Thus, the intermediate data generated in the process of performing the encryption process is stored as chain data, merged with the key data in the subsequent encryption process, and the chain data is updated each time the encryption process is performed. However, each output data depends on all the data before it, and the statistical characteristics of the plaintext are disturbed by each chained data, and although the device size and processing time etc. do not increase much, Decryption becomes difficult. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0376】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、鍵データにより特定され
る暗号処理を施して被暗号処理データから出力データを
生成する暗号処理装置であって、前のデータの影響を後
のデータに及ぼす為に用いる連鎖データを記憶し暗号処
理を施す毎にその連鎖データを更新する記憶手段と、鍵
データにより特定される第1主暗号処理を施して被暗号
処理データから中間データを生成する第1主暗号処理手
段と、鍵データにより特定される第2主暗号処理を施し
て被暗号処理データから暗号処理データを生成する第2
主暗号処理手段と、記憶手段が記憶する連鎖データを暗
号処理データに融合して出力データを生成する融合手段
とを備え、記憶手段は第1主暗号処理手段が生成した中
間データを新たな連鎖データとして自身が記憶する連鎖
データを更新し次の暗号処理に供させることを特徴とす
る。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus and the processing time.
A cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted. Storage means for storing the chain data to be used and updating the chain data each time the encryption processing is performed, and a first main encryption for performing a first main encryption processing specified by the key data and generating intermediate data from the data to be encrypted Processing means for performing a second main encryption process specified by the key data to generate encrypted data from the encrypted data;
A main cryptographic processing means; and a fusing means for fusing the chain data stored in the storage means to the cryptographic processing data to generate output data, wherein the storage means converts the intermediate data generated by the first main cryptographic processing means into a new chain data. It is characterized in that the chain data stored by itself is updated as data and the updated chain data is subjected to the next encryption processing.

【0377】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に暗号処理データに融合し、暗号処理を
施す度にその連鎖データを更新するので、各出力データ
は自身よりも前の全てのデータに依存することになり、
平文の統計的な特徴は各連鎖データによって攪乱され、
装置規模や処理時間等をさほど増大させていないにもか
かわらず暗号解読が難しくなる。また、暗号解読者は、
暗号文と平文のペアを入手することはできたとしても、
暗号処理に用いられた連鎖データを入手することは事実
上不可能であり、さらに、連鎖データを生成するアルゴ
リズムや連鎖データの初期値は非公開なので、「既知平
文攻撃」による暗号解読はさらに難しくなり、総当たり
による解読も困難である。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, merged with the encrypted data at the time of the subsequent encryption process, and the chained data is updated each time the encryption process is performed. Therefore, each output data depends on all data before itself,
The statistical characteristics of the plaintext are disturbed by each chain of data,
Decryption becomes difficult even though the device scale and processing time are not significantly increased. In addition, the cryptanalyst
Even if you could get a ciphertext / plaintext pair,
It is practically impossible to obtain the chain data used for the encryption process, and since the algorithm for generating the chain data and the initial value of the chain data are not disclosed, it is more difficult to decipher by "known plaintext attack" It is also difficult to decipher by brute force.

【0378】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、鍵データにより特定され
る暗号処理を施して被暗号処理データから出力データを
生成する暗号処理装置であって、前のデータの影響を後
のデータに及ぼす為に用いる連鎖データを記憶し暗号処
理を施す毎にその連鎖データを更新する記憶手段と、鍵
データにより特定される第1主暗号処理を施して連鎖デ
ータから暗号処理データを生成する第1主暗号処理手段
と、暗号処理データを被暗号処理データに融合して中間
データを生成する融合手段と、鍵データにより特定され
る第2暗号処理を施して中間データから出力データを生
成する第2主暗号処理手段とを備え、記憶手段は中間デ
ータを新たな連鎖データとして自身が記憶する連鎖デー
タを更新し次の暗号処理に供させることを特徴とする。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus and the processing time.
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted. Storage means for storing chain data to be used and updating the chain data each time encryption processing is performed, and first main encryption processing for performing first main encryption processing specified by key data and generating encrypted data from the chain data Means for fusing encryption-processed data with data-to-be-encrypted to generate intermediate data, and second main encryption processing for performing second encryption processing specified by the key data and generating output data from the intermediate data Means for updating the chained data stored therein as intermediate data as new chained data for use in the next encryption process.

【0379】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に暗号処理を施して暗号処理データを生
成して被暗号処理データに融合し、暗号処理を施す度に
その連鎖データを更新するので、各出力データは自身よ
りも前の全てのデータに依存することになり、平文の統
計的な特徴は各連鎖データによって攪乱され、装置規模
や処理時間等をさほど増大させていないにもかかわらず
暗号解読が難しくなる。また、暗号解読者は、暗号文と
平文のペアを入手することはできたとしても、暗号処理
に用いられた連鎖データを入手することは事実上不可能
であり、さらに、連鎖データを生成するアルゴリズムや
連鎖データの初期値は非公開なので、「既知平文攻撃」
による暗号解読はさらに難しくなり、総当たりによる解
読も困難である。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to the encryption process at the time of the subsequent encryption process to generate the encrypted data and fuse it with the data to be encrypted. Since the chain data is updated each time the encryption process is performed, each output data depends on all data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the scale of the device is reduced. Decryption becomes difficult even though the processing time and the like are not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is practically impossible to obtain the chain data used in the cryptographic process, and furthermore, generates the chain data. Since the initial value of the algorithm and chain data is not disclosed, "known plaintext attack"
Is more difficult to decrypt, and brute force is also more difficult.

【0380】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、鍵データにより特定され
る暗号処理を施して被暗号処理データから出力データを
生成する暗号処理装置であって、前のデータの影響を後
のデータに及ぼす為に用いる連鎖データを記憶し暗号処
理を施す毎にその連鎖データを更新する記憶手段と、鍵
データにより特定される第1主暗号処理を施して連鎖デ
ータから暗号処理データを生成する第1主暗号処理手段
と、鍵データにより特定される第2主暗号処理を施して
被暗号処理データから中間データを生成する第2主暗号
処理手段と、暗号処理データを中間データに融合して出
力データを生成する融合手段とを備え、記憶手段は中間
データを新たな連鎖データとして自身が記憶する連鎖デ
ータを更新し次の暗号処理に供させることを特徴とす
る。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus and the processing time.
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted. Storage means for storing chain data to be used and updating the chain data each time encryption processing is performed, and first main encryption processing for performing first main encryption processing specified by key data and generating encrypted data from the chain data Means, second main encryption processing means for performing a second main encryption process specified by the key data to generate intermediate data from the data to be encrypted, and generating output data by fusing the encrypted data with the intermediate data The storage means updates the chained data stored therein as intermediate data as new chained data and supplies the chained data to the next encryption process.

【0381】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に暗号処理を施して暗号処理データを生
成して中間データに融合し、暗号処理を施す度にその連
鎖データを更新するので、各出力データは自身よりも前
の全てのデータに依存することになり、平文の統計的な
特徴は各連鎖データによって攪乱され、装置規模や処理
時間等をさほど増大させていないにもかかわらず暗号解
読が難しくなる。また、暗号解読者は、暗号文と平文の
ペアを入手することはできたとしても、暗号処理に用い
られた連鎖データを入手することは事実上不可能であ
り、さらに、連鎖データを生成するアルゴリズムや連鎖
データの初期値は非公開なので、「既知平文攻撃」によ
る暗号解読はさらに難しくなり、総当たりによる解読も
困難である。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to the encryption process at the time of the subsequent encryption process to generate the encrypted data, which is fused with the intermediate data. Since the chain data is updated each time processing is performed, each output data depends on all data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the scale of the device and processing Decryption becomes difficult even though time is not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0382】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、鍵データにより特定され
る暗号処理を施して被暗号処理データから出力データを
生成する暗号処理装置であって、前のデータの影響を後
のデータに及ぼす為に用いる連鎖データを記憶し暗号処
理を施す毎にその連鎖データを更新する記憶手段と、鍵
データにより特定される第1主暗号処理を施して連鎖デ
ータから中間データを生成する第1主暗号処理手段と、
中間データを被暗号処理データに融合して融合データを
生成する融合手段と、鍵データにより特定される第2主
暗号処理を施して融合データから出力データを生成する
第2主暗号処理手段とを備え、記憶手段は中間データを
新たな連鎖データとして自身が記憶する連鎖データを更
新し次の暗号処理に供させることを特徴とする。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus, the processing time, and the like.
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted. Storage means for storing chain data to be used and updating the chain data each time encryption processing is performed, and first main encryption processing means for performing first main encryption processing specified by key data and generating intermediate data from the chain data When,
Fusing means for fusing the intermediate data with the data to be encrypted to generate fused data, and second main cryptographic processing means for performing a second main cryptographic process specified by the key data and generating output data from the fused data. The storage means is characterized in that the storage means updates the chained data stored therein as new chained data and supplies the chained data to the next encryption processing.

【0383】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に暗号処理を施して中間データを生成し
て被暗号処理データに融合し、暗号処理を施す度にその
連鎖データを更新するので、各出力データは自身よりも
前の全てのデータに依存することになり、平文の統計的
な特徴は各連鎖データによって攪乱され、装置規模や処
理時間等をさほど増大させていないにもかかわらず暗号
解読が難しくなる。また、暗号解読者は、暗号文と平文
のペアを入手することはできたとしても、暗号処理に用
いられた連鎖データを入手することは事実上不可能であ
り、さらに、連鎖データを生成するアルゴリズムや連鎖
データの初期値は非公開なので、「既知平文攻撃」によ
る暗号解読はさらに難しくなり、総当たりによる解読も
困難である。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to the encryption process at the time of the subsequent encryption process to generate the intermediate data and fuse it with the data to be encrypted. Each time the encryption process is performed, the chain data is updated, so each output data depends on all data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the scale of the device and the Decryption becomes difficult even though the processing time is not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0384】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、鍵データにより特定され
る暗号処理を施して被暗号処理データから出力データを
生成する暗号処理装置であって、前のデータの影響を後
のデータに及ぼす為に用いる連鎖データを記憶し暗号処
理を施す毎にその連鎖データを更新する記憶手段と、鍵
データにより特定される第1主暗号処理を施して連鎖デ
ータから中間データを生成する第1主暗号処理手段と、
鍵データにより特定される第2主暗号処理を施して被暗
号処理データから暗号処理データを生成する第2主暗号
処理手段と、中間データを暗号処理データに融合して出
力データを生成する融合手段とを備え、記憶手段は中間
データを新たな連鎖データとして自身が記憶する連鎖デ
ータを更新し次の暗号処理に供させることを特徴とす
る。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus and the processing time.
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted. Storage means for storing chain data to be used and updating the chain data each time encryption processing is performed, and first main encryption processing means for performing first main encryption processing specified by key data and generating intermediate data from the chain data When,
Second main cryptographic processing means for performing second main cryptographic processing specified by key data to generate cryptographically processed data from data to be encrypted, and fusing means for fusing intermediate data to cryptographically processed data to generate output data Wherein the storage means updates the chain data stored therein as the new chain data with the intermediate data and supplies the chain data to the next encryption process.

【0385】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に暗号処理を施して中間データを生成し
て暗号処理データに融合し、暗号処理を施す度にその連
鎖データを更新するので、各出力データは自身よりも前
の全てのデータに依存することになり、平文の統計的な
特徴は各連鎖データによって攪乱され、装置規模や処理
時間等をさほど増大させていないにもかかわらず暗号解
読が難しくなる。また、暗号解読者は、暗号文と平文の
ペアを入手することはできたとしても、暗号処理に用い
られた連鎖データを入手することは事実上不可能であ
り、さらに、連鎖データを生成するアルゴリズムや連鎖
データの初期値は非公開なので、「既知平文攻撃」によ
る暗号解読はさらに難しくなり、総当たりによる解読も
困難である。 従って、装置規模や処理時間等を大幅に
増大させることなく、安全性を向上させることができ
る。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to the encryption process at the time of the subsequent encryption process to generate the intermediate data, fused with the encrypted data, and Since the chain data is updated each time processing is performed, each output data depends on all data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the scale of the equipment and processing Decryption becomes difficult even though time is not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force. Therefore, safety can be improved without significantly increasing the apparatus scale, processing time, and the like.

【0386】本発明に係る暗号処理装置は、入力データ
に基づいて暗号処理を施して出力データを生成する暗号
処理装置であって、前のデータの影響を後のデータに及
ぼす為に用いる連鎖データを記憶し暗号処理を施す毎に
その連鎖データを更新する記憶手段と、前記記憶手段が
記憶する連鎖データに予め決めておいた所定の変換を施
して変換データを生成する変換手段と、変換データを入
力データに融合して融合データを生成する融合手段と、
融合データに基づいて主暗号処理を施して出力データを
生成し出力データを生成するまでの過程において生成さ
れる中間データを出力する主暗号処理手段とを備え、記
憶手段は、中間データ、入力データ、変換データ又は出
力データを新たな連鎖データとして自身が記憶する連鎖
データを更新し次の暗号処理に供させることを特徴とす
る。
The cryptographic processing apparatus according to the present invention is a cryptographic processing apparatus that performs cryptographic processing based on input data to generate output data, and uses chained data used to exert the influence of previous data on subsequent data. Storing means for updating the chain data each time the encryption processing is performed, converting means for performing predetermined predetermined conversion on the chain data stored in the storage means to generate conversion data, Fusing means for fusing with the input data to generate fused data;
Main cryptographic processing means for performing main cryptographic processing based on the fusion data to generate output data and outputting intermediate data generated in the process of generating output data, wherein the storage means includes intermediate data, input data And updating the chain data stored therein as the new chain data with the converted data or the output data, and subjecting the chain data to the next encryption process.

【0387】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
して鍵データ、又は、被暗号処理データ等の入力データ
に融合し、暗号処理を施す度にその連鎖データを更新す
るので、各出力データは自身よりも前の全てのデータに
依存することになり、平文の統計的な特徴は各連鎖デー
タによって攪乱され、装置規模や処理時間等をさほど増
大させていないにもかかわらず暗号解読が難しくなる。
また、暗号解読者は、暗号文と平文のペアを入手するこ
とはできたとしても、暗号処理に用いられた連鎖データ
を入手することは事実上不可能であり、さらに、連鎖デ
ータを生成するアルゴリズム、連鎖データの初期値及び
所定の変換は非公開なので、「既知平文攻撃」による暗
号解読はさらに難しくなり、総当たりによる解読も困難
である。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to a predetermined conversion at the time of the subsequent encryption process to generate converted data to generate key data or encrypted data. Since it is merged with input data such as processing data and the chain data is updated each time encryption processing is performed, each output data depends on all data before itself, and the statistical characteristics of plain text are The data is disturbed by each chain data, and the decryption becomes difficult even though the device scale and the processing time are not increased so much.
In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the algorithm, the initial value of the chained data, and the predetermined conversion are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0388】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
また、前記変換手段が施す所定の変換はビット置換又は
ビット変換であることを特徴とすることもできる。これ
によって、ビット置換又はビット変換等の簡単な所定の
変換が非公開となるので、装置規模や処理時間等をさほ
ど増大させていないにもかかわらず暗号解読が難しくな
る。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus and the processing time.
Further, the predetermined conversion performed by the conversion means may be bit replacement or bit conversion. As a result, a simple predetermined conversion such as bit replacement or bit conversion is kept private, so that it becomes difficult to decipher the code even though the device scale and the processing time are not significantly increased.

【0389】また、前記入力データは鍵データと被暗号
処理データとを含み、前記融合手段は前記変換データを
鍵データに融合して融合鍵データを生成し、前記主暗号
処理手段は融合鍵データにより特定される主暗号処理を
施して被暗号処理データから出力データを生成し、前記
記憶手段は、中間データ、被暗号処理データ又は出力デ
ータを新たな連鎖データとして自身が記憶する連鎖デー
タを更新し次の暗号処理に供させることを特徴とするこ
ともできる。
The input data includes key data and data to be encrypted, the fusion means fuses the converted data with key data to generate fusion key data, and the main encryption processing means generates fusion key data. The main unit performs the main encryption process specified by the above to generate output data from the data to be encrypted, and the storage unit updates the chained data stored therein as new chained data with the intermediate data, the data to be encrypted, or the output data. Then, it may be characterized in that it is subjected to the next encryption processing.

【0390】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
して鍵データに融合し、暗号処理を施す度にその連鎖デ
ータを更新するので、各出力データは自身よりも前の全
てのデータに依存することになり、平文の統計的な特徴
は各連鎖データによって攪乱され、装置規模や処理時間
等をさほど増大させていないにもかかわらず暗号解読が
難しくなる。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to a predetermined conversion at the time of the subsequent encryption process to generate converted data, which is merged with the key data. Since the chain data is updated each time processing is performed, each output data depends on all data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the scale of the equipment and processing Decryption becomes difficult even though time is not significantly increased.

【0391】また、前記暗号処理装置は、さらに、前記
被暗号処理データを所定のビット数であるブロック単位
に分割しつつ順番に次に処理すべき1ブロックの被暗号
処理データを準備するブロック準備手段と、ブロック準
備手段が被暗号処理データをブロック単位に分割した際
に生じるブロック単位未満の端数データから前記連鎖デ
ータに基づいてその端数データと同じ長さの出力データ
を生成する端数データ処理手段とを備え、前記暗号処理
装置はブロック単位で暗号処理を施すことを特徴とする
こともできる。
Further, the encryption processing device further prepares a block of encrypted data to be processed next in order while dividing the data to be encrypted into blocks each having a predetermined number of bits. Means for generating output data having the same length as the fraction data based on the chained data from the fraction data smaller than the block generated when the block preparation means divides the data to be encrypted into blocks. Wherein the cryptographic processing device performs cryptographic processing in block units.

【0392】従って、暗号処理を施してもデータ長が変
わらないため、データを扱い易い。これによって、端数
データから端数データと同じ長さの出力データを生成す
ることができるので、全入力データと全出力データの長
さが同じとなる。また、前記端数データ処理手段は、前
記連鎖データから前記端数データと同じ長さの端数連鎖
データを生成するデータ整合手段と、端数連鎖データを
端数データに融合してその端数データと同じ長さの出力
データを生成する端数データ融合手段とを含むことを特
徴とすることもできる。
Therefore, even if the encryption processing is performed, the data length does not change, so that the data can be easily handled. As a result, output data having the same length as the fraction data can be generated from the fraction data, so that all input data and all output data have the same length. Further, the fraction data processing means includes data matching means for generating fraction chain data having the same length as the fraction data from the chain data, and combining the fraction chain data with the fraction data so as to have the same length as the fraction data. And a fraction data fusion unit for generating output data.

【0393】これによって、連鎖データから端数データ
と同じ長さの端数連鎖データを生成することができるの
で、端数連鎖データを端数データに融合することができ
る。従って、暗号処理を施してもデータ長が変わらない
ため、データを扱い易い。また、前記端数データ処理手
段は、前記変換データから前記端数データと同じ長さの
整合データを生成するデータ整合手段と、整合データを
端数データに融合してその端数データと同じ長さの出力
データを生成する端数データ融合手段とを含むことを特
徴とすることもできる。
Thus, since the fraction chain data having the same length as the fraction data can be generated from the chain data, the fraction chain data can be fused with the fraction data. Therefore, even if the encryption processing is performed, the data length does not change, and the data is easy to handle. Further, the fraction data processing means includes data matching means for generating matching data having the same length as the fraction data from the converted data, and output data having the same length as the fraction data by fusing the matching data into the fraction data. And a fraction data fusion means for generating the fraction data.

【0394】これによって、端数データに施す暗号処理
が、各ブロックに施す暗号処理と比べても遜色のないも
のになる。 従って、データ長が変わらないにもかかわ
らず、安全性を向上させることができる。また、前記暗
号処理装置は、さらに、鍵データを記憶し暗号処理を施
す毎にその鍵データを更新する鍵データ記憶手段を備
え、前記融合手段は前記変換データを鍵データ記憶手段
が記憶する鍵データに融合し、鍵データ記憶手段は鍵デ
ータの初期値を記憶し最初のデータを処理する際に用い
融合鍵データを新たな鍵データとして自身が記憶する鍵
データを更新することを特徴とすることもできる。これ
によって、鍵データを更新することができるので、鍵デ
ータを更新しない場合に比べ暗号解読が難しくなる。
As a result, the encryption processing performed on the fractional data is comparable to the encryption processing performed on each block. Therefore, security can be improved even though the data length does not change. Further, the cryptographic processing device further includes key data storage means for storing key data and updating the key data each time encryption processing is performed, and the fusion means stores the key data in the key data storage means. The key data storage unit stores the initial value of the key data and updates the key data stored therein as new key data by using the key data storage unit when processing the first data. You can also. As a result, the key data can be updated, so that decryption becomes more difficult than when the key data is not updated.

【0395】従って、装置規模や処理時間等を大幅に増
大させることなく、さらに安全性を向上させることがで
きる。また、前記入力データは鍵データと被暗号処理デ
ータとを含み、前記融合手段は前記変換データを被暗号
処理データに融合して融合被暗号処理データを生成し、
前記主暗号処理手段は鍵データにより特定される主暗号
処理を施して融合被暗号処理データから出力データを生
成し、前記記憶手段は、中間データ、被暗号処理デー
タ、融合被暗号処理データ又は出力データを新たな連鎖
データとして自身が記憶する連鎖データを更新し次の暗
号処理に供させることを特徴とすることもできる。
Therefore, the safety can be further improved without greatly increasing the apparatus scale, processing time, and the like. The input data includes key data and data to be encrypted, and the fusing unit fuses the converted data with the data to be encrypted to generate fused data to be processed.
The main cryptographic processing means performs main cryptographic processing specified by key data to generate output data from the fused encrypted processing data, and the storage means stores the intermediate data, the encrypted processed data, the fused encrypted processed data or the output data. It is also possible to update the chained data stored therein as new chained data and to use the updated chained data for the next encryption processing.

【0396】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
して被暗号処理データに融合し、暗号処理を施す度にそ
の連鎖データを更新するので、各出力データは自身より
も前の全てのデータに依存することになり、平文の統計
的な特徴は各連鎖データによって攪乱され、装置規模や
処理時間等をさほど増大させていないにもかかわらず暗
号解読が難しくなる。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to a predetermined conversion at the time of the subsequent encryption process to generate converted data, which is merged with the data to be encrypted. Since each time the cryptographic process is performed, the chain data is updated, each output data depends on all the data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the size of the device is reduced. Decryption becomes difficult even though the processing time and the like are not significantly increased.

【0397】本発明に係る暗号処理装置は、鍵データに
より特定される暗号処理を施して被暗号処理データから
出力データを生成する暗号処理装置であって、前のデー
タの影響を後のデータに及ぼす為に用いる連鎖データを
記憶し暗号処理を施す毎にその連鎖データを更新する記
憶手段と、前記記憶手段が記憶する連鎖データに予め決
めておいた所定の変換を施して変換データを生成する変
換手段と、鍵データにより特定される主暗号処理を施し
て被暗号処理データから暗号処理データを生成し暗号処
理データを生成するまでの過程において生成される中間
データを出力する主暗号処理手段と、変換データを暗号
処理データに融合して出力データを生成する融合手段と
を備え、記憶手段は、中間データ、被暗号処理データ、
暗号処理データ又は出力データを新たな連鎖データとし
て自身が記憶する連鎖データを更新し次の暗号処理に供
させることを特徴とする。
[0397] The encryption processing device according to the present invention is an encryption processing device that performs an encryption process specified by key data to generate output data from data to be encrypted, and applies the effect of the previous data to the subsequent data. Storage means for storing the chain data used for the effect and updating the chain data each time the encryption processing is performed; and generating predetermined conversion data by performing a predetermined conversion on the chain data stored by the storage means. Conversion means, and main encryption processing means for performing encryption processing specified by the key data, generating encrypted data from the data to be encrypted, and outputting intermediate data generated in the process of generating the encrypted data; Fusing means for fusing the converted data to the cryptographic processing data to generate output data, wherein the storage means stores the intermediate data, the cryptographic processing data,
The present invention is characterized in that the chained data stored in itself is updated with the encrypted data or output data as new chained data, and the updated chained data is subjected to the next encryption processing.

【0398】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
して暗号処理データに融合し、暗号処理を施す度にその
連鎖データを更新するので、各出力データは自身よりも
前の全てのデータに依存することになり、平文の統計的
な特徴は各連鎖データによって攪乱され、装置規模や処
理時間等をさほど増大させていないにもかかわらず暗号
解読が難しくなる。また、暗号解読者は、暗号文と平文
のペアを入手することはできたとしても、暗号処理に用
いられた連鎖データを入手することは事実上不可能であ
り、さらに、連鎖データを生成するアルゴリズム、連鎖
データの初期値及び所定の変換は非公開なので、「既知
平文攻撃」による暗号解読はさらに難しくなり、総当た
りによる解読も困難である。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to a predetermined conversion at the time of the subsequent encryption process to generate converted data, which is fused with the encrypted data. Each time the cryptographic process is performed, the chain data is updated, so each output data depends on all the data before itself, and the statistical characteristics of the plaintext are disturbed by each chain data, and the device size and Decryption becomes difficult even though the processing time is not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the algorithm, the initial value of the chained data, and the predetermined conversion are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0399】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、鍵データにより特定され
る暗号処理を施して被暗号処理データから出力データを
生成する暗号処理装置であって、前のデータの影響を後
のデータに及ぼす為に用いる連鎖データを記憶し暗号処
理を施す毎にその連鎖データを更新する記憶手段と、前
記記憶手段が記憶する連鎖データに予め決めておいた所
定の変換を施して変換データを生成する変換手段と、鍵
データにより特定される主暗号処理を施して変換データ
から暗号処理データを生成する主暗号処理手段と、暗号
処理データを被暗号処理データに融合して出力データを
生成する融合手段とを備え、記憶手段は出力データを新
たな連鎖データとして自身が記憶する連鎖データを更新
し次の暗号処理に供させることを特徴とする。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus and the processing time.
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted, in order to apply the influence of previous data to subsequent data. Storage means for storing the chain data to be used and updating the chain data each time the encryption processing is performed; conversion means for performing a predetermined conversion on the chain data stored by the storage means to generate conversion data; Main encryption processing means for performing encryption processing specified by the key data and generating encrypted data from the converted data; and fusing means for generating the output data by fusing the encrypted data with the data to be encrypted. The storage means updates the chain data stored by itself as new chain data with the output data and supplies the chain data to the next encryption process.

【0400】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
し、暗号処理を施して被暗号処理データに融合し、暗号
処理を施す度にその連鎖データを更新するので、各出力
データは自身よりも前の全てのデータに依存することに
なり、平文の統計的な特徴は各連鎖データによって攪乱
され、装置規模や処理時間等をさほど増大させていない
にもかかわらず暗号解読が難しくなる。また、暗号解読
者は、暗号文と平文のペアを入手することはできたとし
ても、暗号処理に用いられた連鎖データを入手すること
は事実上不可能であり、さらに、連鎖データを生成する
アルゴリズム、連鎖データの初期値及び所定の変換は非
公開なので、「既知平文攻撃」による暗号解読はさらに
難しくなり、総当たりによる解読も困難である。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, a predetermined conversion is performed in the subsequent encryption process to generate converted data, and the encryption process is performed to generate the converted data. Since it is merged with the processing data and the chain data is updated each time the encryption process is performed, each output data depends on all data before itself, and the statistical characteristics of plain text depend on each chain data. Decryption makes decryption difficult even though the device scale, processing time, etc. are not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the algorithm, the initial value of the chained data, and the predetermined conversion are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0401】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、鍵データにより特定され
る暗号処理を施して被暗号処理データから出力データを
生成する暗号処理装置であって、前のデータの影響を後
のデータに及ぼす為に用いる連鎖データを記憶し暗号処
理を施す毎にその連鎖データを更新する記憶手段と、前
記記憶手段が記憶する連鎖データに予め決めておいた所
定の変換を施して変換データを生成する変換手段と、鍵
データにより特定される主暗号処理を施して変換データ
から暗号処理データを生成する主暗号処理手段と、暗号
処理データを被暗号処理データに融合して出力データを
生成する融合手段とを備え、記憶手段は被暗号処理デー
タを新たな連鎖データとして自身が記憶する連鎖データ
を更新し次の暗号処理に供させることを特徴とする。
Therefore, the safety can be improved without greatly increasing the scale of the apparatus and the processing time.
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted, in order to apply the influence of previous data to subsequent data. Storage means for storing the chain data to be used and updating the chain data each time the encryption processing is performed; conversion means for performing a predetermined conversion on the chain data stored by the storage means to generate conversion data; Main encryption processing means for performing encryption processing specified by the key data and generating encrypted data from the converted data; and fusing means for generating the output data by fusing the encrypted data with the data to be encrypted. The storage means updates the chain data stored therein as the new chain data with the data to be encrypted, and provides the chain data to the next encryption process.

【0402】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
し、暗号処理を施して被暗号処理データに融合し、暗号
処理を施す度にその連鎖データを更新するので、各出力
データは自身よりも前の全てのデータに依存することに
なり、平文の統計的な特徴は各連鎖データによって攪乱
され、装置規模や処理時間等をさほど増大させていない
にもかかわらず暗号解読が難しくなる。また、暗号解読
者は、暗号文と平文のペアを入手することはできたとし
ても、暗号処理に用いられた連鎖データを入手すること
は事実上不可能であり、さらに、連鎖データを生成する
アルゴリズム、連鎖データの初期値及び所定の変換は非
公開なので、「既知平文攻撃」による暗号解読はさらに
難しくなり、総当たりによる解読も困難である。
[0402] As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to a predetermined conversion at the time of the subsequent encryption process to generate converted data. Since it is merged with the processing data and the chain data is updated each time the encryption process is performed, each output data depends on all data before itself, and the statistical characteristics of plain text depend on each chain data. Decryption makes decryption difficult even though the device scale, processing time, etc. are not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the algorithm, the initial value of the chained data, and the predetermined conversion are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0403】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理装置は、鍵データにより特定され
る暗号処理を施して被暗号処理データから出力データを
生成する暗号処理装置であって、前のデータの影響を後
のデータに及ぼす為に用いる連鎖データを記憶し暗号処
理を施す毎にその連鎖データを更新する記憶手段と、前
記記憶手段が記憶する連鎖データに予め決めておいた所
定の変換を施して変換データを生成する変換手段と、鍵
データにより特定される主暗号処理を施して変換データ
から中間データを生成する主暗号処理手段とを備え、中
間データを被暗号処理データに融合して出力データを生
成する融合手段とを備え、記憶手段は中間データを新た
な連鎖データとして自身が記憶する連鎖データを更新し
次の暗号処理に供させることを特徴とする。
Therefore, safety can be improved without greatly increasing the scale of the apparatus, processing time, and the like.
The cryptographic processing device according to the present invention is a cryptographic processing device that performs cryptographic processing specified by key data to generate output data from data to be encrypted, in order to apply the influence of previous data to subsequent data. Storage means for storing the chain data to be used and updating the chain data each time the encryption processing is performed; conversion means for performing a predetermined conversion on the chain data stored by the storage means to generate conversion data; Main cryptographic processing means for performing main cryptographic processing specified by the key data to generate intermediate data from the converted data, and fusing means for fusing the intermediate data to the data to be encrypted and generating output data. The storage means updates the chained data stored therein as the new chained data with the intermediate data for use in the next encryption process.

【0404】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
し、暗号処理を施して被暗号処理データに融合し、暗号
処理を施す度にその連鎖データを更新するので、各出力
データは自身よりも前の全てのデータに依存することに
なり、平文の統計的な特徴は各連鎖データによって攪乱
され、装置規模や処理時間等をさほど増大させていない
にもかかわらず暗号解読が難しくなる。また、暗号解読
者は、暗号文と平文のペアを入手することはできたとし
ても、暗号処理に用いられた連鎖データを入手すること
は事実上不可能であり、さらに、連鎖データを生成する
アルゴリズム、連鎖データの初期値及び所定の変換は非
公開なので、「既知平文攻撃」による暗号解読はさらに
難しくなり、総当たりによる解読も困難である。
[0404] Thus, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to a predetermined conversion at the time of the subsequent encryption process to generate converted data. Since it is merged with the processing data and the chain data is updated each time the encryption process is performed, each output data depends on all data before itself, and the statistical characteristics of plain text depend on each chain data. Decryption makes decryption difficult even though the device scale, processing time, etc. are not significantly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the algorithm, the initial value of the chained data, and the predetermined conversion are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0405】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理方法は、入力データに基づいて暗
号処理を施して出力データを生成する暗号処理方法であ
って、記憶手段が前のデータの影響を後のデータに及ぼ
す為に用いる連鎖データを記憶しており、記憶手段に記
憶された連鎖データを入力データに融合して融合データ
を生成する融合ステップと、融合データに基づいて主暗
号処理を施して出力データを生成し出力データを生成す
るまでの過程において生成される中間データを出力する
主暗号処理ステップと、主暗号処理ステップで出力され
た中間データを新たな連鎖データとして記憶手段に記憶
された連鎖データを更新し次の暗号処理に供させる記憶
ステップとを備えることを特徴とする。
Therefore, safety can be improved without greatly increasing the scale of the apparatus, processing time, and the like.
The cryptographic processing method according to the present invention is a cryptographic processing method for generating output data by performing cryptographic processing based on input data, wherein chained data used by the storage means to exert the influence of the previous data on the subsequent data. A fusion step of fusing the chain data stored in the storage means with the input data to generate fusion data, and performing a main encryption process based on the fusion data to generate output data and generate output data A main encryption processing step of outputting intermediate data generated in the process until the intermediate encryption processing step, and updating the chained data stored in the storage means as the new chained data with the intermediate data output in the main encryption processing step to perform the next encryption processing And a storage step for providing

【0406】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に鍵データ、又は、被暗号処理データ等
の入力データに融合し、暗号処理を施す度にその連鎖デ
ータを更新するので、各出力データは自身よりも前の全
てのデータに依存することになり、平文の統計的な特徴
は各連鎖データによって攪乱され、装置規模や処理時間
等をさほど増大させていないにもかかわらず暗号解読が
難しくなる。また、暗号解読者は、暗号文と平文のペア
を入手することはできたとしても、暗号処理に用いられ
た連鎖データを入手することは事実上不可能であり、さ
らに、連鎖データを生成するアルゴリズムや連鎖データ
の初期値は非公開なので、「既知平文攻撃」による暗号
解読はさらに難しくなり、総当たりによる解読も困難で
ある。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is merged with key data or input data such as data to be encrypted at the time of the subsequent encryption process. The output data depends on all the data before it, and the statistical characteristics of the plaintext are disturbed by each output data. Decryption becomes difficult even though the number is not greatly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0407】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理方法は、入力データに基づいて暗
号処理を施して出力データを生成する暗号処理方法であ
って、記憶手段が前のデータの影響を後のデータに及ぼ
す為に用いる連鎖データを記憶しており、記憶手段に記
憶された連鎖データを入力データの全部又は一部に融合
して融合データを生成する融合ステップと、融合データ
に基づいて第1主暗号処理を施して中間データを生成す
る第1主暗号処理ステップと、融合データに基づいて第
2主暗号処理を施して出力データを生成する第2主暗号
処理ステップと、第1主暗号処理ステップで生成された
中間データを新たな連鎖データとして記憶手段に記憶さ
れた連鎖データを更新し次の暗号処理に供させる記憶ス
テップとを備えることを特徴とする。
[0407] Therefore, the safety can be improved without significantly increasing the scale of the apparatus and the processing time.
The cryptographic processing method according to the present invention is a cryptographic processing method for generating output data by performing cryptographic processing based on input data, wherein chained data used by the storage means to exert the influence of the previous data on the subsequent data. A fusion step of fusing the chained data stored in the storage means with all or a part of the input data to generate fusion data; and performing a first main encryption process based on the fusion data to generate the intermediate data. , A second main encryption processing step of performing a second main encryption processing based on the fused data to generate output data, and an intermediate data generated in the first main encryption processing step. A storage step of updating the chain data stored in the storage unit as new chain data and subjecting the chain data to the next encryption process.

【0408】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に鍵データ、又は、被暗号処理データ等
の入力データに融合し、暗号処理を施す度にその連鎖デ
ータを更新するので、各出力データは自身よりも前の全
てのデータに依存することになり、平文の統計的な特徴
は各連鎖データによって攪乱され、装置規模や処理時間
等をさほど増大させていないにもかかわらず暗号解読が
難しくなる。また、暗号解読者は、暗号文と平文のペア
を入手することはできたとしても、暗号処理に用いられ
た連鎖データを入手することは事実上不可能であり、さ
らに、連鎖データを生成するアルゴリズムや連鎖データ
の初期値は非公開なので、「既知平文攻撃」による暗号
解読はさらに難しくなり、総当たりによる解読も困難で
ある。従って、装置規模や処理時間等を大幅に増大させ
ることなく、安全性を向上させることができる。
As a result, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is merged with key data or input data such as data to be encrypted at the time of the subsequent encryption process. The output data depends on all the data before it, and the statistical characteristics of the plaintext are disturbed by each output data. Decryption becomes difficult even though the number is not greatly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force. Therefore, safety can be improved without significantly increasing the apparatus scale, processing time, and the like.

【0409】本発明に係る暗号処理方法は、入力データ
に基づいて暗号処理を施して出力データを生成する暗号
処理方法であって、記憶手段が前のデータの影響を後の
データに及ぼす為に用いる連鎖データを記憶しており、
記憶手段に記憶された連鎖データに予め決めておいた所
定の変換を施して変換データを生成する変換ステップ
と、変換データを入力データに融合して融合データを生
成する融合ステップと、融合データに基づいて主暗号処
理を施して出力データを生成し出力データを生成するま
での過程において生成される中間データを出力する主暗
号処理ステップと、中間データ、入力データ、変換デー
タ又は出力データを新たな連鎖データとして記憶手段に
記憶された連鎖データを更新し次の暗号処理に供させる
記憶ステップとを備えることを特徴とする。
[0409] The encryption processing method according to the present invention is an encryption processing method for generating output data by performing encryption processing based on input data, in which the storage means applies the influence of the previous data to the subsequent data. Memorizes the chain data to be used,
A conversion step of applying predetermined conversion to the chain data stored in the storage means to generate conversion data; a fusion step of generating the fusion data by fusing the conversion data with the input data; and Performing a main encryption process based on the main encryption process step of generating output data and outputting intermediate data generated in the process of generating the output data; and outputting the intermediate data, input data, converted data, or output data to a new A storage step of updating the chained data stored in the storage means as the chained data and subjecting the chained data to the next encryption processing.

【0410】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
して鍵データ、又は、被暗号処理データ等の入力データ
に融合し、暗号処理を施す度にその連鎖データを更新す
るので、各出力データは自身よりも前の全てのデータに
依存することになり、平文の統計的な特徴は各連鎖デー
タによって攪乱され、装置規模や処理時間等をさほど増
大させていないにもかかわらず暗号解読が難しくなる。
また、暗号解読者は、暗号文と平文のペアを入手するこ
とはできたとしても、暗号処理に用いられた連鎖データ
を入手することは事実上不可能であり、さらに、連鎖デ
ータを生成するアルゴリズム、連鎖データの初期値及び
所定の変換は非公開なので、「既知平文攻撃」による暗
号解読はさらに難しくなり、総当たりによる解読も困難
である。
[0410] Thus, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to a predetermined conversion at the time of the subsequent encryption process to generate converted data to generate key data or encrypted data. Since it is merged with input data such as processing data and the chain data is updated each time encryption processing is performed, each output data depends on all data before itself, and the statistical characteristics of plain text are The data is disturbed by each chain data, and the decryption becomes difficult even though the device scale and the processing time are not increased so much.
In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the algorithm, the initial value of the chained data, and the predetermined conversion are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force.

【0411】従って、装置規模や処理時間等を大幅に増
大させることなく、安全性を向上させることができる。
本発明に係る暗号処理方法を記憶したコンピュータ読み
取り可能な記憶媒体は、入力データに基づいて暗号処理
を施して出力データを生成する暗号処理方法を記憶した
コンピュータ読み取り可能な記憶媒体であって、記憶手
段が前のデータの影響を後のデータに及ぼす為に用いる
連鎖データを記憶しており、記憶手段に記憶された連鎖
データを入力データに融合して融合データを生成する融
合ステップと、融合データに基づいて主暗号処理を施し
て出力データを生成し出力データを生成するまでの過程
において生成される中間データを出力する主暗号処理ス
テップと、主暗号処理ステップで出力された中間データ
を新たな連鎖データとして記憶手段に記憶された連鎖デ
ータを更新し次の暗号処理に供させる記憶ステップとを
備えることを特徴とする。
[0411] Therefore, the safety can be improved without significantly increasing the apparatus scale, processing time, and the like.
The computer-readable storage medium storing the cryptographic processing method according to the present invention is a computer-readable storage medium storing a cryptographic processing method of generating cryptographic processing based on input data to generate output data. A fusing step of storing chain data used by the means to apply the influence of the previous data to the subsequent data, fusing the chain data stored in the storage means with the input data, and generating fused data; A main encryption processing step of performing output of intermediate data generated in a process of generating output data by performing main encryption processing based on the intermediate data, and outputting the intermediate data output in the main encryption processing step to a new A storage step of updating the chain data stored in the storage means as the chain data and subjecting the chain data to the next encryption process. To.

【0412】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に鍵データ、又は、被暗号処理データ等
の入力データに融合し、暗号処理を施す度にその連鎖デ
ータを更新するので、各出力データは自身よりも前の全
てのデータに依存することになり、平文の統計的な特徴
は各連鎖データによって攪乱され、装置規模や処理時間
等をさほど増大させていないにもかかわらず暗号解読が
難しくなる。また、暗号解読者は、暗号文と平文のペア
を入手することはできたとしても、暗号処理に用いられ
た連鎖データを入手することは事実上不可能であり、さ
らに、連鎖データを生成するアルゴリズムや連鎖データ
の初期値は非公開なので、「既知平文攻撃」による暗号
解読はさらに難しくなり、総当たりによる解読も困難で
ある。従って、装置規模や処理時間等を大幅に増大させ
ることなく、安全性を向上させることができる。
[0412] Thus, the intermediate data generated in the process of performing the encryption processing is stored as chained data, and is merged with key data or input data such as data to be encrypted at the time of the subsequent encryption processing, thereby performing encryption processing. The output data depends on all the data before it, and the statistical characteristics of the plaintext are disturbed by each output data. Decryption becomes difficult even though the number is not greatly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force. Therefore, safety can be improved without significantly increasing the apparatus scale, processing time, and the like.

【0413】本発明に係る暗号処理方法を記憶したコン
ピュータ読み取り可能な記憶媒体は、入力データに基づ
いて暗号処理を施して出力データを生成する暗号処理方
法を記憶したコンピュータ読み取り可能な記憶媒体であ
って、記憶手段が前のデータの影響を後のデータに及ぼ
す為に用いる連鎖データを記憶手段に記憶しており、記
憶手段に記憶された連鎖データを入力データの全部又は
一部に融合して融合データを生成する融合ステップと、
融合データに基づいて第1主暗号処理を施して中間デー
タを生成する第1主暗号処理ステップと、融合データに
基づいて第2主暗号処理を施して出力データを生成する
第2主暗号処理ステップと、第1主暗号処理ステップが
生成した中間データを新たな連鎖データとして記憶手段
に記憶された連鎖データを更新し次の暗号処理に供させ
る記憶ステップとを備えることを特徴とする。
[0413] The computer-readable storage medium storing the encryption processing method according to the present invention is a computer-readable storage medium storing the encryption processing method of performing encryption processing based on input data to generate output data. The storage means stores in the storage means chained data used to cause the influence of the previous data to affect the subsequent data, and the chained data stored in the storage means is integrated with all or part of the input data. A fusion step of generating fusion data;
A first main encryption processing step of generating intermediate data by performing a first main encryption process based on the fusion data, and a second main encryption processing step of generating an output data by performing a second main encryption process based on the fusion data And a storage step of updating the chained data stored in the storage unit with the intermediate data generated by the first main encryption processing step as new chained data and providing the chained data to the next encryption processing.

【0414】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に鍵データ、又は、被暗号処理データ等
の入力データに融合し、暗号処理を施す度にその連鎖デ
ータを更新するので、各出力データは自身よりも前の全
てのデータに依存することになり、平文の統計的な特徴
は各連鎖データによって攪乱され、装置規模や処理時間
等をさほど増大させていないにもかかわらず暗号解読が
難しくなる。また、暗号解読者は、暗号文と平文のペア
を入手することはできたとしても、暗号処理に用いられ
た連鎖データを入手することは事実上不可能であり、さ
らに、連鎖データを生成するアルゴリズムや連鎖データ
の初期値は非公開なので、「既知平文攻撃」による暗号
解読はさらに難しくなり、総当たりによる解読も困難で
ある。従って、装置規模や処理時間等を大幅に増大させ
ることなく、安全性を向上させることができる。
[0414] Thus, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is merged with key data or input data such as data to be encrypted at the time of the subsequent encryption process. The output data depends on all the data before it, and the statistical characteristics of the plaintext are disturbed by each output data. Decryption becomes difficult even though the number is not greatly increased. In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the initial values of the algorithm and the chain data are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force. Therefore, safety can be improved without significantly increasing the apparatus scale, processing time, and the like.

【0415】本発明に係る暗号処理方法を記憶したコン
ピュータ読み取り可能な記憶媒体は、入力データに基づ
いて暗号処理を施して出力データを生成する暗号処理方
法を記憶したコンピュータ読み取り可能な記憶媒体であ
って、記憶手段が前のデータの影響を後のデータに及ぼ
す為に用いる連鎖データを記憶手段に記憶しており、記
憶手段に記憶された連鎖データに予め決めておいた所定
の変換を施して変換データを生成する変換ステップと、
変換データを入力データに融合して融合データを生成す
る融合ステップと、融合データに基づいて主暗号処理を
施して出力データを生成し出力データを生成するまでの
過程において生成される中間データを出力する主暗号処
理ステップと、中間データ、入力データ、変換データ又
は出力データを新たな連鎖データとして記憶手段に記憶
された連鎖データを更新し次の暗号処理に供させる記憶
ステップとを備えることを特徴とする。
[0415] The computer-readable storage medium storing the encryption processing method according to the present invention is a computer-readable storage medium storing the encryption processing method of performing encryption processing based on input data to generate output data. The storage means stores in the storage means chain data used to cause the influence of the previous data to affect the subsequent data, and performs a predetermined conversion on the chain data stored in the storage means. A conversion step for generating conversion data;
A fusion step of fusing the converted data with the input data to generate fusion data, and outputting the intermediate data generated in a process of performing a main encryption process based on the fusion data to generate output data and generating output data And a storage step of updating the chain data stored in the storage unit with the intermediate data, the input data, the converted data, or the output data as new chain data and subjecting the chain data to the next encryption process. And

【0416】これによって、暗号処理を施す過程におい
て生成される中間データを連鎖データとして記憶し、後
の暗号処理の際に所定の変換を施して変換データを生成
して鍵データ、又は、被暗号処理データ等の入力データ
に融合し、暗号処理を施す度にその連鎖データを更新す
るので、各出力データは自身よりも前の全てのデータに
依存することになり、平文の統計的な特徴は各連鎖デー
タによって攪乱され、装置規模や処理時間等をさほど増
大させていないにもかかわらず暗号解読が難しくなる。
また、暗号解読者は、暗号文と平文のペアを入手するこ
とはできたとしても、暗号処理に用いられた連鎖データ
を入手することは事実上不可能であり、さらに、連鎖デ
ータを生成するアルゴリズム、連鎖データの初期値及び
所定の変換は非公開なので、「既知平文攻撃」による暗
号解読はさらに難しくなり、総当たりによる解読も困難
である。従って、装置規模や処理時間等を大幅に増大さ
せることなく、安全性を向上させることができる。
[0416] Thus, the intermediate data generated in the process of performing the encryption process is stored as chained data, and is subjected to a predetermined conversion at the time of the subsequent encryption process to generate converted data to generate key data or encrypted data. Since it is merged with input data such as processing data and the chain data is updated each time encryption processing is performed, each output data depends on all data before itself, and the statistical characteristics of plain text are The data is disturbed by each chain data, and the decryption becomes difficult even though the device scale and the processing time are not increased so much.
In addition, even if a cryptanalyst can obtain a pair of a ciphertext and a plaintext, it is virtually impossible to obtain the chain data used for the cryptographic processing, and furthermore, it generates the chain data. Since the algorithm, the initial value of the chained data, and the predetermined conversion are not disclosed, it is more difficult to decipher the data by “known plaintext attack”, and it is also difficult to decipher by brute force. Therefore, safety can be improved without significantly increasing the apparatus scale, processing time, and the like.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の実施の形態1における暗号通信システ
ムの構成を示す図である。
FIG. 1 is a diagram showing a configuration of a cryptographic communication system according to a first embodiment of the present invention.

【図2】本発明の実施の形態1におけるデータ暗号化装
置10の詳細な構成を示す図である。
FIG. 2 is a diagram illustrating a detailed configuration of the data encryption device 10 according to the first embodiment of the present invention.

【図3】第1〜8暗号化部105a〜105hの詳細な
構成を示す図である。
FIG. 3 is a diagram showing a detailed configuration of first to eighth encryption units 105a to 105h.

【図4】関数「f」を計算する部分の詳細な構成を示す
図である。
FIG. 4 is a diagram showing a detailed configuration of a part for calculating a function “f”.

【図5】選択関数S1〜S8の換字表を示す図である。FIG. 5 is a diagram showing a substitution table of selection functions S1 to S8.

【図6】本発明の実施の形態1における端数データ処理
部106の詳細な構成を示す図である。
FIG. 6 is a diagram illustrating a detailed configuration of a fraction data processing unit 106 according to the first embodiment of the present invention.

【図7】本発明の実施の形態1におけるデータ復号化装
置20の詳細な構成を示す図である。
FIG. 7 is a diagram showing a detailed configuration of the data decoding device 20 according to the first embodiment of the present invention.

【図8】本発明の実施の形態1における端数データ処理
部206の詳細な構成を示す図である。
FIG. 8 is a diagram showing a detailed configuration of a fraction data processing unit 206 according to the first embodiment of the present invention.

【図9】本発明の実施の形態1のデータ暗号化装置10
における暗号化処理の流れを示す図である。
FIG. 9 is a data encryption device 10 according to the first embodiment of the present invention.
It is a figure showing the flow of the encryption processing in.

【図10】本発明の実施の形態1のデータ復号化装置2
0における暗号化処理の流れを示す図である。
FIG. 10 is a data decoding device 2 according to the first embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図11】本発明の実施の形態2におけるデータ暗号化
装置10の詳細な構成を示す図である。
FIG. 11 is a diagram showing a detailed configuration of a data encryption device 10 according to a second embodiment of the present invention.

【図12】本発明の実施の形態2におけるデータ復号化
装置20の詳細な構成を示す図である。
FIG. 12 is a diagram showing a detailed configuration of a data decoding device 20 according to Embodiment 2 of the present invention.

【図13】本発明の実施の形態2のデータ暗号化装置1
0における暗号化処理の流れを示す図である。
FIG. 13 is a data encryption device 1 according to a second embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図14】本発明の実施の形態2のデータ復号化装置2
0における暗号化処理の流れを示す図である。
FIG. 14 is a data decoding device 2 according to the second embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図15】本発明の実施の形態3におけるデータ暗号化
装置10の詳細な構成を示す図である。
FIG. 15 is a diagram showing a detailed configuration of a data encryption device 10 according to Embodiment 3 of the present invention.

【図16】本発明の実施の形態3におけるデータ復号化
装置20の詳細な構成を示す図である。
FIG. 16 is a diagram showing a detailed configuration of a data decoding device 20 according to Embodiment 3 of the present invention.

【図17】本発明の実施の形態3のデータ暗号化装置1
0における暗号化処理の流れを示す図である。
FIG. 17 is a data encryption device 1 according to a third embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図18】本発明の実施の形態3のデータ復号化装置2
0における暗号化処理の流れを示す図である。
FIG. 18 is a data decoding device 2 according to the third embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図19】本発明の実施の形態4におけるデータ暗号化
装置10の詳細な構成を示す図である。
FIG. 19 is a diagram showing a detailed configuration of a data encryption device 10 according to Embodiment 4 of the present invention.

【図20】本発明の実施の形態4におけるデータ復号化
装置20の詳細な構成を示す図である。
FIG. 20 is a diagram showing a detailed configuration of a data decoding device 20 according to Embodiment 4 of the present invention.

【図21】本発明の実施の形態4のデータ暗号化装置1
0における暗号化処理の流れを示す図である。
FIG. 21 is a data encryption device 1 according to a fourth embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図22】本発明の実施の形態4のデータ復号化装置2
0における暗号化処理の流れを示す図である。
FIG. 22 is a data decoding device 2 according to a fourth embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図23】本発明の実施の形態5におけるデータ暗号化
装置10の詳細な構成を示す図である。
FIG. 23 is a diagram showing a detailed configuration of the data encryption device 10 according to the fifth embodiment of the present invention.

【図24】本発明の実施の形態5におけるデータ復号化
装置20の詳細な構成を示す図である。
FIG. 24 is a diagram showing a detailed configuration of a data decoding device 20 according to Embodiment 5 of the present invention.

【図25】本発明の実施の形態5のデータ暗号化装置1
0における暗号化処理の流れを示す図である。
FIG. 25 is a data encryption device 1 according to a fifth embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図26】本発明の実施の形態5のデータ復号化装置2
0における暗号化処理の流れを示す図である。
FIG. 26 is a data decoding device 2 according to the fifth embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図27】本発明の実施の形態6におけるデータ暗号化
装置10の詳細な構成を示す図である。
FIG. 27 is a diagram illustrating a detailed configuration of the data encryption device 10 according to the sixth embodiment of the present invention.

【図28】本発明の実施の形態6におけるデータ復号化
装置20の詳細な構成を示す図である。
FIG. 28 is a diagram showing a detailed configuration of a data decoding device 20 according to Embodiment 6 of the present invention.

【図29】本発明の実施の形態6のデータ暗号化装置1
0における暗号化処理の流れを示す図である。
FIG. 29 is a data encryption device 1 according to the sixth embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図30】本発明の実施の形態6のデータ復号化装置2
0における暗号化処理の流れを示す図である。
FIG. 30 is a data decoding device 2 according to the sixth embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図31】本発明の実施の形態7におけるデータ暗号化
装置10の詳細な構成を示す図である。
FIG. 31 is a diagram showing a detailed configuration of a data encryption device 10 according to a seventh embodiment of the present invention.

【図32】本発明の実施の形態7におけるデータ復号化
装置20の詳細な構成を示す図である。
FIG. 32 is a diagram illustrating a detailed configuration of the data decoding device 20 according to the seventh embodiment of the present invention.

【図33】本発明の実施の形態7のデータ暗号化装置1
0における暗号化処理の流れを示す図である。
FIG. 33 is a data encryption device 1 according to a seventh embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図34】本発明の実施の形態7のデータ復号化装置2
0における暗号化処理の流れを示す図である。
FIG. 34 is a data decoding device 2 according to the seventh embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図35】本発明の実施の形態8におけるデータ暗号化
装置10の詳細な構成を示す図である。
FIG. 35 is a diagram showing a detailed configuration of the data encryption device 10 according to the eighth embodiment of the present invention.

【図36】本発明の実施の形態8におけるデータ復号化
装置20の詳細な構成を示す図である。
FIG. 36 is a diagram illustrating a detailed configuration of the data decoding device 20 according to the eighth embodiment of the present invention.

【図37】本発明の実施の形態8のデータ暗号化装置1
0における暗号化処理の流れを示す図である。
FIG. 37 is a data encryption device 1 according to an eighth embodiment of the present invention.
FIG. 9 is a diagram showing a flow of an encryption process at 0.

【図38】本発明の実施の形態9におけるデータ暗号化
装置10の詳細な構成を示す図である。
FIG. 38 is a diagram showing a detailed configuration of a data encryption device 10 according to Embodiment 9 of the present invention.

【図39】本発明の実施の形態9におけるデータ復号化
装置20の詳細な構成を示す図である。
FIG. 39 is a diagram showing a detailed configuration of a data decoding device 20 according to Embodiment 9 of the present invention.

【図40】本発明の実施の形態10におけるデータ暗号
化装置10の詳細な構成を示す図である。
FIG. 40 is a diagram showing a detailed configuration of the data encryption device 10 according to the tenth embodiment of the present invention.

【図41】本発明の実施の形態10におけるデータ復号
化装置20の詳細な構成を示す図である。
FIG. 41 is a diagram showing a detailed configuration of a data decoding device 20 according to Embodiment 10 of the present invention.

【図42】本発明の実施の形態10のデータ暗号化装置
10における暗号化処理の流れを示す図である。
FIG. 42 is a diagram showing a flow of an encryption process in the data encryption device 10 according to the tenth embodiment of the present invention.

【図43】本発明の実施の形態10のデータ復号化装置
20における暗号化処理の流れを示す図である。
FIG. 43 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the tenth embodiment of the present invention.

【図44】本発明の実施の形態11におけるデータ暗号
化装置10の詳細な構成を示す図である。
FIG. 44 is a diagram showing a detailed configuration of the data encryption device 10 according to the eleventh embodiment of the present invention.

【図45】本発明の実施の形態11におけるデータ復号
化装置20の詳細な構成を示す図である。
FIG. 45 is a diagram illustrating a detailed configuration of a data decoding device 20 according to Embodiment 11 of the present invention.

【図46】本発明の実施の形態11のデータ暗号化装置
10における暗号化処理の流れを示す図である。
FIG. 46 is a diagram showing a flow of an encryption process in the data encryption device 10 according to the eleventh embodiment of the present invention.

【図47】本発明の実施の形態11のデータ復号化装置
20における暗号化処理の流れを示す図である。
FIG. 47 is a diagram showing a flow of an encryption process in the data decryption device 20 according to the eleventh embodiment of the present invention.

【図48】本発明の実施の形態12における端数データ
処理部106の詳細な構成を示す図である。
FIG. 48 is a diagram showing a detailed configuration of a fraction data processing unit 106 according to Embodiment 12 of the present invention.

【図49】本発明の実施の形態12のデータ暗号化装置
10における端数データ処理の流れを示す図である。
FIG. 49 is a diagram showing a flow of fraction data processing in the data encryption device 10 according to the twelfth embodiment of the present invention.

【図50】CBCモードを実現する暗号化装置30の構
成を示す図である。
FIG. 50 is a diagram showing a configuration of an encryption device 30 that realizes the CBC mode.

【符号の説明】[Explanation of symbols]

10 データ暗号化装置 11 送信部 101 ブロック分割部 102 ブロック記憶部 103 鍵データ融合部 104 部分鍵生成部 105a〜105h 暗号化部 106 端数データ処理部 106a データ整合部 106b 端数データ融合部 106c 暗号文ブロック記憶部 107 ブロック結合部 108 ブロック融合部 109 ブロック変換部 110 鍵データ記憶部 111 ブロック選択部 20 データ復号化装置 21 受信部 201 ブロック分割部 202 ブロック記憶部 203 鍵データ融合部 204 部分鍵生成部 205a〜205h 復号化部 205i〜205p 暗号化部 206 端数データ処理部 206a データ整合部 206b 端数データ融合部 207 ブロック結合部 208 ブロック融合部 209 ブロック変換部 210 鍵データ記憶部 211 ブロック選択部 30 暗号化装置 301 排他的論理和部 302 データ暗号化部 303 レジスタ DESCRIPTION OF SYMBOLS 10 Data encryption apparatus 11 Transmission part 101 Block division part 102 Block storage part 103 Key data fusion part 104 Partial key generation part 105a-105h Encryption part 106 Fractional data processing part 106a Data matching part 106b Fractional data fusion part 106c Ciphertext block Storage unit 107 Block combination unit 108 Block fusion unit 109 Block conversion unit 110 Key data storage unit 111 Block selection unit 20 Data decryption device 21 Receiving unit 201 Block division unit 202 Block storage unit 203 Key data fusion unit 204 Partial key generation unit 205a To 205h Decryption unit 205i to 205p Encryption unit 206 Fractional data processing unit 206a Data matching unit 206b Fractional data fusion unit 207 Block combining unit 208 Block fusion unit 209 Block conversion unit 210 Key data Data storage unit 211 block selection unit 30 encryption device 301 exclusive OR unit 302 data encryption unit 303 register

───────────────────────────────────────────────────── フロントページの続き (72)発明者 丸山 征克 大阪府門真市大字門真1006番地 松下電器 産業株式会社内 ────────────────────────────────────────────────── ─── Continued on the front page (72) Inventor Seikatsu Maruyama 1006 Kazuma Kadoma, Osaka Prefecture Matsushita Electric Industrial Co., Ltd.

Claims (43)

【特許請求の範囲】[Claims] 【請求項1】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 記憶手段が記憶する連鎖データを、入力データに融合し
て融合データを生成する融合手段と、 融合データに基づいて主暗号処理を施して出力データを
生成し、出力データを生成するまでの過程において生成
される中間データを出力する主暗号処理手段とを備え、 記憶手段は、主暗号処理手段が出力する中間データを新
たな連鎖データとして、自身が記憶する連鎖データを更
新し、次の暗号処理に供させることを特徴とする暗号処
理装置。
A cryptographic processing apparatus for performing cryptographic processing based on input data to generate output data, wherein the cryptographic processing apparatus stores chained data used to exert the influence of previous data on subsequent data, and performs cryptographic processing. Storage means for updating the chained data each time the processing is performed; fusing means for fusing the chained data stored in the storage means with the input data to generate fused data; applying a main encryption process based on the fused data to output Main encryption processing means for generating data and outputting intermediate data generated in the process of generating output data, wherein the storage means uses the intermediate data output by the main encryption processing means as new chained data, A cryptographic processing apparatus for updating chained data stored therein and for performing the next cryptographic processing.
【請求項2】 前記主暗号処理手段は、複数段の部分処
理を施し、 複数段の部分処理とは、部分処理の段階が複数あり、1
段目で部分処理を施したデータに、2段目で更に部分処
理を施し、これを段数分行なうことをいい、 最終段で部分処理を施したデータが出力データとなり、 最終段以外の各段で部分処理を施して得られたデータが
各中間データとなり、 前記記憶手段は、主暗号処理手段が出力する各中間デー
タの内の1個を新たな連鎖データとして記憶することを
特徴とする請求項1記載の暗号処理装置。
2. The main cryptographic processing means performs a plurality of stages of partial processing, and the plurality of stages of partial processing includes a plurality of stages of partial processing.
Performing partial processing on the data that has been subjected to partial processing at the second stage, and then performing the same for the number of stages at the second stage. The data that has been subjected to the partial processing at the final stage becomes output data. The data obtained by performing the partial processing in (1) becomes intermediate data, and the storage unit stores one of the intermediate data output from the main encryption processing unit as new chain data. Item 2. The encryption processing device according to Item 1.
【請求項3】 前記入力データは、鍵データと被暗号処
理データとを含み、 前記融合手段は、前記記憶手段が記憶する連鎖データ
を、前記鍵データに融合して融合鍵データを生成し、 前記暗号処理装置は、さらに、 融合鍵データから前記主暗号処理手段の段数分の部分鍵
を生成し、主暗号処理手段の各段階に給送し、それぞれ
の部分処理に供させる部分鍵生成手段を備え、 前記主暗号処理手段は、段数分の部分鍵により特定され
る複数段の部分処理を施し、被暗号処理データから出力
データを生成することを特徴とする請求項2記載の暗号
処理装置。
3. The input data includes key data and data to be encrypted, and the fusing unit generates fused key data by fusing chain data stored in the storage unit with the key data. The cryptographic processing unit further generates partial keys corresponding to the number of stages of the main cryptographic processing unit from the fusion key data, sends the partial keys to each stage of the main cryptographic processing unit, and causes each of the stages to perform the respective partial processing. 3. The cryptographic processing apparatus according to claim 2, wherein the main cryptographic processing means performs partial processing of a plurality of stages specified by partial keys corresponding to the number of stages, and generates output data from the data to be encrypted. .
【請求項4】 前記暗号処理装置は、さらに、 前記被暗号処理データを所定のビット数であるブロック
単位に分割しつつ、順番に、次に処理すべき1ブロック
の被暗号処理データを準備するブロック準備手段と、 ブロック準備手段が被暗号処理データをブロック単位に
分割した際に生じるブロック単位未満の端数データか
ら、前記連鎖データに基づいて、その端数データと同じ
長さの出力データを生成する端数データ処理手段とを備
え、 前記暗号処理装置は、ブロック単位で暗号処理を施すこ
とを特徴とする請求項3記載の暗号処理装置。
4. The encryption processing device further prepares one block of encrypted data to be processed next in order while dividing the encrypted data into blocks each having a predetermined number of bits. Block preparing means, and, based on the chained data, output data having the same length as the fraction data, based on the fractional data generated when the block preparation means divides the data to be encrypted into blocks. The cryptographic processing apparatus according to claim 3, further comprising a fraction data processing unit, wherein the cryptographic processing apparatus performs cryptographic processing in block units.
【請求項5】 前記端数データ処理手段は、 前記連鎖データから、前記端数データと同じ長さの端数
連鎖データを生成するデータ整合手段と、 端数連鎖データを端数データに融合して、その端数デー
タと同じ長さの出力データを生成する端数データ融合手
段とを含むことを特徴とする請求項4記載の暗号処理装
置。
5. The fraction data processing means includes: data matching means for generating, from the concatenated data, fraction concatenated data having the same length as the fraction data; and integrating the fraction concatenated data into the fraction data. 5. The cryptographic processing apparatus according to claim 4, further comprising: a fraction data fusing unit that generates output data having the same length as.
【請求項6】 前記端数データ処理手段は、 前記主暗号処理手段により暗号処理を施されたブロック
を記憶し、前記端数データが生じた際に、記憶している
ブロックを新たな被暗号処理データとして前記主暗号処
理手段に渡すブロック記憶手段を含み、 前記主暗号処理手段は、ブロック記憶手段より渡された
ブロックから出力データを生成し、これを端数データ処
理用ブロックとして端数データ処理手段へ渡し、 前記端数データ処理手段は、さらに、 端数データ処理用ブロックから、前記端数データと同じ
長さの整合データを生成するデータ整合手段と、 整合データを端数データに融合して、その端数データと
同じ長さの出力データを生成する端数データ融合手段と
を含むことを特徴とする請求項4記載の暗号処理装置。
6. The fraction data processing means stores a block subjected to encryption processing by the main encryption processing means, and when the fraction data occurs, replaces the stored block with new encrypted data. The main cryptographic processing means generates output data from the block passed from the block storage means, and passes the generated data to the fractional data processing means as a fractional data processing block. The fraction data processing means further comprises: data matching means for generating matched data having the same length as the fraction data from the fraction data processing block; and combining the matched data with the fraction data to obtain the same as the fraction data. 5. The cryptographic processing apparatus according to claim 4, further comprising a fraction data fusion unit for generating length output data.
【請求項7】 前記融合手段及び前記端数データ融合手
段における融合は、対応するビット毎の排他的論理和の
計算であることを特徴とする請求項6記載の暗号処理装
置。
7. The cryptographic processing apparatus according to claim 6, wherein the fusion in the fusion means and the fractional data fusion means is calculation of an exclusive OR for each corresponding bit.
【請求項8】 前記記憶手段は、予め連鎖データの初期
値を記憶し、最初のブロックを処理する際に用い、 前記鍵データ、及び、連鎖データの初期値は、ある被暗
号処理データを暗号化する装置が用いるものと、その暗
号化する装置の出力を受け取り復号化する装置が用いる
ものとが同一であり、且つ、非公開であり、 前記暗号化する装置と、前記復号化する装置とが、同一
の鍵データ、及び、同一の連鎖データの初期値を用いる
場合には、前記復号化する装置が施す暗号処理は、常
に、前記暗号化する装置が施す暗号処理の逆変換となる
ことを特徴とする請求項7記載の暗号処理装置。
8. The storage means stores in advance an initial value of the chained data and uses it when processing the first block. The key data and the initial value of the chained data are used for encrypting a certain data to be encrypted. The device used by the encrypting device and the device used by the device that receives and decrypts the output of the encrypting device are the same, and are not disclosed, and the encrypting device and the decrypting device However, when the same key data and the same initial value of the chained data are used, the encryption processing performed by the decrypting device is always the inverse conversion of the encryption processing performed by the encrypting device. The cryptographic processing device according to claim 7, wherein
【請求項9】 前記暗号処理装置は、さらに、 鍵データを記憶し、暗号処理を施す毎にその鍵データを
更新する鍵データ記憶手段を備え、 前記融合手段は、前記記憶手段が記憶する連鎖データ
を、鍵データ記憶手段が記憶する鍵データに融合し、 鍵データ記憶手段は、鍵データの初期値を記憶し、最初
のデータを処理する際に用い、融合鍵データを新たな鍵
データとして、自身が記憶する鍵データを更新し、次の
暗号処理に供させることを特徴とする請求項3記載の暗
号処理装置。
9. The cryptographic processing apparatus further comprises key data storage means for storing key data and updating the key data each time encryption processing is performed, and the fusing means comprises a chain stored in the storage means. Fusing the data with the key data stored in the key data storage means, the key data storage means stores the initial value of the key data and uses it when processing the first data, and uses the fused key data as new key data. 4. The cryptographic processing apparatus according to claim 3, wherein the key data stored therein is updated so as to be used for the next cryptographic processing.
【請求項10】 前記記憶手段は、自身が記憶する連鎖
データに基づいて、前記主暗号処理手段が出力する各中
間データ、前記入力データ、前記融合データ及び前記出
力データの中から1個を選択し、新たな連鎖データとし
て、自身が記憶する連鎖データを更新し、次の暗号処理
に供させることを特徴とする請求項2記載の暗号処理装
置。
10. The storage unit selects one of the intermediate data, the input data, the fusion data, and the output data output by the main encryption processing unit based on the chain data stored therein. 3. The encryption processing device according to claim 2, wherein the chained data stored therein is updated as new chained data, and the updated chained data is subjected to the next encryption processing.
【請求項11】 前記入力データは、鍵データと被暗号
処理データとを含み、 前記融合手段は、前記記憶手段が記憶する連鎖データ
を、前記被暗号処理データに融合して融合被暗号処理デ
ータを生成し、 前記主暗号処理手段は、鍵データにより特定される主暗
号処理を施し、融合被暗号処理データから出力データを
生成することを特徴とする請求項1記載の暗号処理装
置。
11. The input data includes key data and data to be encrypted, and the fusing unit fuses the chained data stored in the storage unit with the data to be encrypted to generate the fused encrypted data. The cryptographic processing device according to claim 1, wherein the main cryptographic processing unit performs main cryptographic processing specified by the key data, and generates output data from the fusion-processed cryptographically processed data.
【請求項12】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 鍵データにより特定される主暗号処理を施して、被暗号
処理データから暗号処理データを生成し、暗号処理デー
タを生成するまでの過程において生成される中間データ
を出力する主暗号処理手段と、 記憶手段が記憶する連鎖データを、暗号処理データに融
合して出力データを生成する融合手段とを備え、 記憶手段は、主暗号処理手段が出力する中間データを新
たな連鎖データとして、自身が記憶する連鎖データを更
新し、次の暗号処理に供させることを特徴とする暗号処
理装置。
12. An encryption processing device for performing an encryption process specified by key data to generate output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. Storage means for updating the chain data each time encryption processing is performed; and performing main encryption processing specified by key data to generate encryption processing data from the data to be encrypted to generate encryption processing data. The main encryption processing means for outputting intermediate data generated in the process up to the step of performing, and fusing means for fusing the chained data stored in the storage means to the cryptographic processing data to generate output data, the storage means comprising: Cryptographic processing characterized by updating the chain data stored therein by using the intermediate data output by the main cryptographic processing means as new chain data and providing the chain data for the next cryptographic process Location.
【請求項13】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 記憶手段が記憶する連鎖データを、入力データの全部又
は一部に融合して融合データを生成する融合手段と、 融合データに基づいて第1主暗号処理を施して中間デー
タを生成する第1主暗号処理手段と、 融合データに基づいて第2主暗号処理を施して出力デー
タを生成する第2主暗号処理手段とを備え、 記憶手段は、第1主暗号処理手段が生成した中間データ
を新たな連鎖データとして、自身が記憶する連鎖データ
を更新し、次の暗号処理に供させることを特徴とする暗
号処理装置。
13. An encryption processing device for performing an encryption process based on input data to generate output data, wherein the encryption device stores chained data that is used to exert the influence of previous data on subsequent data. Storage means for updating the chained data each time the processing is performed; fusing means for fusing the chained data stored in the storage means to all or a part of the input data to generate fused data; A first main encryption processing means for performing intermediate encryption processing to generate intermediate data; and a second main encryption processing means for performing second main encryption processing based on the fused data to generate output data. An encryption processing device that updates the chained data stored therein by using the intermediate data generated by the first main encryption processing unit as new chained data, and causes the chained data to be subjected to the next encryption processing.
【請求項14】 前記入力データは、鍵データと被暗号
処理データとを含み、 前記融合手段は、前記記憶手段が記憶する連鎖データ
を、前記鍵データに融合して融合鍵データを生成し、 前記暗号処理装置は、さらに、 融合鍵データから前記第1主暗号処理手段及び第2主暗
号処理手段の部分鍵をそれぞれ生成し、それぞれの主暗
号処理に供させる部分鍵生成手段を備え、 前記第1主暗号処理手段は、部分鍵により特定される第
1主暗号処理を施して、被暗号処理データから中間デー
タを生成し、 前記第2主暗号処理手段は、部分鍵により特定される第
2主暗号処理を施して、被暗号処理データから出力デー
タを生成することを特徴とする請求項13記載の暗号処
理装置。
14. The input data includes key data and data to be encrypted, and the fusing means generates fused key data by fusing chain data stored in the storage means with the key data. The cryptographic processing apparatus further includes a partial key generation unit that generates the partial keys of the first main cryptographic processing unit and the second main cryptographic processing unit from the fusion key data, and provides the partial key to each main cryptographic process. The first main cryptographic processing means performs a first main cryptographic processing specified by the partial key to generate intermediate data from the data to be encrypted, and the second main cryptographic processing means performs the first main cryptographic processing specified by the partial key. 14. The cryptographic processing apparatus according to claim 13, wherein output data is generated from the data to be encrypted by performing two main cryptographic processing.
【請求項15】 前記暗号処理装置は、さらに、 前記被暗号処理データを所定のビット数であるブロック
単位に分割しつつ、順番に、次に処理すべき1ブロック
の被暗号処理データを準備するブロック準備手段と、 ブロック準備手段が被暗号処理データをブロック単位に
分割した際に生じるブロック単位未満の端数データか
ら、前記連鎖データに基づいて、その端数データと同じ
長さの出力データを生成する端数データ処理手段とを備
え、 前記暗号処理装置は、ブロック単位で暗号処理を施すこ
とを特徴とする請求項14記載の暗号処理装置。
15. The encryption processing device further prepares one block of encrypted data to be processed next in order while dividing the encrypted data into blocks each having a predetermined number of bits. Block preparing means, and, based on the chained data, output data having the same length as the fraction data, based on the fractional data generated when the block preparation means divides the data to be encrypted into blocks. The cryptographic processing apparatus according to claim 14, further comprising a fraction data processing unit, wherein the cryptographic processing apparatus performs cryptographic processing in block units.
【請求項16】 前記端数データ処理手段は、 前記連鎖データから、前記端数データと同じ長さの端数
連鎖データを生成するデータ整合手段と、 端数連鎖データを端数データに融合して、その端数デー
タと同じ長さの出力データを生成する端数データ融合手
段とを含むことを特徴とする請求項15記載の暗号処理
装置。
16. The fraction data processing means includes: data matching means for generating, from the concatenated data, fraction concatenated data having the same length as the fraction data; and merging the fraction concatenated data into the fraction data. 16. The cryptographic processing apparatus according to claim 15, further comprising a fraction data fusion unit that generates output data having the same length as that of.
【請求項17】 前記端数データ処理手段は、 前記第2主暗号処理手段により暗号処理を施されたブロ
ックを記憶し、前記端数データが生じた際に、記憶して
いるブロックを新たな被暗号処理データとして前記第2
主暗号処理手段に渡すブロック記憶手段を含み、 前記第2主暗号処理手段は、ブロック記憶手段より渡さ
れたブロックから出力データを生成し、これを端数デー
タ処理用ブロックとして端数データ処理手段へ渡し、 前記端数データ処理手段は、さらに、 端数データ処理用ブロックから、前記端数データと同じ
長さの整合データを生成するデータ整合手段と、 整合データを端数データに融合して、その端数データと
同じ長さの出力データを生成する端数データ融合手段と
を含むことを特徴とする請求項15記載の暗号処理装
置。
17. The fraction data processing means stores a block that has been subjected to encryption processing by the second main encryption processing means, and when the fraction data occurs, stores the stored block in a new encrypted data. As the processing data, the second
The second main cryptographic processing unit generates output data from the block passed from the block storage unit, and transfers the output data to the fraction data processing unit as a fraction data processing block. The fraction data processing means further comprises: data matching means for generating matched data having the same length as the fraction data from the fraction data processing block; and combining the matched data with the fraction data to obtain the same as the fraction data. 16. The cryptographic processing apparatus according to claim 15, further comprising: fraction data fusion means for generating length output data.
【請求項18】 前記暗号処理装置は、さらに、 鍵データを記憶し、暗号処理を施す毎にその鍵データを
更新する鍵データ記憶手段を備え、 前記融合手段は、前記記憶手段が記憶する連鎖データ
を、鍵データ記憶手段が記憶する鍵データに融合し、 鍵データ記憶手段は、鍵データの初期値を記憶し、最初
のデータを処理する際に用い、融合鍵データを新たな鍵
データとして、自身が記憶する鍵データを更新し、次の
暗号処理に供させることを特徴とする請求項14記載の
暗号処理装置。
18. The cryptographic processing apparatus further comprises key data storage means for storing key data and updating the key data each time encryption processing is performed, and the fusing means comprises a chain stored in the storage means. Fusing the data with the key data stored in the key data storage means, the key data storage means stores the initial value of the key data and uses it when processing the first data, and uses the fused key data as new key data. 15. The cryptographic processing apparatus according to claim 14, wherein the key data stored therein is updated to be used for the next cryptographic processing.
【請求項19】 前記入力データは、鍵データと被暗号
処理データとを含み、 前記融合手段は、前記記憶手段が記憶する連鎖データ
を、前記被暗号処理データに融合して融合被暗号処理デ
ータを生成し、 前記第1主暗号処理手段は、鍵データにより特定される
第1主暗号処理を施して、融合被暗号処理データから中
間データを生成し、 前記第2主暗号処理手段は、鍵データにより特定される
第2主暗号処理を施して、融合被暗号処理データから出
力データを生成することを特徴とする請求項13記載の
暗号処理装置。
19. The input data includes key data and data to be encrypted, and the fusing means fuses the chained data stored in the storage means with the data to be encrypted to generate the data to be processed. The first main cryptographic processing means performs a first main cryptographic processing specified by key data to generate intermediate data from the fused encrypted processing data, and the second main cryptographic processing means generates a key 14. The cryptographic processing device according to claim 13, wherein a second main cryptographic process specified by the data is performed to generate output data from the data to be processed to be fused.
【請求項20】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 記憶手段が記憶する連鎖データを、前記鍵データに融合
して融合鍵データを生成する融合手段と、 融合鍵データから部分鍵を生成する部分鍵生成手段と、 部分鍵により特定される第1主暗号処理を施して、被暗
号処理データから出力データを生成する第1主暗号処理
手段と、 部分鍵により特定される第2主暗号処理を施して、出力
データから中間データを生成する第2主暗号処理手段と
を備え、 部分鍵生成手段は、融合鍵データから前記第1主暗号処
理手段及び第2主暗号処理手段の部分鍵をそれぞれ生成
し、それぞれの主暗号処理に供させ、 記憶手段は、第2主暗号処理手段が生成した中間データ
を新たな連鎖データとして、自身が記憶する連鎖データ
を更新し、次の暗号処理に供させることを特徴とする暗
号処理装置。
20. A cryptographic processing apparatus for performing an encryption process specified by key data and generating output data from data to be encrypted, wherein the chained data is used to exert the influence of the previous data on the subsequent data. Storage means for storing the chain data and updating the chain data each time encryption processing is performed; fusion means for fusing the chain data stored in the storage means with the key data to generate fusion key data; Partial key generation means for generating a partial key; first main encryption processing means for performing first main encryption processing specified by the partial key to generate output data from data to be encrypted; and identification by the partial key. A second main cryptographic processor for performing a second main cryptographic process to generate intermediate data from the output data, wherein the partial key generating unit performs the first main cryptographic processing unit and the second main cryptographic process from the fusion key data. The storage means generates partial keys of the processing means and supplies the generated partial keys to the respective main encryption processes. The storage means updates the chain data stored therein by using the intermediate data generated by the second main encryption processing means as new chain data. And a cryptographic processing apparatus for performing the following cryptographic processing.
【請求項21】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 鍵データにより特定される第1主暗号処理を施して、被
暗号処理データから中間データを生成する第1主暗号処
理手段と、 鍵データにより特定される第2主暗号処理を施して、被
暗号処理データから暗号処理データを生成する第2主暗
号処理手段と、 記憶手段が記憶する連鎖データを、暗号処理データに融
合して出力データを生成する融合手段とを備え、 記憶手段は、第1主暗号処理手段が生成した中間データ
を新たな連鎖データとして、自身が記憶する連鎖データ
を更新し、次の暗号処理に供させることを特徴とする暗
号処理装置。
21. A cryptographic processing apparatus that performs cryptographic processing specified by key data and generates output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. And a storage means for updating the chain data each time encryption processing is performed, and a first main encryption processing for performing first main encryption processing specified by key data and generating intermediate data from data to be encrypted Means, a second main encryption process specified by the key data, and second encryption processing means for generating encrypted data from the data to be encrypted, and chained data stored in the storage means are converted into encrypted data. Fusing means for generating output data by fusing, and the storage means updates the chain data stored therein by using the intermediate data generated by the first main encryption processing means as new chain data. , A cryptographic processing apparatus, characterized in that to used for the next cryptographic processing.
【請求項22】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 鍵データにより特定される第1主暗号処理を施して、連
鎖データから暗号処理データを生成する第1主暗号処理
手段と、 暗号処理データを、被暗号処理データに融合して中間デ
ータを生成する融合手段と、 鍵データにより特定される第2暗号処理を施して、中間
データから出力データを生成する第2主暗号処理手段と
を備え、 記憶手段は、中間データを新たな連鎖データとして、自
身が記憶する連鎖データを更新し、次の暗号処理に供さ
せることを特徴とする暗号処理装置。
22. A cryptographic processing apparatus that performs cryptographic processing specified by key data and generates output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. And a first main cryptographic processing means for performing a first main cryptographic processing specified by key data and generating cryptographically processed data from the chained data, and a storage means for updating the chain data each time the cryptographic processing is performed. Fusing means for fusing the encrypted data with the data to be encrypted to generate intermediate data; and a second main cipher for performing second cryptographic processing specified by the key data to generate output data from the intermediate data. A cryptographic processing apparatus comprising: processing means for updating the chained data stored therein by using the intermediate data as new chained data and providing the chained data to the next cryptographic processing
【請求項23】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 鍵データにより特定される第1主暗号処理を施して、連
鎖データから暗号処理データを生成する第1主暗号処理
手段と、 鍵データにより特定される第2主暗号処理を施して、被
暗号処理データから中間データを生成する第2主暗号処
理手段と、 暗号処理データを、中間データに融合して出力データを
生成する融合手段とを備え、 記憶手段は、中間データを新たな連鎖データとして、自
身が記憶する連鎖データを更新し、次の暗号処理に供さ
せることを特徴とする暗号処理装置。
23. A cryptographic processing device for performing an encryption process specified by key data and generating output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. And a first main cryptographic processing means for performing a first main cryptographic processing specified by key data and generating cryptographically processed data from the chained data, and a storage means for updating the chain data each time the cryptographic processing is performed. And a second main encryption processing means for performing a second main encryption process specified by the key data to generate intermediate data from the data to be encrypted, and generating the output data by fusing the encrypted data with the intermediate data. Storage means for updating the chained data stored therein by using the intermediate data as new chained data and providing the chained data to the next encryption processing. .
【請求項24】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 鍵データにより特定される第1主暗号処理を施して、連
鎖データから中間データを生成する第1主暗号処理手段
と、 中間データを、被暗号処理データに融合して融合データ
を生成する融合手段と、 鍵データにより特定される第2主暗号処理を施して、融
合データから出力データを生成する第2主暗号処理手段
とを備え、 記憶手段は、中間データを新たな連鎖データとして、自
身が記憶する連鎖データを更新し、次の暗号処理に供さ
せることを特徴とする暗号処理装置。
24. A cryptographic processing apparatus that performs cryptographic processing specified by key data and generates output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. And a first main encryption processing unit that performs a first main encryption process specified by the key data and generates intermediate data from the chain data, Fusing means for fusing intermediate data to data to be encrypted to generate fused data; and performing second main cryptographic processing specified by the key data to generate output data from the fused data. A cryptographic processing apparatus, wherein the storage means updates the chained data stored therein by using the intermediate data as new chained data and causes the chained data to be subjected to the next encryption processing.
【請求項25】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 鍵データにより特定される第1主暗号処理を施して、連
鎖データから中間データを生成する第1主暗号処理手段
と、 鍵データにより特定される第2主暗号処理を施して、被
暗号処理データから暗号処理データを生成する第2主暗
号処理手段と、 中間データを、暗号処理データに融合して出力データを
生成する融合手段とを備え、 記憶手段は、中間データを新たな連鎖データとして、自
身が記憶する連鎖データを更新し、次の暗号処理に供さ
せることを特徴とする暗号処理装置。
25. A cryptographic processing apparatus which performs cryptographic processing specified by key data and generates output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. And a first main encryption processing unit that performs a first main encryption process specified by the key data and generates intermediate data from the chain data, A second main cryptographic processing means for performing a second main cryptographic process specified by the key data to generate cryptographically processed data from the data to be encrypted, and generating intermediate data into the cryptographically processed data to generate output data Storage means for updating the chained data stored therein by using the intermediate data as new chained data and providing the chained data to the next encryption processing. .
【請求項26】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 前記記憶手段が記憶する連鎖データに、予め決めておい
た所定の変換を施して変換データを生成する変換手段
と、 変換データを、入力データに融合して融合データを生成
する融合手段と、 融合データに基づいて主暗号処理を施して出力データを
生成し、出力データを生成するまでの過程において生成
される中間データを出力する主暗号処理手段とを備え、 記憶手段は、中間データ、入力データ、変換データ又は
出力データを新たな連鎖データとして、自身が記憶する
連鎖データを更新し、次の暗号処理に供させることを特
徴とする暗号処理装置。
26. A cryptographic processing apparatus for performing cryptographic processing based on input data to generate output data, wherein the cryptographic processing apparatus stores chained data used to exert the influence of previous data on subsequent data. Storage means for updating the chain data each time the data processing is performed; conversion means for performing predetermined predetermined conversion on the chain data stored in the storage means to generate conversion data; and converting the conversion data into input data. Fusing means for generating fused data by fusing to the main cryptographic processing, performing main cryptographic processing based on the fused data to generate output data, and outputting intermediate data generated in the process of generating the output data The storage means updates the chain data stored by itself as new chain data with the intermediate data, input data, converted data or output data, and performs the next encryption processing. Cryptographic processing apparatus for causing subjected to.
【請求項27】 前記変換手段が施す所定の変換は、ビ
ット置換又はビット変換であることを特徴とする請求項
26記載の暗号処理装置。
27. The cryptographic processing apparatus according to claim 26, wherein the predetermined conversion performed by said conversion means is bit replacement or bit conversion.
【請求項28】 前記入力データは、鍵データと被暗号
処理データとを含み、 前記融合手段は、前記変換データを、鍵データに融合し
て融合鍵データを生成し、 前記主暗号処理手段は、融合鍵データにより特定される
主暗号処理を施して、被暗号処理データから出力データ
を生成し、 前記記憶手段は、中間データ、被暗号処理データ又は出
力データを新たな連鎖データとして、自身が記憶する連
鎖データを更新し、次の暗号処理に供させることを特徴
とする請求項27記載の暗号処理装置。
28. The input data includes key data and data to be encrypted, the fusion unit fuses the converted data with key data to generate fusion key data, and the main encryption processing unit Performing the main encryption process specified by the fusion key data to generate output data from the data to be encrypted, and the storage unit stores the intermediate data, the data to be encrypted, or the output data as new chained data, 28. The cryptographic processing apparatus according to claim 27, wherein the stored chain data is updated and subjected to the next cryptographic processing.
【請求項29】 前記暗号処理装置は、さらに、 前記被暗号処理データを所定のビット数であるブロック
単位に分割しつつ、順番に、次に処理すべき1ブロック
の被暗号処理データを準備するブロック準備手段と、 ブロック準備手段が被暗号処理データをブロック単位に
分割した際に生じるブロック単位未満の端数データか
ら、前記連鎖データに基づいて、その端数データと同じ
長さの出力データを生成する端数データ処理手段とを備
え、 前記暗号処理装置は、ブロック単位で暗号処理を施すこ
とを特徴とする請求項28記載の暗号処理装置。
29. The encryption processing device further prepares one block of encrypted data to be processed next in order while dividing the encrypted data into blocks each having a predetermined number of bits. Block preparing means, and, based on the chained data, output data having the same length as the fraction data, based on the fractional data generated when the block preparation means divides the data to be encrypted into blocks. The cryptographic processing apparatus according to claim 28, further comprising a fraction data processing unit, wherein the cryptographic processing apparatus performs cryptographic processing on a block-by-block basis.
【請求項30】 前記端数データ処理手段は、 前記連鎖データから、前記端数データと同じ長さの端数
連鎖データを生成するデータ整合手段と、 端数連鎖データを端数データに融合して、その端数デー
タと同じ長さの出力データを生成する端数データ融合手
段とを含むことを特徴とする請求項29記載の暗号処理
装置。
30. The fraction data processing means includes: data matching means for generating, from the concatenated data, fraction concatenated data having the same length as the fraction data; and merging the fraction concatenated data into the fraction data. 30. The cryptographic processing apparatus according to claim 29, further comprising: a fraction data fusing unit that generates output data having the same length as the output data.
【請求項31】 前記端数データ処理手段は、 前記変換データから、前記端数データと同じ長さの整合
データを生成するデータ整合手段と、 整合データを端数データに融合して、その端数データと
同じ長さの出力データを生成する端数データ融合手段と
を含むことを特徴とする請求項29記載の暗号処理装
置。
31. The fraction data processing means, comprising: data matching means for generating, from the converted data, matched data having the same length as the fraction data; combining the matched data with the fraction data to produce the same data as the fraction data. 30. The cryptographic processing apparatus according to claim 29, further comprising: fraction data fusion means for generating length output data.
【請求項32】 前記暗号処理装置は、さらに、 鍵データを記憶し、暗号処理を施す毎にその鍵データを
更新する鍵データ記憶手段を備え、 前記融合手段は、前記変換データを、鍵データ記憶手段
が記憶する鍵データに融合し、 鍵データ記憶手段は、鍵データの初期値を記憶し、最初
のデータを処理する際に用い、融合鍵データを新たな鍵
データとして、自身が記憶する鍵データを更新すること
を特徴とする請求項28記載の暗号処理装置。
32. The cryptographic processing apparatus further comprises key data storage means for storing key data and updating the key data every time encryption processing is performed, wherein the fusion means stores the key data in the key data. The key data is merged with the key data stored in the storage means. The key data storage means stores the initial value of the key data and uses it when processing the first data, and stores the fusion key data as new key data by itself. The cryptographic processing device according to claim 28, wherein key data is updated.
【請求項33】 前記入力データは、鍵データと被暗号
処理データとを含み、 前記融合手段は、前記変換データを、被暗号処理データ
に融合して融合被暗号処理データを生成し、 前記主暗号処理手段は、鍵データにより特定される主暗
号処理を施して、融合被暗号処理データから出力データ
を生成し、 前記記憶手段は、中間データ、被暗号処理データ、融合
被暗号処理データ又は出力データを新たな連鎖データと
して、自身が記憶する連鎖データを更新し、次の暗号処
理に供させることを特徴とする請求項27記載の暗号処
理装置。
33. The input data includes key data and data to be encrypted, wherein the fusion means fuses the converted data with data to be encrypted to generate fused data to be encrypted, The cryptographic processing means performs a main cryptographic process specified by the key data to generate output data from the fused encrypted data, and the storage means stores the intermediate data, the encrypted data, the fused encrypted data or the output. 28. The cryptographic processing device according to claim 27, wherein the data is stored as new chain data, and the chain data stored therein is updated and subjected to the next encryption process.
【請求項34】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 前記記憶手段が記憶する連鎖データに、予め決めておい
た所定の変換を施して変換データを生成する変換手段
と、 鍵データにより特定される主暗号処理を施して、被暗号
処理データから暗号処理データを生成し、暗号処理デー
タを生成するまでの過程において生成される中間データ
を出力する主暗号処理手段と、 変換データを、暗号処理データに融合して出力データを
生成する融合手段とを備え、 記憶手段は、中間データ、被暗号処理データ、暗号処理
データ又は出力データを新たな連鎖データとして、自身
が記憶する連鎖データを更新し、次の暗号処理に供させ
ることを特徴とする暗号処理装置。
34. A cryptographic processing apparatus that performs cryptographic processing specified by key data and generates output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. A storage unit that updates the chain data each time encryption processing is performed, and a conversion unit that generates conversion data by applying a predetermined conversion to the chain data stored by the storage unit. Main encryption processing means for performing encryption processing specified by the key data, generating encryption processing data from the data to be encrypted, and outputting intermediate data generated in the process of generating the encryption processing data; Fusing means for fusing data to cryptographically processed data to generate output data, wherein the storage means stores the intermediate data, the data to be encrypted, the cryptographically processed data or the output data. As new chain data, and updates the linkage data stored itself, the cryptographic processing apparatus, characterized in that to used for the next cryptographic processing.
【請求項35】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 前記記憶手段が記憶する連鎖データに、予め決めておい
た所定の変換を施して変換データを生成する変換手段
と、 鍵データにより特定される主暗号処理を施して、変換デ
ータから暗号処理データを生成する主暗号処理手段と、 暗号処理データを、被暗号処理データに融合して出力デ
ータを生成する融合手段とを備え、 記憶手段は、出力データを新たな連鎖データとして、自
身が記憶する連鎖データを更新し、次の暗号処理に供さ
せることを特徴とする暗号処理装置。
35. A cryptographic processing apparatus that performs cryptographic processing specified by key data and generates output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. A storage unit that updates the chain data each time encryption processing is performed, and a conversion unit that generates conversion data by applying a predetermined conversion to the chain data stored by the storage unit. A main cryptographic processing means for performing main cryptographic processing specified by the key data and generating cryptographic processing data from the converted data; and a fusing means for generating the output data by fusing the cryptographic processing data with the cryptographic processing data. A cryptographic processing apparatus, wherein the storage means updates the chained data stored therein by using the output data as new chained data and causes the chained data to be subjected to the next encryption processing.
【請求項36】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 前記記憶手段が記憶する連鎖データに、予め決めておい
た所定の変換を施して変換データを生成する変換手段
と、 鍵データにより特定される主暗号処理を施して、変換デ
ータから暗号処理データを生成する主暗号処理手段と、 暗号処理データを、被暗号処理データに融合して出力デ
ータを生成する融合手段とを備え、 記憶手段は、被暗号処理データを新たな連鎖データとし
て、自身が記憶する連鎖データを更新し、次の暗号処理
に供させることを特徴とする暗号処理装置。
36. A cryptographic processing apparatus that performs cryptographic processing specified by key data and generates output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. A storage unit that updates the chain data each time encryption processing is performed, and a conversion unit that generates conversion data by applying a predetermined conversion to the chain data stored by the storage unit. A main cryptographic processing means for performing main cryptographic processing specified by the key data and generating cryptographic processing data from the converted data; and a fusing means for generating the output data by fusing the cryptographic processing data with the cryptographic processing data. A cryptographic processing apparatus, characterized in that the storage means updates the chained data stored therein by using the data to be encrypted as new chained data, and provides the chained data for the next encryption process.
【請求項37】 鍵データにより特定される暗号処理を
施して、被暗号処理データから出力データを生成する暗
号処理装置であって、 前のデータの影響を後のデータに及ぼす為に用いる連鎖
データを記憶し、暗号処理を施す毎にその連鎖データを
更新する記憶手段と、 前記記憶手段が記憶する連鎖データに、予め決めておい
た所定の変換を施して変換データを生成する変換手段
と、 鍵データにより特定される主暗号処理を施して、変換デ
ータから中間データを生成する主暗号処理手段とを備
え、 中間データを、被暗号処理データに融合して出力データ
を生成する融合手段とを備え、 記憶手段は、中間データを新たな連鎖データとして、自
身が記憶する連鎖データを更新し、次の暗号処理に供さ
せることを特徴とする暗号処理装置。
37. A cryptographic processing device for performing an encryption process specified by key data and generating output data from data to be encrypted, wherein the chained data is used to exert the influence of previous data on subsequent data. A storage unit that updates the chain data each time encryption processing is performed, and a conversion unit that generates conversion data by applying a predetermined conversion to the chain data stored by the storage unit. Main cryptographic processing means for performing main cryptographic processing specified by key data and generating intermediate data from the converted data, and fusing means for fusing the intermediate data to the data to be encrypted and generating output data. A cryptographic processing apparatus, characterized in that the storage means updates the chained data stored therein by using the intermediate data as new chained data and causes the chained data to be subjected to the next encryption processing.
【請求項38】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理方法であって、 記憶手段が、前のデータの影響を後のデータに及ぼす為
に用いる連鎖データを記憶しており、 記憶手段に記憶された連鎖データを、入力データに融合
して融合データを生成する融合ステップと、 融合データに基づいて主暗号処理を施して出力データを
生成し、出力データを生成するまでの過程において生成
される中間データを出力する主暗号処理ステップと、 主暗号処理ステップで出力された中間データを新たな連
鎖データとして、記憶手段に記憶された連鎖データを更
新し、次の暗号処理に供させる記憶ステップとを備える
ことを特徴とする暗号処理方法。
38. A cryptographic processing method for generating output data by performing cryptographic processing based on input data, wherein the storage means stores chained data used to exert the influence of previous data on subsequent data. A fusing step of fusing the chained data stored in the storage means with the input data to generate fusing data; and performing a main encryption process based on the fusing data to generate output data and generate the output data. A main encryption processing step of outputting intermediate data generated in the process up to and including the intermediate data output in the main encryption processing step as new chain data, and updating the chain data stored in the storage means. A storage step for performing encryption processing.
【請求項39】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理方法であって、 記憶手段が、前のデータの影響を後のデータに及ぼす為
に用いる連鎖データを記憶しており、 記憶手段に記憶された連鎖データを、入力データの全部
又は一部に融合して融合データを生成する融合ステップ
と、 融合データに基づいて第1主暗号処理を施して中間デー
タを生成する第1主暗号処理ステップと、 融合データに基づいて第2主暗号処理を施して出力デー
タを生成する第2主暗号処理ステップと、 第1主暗号処理ステップで生成された中間データを新た
な連鎖データとして、記憶手段に記憶された連鎖データ
を更新し、次の暗号処理に供させる記憶ステップとを備
えることを特徴とする暗号処理方法。
39. A cryptographic processing method for generating output data by performing cryptographic processing based on input data, wherein the storage means stores chained data used to exert the influence of previous data on subsequent data. A fusing step of fusing the chained data stored in the storage means to all or a part of the input data to generate fused data; and performing a first main encryption process based on the fused data to convert the intermediate data. A first main cryptographic processing step for generating, a second main cryptographic processing step for performing a second main cryptographic processing based on the fused data to generate output data, and a new intermediate data generated in the first main cryptographic processing step. A storage step of updating the chained data stored in the storage means as a simple chained data and providing the chained data to the next encryption processing.
【請求項40】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理方法であって、 記憶手段が、前のデータの影響を後のデータに及ぼす為
に用いる連鎖データを記憶しており、 記憶手段に記憶された連鎖データに、予め決めておいた
所定の変換を施して変換データを生成する変換ステップ
と、 変換データを、入力データに融合して融合データを生成
する融合ステップと、 融合データに基づいて主暗号処理を施して出力データを
生成し、出力データを生成するまでの過程において生成
される中間データを出力する主暗号処理ステップと、 中間データ、入力データ、変換データ又は出力データを
新たな連鎖データとして、記憶手段に記憶された連鎖デ
ータを更新し、次の暗号処理に供させる記憶ステップと
を備えることを特徴とする暗号処理方法。
40. A cryptographic processing method for generating output data by performing cryptographic processing based on input data, wherein the storage means stores chained data used to exert the influence of previous data on subsequent data. A conversion step of applying a predetermined conversion to the chain data stored in the storage means to generate conversion data; and fusing the conversion data to input data to generate fusion data. A main cryptographic processing step of performing a main cryptographic process based on the fusion data to generate output data, and outputting intermediate data generated in a process until the output data is generated; intermediate data, input data, and conversion A storage step of updating the chained data stored in the storage means with the data or output data as new chained data and providing the chained data to the next encryption process Cryptographic processing method according to claim.
【請求項41】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理方法を記憶したコン
ピュータ読み取り可能な記憶媒体であって、 記憶手段が、前のデータの影響を後のデータに及ぼす為
に用いる連鎖データを記憶しており、 記憶手段に記憶された連鎖データを、入力データに融合
して融合データを生成する融合ステップと、 融合データに基づいて主暗号処理を施して出力データを
生成し、出力データを生成するまでの過程において生成
される中間データを出力する主暗号処理ステップと、 主暗号処理ステップで出力された中間データを新たな連
鎖データとして、記憶手段に記憶された連鎖データを更
新し、次の暗号処理に供させる記憶ステップとを備える
ことを特徴とする暗号処理方法を記憶したコンピュータ
読み取り可能な記憶媒体。
41. A computer-readable storage medium storing an encryption processing method for generating an output data by performing an encryption process based on input data, wherein the storage means reduces the influence of the previous data to the subsequent data. A fusion step of fusing the chain data stored in the storage means with the input data to generate fusion data; and performing a main encryption process based on the fusion data and outputting the data. A main encryption processing step for generating data and outputting intermediate data generated in the process of generating output data; and storing the intermediate data output in the main encryption processing step as new chain data in a storage unit. And a storage step of updating the chained data and subjecting it to the next encryption processing. A storage medium that can be taken.
【請求項42】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理方法を記憶したコン
ピュータ読み取り可能な記憶媒体であって、 記憶手段が、前のデータの影響を後のデータに及ぼす為
に用いる連鎖データを記憶手段に記憶しており、 記憶手段に記憶された連鎖データを、入力データの全部
又は一部に融合して融合データを生成する融合ステップ
と、 融合データに基づいて第1主暗号処理を施して中間デー
タを生成する第1主暗号処理ステップと融合データに基
づいて第2主暗号処理を施して出力データを生成する第
2主暗号処理ステップと、 第1主暗号処理ステップが生成した中間データを新たな
連鎖データとして、記憶手段に記憶された連鎖データを
更新し、次の暗号処理に供させる記憶ステップとを備え
ることを特徴とする暗号処理方法を記憶したコンピュー
タ読み取り可能な記憶媒体。
42. A computer-readable storage medium storing an encryption processing method for generating an output data by performing an encryption process based on input data, wherein the storage means reduces the influence of the preceding data to the subsequent data. Storing the chained data used in the storage means in the storage means, and fusing the chained data stored in the storage means to all or a part of the input data to generate the fusion data; A first main encryption processing step of generating intermediate data by performing a first main encryption processing, and a second main encryption processing step of generating an output data by performing a second main encryption processing based on the fused data; A storage step of updating the chained data stored in the storage unit as intermediate data generated by the encryption processing step as new chained data, and providing the chained data to the next encryption processing Computer-readable storage medium storing a cryptographic processing method comprising and.
【請求項43】 入力データに基づいて暗号処理を施し
て、出力データを生成する暗号処理方法を記憶したコン
ピュータ読み取り可能な記憶媒体であって、 記憶手段が、前のデータの影響を後のデータに及ぼす為
に用いる連鎖データを記憶手段に記憶しており、 記憶手段に記憶された連鎖データに、予め決めておいた
所定の変換を施して変換データを生成する変換ステップ
と、 変換データを、入力データに融合して融合データを生成
する融合ステップと、 融合データに基づいて主暗号処理を施して出力データを
生成し、出力データを生成するまでの過程において生成
される中間データを出力する主暗号処理ステップと、 中間データ、入力データ、変換データ又は出力データを
新たな連鎖データとして、記憶手段に記憶された連鎖デ
ータを更新し、次の暗号処理に供させる記憶ステップと
を備えることを特徴とする暗号処理方法を記憶したコン
ピュータ読み取り可能な記憶媒体。
43. A computer-readable storage medium storing an encryption processing method for generating an output data by performing an encryption process based on input data, wherein the storage means reduces the influence of the previous data on the subsequent data. A conversion step of generating conversion data by applying a predetermined conversion to the chain data stored in the storage means to generate conversion data; A fusing step of fusing with input data to generate fusing data; a main step of performing main encryption processing based on the fusing data to generate output data, and outputting intermediate data generated in a process until generating the output data. Encrypting the intermediate data, input data, converted data or output data as new chain data and updating the chain data stored in the storage means; And, following a computer-readable storage medium storing a cryptographic processing method, characterized in that it comprises a storage step of subjected to encryption processing.
JP10114009A 1997-04-23 1998-04-23 Encryption processing device and decryption processing device Expired - Lifetime JP3035889B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10114009A JP3035889B2 (en) 1997-04-23 1998-04-23 Encryption processing device and decryption processing device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP10560997 1997-04-23
JP9-105609 1997-04-23
JP10114009A JP3035889B2 (en) 1997-04-23 1998-04-23 Encryption processing device and decryption processing device

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP27116799A Division JP3442011B2 (en) 1997-04-23 1999-09-24 Encryption processing device and decryption processing device
JP27116699A Division JP3442010B2 (en) 1997-04-23 1999-09-24 Encryption processing device and decryption processing device

Publications (2)

Publication Number Publication Date
JPH117239A true JPH117239A (en) 1999-01-12
JP3035889B2 JP3035889B2 (en) 2000-04-24

Family

ID=26445861

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10114009A Expired - Lifetime JP3035889B2 (en) 1997-04-23 1998-04-23 Encryption processing device and decryption processing device

Country Status (1)

Country Link
JP (1) JP3035889B2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000261423A (en) * 1999-03-05 2000-09-22 Matsushita Electric Ind Co Ltd Encryption device
WO2009147788A1 (en) * 2008-06-04 2009-12-10 パナソニック株式会社 Encryption device and encryption system
JP2010507813A (en) * 2006-10-27 2010-03-11 パナソニック株式会社 ENCRYPTION METHOD AND ENCRYPTION APPARATUS FOR IMPROVING OPERATION PERFORMANCE OF A CENTRAL PROCESSOR
JP2010072664A (en) * 1999-02-04 2010-04-02 Cp8 Technologies Secret key cryptographic process for protecting computer system against attacks by physical analysis
JP2010517447A (en) * 2007-01-26 2010-05-20 セーフネット インコーポレイテッド File encryption while maintaining file size

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010072664A (en) * 1999-02-04 2010-04-02 Cp8 Technologies Secret key cryptographic process for protecting computer system against attacks by physical analysis
JP2000261423A (en) * 1999-03-05 2000-09-22 Matsushita Electric Ind Co Ltd Encryption device
JP2010507813A (en) * 2006-10-27 2010-03-11 パナソニック株式会社 ENCRYPTION METHOD AND ENCRYPTION APPARATUS FOR IMPROVING OPERATION PERFORMANCE OF A CENTRAL PROCESSOR
JP2010517447A (en) * 2007-01-26 2010-05-20 セーフネット インコーポレイテッド File encryption while maintaining file size
WO2009147788A1 (en) * 2008-06-04 2009-12-10 パナソニック株式会社 Encryption device and encryption system
US8484485B2 (en) 2008-06-04 2013-07-09 Panasonic Corporation Encryption device and encryption system
JP5346933B2 (en) * 2008-06-04 2013-11-20 パナソニック株式会社 Encryption apparatus and encryption system

Also Published As

Publication number Publication date
JP3035889B2 (en) 2000-04-24

Similar Documents

Publication Publication Date Title
KR100477230B1 (en) Cryptographic processing apparatus, cryptographic processing method, and storage medium storing cryptographic processing program for improving security without greatly increasing hardware scale and processing time
US6504930B2 (en) Encryption and decryption method and apparatus using a work key which is generated by executing a decryption algorithm
US6490353B1 (en) Data encrypting and decrypting apparatus and method
CN108768617A (en) A kind of holding format encryption method based on legacy packets password
Rajput et al. An improved cryptographic technique to encrypt text using double encryption
Kumar et al. Expansion of Round Key generations in Advanced Encryption Standard for secure communication
JP3035889B2 (en) Encryption processing device and decryption processing device
KR100551992B1 (en) encryption/decryption method of application data
JP3442010B2 (en) Encryption processing device and decryption processing device
JP3442011B2 (en) Encryption processing device and decryption processing device
Parihar et al. Blowfish algorithm: a detailed study
EP1001398B1 (en) Ciphering apparatus
JP2000224158A (en) Ciphering communication system
Carter et al. Key schedule classification of the AES candidates
JP2001016197A (en) Self-synchronized stream enciphering system and mac generating method using the same
ايناس طارق et al. Image encryption and decryption using CAST-128 with proposed adaptive key
KR100262384B1 (en) Encryption method and apparatus
CN110278206B (en) BWE encryption algorithm based on double private keys
US20020031218A1 (en) Encryption method relevant to all encryption procedures
JP2002023624A (en) Block cipher communication method and device therefor, and recording medium with block cipher communication program recorded thereon
Goswami Study and analysis of symmetric key-cryptograph DES, data encryption standard
Bhowmika et al. A Symmetric Key-Based Cryptographic Transaction on Cryptocurrency Data
Ajlouni et al. A New Approach in Key Generation and Expansion in Rijndael Algorithm.
Jagetiya et al. Evolution of Information Security Algorithms
KR20040045517A (en) Real time block data encryption/decryption processor using Rijndael block cipher and method therefor

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080225

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090225

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100225

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100225

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20110225

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120225

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120225

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130225

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20130225

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20140225

Year of fee payment: 14

EXPY Cancellation because of completion of term