JP3473171B2 - 逐次暗号方式 - Google Patents

逐次暗号方式

Info

Publication number
JP3473171B2
JP3473171B2 JP11290195A JP11290195A JP3473171B2 JP 3473171 B2 JP3473171 B2 JP 3473171B2 JP 11290195 A JP11290195 A JP 11290195A JP 11290195 A JP11290195 A JP 11290195A JP 3473171 B2 JP3473171 B2 JP 3473171B2
Authority
JP
Japan
Prior art keywords
unit
random number
data
conversion
number generator
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.)
Expired - Fee Related
Application number
JP11290195A
Other languages
English (en)
Other versions
JPH08307411A (ja
Inventor
なつめ 松崎
基司 大森
誠 館林
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 Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP11290195A priority Critical patent/JP3473171B2/ja
Publication of JPH08307411A publication Critical patent/JPH08307411A/ja
Application granted granted Critical
Publication of JP3473171B2 publication Critical patent/JP3473171B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報の秘密通信におけ
る暗号化に関し、規模が小さく処理が高速な逐次暗号方
式に関する。
【0002】
【従来の技術】近年、価値のある電子情報が増加し、こ
れを第3者の詐称や盗聴から守りつつ、公開チャネルで
伝送する秘密通信が要望されている。ところで、一般に
データは「フレーム」または「パケット」と呼ばれる単
位で伝送を行なうが、伝送路の状態によっては、ビット
誤りや位相のずれを生じる場合がある。そして位相のず
れを生じた場合、受信側でフレームごと削除を行なう場
合がある。このため、秘密通信に用いる暗号方式は、通
信路上のフレームの脱落やビット誤りの影響を、受信側
でできるだけ拡大させないことが必要である。また、秘
密通信に用いる暗号方式の別の要求条件としては、実現
規模が小さく処理速度が速いことが必要である。
【0003】以上の条件を満たす暗号方式として、逐次
暗号方式が用いられることが多い。逐次暗号方式は、送
受信双方で同じ疑似乱数列を生成し、暗号部では平文に
この疑似乱数列をビットごとに排他的論理和で加算して
暗号文を計算し、復号部では暗号文に同じ疑似乱数列を
排他的論理和で加算し平文と同じ復号文を求めるもので
ある。
【0004】(第1の従来例)逐次暗号方式を構成する
疑似乱数生成器として、一般的に、並列に配置した複数
の線形フィードバックシフトレジスタ(Linear Feedbac
k Shift Register、以降"LFSR"と略して表現する)と、
その出力ビットを論理積やスイッチ等で結合する非線形
結合部からなるものが知られている。図3では特開昭62
-144243で述べられている疑似乱数生成器を用いた逐次
暗号方式を示している。これを第1の従来例とする。こ
の特許における疑似乱数生成器の非線形結合部は、2つ
のLFSRの出力を別のLFSRの出力で切り替えるスイッチで
実現している。図3において、101は暗号部、102は復号
部である。103は暗号部における第1の疑似乱数生成
器、104は復号部における第2の疑似乱数生成器であ
り、両者は同じ構成である。105は前記第1の疑似乱数
生成器の出力を平文にビット加算する排他的論理和ゲー
ト、106は、同じ出力を暗号文にビット加算してもとの
平文と同じ復号文を求める排他的論理和ゲートである。
107、108、109はそれぞれ、互いに素である次数r,s,tの
規約多項式を特性多項式として持つLFSRであり、M系列
を出力する。110、111、112はそれぞれのLFSRの格納値
の一部を非線形に変換して系列b1,b2,b3を求める非線形
変換部NLである。この特許の例ではそれぞれテーブルで
実現している。113は前記非線形変換部の出力b1(t),b2
(t)をb3(t)で切り替え出力するスイッチ部分である。11
4は前記LFSR107の出力a1(t)をスイッチ部の出力にビッ
ト加算する排他的論理和であり、その結果N(t)が疑似乱
数生成器の出力となる。なおここでtは時間であり、図
における各a1(t),b1(t),b2(t),b3(t),P(t),N(t),C(t),Q
(t)は1ビットの情報である。tが1増加するとLFSRから
1ビットのデータが出力され、N(t)が作られ1ビットの
暗号化および復号が実現される。
【0005】次に、図3を用いて従来の逐次暗号方式の
動作を説明する。まず、暗号部の説明を行う。
【0006】(1) フレームの先頭で、各LFSR107〜109に
初期値を設定する。この初期値は暗号部と復号部共通の
秘密の鍵である。
【0007】(2) 各LFSRのあらかじめ定められたビット
位置のデータをそれぞれアドレスとして、非線形変換テ
ーブル110〜112を参照する。その結果をそれぞれb1(t),
b2(t),b3(t)とする。
【0008】(3) スイッチ部113は、b3(t)が0の時はb1
(t)を出力とし、1の時はb2(t)を出力とする。
【0009】(4) 排他的論理和部114は、スイッチ部の
出力と前記LFSR107の出力a1(t)の排他的論理和を求め、
その結果N(t)をtビット目の疑似乱数とする。
【0010】(5) 排他的論理和ゲート105は、1ビット
の平文P(t)と疑似乱数生成器の出力N(t)の排他的論理和
を計算し、その結果の暗号文C(t)を復号部に送信する。
【0011】(6) tを1進める。その結果各LFSRの格納
値(内部状態)は変化する。以下(2)から(6)を繰り返し
て1ビットずつの暗号化処理を行う。
【0012】復号部102では上記と同様にして、疑似乱
数生成器104は疑似乱数N'(t)を生成する。排他的論理和
ゲート106は、N'(t)と暗号文C(t)の排他的論理和を計算
し、復号文Q(t)を獲得する。N'(t)は上記(1)で設定する
鍵が暗号部と同じであれば、暗号部の疑似乱数生成器3
の出力N(t)と同じになる。そのため、復号文Q(t)はもと
の平文P(t)と同じになる。
【0013】この逐次暗号方式を用いれば、暗号部及び
復号部の疑似乱数生成器は、フレームの先頭で両者で共
有している秘密の鍵で各LFSRを初期化する。フレームで
処理が完結しているため、もしフレームの脱落が生じて
も、次のフレームには影響しない。またビット誤りがあ
ったとしても、受信側では当該のビットが誤るだけであ
る。また実現ハードも小さく例えばLFSRの合計ビット数
が64ビット程度の場合、暗号部、復号部それぞれ1000ゲ
ート程度で実現できる。
【0014】ところが、この従来の逐次暗号方式におい
ては、発生する疑似乱数系列N(t)はLFSRに初期設定する
値のみで決定する。従って、この初期設定する値が同じ
フレームでは疑似乱数系列N(t)は同じになる。そのた
め、あるフレームにおける平文と暗号文が既知であるな
らば、これから求めた疑似乱数系列を用いて、同じ初期
値を設定する別の暗号文の不正解読ができる。ここで解
読者は解読に際して、暗号部と復号部で共有している秘
密の鍵を求める必要がないことに注意する。そして、あ
るフレームにおける平文と暗号文が既知である状況は、
実際に存在する。例えば、MPEG2のトランスポートスト
リームをこの暗号方式の平文とする。MPEG2のPESヘッダ
をトランスポートパケットに同期させると、PESヘッダ
の部分的なビットは固定的なので、前記平文が既知であ
る場合に相当する。
【0015】(第2の従来例)上記攻撃が成り立つの
は、疑似乱数系列が初期設定する値だけで決定されるか
らである。この問題を解決するのが、疑似乱数系列をデ
ータによって変化させる自己同期型の逐次暗号方式であ
る。
【0016】従来例1を自己同期型に改良した構成が、
木村、難波によって発表されている。この例を第2の従
来例として以下説明する。なお、発表文献は木村、難
波、"ディジタル放送における限定受信方式", 電子情報
通信学会研究会CS94-170, 1994.である。
【0017】図4に構成を示す。図4において、201は
暗号部、202は復号部である。暗号部の疑似乱数生成器2
03は、第1の従来例における図3の疑似乱数生成器103
に、暗号文を蓄える6ビットシフトレジスタ205とこの6
ビットとLFSR1の出力の排他的論理和を求める排他的論
理和206を追加している。なお、その他の部分は図3と
同じであり、同じ番号を付している。これにより疑似乱
数生成器は暗号文の影響を受けた乱数系列N(t)を発生す
る。従って入力平文が1ビットでも異なれば、暗号文が
異なり、次の時刻における疑似乱数系列がその影響を受
ける。また復号部でも同様に暗号文を疑似乱数生成器20
4に影響させている。さらに、従来例2では、フレーム
ごとに異なる修整用コードを用いて疑似乱数生成器の初
期値を修整する初期値修整回路207、208を備えている。
例えばMPEG2のトランスポートパケットにおいては各パ
ケットごとに付加されている連続性指標やパケットIDが
この修整用コードとして用いることができる。
【0018】
【発明が解決しようとする課題】以上説明したように、
従来例1は疑似乱数系列が初期設定する値だけで決定さ
れる。そのため、初期設定する値が同じフレームでは疑
似乱数系列N(t)は同じになり、あるフレームにおける平
文と暗号文が既知であるならば、これから求めた疑似乱
数系列を用いて、同じ初期値を設定する別の暗号文の不
正解読ができる。そして、前記あるフレームにおける平
文と暗号文が既知である状況は、実際に存在する状況で
ある。
【0019】一方上記問題を解決した第2の従来例にお
いても次の点が依然として課題である。 (1) 発生する疑似乱数の線形複雑度が小さい。
【0020】第1、第2の疑似乱数生成器の基本とな
る、3つのLFSRとスイッチ部からなる構成は、ゲッフェ
が考案した方法である。ゲッフェの方法についてはP.R,
Geffe,"How to Protect Data with Ciphers that are R
eally Hard to Break", Electronics, Jan.4, 1973.に
詳しい。この構成ではLFSR1,2,3の特性多項式が規約で
あり、その次数r,s,tが互いに素である場合、スイッチ
部の出力の線形複雑度は(t+1)r+tsである。つまり、せ
いぜい2つのLFSRの積のオーダである。従来例における
非線形変換部などにより、線形複雑度はゲッフェの方法
に比べて増加すると思われるが、それも若干である。 (2) 基本的に1ビットずつの処理であり、処理の高速化
に限界がある。
【0021】LFSRは複数ビットまとめて出力することは
可能である。しかしながら、疑似乱数生成器全体の構成
から、暗号文が1ビット出力された後でないと、次の疑
似乱数は生成できないようになっている。そのため、複
数ビットを同時に処理できる方法に比べ高速処理に限界
がある。また、例えばワード処理に比べて、ビット処理
が不得手であるCPUでのソフトで実現する場合には高速
処理が難しい。 (3) 平文と暗号文が既知であるフレームから、別のフレ
ームの暗号文が解読になる場合が依然としてある。
【0022】今、初期値が同じである2つの暗号化フレ
ームC1,C2があり、C1に対応する平文P1が既知であると
する。このとき、C1とP1の排他的論理和を求めることに
より、疑似乱数系列N1が既知となる。ところで、別の暗
号系列C2のあるjビット目は、C1(j-6)=C2(j-6), C1(j-
5)=C2(j-5), C1(j-4)=C2(j-4),C1(j-3)=C2(j-3), C1(j-
2)=C2(j-2), C1(j-1)=C2(j-1)が成り立つとき、C2(j)に
用いられている乱数はC1(j)に用いられている乱数と同
じになる。これは、疑似乱数生成器の次のビットの出力
が、各LFSRへの初期値と初期値を設定してからの時間、
そのビットの直前の暗号文6ビットから決定されるから
である。そのため、C2(j)にN1のjビット目N1(j)をビッ
ト加算すると対応する平文P2(j)が解読できる。以降こ
の攻撃を「攻撃A」と呼ぶことにする。
【0023】この攻撃Aが成立する確率は、シフトレジ
スタの長さを長くすれば小さくなるが、通信路上で誤り
が生じた場合、復号部における誤り拡大がその分大きく
なる。
【0024】本発明は、従来例における上述の課題に鑑
みて試されたもので、ハードウェア規模などの従来方法
の逐次暗号方式の良い特性を保ちつつ、 (1) 発生する疑似乱数の線形複雑度を増加する (2) 複数ビットまとめての処理を可能にする (3) 攻撃Aの成立する確率を、誤り拡大の増加を伴わず
に小さくする ことを特徴とする逐次暗号方式を提供する。
【0025】なお上記(3)における攻撃Aを困難にするた
めには、暗号文と平文の対から対応する疑似乱数を直接
求められないようにする等が効果的である。
【0026】
【課題を解決するための手段】上記目的を達成するた
め、第1の発明における逐次暗号方式は、請求項1に対
応しており、第1の疑似乱数生成器と、平文と前記第1
の疑似乱数生成器の出力を入力として暗号文を算出する
暗号文算出部からなる暗号部と、前記暗号部における疑
似乱数生成器と同じ構成の第2の疑似乱数生成器と、暗
号文と前記第2の疑似乱数生成器の出力を入力として復
号文を算出する復号文算出部からなる復号部から構成さ
れる逐次暗号方式であって、前記第1、第2の疑似乱数
生成器は、内部状態を持ち内部状態の初期値が設定可能
であり、線形操作により内部状態を更新しつつ内部状態
によって決定される周期系列を順次出力する複数の周期
系列生成器と、内部状態を持ち内部状態の初期値が設定
可能であり、前記暗号文を入力する反転制御部と、全部
または一部の前記周期系列生成器の出力を前記対応する
反転制御部の内部状態によって反転する複数の反転処理
部と、前記各反転処理部の出力を整数と見なして一時刻
前の桁上げ信号と共に整数加算し、結果を前記疑似乱数
生成器の出力とし、桁上げ信号を次の時刻に用いる整数
加算部からなり、前記第1、第2の疑似乱数生成器にお
ける周期系列生成器の初期値および反転制御部の初期値
および整数加算部の桁上げ信号の初期値を前記暗号部、
復号部共通の鍵とすることを特徴とする。
【0027】第2の発明における逐次暗号方式は、請求
項4に対応しており、前記第1の発明における反転制御
部への暗号文の入力タイミングを暗号部と復号部の共通
の秘密鍵とすることを特徴とする。
【0028】第3の発明における逐次暗号方式は、請求
項7に対応しており、第1の発明における前記暗号文算
出部において、第1の疑似乱数生成器の出力のビットご
との排他的論理和を計算する排他的論理和計算部と、そ
の前または後ろまたは両方に、入力されるデータを変換
するデータ変換部を備え、前記復号文算出部において、
第2の疑似乱数生成器の出力のビットごとの排他的論理
和を計算する排他的論理和計算部と、前記データ変換部
に対応してデータ逆変換部を備えたことを特徴とする。
【0029】また請求項8に対応して、前記第3の発明
における前記データ変換部と逆変換部が、入力データと
暗号部復号部共通の秘密鍵を用いて行なう。
【0030】また請求項10に対応して、前記第3の発
明における前記データ変換部と逆変換部が、前記疑似乱
数生成器の出力と暗号部復号部共通の秘密鍵を用いて行
なう。
【0031】また請求項11に対応して、前記第3の発
明における前記データ変換部と逆変換部が、前記疑似乱
数生成器の内部にある周期系列生成器の出力と暗号部復
号部共通の秘密鍵を用いて行なう。
【0032】
【作用】上記構成における第1の発明においては、第1
の疑似乱数生成器の複数の各周期系列生成器は設定され
た初期値から順次系列を生成する。反転制御部は前時刻
までの暗号文と初期値を用いて反転制御データを生成す
る。反転処理部では前記周期系列生成器の生成した系列
を、対応する反転制御データを元にして反転する。整数
加算部では、反転処理部の複数の出力をそれぞれ整数と
見なして、前時刻の桁上げ信号と共に整数加算し、この
結果を疑似乱数生成器の出力とする。その結果の桁上げ
信号は次の時刻に用いる。暗号文算出部では平文と第1
の疑似乱数生成器の出力を用いて暗号文を作成する。暗
号文は第1の疑似乱数生成器の前記反転制御部に入力す
る。一方、復号部における第2の疑似乱数生成器でも、
前記第1の疑似乱数生成器と同じ鍵を用いて同じ疑似乱
数を作成する。復号文算出部では、この疑似乱数と暗号
文を用いてもとの平文と同じ復号文を作成する。暗号文
は同様に第2の疑似乱数生成器の反転制御部に入力す
る。
【0033】第2の発明においては、前記第1の発明に
おける反転制御部が全暗号文を入力していたのに対し、
ある定まったタイミング時のときのみ暗号文を入力とす
る。このタイミングは暗号部と復号部の共通の秘密情報
とする。
【0034】第3の発明においては、平文や暗号文およ
び疑似乱数生成器の出力は複数ビットまとめて扱い、疑
似乱数とのビットごとの排他的論理和ゲートの前または
後ろまたは両方で、入力データを秘密のデータ変換す
る。
【0035】請求項8においては、第3の発明のデータ
変換を入力データと暗号部復号部共通の秘密鍵を用いて
制御する。
【0036】請求項10においては、第3の発明のデー
タ変換を前記疑似乱数生成器の出力を用いて制御する。
【0037】請求項11においては、第3の発明のデー
タ変換を、前記疑似乱数生成器の内部の周期系列生成器
の出力を用いて制御する。
【0038】
【実施例】
(第1の実施例)図1は、第1の実施例における逐次暗
号方式の構成図である。第1の実施例は、請求項1に対
応している。図1において1は暗号部、2は復号部であ
る。3、4は疑似乱数生成器であり、内部構成は同じであ
る。5〜8はLFSR、9は4ビットシフトレジスタ(ここでは
このレジスタをCTRLと呼ぶ)、10〜13は各LFSRの出力と
前記CTRLの対応するビットとの排他的論理和を求める排
他的論理和ゲートである。14は排他的論理和ゲートの出
力それぞれと15の桁上げ格納部のデータを合わせて加算
する加算器である。16は平文と疑似乱数との排他的論理
和を求める排他的論理和ゲート、17は暗号文と疑似乱数
との排他的論理和を求める排他的論理和ゲートである。
【0039】次に図1に示した第1の実施例の動作を説
明する。まず、暗号部の説明を行なう。
【0040】(1) フレームの先頭で、各LFSRとCTRLと加
算器の桁上げ格納部に初期値を設定する。この初期値は
暗号部と復号部共通の秘密の鍵である。
【0041】(2) 各LFSRを1ビット動作させて、各1ビッ
トのデータa0(t),a1(t),a2(t),a3(t)を出力する。
【0042】(3) 排他的論理和ゲート10〜13は、各LFSR
iの出力ai(t)とCTRLの対応するiビット目ciの排他的論
理和を求め、その結果bi(t)を出力する(i=0-3)。
【0043】(4) 加算器は、b0(t)-b3(t)をそれぞれ0
または1の整数とみなし、桁上げ格納部の格納値と合わ
せて5入力加算器に入力する。この結果の最下位ビット
を疑似乱数生成器の出力N(t)として出力し、それより上
位のデータは桁上げ格納部に格納し、次の時刻に加算器
に入力する。
【0044】(5) 排他的論理和ゲート16は、1ビットの
平文P(t)と疑似乱数生成器の出力N(t)の排他的論理和を
計算して、その結果の暗号文C(t)を暗号部から出力す
る。
【0045】(6) CTRLを上位に1ビットシフトして、暗
号文C(t)を最下位に格納する。一方、復号部の疑似乱数
生成器4も上記(1)-(4)と同様の動作を行なう。そして排
他的論理和ゲート17は、1ビットの暗号文C(t)と疑似乱
数生成器4の出力N'(t)の排他的論理和を計算し、その結
果である1ビットの復号文Q(t)を求める。疑似乱数生成
器4の出力N'(t)は暗号部と復号部の鍵が同じ場合には、
暗号部の疑似乱数生成器3の出力N(t)と同じになる。そ
のため、復号文Q(t)はもとの平文P(t)と同じになる。ま
た、暗号文C(t)が上記(6)と同様にCTRLレジスタの最下
位に格納される。
【0046】この第1の実施例では第2の従来例と同様
に、暗号文を疑似乱数生成器に関係させている。しか
し、各LFSRの出力をCTRLレジスタの設定値で反転制御
し、さらに非線形結合部として桁上げつきの整数加算部
を用いていることにより、疑似乱数周期系列の線形複雑
度が各LFSRのビット数を互いに素であるr,s,t,uとする
と、(2r-1)(2s-t)(2t-1)(2u-1)程度と非常に大きくな
る。これにより、前記従来の1番目の課題が解決でき
る。なお、第1の実施例では、CTRLレジスタが暗号化デ
ータによって1ビットずつ更新されるが、各LFSRの内容
は暗号化データにより影響を受けない。そのため各LFSR
をM系列生成LFSRで実現すると、0/1バランスや周期など
の特性も良好である。
【0047】フレーム抜けに対しては次のフレームは影
響しないし、また、ビット誤りによる復号部の誤り拡大
は4ビットと大変少ない。また、実現ハードウェア量も
小さい。
【0048】しかしながら、第1の実施例では前記従来
の2、3番目の課題は未解決である。
【0049】(第2の実施例)図2は、第2の実施例に
おける逐次暗号方式の構成図である。第2の実施例は、
請求項7および請求項10に対応している。図2におい
て21は暗号部、22は復号部である。23、24は疑似乱数生
成器であり、1度に4ビットの乱数が生成される。な
お、図中'/4'の記号はその線上のデータが4ビットであ
ることを示す。また25は疑似乱数生成器の出力を変換し
た値と鍵K0を平文4ビットに加算する加算部、26は加算
部の出力と疑似乱数生成器の出力をビット加算する排他
的論理和部である。また、27は復号部にあり、暗号文と
疑似乱数生成器24の出力をビット加算する排他的論理和
部である。28は、暗号部における加算部に対応し、疑似
乱数生成器の出力を変換した値と鍵K0を、前記排他的論
理和部27の出力から減算する減算部である。また、疑似
乱数生成器23、24は同じものであり、その構成は以下の
とおりである。29〜32は1度に4ビットの系列を生成する
LFSR4(1ビットの系列を生成するLFSRと区別するためLF
SR4と称する)、33は4ビットレジスタ、34〜37は各LFSR
4の出力4ビットと前記CTRLの対応するビット値との排他
的論理和を求める各4ビットの排他的論理和ゲートであ
る。38は排他的論理和ゲートの4つの各4ビットの出力そ
れぞれと39の桁上げ格納部のデータを合わせて加算する
4ビット幅で5入力の整数加算器である。
【0050】次に図2に示した第2の実施例の動作を説
明する。まず、暗号部の説明を行なう。
【0051】(E1) フレームの先頭で、各LFSR4とCTRLと
加算器の桁上げ格納部に初期値を設定する。この初期値
は暗号部と復号部共通の秘密の鍵である。
【0052】(E2) 各LFSR4を1度動作させて、各4ビット
のデータa0(t),a1(t),a2(t),a3(t)を出力する。
【0053】(E3) 排他的論理和ゲート34〜37におい
て、4ビットデータai(t)の各ビットとCTRLの対応するi
ビット目ciの排他的論理和を求め、その結果をbi(t)と
する(i=0-3)。この意味はai(t)の0ビット目とciの排
他的論理和の結果を、bi(t)の0ビット目とし、またai
(t)の1ビット目とciの排他的論理和の結果を、bi(t)の1
ビット目とするという意味である。以下2、3ビット目も
同様にciと排他的論理和を計算する。
【0054】(E4) 加算器は、b0(t)-b3(t)をそれぞれ4
ビットの整数とみなし、桁上げ格納部の格納値と合わせ
て5入力加算器に入力する。この結果の下位4ビットを
疑似乱数生成器の出力N(t)として出力し、それより上位
のデータは桁上げ格納部に格納し、次の時刻に加算器に
入力する。
【0055】(E5) 加算部25は、疑似乱数生成器の出力N
(t)をf変換した結果と、鍵K0および4ビットの平文P(t)
を4ビット加算する。この加算の結果生じた桁上げ信号
は無視する。
【0056】(E6) 排他的論理和ゲート26では、加算部2
5の出力4ビットと疑似乱数生成器の出力N(t)のビットご
との排他的論理和を求める。その結果が、暗号文C(t)と
なる。
【0057】(E7) 暗号文C(t)をCTRL33に格納する。以
降は、上記(2)〜(7)を繰り返して平文を暗号化して暗号
文を出力する。
【0058】また、一方復号部の動作(D1)〜(D4)は暗号
部における(E1)〜(E4)と同じであり、4ビットの疑似乱
数N'(t)を求める。
【0059】(D5) 排他的論理和ゲート27は、暗号文4
ビットと疑似乱数生成器の出力N'(t)のビットごとの排
他的論理和を求める。
【0060】(D6) 減算部28は、疑似乱数生成器の出力
N'(t)のf変換した結果と、鍵K0を排他的論理和ゲート27
の出力B(t)から減算する。この減算の結果が4ビットの
復号文Q(t)となる。なお、この減算の結果生じた桁上げ
信号は無視する。
【0061】(D7) 暗号文C(t)を疑似乱数生成器24内のC
TRLに格納する。復号部の鍵が暗号部と同じである場
合、疑似乱数N'(t)はN(t)と同じになる。そして、復号
文Q(t)はもとの平文P(t)と同じになる。
【0062】以上述べたとおり第2の実施例では、CTRL
のビット幅である4ビット単位の処理を行っている。な
お、1度に4ビットの出力を行なうLFSR4は、LFSR4の格納
値をタップの位置に合わせてシフトしたものとの排他的
論理和を求めることによって実現できる。
【0063】このため、従来例の第2の課題を解決し、
第1の実施例に比べても高速処理が可能である。また、
例えばビット単位の処理よりもワード単位の処理が得意
である汎用マイコンのソフトとしても実現しやすい。
【0064】さらに、第2の実施例では、第1の実施例
に、秘密の鍵K0とPN系列N4の変形f(N(t))を含めた4ビッ
ト整数加算(暗号部)または4ビット整数減算(復号
部)の処理を加えている。f変換としては例えば4ビット
のN(t)のビットを固定的に並び変えるといったものでよ
い。このため、暗号化データとそれに対応する平文デー
タから容易にPN系列を求められない。さらに、N(t)を2
箇所で変換して作用させているため、N(t)を求めるため
にはC(t),P(t)が既知であっても未知の固定値K0を仮定
しさらに、N(t)を総当たりで求めるしかない。この加算
部/減算部の追加により、一対のC,P系列が既知であっ
ても、Nの系列を一意に決定できないし、候補を求める
にも多くの計算が必要である。このことにより、従来の
第3の問題点も解決している。
【0065】また、この例では4ビット整数加算を用い
ているが、入力データを変換する変換としては復号部に
おける逆変換が可能なものであれば他のものであっても
よい。ただし、秘密の鍵をからめて時刻や入力データに
よって処理が変化するものがよい。なお、第2の実施例
では、秘密の鍵はK0に相当し、時刻により変化するデー
タは疑似乱数生成器の出力N(t)の変換した値に相当して
いる。別の実現方法としては、入力データの入れ替えで
実現する方法が考えられる。このとき、入れ替えを制御
するのに秘密の鍵、入力データなどを用いる。ただし、
入力データを用いる場合には、復号部において逆の入れ
替えを可能にするため、例えば入れ替えを行なう両方の
データの排他的論理和を制御に用いる。こうすると、入
れ替えを行なっていても行なっていなくても、同じ制御
が可能となる。以上のことは請求項8および請求項9に
対応している。
【0066】なお、この例では暗号文の影響を受ける疑
似乱数生成器の出力を、加算部に影響させているため、
暗号部において加算部を疑似乱数生成器のCTRLへのフィ
ードバック接続点の前に持ってくる必要がある。これは
復号部において、減算部にN(t)をフィードフォワードで
作用させていることに対応し、暗号化データに誤りが生
じたとしても、4ビット後は自己復帰するためである。
これに対し、時刻により変化するデータとして、暗号文
の影響を受けない例えば周期系列生成器の出力、または
それらの変換した値などを用いると、疑似乱数生成器の
CTRLへの接続点の前または後ろ、または両方に備えるこ
とが可能となる。これは請求項10に対応している。こ
れら疑似乱数とのビット加算以外に入力データに対する
処理を増やすことにより、また数ビットまとめての処理
を行なうことにより、既知の暗号文、平文から直接的に
対応する疑似乱数を求められ、攻撃Aが成立することを
困難にしている。
【0067】また、別の攻撃Aを困難にする方法として
は、例えば第1の実施例においてはCTRLは全暗号文を入
力していたが、これをある暗号部と復号部で定められた
タイミングの時だけ入力するといった方法もある。これ
によりある部分の暗号文が平文が既知である系列と一致
していたとしても、対応する疑似乱数が一致するとは限
らない。これは請求項4に対応している。
【0068】なお第1、第2の実施例でLFSRは4つ用い
ているが、これはいくつであってもかまわない。また、
CTRLも各LFSRに対応したビットを備えているが、CTRLに
よって反転制御しないLFSRの出力があってもよい。
【0069】また、第1の実施例ではCTRLに格納してい
る前時刻の暗号文で、直接各LFSRの出力値の反転を制御
していたが、暗号文と秘密の鍵との演算値で反転制御を
行なってもよい。これは請求項3に対応している。
【0070】さらに、第2の従来例で使用していた各フ
レームごとに異なる修整用コードで初期値を修整する初
期値修整部を設けてもよい。
【0071】
【発明の効果】以上の説明から明らかなように、第1の
発明は第2の従来例と同様に、暗号文を疑似乱数生成器
に関係させる。しかし、各周期系列生成器LFSRの出力を
反転制御のCTRLレジスタの設定値で反転制御し、さらに
非線形結合部として桁上げつきの整数加算部を用いてい
ることにより、疑似乱数周期系列の線形複雑度が飛躍的
に大きくなる。これにより、前記従来の第1の課題が解
決できる。なお、第1の実施例では、CTRLレジスタが暗
号化データによって1ビットずつ更新される。しかし各L
FSRの内容は暗号化データにより影響を受けない。その
ため各LFSRをM系列生成LFSRで実現すると、0/1バランス
や周期などの特性も良好である。また、ビット誤りによ
る復号部の誤り拡大も大変少ない。
【0072】第2の発明は、第1の発明ではCTRLは全暗
号文を入力していたが、これをある暗号部と復号部でさ
だめられたタイミングだけ入力するといった方法であ
る。これによりある部分の暗号文が平文が既知である系
列と一致していたとしても、対応する疑似乱数が一致す
るとは限らないため、従来の第3の課題が解決できる。
【0073】第3の発明は、入力データを複数ビットま
とめて扱い、疑似乱数とのビット加算の前、または後
ろ、または両方にビット加算以外のデータ変換処理を含
めている。これにより既知の平文と暗号文から対応する
疑似乱数を直接求められない。また暗号文をまとめてCT
RLに格納するため複数ビットまとめての処理が可能であ
る。そのため、従来の第2、第3の課題を解決してい
る。このデータ変換処理としては、秘密の鍵をからめて
時刻や入力データによって処理が変化するものがよい。
第2の実施例では時刻によって変化する情報として疑似
乱数の変換した値を用いている。これ以外にも周期系列
生成器の出力等を用いることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施例における逐次暗号方式の
構成図
【図2】本発明の第2の実施例における逐次暗号方式の
構成図
【図3】第1の従来例における逐次暗号方式の構成図
【図4】第2の従来例における逐次暗号方式の構成図
【符号の説明】
1、21、101、201 暗号部 2、22、102、202 復号部 3、4、23、24、103、104、203、204
疑似乱数生成器 5、6、7、8、29、30、31、32、107、1
08、109 線形フィードバックシフトレジスタ 9、33 CTRLレジスタ 14、38 加算器 16、17、26、27、105、106 排他的論理
和ゲート 110、111、112 非線形変換部 113 スイッチ部
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平6−342257(JP,A) 特表 平8−505275(JP,A) APPLIED CRYPTOGRA PHY,John Wiley & S ons,Inc,2nd Editio n,p.369−428 NANDBOOK of APPLI ED CRYPTOGRAPHY,CR C Press,p.191−222 (58)調査した分野(Int.Cl.7,DB名) H04L 9/24 G09C 1/00 610 JICSTファイル(JOIS)

Claims (11)

    (57)【特許請求の範囲】
  1. 【請求項1】第1の疑似乱数生成器と、平文と前記第1
    の疑似乱数生成器の出力を入力として暗号文を算出する
    暗号文算出部からなる暗号部と、前記暗号部における疑
    似乱数生成器と同じ構成の第2の疑似乱数生成器と、暗
    号文と前記第2の疑似乱数生成器の出力を入力として復
    号文を算出する復号文算出部からなる復号部から構成さ
    れる逐次暗号方式であって、前記第1、第2の疑似乱数
    生成器は、内部状態を持ち内部状態の初期値が設定可能
    であり、線形操作により内部状態を更新しつつ内部状態
    によって決定される周期系列を順次出力する複数の周期
    系列生成器と、内部状態を持ち内部状態の初期値が設定
    可能であり、前記暗号文を入力する反転制御部と、全部
    または一部の前記周期系列生成器の出力を前記対応する
    反転制御部の内部状態によって反転する複数の反転処理
    部と、前記各反転処理部の出力を整数と見なして一時刻
    前の桁上げ信号と共に整数加算し、結果を前記疑似乱数
    生成器の出力とし、桁上げ信号を次の時刻に用いる整数
    加算部からなり、前記第1、第2の疑似乱数生成器にお
    ける周期系列生成器の初期値および反転制御部の初期値
    および整数加算部の桁上げ信号の初期値を前記暗号部、
    復号部共通の鍵とすることを特徴とする逐次暗号方式。
  2. 【請求項2】前記反転制御部を、初期値が設定可能であ
    り暗号文を順次入力するシフトレジスタで構成し、シフ
    トレジスタの格納値で前記反転処理部を制御することを
    特徴とし、シフトレジスタの初期値を前記暗号部、復号
    部共通の鍵とすることを特徴とする請求項1記載の逐次
    暗号方式。
  3. 【請求項3】前記反転制御部を、暗号文を順次入力する
    シフトレジスタと、初期値を格納する第1のレジスタ
    と、前記シフトレジスタの設定値と前記第1のレジスタ
    の設定値の演算値を格納する第2のレジスタで構成し、
    前記第2のレジスタの格納値で前記反転処理部を制御
    し、前記第1のレジスタの格納値を前記暗号部、復号部
    共通の鍵とすることを特徴とする請求項1記載の逐次暗
    号方式。
  4. 【請求項4】前記反転制御部を、初期値が設定可能であ
    り前記暗号文を入力としたレジスタで構成し、前記暗号
    文をレジスタに設定するタイミングを前記暗号部と復号
    部の共通の秘密にすることを特徴とする請求項1記載の
    逐次暗号方式。
  5. 【請求項5】前記反転処理部が、対応する前記周期系列
    生成器の出力と前記反転制御部の出力値の対応する値と
    の排他的論理和を計算して、その結果を出力する構成で
    あることを特徴とする請求項1記載の逐次暗号方式。
  6. 【請求項6】前記暗号文算出部において、平文と前記第
    1の疑似乱数生成器の出力のビットごとの排他的論理和
    を計算して、この結果を暗号文とし、前記復号文算出部
    において、暗号文と前記第2の疑似乱数生成器の出力の
    ビットごとの排他的論理和を計算して、この結果を復号
    文とすることを特徴とする請求項1記載の逐次暗号方
    式。
  7. 【請求項7】前記暗号文算出部において、第1の疑似乱
    数生成器の出力のビットごとの排他的論理和を計算する
    排他的論理和計算部と、その前または後ろまたは両方
    に、入力されるデータを変換するデータ変換部を備え、
    前記復号文算出部において、第2の疑似乱数生成器の出
    力のビットごとの排他的論理和を計算する排他的論理和
    計算部と、前記データ変換部に対応してデータ逆変換部
    を備えたことを特徴とする請求項1記載の逐次暗号方
    式。
  8. 【請求項8】前記暗号部における前記データ変換部が、
    入力されるデータと暗号部と復号部共通の秘密の鍵を用
    いて変換制御データを作成する変換制御部と、入力デー
    タを変換する変換処理部からなり、前記復号部における
    前記データ逆変換部が、前記暗号部における変換制御部
    と同じ変換制御部と、入力データを逆変換する逆変換部
    からなり、前記変換制御部の出力は、変換前のデータを
    入力した場合と変換処理後のデータを入力した場合と一
    致し、さらに変換処理部と逆変換部は変換制御データが
    同じ場合に、入力データを変換してもとに逆変換するこ
    とを特徴とする請求項7記載の逐次暗号方式。
  9. 【請求項9】前記変換制御部が、転置の対象となる複数
    のデータの排他的論理和を求めてこれと暗号部復号部共
    通の秘密の鍵を用いて変換制御データを作成し、変換処
    理部では変換制御データに従って入力データの転置を行
    い、復号部における逆変換処理部では同じ変換制御デー
    タに従って、入力データの逆の転値を行なうことを特徴
    とする請求項8記載の逐次暗号方式。
  10. 【請求項10】前記データ変換部、データ逆変換部が、
    初期設定値と前記疑似乱数生成器の出力を用いて前記入
    力データを変換および逆変換処理するものであり、前記
    暗号部においては前記データ変換部を前記第1の疑似乱
    数生成器の反転制御部との接続点の前に備え、前記復号
    部においては前記データ逆変換部を前記第2の疑似乱数
    生成器の反転制御部との接続点の後ろに備えたことを特
    徴とする請求項7記載の逐次暗号方式。
  11. 【請求項11】前記データ変換部、データ逆変換部が、
    初期設定値と前記疑似乱数生成器の構成要素である周期
    系列生成器の出力を用いて前記入力データを変換および
    逆変換処理するものであり、前記暗号部においては前記
    データ変換部を前記第1の疑似乱数生成器の反転制御部
    との接続点の前または後または両方に備え、前記復号部
    においては前記データ逆変換部を前記暗号部のデータ変
    換部の位置に対応して、前記第2の疑似乱数生成器の反
    転制御部との接続点の後または前または両方に備えたこ
    とを特徴とする請求項7記載の逐次暗号方式。
JP11290195A 1995-05-11 1995-05-11 逐次暗号方式 Expired - Fee Related JP3473171B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11290195A JP3473171B2 (ja) 1995-05-11 1995-05-11 逐次暗号方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11290195A JP3473171B2 (ja) 1995-05-11 1995-05-11 逐次暗号方式

Publications (2)

Publication Number Publication Date
JPH08307411A JPH08307411A (ja) 1996-11-22
JP3473171B2 true JP3473171B2 (ja) 2003-12-02

Family

ID=14598337

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11290195A Expired - Fee Related JP3473171B2 (ja) 1995-05-11 1995-05-11 逐次暗号方式

Country Status (1)

Country Link
JP (1) JP3473171B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5864491A (en) * 1997-11-10 1999-01-26 Telefonaktiebolaget L M Ericsson Apparatus and associated method for generating a pseudo random number
KR100308893B1 (ko) * 1999-04-16 2001-09-26 권 기 홍 엘.에프.에스.알을 이용한 확장 알.씨.4 암호화 방법
TWI737592B (zh) * 2015-03-23 2021-09-01 日商新力股份有限公司 影像感測器、影像處理方法及電子機器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
APPLIED CRYPTOGRAPHY,John Wiley & Sons,Inc,2nd Edition,p.369−428
NANDBOOK of APPLIED CRYPTOGRAPHY,CRC Press,p.191−222

Also Published As

Publication number Publication date
JPH08307411A (ja) 1996-11-22

Similar Documents

Publication Publication Date Title
Lim CRYPTON: A new 128-bit block cipher
KR100435052B1 (ko) 암호화장치
Mitchell Enumerating Boolean functions of cryptographic significance
JP4127472B2 (ja) データ変換装置及びデータ変換装置のデータ変換方法及びプログラム及びコンピュータ読み取り可能な記録媒体
KR100362458B1 (ko) 암호화 처리장치, 암호화 처리방법 및 보안성을 손상시키지 않고 고속으로 암호화 처리를 실현하는 암호화 처리 프로그램을 기록하는 기록매체
JPH0863097A (ja) データを暗号化するための対称暗号化方法およびシステム
US8122075B2 (en) Pseudorandom number generator and encryption device using the same
JP3180836B2 (ja) 暗号通信装置
KR20050078271A (ko) 저전력 고속 동작을 위한 하드웨어 암호화/복호화 장치 및그 방법
CN111064562A (zh) 一种fpga上的aes算法的实现方法
Kim et al. Efficient masking methods appropriate for the block ciphers ARIA and AES
JP3473171B2 (ja) 逐次暗号方式
RU2141729C1 (ru) Способ криптографического преобразования блоков двоичных данных
US20050147244A1 (en) Method for cryptographic transformation of binary data blocks
JP2000209195A (ja) 暗号通信システム
JP2002217898A (ja) 擬似乱数生成システム
EP1001398B1 (en) Ciphering apparatus
RU2738321C1 (ru) Способ криптографического преобразования и устройство для его осуществления
KR100756435B1 (ko) 키스트림 생성방법 및 장치
JPH1124558A (ja) 暗号装置
KR100350207B1 (ko) 디지털 데이터의 엘-비트 입력 블록들을 엘-비트 출력비트들로 암호 변환하는 방법
JPH1152850A (ja) 暗号変換方法および装置
Pal et al. A novel block cipher technique using binary field arithmetic based substitution (BCTBFABS)
KR100200531B1 (ko) 암호화 방법 및 시스템
Yoshioka A Circuit Design of Discretized Chaotic Maps with Two Iterations for Speeding up S-box Generation

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees