JPH11109853A - 暗号変換方法、暗号変換装置、復号方法、復号装置及びデータ通信システム - Google Patents
暗号変換方法、暗号変換装置、復号方法、復号装置及びデータ通信システムInfo
- Publication number
- JPH11109853A JPH11109853A JP10222636A JP22263698A JPH11109853A JP H11109853 A JPH11109853 A JP H11109853A JP 10222636 A JP10222636 A JP 10222636A JP 22263698 A JP22263698 A JP 22263698A JP H11109853 A JPH11109853 A JP H11109853A
- Authority
- JP
- Japan
- Prior art keywords
- data
- cyclic shift
- conversion
- key
- determining
- 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
Links
Abstract
御でき、簡単な構成で高度なランダム性を有する暗号変
換方法および装置を実現すること。 【解決手段】この暗号変換方法および装置を実現する構
成として、データを左あるいは右に固定ビットだけ循環
シフトする2個以上の異なる固定循環シフト処理手段
と、固定循環シフト処理手段を選択する循環シフト処理
選択手段とを備えており、シフト数選択順序を決定する
ためのデータに基づき循環シフト処理選択手段の選択順
序を決定するように構成している。
Description
報家電機器等の間で伝送されるデジタルデータの暗号・
復号技術に関するものである。
家電機器においては、デジタルデータの不正な複写を防
ぐための暗号化技術が必須になる。
環シフト演算を用いたアルゴリズムであるRC5暗号( R.
L. Rivest, "The RC5 encryption algorithm", FAST SO
FTWARE ENCRYPTION, 2nd International Workshop, Spr
inger-Verlag, 1995. )がある。RC5は処理データ長wビ
ット、秘密鍵長bバイト、及び処理ラウンド数rが可変
の暗号アルゴリズムである。以下、RC5のアルゴリズム
について説明する。
文と呼ぶ)に対して、処理データ長wビットの上位w/2ビ
ットをL[0]、下位w/2ビットをR[0]とすると、平文(L
[0],R[0])に対して以下の式で定義された暗号文(L[2r+
1],R[2r+1])を得る。 L[1] = L[0] + S[0] R[1] = R[0] + S[0] L[N+1] = R[N] (1≦N≦2r) R[N+1] = ((L[N] EOR R[N]) <<< R[N]) + S[N+1] (1≦N
≦2r) この関数の繰り返し部分(1≦N≦2r)のNについてを図示
すると図23のようになる。ここで定義されている演算表
記 A + B はAとBの加算結果を2のw乗で割った余りを表
しており、演算 EOR はビット毎の排他的論理和であ
る。また演算表記x <<< yは、xをyの下位log(w)ビット
だけ左に循環シフトする演算を表している。RC5は図23
に示した演算を2回繰り返したものを1段と呼び、これ
をr回繰り返して生成したものを暗号文とする方式であ
る。
者に合わせて可変であることと、循環シフトを動的に変
化させる構造であることが大きな特徴となっている。し
かし、循環シフトを動的に変化させる手段として変換デ
ータに依存したアルゴリズム構造となっており、暗号解
読法の一つである選択平文攻撃に対して弱いという欠点
がある( Lar R. Knudsen, Willi Meier, "Improved Dif
ferential Cryptanalysis on RC5", Advances in Crypt
ology -CRYPTO'96, Springer-Verlag, 1996. に詳しい
)。
るための暗号方式および装置を提案することにある。す
なわち、(1)変換データに依存せずに鍵から循環シフ
トを動的に制御でき、(2)簡単な構成で高度なランダ
ム性を有する暗号変換が可能である暗号方式および装置
を提供することを目的とする。
に、本発明の暗号方式および装置は、鍵と一定長の平文
データを入力し、一定長の暗号文データを出力するブロ
ック暗号であって、(1)データを左あるいは右に固定
ビットだけ循環シフトする2個以上の異なる固定循環シ
フト処理手段、(2)前記固定循環シフト処理手段を選
択する循環シフト処理選択手段、(3)シフト数選択順
序を決定するためのデータに基づき前記循環シフト処理
選択手段の選択順序を決定する循環シフト順序決定手段
を有している。
変換装置の構成を述べると、以下のようになる。
し、暗号文データを出力する暗号変換装置であって、シ
フト数選択順序を決定するためのデータに基づきシフト
数を決定する循環シフト処理手段を含み、入力された平
文をデータ1とデータ2に分割し、前記データ1をデー
タL[1]とし、前記データ2をデータR[1]とする手段を含
み、データL[N]とデータR[N]を入力とし、データL[N+1]
とデータR[N+1]を出力とする暗号変換処理手段であっ
て、前記データL[N]に対して前記鍵を用いた変換処理
と、前記循環シフト処理手段を用いた循環シフト処理
と、をそれぞれ1回以上行ってデータXを生成し、前記
データR[N]と前記データXとを演算して得られる値を前
記データL[N+1]とし、前記データL[N]を前記データR[N+
1]とする暗号変換処理手段を少なくとも1段以上含み、
最終段の2つの出力データを結合したものを暗号文とす
る手段を含むように構成されている。
るいは右に固定ビットだけ循環シフトする2個以上の異
なる固定循環シフト処理手段と、前記固定循環シフト処
理手段を選択する循環シフト処理選択手段と、前記シフ
ト数選択順序を決定するためのデータから前記循環シフ
ト処理選択手段の選択順序を決定する循環シフト順序決
定手段と、を含むように構成されている。
ためのデータは、前記鍵に基づいて生成してもよい。
なくとも1個の鍵と暗号文データを入力し、平文データ
を出力する復号変換装置であって、シフト数選択順序を
決定するためのデータに基づきシフト数を決定する循環
シフト処理手段を含み、入力された暗号文をデータ1と
データ2に分割し、前記データ1をデータL[1]とし、前
記データ2をデータR[1]とする手段を含み、データL[N]
とデータR[N]を入力とし、データL[N+1]とデータR[N+1]
を出力とする復号変換処理手段であって、前記データR
[N]に対して前記鍵を用いた変換処理と、前記循環シフ
ト処理手段を用いた循環シフト処理と、をそれぞれ1回
以上行ってデータXを生成し、前記データL[N]と前記デ
ータXとを演算して得られる値を前記データR[N+1]と
し、前記データR[N]を前記データL[N+1]とする復号変換
処理手段を少なくとも1段以上含み、最終段の2つの出
力データを結合したものを平文とする手段を含むように
構成されている。
るいは右に固定ビットだけ循環シフトする2個以上の異
なる固定循環シフト処理手段と、前記固定循環シフト処
理手段を選択する循環シフト処理選択手段と、前記シフ
ト数選択順序を決定するためのデータから前記循環シフ
ト処理選択手段の選択順序を決定する循環シフト順序決
定手段と、を含むように構成されている。
ためのデータは、前記鍵に基づいて生成してもよい。
明では、変換データに依存せずに循環シフトを動的に制
御でき、簡単な構成で高度なランダム性を有する暗号変
換及び復号変換が可能となる。
以下実施例を用いて詳細に説明する。
ある。64ビットの平文C101とワーク鍵KA102(32ビット)
とワーク鍵KB103(32ビット)と、ワーク鍵KG104(30ビッ
ト)が、暗号器106に入力され、暗号変換された後、64ビ
ットの暗号文M105が出力される。ワーク鍵KG104は暗号
器のアルゴリズムを決定するのでアルゴリズム鍵とも呼
ぶ。
す図である。入力された平文C101は上位32ビットL[1]と
下位32ビットR[1]に分離された後、変換部第1段201か
ら変換部第10段203までの暗号変換を繰り返し行い、最
後に上位32ビットのL[11]と下位32ビットのR[11]を結合
することで64ビットの暗号文M105が出力される。変換部
第N段202における変換処理は、ワーク鍵KA102とワーク
鍵KB103、およびワーク鍵KG104のKG{3N-1} ,KG{3N-2} ,
KG{3N-3} の3ビット値を入力として循環シフト数生成
部第N段205(ここでNは自然数)から出力される制御信
号G1, G2, G3によって定められる。ここで、KG{x}はKG
の第xビットを表わす。
の一例を示している。また、図4は図3の動作の説明図
であり、制御信号G1, G2, G3と循環シフト数Sとの関係
を示している。本例における暗号化は、データ自身を循
環シフトする転置処理と、他のデータとの論理演算およ
び算術演算をとる換字処理で実現されている。以下、図
3の処理内容を順を追って説明する。
とする。これは図3の処理番号301に対応する。 X1 = L[N] EOR KA ここで、演算表記 A EOR B はAとBの排他的論理和演算
を表し、以下、前記演算表記を同様の意味で用いるもの
とする。
ット出力値G1から図4にしたがって循環シフト数Sを定
め、X1をSビット左循環シフトしたものと、X1と1との
加算をとり、X2とする。これは図3の処理番号302に対
応する。 X2 = (X1 <<< S) + X1 + 1 ここで、演算表記 A <<< B はAを左方向にBビット循環
シフトすることを表しており、以下同様の意味で用い
る。また、演算表記A + Bは AとBの加算結果を2の32
乗で割った余りを表しており、以下同様の意味で用いる
ものとし、これを単に加算と呼ぶことにする。
ット出力値G2から図4にしたがって循環シフト数Sを定
め、X2をSビット左循環シフトしたものと、X2 との加
算をとり、X3とする。これは図3の処理番号303に対応
する。 X3 = (X2 <<< S) + X2 (4)X3とKBの加算をとり、X4とする。これは図3の処
理番号304に対応する X4 = X3 + KB (5)循環シフト数生成部第N段205の2ビット出力値G3
から図4にしたがって循環シフト数Sを定め、X4をSビ
ット左循環シフトしたものと、X4との加算をとり、X5と
する。これは図3の処理番号305に対応する。 X5 = (X4 <<< S) + X4 (6)X5とR[N]の加算をとったものを、変換部第N段202
の上位32ビット出力L[N+1]とする。これは図3の処理番
号306に対応する。
202の下位32ビット出力R[N+1]とする。これは図3の処
理番号307に対応する。 R[N+1] = L[N] 以上の暗号変換処理(1)から(5)までをまとめてF
(L[N], K, G)と書くと、変換部第N段202の処理は以下の
ように記述できる。 L[N+1] = R[N] + F(L[N], K, G) R[N+1] = L[N] 以上、本発明による暗号変換処理についてについて詳細
に述べた。
る。図5は、本実施例の変換部第N段202をハードウェア
に実装したときの回路図である。この回路は、レジスタ
601, 603, 611、加算器605、排他的論理和回路612、
2入力マルチプレクサ602, 607、3入力マルチ
プレクサ604, 606、および左2ビット循環シフト器60
8、左8ビット循環シフト器609、左14ビット巡回シフト
器610から成る。データ幅はすべて32ビットである。
ら306に相当するように、マルチプレクサ602, 604, 60
6, 607を制御することで、6サイクルで完了する。循環
シフト器のスイッチングを行うマルチプレクサ606は、
循環シフト数生成部第N段205から順次出力されるG1, G
2, G3によって制御される。
8ビット循環シフト器609を示したものであり、いずれ
も簡単なワイヤードロジックで実現可能である。
マルチプレクサ606の制御の説明図である。マルチプレ
クサは、左2ビット循環シフト器608、左8ビット循環
シフト器609、左14ビット循環シフト器610のそれぞれの
32ビット出力を入力データとし、2ビット制御入力G1,
G2, G3が順次入力されることで、3つの入力データから
一つを選択し、出力値とする。制御入力G1, G2, G3と出
力値の関係は図4に従う。マルチプレクサ606の制御入
力G1, G2, G3は、図7の循環シフト数生成回路701で計
算される(これは図2の循環シフト数生成部に対応す
る)。
て実現され、この順序回路は3つの内部状態Q0, Q1, Q2
をもち、同期信号に伴って、入力P0が0ならば、 Q0 → Q1 Q1 → Q2 Q2 → Q0 入力P0が1ならば、 Q0 → Q2 Q1 → Q0 Q2 → Q1 と状態が遷移していく、3進加算/減算カウンタで表せ
る。この順序回路の出力値は図7の循環シフト数生成回
路701の状態図に示す。
力P0 および初期値P1, P2に用いられる。ここで、 P0 = KG{3N-1} P1 = KG{3N-2} P2 = KG{3N-3} である。
しており、内部状態の初期値はLOAD信号がHighのとき図
8のように定められる。なお循環シフト数生成回路205
は簡単な回路で構成でき、図9に詳細な回路図を示す。
これは、当該技術者なら簡単に理解できる3進カウンタ
の構成である。
ット、8ビット、14ビットの左循環シフトを用いた転置
変換処理を換字変換処理と組み合わせることで、暗号変
換を行っており、各段における循環シフトのビット数
は、図2に示すように、アルゴリズム鍵KGから定まるG
1, G2, G3の値から図4のように決定される。各段のG1,
G2, G3はすべて異なる値を取るので、各段の循環シフト
演算の順序は3!=6通り考えられる。本実施例では10段の
変換部を持つので、循環シフト演算の順序が30ビットの
ワーク鍵KGによって、6の10乗通りの中から一意的に
定められことになり、高度なランダム性を有する暗号変
換といえる。
て、データ拡散の効果を検証する。図10および図11は本
実施例における循環シフトによるデータ拡散の効果を示
すためにワーク鍵KA, ワーク鍵KBを、 KA = KB = 0 初期データを、 L[1] = R[1] = 0 循環シフトの順序を、 としたときの変換処理過程を示している。
1)の、 X2 = (X1 <<< S) + X1 + 1 によって生じた第1ビットの1は循環シフトによって、
第2段目の変換4002(図10)および5002(図11)までで中位
のビットまで影響を与えていき、第3段目の変換4003
(図10)および5003(図11)ですべてのビットが拡散される
様子が分かる。また、図10(case 1)と図11(case 2)を比
較すると、まったく異なった値に変換されており、循環
シフトの順序を変えることがデータ拡散に効果があるこ
とが分かる。
暗号化されたデータを復号化する復号変換処理について
述べる。
す。64ビットの暗号文105とワーク鍵KA102(32ビット)と
ワーク鍵KB103(32ビット)と、ワーク鍵KG104(30ビット)
が、復号器401に入力され、復号変換された後、64ビッ
トの平文101が出力される。この復号器401は暗号文をも
との平文に戻す機能を持ち、暗号変換処理の変換部第N
段の処理が、 L[N+1] = R[N] + F(L[N], K, G) R[N+1] = L[N] で記述されるため、第N段目の復号変換処理は、 R[N] = L[N+1] - F(R[N+1], K, G) L[N] = R[N+1] となる。
を2の32乗で割った余りを表しており、以下同様の意
味で用いるものとし、これを単に減算と呼ぶことにす
る。したがって、復号器401は図3の加算回路306を減算
回路に変更し、入力として(R[N+1], L[N+1])、出力と
して(R[N], L[N])としたものを復号変換部第N段の処理
とし、これを10段繰り返すことで実現される。以上復号
変換処理について説明した。
換部は、ワーク鍵KG(シフト数選択順序を決定するため
のデータ)によって左2ビット、左8ビット、左14ビッ
トの3種類を選択する例を示したが、左または右にシフ
トするビット数、および循環シフト処理部の種類数を変
化させてもよい。ワーク鍵KGは予め設定され変化しない
ものでもよいし、ある期間毎に変更されるものでもよ
い。変化しない場合はワイヤードロジック等で固定して
おいても良い。たとえば、循環シフト変換部に左2ビッ
ト、左9ビット、左19ビットの3種類を選んでもよい。
特に左または右にシフトするビット数は図7に示したワ
イヤードロジックを変更すればよいので、回路規模を変
化されることなく実行できる。
およびワーク鍵KGは独立の鍵として説明したが、一個の
データ鍵KDから生成する構成としてもよい。図13にこの
一例を示す。この例では40ビットの基本鍵KD501から鍵
生成部502でKA, KB, KGを以下の方法にしたがって生成
している。 KA : KDの上位32ビットと下位32ビットとの加算をとっ
たものとする。 KB : KDの上位32ビットとする。 KG : KAの下位30ビットとする。
る例について図14を用いて説明する。
る。 L (32ビット): 暗号変換するデータ R (32ビット): 暗号変換するデータ KA (32ビット): ワーク鍵1KAのデータ KB (32ビット): ワーク鍵1KBのデータ KG (32ビット) : ワーク鍵2KGのデータ Q (8ビット) : 循環シフト生成部の内部状態値 N (8ビット) : カウンタ値 X (32ビット) : 作業用のデータ S (32ビット) : 作業用のデータ。
る。 (1)64ビットの平文Cを上位と下位32ビットデータに
分離し、それぞれL, Rに代入する。これは図14の処理番
号1001に対応する。 (2)カウンタ値Nを1にセットする。これは図14の処理
番号1002に対応する。 (3)循環シフト生成部の内部変数初期化ファンクショ
ンINIT(KG, N)の戻り値をQに代入する。これは図14の処
理番号1003に対応する。ここで、循環シフト生成部の内
部状態初期化ファンクションINIT(KG, N)は図15に示す
処理番号1101に従い、KG{3N-3}, KG{3N-2}の値から戻り
値が決定される。 (4)LとKAの排他的論理和をXに代入する。これは図14
の処理番号1004に対応する。 (5)循環シフトおよび加算ファンクションの戻り値S
= FUNC(X, KG, N, Q)と1との加算の結果をXに代入す
る。これは図14の処理番号1005に対応する。 (6)循環シフトおよび加算ファンクションの戻り値S
= FUNC(X, KG, N, Q)をXに代入する。これは図14の
処理番号1006に対応する。 (7)XとKBの加算の結果をXに代入する。これは図14の
処理番号1007に対応する。 (8)循環シフトおよび加算ファンクションの戻り値S
= FUNC(X, KG, N, Q)をXに代入する。これは図14の処理
番号1008に対応する。 (9)XとRの加算の結果をXに代入する。これは図14の
処理番号1009に対応する。 (10)Lの値をRに代入する。これは図14の処理番号1010
に対応する。 (11)Xの値をLに代入する。これは図14の処理番号1011
に対応する。 (12)Nが10以下か調べる。これは図14の処理番号1012
に対応する。 (13)Nが10以下ならば、Nの値を1増やして(3)に戻
る。これは図14の処理番号1013に対応する。 (14)Nが10以下でなければ、LとRを結合したものを暗
号文Mとする。これは図14の処理番号1014に対応する。
ンFUNC(X, KG, N, Q)は図16に示すフローチャートに従
う。以下処理内容を説明する。
ビットのいずれかの左循環シフトをXに対して行い、そ
の結果をSに保存する。これは図16の処理番号1201に対
応する。 (2)SとXの加算の結果をSに再び保存する。これは図1
6の処理番号1202に対応する。 (3)KG{3N-1}の値が0ならはQに1を加えた結果を3で
割った余りとし、KG{3N-1}の値が1ならはQから1を引い
た結果を3で割った余りとしてQを更新する。これは図1
6の処理番号1203に対応する。 (4)Sの値を戻り値とする。これは図16の処理番号120
4に対応する。
図14の加算処理1009を減算処理とすることで実現できる
ことはこれまでの説明から明らかである。以上、ソフト
ウェア処理で暗号処理および復号処理を実現する実施例
について説明したが、このように簡単なソフトウェア構
造で高度な暗号処理が実現できるため、情報家電機器に
容易に実装可能である。
いて図17を用いて説明する。図17において、外部バス13
03で接続された機器A 1301と機器B 1302が相互に相手を
認証する手順を以下に説明する。ここで機器A 1301, 機
器B 1302は情報家電機器、パーソナルコンピュータなど
を想定している。また、暗号化装置1304, 1306および復
号化装置1305, 1307は図1および図12で説明した暗号装
置および復号装置である。
Text1を機器Aに送信する(1309)。ここで、Text1は補助
情報であり、X||YはXとYを結合することを表す。
A 1301が生成した乱数、IBは機器B 1302の識別子、Text
2, Text3は補助情報で、eKAB(X)は機器A 1301と機器B 1
302の共通鍵KABでXを暗号化することを表す。
暗号化部分を復号することによって、識別子IBおよび
(1)で機器Aに送ったRBが正しいことを確認する。
ext5は補助情報である。
暗号化部分を復号することによって、(1)で機器B 13
02から受け取ったRBおよび(2)で機器B 1302に送った
RAがTokenBA内に含まれていることを確認する。
本発明の暗号装置および復号装置は、機器間の相手認証
も実現できるという利点がある。ここでText2あるいはT
ext4にワーク鍵あるいはデータ鍵を格納してもよく、こ
れによって、機器Aと機器Bとの間でデータ鍵あるいはワ
ーク鍵を安全に共有することができる。
などのパッケージコンテンツを流通させるシステムの実
施例を図18に示す。
理機関1418に著作権情報を登録し、コンテンツID情報ID
A 1402を得る。IDAはデジタルデータにID情報などを隠
しもたせる技術である電子透かしを用いてコンテンツデ
ータ1403に埋め込まれ、パッケージコンテンツ1404とな
る。ここで、図19はパッケージコンテンツ1404内のコン
テンツデータを表しており、コンテンツ情報IDA 1402が
電子透かしとして含まれている。
04内のコンテンツデータをパーソナルコンピュータC 14
11に転送する場合、情報家電B 1405は著作権管理機関14
18から発行されたユーザID情報IDB 1407を電子透かしと
してコンテンツデータ内に埋め込み、本発明を用いた暗
号装置1406で鍵データK 1408により暗号化し、外部バス
上に暗号データを流す。図20は経路1409を流れるコンテ
ンツデータを表しており、コンテンツ情報IDA 1402およ
びユーザID情報IDB 1407が電子透かしとして含まれてい
る。
11は、暗号データを、本発明を用いた復号装置1412で鍵
データK 1415により復号化する。以上の処理において、
ユーザ情報や鍵データの管理にICカード1410および1417
を用いてもよい。
ーク上にコンテンツデータを流通させる場合、パーソナ
ルコンピュータC 1411は著作権管理機関1418から発行さ
れたユーザID情報IDC 1414を電子透かしとしてコンテン
ツデータ内に埋め込み、本発明を用いた暗号装置1413
で、データを鍵データK 1415により暗号化する。図21は
経路1416を流れるコンテンツデータを表しており、コン
テンツ情報IDA 1402、ユーザID情報IDB 1407およびユー
ザID情報IDC 1414が電子透かしとして含まれている。以
上の処理において、ユーザ情報や鍵データの管理にICカ
ード1417を用いてもよい。
いて、ネットワーク上を流れるデータを監視し、暗号化
されていないデータを検出した場合、データ内のコンテ
ンツID情報を著作権情報管理データベース1420と照合
し、不正コピーと判断すれば、不正コピーの発生場所を
ユーザID情報から追跡し、ペナルティを課す。
どのデジタルコンテンツの流通システムの実施例を図22
に示す。コンテンツプロバイダー1401は、著作権管理機
関1418に著作権情報を登録し、コンテンツID情報IDA 14
02を得る。IDAを電子透かしとして埋め込んだコンテン
ツデータは、放送センタ1801に送られ、既存の暗号装置
1802で暗号化され、デジタル衛星放送受信機などの情報
家電に向けて放送される。情報家電は既存の復号化装置
1803で放送データを復号化する。情報家電には、既存の
復号装置1803に加えて本発明を用いた暗号装置1406を備
えており、その後のコンテンツデータの流通過程は図18
における例と同様に行うことができる。
の暗号システムと本発明の暗号システムを組み合わせ
て、デジタルコンテンツの流通システムを構築すること
も可能であり、パッケージメディア、放送メディア、通
信メディアと幅広く本発明の適用が可能である。
なランダム性を有する暗号方式が提供できる。
る。
一例を示す図である。
Sの関係図である。
る。
マルチプレクサの制御の説明図である。
内部状態の関係である。
ある。
タ拡散への効果 (case 1)を示す図である。
タ拡散への効果 (case 2)である。
る。
タ鍵から生成する一例である。
ーの一例である。
内部変数初期化ファンクションのフロー図である。
算ファンクションのフロー図である。
である。
システムに関する一実施例である。
1)である。
2)である。
3)である。
ムに関する一実施例である。
ワーク鍵KG、105…暗号文、106…暗号器、202…変換部
第N段、205…循環シフト数生成部第N段、401…復号器。
Claims (25)
- 【請求項1】少なくとも1個の鍵と平文データを入力
し、暗号文データを出力する暗号変換装置であって、 シフト数選択順序を決定するためのデータに基づきシフ
ト数を決定する循環シフト処理手段を含み、 入力された平文をデータ1とデータ2に分割し、前記デ
ータ1をデータL[1]とし、前記データ2をデータR[1]と
する手段を含み、 データL[N]とデータR[N]を入力とし、データL[N+1]とデ
ータR[N+1]を出力とする暗号変換処理手段であって、前
記データL[N]に対して前記鍵を用いた変換処理と、前記
循環シフト処理手段を用いた循環シフト処理と、をそれ
ぞれ1回以上行ってデータXを生成し、前記データR[N]
と前記データXとを演算して得られる値を前記データL
[N+1]とし、前記データL[N]を前記データR[N+1]とする
暗号変換処理手段を少なくとも1段以上含み、 最終段の2つの出力データを結合したものを暗号文とす
る手段を含むことを特徴とする暗号変換装置。 - 【請求項2】前記シフト数選択順序を決定するためのデ
ータを、少なくとも2つの前記各暗号変換処理手段で異
ならせることを特徴とする請求項1記載の暗号変換装
置。 - 【請求項3】前記シフト数は、少なくとも2つの前記各
循環シフト処理手段で異ならせることを特徴とする請求
項1記載の暗号変換装置。 - 【請求項4】前記循環シフト処理手段は、 左あるいは右に固定ビットだけ循環シフトする2個以上
の異なる固定循環シフト処理手段と、 前記固定循環シフト処理手段を選択する循環シフト処理
選択手段と、 前記シフト数選択順序を決定するためのデータから前記
循環シフト処理選択手段の選択順序を決定する循環シフ
ト順序決定手段と、を含むことを特徴とする請求項1記
載の暗号変換装置。 - 【請求項5】前記循環シフト処理選択手段は、前記循環
シフト処理順序決定手段で決定された順序に従って2個
以上の前記固定循環シフト処理手段を選択し、 前記循環シフト処理順序決定手段は、各段ごとに前記シ
フト数選択順序を決定するためのデータの異なったビッ
ト列を入力値とすることで、各段ごとに異なった順序を
決定し、 前記暗号変換処理手段によるブロック暗号の暗号変換を
各段ごとに異なった変換にすることを特徴とする請求項
4記載の暗号変換装置。 - 【請求項6】前記シフト数選択順序を決定するためのデ
ータを、前記鍵に基づいて生成することを特徴とする請
求項1記載の暗号変換装置。 - 【請求項7】前記固定循環シフト処理手段は、ワイヤー
ドロジック回路で構成されることを特徴とする請求項4
に記載の暗号変換装置。 - 【請求項8】前記循環シフト処理選択手段は、マルチプ
レクサで構成されることを特徴とする請求項4に記載の
暗号変換装置。 - 【請求項9】前記循環シフト処理順序決定手段は、前記
循環シフト決定データを内部状態の初期値と入力信号に
使い、同期信号に伴って内部状態を遷移させ、前記循環
シフト処理選択手段の制御入力信号を出力する循環シフ
ト処理順序生成回路で構成されることを特徴とする請求
項4に記載の暗号変換装置。 - 【請求項10】前記固定循環シフト処理手段、前記循環
シフト処理選択手段、前記循環シフト処理順序決定手段
は、それぞれソフトウェアで構成されることを特徴とす
る請求項4に記載の暗号変換装置。 - 【請求項11】少なくとも1個の鍵と暗号文データを入
力し、平文データを出力する復号変換装置であって、 シフト数選択順序を決定するためのデータに基づきシフ
ト数を決定する循環シフト処理手段を含み、 入力された暗号文をデータ1とデータ2に分割し、前記
データ1をデータL[1]とし、前記データ2をデータR[1]
とする手段を含み、 データL[N]とデータR[N]を入力とし、データL[N+1]とデ
ータR[N+1]を出力とする復号変換処理手段であって、前
記データR[N]に対して前記鍵を用いた変換処理と、前記
循環シフト処理手段を用いた循環シフト処理と、をそれ
ぞれ1回以上行ってデータXを生成し、前記データL[N]
と前記データXとを演算して得られる値を前記データR
[N+1]とし、前記データR[N]を前記データL[N+1]とする
復号変換処理手段を少なくとも1段以上含み、 最終段の2つの出力データを結合したものを平文とする
手段を含むことを特徴とする復号変換装置。 - 【請求項12】前記シフト数選択順序を決定するための
データを、少なくとも2つの前記各復号変換処理手段で
異ならせることを特徴とする請求項11記載の復号変換
装置。 - 【請求項13】前記シフト数は、少なくとも2つの前記
各循環シフト処理手段で異ならせることを特徴とする請
求項11記載の復号変換装置。 - 【請求項14】前記循環シフト処理手段は、 左あるいは右に固定ビットだけ循環シフトする2個以上
の異なる固定循環シフト処理手段と、 前記固定循環シフト処理手段を選択する循環シフト処理
選択手段と、 前記シフト数選択順序を決定するためのデータから前記
循環シフト処理選択手段の選択順序を決定する循環シフ
ト順序決定手段と、を含むことを特徴とする請求項11
記載の復号変換装置。 - 【請求項15】前記循環シフト処理選択手段は、前記循
環シフト処理順序決定手段で決定された順序に従って2
個以上の前記固定循環シフト処理手段を選択し、 前記循環シフト処理順序決定手段は、各段ごとに前記シ
フト数選択順序を決定するためのデータの異なったビッ
ト列を入力値とすることで、各段ごとに異なった順序を
決定し、 前記復号変換処理手段によるブロック暗号の復号処理
は、各段ごとに異なった処理を行うことを特徴とする請
求項14記載の復号変換装置。 - 【請求項16】前記シフト数選択順序を決定するための
データを、前記鍵に基づいて生成することを特徴とする
請求項11記載の復号変換装置。 - 【請求項17】前記循環シフト処理順序決定手段は、前
記循環シフト決定データを内部状態の初期値と入力信号
に使い、同期信号に伴って内部状態を遷移させ、前記循
環シフト処理選択手段の制御入力信号を出力する循環シ
フト処理順序生成回路で構成されることを特徴とする請
求項14に記載の復号変換装置。 - 【請求項18】少なくとも1個の鍵と平文データを入力
し、暗号文データを出力する暗号変換方法であって、 シフト数選択順序を決定するためのデータに基づきシフ
ト数を決定する循環シフト処理ステップを行い、 入力された平文をデータ1とデータ2に分割し、前記デ
ータ1をデータL[1]とし、前記データ2をデータR[1]と
する処理ステップを行い、 データL[N]とデータR[N]を入力とし、データL[N+1]とデ
ータR[N+1]を出力とする暗号変換処理ステップであっ
て、前記データL[N]に対して前記鍵を用いた変換処理
と、前記循環シフト処理手段を用いた循環シフト処理
と、をそれぞれ1回以上行ってデータXを生成し、前記
データR[N]と前記データXとを演算して得られる値を前
記データL[N+1]とし、前記データL[N]を前記データR[N+
1]とする暗号変換処理ステップ、を少なくとも1段以上
行い、 最終段の2つの出力データを結合したものを暗号文とす
る処理ステップを行うことを特徴とする暗号変換方法。 - 【請求項19】少なくとも1個の鍵と暗号文データを入
力し、平文データを出力する復号変換方法であって、 シフト数選択順序を決定するためのデータに基づきシフ
ト数を決定する循環シフト処理ステップを行い、 入力された暗号文をデータ1とデータ2に分割し、前記
データ1をデータL[1]とし、前記データ2をデータR[1]
とする処理ステップを行い、 データL[N]とデータR[N]を入力とし、データL[N+1]とデ
ータR[N+1]を出力とする復号変換処理ステップであっ
て、前記データR[N]に対して前記鍵を用いた変換処理
と、前記循環シフト処理手段を用いた循環シフト処理
と、をそれぞれ1回以上行ってデータXを生成し、前記
データL[N]と前記データXとを演算して得られる値を前
記データR[N+1]とし、前記データR[N]を前記、前記デー
タL[N+1]とする復号変換処理ステップを少なくとも1段
以上行い、 最終段の2つの出力データを結合したものを平文とする
処理ステップを行うことを特徴とする復号変換方法。 - 【請求項20】通信し合う二つの装置AとBは事前に鍵暗
号化鍵を共有しており、 前記装置Aはデータ鍵を生成した後、鍵暗号化鍵でデー
タ鍵を暗号化して装置Bに送信し、 前記装置Bはデータ鍵の暗号文を鍵暗号化鍵で復号して
元のデータを復元し、 前記装置Aと前記装置Bとの間で、平文データをデータ鍵
で暗号化して得られる暗号文を送信し、受信した暗号文
をデータ鍵で復号してもとの平文データを得るという処
理を行うことで、装置A、B間の暗号通信を行うことを特
徴とするデータ通信システム。 - 【請求項21】前記装置Aは、平文データを暗号変換し
ないままで前記装置Aの外部に通信することを阻止する
手段を含むことを特徴とする請求項20記載のデータ通
信システム。 - 【請求項22】前記装置Bは、暗号文データを復号変換
して得られた平文データを前記装置Bの外部に通信する
ことを阻止する手段を含むことを特徴とする請求項20
記載のデータ通信システム。 - 【請求項23】前記装置Aまたは前記装置Bは別の装置C
と通信できるように構成されており、 前記装置Aまたは前記装置Bから前記装置Cに送信された
データは暗号変換されないままであるかどうかを前記装
置Cが検査する手段と、 該データが暗号変換されないままであることが検知され
た場合には、そのことを示す信号を別の装置Dに送信す
る手段を含むことを特徴とするデータ通信システム。 - 【請求項24】前記装置Dは、前記データが暗号変換さ
れないままであることが検知されたことを示す信号を受
信した場合、前記装置Dから前記装置Aまたは前記装置B
に送信するデータを制限する手段を有することを特徴と
するデータ通信システム。 - 【請求項25】前記装置AまたはBは別の装置Eと通信で
きるように構成されており、 前記装置Eは前記装置Aに平文データを暗号方式1により
暗号化した暗号文1を送り、 前記装置Aは該暗号文1を該暗号方式1に対応する復号
方式1により復号し、もとの平文データを得た後、暗号
方式1とは異なる暗号方式2で平文データを再暗号化し
て暗号文2を得た後、前記装置Bに暗号文2を送信する
ことを特徴とするデータ通信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22263698A JP3906574B2 (ja) | 1997-08-07 | 1998-08-06 | 暗号変換方法、暗号変換装置、復号方法、復号装置及びデータ通信システム |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9-213327 | 1997-08-07 | ||
JP21332797 | 1997-08-07 | ||
JP22263698A JP3906574B2 (ja) | 1997-08-07 | 1998-08-06 | 暗号変換方法、暗号変換装置、復号方法、復号装置及びデータ通信システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11109853A true JPH11109853A (ja) | 1999-04-23 |
JP3906574B2 JP3906574B2 (ja) | 2007-04-18 |
Family
ID=26519731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP22263698A Expired - Lifetime JP3906574B2 (ja) | 1997-08-07 | 1998-08-06 | 暗号変換方法、暗号変換装置、復号方法、復号装置及びデータ通信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3906574B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008503162A (ja) * | 2004-06-14 | 2008-01-31 | ザ・ユニバーシティ・オブ・ノース・カロライナ・アット・グリーンズボロ | デジタルコンテンツセキュリティのためのシステムおよび方法 |
US7392272B2 (en) | 2002-04-19 | 2008-06-24 | Sony Corporation | Calculation device and calculation method |
-
1998
- 1998-08-06 JP JP22263698A patent/JP3906574B2/ja not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7392272B2 (en) | 2002-04-19 | 2008-06-24 | Sony Corporation | Calculation device and calculation method |
JP2008503162A (ja) * | 2004-06-14 | 2008-01-31 | ザ・ユニバーシティ・オブ・ノース・カロライナ・アット・グリーンズボロ | デジタルコンテンツセキュリティのためのシステムおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
JP3906574B2 (ja) | 2007-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4828068B2 (ja) | コンピュータで効率的な線形フィードバック・シフト・レジスタ | |
US5365589A (en) | Method and apparatus for encryption, decryption and authentication using dynamical systems | |
EP0839418B1 (en) | Cryptographic method and apparatus for non-linearly merging a data block and a key | |
JP5822970B2 (ja) | 擬似ランダム生成、データ暗号化、およびメッセージ暗号化ハッシングのための暗号化デバイス | |
US5222139A (en) | Cryptographic method and apparatus | |
US6314187B1 (en) | Method for encryption or decryption using finite group operations | |
US7949128B2 (en) | Method and device for the encryption and decryption of data | |
EP0725511B1 (en) | Method for data encryption/decryption using cipher block chaining (CBC) and message authentication codes (MAC) | |
US5351299A (en) | Apparatus and method for data encryption with block selection keys and data encryption keys | |
US6891950B1 (en) | Extended key generator, encryption/decryption unit, extended key generation method, and storage medium | |
US6606385B1 (en) | Data encrypting/decrypting conversion methods and apparatuses and data communication system adopting the same | |
JPH08505275A (ja) | 暗号ストリームを発生させるための装置及び方法 | |
JP4460772B2 (ja) | 同期ストリーム暗号 | |
JP4025722B2 (ja) | データ暗号化のための方法および装置 | |
US7894608B2 (en) | Secure approach to send data from one system to another | |
US20150349951A1 (en) | Protecting Cryptographic Operations Using Conjugacy Class Functions | |
JP3906574B2 (ja) | 暗号変換方法、暗号変換装置、復号方法、復号装置及びデータ通信システム | |
JPH0736672A (ja) | 乱数発生器、及びそれを用いた通信システム及びその方法 | |
JPH1152850A (ja) | 暗号変換方法および装置 | |
JP2000047580A (ja) | 暗号変換装置、復号変換装置、暗号通信装置および自動料金徴収装置 | |
JPH0895490A (ja) | 秘密鍵暗号方法及び装置 | |
KR100546777B1 (ko) | Seed 암/복호화 장치, 암/복호화 방법, 라운드 처리 방법, 이에 적합한 f함수 처리기 | |
JP4990843B2 (ja) | 暗号演算装置、その方法、及びプログラム | |
JP2001509608A (ja) | デジタル・データのlビットの入力ブロックをlビットの出力ブロックに暗号変換するための方法 | |
GB2463031A (en) | Encrypting data or providing an encryption key |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060417 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060418 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060616 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061017 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061201 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061226 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070108 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100126 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110126 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110126 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120126 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130126 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |