JPH11224048A - Encryption conversion device, decryption conversion device, and encryption communication method - Google Patents
Encryption conversion device, decryption conversion device, and encryption communication methodInfo
- Publication number
- JPH11224048A JPH11224048A JP10024200A JP2420098A JPH11224048A JP H11224048 A JPH11224048 A JP H11224048A JP 10024200 A JP10024200 A JP 10024200A JP 2420098 A JP2420098 A JP 2420098A JP H11224048 A JPH11224048 A JP H11224048A
- Authority
- JP
- Japan
- Prior art keywords
- data
- secret information
- key
- conversion
- setting
- 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.)
- Pending
Links
Abstract
(57)【要約】
【課題】巡回シフトを用いながら、暗号解読攻撃に対し
て非常に強い、暗号変換装置、復号変換装置および暗号
通信方法を提供すること。
【解決手段】第1の鍵と、平文データを入力し、暗号文
を出力する、暗号変換方法であって、換字転置混合変換
を行う第1の変換手段を2個以上備え、平文データに、
各々の第1の変換手段を作用させていくことで、平文デ
ータに対応する、暗号文データを出力し、ビット列を左
あるいは右に巡回シフトする巡回シフト演算を含む換字
転置混合変換を行う第2の変換手段を、各々の第1の変
換手段内に、1個以上の同一個数備え、全ての第2の変
換手段で用いられる、巡回シフト演算の巡回シフト数
を、変換データに非依存の第1のデータ、もしくは第1
のデータを変換して得られるデータを参照することで決
定する、第1の決定手段を備える。
(57) [Problem] To provide a cryptographic conversion device, a decryption conversion device, and a cryptographic communication method, which are extremely resistant to cryptanalysis attacks while using a cyclic shift. A cipher conversion method for inputting a first key and plaintext data and outputting a ciphertext, comprising two or more first conversion means for performing substitution transposition mixed conversion, wherein the plaintext data includes:
By operating each of the first conversion means, ciphertext data corresponding to the plaintext data is output, and a second transposition mixed conversion including a cyclic shift operation for cyclically shifting the bit string left or right is performed. Is provided in each of the first conversion means, and the number of cyclic shifts of the cyclic shift operation used in all of the second conversion means is independent of the conversion data. 1st data or 1st
And a first determination unit that determines by referring to data obtained by converting the data of (1).
Description
【0001】[0001]
【発明の属する技術分野】本発明は、コンピュータ、情
報家電機器等の間で伝送されるデジタルデータの暗号・
復号技術に関するものである。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to encryption of digital data transmitted between computers, information home appliances, and the like.
The present invention relates to a decoding technique.
【0002】[0002]
【従来の技術】今後発展すると予想されるデジタル情報
家電機器においては、デジタルデータの不正な複写を防
ぐための暗号化技術が必須になる。たとえば、デジタル
放送受信機で受信したデジタル映像データを、D−VH
S(Digital-VHS)などのデジタル録画機器にデジタル
録画する場合、デジタル映像データに著作権があれば、
それを保護する必要がある。著作権を保護するために
は、デジタル複写の制限を設け、機器間認証、データの
暗号変換などの暗号技術を用いて、データの改ざんや不
正な複写を防止する機能が各装置に必要になる。このよ
うな暗号技術の従来例として、たとえば R. L. Rivest,
"The RC5 encryption algorithm", FAST SOFTWARE ENC
RYPTION, 2nd International Workshop, Springer-Verl
ag, 1995. に記載されているような、鍵データを用いて
一定長のデータを一定長の暗号データに暗号変換を行
い、同じ鍵を用いて復号変換を行う、共通鍵ブロック暗
号がある。この暗号方式は、鍵データの長さが利用者に
合わせて可変であることと、暗号変換で用いる巡回シフ
ト演算のビットシフト数を動的に変化させる構造である
ことが大きな特徴となっている。2. Description of the Related Art In digital information home appliances expected to develop in the future, an encryption technique for preventing unauthorized copying of digital data is indispensable. For example, digital video data received by a digital broadcast receiver is converted to D-VH
When digitally recording on a digital recording device such as S (Digital-VHS), if the digital video data is copyrighted,
You need to protect it. In order to protect copyrights, each device must have a function to prevent data tampering and unauthorized copying by using encryption technology such as authentication between devices and encryption conversion of data by setting restrictions on digital copying. . For example, RL Rivest,
"The RC5 encryption algorithm", FAST SOFTWARE ENC
RYPTION, 2nd International Workshop, Springer-Verl
Ag, 1995. There is a common key block cipher that performs cryptographic conversion of data of a fixed length into encrypted data of a fixed length using key data and performs decryption conversion using the same key. The major features of this encryption method are that the length of the key data is variable according to the user, and the structure is such that the number of bit shifts of the cyclic shift operation used in the encryption conversion is dynamically changed. .
【0003】[0003]
【発明が解決しようとする課題】しかし、この暗号方式
は、巡回シフト演算のビットシフト数を動的に変化させ
る手段として変換データに依存したアルゴリズム構造と
なっており、Lar R. Knudsen, Willi Meier, "Improved
Differential Cryptanalysis on RC5", Advances in C
ryptology -CRYPTO'96, Springer-Verlag, 1996.に記さ
れているように、暗号解読法の一つである選択平文攻撃
に対して十分に考慮されていない。However, this encryption method has an algorithm structure that depends on conversion data as means for dynamically changing the number of bit shifts in a cyclic shift operation, and is described in Lar R. Knudsen, Willi Meier , "Improved
Differential Cryptanalysis on RC5 ", Advances in C
As described in ryptology -CRYPTO'96, Springer-Verlag, 1996., it has not been sufficiently considered against selective plaintext attacks, one of the cryptanalysis methods.
【0004】本発明の目的は、暗号解読攻撃に対して非
常に強い、暗号変換装置、復号変換装置および暗号通信
方法を提供することにある。An object of the present invention is to provide a cryptographic conversion device, a decryption conversion device, and a cryptographic communication method, which are extremely resistant to cryptanalysis attacks.
【0005】また、本発明の他の目的は、機器間でデジ
タルデータの不正な複写を防ぎ、安全な転送を行うため
の方法、およびその方法を実現するシステム、さらにそ
のシステムに必要な個々の装置を提供することである。Another object of the present invention is to provide a method for preventing unauthorized copying of digital data between devices and performing a secure transfer, a system for realizing the method, and individual devices required for the system. It is to provide a device.
【0006】[0006]
【課題を解決するための手段】上記目的を達成するため
に、本発明では、巡回シフトを用いた暗号変換装置、復
号変換装置において、変換データに依存しないデータか
ら巡回シフトを制御および更新する手段をもうけた。In order to achieve the above object, according to the present invention, in a cipher conversion apparatus and a decryption conversion apparatus using a cyclic shift, means for controlling and updating the cyclic shift from data independent of converted data. I got
【0007】さらに、本発明では、上記暗号変換装置、
復号変換装置における上記巡回シフトを制御および更新
するための、変換データに依存しないデータを、デジタ
ルデータの送信、受信装置間で共有する方法および手
段、さらにそれらを用いた送信装置、受信装置を提供す
る。Further, according to the present invention, there is provided the above cipher conversion device,
Provided are a method and means for sharing converted data-independent data among digital data transmitting and receiving apparatuses for controlling and updating the cyclic shift in a decoding and converting apparatus, and a transmitting apparatus and a receiving apparatus using the same. I do.
【0008】さらに具体的には、本発明では、上記デジ
タルデータを送信、受信装置間で上記データを転送する
方法と、さらに、転送された上記データを有効とするた
めの共通の情報を保持する第3の手段と、さらに、第3の
手段から、上記送信、受信装置へ上記共通の情報を配付
するための媒体を提供する。More specifically, according to the present invention, a method of transmitting the digital data between the transmitting and receiving apparatuses, and holding common information for validating the transferred data. A third means and a medium for distributing the common information from the third means to the transmitting and receiving devices are provided.
【0009】[0009]
【発明の実施の形態】以下、本発明の実施の形態を図面
を用いて説明する。Embodiments of the present invention will be described below with reference to the drawings.
【0010】図1は、本発明による暗号変換装置の一実
施例を示すブロック図である。図1において、暗号変換
装置106には、64ビットの平文101と、40〜64ビットのデ
ータ鍵102と、Nビットのアルゴリズム番号103が入力さ
れ、64ビットの暗号文104が出力される。暗号変換装置1
06は、鍵生成部手段203と、アルゴリズム決定手段202
と、201aから201dのN個の暗号変換手段から構成され
る。ここで、201aから201dの暗号変換手段は、同じ内部
構成であるものとする。FIG. 1 is a block diagram showing an embodiment of a cryptographic conversion device according to the present invention. In FIG. 1, a 64-bit plaintext 101, a 40- to 64-bit data key 102, and an N-bit algorithm number 103 are input to a cryptographic conversion device 106, and a 64-bit encrypted text 104 is output. Cryptographic converter 1
06 includes a key generation unit 203 and an algorithm determination unit 202
And N encryption conversion units 201a to 201d. Here, the encryption conversion units 201a to 201d have the same internal configuration.
【0011】データ鍵102は、鍵生成手段203で32ビット
鍵K1と32ビット鍵K2に変換される。鍵生成手段203の変
換は、データ鍵102の下位32ビットをK1とし、データ鍵1
02の上位32ビットとK1の32ビット加算をK2とする。ここ
で32ビット加算とは、通常の加算結果を2の32乗で割っ
た余りとするものである。The data key 102 is converted by the key generation means 203 into a 32-bit key K1 and a 32-bit key K2. The key generation means 203 converts the lower 32 bits of the data key 102 into K1,
Let K2 be the 32-bit addition of the upper 32 bits of 02 and K1. Here, the 32-bit addition is a remainder obtained by dividing a normal addition result by 2 to the 32nd power.
【0012】アルゴリズム番号103は、アルゴリズム決
定手段202で、1ビット信号列G[i](i=1〜N)に変換され
る。アルゴリズム決定手段202は、Nビットのアルゴリズ
ム番号103の下位iビット目の値を用いてG[i]を生成す
る。The algorithm number 103 is converted by an algorithm determining means 202 into a 1-bit signal sequence G [i] (i = 1 to N). The algorithm determining means 202 generates G [i] using the value of the i-th lower bit of the N-bit algorithm number 103.
【0013】平文101は、まず、上位32ビット値R[0]と
下位32ビット値L[0]に分離されて、暗号変換手段201aに
入力され、K1、K2およびG[1]を用いた、1回目の暗号変
換が行われ、32ビット値R[1]と32ビット値L[1]が出力さ
れる。続いて、R[1]とL[1]は暗号変換手段201bに入力さ
れ、K1、K2およびG[2]を用いた、2回目の暗号変換が行
われ、32ビット値R[2]と32ビット値L[2]が出力される。
以上のような暗号変換をN回繰り返し、最終的な出力値
である32ビット値R[N]と32ビット値L[N]を結合すること
で、64ビットの暗号文104を得る。ここで、i回目(1≦i
≦N)の暗号変換を、暗号変換[i]と呼ぶ。また、暗号変
換の総繰り返し数Nをラウンド数と呼ぶものとする。The plaintext 101 is first separated into an upper 32-bit value R [0] and a lower 32-bit value L [0], input to the encryption conversion means 201a, and used K1, K2 and G [1]. The first encryption conversion is performed, and a 32-bit value R [1] and a 32-bit value L [1] are output. Subsequently, R [1] and L [1] are input to the encryption conversion means 201b, and a second encryption conversion using K1, K2 and G [2] is performed, and a 32-bit value R [2] is obtained. A 32-bit value L [2] is output.
The above cipher conversion is repeated N times, and the 32-bit value R [N], which is the final output value, and the 32-bit value L [N] are combined to obtain a 64-bit ciphertext 104. Here, the i-th time (1 ≦ i
≤ N) is referred to as cryptographic conversion [i]. Also, the total number N of cryptographic conversions is called the number of rounds.
【0014】図2は、暗号変換[i]を行う暗号変換手段2
01cのブロック図を示している。図2において、暗号変
換手段201cは、301から306のビット列演算手段と、巡回
シフト数決定手段300から構成される。入力値L[i-1]お
よびR[i-1]は、301から306のビット列演算手段により、
出力値L[i]およびR[i]に変換される。巡回シフト数決定
手段300は、G[i]から、ビット列演算手段302で行う巡回
シフト演算のビットシフト数S1と、ビット列演算手段30
3で行う巡回シフト演算のビットシフト数S2と、ビット
列演算手段305で行う巡回シフト演算のビットシフト数S
3の値を決定する。ここで、1≦S1, S2, S3≦31である。FIG. 2 shows a cryptographic conversion means 2 for performing cryptographic conversion [i].
The block diagram of 01c is shown. In FIG. 2, the cryptographic conversion means 201c includes bit string calculation means 301 to 306 and a cyclic shift number determination means 300. The input values L [i-1] and R [i-1] are calculated by the bit string calculating means 301 to 306.
Output values are converted to L [i] and R [i]. The cyclic shift number determination means 300 calculates the bit shift number S1 of the cyclic shift operation performed by the bit string operation means 302 and the bit string operation means 30 from G [i].
The number of bit shifts S2 of the cyclic shift operation performed in step 3 and the number of bit shifts S of the cyclic shift operation performed in the bit string operation unit 305
Determine the value of 3. Here, 1 ≦ S1, S2, and S3 ≦ 31.
【0015】以下、暗号変換手段201cの暗号変換処理を
順を追って説明する。Hereinafter, the encryption conversion processing of the encryption conversion means 201c will be described step by step.
【0016】(1)L[i-1]とK1の排他的論理和をとり、
X1とする。これは図2のビット列演算手段301が行う処
理である。(1) The exclusive OR of L [i-1] and K1 is calculated.
X1. This is a process performed by the bit string calculation unit 301 in FIG.
【0017】(2)巡回シフト数決定手段300の出力値S
1を用いて、X1をS1ビット左巡回シフトしたものと、X1
と1との32ビット加算をとり、X2とする。これは図2の
ビット列演算手段302が行う処理である。ここで、ビッ
ト列演算手段302内の演算表記ROT(A, B)はBを左方向にA
ビット巡回シフトすることを表しており、以下同様の意
味で用いる。(2) Output value S of cyclic shift number determining means 300
X1 is shifted left by S1 bit using X1 and X1
And 32-bit addition of 1 and X2. This is a process performed by the bit string operation unit 302 in FIG. Here, the operation notation ROT (A, B) in the bit string operation means 302
This indicates that the bit is cyclically shifted, and is used in the same meaning hereinafter.
【0018】(3)巡回シフト数決定手段300の出力値S
2を用いて、X2をS2ビット左巡回シフトしたものと、X2
との32ビット加算をとり、X3とする。これは図2のビッ
ト列演算手段303が行う処理である。(3) Output value S of cyclic shift number determining means 300
2, X2 is shifted left by S2 bits cyclically, and X2
And take 32-bit addition to obtain X3. This is a process performed by the bit string operation unit 303 in FIG.
【0019】(4)X3とK2の32ビット加算をとり、X4と
する。これは図2のビット列演算手段304が行う処理で
ある。(4) A 32-bit addition of X3 and K2 is performed to obtain X4. This is a process performed by the bit string operation unit 304 in FIG.
【0020】(5)巡回シフト数決定手段300の出力値S
3を用いて、X4をS3ビット左巡回シフトしたものと、X4
との32ビット加算をとり、X5とする。これは図2のビッ
ト列演算手段305が行う処理である。(5) Output value S of cyclic shift number determining means 300
3 using X3 left cyclically shifted S3 bits and X4
And take 32-bit addition to obtain X5. This is a process performed by the bit string operation unit 305 in FIG.
【0021】(6)X5とR[i-1]の32ビット加算をとった
ものを、L[i]とする。これは図2のビット列演算手段30
6が行う処理である。(6) The result of 32-bit addition of X5 and R [i-1] is defined as L [i]. This corresponds to the bit string operation means 30 of FIG.
6 is the processing to be performed.
【0022】(7)L[i-1]をR[i]とする。(7) Let L [i-1] be R [i].
【0023】以上説明した暗号変換手段201cの各演算手
段、処理手段は、ハードウェアで構成できる。また、マ
イコンがソフトウェアで処理することもできる。The arithmetic means and processing means of the cipher conversion means 201c described above can be constituted by hardware. Further, the microcomputer can perform the processing by software.
【0024】次に、暗号変換[i]における、巡回シフト
数決定手段300の巡回シフト数S1、S2、S3の決定方法に
ついて説明する。暗号変換[i]における、巡回シフト数S
1、S2、S3は、アルゴリズム決定手段202からの出力値G
[i]によって、図3の変換テーブル401を用いて定められ
る。たとえば、暗号変換[2]において、G[2]=0のとき、S
1=23、S2=6、S3=11であり、G[2]=1のとき、S1=24、S2=
7、S3=12である。図3に示した変換テーブル401内の数
値は一例であり、高い暗号強度を保てる範囲で他の数値
を使用することができる。ただし、変換テーブル401内
の数値は、外部に漏洩しないように、秘密に保持してお
く必要がある。Next, a method of determining the cyclic shift numbers S1, S2, S3 by the cyclic shift number determining means 300 in the encryption conversion [i] will be described. Number of cyclic shifts S in cryptographic conversion [i]
1, S2 and S3 are output values G from the algorithm determining means 202
[i] is determined using the conversion table 401 in FIG. For example, in the encryption conversion [2], when G [2] = 0, S
1 = 23, S2 = 6, S3 = 11, and when G [2] = 1, S1 = 24, S2 =
7, S3 = 12. The numerical values in the conversion table 401 shown in FIG. 3 are examples, and other numerical values can be used as long as high encryption strength can be maintained. However, the numerical values in the conversion table 401 need to be kept secret so as not to leak outside.
【0025】上記説明では、G[i]は1ビットとしたの
で、暗号変換手段201各々は、少なくとも入力されるG
[i]に対応する、変換テーブル401中の暗号変換[i]に定
められた値を保持すればよい。これに限ることはなく、
暗号変換手段201各々が変換テーブル401全体を保持して
同一構成とし、アルゴリズム決定手段が、iとG[i]を共
に指定しても良い。In the above description, since G [i] is 1 bit, each of the cryptographic conversion means 201 has at least
What is necessary is just to hold the value defined for the encryption conversion [i] in the conversion table 401 corresponding to [i]. It is not limited to this,
Each of the encryption conversion units 201 may have the same configuration by holding the entire conversion table 401, and the algorithm determination unit may specify both i and G [i].
【0026】G[i]はアルゴリズム決定手段202でアルゴ
リズム番号103から生成され、G[i]によって暗号変換手
段内の巡回シフト演算の巡回シフト数が変化する。した
がって、アルゴリズム番号103によって、暗号変換のア
ルゴリズムを変更させることができる。総ラウンド数が
Nならば、Nビットのアルゴリズム番号103によって2のN
乗通りのアルゴリズムを作ることができる。G [i] is generated from the algorithm number 103 by the algorithm determination means 202, and the number of cyclic shifts in the cyclic shift operation in the encryption conversion means changes according to G [i]. Therefore, the algorithm of encryption conversion can be changed by the algorithm number 103. The total number of rounds
If N, N of 2 by N-bit algorithm number 103
It is possible to make an algorithm of the square.
【0027】図4は、本発明による復号変換装置の一実
施例を示すブロック図である。この復号装置は、前述し
た図1の暗号変換装置106を用いて暗号変換した暗号文
を、元のデータに復号するものである。図4において、
復号変換装置606には、64ビットの暗号文104と、40〜64
ビットのデータ鍵102と、Nビットのアルゴリズム番号10
3が入力され、64ビットの平文101が出力される。復号変
換装置606は、図1の暗号変換装置装置106と同様の、鍵
生成手段203と、アルゴリズム決定手段202とに加えて、
601aから601dのN個の復号変換手段601から構成される。
ここで、601aから601dの復号変換手段は、同じ内部構成
であるものとする。FIG. 4 is a block diagram showing an embodiment of the decoding / conversion apparatus according to the present invention. This decryption device decrypts a cipher text that has been subjected to cryptographic conversion using the above-described cryptographic conversion device 106 in FIG. 1 into original data. In FIG.
The decryption conversion device 606 has a 64-bit ciphertext 104 and 40 to 64
Bit data key 102 and N-bit algorithm number 10
3 is input and 64-bit plaintext 101 is output. The decryption conversion device 606 includes a key generation unit 203 and an algorithm determination unit 202 similar to the encryption conversion device device 106 in FIG.
It comprises N decoding conversion means 601 from 601a to 601d.
Here, it is assumed that the decryption conversion units 601a to 601d have the same internal configuration.
【0028】暗号文104は、まず、上位32ビット値R[N]
と下位32ビット値L[N]に分離されて、復号変換手段601a
に入力され、K1、K2およびG[N]を用いて、1回目の復号
変換が行われ、32ビット値R[N-1]と32ビット値L[N-1]が
出力される。続いて、R[N-1]とL[N-1]は復号変換手段20
1bに入力され、K1、K2およびG[N-1]を用いて、2回目の
復号変換が行われ、32ビット値R[N-2]と32ビット値L[N-
2]が出力される。以上のような復号変換をN回繰り返
し、最終的な出力値である32ビット値R[0]と32ビット値
L[0]を結合することで、64ビットの平文104を得る。こ
こで、(N+1-i)回目(N≧i≧1)の復号変換を、復号変換
[i]と呼ぶ。また、復号変換の総繰り返し数Nを、暗号変
換の場合と同様に、ラウンド数と呼ぶものとする。First, the ciphertext 104 has an upper 32 bit value R [N].
And the lower 32-bit value L [N],
, And the first decoding conversion is performed using K1, K2, and G [N], and a 32-bit value R [N-1] and a 32-bit value L [N-1] are output. Subsequently, R [N-1] and L [N-1] are used for decoding / conversion means 20.
1b, a second decoding conversion is performed using K1, K2 and G [N-1], and a 32-bit value R [N-2] and a 32-bit value L [N-
2] is output. The decoding conversion as described above is repeated N times, and the final output value, a 32-bit value R [0] and a 32-bit value
By combining L [0], a 64-bit plaintext 104 is obtained. Here, the (N + 1-i) -th (N ≧ i ≧ 1) decoding conversion is performed
Call it [i]. Further, the total number of repetitions N of decryption conversion is referred to as the number of rounds as in the case of encryption conversion.
【0029】図5は、復号変換[i]を行う復号変換手段6
01cのブロック図を示している。図5において、復号変
換手段601cは、701から706のビット列演算手段と、巡回
シフト数決定手段700から構成される。入力値L[i]およ
びR[i]は、301から306のビット列演算手段により、出力
値L[i-1]およびR[i-1]に変換される。巡回シフト数決定
手段700は、G[i]から、ビット列演算手段702で行う巡回
シフト演算のビットシフト数S1と、ビット列演算手段70
3で行う巡回シフト演算のビットシフト数S2と、ビット
列演算手段705で行う巡回シフト演算のビットシフト数S
3の値を決定する。ここで、1≦S1, S2, S3≦31である。FIG. 5 shows a decoding conversion means 6 for performing decoding conversion [i].
The block diagram of 01c is shown. In FIG. 5, the decoding / conversion means 601c includes bit string calculation means 701 to 706 and a cyclic shift number determination means 700. The input values L [i] and R [i] are converted into output values L [i-1] and R [i-1] by the bit string calculation means 301 to 306. The cyclic shift number determining means 700 calculates the bit shift number S1 of the cyclic shift operation performed by the bit string calculating means 702 and the bit string calculating means 70 from G [i].
The number of bit shifts S2 of the cyclic shift operation performed in step 3 and the number of bit shifts S of the cyclic shift operation performed in the bit string operation unit 705
Determine the value of 3. Here, 1 ≦ S1, S2, and S3 ≦ 31.
【0030】以下、復号変換手段601cの復号変換処理を
順を追って説明していく。Hereinafter, the decoding conversion process of the decoding conversion means 601c will be described step by step.
【0031】(1)R[i]とK1の排他的論理和をとり、X1
とする。これは図5のビット列演算手段701が行う処理
である。(1) The exclusive OR of R [i] and K1 is calculated, and X1
And This is a process performed by the bit string operation unit 701 in FIG.
【0032】(2)巡回シフト数決定手段700の出力値S
1を用いて、X1をS1ビット左巡回シフトしたものと、X1
と1との32ビット加算をとり、X2とする。これは図5の
ビット列演算手段702が行う処理である。(2) Output value S of cyclic shift number determining means 700
X1 is shifted left by S1 bit using X1 and X1
And 32-bit addition of 1 and X2. This is a process performed by the bit string operation unit 702 in FIG.
【0033】(3)巡回シフト数決定手段700の出力値S
2を用いて、X2をS2ビット左巡回シフトしたものと、X2
との32ビット加算をとり、X3とする。これは図5のビッ
ト列演算手段703が行う処理である。(3) Output value S of cyclic shift number determining means 700
2, X2 is shifted left by S2 bits cyclically, and X2
And take 32-bit addition to obtain X3. This is a process performed by the bit string operation unit 703 in FIG.
【0034】(4)X3とK1の32ビット加算をとり、X4と
する。これは図5のビット列演算手段704が行う処理で
ある。(4) A 32-bit addition of X3 and K1 is performed to obtain X4. This is a process performed by the bit string operation unit 704 in FIG.
【0035】(5)巡回シフト数決定手段700の出力値S
3を用いて、X4をS3ビット左巡回シフトしたものと、X4
との32ビット加算をとり、X5とする。これは図5のビッ
ト列演算手段705が行う処理である。(5) Output value S of cyclic shift number determining means 700
3 using X3 left cyclically shifted S3 bits and X4
And take 32-bit addition to obtain X5. This is a process performed by the bit string operation unit 705 in FIG.
【0036】(6)X5とL[i]の32ビット減算をとったも
のを、R[i-1]とする。これは図5のビット列演算手段70
6が行う処理である。ここで、32ビット減算とは、通常
の減算結果を2の32乗で割った余りとするものである。(6) R [i-1] is obtained by subtracting 32 bits from X5 and L [i]. This corresponds to the bit string operation means 70 of FIG.
6 is the processing to be performed. Here, the 32-bit subtraction is a remainder obtained by dividing a normal subtraction result by 2 to the 32nd power.
【0037】(7)R[i]をL[i-1]とする。(7) Let R [i] be L [i-1].
【0038】以上説明した復号変換手段601cの各演算手
段、処理手段は、ハードウェアで構成できる。また、マ
イコンがソフトウェアで処理することもできる。Each of the arithmetic means and processing means of the decoding conversion means 601c described above can be constituted by hardware. Further, the microcomputer can perform the processing by software.
【0039】巡回シフト数決定手段700における、巡回
シフト数S1、S2、S3の決定方法は、図2の巡回シフト数
決定手段300と、同様の処理を行う。ここで、巡回シフ
ト数決定手段700では、図6の変換テーブル801を用い
る。変換テーブル801は、復号変換[i]における巡回シフ
ト数S1、S2、S3の値が、巡回シフト数決定手段300が用
いる、図3の変換テーブル401の暗号変換[i]における巡
回シフト数S1、S2、S3の値と等しくなるように設定す
る。したがって、変換テーブル401または801内の数値を
変更する場合は、もう一方の変換テーブル内の数値を、
上記の条件を満たすように変更する必要がある。また、
変換テーブル801内の数値は、変換テーブル401内の数値
と同様に、外部に漏洩しないように、秘密に保持してお
く必要がある。The cyclic shift number determining means 700 determines the cyclic shift numbers S1, S2, and S3 in the same manner as the cyclic shift number determining means 300 of FIG. Here, the cyclic shift number determining means 700 uses the conversion table 801 in FIG. In the conversion table 801, the values of the cyclic shift numbers S 1, S 2, and S 3 in the decryption conversion [i] are used by the cyclic shift number determination unit 300. Set to be equal to the values of S2 and S3. Therefore, when changing the numerical value in the conversion table 401 or 801, the numerical value in the other conversion table is
It is necessary to change to satisfy the above conditions. Also,
Like the numerical values in the conversion table 401, the numerical values in the conversion table 801 need to be kept secret so as not to leak outside.
【0040】上記説明では、G[i]は1ビットとしたの
で、復号変換手段601各々は、少なくとも入力されるG
[i]に対応する、変換テーブル801中の復号変換[i]に定
められた値を保持すればよい。これに限ることはなく、
復号変換手段601各々が変換テーブル801全体を保持して
同一構成とし、アルゴリズム決定手段が、iとG[i]を共
に指定しても良い。In the above description, since G [i] is 1 bit, each of the decoding / conversion means 601 outputs at least the input G
What is necessary is just to hold the value defined for the decoding conversion [i] in the conversion table 801 corresponding to [i]. It is not limited to this,
The decoding conversion means 601 may hold the entire conversion table 801 and have the same configuration, and the algorithm determination means may specify both i and G [i].
【0041】以上説明した復号変換装置606は、暗号変
換装置106との間で、同じデータ鍵とアルゴリズム番号
を共有すれば、暗号変換装置106が暗号化したデータを
復号化することができる。また、暗号変換装置106は、
同一構成の暗号変換手段を繰り返し作用することで実現
され、同様に、復号変換装置606は、同一構成の復号変
換手段を繰り返し作用することで実現される。したがっ
て、これらをハードウェアやソフトウェアで実装した場
合、同一モジュールを繰り返し使用することができるの
で、その規模を小さくすることが可能である。The decryption / conversion device 606 described above can decrypt the data encrypted by the encryption / conversion device 106 by sharing the same data key and algorithm number with the encryption / conversion device 106. Further, the cryptographic conversion device 106
The decryption / conversion device 606 is realized by repeatedly operating the decryption / conversion means having the same configuration. Therefore, when these are implemented by hardware or software, the same module can be used repeatedly, so that the scale can be reduced.
【0042】以上の説明におけるアルゴリズム決定手
段、暗号変換手段、復号変換手段、鍵生成手段は、ハー
ドウェアで構成することができるが、マイコンがソフト
ウェアで処理することも可能である。このとき、マイコ
ンのソフトウェアや、変換テーブル401、801はROM等記
憶手段に格納する。The algorithm determining means, encryption conversion means, decryption conversion means, and key generation means in the above description can be constituted by hardware, but can also be processed by a microcomputer by software. At this time, the software of the microcomputer and the conversion tables 401 and 801 are stored in a storage device such as a ROM.
【0043】次に、本発明による暗号通信方法の一実施
例について述べる。図7において、送信装置901と受信
装置902は、通信路920を介して接続されている。送信装
置901は、前述した暗号変換装置106に加えて、認証処理
手段903と、データ処理手段904と、秘密情報保持手段90
5とを備える。受信装置902は、前述した復号変換装置60
6に加えて、送信装置901と同様に、認証処理手段903
と、データ処理手段904と、秘密情報保持手段905とを備
える。ここで、送信装置901はたとえば、デジタル放送
受信装置が考えられる。また、受信装置902はたとえ
ば、デジタル録画装置が考えられる。また、データ処理
手段904は、デジタル放送サービスが送信する、MPE
G2−TS(Transport Stream)形式のようなデジタル
番組データの受信、多重分離、伸長、蓄積などを行う。Next, an embodiment of the encryption communication method according to the present invention will be described. In FIG. 7, a transmitting device 901 and a receiving device 902 are connected via a communication path 920. The transmitting device 901 includes an authentication processing unit 903, a data processing unit 904, and a secret information holding unit 90 in addition to the cipher conversion device 106 described above.
And 5. The receiving device 902 is provided with the decoding conversion device 60
6 as well as the transmitting device 901, the authentication processing means 903
, A data processing unit 904, and a secret information holding unit 905. Here, the transmitting device 901 may be, for example, a digital broadcast receiving device. The receiving device 902 may be, for example, a digital recording device. Further, the data processing means 904 transmits the MPE transmitted by the digital broadcast service.
It performs reception, demultiplexing, decompression, storage, and the like of digital program data in the G2-TS (Transport Stream) format.
【0044】送信装置901と受信装置902が通信路920を
介して接続すると、はじめに装置間で機器間認証が行わ
れる。ここで、機器間認証を行うために、送信装置901
と受信装置902は、予め鍵管理機関910からマスター鍵91
1を安全に取得しておく。ここで、鍵管理機関910はマス
ター鍵911を秘密情報管理手段913を用いて管理している
機関である。機器間認証は、送信装置901の認証処理手
段903と、受信装置902の認証処理手段903との間で、マ
スター鍵911を用いて行われる。機器間認証の詳細につ
いては後述する。When the transmitting device 901 and the receiving device 902 are connected via the communication path 920, first, device authentication is performed between the devices. Here, in order to perform inter-device authentication, the transmitting device 901
And the receiving device 902, in advance, the master key 91
Get 1 safely. Here, the key management organization 910 is an organization that manages the master key 911 using the secret information management means 913. The device authentication is performed using the master key 911 between the authentication processing unit 903 of the transmission device 901 and the authentication processing unit 903 of the reception device 902. Details of the authentication between devices will be described later.
【0045】送信装置901と受信装置902が、鍵管理機関
910からマスター鍵を取得する方法は、ICカードを用
いる。図7において、鍵管理機関910はICカード920と
921にマスター鍵を埋め込み、ICカード920を送信装置
901に配布し、ICカード921を受信装置902に配布す
る。それぞれの装置には、ICカードが装置に挿入され
ることで、マスター鍵911が秘密情報保持手段905に保持
される。ここで、ICカード内に埋め込まれた情報は、
正当な方法を用いない限り取り出せないものとする。ま
た、送信装置901の秘密情報保持手段905はICカード92
0内部に含まれる構成でもよい。同様に、受信装置902の
秘密情報保持手段905はICカード921内部に含まれる構
成でもよい。送信装置901と受信装置902が、鍵管理機関
910からマスター鍵を取得する他の方法として、無線、
有線いずれかの安全な通信路を介して、送信装置901と
受信装置902が、鍵管理機関910からマスター鍵911を取
得してもよい。あるいは、送信装置901と受信装置902の
製作時にマスター鍵911を秘密情報保持手段905中のROM
などに記録しておいてもよい。The transmitting device 901 and the receiving device 902 are key management organizations.
A method of obtaining a master key from the 910 uses an IC card. In FIG. 7, the key management organization 910 communicates with the IC card 920.
Embedding master key in 921 and sending IC card 920
901 and the IC card 921 to the receiving device 902. In each device, the master key 911 is held in the secret information holding means 905 by inserting an IC card into the device. Here, the information embedded in the IC card is
It cannot be taken out unless a legitimate method is used. The secret information holding means 905 of the transmitting device 901
The configuration included in 0 may be included. Similarly, the secret information holding means 905 of the receiving device 902 may be configured to be included in the IC card 921. The transmitting device 901 and the receiving device 902 are key management organizations.
Other ways to obtain a master key from the 910 include wireless,
The transmitting device 901 and the receiving device 902 may obtain the master key 911 from the key management organization 910 via a secure communication path of any of wired. Alternatively, the master key 911 is stored in the ROM in the secret information holding unit 905 when the transmitting device 901 and the receiving device 902 are manufactured.
It may be recorded in such as.
【0046】機器間認証が成功した後、送信装置901と
受信装置902はデータ鍵102とアルゴリズム番号103の共
有を行う。データ鍵102とアルゴリズム番号103は、認証
処理手段903で生成される。詳細については後述する。
データ鍵102とアルゴリズム番号103を共有すると、送信
装置901は、データ鍵102とアルゴリズム番号103を用い
て、データ処理手段904から出力されるデータを、暗号
変換装置106で順次暗号化していき、通信路920に暗号デ
ータを流す。受信装置902は、通信路920から暗号データ
を順次受け取り、データ鍵102とアルゴリズム番号103を
用いて、復号変換装置で復号化し元のデータ得て、デー
タ処理手段904に入力する。After the inter-device authentication has succeeded, the transmitting device 901 and the receiving device 902 share the data key 102 and the algorithm number 103. The data key 102 and the algorithm number 103 are generated by the authentication processing unit 903. Details will be described later.
When the data key 102 and the algorithm number 103 are shared, the transmitting device 901 uses the data key 102 and the algorithm number 103 to sequentially encrypt the data output from the data The encrypted data is sent to the road 920. The receiving device 902 sequentially receives the encrypted data from the communication path 920, decrypts the data using the data key 102 and the algorithm number 103 with the decryption / conversion device, obtains the original data, and inputs the data to the data processing unit 904.
【0047】認証処理手段903で生成される、アルゴリ
ズム番号103は図8に示すように、世代番号912とバージ
ョン番号931から構成される。世代番号912は、アルゴリ
ズムの世代を表す。バージョン番号931は、各世代に属
するアルゴリズムを識別する番号である。アルゴリズム
番号103の長さをNビットとすると、世代番号912のビッ
ト長Mは、0<M<Nを満たす。また、バージョン番号931
の長さは、(N-M)ビットである。世代番号912は、マスタ
ー鍵911と同様に、鍵管理機関910が秘密情報管理手段91
3を用いて管理している。送信装置901は、予め鍵管理機
関910から世代番号912を受け取り、秘密情報保持手段90
5に保持しておく。送信装置901が保持している世代番号
912は、機器間認証後に受信装置902と共有される。バー
ジョン番号931は、機器間認証後に認証処理手段903で生
成される。The algorithm number 103 generated by the authentication processing means 903 is composed of a generation number 912 and a version number 931 as shown in FIG. The generation number 912 indicates the generation of the algorithm. The version number 931 is a number for identifying an algorithm belonging to each generation. Assuming that the length of the algorithm number 103 is N bits, the bit length M of the generation number 912 satisfies 0 <M <N. Also, version number 931
Has a length of (NM) bits. The generation number 912 is, as with the master key 911, the key
It is managed using 3. The transmitting device 901 receives the generation number 912 from the key management organization 910 in advance, and
Keep at 5. Generation number held by transmitting device 901
912 is shared with the receiving device 902 after device authentication. The version number 931 is generated by the authentication processing unit 903 after device authentication.
【0048】送信装置901が、鍵管理機関910から世代番
号912を取得する方法は、前述したマスター鍵913の場合
と同様に、ICカードを用いる。図7において、鍵管理
機関910はICカード920に世代番号912を埋め込み、I
Cカード920を送信装置901に配布する。送信装置901に
はICカード920を挿入されることで、世代番号912が秘
密情報保持手段905に保持される。送信装置901が、鍵管
理機関910から世代番号912を取得する他の方法として、
無線、有線いずれかの安全な通信路を介して、送信装置
901が、鍵管理機関910から世代番号912を取得してもよ
い。あるいは、送信装置901の製作時に世代番号912を秘
密情報保持手段905中のROM等に記録しておいてもよい。The transmission device 901 obtains the generation number 912 from the key management organization 910 by using an IC card as in the case of the master key 913 described above. In FIG. 7, a key management organization 910 embeds a generation number 912 in an IC card 920,
The C card 920 is distributed to the transmitting device 901. When the IC card 920 is inserted into the transmission device 901, the generation number 912 is held in the secret information holding unit 905. As another method for the transmission device 901 to obtain the generation number 912 from the key management organization 910,
A transmission device via a wireless or wired secure communication path
The 901 may obtain the generation number 912 from the key management organization 910. Alternatively, the generation number 912 may be recorded in a ROM or the like in the secret information holding unit 905 when the transmission device 901 is manufactured.
【0049】マスター鍵913と、世代番号912は、同一ま
たは別々のICカード920に記録しても良いし、上述の安
全な通信路を介して配付する方法と組み合わせ、別々に
配付しても良い。The master key 913 and the generation number 912 may be recorded on the same or different IC cards 920, or may be distributed separately in combination with the method of distributing via a secure communication path described above. .
【0050】図9は、送信装置901の認証処理手段903と
受信装置902の認証処理手段903の間で行われる、機器間
認証および、データ鍵102とアルゴリズム番号103の共有
のフローを示している。以下、各処理を順を追って説明
していく。ここで、図9で用いられる機器間認証方法
は、ISO/IEC 9798-2で国際規格として定められているメ
カニズムである。FIG. 9 shows a flow of inter-device authentication and sharing of the data key 102 and the algorithm number 103 performed between the authentication processing means 903 of the transmitting device 901 and the authentication processing means 903 of the receiving device 902. . Hereinafter, each process will be described in order. Here, the inter-device authentication method used in FIG. 9 is a mechanism defined as an international standard in ISO / IEC 9798-2.
【0051】(1)受信装置902は、乱数データNbを生
成し、送信装置901に送る。これは図9の処理番号1101に
対応する。(1) The receiving device 902 generates random number data Nb and sends it to the transmitting device 901. This corresponds to the process number 1101 in FIG.
【0052】(2)送信装置901は、乱数データNaを生
成する。これは図9の処理番号1102に対応する。(2) The transmitting device 901 generates random number data Na. This corresponds to the process number 1102 in FIG.
【0053】(3)送信装置901は、マスター鍵911(Km)
を用いて、乱数データNaとNbを任意の共通鍵暗号方式で
暗号化したものをレスポンスRabとして、乱数データNa
と共に、受信装置902に送る。これは図9の処理番号1103
に対応する。レスポンスRabは以下のように計算され
る。(3) The transmitting device 901 transmits the master key 911 (Km)
The random number data Na and Nb are encrypted by an arbitrary common key cryptosystem as a response Rab using the random number data Na
At the same time, it is sent to the receiving device 902. This is the process number 1103 in FIG.
Corresponding to Response Rab is calculated as follows.
【0054】Rab = E(Km, Na||Nb) ここで、演算A||Bは、ビット列Aとビット列Bを結合する
ことを表す。また、関数E(K, X)は任意の共通鍵暗号関
数であり、鍵Kを用いてデータXを暗号化することを表
す。Rab = E (Km, Na || Nb) Here, the operation A || B indicates that the bit sequence A and the bit sequence B are combined. The function E (K, X) is an arbitrary common key encryption function, and indicates that data X is encrypted using the key K.
【0055】(4)受信装置902は、マスター鍵911(Km)
を用いて、送信装置901から受け取ったレスポンスRabを
正しく復号化できることを確認する。正しく復号化でき
れば、受信装置902は送信装置901を認証する。これは図
9の処理番号1104に対応する。(4) The receiving device 902 receives the master key 911 (Km)
To confirm that the response Rab received from the transmitting device 901 can be correctly decoded. If decoding is successful, the receiving device 902 authenticates the transmitting device 901. This is the figure
This corresponds to the processing number 1104 of No. 9.
【0056】(5)受信装置902は、マスター鍵911(Km)
を用いて、乱数データNaとNbを任意の共通鍵暗号方式で
暗号化したものをレスポンスRbaとして、送信装置901に
送る。これは図9の処理番号1105に対応する。レスポン
スRbaは以下のように計算される。(5) The receiving device 902 sends the master key 911 (Km)
Is transmitted to the transmitting apparatus 901 as a response Rba obtained by encrypting the random number data Na and Nb by an arbitrary common key encryption method. This corresponds to the process number 1105 in FIG. Response Rba is calculated as follows.
【0057】Rba = E(Km, Nb||Na) (6)送信装置901は、マスター鍵911(Km)を用いて、受
信装置902から受け取ったレスポンスRbaを正しく復号化
できることを確認する。正しく復号化できれば、送信装
置901は受信装置902を認証する。これは図9の処理番号1
106に対応する。Rba = E (Km, Nb || Na) (6) The transmitting device 901 confirms that the response Rba received from the receiving device 902 can be correctly decrypted using the master key 911 (Km). If decoding is successful, the transmitting device 901 authenticates the receiving device 902. This is the processing number 1 in FIG.
Corresponds to 106.
【0058】(7)送信装置901は、共有鍵Kabをランダ
ムに生成し、マスター鍵911(Km)を用いて任意の共通鍵
暗号方式で暗号化した値Xを受信装置902に送る。これは
図9の処理番号1107に対応する。(7) The transmitting device 901 randomly generates a shared key Kab, and sends a value X encrypted by an arbitrary common key cryptosystem using the master key 911 (Km) to the receiving device 902. This corresponds to the process number 1107 in FIG.
【0059】(8)受信装置902は、Xをマスター鍵911
(Km)を用いて復号化し、共通鍵Kabを得る。これは図9の
処理番号1108に対応する。ここで、Kabの値は、送信装
置901と受信装置902の通信が終わるまで、それぞれが秘
密に保持しておく。(8) The receiving device 902 sets X to the master key 911
(Km) to obtain a common key Kab. This corresponds to the process number 1108 in FIG. Here, the Kab values are kept secret until the communication between the transmitting device 901 and the receiving device 902 ends.
【0060】(9)送信装置901は、世代番号912を受信
装置901に送る。世代番号912は、共有鍵Kabを用いて、
任意の共通鍵暗号方式で暗号化して送ってもよい。これ
は図9の処理番号1109に対応する。(9) The transmitting device 901 sends the generation number 912 to the receiving device 901. The generation number 912 uses the shared key Kab,
The message may be transmitted after being encrypted by an arbitrary common key cryptosystem. This corresponds to the process number 1109 in FIG.
【0061】(10)受信装置902は、世代番号913を受け
取る。世代番号が暗号化されている場合は、共有鍵Kab
を用いて復号化する。これは図9の処理番号1110に対応
する。(10) The receiving device 902 receives the generation number 913. If the generation number is encrypted, the shared key Kab
And decrypt it. This corresponds to the process number 1110 in FIG.
【0062】(11)送信装置901は、データ鍵102とアル
ゴリズム番号103を生成するための乱数データSeedを生
成し、受信装置902に送る。これは図9の処理番号1111に
対応する。(11) The transmitting device 901 generates random number data Seed for generating the data key 102 and the algorithm number 103, and sends it to the receiving device 902. This corresponds to the process number 1111 in FIG.
【0063】(12)送信装置901と受信装置902は、共有
鍵Kabと、乱数データSeedを用いて、データ鍵102(Kd)を
生成する。これは図9の処理番号1112に対応する。Kdは
以下のように計算される。(12) The transmitting device 901 and the receiving device 902 generate the data key 102 (Kd) using the shared key Kab and the random number data Seed. This corresponds to the process number 1112 in FIG. Kd is calculated as follows.
【0064】Kd = H(Kab||Seed) ここで、関数H(X)はハッシュ関数である。ハッシュ関数
とは、任意長のデータを固定長のデータに圧縮する非可
逆的な関数であり、デジタル署名や認証などの目的で広
く用いられる。Kd = H (Kab || Seed) Here, the function H (X) is a hash function. The hash function is an irreversible function for compressing arbitrary-length data into fixed-length data, and is widely used for purposes such as digital signatures and authentication.
【0065】(13)送信装置901と受信装置902は、アル
ゴリズム番号103を生成する。これは図9の処理番号1113
に対応する。アルゴリズム番号103は、図10に示すよう
に、データ鍵102の下位(N-M)ビットをバージョン番号93
1とし、世代番号912と結合することで生成する。あるい
は、図11に示すように、乱数データSeedの下位(N-M)ビ
ットをバージョン番号931とし、世代番号912と結合する
ことで生成してもよい。(13) The transmitting device 901 and the receiving device 902 generate the algorithm number 103. This is the process number 1113 in FIG.
Corresponding to As shown in FIG. 10, the algorithm number 103 sets the lower (NM) bit of the data key 102 to the version number 93.
Generated by setting it to 1 and combining it with the generation number 912. Alternatively, as shown in FIG. 11, the lower-order (NM) bits of the random number data Seed may be set to the version number 931 and combined with the generation number 912.
【0066】本発明による暗号通信方法は、データ鍵10
2とアルゴリズム番号103を、暗号通信中に定期的に更新
することで安全性を高めることが可能になる。これは、
図9の処理番号1111から処理番号1113を再実行していく
ことで実現される。本発明の一適用例であるデジタルデ
ータの転送においては、この再実行の頻度は限定される
ものではなく、コンテンツごとにこの再実行を行っても
よいし、一つのコンテンツ中に再実行を行ってもよい。
ここで、乱数データSeedは、毎回異なる値を用いるもの
とする。このとき、アルゴリズム番号103は、バージョ
ン番号931が変わることで更新されていく(世代番号912
は変化しない)。これによって、通信路に流れる暗号デ
ータの変換に用いたデータ鍵102とアルゴリズムが、順
次変化していくので、第三者による暗号文解読攻撃が非
常に困難になる。The cryptographic communication method according to the present invention uses the data key 10
2 and the algorithm number 103 are updated periodically during the encryption communication, so that the security can be improved. this is,
This is realized by re-executing the process numbers 1111 to 1113 in FIG. In the transfer of digital data, which is one application example of the present invention, the frequency of the re-execution is not limited, and the re-execution may be performed for each content, or the re-execution may be performed in one content. You may.
Here, the random number data Seed uses a different value every time. At this time, the algorithm number 103 is updated by changing the version number 931 (generation number 912).
Does not change). As a result, the data key 102 and the algorithm used for converting the encrypted data flowing through the communication path are sequentially changed, which makes it very difficult for a third party to attack a ciphertext.
【0067】また、本発明による暗号通信方法において
は、鍵管理機関910が世代番号912を更新し、送信装置90
1は管理機関910から更新された世代番号912を取得する
ことで、暗号通信システムを更新することも可能であ
る。送信装置901が世代番号912を更新した後は、送信装
置901と受信装置902の間で、以前とは異なるアルゴリズ
ム番号103が生成されるようになり、新しいアルゴリズ
ムを用いて暗号通信を行うようになる。このため、以前
使用していたアルゴリズムの詳細が外部に漏洩してしま
ったとしても、世代番号912を更新することで、漏洩し
たアルゴリズムを使用しないようにすることができる。
世代番号912の更新の方法は、上述したような、世代番
号912の配付方法を使うことが可能である。たとえば、
鍵管理機関910が更新された世代番号を埋め込んだIC
カードを、送信装置901に再配布すればよい。あるい
は、安全な通信路を介して、送信装置901が、鍵管理機
関910から、更新された世代番号912を取得してもよい。
あるいは、新しい送信装置の製作時に、更新した世代番
号を埋め込むようにしてもよい。In the encryption communication method according to the present invention, the key management agency 910 updates the generation number 912 and
1 can also update the cryptographic communication system by obtaining the updated generation number 912 from the management organization 910. After the transmitting device 901 updates the generation number 912, an algorithm number 103 different from the previous one is generated between the transmitting device 901 and the receiving device 902, and the encrypted communication is performed using the new algorithm. Become. Therefore, even if the details of the previously used algorithm have been leaked to the outside, the leaked algorithm can be prevented from being used by updating the generation number 912.
As a method of updating the generation number 912, the distribution method of the generation number 912 as described above can be used. For example,
IC in which key management organization 910 embeds updated generation number
The card may be redistributed to the transmitting device 901. Alternatively, the transmission device 901 may acquire the updated generation number 912 from the key management organization 910 via a secure communication channel.
Alternatively, the updated generation number may be embedded when a new transmission device is manufactured.
【0068】なお、以上の説明における安全な通信路と
は、暗号化された有線通信路でもよいし、暗号化された
無線通信路でも良い。The secure communication path in the above description may be an encrypted wired communication path or an encrypted wireless communication path.
【0069】[0069]
【発明の効果】本発明によれば、暗号変換のアルゴリズ
ムを更新することで、第三者の暗号解読攻撃に対して非
常に強い暗号変換装置、復号変換装置および暗号通信方
法を実現することができる。According to the present invention, it is possible to realize a cryptographic conversion device, a decryption conversion device, and a cryptographic communication method that are extremely resistant to a third-party cryptanalysis attack by updating a cryptographic conversion algorithm. it can.
【図1】本発明による暗号変換装置の一実施例を示すブ
ロック図である。FIG. 1 is a block diagram showing an embodiment of a cryptographic conversion device according to the present invention.
【図2】図1における、暗号変換手段のブロック図であ
る。FIG. 2 is a block diagram of a cipher conversion unit in FIG.
【図3】図2における、巡回シフト数決定手段で用いる
変換テーブルである。FIG. 3 is a conversion table used in a cyclic shift number determination unit in FIG. 2;
【図4】本発明による復号変換装置の一実施例を示すブ
ロック図である。FIG. 4 is a block diagram showing an embodiment of a decoding conversion apparatus according to the present invention.
【図5】図4における、復号変換手段のブロック図であ
る。FIG. 5 is a block diagram of a decoding conversion unit in FIG. 4;
【図6】図5における、巡回シフト数決定手段で用いる
変換テーブルである。FIG. 6 is a conversion table used by a cyclic shift number determination unit in FIG. 5;
【図7】本発明による暗号通信方法の一実施例を示すブ
ロック図である。FIG. 7 is a block diagram showing an embodiment of an encryption communication method according to the present invention.
【図8】アルゴリズム番号の構成図である。FIG. 8 is a configuration diagram of an algorithm number.
【図9】機器間認証およびデータ鍵とアルゴリズム番号
の共有のフロー図である。FIG. 9 is a flowchart of authentication between devices and sharing of a data key and an algorithm number.
【図10】アルゴリズム番号の生成方法を示す概念図(そ
の1)である。FIG. 10 is a conceptual diagram (part 1) illustrating a method of generating an algorithm number.
【図11】アルゴリズム番号の生成方法を示す概念図(そ
の2)である。FIG. 11 is a conceptual diagram (part 2) illustrating a method of generating an algorithm number.
101・・・平文、 102・・・データ鍵、 103・・・アルゴリズム番号、 104・・・暗号文、 106・・・暗号変換装置、 201a, 201b, 201c, 201d・・・暗号変換手段、 202・・・アルゴリズム決定手段、 203・・・鍵生成手段。 101: plaintext, 102: data key, 103: algorithm number, 104: ciphertext, 106: cryptographic conversion device, 201a, 201b, 201c, 201d: cryptographic conversion means, 202 ... Algorithm determination means, 203 ... Key generation means.
───────────────────────────────────────────────────── フロントページの続き (72)発明者 桑原 禎司 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マルチメディアシステム 開発本部内 (72)発明者 佐々本 学 神奈川県横浜市戸塚区吉田町292番地 株 式会社日立製作所マルチメディアシステム 開発本部内 ──────────────────────────────────────────────────続 き Continuing on the front page (72) Inventor Sada Kuwahara 292 Yoshida-cho, Totsuka-ku, Yokohama-shi, Kanagawa Prefecture Inside the Multimedia System Development Division of Hitachi, Ltd. 292, Hitachi, Ltd. Multimedia System Development Division, Hitachi, Ltd.
Claims (13)
を出力する、暗号変換方法であって、 換字転置混合変換を行う第1の変換手段を2個以上備
え、前記平文データに、各々の前記第1の変換手段を作
用させていくことで、前記平文データに対応する、暗号
文データを出力し、 ビット列を左あるいは右に巡回シフトする巡回シフト演
算を含む換字転置混合変換を行う第2の変換手段を、各
々の前記第1の変換手段内に、1個以上の同一個数備
え、 全ての前記第2の変換手段で用いられる、巡回シフト演
算の巡回シフト数を、変換データに非依存の第1のデー
タ、もしくは前記第1のデータを変換して得られるデー
タを参照することで決定する、第1の決定手段を備える
ことを特徴とする、暗号変換方法および装置。1. A cipher conversion method for inputting a first key and plaintext data and outputting a ciphertext, comprising: two or more first conversion means for performing substitution transposition mixed conversion; The first transposing means operates to output ciphertext data corresponding to the plaintext data, and includes a transposition mixed conversion including a cyclic shift operation for cyclically shifting a bit sequence left or right. Is provided in each of the first conversion means, and the number of the cyclic shifts of the cyclic shift operation used in all of the second conversion means is converted. An encryption conversion method and apparatus, comprising: first determination means for determining by referring to data-independent first data or data obtained by converting the first data.
を出力する、復号変換方法であって、 換字転置混合変換を行う第3の変換手段を2個以上備
え、前記暗号文データに、各々の前記第3の変換手段を
作用させていくことで、前記暗号文データに対応する、
平文データを出力し、 ビット列を左あるいは右に巡回シフトする巡回シフト演
算を含む換字転置混合変換を行う第4の変換手段を、各
々の前記第3の変換手段内に、1個以上の同一個数備
え、 全ての前記第4の変換手段で用いられる、巡回シフト演
算の巡回シフト数を、変換データに非依存の第2のデー
タ、もしくは前記第2のデータを変換して得られるデー
タを参照することで決定する、第2の決定手段を備える
ことを特徴とする、復号変換方法および装置。2. A decryption conversion method for inputting a second key and ciphertext data and outputting a plaintext, comprising: two or more third conversion means for performing substitution transposition mixed conversion; By causing each of the third conversion means to act on the data, it corresponds to the ciphertext data.
A fourth conversion means for outputting plaintext data and performing a permutation transposition mixed conversion including a cyclic shift operation for cyclically shifting a bit string to the left or right is provided in each of the third conversion means by one or more identical conversion means. The number of cyclic shifts of the cyclic shift operation used in all of the fourth conversion means is referred to second data independent of converted data or data obtained by converting the second data. A decoding conversion method and apparatus, comprising: a second determination unit for determining the decoding conversion.
る暗号文データを送信する送信装置と、前記暗号データ
を受信して復号化することで、元の前記第3のデータを
得る受信装置が行う暗号通信方法において、 前記送信装置は、 秘密情報を管理する管理機関から、第1の秘密情報と、
第2の秘密情報を取得し、 前記第1の秘密情報を基に前記第1の鍵を設定し、前記
第2の秘密情報を基に第1のデータを設定し、 前記第1の鍵と、前記第1のデータを用いて、前記第3
のデータを暗号化して送信し、 前記受信装置は、 秘密情報を管理する管理機関から、前記第1の秘密情報
を取得し、 前記第2の秘密情報を、前記送信装置から取得し、 前記第1の秘密情報を基に第2の鍵を設定し、前記第2
の秘密情報を基に第2のデータを設定し、 前記第2の鍵と、前記第2のデータを用いて、前記暗号
化された第3のデータを復号化することを特徴とする暗
号通信方法。3. A transmitting device for encrypting third data and transmitting the encrypted data obtained as a result, and receiving and decrypting the encrypted data to obtain the original third data In the cryptographic communication method performed by the device, the transmitting device is provided with first secret information from a management organization that manages the secret information;
Acquiring second secret information; setting the first key based on the first secret information; setting first data based on the second secret information; , The third data using the first data.
The receiving device obtains the first secret information from a management organization that manages the secret information, obtains the second secret information from the transmitting device, and obtains the second secret information from the transmitting device. Setting a second key based on the secret information of
Setting the second data based on the secret information, and decrypting the encrypted third data using the second key and the second data. Method.
鍵と前記第1のデータ、さらに前記第2の鍵と前記第2
のデータとを設定するステップを再実行し、前記第1の
鍵と、前記第1のデータと、前記第2の鍵と、前記第2
のデータとを更新することを特徴とする暗号通信方法。4. The cryptographic communication method according to claim 3, wherein said transmitting device and said receiving device each include said first key and said first data, and further said second key and said second data.
Re-executing the step of setting the first key, the first data, the second key, and the second key.
An encrypted communication method comprising:
いて、 前記送信装置と前記受信装置は、おのおの、前記第1の
鍵と前記第2の鍵、または前記第1のデータと前記第2
のデータとを、同一値に設定することを特徴とする暗号
通信方法。5. The cryptographic communication method according to claim 3, wherein the transmitting device and the receiving device each include the first key and the second key, or the first data and the second data.
And the same data is set to the same value.
と、前記第1の鍵の一部から生成し、前記第2のデータ
を、前記第2の秘密情報と、前記第2の鍵の一部から生
成することを特徴とする請求項3記載の暗号通信方法。6. The method according to claim 1, wherein the first data is generated from the second secret information and a part of the first key, and the second data is generated from the second secret information and the second secret information. 4. The method according to claim 3, wherein the key is generated from a part of the key.
と、前記第1の鍵を生成するために使用する乱数データ
の一部から生成し、前記第2のデータを、前記第2の秘
密情報と、前記第2の鍵を生成するために使用する乱数
データの一部から生成することを特徴とする請求項3記
載の暗号通信方法。7. The method according to claim 7, wherein the first data is generated from the second secret information and a part of random number data used to generate the first key, and the second data is generated by the second data. The cryptographic communication method according to claim 3, wherein the secret information is generated from part of random number data used to generate the second secret information and the second key.
情報を取得する手段と、 前記第1の秘密情報と、前記第2の秘密情報を保持する
手段と、 前記第1の秘密情報を基に前記第1の鍵を設定し、前記
第2の秘密情報を基に前記第1のデータを設定する手段
と、 前記第1の鍵と、前記第1のデータを用いて、第3のデ
ータを暗号化して送信する手段とを備える暗号通信に用
いる送信装置。8. A means for acquiring first secret information and second secret information from the outside; a means for holding the first secret information; a means for holding the second secret information; Means for setting the first key based on secret information and setting the first data based on the second secret information; using the first key and the first data, Means for encrypting the third data and transmitting the encrypted data.
と、 前記第2の秘密情報を、送信装置から取得する手段と、 前記第1の秘密情報を基に第2の鍵を設定し、前記第2
の秘密情報を基に第2のデータを設定する手段と、 第2の鍵と、前記第2のデータを用いて、暗号化された
第3のデータを復号化する手段とを備える暗号通信に用
いる受信装置。9. A means for acquiring first secret information from outside, a means for acquiring the second secret information from a transmitting device, and setting a second key based on the first secret information And the second
Setting means for setting second data based on the confidential information, a second key, and means for decrypting encrypted third data using the second data. Receiver used.
持する手段と、 前記第1の秘密情報と、前記第2の秘密情報を媒体を介
して、請求項8記載の送信装置に配付する手段とを備え
た管理装置。10. The transmitting device according to claim 8, wherein said first secret information and said second secret information are stored in a medium for holding first secret information and second secret information. And a means for distributing to a management device.
求項9記載の受信装置に配付する手段を備えた、請求項
10記載の管理装置。11. The management apparatus according to claim 10, further comprising means for distributing said first secret information via a medium to the reception apparatus according to claim 9.
用いる媒体であって、少なくとも前記第1の秘密情報を
請求項8記載の送信装置、または請求項9記載の受信装
置へ配付することを特徴とする媒体。12. A medium used by the management device according to claim 10 or 11, wherein at least the first secret information is distributed to the transmission device according to claim 8 or the reception device according to claim 9. A medium characterized by the above.
徴とする請求項13記載の媒体。13. The medium according to claim 13, wherein said medium is an IC card.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10024200A JPH11224048A (en) | 1998-02-05 | 1998-02-05 | Encryption conversion device, decryption conversion device, and encryption communication method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10024200A JPH11224048A (en) | 1998-02-05 | 1998-02-05 | Encryption conversion device, decryption conversion device, and encryption communication method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11224048A true JPH11224048A (en) | 1999-08-17 |
Family
ID=12131689
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10024200A Pending JPH11224048A (en) | 1998-02-05 | 1998-02-05 | Encryption conversion device, decryption conversion device, and encryption communication method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH11224048A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010245897A (en) * | 2009-04-07 | 2010-10-28 | Nippon Hoso Kyokai <Nhk> | Emergency information transmitter and receiver for digital terrestrial television broadcasting |
-
1998
- 1998-02-05 JP JP10024200A patent/JPH11224048A/en active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010245897A (en) * | 2009-04-07 | 2010-10-28 | Nippon Hoso Kyokai <Nhk> | Emergency information transmitter and receiver for digital terrestrial television broadcasting |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6504930B2 (en) | Encryption and decryption method and apparatus using a work key which is generated by executing a decryption algorithm | |
| US8259934B2 (en) | Methods and devices for a chained encryption mode | |
| AU2003296887B2 (en) | Efficient encryption and authentication for data processing systems | |
| JP3901909B2 (en) | ENCRYPTION DEVICE AND RECORDING MEDIUM CONTAINING PROGRAM | |
| US7254232B2 (en) | Method and system for selecting encryption keys from a plurality of encryption keys | |
| US6459792B2 (en) | Block cipher using key data merged with an intermediate block generated from a previous block | |
| US6640303B1 (en) | System and method for encryption using transparent keys | |
| US20030026430A1 (en) | Encrypting conversion apparatus, decrypting conversion apparatus, cryptographic communication system, and electronic toll collection apparatus | |
| WO2002017554A2 (en) | Parallel bock encryption method and modes for data confidentiality and integrity protection | |
| JPH08505275A (en) | Device and method for generating a cipher stream | |
| US20060034453A1 (en) | System and method for secure encryption | |
| US10148425B2 (en) | System and method for secure communications and data storage using multidimensional encryption | |
| Reyad et al. | Key-based enhancement of data encryption standard for text security | |
| US7783045B2 (en) | Secure approach to send data from one system to another | |
| KR100551992B1 (en) | Application data encryption and decryption method | |
| CN115378614A (en) | A data transmission method, device and electronic equipment | |
| KR20060011999A (en) | Encryption technique based on DES algorithm | |
| JPH0916678A (en) | Cryptographic communication device and cryptographic communication system | |
| JP4556252B2 (en) | IC card, in-vehicle device and roadside device used for encryption conversion device, decryption conversion device, encryption communication device and automatic fee collection system | |
| JPWO2006019152A1 (en) | Message authenticator generation device, message authenticator verification device, and message authenticator generation method | |
| JPH08204701A (en) | E-mail encryption communication system and encryption communication method | |
| KR100388059B1 (en) | Data encryption system and its method using asymmetric key encryption algorithm | |
| JPH11224048A (en) | Encryption conversion device, decryption conversion device, and encryption communication method | |
| JP2001016197A (en) | Self-synchronous stream cipher system and MAC generation method using the same | |
| JP3154991B2 (en) | Cryptographic processing device, cryptographic processing method, and storage medium storing cryptographic processing program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040601 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040730 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20041102 |