JPS6016779B2 - ブロツク単位暗号化装置 - Google Patents
ブロツク単位暗号化装置Info
- Publication number
- JPS6016779B2 JPS6016779B2 JP52047515A JP4751577A JPS6016779B2 JP S6016779 B2 JPS6016779 B2 JP S6016779B2 JP 52047515 A JP52047515 A JP 52047515A JP 4751577 A JP4751577 A JP 4751577A JP S6016779 B2 JPS6016779 B2 JP S6016779B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- box
- register
- data
- encryption
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Description
今日の産業界では、データの秘匿性及び保安に対する要
望が次第に強まっている。 通信の分野では、無線通信又は電話線を介して伝送され
るデータは傍受並びに無許可の利用或いは変更を受ける
余地がある。計算機産業では、例えば種々の貯蔵装置に
アクセスすることにより、或いは端末の間で若しくは端
末と遠隔アクセス式計算機網の主局の闇で伝送されるメ
ッセージを傍受することにより、無許可でデータを取得
することが出来る。この様な回線では、多数の加入者が
、秘密の性格を持つ情報を受取り、保存し、処理し並び
に供給する為に、データ・バンクにアクセス出来る。こ
の様なシステムに於けるデータの保安の必要性は幾ら強
調しても、強調しすぎることはない。一般的に、今日の
計算センターは、中央処理装置並びにデータ処理設備が
設けられている場所での物理的な保安には大がかりな体
制をしいている。 例えば、その為に用いられている若干の体制を挙げると
、人が計算センターに出入りするのを制限すること、装
置を作動するのに機械的なキーを利用していること、並
びにカメラによる監視がある。こういう保安体制は、無
許可の人間を計算センターの建物自体から遠ざける点で
は或る程度の安全を成就しているが、遠隔の場所にある
多数の端末がケーブル又は電気通信線路を介して中央処
理装置に接続されている大規模な遠隔アクセス式計算機
網には有効ではない。データの秘匿性を保持する為、計
算システムに或るディジタル方式が用いられている。 この1つの方式は、一般的に記憶装置保護と呼ばれる装
置を使うものである。この形式のデータ保安方式は、中
央処理装置内にある貯蔵装置の選ばれた部分に対して独
得の2進キーを関係づけている。処理装置の内部には、
実行し得る命令の操作並びに貯蔵装置の一部分に対する
アクセスの際、2進キーが合うかどうかを検査する種々
の保護回路がある。この形式の保安手段は、無許可の人
間でも、計算システムの回路を知っていて、無許可でデ
ータを非合法に呼出す巧みなプログラミング手法を工夫
することが出来る者がいれば、計算システム内の情報を
いういう人間から保護するのには一般的に無効である。
通信の分野では、暗号方法が保安並びに秘匿性を保つ手
段として従来から認識されている。 従来、通信の秘匿性を守る為、メッセージを暗号化する
多くの方式が開発されている。例えば、平明文メッセー
ジから暗号文を作成する為に使われて来た周知の1つの
方法は換字である。換字方式では、平明なメッセージを
構成する文字又は記号を予定のキーに従って他の何等か
の記号と取替える。この結果得られた置換メッセージは
暗号であって、秘密が保たれると考えられ、秘密キーを
知らなければ理解することが出釆ないという希望が持て
る。所定のキーに従って換字を行なうことの特定の利点
は、キーを逆に適用することによって解読動作が容易に
実施出来ることである。換字方式の普通の実施が、例え
ば米国特許第2964856号及び同第298470び
号‘こみられる。更に高級な襖字方式の設計原理が、ベ
ル・システム・テクニカル・ジャーナル誌第28巻、第
656頁乃至第715頁(194単王10月号)所載の
C.E.シャノンの論文「コミニユケイション・セオリ
・オブ・セクレシィ・デバィセズ」に記載されている。 この論文には、暗号法のその後の発展の例として、プロ
ダクト・サィフア法が説明されている。即ち、互いに異
なる2種類又は更に多くの種類のメッセージ‐記号間変
換を順次適用するものである。プロダクト・サィフア法
の1例は、記号の置換をした後、記号の晋べ換え(転字
)を行なつo計算機のデータ通信の分野では、サィェン
テフィック・アメリカン誌第22群登、第5号、(19
72壬5月号)、第15頁乃至第23頁所載の日.フェ
イステルの論文「クリブトグラフイ・アンド・コンピュ
ータ.プライバシィ」に論じられている様に、プロダク
ト・サィフア法が他の種類の暗号方式よりもすぐれてい
ることが一般的に認められている。 プロダクトご・サィフア法の例が前に挙げた米国特許第
379835y号及び同第379683ぴ号の記載され
ている。こういう特許には、独特なュ一ザ・キーの制御
の下にブロック暗号を発生する装置が記載されている。
データ・ブロックの大きさ並びにキーの大きさを注意深
く選ぶと、暗号が見破られる確率は極めて小さくなる。
即ち、キーのあらゆる組合せを試すことによって、暗号
を解読しようとするのは実際上不可能になる。暗号文が
独特なユーザ・キーについて何の情報も表わしていない
場合、特にそうである。前に述べたブロック単位暗号化
方式(bl比kciphercr沖to匁aphics
$tem)特に襖字を利用するものは、極めて安全な贈
号を作るのに利用することが出来る。 然し、こういう方式でこの様な暗号を作るのに払わなけ
ればならない対価として、暗号化過程を何回も繰返さな
ければならない。例えば、この様な方式を利用して満足
すべき安全さを持つ暗号を作るには、1母重行なうこと
が最小限であると考えられる場合が多い。米国のザ・ナ
ショナル・ビューロー・オブ・スタンダースは、政府機
関が新しいプラィバシィ関係の法律を実施するのに役立
つ政府用の規準とする為、最近、r計算機データ保護用
暗号アルゴリズム」と云う題の連邦情報処理基準を提案
した。提案された規準が詳しい技術的な説明と共にフェ
デラル・レジスタ第4鏡費、第52号、1973王3月
17日号(月曜日)、第121乳貢乃至第12139頁
に記載されている。この様なブロック単位暗号化方式の
問題点は、任意の所定のデータ・ブロックxが出力ブロ
ックyに変換され、全ての場合に同じキーが使われると
仮定すると、同一のxは常に同一のyを出力として発生
することである。 後で第1表乃至第5表について更に詳しく説明するが、
暗号化しようとする所定の記録内に同一のブロックの大
きなストリングが発生する場合、問題になることがある
。例えば、多くの空白が存在する計算機の原始コードが
そうである。更に、上に述べたブロック単位方式は、い
ずれの場合も完全なデータ・ブロックを受取ると想定し
ており、短いブロックがあった場合は、暗号化の前に人
工的に埋合せてから、完全に修復したブロック形式で送
出しなければならない。 これは不必要な又は情報でないデータを貯蔵装置に入れ
ることを必要としたり、或いはそれに対応して情報でな
いデータを伝送することを必要とするので、いろいろの
点で不利である。暗号化形式で変換しようとする新しい
各々のデータ・ブロックを、その方式に於けるこれ迄の
データの流れの内の或る要素を表わすデータ部分と、暗
号化作業の前に、数学的に可逆の変換で絹合せることに
より、上に述べたキー制御式ブロック単位暗号化方式の
出力の反復性を除くことが出釆ることが判った。 更に、新しい各々の入力データ・ブロックをそれより前
の暗号文ブロックと粗合せることにより、誤りの伝播が
ごく制限されることが判った。更に、短いブロックは、
この短いブロックの外部で求めたデータ・ブロックのキ
ー制御式変換と短いブロックとを紐合せることによって
、処理することが出来る。 従って、この発明の主な目的は、同一の入力データ・ブ
ロックが暗号変換によって相異なる出力データ・ブロッ
クを生ずる様なキー制御式ブロック単位暗号化装置を提
供することである。 キー制御式ブロック単位暗号化装置を設け、装置に対す
るデータ入力をュ−ザから供給される独得な2進キーK
の制御の下に変換することにより、この発明の目的の一
部分が達成される。 この変換は表式fKで表わすことが出来る。この発明で
は、暗号化装置からの出力が装置から直接的にゲートさ
れると共に、装置の入力へ戻され、そこで逆関数を持つ
離散的な操作である第1の変換により、装置に入力され
る新しいデータ・ブロックと組合される。この第1次変
換の結果をキー制御式ブロック単位暗号化装置に再び導
入し、それ以上の入力ブロックが利用来なくなるまで、
この過程を続ける。この装置の別の面として、特別の短
ブロック暗号化ルーチンを利用する。 装置の入力に短いブロックが出て来た時、独得な定数又
はブロック単位暗号化装置のそれ迄の出力をブロック単
位暗号化装置に通し、変換fKを完了した時、こうして
変換された定数を前記第1次変換を通じて短いデータ・
ブロックと細合せる。第1次変換の出力は短いブロック
であり、これが装置から直接的に送出されると共に、そ
れが短いブロックであるという表示がつけられる。この
発明を利用すると、従来のブロック単位暗号化装置の誰
の目にも明らかな弱点がなくなる。 夫々の場合に同じキーを利用すると仮定すると、所定の
データ・ブロックは常に同じ暗号文又は暗号化されたデ
ータ・ブロックを生ずる。従って、或る暗号文ブロック
が同一であると判ると、対応する平明文ブロックが同一
であることが判る。その内の1つが判っていれば、全て
が判る。どれも判らなくても、統計又は前後関係から推
察することが出来る。例えば、計算機の原始プログラム
では、空白の多数のブロックがよくあり、これはその反
復的なパターンから暗号文中で確認することが出来る。
他の点では強力なブロック単位暗号化方式で、この様に
露呈することはあまり重大でないことがあり、暗号文の
他の部分の暗号解読の成功に通ずることはないかも知れ
ないが、或る限られた情報が判り、他の情報についても
限られた範囲で推量が出来ることがある。 この問題に対するこの発明の解決策は、暗号化の前に、
各々の平明文ブロックxiをその前の暗号文ブロックy
i‐,又はブロックyi‐・・yi‐2・・.・・・・
及び場合によってキーK又はこれらの何等かの関数(必
ずしも可逆でなくてよい)と可逆的に組合わせることで
ある。 以下、直ぐ前の暗号文ブロックyi‐,に直接的に関係
する場合を説明するが、これは好ましい実施例であり、
この問題を解決する適切な保護になる。(強力なブロッ
ク単位暗号化と共に)と考えられる。然し、2つより多
くの先行するブロック又は場合によってキーにも直接的
に関係することを排除するものではない。この過程をこ
)ではブロック連鎖と呼ぶ。数学的に云うと、暗号化は
(E)yFfK(×由)g(yi−,)):i=1,2
,・・・・・・で構成される。 或いはこれと等価であるが、更に詳しく工程に分けて云
うと(Ea):ui=g(yi−,) (Eb):×i′ニ×i由u, (Ec):yi=fK(xi′) こ)でfは現存のブロック暗号、Kはキー、gは必ずし
も可逆でなくてよいが、全ての暗号ブロックに対して定
義された或る離散値を持つ関数、由は全てのメッセージ
・ブロックx及びgの全ての値uに対して定義された何
等かの2数演算で、その値が許容し得る暗号ブロックで
あり、右逆元(rightinverse)日を有する
。 即ちx′=x由u及びuからx=x′日uを一意的に決
定することが出来る。xi及びyiはiはi番目の平明
文及び賭号文ブロック、yoは何等かの形で定義する。
例えば或る定数KIとして定義する。yiがxi及びy
i‐,に関係し、yi‐,がxi‐,及びy:‐2に関
係するという風になるから、yiがfKを通じて、xi
,xi‐,,……,均,x,及びyoに関係し、従って
x,乃至xiの全ての暗号文ブロック、即ちxi並びに
これまでの経過に関係することは明らかである。 従って、同じ或いは異なる記録にあるか、又は同じキー
を持つ暗号系列内にある2つの平明文ブロックxi,及
びxi2又はxifl)及びxif2)がたまたま等し
くても、それらのそれまでの経過が同一でなければ、そ
れらを暗号にしたものが等しくない可能性が大きい。こ
ういう暗号文が等しくないことが所望の性質である。前
掲の式(E}の利用し得る2つの特別な場合は次の通り
である。 {1’関数gが同一性で、(Eal):u=g(y)=
y{2)gがyの4バイトから成る両半分を交換して構
成されること。 これは(Ea2):u=g(y)=yと表わされる。 この両方の場合、由は由と定義される。即ち(Eb)は
モジュロ2のビット毎の加算ト則ち排他的オアである。
この時日も由である。他の多くの関数g及び由を利用し
得る。例えばu=g(y)はyのビットの或る一定の小
集合の和又は排他的オアで、場合によって転字を含んで
いてよい。由はオーバフロ−を抑制した桁上げつきの加
算であってよく、日は対応する減算になる。或し、はx
′=x由uはuビット位置だけ循環的に左(又は右)へ
シフトしたxを意味するものであってよい。(Eal)
及び(Ea2)に対する{E}のこういう特別の場合は
次の様に書くことが出来る。(EI)yi=fK(xi
由yi‐,) :i:1,2,・・・・・・ (E2)yi=fK(xi田yi‐,) :i=1,2,…・・・ E,EI及びE2に対応する復号式は次の通りである。 ■×iニf反1(yi)日g(yi−,):i=1,2
,・・・・・・(D,)xi=fR1(yi)田yi‐
,:i=1,2,・…・・ (D2)xi=fR1(yi)由ヤi‐,:i=1,2
,・・・・・・ こ)でf‐1は復号様式に於ける現存のブロック暗号で
あり、金はeと同一である。 全ての場合、xiの復号がyi及びyi−,(及びK)
を知ることだけに関係し、それより前のyを知ることに
は関係がないという重要な性質に注意されたい。 従ってトy,を伝送又は受信し、或いは書込み又は謙取
る際の誤りは、xi(もとの誤りがfRIを伝播する為
、ブロック中に生ずる誤りが大きい)並びにxM(もと
の誤りがg及び日を伝播する為に、その結果生ずる誤り
は小さい)だけの誤った復号を招くが、他のxには関係
しない。yiを計算する際の誤りはxiだけの誤った復
号を招くが、xi+,の誤った復号は招かない。もっと
も、後続のyは他の場合とは異なる。こういう性質は、
(その平明文が保安及び経済性の為、保存されない場合
が多い)ファイル、又は繰返すことが出来ない通信を暗
号化する時、各々の誤りによって1つ又は2つのブロッ
クしか判読不能にならず、ファイル又はメッセージの他
の部分は判読不能にならないので、非常に重要である。
暗号文のこの性質は自己治癒性又は限界つき誤り伝播と
呼ぶことが出来る。計算機のファイルは記録と呼ばれる
部分(普通は1つ又は更に多くのブロックを含む)に小
分けされる場合が多い。 これが第2図に明らかに示されている。この実施例では
、‘1}各々の記録の初めにブロック連鎖の初期設定を
再び行なうこと、又は‘2’1つの記録の終りから次の
記録の初めへブロック連鎖を継続することのいずれを選
択してもよい。簡単なブロック連鎖は、各々の個別の記
録をそれより前のものとは無関係に復号することが出来
るという利点がある。 たゞ、たまたま同一の最初のブロックを持ち、の後場合
によって同一の2番目のブロック等を持つ記録は、その
平明文ブロックで相次いで一致する限り、同じ数の暗号
文ブロックにわたって、暗号が同一になるという欠点が
ある。記録の連鎖が大抵の場合に好ましいと思われる。 これは、同一の記録又は同一の形で始まる記録が全く違
って暗号化され、同一又は同様であると確認することが
出来ないという利点がある。記録がファイルの初めから
暗号化され、その後逐次的に復号される場合、何等それ
に従う欠点がない。記録が順序をくずして(ランダム・
アクセスで)復号され又は更新(変更並びに再暗号化)
される場合、各々の記録の最初のブ。ックは一般に誤っ
て復号される。各々の記録の最初のブロックを無関係な
フィールドとして使うことにより、これから生ずる悪影
響を避けることが出来る。このフィールドの予め暗号化
された値は任意であってよく、それを後で復号した値は
無視することが出来る。ブロック単位暗号化方式の別の
問題は、ブロックの長さの倍数でない長さを持つ記録を
暗号化する場合である。 1つの解決策は、ブロックの長さの倍数になるまで、記
録に詰込み(パッテング)を行なうこと(即ち付加的な
バイト(又はビット)を用いてその長さを長くすること
)である。然し、この為には記録の長さを長くすること
並びに詰込みの分量を表示することが必要であるが、そ
のいずれも、特に計算機のファイルを管理をする場合に
は望ましくないことがある。この発明は、短いブロック
xi=(xi、i:j=1,2,・…”,LiくL)(
こ)でLは標準のブロックの長さである)で構成される
半端のバイト(又はビット)xwを暗号化する方法を含
む。 この方法は短いブロックの長さLiを保存するが、勿論
、利用し得る知識(K並びに好ましくは前の何等かのx
並びに/又はyに関する適当な情報)に基づいて可逆で
なければならない。長さを保存しようとする場合、詰込
まれたxiをブロック暗号に仕立てても役に立たない。 これは、長さLの暗号を長さLiに切断しなければなら
ないし、暗号の捨てた部分がなければ、復号によってx
iが回復不能だからである。この実施例では、xi=(
xi,i:i=1,・・・…,Li)という形の短いブ
ロックを(8)yi=xi金h(K,yi‐,) という形式の規則によって暗号化する。 こ)でh(K,yi‐,)はyi‐,(並びに場合によ
ってはそれより前のyo但しこの必要ははないと思われ
る)の(必ずしも可逆である必要はないが)何等かのキ
ー依存性を持つ関数であり、金は全ての短いブロックx
i並びにhの全ての値に対して定義された2数操作であ
って、逆関数昼を持つ。この為、yi及びh(K,yi
‐,)からxiを回復することが出来る。下記(〇)参
照。由及び金の1つの違いは、田は長さLのxiに作用
するが、金は任意の長さLi<Lのxiに作用すること
である。 この実施例では、両者に対して排他的オア■を使うが、
曲こ対しては、由が右−引数の全体に対して作用するの
に対し、企に対しては、それが右−引数の内の最初のL
;/ゞィト又はビットだけに作用する。関数h(K,y
i‐,)は、キ」依存性を持っていてもいなくても、単
なる定数であってはならない。 これは暗号文の内の十分多くの短いブロックがあれば、
周知の統計的な手法並びに前後関係から判断する方法並
びに考えられる平明文に対する既知の拘束から、この定
数を回復し、従って平明文の短いブロックを回復するこ
とが出来る様になるからである。その為、これは暗号化
毎の変えるべきであり、それがこれをyi‐.に依存す
る様にした理由である。これは簡単にyi‐,に依存す
るもの、即ちh(K,yM)=h(yi‐,)にするこ
とは出来ない。 これはyi‐,は相手側にも判っており、関数h‘ま、
全ての暗号アルゴリズムと同じく、公知と考えなければ
ならないからである。この為、これは合法的なユーザに
は判るが、相手側には判らない様な形で、即ちキーに依
存性を持つ形でyi−,に依存しなければならない。完
全なブロックの連鎖の場合に使われるのと同様に、少な
くとも2種類の方法が可能である。‘1}h(K,yi
−,)=fK(yH)‘21h(K,yi‐,)=fK
(ヤH)完全なブロックの連鎖と同様に、操作金は排他
的オア由に選ぶか、最初にh(K,yi‐,)を長さL
iに切断した後に行なう。 然し、完全なブロックの連鎖と異なり、操作金又は田は
fKを使う前ではなく、使った後に適用される。即ち伍
′1)yi,j=xw由(fK(yi‐,)),j:j
=・,..,...,Li(E′2)yi,1=xi,
i■(fK(yi‐,)),j:j:・,.…..,L
iこ)で(・・・・・・)、iは(・・・・・・)内の
表式のi番目のバイト(又はビット)を表わす。 フロック連鎖との統一をとる為、{2}の方法が好まし
いが、{1ー及び■のどちらをとるかは重要ではない。 暗号の保安の点からすると、関数h(K,y)はKを知
らなければyをh(K,y)から容易に演縛することが
出来ない様になっていること、並びにh(K,y)が好
ましくは一番長い短いブロックと少なくとも同じだけの
みかけ上独立のビットを含むこと(fKによって発生さ
れる長さLで十分である)が重要である。対応する復号
式は次の通りである。 (〇)xi=yi8h(K,yH) (D′,)xi,1=yi,j由(fK(yi‐,))
,j:j=1......Li(D′2)xi,1=y
i,i由(fK(yi‐,)),j:j=IL短いブロ
ックを復号する時、暗号化工程を行なうことに注意され
たい。 記録の連鎖を使わず、ブロックが記録の初めにあり、従
って記録全体である場合(即ち、記録がフロックよりも
長さの短い「短い記録」である場合)、〔E}又は(E
,)又は(E2)と統一をとる為、規則(8)又は(E
′.)又は(82)を使いyoはブロック連鎖の場合と
同じ様に定義する(但し、yoは付加的な暗号化を受け
ることに注意されたい)。 この結果、全ての短い記録は、一定のキー依存性を持つ
定数h(K,yo)を金又は■に従って加算することに
よって暗号化される。前に述べた様に、この様なデータ
は十分な分量があると、暗号解読が出来、定数が判り、
従って短い記録の平明文が判る。然し、ブロック暗号が
十分強力であれば、前後関係による以外に、一層長い記
録がその為に蟻性になることはない。然し、記録の連鎖
を使うと、それが望ましいことであるが、最初の記録の
後の各々の記録の最初のブロック(完全であっても短く
ても)に連鎖する為、yoの代りに、直ぐ前の記録の暗
号化の際にブロック単位暗号化装置から出て来た最新の
値vを使う。 この様に記録を連鎖する動作様式では、短い記録でも長
いものと同じ様に強力に暗号化することが出来、一般に
同一の短い記録は、希望する通り、それに連鎖したvが
一般的に異なる為、異なる暗号になる。 記録の内部で並びに記録どうしの間で完全なブロック並
びに短いブロックに連鎖する前述の方式は、各々の初期
設定の時にyo=K,に設定され且つその後完全でも短
くても、最新のブロックの暗号化の際にブロック単位暗
号化装置から出て来た最新の値となる、ブロックの値を
表わす変数として、連鎖値を表わす今述べた記号vを使
うことにより、記号として統一することが出来る。 ブロックが完全なブロックであれば、vはその結果得ら
れる暗号文yである。短いブロックであれば、vは前の
vを再び暗号化したもの(又はv)であり、短い暗号文
yを作る為に短い平明文xと組合されるものである。こ
のvを用いると、上に述べた説明並びに式は次の様に統
一される初期設定が行なわれる時(即ち、ブロック連鎖
の場合(記録の連鎖ではなく))には各々の誼緑の初め
に、又は(ブロック及び)記録の連鎖では、各々のファ
イルの初めに、暗号化でも復号でも、次の様に指定する
ことが来る。 V=yo=K, その後(次の初期設定の時まで)、暗号化又は復号並び
にvの更新は次の規則に従う。 暗号化の場合 各々の完全なブロックxiに対し u=g(v) ×′i=×i由u y三:fK(X′i) V=yi 各々の部分的なブロックxi=(xi,j:i=1,2
,……,Li<Lに対しU=g(v) V=fK(u) yi=×{金v 復号の場合 各々の完全なブロックxiに対し u=g(v) X′i=f吏1くyi) ×iニ×′i日u V=yi 各々の部分的なブロックyi=(yiv:i=1,2,
……,LiくL)に対しu=g(v) V=fK(u) ×i:yi今v フロック単位暗号化方式に対するこの発明の改良につい
て上に理論的に述べたことは、この様な方式の暗号の安
全性を改善するこの発明の方式の根本的な考えを述べた
ものである。 暗号文の改善は第1表乃至第5表に非常に明瞭に認めら
れる。 第1表には、典型的なデータ・ファイル(一連のプログ
ラム・ステートメント)が平明文の形でで示されており
、これから判る様に、この様なデータ印字出力にとって
典型的な様に、多数の空白スペースを持っている。この
様な多数の空白があることはどういうことかと云うと、
それらがファイル内に多数の同一のブロックを形成し、
この様なファイルを暗号化したものは、第2表に示す最
初の暗号文から明らかな様に、相当の冗長性又は操返し
を持つ。第2表はこの発明の考えを適用しなかった場合
である。即ち、第2表の00000000000000
00000000000000000000000−N
(コW心ト00○rNhコ町○トのび○「Nhコの・〇
ト000rN〔ご町○ト。 〇。〇。〇。〇。・←−′−r′r「rNNNNNNN
NNNhh
望が次第に強まっている。 通信の分野では、無線通信又は電話線を介して伝送され
るデータは傍受並びに無許可の利用或いは変更を受ける
余地がある。計算機産業では、例えば種々の貯蔵装置に
アクセスすることにより、或いは端末の間で若しくは端
末と遠隔アクセス式計算機網の主局の闇で伝送されるメ
ッセージを傍受することにより、無許可でデータを取得
することが出来る。この様な回線では、多数の加入者が
、秘密の性格を持つ情報を受取り、保存し、処理し並び
に供給する為に、データ・バンクにアクセス出来る。こ
の様なシステムに於けるデータの保安の必要性は幾ら強
調しても、強調しすぎることはない。一般的に、今日の
計算センターは、中央処理装置並びにデータ処理設備が
設けられている場所での物理的な保安には大がかりな体
制をしいている。 例えば、その為に用いられている若干の体制を挙げると
、人が計算センターに出入りするのを制限すること、装
置を作動するのに機械的なキーを利用していること、並
びにカメラによる監視がある。こういう保安体制は、無
許可の人間を計算センターの建物自体から遠ざける点で
は或る程度の安全を成就しているが、遠隔の場所にある
多数の端末がケーブル又は電気通信線路を介して中央処
理装置に接続されている大規模な遠隔アクセス式計算機
網には有効ではない。データの秘匿性を保持する為、計
算システムに或るディジタル方式が用いられている。 この1つの方式は、一般的に記憶装置保護と呼ばれる装
置を使うものである。この形式のデータ保安方式は、中
央処理装置内にある貯蔵装置の選ばれた部分に対して独
得の2進キーを関係づけている。処理装置の内部には、
実行し得る命令の操作並びに貯蔵装置の一部分に対する
アクセスの際、2進キーが合うかどうかを検査する種々
の保護回路がある。この形式の保安手段は、無許可の人
間でも、計算システムの回路を知っていて、無許可でデ
ータを非合法に呼出す巧みなプログラミング手法を工夫
することが出来る者がいれば、計算システム内の情報を
いういう人間から保護するのには一般的に無効である。
通信の分野では、暗号方法が保安並びに秘匿性を保つ手
段として従来から認識されている。 従来、通信の秘匿性を守る為、メッセージを暗号化する
多くの方式が開発されている。例えば、平明文メッセー
ジから暗号文を作成する為に使われて来た周知の1つの
方法は換字である。換字方式では、平明なメッセージを
構成する文字又は記号を予定のキーに従って他の何等か
の記号と取替える。この結果得られた置換メッセージは
暗号であって、秘密が保たれると考えられ、秘密キーを
知らなければ理解することが出釆ないという希望が持て
る。所定のキーに従って換字を行なうことの特定の利点
は、キーを逆に適用することによって解読動作が容易に
実施出来ることである。換字方式の普通の実施が、例え
ば米国特許第2964856号及び同第298470び
号‘こみられる。更に高級な襖字方式の設計原理が、ベ
ル・システム・テクニカル・ジャーナル誌第28巻、第
656頁乃至第715頁(194単王10月号)所載の
C.E.シャノンの論文「コミニユケイション・セオリ
・オブ・セクレシィ・デバィセズ」に記載されている。 この論文には、暗号法のその後の発展の例として、プロ
ダクト・サィフア法が説明されている。即ち、互いに異
なる2種類又は更に多くの種類のメッセージ‐記号間変
換を順次適用するものである。プロダクト・サィフア法
の1例は、記号の置換をした後、記号の晋べ換え(転字
)を行なつo計算機のデータ通信の分野では、サィェン
テフィック・アメリカン誌第22群登、第5号、(19
72壬5月号)、第15頁乃至第23頁所載の日.フェ
イステルの論文「クリブトグラフイ・アンド・コンピュ
ータ.プライバシィ」に論じられている様に、プロダク
ト・サィフア法が他の種類の暗号方式よりもすぐれてい
ることが一般的に認められている。 プロダクトご・サィフア法の例が前に挙げた米国特許第
379835y号及び同第379683ぴ号の記載され
ている。こういう特許には、独特なュ一ザ・キーの制御
の下にブロック暗号を発生する装置が記載されている。
データ・ブロックの大きさ並びにキーの大きさを注意深
く選ぶと、暗号が見破られる確率は極めて小さくなる。
即ち、キーのあらゆる組合せを試すことによって、暗号
を解読しようとするのは実際上不可能になる。暗号文が
独特なユーザ・キーについて何の情報も表わしていない
場合、特にそうである。前に述べたブロック単位暗号化
方式(bl比kciphercr沖to匁aphics
$tem)特に襖字を利用するものは、極めて安全な贈
号を作るのに利用することが出来る。 然し、こういう方式でこの様な暗号を作るのに払わなけ
ればならない対価として、暗号化過程を何回も繰返さな
ければならない。例えば、この様な方式を利用して満足
すべき安全さを持つ暗号を作るには、1母重行なうこと
が最小限であると考えられる場合が多い。米国のザ・ナ
ショナル・ビューロー・オブ・スタンダースは、政府機
関が新しいプラィバシィ関係の法律を実施するのに役立
つ政府用の規準とする為、最近、r計算機データ保護用
暗号アルゴリズム」と云う題の連邦情報処理基準を提案
した。提案された規準が詳しい技術的な説明と共にフェ
デラル・レジスタ第4鏡費、第52号、1973王3月
17日号(月曜日)、第121乳貢乃至第12139頁
に記載されている。この様なブロック単位暗号化方式の
問題点は、任意の所定のデータ・ブロックxが出力ブロ
ックyに変換され、全ての場合に同じキーが使われると
仮定すると、同一のxは常に同一のyを出力として発生
することである。 後で第1表乃至第5表について更に詳しく説明するが、
暗号化しようとする所定の記録内に同一のブロックの大
きなストリングが発生する場合、問題になることがある
。例えば、多くの空白が存在する計算機の原始コードが
そうである。更に、上に述べたブロック単位方式は、い
ずれの場合も完全なデータ・ブロックを受取ると想定し
ており、短いブロックがあった場合は、暗号化の前に人
工的に埋合せてから、完全に修復したブロック形式で送
出しなければならない。 これは不必要な又は情報でないデータを貯蔵装置に入れ
ることを必要としたり、或いはそれに対応して情報でな
いデータを伝送することを必要とするので、いろいろの
点で不利である。暗号化形式で変換しようとする新しい
各々のデータ・ブロックを、その方式に於けるこれ迄の
データの流れの内の或る要素を表わすデータ部分と、暗
号化作業の前に、数学的に可逆の変換で絹合せることに
より、上に述べたキー制御式ブロック単位暗号化方式の
出力の反復性を除くことが出釆ることが判った。 更に、新しい各々の入力データ・ブロックをそれより前
の暗号文ブロックと粗合せることにより、誤りの伝播が
ごく制限されることが判った。更に、短いブロックは、
この短いブロックの外部で求めたデータ・ブロックのキ
ー制御式変換と短いブロックとを紐合せることによって
、処理することが出来る。 従って、この発明の主な目的は、同一の入力データ・ブ
ロックが暗号変換によって相異なる出力データ・ブロッ
クを生ずる様なキー制御式ブロック単位暗号化装置を提
供することである。 キー制御式ブロック単位暗号化装置を設け、装置に対す
るデータ入力をュ−ザから供給される独得な2進キーK
の制御の下に変換することにより、この発明の目的の一
部分が達成される。 この変換は表式fKで表わすことが出来る。この発明で
は、暗号化装置からの出力が装置から直接的にゲートさ
れると共に、装置の入力へ戻され、そこで逆関数を持つ
離散的な操作である第1の変換により、装置に入力され
る新しいデータ・ブロックと組合される。この第1次変
換の結果をキー制御式ブロック単位暗号化装置に再び導
入し、それ以上の入力ブロックが利用来なくなるまで、
この過程を続ける。この装置の別の面として、特別の短
ブロック暗号化ルーチンを利用する。 装置の入力に短いブロックが出て来た時、独得な定数又
はブロック単位暗号化装置のそれ迄の出力をブロック単
位暗号化装置に通し、変換fKを完了した時、こうして
変換された定数を前記第1次変換を通じて短いデータ・
ブロックと細合せる。第1次変換の出力は短いブロック
であり、これが装置から直接的に送出されると共に、そ
れが短いブロックであるという表示がつけられる。この
発明を利用すると、従来のブロック単位暗号化装置の誰
の目にも明らかな弱点がなくなる。 夫々の場合に同じキーを利用すると仮定すると、所定の
データ・ブロックは常に同じ暗号文又は暗号化されたデ
ータ・ブロックを生ずる。従って、或る暗号文ブロック
が同一であると判ると、対応する平明文ブロックが同一
であることが判る。その内の1つが判っていれば、全て
が判る。どれも判らなくても、統計又は前後関係から推
察することが出来る。例えば、計算機の原始プログラム
では、空白の多数のブロックがよくあり、これはその反
復的なパターンから暗号文中で確認することが出来る。
他の点では強力なブロック単位暗号化方式で、この様に
露呈することはあまり重大でないことがあり、暗号文の
他の部分の暗号解読の成功に通ずることはないかも知れ
ないが、或る限られた情報が判り、他の情報についても
限られた範囲で推量が出来ることがある。 この問題に対するこの発明の解決策は、暗号化の前に、
各々の平明文ブロックxiをその前の暗号文ブロックy
i‐,又はブロックyi‐・・yi‐2・・.・・・・
及び場合によってキーK又はこれらの何等かの関数(必
ずしも可逆でなくてよい)と可逆的に組合わせることで
ある。 以下、直ぐ前の暗号文ブロックyi‐,に直接的に関係
する場合を説明するが、これは好ましい実施例であり、
この問題を解決する適切な保護になる。(強力なブロッ
ク単位暗号化と共に)と考えられる。然し、2つより多
くの先行するブロック又は場合によってキーにも直接的
に関係することを排除するものではない。この過程をこ
)ではブロック連鎖と呼ぶ。数学的に云うと、暗号化は
(E)yFfK(×由)g(yi−,)):i=1,2
,・・・・・・で構成される。 或いはこれと等価であるが、更に詳しく工程に分けて云
うと(Ea):ui=g(yi−,) (Eb):×i′ニ×i由u, (Ec):yi=fK(xi′) こ)でfは現存のブロック暗号、Kはキー、gは必ずし
も可逆でなくてよいが、全ての暗号ブロックに対して定
義された或る離散値を持つ関数、由は全てのメッセージ
・ブロックx及びgの全ての値uに対して定義された何
等かの2数演算で、その値が許容し得る暗号ブロックで
あり、右逆元(rightinverse)日を有する
。 即ちx′=x由u及びuからx=x′日uを一意的に決
定することが出来る。xi及びyiはiはi番目の平明
文及び賭号文ブロック、yoは何等かの形で定義する。
例えば或る定数KIとして定義する。yiがxi及びy
i‐,に関係し、yi‐,がxi‐,及びy:‐2に関
係するという風になるから、yiがfKを通じて、xi
,xi‐,,……,均,x,及びyoに関係し、従って
x,乃至xiの全ての暗号文ブロック、即ちxi並びに
これまでの経過に関係することは明らかである。 従って、同じ或いは異なる記録にあるか、又は同じキー
を持つ暗号系列内にある2つの平明文ブロックxi,及
びxi2又はxifl)及びxif2)がたまたま等し
くても、それらのそれまでの経過が同一でなければ、そ
れらを暗号にしたものが等しくない可能性が大きい。こ
ういう暗号文が等しくないことが所望の性質である。前
掲の式(E}の利用し得る2つの特別な場合は次の通り
である。 {1’関数gが同一性で、(Eal):u=g(y)=
y{2)gがyの4バイトから成る両半分を交換して構
成されること。 これは(Ea2):u=g(y)=yと表わされる。 この両方の場合、由は由と定義される。即ち(Eb)は
モジュロ2のビット毎の加算ト則ち排他的オアである。
この時日も由である。他の多くの関数g及び由を利用し
得る。例えばu=g(y)はyのビットの或る一定の小
集合の和又は排他的オアで、場合によって転字を含んで
いてよい。由はオーバフロ−を抑制した桁上げつきの加
算であってよく、日は対応する減算になる。或し、はx
′=x由uはuビット位置だけ循環的に左(又は右)へ
シフトしたxを意味するものであってよい。(Eal)
及び(Ea2)に対する{E}のこういう特別の場合は
次の様に書くことが出来る。(EI)yi=fK(xi
由yi‐,) :i:1,2,・・・・・・ (E2)yi=fK(xi田yi‐,) :i=1,2,…・・・ E,EI及びE2に対応する復号式は次の通りである。 ■×iニf反1(yi)日g(yi−,):i=1,2
,・・・・・・(D,)xi=fR1(yi)田yi‐
,:i=1,2,・…・・ (D2)xi=fR1(yi)由ヤi‐,:i=1,2
,・・・・・・ こ)でf‐1は復号様式に於ける現存のブロック暗号で
あり、金はeと同一である。 全ての場合、xiの復号がyi及びyi−,(及びK)
を知ることだけに関係し、それより前のyを知ることに
は関係がないという重要な性質に注意されたい。 従ってトy,を伝送又は受信し、或いは書込み又は謙取
る際の誤りは、xi(もとの誤りがfRIを伝播する為
、ブロック中に生ずる誤りが大きい)並びにxM(もと
の誤りがg及び日を伝播する為に、その結果生ずる誤り
は小さい)だけの誤った復号を招くが、他のxには関係
しない。yiを計算する際の誤りはxiだけの誤った復
号を招くが、xi+,の誤った復号は招かない。もっと
も、後続のyは他の場合とは異なる。こういう性質は、
(その平明文が保安及び経済性の為、保存されない場合
が多い)ファイル、又は繰返すことが出来ない通信を暗
号化する時、各々の誤りによって1つ又は2つのブロッ
クしか判読不能にならず、ファイル又はメッセージの他
の部分は判読不能にならないので、非常に重要である。
暗号文のこの性質は自己治癒性又は限界つき誤り伝播と
呼ぶことが出来る。計算機のファイルは記録と呼ばれる
部分(普通は1つ又は更に多くのブロックを含む)に小
分けされる場合が多い。 これが第2図に明らかに示されている。この実施例では
、‘1}各々の記録の初めにブロック連鎖の初期設定を
再び行なうこと、又は‘2’1つの記録の終りから次の
記録の初めへブロック連鎖を継続することのいずれを選
択してもよい。簡単なブロック連鎖は、各々の個別の記
録をそれより前のものとは無関係に復号することが出来
るという利点がある。 たゞ、たまたま同一の最初のブロックを持ち、の後場合
によって同一の2番目のブロック等を持つ記録は、その
平明文ブロックで相次いで一致する限り、同じ数の暗号
文ブロックにわたって、暗号が同一になるという欠点が
ある。記録の連鎖が大抵の場合に好ましいと思われる。 これは、同一の記録又は同一の形で始まる記録が全く違
って暗号化され、同一又は同様であると確認することが
出来ないという利点がある。記録がファイルの初めから
暗号化され、その後逐次的に復号される場合、何等それ
に従う欠点がない。記録が順序をくずして(ランダム・
アクセスで)復号され又は更新(変更並びに再暗号化)
される場合、各々の記録の最初のブ。ックは一般に誤っ
て復号される。各々の記録の最初のブロックを無関係な
フィールドとして使うことにより、これから生ずる悪影
響を避けることが出来る。このフィールドの予め暗号化
された値は任意であってよく、それを後で復号した値は
無視することが出来る。ブロック単位暗号化方式の別の
問題は、ブロックの長さの倍数でない長さを持つ記録を
暗号化する場合である。 1つの解決策は、ブロックの長さの倍数になるまで、記
録に詰込み(パッテング)を行なうこと(即ち付加的な
バイト(又はビット)を用いてその長さを長くすること
)である。然し、この為には記録の長さを長くすること
並びに詰込みの分量を表示することが必要であるが、そ
のいずれも、特に計算機のファイルを管理をする場合に
は望ましくないことがある。この発明は、短いブロック
xi=(xi、i:j=1,2,・…”,LiくL)(
こ)でLは標準のブロックの長さである)で構成される
半端のバイト(又はビット)xwを暗号化する方法を含
む。 この方法は短いブロックの長さLiを保存するが、勿論
、利用し得る知識(K並びに好ましくは前の何等かのx
並びに/又はyに関する適当な情報)に基づいて可逆で
なければならない。長さを保存しようとする場合、詰込
まれたxiをブロック暗号に仕立てても役に立たない。 これは、長さLの暗号を長さLiに切断しなければなら
ないし、暗号の捨てた部分がなければ、復号によってx
iが回復不能だからである。この実施例では、xi=(
xi,i:i=1,・・・…,Li)という形の短いブ
ロックを(8)yi=xi金h(K,yi‐,) という形式の規則によって暗号化する。 こ)でh(K,yi‐,)はyi‐,(並びに場合によ
ってはそれより前のyo但しこの必要ははないと思われ
る)の(必ずしも可逆である必要はないが)何等かのキ
ー依存性を持つ関数であり、金は全ての短いブロックx
i並びにhの全ての値に対して定義された2数操作であ
って、逆関数昼を持つ。この為、yi及びh(K,yi
‐,)からxiを回復することが出来る。下記(〇)参
照。由及び金の1つの違いは、田は長さLのxiに作用
するが、金は任意の長さLi<Lのxiに作用すること
である。 この実施例では、両者に対して排他的オア■を使うが、
曲こ対しては、由が右−引数の全体に対して作用するの
に対し、企に対しては、それが右−引数の内の最初のL
;/ゞィト又はビットだけに作用する。関数h(K,y
i‐,)は、キ」依存性を持っていてもいなくても、単
なる定数であってはならない。 これは暗号文の内の十分多くの短いブロックがあれば、
周知の統計的な手法並びに前後関係から判断する方法並
びに考えられる平明文に対する既知の拘束から、この定
数を回復し、従って平明文の短いブロックを回復するこ
とが出来る様になるからである。その為、これは暗号化
毎の変えるべきであり、それがこれをyi‐.に依存す
る様にした理由である。これは簡単にyi‐,に依存す
るもの、即ちh(K,yM)=h(yi‐,)にするこ
とは出来ない。 これはyi‐,は相手側にも判っており、関数h‘ま、
全ての暗号アルゴリズムと同じく、公知と考えなければ
ならないからである。この為、これは合法的なユーザに
は判るが、相手側には判らない様な形で、即ちキーに依
存性を持つ形でyi−,に依存しなければならない。完
全なブロックの連鎖の場合に使われるのと同様に、少な
くとも2種類の方法が可能である。‘1}h(K,yi
−,)=fK(yH)‘21h(K,yi‐,)=fK
(ヤH)完全なブロックの連鎖と同様に、操作金は排他
的オア由に選ぶか、最初にh(K,yi‐,)を長さL
iに切断した後に行なう。 然し、完全なブロックの連鎖と異なり、操作金又は田は
fKを使う前ではなく、使った後に適用される。即ち伍
′1)yi,j=xw由(fK(yi‐,)),j:j
=・,..,...,Li(E′2)yi,1=xi,
i■(fK(yi‐,)),j:j:・,.…..,L
iこ)で(・・・・・・)、iは(・・・・・・)内の
表式のi番目のバイト(又はビット)を表わす。 フロック連鎖との統一をとる為、{2}の方法が好まし
いが、{1ー及び■のどちらをとるかは重要ではない。 暗号の保安の点からすると、関数h(K,y)はKを知
らなければyをh(K,y)から容易に演縛することが
出来ない様になっていること、並びにh(K,y)が好
ましくは一番長い短いブロックと少なくとも同じだけの
みかけ上独立のビットを含むこと(fKによって発生さ
れる長さLで十分である)が重要である。対応する復号
式は次の通りである。 (〇)xi=yi8h(K,yH) (D′,)xi,1=yi,j由(fK(yi‐,))
,j:j=1......Li(D′2)xi,1=y
i,i由(fK(yi‐,)),j:j=IL短いブロ
ックを復号する時、暗号化工程を行なうことに注意され
たい。 記録の連鎖を使わず、ブロックが記録の初めにあり、従
って記録全体である場合(即ち、記録がフロックよりも
長さの短い「短い記録」である場合)、〔E}又は(E
,)又は(E2)と統一をとる為、規則(8)又は(E
′.)又は(82)を使いyoはブロック連鎖の場合と
同じ様に定義する(但し、yoは付加的な暗号化を受け
ることに注意されたい)。 この結果、全ての短い記録は、一定のキー依存性を持つ
定数h(K,yo)を金又は■に従って加算することに
よって暗号化される。前に述べた様に、この様なデータ
は十分な分量があると、暗号解読が出来、定数が判り、
従って短い記録の平明文が判る。然し、ブロック暗号が
十分強力であれば、前後関係による以外に、一層長い記
録がその為に蟻性になることはない。然し、記録の連鎖
を使うと、それが望ましいことであるが、最初の記録の
後の各々の記録の最初のブロック(完全であっても短く
ても)に連鎖する為、yoの代りに、直ぐ前の記録の暗
号化の際にブロック単位暗号化装置から出て来た最新の
値vを使う。 この様に記録を連鎖する動作様式では、短い記録でも長
いものと同じ様に強力に暗号化することが出来、一般に
同一の短い記録は、希望する通り、それに連鎖したvが
一般的に異なる為、異なる暗号になる。 記録の内部で並びに記録どうしの間で完全なブロック並
びに短いブロックに連鎖する前述の方式は、各々の初期
設定の時にyo=K,に設定され且つその後完全でも短
くても、最新のブロックの暗号化の際にブロック単位暗
号化装置から出て来た最新の値となる、ブロックの値を
表わす変数として、連鎖値を表わす今述べた記号vを使
うことにより、記号として統一することが出来る。 ブロックが完全なブロックであれば、vはその結果得ら
れる暗号文yである。短いブロックであれば、vは前の
vを再び暗号化したもの(又はv)であり、短い暗号文
yを作る為に短い平明文xと組合されるものである。こ
のvを用いると、上に述べた説明並びに式は次の様に統
一される初期設定が行なわれる時(即ち、ブロック連鎖
の場合(記録の連鎖ではなく))には各々の誼緑の初め
に、又は(ブロック及び)記録の連鎖では、各々のファ
イルの初めに、暗号化でも復号でも、次の様に指定する
ことが来る。 V=yo=K, その後(次の初期設定の時まで)、暗号化又は復号並び
にvの更新は次の規則に従う。 暗号化の場合 各々の完全なブロックxiに対し u=g(v) ×′i=×i由u y三:fK(X′i) V=yi 各々の部分的なブロックxi=(xi,j:i=1,2
,……,Li<Lに対しU=g(v) V=fK(u) yi=×{金v 復号の場合 各々の完全なブロックxiに対し u=g(v) X′i=f吏1くyi) ×iニ×′i日u V=yi 各々の部分的なブロックyi=(yiv:i=1,2,
……,LiくL)に対しu=g(v) V=fK(u) ×i:yi今v フロック単位暗号化方式に対するこの発明の改良につい
て上に理論的に述べたことは、この様な方式の暗号の安
全性を改善するこの発明の方式の根本的な考えを述べた
ものである。 暗号文の改善は第1表乃至第5表に非常に明瞭に認めら
れる。 第1表には、典型的なデータ・ファイル(一連のプログ
ラム・ステートメント)が平明文の形でで示されており
、これから判る様に、この様なデータ印字出力にとって
典型的な様に、多数の空白スペースを持っている。この
様な多数の空白があることはどういうことかと云うと、
それらがファイル内に多数の同一のブロックを形成し、
この様なファイルを暗号化したものは、第2表に示す最
初の暗号文から明らかな様に、相当の冗長性又は操返し
を持つ。第2表はこの発明の考えを適用しなかった場合
である。即ち、第2表の00000000000000
00000000000000000000000−N
(コW心ト00○rNhコ町○トのび○「Nhコの・〇
ト000rN〔ご町○ト。 〇。〇。〇。〇。・←−′−r′r「rNNNNNNN
NNNhh
【〜nh【h0000000000。〇。0
0○00000000000000000000000
000000000○○○○○○0000000000
0000000○00XXX★XXXXXXXXXXX
XXKKXXXXXXXXXXXK【XXXXXOOO
OOOOOOO0000○0000○00000000
000000000UOUりUUUUUUいいりりOU
いりUUい〕○UUUUUUOUりUUUUON〇広広 二子÷ Z○ごJ」J広広」JJ ←AA‘‘‘旨UりU ‘^b2HHふZの →毒^XH。 のZZ一のUI ‘日【エロ凶。 〇。日のXMP)ト日−−ト【【広め戊Z.りZの〇〇
〇〇〇uW日日AAAZOCの○Z‘旨き室富雲広旨費
要旨墓窟墓貴ZO且←Z*.‘【G○〆Z広【L広の2
‘‘000×Z、′HN〇のW日【ZZZ山・山け0且
ふ日貴00−トート○ふの0のNA広‘広‘にAX〇H
‘q【広‘べWロb船言ごr軸凶8G髪AAここ;Wに
‘2にU【一〇【日一Z肖るG広・←4‘耳8ト○〇N
Nbに4‘山【2bZ【A′0のP貴Zに○位一NWb
1−←X工‘CdNト11り」〇〇〇99NGqの広」
のい【日【「リヨ,ーP」Z01Gd−、 A〇一, 。 畠三ご3燕詳言きき‐‐・^きNく1日ZXAこ)めく
UAiこれり←○U〇GXUAPの○()〔〕は「」−
一・K・NLbAN日O町W心○(0←WN〆のX・〇
〇口のUhコ一〔一・●、fJ」J−〇U一rり【〇〇
〇一3r−r。rN〔〇N30XX【11の‘uC】け
NXW,〆ZZZNNO」Z,U一一U‘口q‘はUu
Z←
0○00000000000000000000000
000000000○○○○○○0000000000
0000000○00XXX★XXXXXXXXXXX
XXKKXXXXXXXXXXXK【XXXXXOOO
OOOOOOO0000○0000○00000000
000000000UOUりUUUUUUいいりりOU
いりUUい〕○UUUUUUOUりUUUUON〇広広 二子÷ Z○ごJ」J広広」JJ ←AA‘‘‘旨UりU ‘^b2HHふZの →毒^XH。 のZZ一のUI ‘日【エロ凶。 〇。日のXMP)ト日−−ト【【広め戊Z.りZの〇〇
〇〇〇uW日日AAAZOCの○Z‘旨き室富雲広旨費
要旨墓窟墓貴ZO且←Z*.‘【G○〆Z広【L広の2
‘‘000×Z、′HN〇のW日【ZZZ山・山け0且
ふ日貴00−トート○ふの0のNA広‘広‘にAX〇H
‘q【広‘べWロb船言ごr軸凶8G髪AAここ;Wに
‘2にU【一〇【日一Z肖るG広・←4‘耳8ト○〇N
Nbに4‘山【2bZ【A′0のP貴Zに○位一NWb
1−←X工‘CdNト11り」〇〇〇99NGqの広」
のい【日【「リヨ,ーP」Z01Gd−、 A〇一, 。 畠三ご3燕詳言きき‐‐・^きNく1日ZXAこ)めく
UAiこれり←○U〇GXUAPの○()〔〕は「」−
一・K・NLbAN日O町W心○(0←WN〆のX・〇
〇口のUhコ一〔一・●、fJ」J−〇U一rり【〇〇
〇一3r−r。rN〔〇N30XX【11の‘uC】け
NXW,〆ZZZNNO」Z,U一一U‘口q‘はUu
Z←
【く」Cも←い−ト‘口。000ココ0コ0コロコ
0004【0rAけG【広Qき寮費声益轟蚤常鯖388
8888台忌888988法誓8の88AUAきAZの
鰭A′りK【〇〇LX〇一・ハUUXOGd〇の‘」0
rN〔ONごOZ‘Z日一〕【★★★★広広こにここヱ
ヱ‘ヱは工広げのの工〇〇〇〇〇〇〇〇〇′O−AAA
【「「【「「Uき葦を》;亨≧り雪言【旨言き事;ご言
)ききj言責よ;≧スミミ−\言三−′;一.。 り」Nミ‘も。牢3“ごぬ「〉^一b〇「A−[q、【
こ」口 ぐ・ト・ト・ト.ぐ.ぐ.ト.ト−ぐ.ぐ−ト.ト一ト
.ぐ−ト.ぐ.ぐ.ト.ト.ぐ−ト.ぐ.ト.ト.ぐ.
○ぐ.ト,ぐ.ぐ.ト.ぐ.ト.ぐ.ト.ト.健888
:8,幻伯ぬ灯N5R5^S^S同〇俺々ョぬeL8・
健,a燈^590同18GSN灯紅‘8,818代3U
1・〇l ●◆↑◆◆◆◆◆◆◆◆十◆ナ十十◆−十十十◆◆★十
い◆◆十十◆◆◆十◆十凶WV‘Yート・トト・ト・ぐ
・トぐ・トト・ぐ・トトぐ・ぐ・ぐ・^ト・トト・ヘト
・トトぐ・6ト・「「「ト,ぐ,ト.ぐ.ト.ぐ.;G
Gね簿灯伯ね鷹的俺は俺健ね紅【8・8〔8‐3泊健・
9鷹健18健俺吋88滝,5000三十◆◆二−◆◆◆
−◆◆◆十−←十◆十十十◆◆十三;コ◆Q…b十−十
◆◆◆ト・ト・ぐ.「ぐ.ト.ぐ.ぐ.ぐ.ト.ぐ一ぐ
.ぐ.ぐ.ト.ぐ.ぐ.ぐ.ぐ.ぐ.ぐ.ぐ.こ」〇〇
ぐ.a(.ト.ぐ.ト.ぐ.ぐ.ト伯881鷹(8‘8
僧伯8(8損ね鰭鷹16滝上己鷹8680180−88
俺,868N【【^C〇りr山・)〔的I◆◆◆。 ◆IT+◆◆◆◆●◆十ナ◆r◆◆十◆◆.・”◆′、
十◆十◆十◆OA〆XA−hh−Y−↑‘●NQNO0
4ぐ・ぐ・ぐ・一トト・ト・ふぐ・ト・ぐ・ト・ぐ・ト
・一′−・町ト・ぐ・へ)−NNト・−−・−−・ト・
ぐ・ぐ・ぐ・ぐ・ト・伯8のl憤り債,8伯9、ね母鷹
や.h00鷹80.8一一6■‘8688,8一市‐X
」。 じ。。。〜C〆),)十十◆」け十さ‐◆‐◆◆◆‐十
×ヌ洋ご葦★◆十QG。 ◆Q一一◆十十◆◆◆ト.ト.ト.3.ぐ.一ぐ−ぐ.
◇・ト・ぐ.ぐートぐ一」り●ぐ・ぐ−ぐ一、′Aト・
一一←一←一ぐ・ト・トト・ぐ・ぐ・船岬き;鷹船舶M
船ぷス肌ギ;十ぷ岬…88.89^V1【0‘^のbp
【、十十。◆三◆◆.◆◆◆◆十。午山3‘【◆◆◆A
T◆一一一◆◆◆◆◆◆【‘ぐ・h−−−N・】1●・
〉工Cト・ぐ・・ト・ぐ・ふト・ぐ・ト・ぐ・ト・ぐ・
〇・1ト・ぐ・ぐ・ト・^・ト・111111ト.ぐ・
ぐ・ト・へ′「Z8,3,81398,8
0004【0rAけG【広Qき寮費声益轟蚤常鯖388
8888台忌888988法誓8の88AUAきAZの
鰭A′りK【〇〇LX〇一・ハUUXOGd〇の‘」0
rN〔ONごOZ‘Z日一〕【★★★★広広こにここヱ
ヱ‘ヱは工広げのの工〇〇〇〇〇〇〇〇〇′O−AAA
【「「【「「Uき葦を》;亨≧り雪言【旨言き事;ご言
)ききj言責よ;≧スミミ−\言三−′;一.。 り」Nミ‘も。牢3“ごぬ「〉^一b〇「A−[q、【
こ」口 ぐ・ト・ト・ト.ぐ.ぐ.ト.ト−ぐ.ぐ−ト.ト一ト
.ぐ−ト.ぐ.ぐ.ト.ト.ぐ−ト.ぐ.ト.ト.ぐ.
○ぐ.ト,ぐ.ぐ.ト.ぐ.ト.ぐ.ト.ト.健888
:8,幻伯ぬ灯N5R5^S^S同〇俺々ョぬeL8・
健,a燈^590同18GSN灯紅‘8,818代3U
1・〇l ●◆↑◆◆◆◆◆◆◆◆十◆ナ十十◆−十十十◆◆★十
い◆◆十十◆◆◆十◆十凶WV‘Yート・トト・ト・ぐ
・トぐ・トト・ぐ・トトぐ・ぐ・ぐ・^ト・トト・ヘト
・トトぐ・6ト・「「「ト,ぐ,ト.ぐ.ト.ぐ.;G
Gね簿灯伯ね鷹的俺は俺健ね紅【8・8〔8‐3泊健・
9鷹健18健俺吋88滝,5000三十◆◆二−◆◆◆
−◆◆◆十−←十◆十十十◆◆十三;コ◆Q…b十−十
◆◆◆ト・ト・ぐ.「ぐ.ト.ぐ.ぐ.ぐ.ト.ぐ一ぐ
.ぐ.ぐ.ト.ぐ.ぐ.ぐ.ぐ.ぐ.ぐ.ぐ.こ」〇〇
ぐ.a(.ト.ぐ.ト.ぐ.ぐ.ト伯881鷹(8‘8
僧伯8(8損ね鰭鷹16滝上己鷹8680180−88
俺,868N【【^C〇りr山・)〔的I◆◆◆。 ◆IT+◆◆◆◆●◆十ナ◆r◆◆十◆◆.・”◆′、
十◆十◆十◆OA〆XA−hh−Y−↑‘●NQNO0
4ぐ・ぐ・ぐ・一トト・ト・ふぐ・ト・ぐ・ト・ぐ・ト
・一′−・町ト・ぐ・へ)−NNト・−−・−−・ト・
ぐ・ぐ・ぐ・ぐ・ト・伯8のl憤り債,8伯9、ね母鷹
や.h00鷹80.8一一6■‘8688,8一市‐X
」。 じ。。。〜C〆),)十十◆」け十さ‐◆‐◆◆◆‐十
×ヌ洋ご葦★◆十QG。 ◆Q一一◆十十◆◆◆ト.ト.ト.3.ぐ.一ぐ−ぐ.
◇・ト・ぐ.ぐートぐ一」り●ぐ・ぐ−ぐ一、′Aト・
一一←一←一ぐ・ト・トト・ぐ・ぐ・船岬き;鷹船舶M
船ぷス肌ギ;十ぷ岬…88.89^V1【0‘^のbp
【、十十。◆三◆◆.◆◆◆◆十。午山3‘【◆◆◆A
T◆一一一◆◆◆◆◆◆【‘ぐ・h−−−N・】1●・
〉工Cト・ぐ・・ト・ぐ・ふト・ぐ・ト・ぐ・ト・ぐ・
〇・1ト・ぐ・ぐ・ト・^・ト・111111ト.ぐ・
ぐ・ト・へ′「Z8,3,81398,8
【3^e8,
8,8つ−一088.80853」ヱ39・3Wa8け
oドミ。;こさ‐”角じ】「こここイ燕零÷卓;二雲二
着こ二ら言ミモす二ふ三ぷふこ二二ふ二こ二。h隼こ◆
こ;◆X」^88くもー88〆ご
8,8つ−一088.80853」ヱ39・3Wa8け
oドミ。;こさ‐”角じ】「こここイ燕零÷卓;二雲二
着こ二ら言ミモす二ふ三ぷふこ二二ふ二こ二。h隼こ◆
こ;◆X」^88くもー88〆ご
【。、888。う々1
88′a1888俺俺〇よョミへ処三宮ふ‐”・【亨ご
”◆・〔息”十◆”…二責ぐミ.・‐ぷ難鏡・Mト‐さ
)三三三会り云う事ご秒三ふり。韓eでご潮1−「膚母
「十&ご!C:−【へ^^^^oへ【さ;‐Xへ1‘、
−。1000【^^^1^〆XIト〇,〔A」001−
0ぐ・^ZZZりト・りへつ〇.〔,〔,〔〇,\N、
、,.〕のぐ・〇〇−◆〇〇〇一・WW〇XXX−★?
凸ず0t−G,ヒへ1・(d‐\。 −)旨ご^べへぐ.\めへへ;き′も;;SSもさもさ
さき◆C寒さ一抹u\−1−8dba.・「−−−▼N
}○ト.Jご」↑コhCり・二000」C‘−へ◆◆◆
◆◆★◆◆十○l「け.【11〆◆◆X◆◆−ムー・I
○0【OYVN“灯ト■コ【・・〇「、〜〔トリ0)ー
′「hA!つX・【E【トhトZ●○h一J★ート01
5−NNI〜○K‘■・【、の・り10)・〆」○−^
の0【山,ト・〇×【←IJUGり一の○●ジ)NYP
Oへ〜^の【〜1・A−1↑0.・川NのL0・り1X
PN・一〇〇)りごhめ−一「^U−・・−−Pト′0
1↑−竹へW「一1」トへWX・Jharm)10【′
rこFbqJ同1、ちGaへ08mL;8伯。 ー,,。0\‘一へ−A〜W.・ト・^ト」0灯0十か
YU‘・ーl0−一に・〆0わ”t★F‘OXコトN8
★0^〇0のWのXO灯q「〜のね【S一やe−“けさ
G「。。‘」首二〇【さ50一〇・−ユ0,−;“‘r
ト。蔓・8−寅t−?」1.N−q^GヱYN)rdれ
?ろ^トN。」)こq二・7〉小3Gの。−?・毒も≦
;‐〜こニニ【→→亨「こE三で−り一ざご←…G6隻
圭≧薫薫ト二bX〇C■ON^【000・l・・「NO
通oqANXX;NミさげA精17hAg千YこX【決
ご室Nハき1的Sギムb‘言−き三VI】0〜」」・1
一〇N*、M1二トト◆・−0
88′a1888俺俺〇よョミへ処三宮ふ‐”・【亨ご
”◆・〔息”十◆”…二責ぐミ.・‐ぷ難鏡・Mト‐さ
)三三三会り云う事ご秒三ふり。韓eでご潮1−「膚母
「十&ご!C:−【へ^^^^oへ【さ;‐Xへ1‘、
−。1000【^^^1^〆XIト〇,〔A」001−
0ぐ・^ZZZりト・りへつ〇.〔,〔,〔〇,\N、
、,.〕のぐ・〇〇−◆〇〇〇一・WW〇XXX−★?
凸ず0t−G,ヒへ1・(d‐\。 −)旨ご^べへぐ.\めへへ;き′も;;SSもさもさ
さき◆C寒さ一抹u\−1−8dba.・「−−−▼N
}○ト.Jご」↑コhCり・二000」C‘−へ◆◆◆
◆◆★◆◆十○l「け.【11〆◆◆X◆◆−ムー・I
○0【OYVN“灯ト■コ【・・〇「、〜〔トリ0)ー
′「hA!つX・【E【トhトZ●○h一J★ート01
5−NNI〜○K‘■・【、の・り10)・〆」○−^
の0【山,ト・〇×【←IJUGり一の○●ジ)NYP
Oへ〜^の【〜1・A−1↑0.・川NのL0・り1X
PN・一〇〇)りごhめ−一「^U−・・−−Pト′0
1↑−竹へW「一1」トへWX・Jharm)10【′
rこFbqJ同1、ちGaへ08mL;8伯。 ー,,。0\‘一へ−A〜W.・ト・^ト」0灯0十か
YU‘・ーl0−一に・〆0わ”t★F‘OXコトN8
★0^〇0のWのXO灯q「〜のね【S一やe−“けさ
G「。。‘」首二〇【さ50一〇・−ユ0,−;“‘r
ト。蔓・8−寅t−?」1.N−q^GヱYN)rdれ
?ろ^トN。」)こq二・7〉小3Gの。−?・毒も≦
;‐〜こニニ【→→亨「こE三で−り一ざご←…G6隻
圭≧薫薫ト二bX〇C■ON^【000・l・・「NO
通oqANXX;NミさげA精17hAg千YこX【決
ご室Nハき1的Sギムb‘言−き三VI】0〜」」・1
一〇N*、M1二トト◆・−0
【り〇Uュ一トメコ仇じ
*コぬX●ごト.‘NトX●きG−NIlY‘ヱにご?
烏【X二「3hもAJI−・コ01IQN‘のl1一Y
、コ。NGr【Nソ,一1つ0く00〆0」!増0に妄
孝)一二寿ここ3ラン卓三一言主≧;…r貞三;言ミニ
・雲ご言け泣瓜・C。b;A−;母ト−Zら;チ〜hN
コヲ〜三−りけ:「室^。卓三の処8★〜X‘Y3−ニ
三ぎ;…hAご室さごき」hこ;ざ;コ0‘・・−NZ
O′○一Y−・り映る83鷲ヱト,。OG・じlIAコ
ンケ」十。【bの\【Mご‘もs【乙船錘呈…き3言亭
5≦…雲d言三慶子÷まき言三さき員事三三三雪・ぬ・
最23ご王二【三;こ2モ言めCミ;貫き;;“−3≧
をも亨、旨こうさ舵室町了碗−き:;ふ十…;三竿Aミ
もご言責きぶ;三10旨A亭jき事t一事費。〜三2コ
3〕〔二三夕「C三ト;〔★法〆ご;「0真ギ。毒竺ち
d旨。「GA3bg壬,6旨トXべ3口よ三1)一dG
三;広言ヱニA〆」さ^ご言へ只一・OA甘言「一さ−
イく”A」−・C」0【0一一−118ト801」.・
iiT「WhトY0〉ー′、hAIりK,イロ【A′「
LG・い,一−トートロ0一−〈INIYGK‘1,^
\の・U・〇一●ト」○−^の0一Aトト・びX(【一
08り【け・●。−.い○N●ソソN)か0bへL【的
【〜.・〇叫0トG3「^・U三q8−Y3二一「烏・
G●)−3コ[めりへbnQ、こミ“」ら−へ.叫こげ
−【S。・A。‐トvlo「】1,一1、ちェ三へdq
hご;88。ー00へ−・〇へ1り一.・ト・^ト」0
一・Aを・\ごNbト;竹口もさめ…。「;‐‐モリ‘
G★.G三言芝。曇ざ‐G。川A〜
*コぬX●ごト.‘NトX●きG−NIlY‘ヱにご?
烏【X二「3hもAJI−・コ01IQN‘のl1一Y
、コ。NGr【Nソ,一1つ0く00〆0」!増0に妄
孝)一二寿ここ3ラン卓三一言主≧;…r貞三;言ミニ
・雲ご言け泣瓜・C。b;A−;母ト−Zら;チ〜hN
コヲ〜三−りけ:「室^。卓三の処8★〜X‘Y3−ニ
三ぎ;…hAご室さごき」hこ;ざ;コ0‘・・−NZ
O′○一Y−・り映る83鷲ヱト,。OG・じlIAコ
ンケ」十。【bの\【Mご‘もs【乙船錘呈…き3言亭
5≦…雲d言三慶子÷まき言三さき員事三三三雪・ぬ・
最23ご王二【三;こ2モ言めCミ;貫き;;“−3≧
をも亨、旨こうさ舵室町了碗−き:;ふ十…;三竿Aミ
もご言責きぶ;三10旨A亭jき事t一事費。〜三2コ
3〕〔二三夕「C三ト;〔★法〆ご;「0真ギ。毒竺ち
d旨。「GA3bg壬,6旨トXべ3口よ三1)一dG
三;広言ヱニA〆」さ^ご言へ只一・OA甘言「一さ−
イく”A」−・C」0【0一一−118ト801」.・
iiT「WhトY0〉ー′、hAIりK,イロ【A′「
LG・い,一−トートロ0一−〈INIYGK‘1,^
\の・U・〇一●ト」○−^の0一Aトト・びX(【一
08り【け・●。−.い○N●ソソN)か0bへL【的
【〜.・〇叫0トG3「^・U三q8−Y3二一「烏・
G●)−3コ[めりへbnQ、こミ“」ら−へ.叫こげ
−【S。・A。‐トvlo「】1,一1、ちェ三へdq
hご;88。ー00へ−・〇へ1り一.・ト・^ト」0
一・Aを・\ごNbト;竹口もさめ…。「;‐‐モリ‘
G★.G三言芝。曇ざ‐G。川A〜
【一〇−ト〇ト.・
−,【よけ‐ご。け・ト‐誉「仇言・8・6字‘★き」
:.N−‘^q二三Vロtび・ごト15トコ^トじ;^
」〜こQ二\bW..bじの。?二三3誉曙客室もこX
^【5◆二3さ,I今‘累^千・湊ミ号A工X「・トミ
【N。〇AIh‘旨十叫ふけ〉1tに【b‘;■‘ゾ針
ノ170・r55【千406日Q一h」ぶ」ふGのC【
J(トK○NIIVIZ工●00−一「NT葦A。【K
●NIフ。亨り:Nき−;‘号7bも巧“こ千h寿の‐
≦‘…NX;ヲヱ,;亀船室妄言言責き三三一ミ言‐‐
士三;三重…一言N3宣言きミ・きL三…「雲二^言亭
雲蝉−S川ふ川S岬L三・き童3」一ナ′G対.S”★
【〇山N」ト11」h〉亥・ゴ。寸ト‐亭・旨;コ一・
まき‐三マ寅き?三一亭三一87)芸★三マ;葦ご叶^
〉健N8言opNきi8Q−,”A【支。b十oE安ら
、。”ス日きき;桑三【め‐ご午亨【ミぶ2キー;ミ亭
三÷ミヲギヲギN,き‐喜ミニ・コラミき舵3一」83
一3301き★三一N1三ヱAこみ−曇る二.ム雲÷三
ご夢dGざ*r)ぎCト‐★★のコ入.[・h。〜白二
h〆日\#‐OS〜Q蔓一◆001の○UU〔‘・一ト
の*)lll【^竺′ら−:・一コ‘き+ろ三P3び・
09毒÷言き−ごX(35よ÷ノさるの量二11‘X8
^。白;‐−,けさ【一8[く★GVTqGコb」’1
Cへ●〇・イ0000000000OOOOOOOOO
OOOOCOOOOOOOO00000一Nhご)、0
ト000一ぐJh「コ川心卜め仇0−N^〜ごm○ト○
仇0←N^(ご川○ト〇〇〇〇〇〇COOrr・←rr
−ーーーNNNNNNNNNNhnhh〔hhh000
0000000000000000COO〇○○○〇0
コ000000000000000000○○○○O○
○○○〇〇〇〇〇O\000000000000XXX
XXXKKXXXXX×KXKXXXXXXXX*X×
XX*XXXXXX〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇
〇〇〇〇。〇〇〇〇MOO。〇。〇。コ。〇〇UUUU
UU〕いいUりUUUUUUUUUUいりUUUUUU
U○UUUUいいN〇二舞岸211 【′○コ」一JL広広J」一〇ALべて‘蔓ZZUUり
Z【【ふ*.け」0【X【〇4の2.Z一けり脂旨の−
‘】】倣。
−,【よけ‐ご。け・ト‐誉「仇言・8・6字‘★き」
:.N−‘^q二三Vロtび・ごト15トコ^トじ;^
」〜こQ二\bW..bじの。?二三3誉曙客室もこX
^【5◆二3さ,I今‘累^千・湊ミ号A工X「・トミ
【N。〇AIh‘旨十叫ふけ〉1tに【b‘;■‘ゾ針
ノ170・r55【千406日Q一h」ぶ」ふGのC【
J(トK○NIIVIZ工●00−一「NT葦A。【K
●NIフ。亨り:Nき−;‘号7bも巧“こ千h寿の‐
≦‘…NX;ヲヱ,;亀船室妄言言責き三三一ミ言‐‐
士三;三重…一言N3宣言きミ・きL三…「雲二^言亭
雲蝉−S川ふ川S岬L三・き童3」一ナ′G対.S”★
【〇山N」ト11」h〉亥・ゴ。寸ト‐亭・旨;コ一・
まき‐三マ寅き?三一亭三一87)芸★三マ;葦ご叶^
〉健N8言opNきi8Q−,”A【支。b十oE安ら
、。”ス日きき;桑三【め‐ご午亨【ミぶ2キー;ミ亭
三÷ミヲギヲギN,き‐喜ミニ・コラミき舵3一」83
一3301き★三一N1三ヱAこみ−曇る二.ム雲÷三
ご夢dGざ*r)ぎCト‐★★のコ入.[・h。〜白二
h〆日\#‐OS〜Q蔓一◆001の○UU〔‘・一ト
の*)lll【^竺′ら−:・一コ‘き+ろ三P3び・
09毒÷言き−ごX(35よ÷ノさるの量二11‘X8
^。白;‐−,けさ【一8[く★GVTqGコb」’1
Cへ●〇・イ0000000000OOOOOOOOO
OOOOCOOOOOOOO00000一Nhご)、0
ト000一ぐJh「コ川心卜め仇0−N^〜ごm○ト○
仇0←N^(ご川○ト〇〇〇〇〇〇COOrr・←rr
−ーーーNNNNNNNNNNhnhh〔hhh000
0000000000000000COO〇○○○〇0
コ000000000000000000○○○○O○
○○○〇〇〇〇〇O\000000000000XXX
XXXKKXXXXX×KXKXXXXXXXX*X×
XX*XXXXXX〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇
〇〇〇〇。〇〇〇〇MOO。〇。〇。コ。〇〇UUUU
UU〕いいUりUUUUUUUUUUいりUUUUUU
U○UUUUいいN〇二舞岸211 【′○コ」一JL広広J」一〇ALべて‘蔓ZZUUり
Z【【ふ*.け」0【X【〇4の2.Z一けり脂旨の−
‘】】倣。
【)P】))溝蔓畠要旨葦旨護窒N
≦薫き皇室雪鯖旨裏葺き富重富★Y○,トヱス.‘ど
【
船馨室員旨電室頭目・議室員員曇。 三;増e)★90bq’JGA【日【「l1山3.01
qa工「4AA○山磨ききき言責室員害室雲室員皇室喜
美】【孝二ヤヒZ岸1loAS,.ぷ。ト.燕雲量喜一
雲雲ぱ三・亀キN◆。三三Cへ…内雲梶Eまま≦広…ト
ご葦‐真三富貴きき言貴賓言責言責旨言責旨美喜旨。さ
きここ5^”A′・裏の)●:トコ538〇ュニ3★←
苔一三裏2裏三尾支援2葦工毒迄宏毒素ヒコへぐ・〇,
。 〇。〇。くコ。〇。OAAAA【−【ヱこ1【〕.例で
は暗号文の連鎖を利用していない。 第3表は、記録の連鎖の考えを適用した場合のこの発明
の利点を明瞭に示している。 これ迄の説明から判る様に、記録の連鎖は暗号文ブロッ
クの連鎖の特定の場合である。記録の連鎖を用いる時、
この連鎖は記録の境界にわたって続けられる。第1表に
示すデータの例では、各々の行が典型的には1つの記録
であり、記録の連鎖を使うと、暗号文ブロックの連鎖が
、この頁に表わされているデータ・ファイル全体にわた
って連続的に続けられる。この為、繰返しがもはや目に
つかなくなる。第4表及び第5表は、前に説明したこの
発明の別の面、即ち装置に誤りが導入された時にこの発
明では伝播が制限されることを例示している。 第4表及び第5表の例では、暗号化の際に何等かの形で
誤りが導入されたと仮定している。検査してみれば、星
印が図示の印字出力の左上隅から斜めに下に現われる点
で、第4表が第3表と違うことが認められよう。これが
導入された誤りである。第5表は第4表に示す不正の暗
号文を復号したものであり、誤りの伝播が制限されるこ
とを示している。第5表を第1表と比較すれば、各々の
行に限られた誤りしか存在しないことが認められよう。
これ迄の説明から判る様に、これは1つのブロック内で
は重大な誤りであるが、隣りのブロックではずっと小さ
な誤りである。ついでながら述べておくと、第2図に示
す特定のデータフオーマットは単に例として示したもの
であり、これは記録並びにファイルには、図示の特定の
初め及び終りマーク又は同等な区切り方法を用いる場合
が多いという計算機業界の常套手段に従ったものである
。 更に、データ・バイトがクロツク・パルスを含むことが
示されている。これも広く普及した使い方である。この
実施例はこのフオーマットを利用して作用する様に設計
されており、事実全ての制御及びタイミング回路はその
動作にこの様なフオーマツトを必要とする。然し、この
発明は暗号文の連鎖の考えをブロック単位暗号化装置と
粗合せて使うことに関するものであって、こういうデー
タフオーマット並びに所要の制御回路がこの発明の根本
的な一部分を構成するものではないことを明確に承知さ
れたい。次に第IA図乃至第ID図のフローチャートを
詳しく説明する。これらの図はこの発明の作用、具体的
に云えば実施例を非常に明確に例示している。このフロ
ーチャートを構成する第IA図乃至第ID図について具
体的に説明する他に、第3A図乃至第3C図のハードウ
ェアの実施例についても説明する。実施例の動作の説明
はフローチャートの説明をした後で行ない、最後にハー
ドウェアを動作させるのに必要なマイクロプログラム丹
頂序のIJストを挙げると共に、その動作を説明する。
以下の説明並びに第1図のフローチャートは、暗号化又
は復号しようとするデータが離散的な形(ディジタル形
式)の流れとして利用出釆、何等かの形でこのデータの
小さな流れに分割されていると仮定している。この4・
さな流れをこ)では記録と呼ぶ。これらの記録はファイ
ルと呼ぶ一層大きなグループにまとめられており或いは
まとめることが出来る。このフオーマットが第2図に示
されている。このデータは例えば貯蔵媒体から入手し得
るし、或いは通信線路に沿って伝送することが出来る。
第2図は、データが相次ぐバイト、即ち並列ビットの並
列の群としてこの装置のハードウェアに到達することを
明瞭に示している。各々のバイトがデータ・クロツク・
パルス(図に示してない)を伴う。1つの記録を構成す
るバイトの前に記録の初め即ち80Rマーク又は信号が
あり、その後にはそれに合せた記録の終り又はEOR信
号が続く。 ファイルはこの様な1つ又は更に多くの記録で礎成れ、
その前にファイルの初め又はBOF信号であり、その後
にはそれに合せたファイルの終り又はEOF信号が続く
。データ・パルス及び信号は今述べた順序で装置のハー
ドウェアに到着すると仮定する。必要があれば、適当な
予備処理並びに誤り検出及び補正回路によって、こうい
うことを保証することが出来る。こういう前提の下に、
データ又はマークが到着する合間の任意の時刻に、回路
は第2図に示す3つの主な状態の内のどれかの状態にあ
ると考えることが出来る。縦態1‘まファイルの合間の
状態、であり、全てのファイルの前又は全てのファイル
の後である場合を含む。BOFであれば、その各々には
対応するEOFがある。状態2は記録の合間の状態であ
り、或るファイルの最初の記録の前又は最後の記録の後
の場合を含む。BOFは受取ったが、それに対応するE
OFはまだない。然しこの後のBORにはいずれもEO
Rが対応している。状態3は記録内部の状態である。B
ORを受取っており、幾らかのデータも受取っている(
場合によっては受取っていない)が、それに対応するE
ORはまだ受取っていない。状態1では、BOFが最初
に到着する信号であると予想することが出来、それが到
着すれば装置が状態2になることが第2図から判る。状
態2では、BORが来るかEOFが来ることが予想され
、80Rが来れば装置は状態3になるが、EOFが釆れ
ば装置は状態1になる。状態3では、対応するデータ・
クロツク・パルスを伴うデータ・バイトか或いはEOR
が来ることが予想され、データ・バイトが来れば、それ
が処理され、装置は依然として状態3にとゞまるが、E
ORが来れば装置は状態2に戻る。これらの状態、特に
状態3は、例えばどれだけ多くのバイトを受取ったか、
どうし、々種類の連鎖を行なっているか等に応じて、更
に小状態(これは詳しく説明しない)に小分けされる。
次に第IA図乃至第ID図及び第3A図乃至第3C図に
ついて説明する。 第3A図の左上に1バイト幅の入力データ母線11と、
データ・クロック・パルス又はデータCP,BOF,8
0R,EOR及びEOFと呼ぶ5本の1ビット信号線と
があることが判る。ファイル又は通信線路又は予備処理
装置は、任意の時、これらの1ビット線がどれも付勢さ
れないか又はその1つだけが付勢され、この1つがデー
タ・クロツク・パルス線である場合、1バイト幅のデー
タ母線にデータ・バイトが利用し得る様になっていると
仮定する。この為、5本の1ビット制御線上の信号の順
序が、第2図に示した記録及びファイルのマーク並びに
データ・バイトの順序に対応する。更に、これらの図に
示すこれから説明する回路は通信線路に較べて十分速く
動作し、各々の入力信号は次の入力信号が到着する前に
処理されてリセットされると仮定する。回路が第3図の
右側に、これに対応する5本一組の1ビット出力信号線
及び1つの出力データ母線13を持つことに注意された
い。記録及びファイルのマークとデータ・バイト及びデ
ータ・クロツク・パルスの順序が出力でも入力と同じに
なる様に構成されていることを後で説明する。然し、出
力データは入力データを暗号化したもの又は復号したも
のであるので、実際のデータ・バイトは異なる。第38
図の左側に、連鎖なし、ブロック連鎖、記録の連鎖、並
びに暗号化か復号かに応じて1本ずつの4つの様式制御
入力とキー入力母線とがあることが判る。 各々のファイル(又はファイル群)に対し、これら4本
の線及び母線は、選択された様式にする様に且つキーを
使う様に予め設定されていて、ファイルを処理する間、
外部又は内部でラッチされている。連鎖を選択する3本
の線の左、1本だけが付勢される。 ブロック連鎖を選択した場合、連鎖はブロックからブロ
ックへ行なわれる(1ブロックがブロック単位暗号化装
置又はその他に入力され又はそこから出力されるデータ
の量である場合、一層少ない量のデータが記録の終りに
残る)。この時各々の記録の初めに連鎖の初期設定をし
直す。記録の連鎖を選択した場合、やはり連鎖はブロッ
クからブロックへ行なわれるが、連鎖の初期設定のやり
直しは各々のファイルの初めにだけなされ、各々の記録
の初めには行なわれない。この両方の様式が図示の装置
に含まれている。連鎖なしを選択した場合は側路様式で
あって、この時ブロックの暗号化は、何等連鎖を行なわ
ない単なるブロック暗号である。これを設けたのは両立
性の便宜の為であり、不可決ではない。残りの線は暗号
化を希望する場合は一方の状態に、そして復号を希望す
る場合は他方の状態にする。 次に第IA図乃至第ID図の動作の流れ図を機能的な観
点からボックス毎に説明する。装置を初めて作動した時
、状態1にある。制御はボックス1から始まる。制御が
ボックス2に移り、そこで入力フラグ及びデータ母線の
破算の様な任意の所望の初期設定が行なわれる。次に制
御がボックス3に移り、そこで予想されるBOF信号が
到着したかどうかが試験される。到着していなければ、
ノ−の通路をとり、制御はボックス3に戻り、再び試験
が行なわれる。BOF信号は最初に到着する信号である
と仮定しているが、これが到着すると、それがハードウ
ェアのBOFフラグ1(第3A図)にラツチされ、ボッ
クス3で検出される。この時フラグがオフに転ぜられて
将来の混同を招かない様にし、制御がボックス4に移る
。他のフラグのこの後のラッチ動作並びに試験も同機で
ある。この移行時、ファイルが開始され、状態1から状
態2へ変わりつ)ある。ボックス4で、出力BOF線に
出力信号が発生され、こうして出力及び入力フオーマッ
トの間の対応が始まる。ボックス5で、この回路で普通
行なう連鎖(即ちブロックの連鎖又は記録の連鎖)を行
なうかどうかの試験がなされる。連鎖が行なわれ)ば、
制御はボックス6へ進む。こ)で、連鎖を行なう為に1
つのブロックの暗号化から次のブロックの暗号化まで保
存される連鎖値vを入れる「旧レジスタ」と呼ばれる第
3A図のレジスタ12が、適当な定数KIに設定される
ことによって初期設定される。この定数の選択はそれ程
重要ではないが、ごく稀な場合に、平明文のあまり重要
でない或る部分が暗号文で確認出来るかどうかに若干の
影響が出ることがある。これは0にとることが出来る。
これから説明する特定の実施例では、これは交互の2進
1及び2進0から成る64ビット又はそれに相当する1
針固のla隼法の5で構成されるとした。ボックス5の
決定が連鎖なし、即ちこ)で説明するブロック(並びに
記録)の連鎖を側路するものである場合、それでも「旧
レジスタ」には定数が入れられ、短いブロック、即ち8
バイト未満のブロックの暗号化が出来る様にする。 この定数は所望のキー依存性を持つ暗号化の為にキー依
存性を持つものでなければならないが、今の実施例では
、この暗号化が或る定数K2をブロック単位で暗号化す
ることによって形成される。この定数もかなり任意であ
り、これも交互の2進1及び2進0から成る64ビット
又は1針固の16進法の5に選ふく。この流れ図全体に
わたり、暗号化過程が3つのボックスで表わされる。 こ)ではボックス7,8及び9で表わされ、機能fx及
びfRIを実行するブロック単位暗号化装置(汀ブロッ
ク暗号)の手順に合せる。この装置では、第3B図に示
す様に、入力及び出力の両方に使われるリブロック1/
0レジスタと呼ばれる1個のレジスタ50と、キーを菱
入する母線と、幾つかの制御線とがある。m装置を使う
には、平明文又は贈号文ブロックをその入力/出力レジ
スタに送込み、暗号化(中正1又はfK)又は復号(m
RI又はfRI)動作のいずれであるかを知らせ、得ら
れた暗号又は平明文を同じ入力/出力レジスタから出力
する。この3つの工程が流れ図のボックス7,8及び9
に示されている。ボックス7では、入力/出力レジスタ
に特定の定数K2が装入され、ボックス8では暗号化が
行なわれ、ボックス9では入力/出力レジスタを「旧レ
ジス夕」に読出す。3つのボックスを合せて、「旧レジ
スタ」に対するK2の暗号化が達成される。 ボックス5で連鎖を選んだかどうかに関係なく、制御が
ボックス6又はボックス9からボックス10へ移り、「
旧レジスタ」の適当な初期設定が完了する。 ボックス101ま、後で説明するボックス29からも入
ることが出来る。 いずれの場合も、装置はまだ状態2にある。即ち「記録
の合間Jの状態であり、次の入力信号はEOF又はBO
Rであると予想される。(前の入力信号がBOFであっ
たから、普通ならばまだEOFは予想されないが、それ
が起り得る様にしても又は試験する様にしても、何ら害
はない。この試験が後で必要になる。)ボックス10及
び11の組合せは、11から10へ鏡遠があるが、今述
べた内の1つが初めて発生するのを待つ。それがEOF
であれば、ボックス10からのイエスの出口があり、こ
れは後で説明する。もしBORであれば、ボックス11
からボックス12へのイエスの出口があり、こ)で状態
3の「記録内部」に入り、BORが出されて、再び出力
が入力に対応する様にする。ボックス13で、ブロック
連鎖を行なうかどうかを判断する試験が行なわれる。 決定がイエスであれば、制御はボックス14に移り、再
び「旧レジスタ」をK,に初期設定する。ファイル内の
最初の記録に対してこの初期設定は冗長である。何故な
ら既にボックス6で初期設定をしており、流れを何等か
の形で変更することによって省略することが出来るが、
ファイル内のその後の記録に対しては不可欠である。次
に制御がボックス15に移る。ボックス13の決定がノ
ーであれば、制御は直接にボックス15に進み、「旧レ
ジスタ」を変更しない。これは連鎖なしの場合は、「旧
レジスタ」はボックス9で指定された定数の値を保持す
べきであり、記録の連鎖が行なわれる場合、後で説明し
た様に、又これから説明する様に、「旧レジスタ」は流
れ図の他の何処かで最後に設定された値を保持すべきだ
からである。後で説明する様に、完全な8バイトのブロ
ックの入力、暗号化及び出力の後、ボックス27からも
結合子Dを介してボックス15に来ることが出来る。 いずれの場合にせよ、装置は0個又は更に多くのデータ
・クロック・パルスをそれに関連したデータ・バイトと
共に受取ることを予想し、それが最後にはEORで終了
する。その一層大きな目的は、8バイトが謙込まれるか
又はEORを受取るか、どちらかが最初に発生する時ま
で、相次ぐデ−夕・バイトを「入力レジスタ」(第3A
図の10)に諸込むことである。最初、ボックス15で
、nに対するバイト計数器(第3B図の46)を0に設
定する。次に、ボックス16及び17の鏡還ループで、
装置はデータ・クロック・パルス又はEORが初めて発
生するのを捜す。最初に発生するのがデータ・クロツク
・パルスであると仮定する。ボックス17からのイエス
出口がボックス18に通じ、そこで1個の入力データ・
バイトが「入力レジスタ」に読込まれ、データ・クロッ
ク・パルス・フラグF0(第3A図)がオフに転ぜられ
る。ボックス19で、バイト・カウントが1だけ増やさ
れ、ボックス20でそれが8と比較される。nが8より
小さければ、制御はボックス16に戻り、そこで装置は
EOR又はデータ・クロック・パルスが繰返されるのを
待つ。EORを受取る前に8個のデータ・クロック・パ
ルスを受取った場合、完全な8バイトの入力データ・ブ
ロックを受取ったことになり、これを処理すべきである
。制御はボックス20から結合子Aを介してボックス2
1へ進む。こ)で装置は、連鎖(ブロック又は記録の連
鎖)を行なっているかどうかを試験する。行なっていれ
ば、この装置では普通そうであるが、制御はボックス2
2へ移り、そこで暗号化/復号様式制御入力が試験され
る。様式が暗号化であると仮定する。 制御がボックス23及び24へ進み、そこでこの発明の
要部である暗号化の連鎖が行なわれる。ボックス6で又
はブロック連鎖の場合はボックス14で「旧レジス夕」
を初期設定した後、初めてボックス22に入る時、「旧
レジスタ」は、前に述べた様にKI即ちy〇を持ってい
る。この他にボックス22に入る時、「旧レジスタ」は
、後の説明から判る様に、ブロック単位暗号化装置から
出て来る最後の暗号化出力を持っている。いずれの場合
も、「旧レジスタ」は前に述べた連鎖値vを持っている
。一般に、これは直前の完全な入力ブロックを処理した
後であり、この最後の値はその前の8バイトの暗号文ブ
ロック、即ち前にyi‐,と呼んだものである。然し、
様式が記録の連鎖であり、1つ又は更に多くの短いブロ
ック、例えばK個の短いブロックがあって、その中間に
完全なブロックがない場合、「旧レジスタ」は最後の完
全な暗号文ブロックを相次いでK番目1こ再暗号化した
もの又はこのファイルに完全な出力ブロックがない場合
はKIを暗号化したものを持つ。ボックス23は前に述
べた関数gの評価u=g(v)を行なう。 この関数は暗号に適切で工学的に便利な離散値を持つ任
意の関数であってよく、例えば同一性g(v)=vであ
ってもよいし、或いはvのビットの一定の4・集合をと
ることであってもよいし、或いはvのビットの種々の小
集合の加算又は排他的なオア等であってよい。今の場合
、関数gは「順繰り回し一g(v)=vに選んだ。これ
はvの最初の32ビットを最後の32ビットと交換した
ものである。この関数を選んだのは、前述の特定のブロ
ック単位暗号化装置では、全ての可能なキーの内の4つ
のキー、即ち全てのビットが0のキー、全てのビットが
1のキー並びに他の2つのキーに対し、全部0ビットか
ら成る平明文の2つ又は更に多くのブロックが続くと、
同一の2つの暗号文ブロックが1ブロックだけ離れたパ
ターンが生ずるという、外観上好ましくない事態を避け
る為である。然し、関数gを選択する際、関数の値uが
直ちに繰返されることがない様な十分な可変性を温存す
ることが重要であり、そうしないと、平明文パターンが
繰返す場合に暗号文に所望の可変性が達成されない。 この実施例では、64ビット全体の可変性が保存される
。ボックス24で、「入力レジスタ」の内容は平明文ブ
ロックxiであり、「旧レジスタ」の内容はu=g(v
)であり、排他的オア操作が前に述べたアルゴリズムの
式E以下に示す田操作の1例である。 この操作の結果がxi′と呼ばれる。暗号化を出来る様
にする由操作の本質的な特徴は、右逆元日を持つこと、
即ち右側の演算数に対して可逆であること、即ち右側の
引数uが判っていればx;=xi由u及びvからxF又
‘′日uを再び決定することが出来ることである。由の
暗号手法として望ましい別の性質は、平明文の中の種々
の場所で繰返されていてもよいが、所定のxに対し、x
′のとり得る値が繰返される可能性がごく少なく、従っ
て、ブロック単位暗号化装置に於けるブロック単位の暗
号化が複雑である為、これから出るyの値が確認出来な
い様に相異なることが殆んど確実であることである。今
の場合、xiと64ビットのu=g(v)との排他的オ
ア操作が、右側の引数の64ビット全体の可変性を保存
する。 排他的オアの逆関数は別の排他的オアである。これと同
じく有効な組合せ操作は、オーバフローを無視した桁上
げつきの加算であろう。その逆関数は、負のオーバフロ
ーを無視した借つきの減算であろう。こういう操作は好
ましい実施例の場合の排他的オアよりも不必要に一層複
雑であるが、基本的な操作として加算並びに減算を持つ
が、排他的オアを持たない様なハードウェアでは、その
方が適していることもある。別の典型的な1対の関数g
及び由は、gがvから特定の6ビットuをとること、又
は特定の6ビットの集合の排他的オアuをとることであ
って、操作由が、xがu個のビット位置だけ左又は右へ
循環桁送りをすることである。 こうすると、×の各々に対しx′が64個の値をとり得
る。x′を構成し、それをボックス24で中ブロック1
/0レジス夕に入れると、装置はボックス25でそれを
暗号化(即ち中ヰ1又はfxを実行)する様に進み、ボ
ックス26で、この結果得られた暗号文yiを出力レジ
スタ(第3C図の14)並びに「旧レジスタ」の両方に
読込み、次のブロックに連鎖する為のvとして使う。 ボックス27で、こうして得られた8バイトの暗号文を
、夫々対応するクロック・パルスと共に出力する。この
点で、制御が結合子Dを介してボックス15に戻る。ボ
ックス15で、装置はこの後のデータ・クロック・パル
スを受取り、その結果対応するデータ・バイトを計数し
て処理するのを待つか、並びに/又はEORを受取るの
を待つ。 データ・クロック・パルス及びバイトがEORを伴わず
に引続いて到着する限り、それが8つずつ今述べた様に
ブロックとして暗号化される。この為、0個、1個又は
更に多くの完全な8バイトの入力データ・ブロックが処
理される。最後にボックス16でEORが検出され、制
御がボックス28へ移る。 nが0に等しいと、どれだけ多くの8バイトのブロック
を処理していても、記録中に付加的なバイトは受取って
いない。即ち、詑録の長さは8バイトの正確な倍数であ
る。制御が結合子Zを介してボックス29に移り、そこ
でEORが出力されて入力と合い、その後ボックス10
に移り、再びEOF又はBORを待つ。この様にボック
ス29からボックス10に来ることは後で説明する。他
方、ボックス28で、nが0に等しくなかった場合、ど
れだけ多くの8バイトのブロックを処理していても、記
録中に付加的なnバイト(少なくとも1つ、そして8よ
り少ない)を受取っており、従って記録の長さは正確に
8バイトの倍数ではない。この場合、装置はnバイトの
短いブロックを暗号化しなければならない。この為、制
御がボックス30へ移る。ボックス30で、バイト・カ
ウントnを、計数器で後に破壊的に処理した後に再び使
う為、コピー・レジスタ(第3B図の48)に写す。ボ
ックス31で、装置は連鎖様式を試験する。この発明の
場合の様に連鎖(ブロック又は記録の連鎖)を行なう場
合、制御がボックス32,33及び34に移る。これら
のボックスは一緒になって「旧レジスタ」の内容vをf
K(g(v))に取替える。次に制御がボックス35に
移り、そこでn個の入力バイトがバイト計数器の制御の
下に「入力レジスタ」内で左詰めにされる。ボックス3
6で、左詰めにされたデータが「旧レジスタ」の内容v
(この内容vも「旧レジスタ」に保存されている)と排
他的にオアされ、ボックス37で、この結果得られたn
バイトの暗号文がそれに対応するクロック・パルスと共
に(コピー・レジスタに保存されている値nを使って)
「旧レジスタ」から出力される。 入力データをmブロック暗号の暗号化にかける代りに、
排他的オアをとる目的は、平明文と同じバイト数の暗号
文を作り、それから平明文を回復することが出来る様に
することである。この代りに短い平明文ブロックを詰込
みにより8バイトにし、汀ブ。ック暗号に通すと、この
結果得られる暗号文はもとの平明文より長くなり、これ
は用途によっては望ましくない。こういう暗号文をもと
の長さに切って復号出来る様にすることが出来ないこと
がある。装置が平明文の排他的オアをとる時に用いた「
旧レジスタ」の内容は同じ記録内(ブロック連鎖の場合
)又は同じファイル内(記録の連鎖の場合)にあるそれ
迄の全ての完全なブロックの汀ブロック暗号を通じての
複雑な関数であり、この為、ブロック毎に変わるのが普
通であり、短いブロックに対しても暗号化を強力にする
。制御はボックス37から結合子Cを介してボックス2
9に進み、そこでEORを出力し、その後再びボックス
10へ移る。 前に述べた様に、8バイトの倍数から成る記録を完了し
た後、ボックス28からボックス29を介してボックス
101こ制御が移ることもある。両方の場合が合流し、
いずれの場合も、装置は状態3から状態2へ戻る。ボッ
クス10及び11の待ちループで、最初に受取った信号
がBORであると、装置は同じファイル内の新しい記録
を開始し、状態2から状態3へ戻る。「旧レジスタ」は
、ブロック連鎖を行なっている場合はボックス14でK
Iにリセットされるが、記録の連鎖を行なっているか或
いは連鎖なしの場合は、リセットされない。この新しい
記録並びに同じファイル内のこの後の記録は、上に述べ
た様に処理される。他方、最後にEOFがボックス10
に釆ると、制御はボックス10から結合子×を介してボ
ックス38へ移り、そこでEOFが出力され、その後ボ
ックス2へ戻り、状態2から状態1良Pち「ファイルの
合間」に戻る。 この時装置は次のファイルを同じ様に処理する用意が出
来ている。これ迄、装置が暗号化様式でブロック連鎖又
は記録の連鎖様式にあると大体仮定して来た。 次に復号様式でのブロック連鎖及び記録の連鎖を考える
。ボックス22までは、制御の流れはこれまでと同じで
あり、今度はボックス22からボックス39へ進む。こ
)で、「旧レジスタ」の内容vは、所定のブロックが復
号される直前には、そのブロックが初めて暗号化される
直前と(この装置内で又はそれと同等の装置内で)常に
同じであることを強調しておかなければならないし、こ
れが正しい復号にとって不可欠である。 これは次の様に考えれば判る。初期設定の直後は、いず
れの場合もv=KIであるからそうであるし、完全なブ
ロック並びに短いブロックの両方に対し、1つのブロッ
クを処理する初めにその通りであれば、そのブロックを
処理した終りにもそうであり、従って次のブロックの初
めにもそうなることが判る。この為、数学的な帰納法か
ら、全てのブロックについて上に述べたことが正しいこ
とが判る。ボックス39で、8バイトの入力yiがmブ
ロック1/0レジスタに送込まれると共に「入力レジス
タ」にも保管される。 ボックス40で、復号(mFI又はfRI)が行なわれ
、xi′が汀ブロック1/0レジスタに現われる。ボッ
クス41に入る時、帰納法の仮定により、「旧レジスタ
」の内容は、このブロックを初めて暗号化する時にボッ
クス23に入る場合と同じvである。ボックス41がこ
の復号の為に、このブロックの暗号化に対してボックス
23がしたのと同じ計算u=g(v)を行なう。u=g
(v)が「旧レジスタ」にあってxi′が中ブロック1
/0レジスタにあると、ボックス42はこの暗号文ブロ
ックに対し、対応する平明文に対してボックス24で行
なわれたのと逆の操作xi=xi′由uを行ない、こう
して「出力レジスタ」に平明文xiを回復する。同時に
yiが「旧レジスタ」にコピーされ、次のブロックを処
理する為のv=yiになる。初めの暗号化でもv=yi
であるから、帰納法の条件が充たされている。この点で
、制御がボックス27に戻り、その後のこの8バイト・
ブロックに対する流れは、暗号文の代りに平明文が出て
釆ることを別にすれば、暗号化の場合と同じである。ボ
ックス22及び27の間の、暗号化又は復号のいずれの
様式であるかによって決まるブランチは、完全な8バイ
ト・ブロックに対するものである。 ボックス30乃至37は、暗号化並びに復号の両方に使
われ、これは短いブロックに対して同じ様なものを必要
としない。これは、ボックス36に於ける排他的オア作
用がそれ自身の逆元だからである。ボックス36に於け
る操作が、オーバフロ−を抑圧した桁上げつき加算の様
なものであった場合、復号には、装置は逆の操作を行な
うボックスへのブランチを必要とすることになる。いず
れの場合も、「旧レジスタ」のvをfK(g(v))に
入れ替えることは、復号でも暗号化でも同じであり、そ
の為帰納法の仮定が充たされている。これでこの発明の
要旨とするブロック連鎖又は記録の連鎖の流れの説明を
終る。 連鎖による利点からみて、・連鎖ないま排除した方がよ
い様なものであるが、現存の装置との両立性の為、この
実施例の連鎖なしの様式を説明する。前に述べた様に、
連鎖なしの様式では、「旧レジスタ」の初期設定は定数
K2の暗号v=fK(K2)を用いてボックス7,8,
9で行なわれ、この為「旧レジスタ」の内容はキー依存
性を持つ。 連鎖なしの様式では、この内容は変更されることは決し
てなく、短いブロックの暗号化に用いられる。完全な8
バイト・ブロックを処理する時、連鎖なしの様式では、
ボックス21で制御がボックス43に移り、そこで平明
文又は暗号文ブロックをリブロック1/0レジスタに読
込む。ボックス44で暗号化又は復号様式が試験され、
制御は暗号化ではボックス45、復号ではボックス46
へ移る。いずれのボックスでも、制御がボックス47へ
移り、そこで暗号文又は平明文が「出力レジスタ」に謙
込まれる。この後流れはボックス27で連鎖様式の場合
の流れと一緒になる。短いブロックの場合、連鎖なしの
場合の制御は連鎖の場合とボックス31で分れ、ボック
ス32,33及び34を飛越し、制御は直接にボックス
35以降に進み、そこで連鎖の場合と同じく、nバイト
の平明文又は暗号文入力が「旧レジスタ」と排他的オア
され、nバイトの暗号文又は平明文出力を発生する。連
鎖の場合と同じく、ボックス36の操作が自己逆元であ
る場合、暗号化と復号の間で流れに差はない。この様に
短いブロックを処理する時、排他的オアによって平明文
を暗号文に又はその逆に変換する為に使われる「旧レジ
スタ」内に量は、ブ。ック連鎖又は記録連鎖の場合に経
過依存性を持つ変数であるのと対照的に、連鎖なしの場
合はキー依存性を持つ定数である。従って、表面的には
平明文をぼかすが、短いブロックを連鎖なしで暗号化し
たものは、暗号としては弱い。その為、連鎖を使う方が
よい。第3図はこれ迄説明した暗号化動作を遂行し得る
暗号化装置のハードウェアの1例を示す。 装置に使われる主な4つの処理レジスタが入力レジスタ
10、旧レジスタ12、出力レジスター4及びmフロツ
ク1/0レジスタ50であり、これはブロック単位暗号
化装置の入出力レジスタである。前に述べた様に、入力
レジス外ま、入力データ母線から受取った新しい各々の
データ・ブロックを収容する。旧レジスタは、連鎖値v
を保管する。これは初期設定値であるか又はブロック単
位暗号化装置からの前の出力のいずれかである。この連
鎖値はこ)からシフトして送出し、2つの排他的オア回
路16,18並びに2つのマルチプレクサM円X2、M
PX4に送ることが出来る。両方の排他的オア回路が全
く同じ機能を果たすが、或る種の動作でデータ通路に食
い違いがある為に重復して設けてあるにすぎないことに
注意されたい。レジスタ20が定数K2を貯蔵し、それ
を暗号にしたものが連鎖なし様式では「旧レジスタ」1
2に袋入される。同様に、レジスタ22が定数KIを保
持し、これは、ブロック連鎖又は記録の連鎖様式にある
時、新しいデータ記録又は新しいファイルの処理を開始
する際の装置の初期設定の時、旧レジスタ12に適当に
ゲートされる。これらの定数KI及びK2は等しくても
よく、0であってよい。こ)で、この装置がビット並列
、バイト直列の機械であり、各々のデータ・ブロックが
最大8バイトで構成されることに注意されたい。 この為、図から判る様に、データ転送母線が各バイトの
8ビットを伝える8本の線を持つことが示されている。
レジスタ10,12,14等の1つに装入するには、8
バイトをそのレジスタにビット並列、バイト直列形式で
適当にシフトする為、所定のレジスタに8つの別々のシ
フト信号が入らなければならない。読出専用記憶装置(
ROM)24がこの装置を制御する制御信号の源である
。この様な制御記憶装置の分野で周知の様に、この読出
専用記憶装置の各ワードは、それを適当な復号器で復号
して、装置内の種々の動作を制御する為に、選定された
線に所望の制御パルスを発生することが出来る様にする
第1のフィールドを持っているのが普通である。謙出専
用記憶装置で別の順序にブランチしたい場合、適当なフ
ィールドにブランチ・アドレスを入れることが出来る。
適当な試験により、ブランチを行なうと決定された場合
、このアドレスが記憶装置アドレス・レジスタ(MAR
)26に装入され、別の順序が利用出釆る様になる。 ブランチ状態がない場合、記憶装置アドレス・レジスタ
26が適当に増数され、この順序中に貯蔵された次の制
御ワードが呼出される。5つのフラグ・レジスタFO乃
至F4が、図に示していない外部入力データ・レジスタ
から自動的にセットされる。 これらのフラグは下記の場合に「1」にセットされる。
データ・クロツク・パルスが存在する時、フラグFOが
セットされるが、これは入力保持レジスタ(図に示して
ない)にデータ・ブロックがあり、入力データ母線11
にデータを利用し得ることを示すにすぎない。ファイル
の初め、記録の初め、記録の終り及びファイルの終りを
夫々表わすBOF,BOR,EOR,EOFと記した4
本の線のいずれかに信号があると、それは、第2図に示
す様な入力データフオーマットの対応する状態が発生し
たことを表わす。これらの信号は、或る初期設定並びに
終了作用を行なわなければならないことを装置に知らせ
ると共に、出力に同様な信号を適当に発生しなければな
らないことをも表わす。3つのマルチプレクサMPX1
、MPX2及びMPX3は、それらが接続されている夫
々のレジスタに対する直接的な入力選択動作を行なう。 即ち、或るマルチプレクサに入る制御信号の2進形式に
応じて、特定の入力母線が選択され、当然のことながら
、装入動作の為にレジスタ自体に接続される。同様に、
マルチプレクサMPX4は、それに接続された4本の入
力母線の内の1つを選択し、この入力を出力母線301
このせる。制御の適当な選択により、出力母線3川ま、
M円X4からげフロツク1/0レジスタへ、又はM円X
4或いはけブロック1/0レジスタのいずれか)らMP
X2,M円X3又は排他的オア18のいずれかへのデー
タの転送を出来る様にする。 入力M円X32は、前に述べた4つのマルチブレクサと
同様に選択作用をする。然し、このマルチプレクサは1
ビットのスイッチであり、他のもの)様に、出力母線に
8ビットを出すのではなく、その出力線34に1ビット
をのせる。事実上、マルチプレクサ32は、装置内に存
在する種々の状態の試験が出来る様にする。試験される
特定の状態は、5ビットの入力ケーブル36(4個のア
ドレス・ビット及び1個の付能ビット)に現われる2進
形式によって特定される。これによつて事実上、IZ本
の入力線0乃至11の内の選ばれた1つが照会される。
この為、例えば第IB図のボックス13に示す様に、装
置がブロック連鎖様式にあるかどうかを知りたい場合、
マルチプレクサ32の入力線6が照会され、この線の「
1」又は「0」が線34にゲートされる。システム・ク
ロック38がパルスを出した時、線34が「0」であれ
ば、諸出専用記億装置24に対する記憶装置アドレス・
レジスタ26内にある前のアドレスが1だけ増数され、
この新しいアドレスがROMで呼出される次のアドレス
になる。他の場合「ROMの現在制御ワードに貯蔵され
たブランチ・アドレスがケーブル44の一部分を介して
記憶装置アドレス・レジスタ26にゲートされ、このア
ドレスを利用して次のROM制御ワードを呼出すことは
云う迄もない。この為、入力マルチプレクサ32に対す
る種々の入力が、フローチャートに示した種々のブラン
チ動作全部を制御し、任意の所定の時、このブランチ動
作はケーブル36のビット形式によって入力マルチプレ
クサ32が選択する入力信号線と、この選ばれた入力線
の信号の状態によって決定される。出力復号器40は図
に示した複数個の制御作用に役立つ。 出力復号器は入力マルチプレクサ32と同様なスイッチ
ング作用をするが、この場合にすることは、ROMの制
御の下にシングル・ショット(S/S)43によってパ
ルスが発生された時には、何時でもそれを復号器の15
本の出力線の内の1つを介してゲートすることである。
特定の線が、復号器の上側にROMから供給される4つ
の入力ビットによって選択される。出力復号器から出て
行く上側の1群の線はフラグ・レジスタFO乃至F4の
リセット(下側)入力に行く。所定のリセット線は、そ
れに関連したフラグ・レジスタが入力マルチプレクサを
通じて試験され、セット状態にあると判ったすぐ後に付
勢される。S/Rクロックと託した線はシフト・レジス
タのィンデクス用クロツクであり、3つのレジスタ10
,12,14、2つの定数レジスタ20,22及び竹ブ
ロック1/0レジスタに対し、並びに/又はそれから随
意選択によって相次いでバイトをシフトさせる。各々の
S/Rクロック・パルス中にシフトさせられる特定のレ
ジス夕(1個又は複数)は、後で説明するラツチ回路4
2から釆る6ビットのマスク、即ち、S/Rマスクによ
って決定される。 このマスクは6本の線mE,mD,mC,mB,mA,
mF‘こラッチされる6つの信号で構成される。この各
々の線が1つのアンド・ゲートAO乃至A5に一方の入
力を供V給する。この各々のアンド・ゲートの他方の入
力はS/Rクロック・パルス線から入る。アンド・ゲー
トの出力は6つのシフト・レジスタ、即ち出力レジスタ
、入力レジスタ、旧レジスタ、KIレジスタ、K2レジ
スタ及び竹ブロック1/0レジスタのシフト制御線E,
D,C,B,A,Fになる。最後に、出力復号器40の
下側から出て来る5本の線から成るケーブルが、夫々計
数器46並びにコピー・レジスタ48に入る。 計数器は、1ブロック内で受取った実際のデータ・バイ
トの数n、即ち完全なブロックでは8、短いブロック(
EORで終了する)ではこれより少ない数を計数する為
に必要である。コピーレジスタは、短いブロックを処理
する時、nの値の余分のコピーを保管しておく為に必要
である。ケーブルの5本の線の作用は次の通りである。
クリア(破算)は計数器を0に破算する。U/Dは計数
の向き(上向き又は下向き)を制御する。CPIは計数
器を1だけインデックスする。菱入はコピー・レジスタ
の内容を計数器にコピーする。CP2は計数器の内容を
コピー・レジスタにコピーする。制御ラッチと託された
回路42もケーブル44によってROMの出力に接続さ
れており、夫々選定された1つの出力線に接続される複
数個のセット可能なラッチを持つ点で、装置32,40
とは異なる。 特定のラツチのセット動作がROMからの出力ビット・
パターンによって制御される。こ)でうッチを使う理由
は、一般にブロック42からの出力線の信号は長期間、
即ち多数の機械サイクルの間保持しなければならないか
らである。即ち、所定のデータ転送動作に対し、ブロッ
クのシフト動作全体にわたり、特定のマルチプレクサ・
アドレス並びに特定のシフト・レジスタのマスク・パタ
ーンを保持しなければならない。最後に、その石上の隅
にmフロック1/0レジスタ50を持つブロック単位暗
号化装置と記された、図の下側にあるブロックは、nビ
ットを原データとして受取り、n個の変換されたビット
を階号化又は復号データとして出す任意の公知のブロッ
ク単位暗号化装置であってよい。図でもこの説明でも、
ブロック単位暗号化装置をmブロックと呼んでいる。 第3図で下に書いたKと膚の記号士1があることが認め
られよう。このKはキーKを持つキー制御式暗号化装置
であることを示し、±1は暗号化(灯支1)及び復号(
汀RI)の両方に同じハードウェアを使っていることを
示す。竹ブロックの上側に入る4本の線は次の様に作用
する。「汀ブロックへの±IJは装置の制御装置が暗号
化又は復号のいずれかを行なう様に設定する。「リブロ
ツク袋入/放出」線はwブロック1/0レジスタ50の
ゲートを制御し、それが入力又は出力レジスタのいずれ
として作用するかをこのレジスタに知らせる。「mブロ
ック処理」線は、この名前の意味する様に、この時mブ
ロック1/0レジスタ50に入っているデータ・フロツ
クの暗号化又は復号を進める様に装置に合図する為にあ
る。最後に、Fと記す線は、汀フロツク1/0レジスタ
50へ又はこれからバイトをゲートする為のシフト・レ
ジスタ制御線である。mフロックから来る「処理完了」
と記された線はMPXに戻り、要請された暗号化処理が
完了したこと、並びに暗号化又は復号されたブロックが
現在けブロック1/0レジスタ501こ用意出来ている
ことを装置に知らせる。この為、第3A図乃至第3C図
に具体的に示したハードウェアが、この発明の本質的な
特徴である暗号文連鎖動作並びに短いブロックの処理動
作を行なうのに必要な制御装置の略全部を含んでいる。 前に第IA図乃至第ID図についての説明で、このハー
ドウエアの中で行なわなければならない具体的な動作を
一般的に説明した。行なわれる一連の動作を具体的に且
つ詳しく説明する為、次に下記のマイクロプログラム順
序リストを参照する。マイクロプログラムの命令符号の
選択並びにそれに従った装置の形態は単に例であって、
これと同等のその他の形でも実現することが出来ること
に注意されたい。マイクロ命令の並行の程度並びにそれ
に関連したROMの出力データの通路44の幅は特定し
ないま)にしてある。マイクロプログラム式制御器に装
置のハードウェアの各部分を制御する上で高度の同時性
を組込むことにより、高速動作を達成することが出釆る
。この為には比較的幅の広いデータ通路44を必要とし
、それに伴って費用も比較的高くなる。装置のハードウ
ェアの各部分を制御する上での同時性を比較的小さくす
る様に装置を構成することにより、それよりレベルは低
くても、所要の性能を充たすことが出来る。この様な条
件は、コストをそれに対応して比較的安くして、データ
通路44の幅を比較的狭くして充たすことが出来る。勿
論、こういうマイクロプログラム順序は簡略命令形式即
ち英語形式になっている。 云い換えれば、各々のマイクロ命令は、その命令によっ
て行なわれる具体的なハードウェアの作用を述べている
。実際には、各々の命令が2進ワードであって、その一
部分を出力復号器及び制御ラッチで復号して、これらの
2つのブロックから出て来る個々の制御線を通じて所望
の作用を遂行することが出来ることは云う迄もない。I
MPX32も前に述べた様にROMからケーブル36を
介して命令を受取る。マイクロプログラム順序リストは
第IA図乃至第ID図のフローチャートとよく似た形で
続く。 各群のマイクロ命令の左側の括弧内に記した数はフロー
チャートで同じ番号のボックスに対応する。或るグルー
プが6A及び6Bの様に部分に分けられているのは、当
然のことながらハードウェアを考慮して、装置内のブラ
ンチの入口又は折返し点の為である。マイクロプログラ
ムを説明する為、次に若干のマイクロ命令を一般的に説
明する。 ごく頻繁に必要になる1つのプロセスはデータ・ブロッ
ク(1つ又は複数)を種々のレジスタと他のハードウェ
ア装置との間で転送することである。この為には適当な
データ通路を設定することが必要であると共に、シフト
・レジスタ・クロック・パルスが適正なシフト・レジス
タに印加される様にする為に適当なシフト制御通路をも
設定することを必要とする。データ通路を設定する為、
命令「アドレスM円X…」を使う。例えば、マイクロプ
ログラム順序リストを参照すると、群6Aの最初の命令
「アドレスM円X2ケーブル3」は、MPX2の入力ケ
ーブル(母線)3をその出力母線に接続する。これによ
ってKIレジスタの出力が旧レジスタの入力に接続され
る。シフト制御通路を設定する為、6ビットの2進フィ
ールドを伴う命令「S/Rマスクを・・・に設定」を使
う。前に述べた様に、このマスクは事実上6つのアンド
回路AO乃至A5に印加される。この実施例では、6ビ
ットの2進フィールドが次の様に用いられる。1番左側
のビットが糠mAを介してアンド回路A4に供給され、
2番目のビットが線m鰍こ印加され、3番目のビットは
線mC、4番目のビットは線mD、5番目のビットは緑
m虹、6番目のビットは線mfに印加される。 この為、6Aと記した命令群について説明すると、その
中の4番目の命令はこういうマスク命令であり、特定さ
れたマスクは011000である。この結果線mB及び
mCが出力を持ち、それらが、S/Rクロック・パルス
が発生した時、それを線B及びCを介してKIレジス夕
22及び旧レジスタ12に印加させる。このマイクロ命
令並びに直ぐ前に述べたマイクロ命令の効果として、こ
の後の各々のS/Rクロック・パルスが1バイトをKI
レジスタから旧レジスタヘシフトさせる。この様な8個
のパルスにより、連鎖の為、旧レジスタがKIに適正に
初期設定されることは前に述べた通りである。マイクロ
プログラム順序リスト内に頻繁に現われる他の2つの操
作は、命令「IMPX線・・・アドレス」及び「IMP
X試験」である。 後の方の命令は常に2つの文「IFI…」及び「FO」
を伴う。前に述べた様に、この試験は装置内のブランチ
動作を左右する。入力マルチプレクサ即ちIMPXは1
2個の入力をとることが出釆、これらは本質的に試験し
なければならない全てのブランチ状態を表わす。更にこ
のマルチプレクサ力稀嫁34の1つの出力を持ち、これ
が最後にアドレスされた入力線からゲートされる。この
線に1又は0のいずれが現われるかに応じて、ブランチ
をとるか、或いは次の順序を続けるか、或いはその代り
に2つのブランチの内の一方をとる。即ち、例えばマイ
クロプログラム順序リストを参照して、命令群5を見る
と、最初の命令は「IMPX線7アドレス」と記されて
いる。こ)で線7は特定の動作順序で連鎖があるかない
かを示す為に外部からセットされる線である。この結果
、IMPXがこの特定線を線34にゲートする。この線
に1が現われると、2番目の命令「IMPX試験Jを実
行する時、マイクロプログラムが3番目の命令「1なら
7Aへ行け」に示される様に、群7Aの1番目の命令に
ブランチする。この群の4番目の命令「0なら継続せよ
」は、0が現われ)ば、マイクロプログラムが次の命令
、即ち6Aと託された群の1番目の命令へ続けられるこ
とを意味する。こういう命令の対がマイクロプログラム
順序全体にわたって何回も繰返される。下記のマイクロ
プログラム順序リストは、第IA図乃至第ID図のフロ
ーチャートのボックス1乃至47によって行なわれる機
能を遂行するのに必要な全ての動作を特定している。 ついでながら述べておくと、こういうボックスは、数多
くのブランチ状態を設けなければならないので、必ずし
も順序通りになっていない。然し、フローチャートの場
合と同じく、そこに特定された動作を行なうのに必要な
全ての命令がこのマイクロプログラム命令のリストに含
まれている。マイクロプログラム順序リスト ‘UENTER ‘2}RESETFOTOO RESETFIT○O RESETF2TOO RESETF3TOO RESETF4TO0 【3}ADDRESSIMPXLINEITESTIM
PXMOGOT○(3) 『ICONTINUE RESETFI ‘410UTPUTBOFSIGNAL‘5}ADDR
ESSIMPXLmE7TESTIMPX『IGOT○
(7A) mOCONTINUE (船)ADDRESSMPX2CABLE3CLEAR
COUNTER46SETU/DLINETOI SETS/RMASKTOOilOOOADDRESS
IMPXLmE9(粥)ENITS/RCLOCKPU
LSEWCREMENTCOUNTER46TESTI
MPX びOGOT○(脂) 『IGOT○(10) (7A)ADDRESSMPX4CABLEOENAB
LEMPX4SETS/RMASKTOIOOOOIS
ET山○AD/EMITmB山○CKLmETOICL
EARCOUNTER46 SETU/○LINETOl ADDRESSIMPXL瓜E9 (7B)EMITS/RCLOCKPUBE…CREM
ENTCOUNTER46TESTIMPX 『OGOT○(7B) 『ICONTINUE DIS曲LE岬X4 ■SET+・T。 汀BLOCKL1NETOISETPROCESS汀B
LOCKLINET。 ・(9A)SETS/RMASKTOOOIOOIAD
DRESSMPX2CABLE2ADDRESSIMP
XLINElO TESTIMPX mOGOT0(班) びICONTINUE SEThOAD/EM1T竹BhOCKLINErOO
SETPROCESSmBLOCKLINETO○GO
TO 00ADDRESSIMPXLWE4TESTIMPX
びIRESETF4GOT○(38) 『OCONTINUE (11)ADDRESSIMmXLINE2TESTI
MPXmOGOT0(10) びICONTINUE RESETF2 (12〇UTPUTB〇RSIGNAL(13)ADD
RESSIMmXLINE6TESTIMPXmOGO
T0(15) mICONTINUE (14A)ADDRESSMPX2CABLE3SET
U/○LINETOISETS/RMASKTOO1l
00OADDRESSIMPXLmE9(1の)EMI
TS/RCLOCKPUBEDVCREMENTCOU
NTER46TESTIMPX 花OGOTO 『ICONTINUE (15)CLEARCOUNTER46 (16)ADDRESSIMPXLINE3TESTI
MPX『IGOT○(28) mOCONTINUE (17)ADDRESSIMPXLINEOTESTI
MPXmOGOT○(16) mICONTINUE RESETFOTO0 (18)ADDRESSIMPXLINE9ADDRE
SSMPXICABLEOSETS/RMASKTOO
OOIOOSETU/DLINETOIEMITS/R
CLOCKPULSE (19)INCREM旧NTC〇UNTER46(20
)TESTIMPX岬000T○(16) 『ICONTINUE (21)ADDRESSIMPXLINE7TESTI
MPXmlのT0(柵 mOCONTINUE (22)ADDRESSIMPXLINE8TESTI
MPX『0のT0(柳 『ICONTINUE (23)ADDRESSMPX4CABLEIENA′
BLEMPX4ADDRESSMPX2CABLE2 SETS/RMASKTOOOIOOOEMITS/R
CLOCKPULSEEMITS/RCLOCKPUL
SE EMITS/RCLOCKPULSE EMITS/RCLOCKPULSE (2必)SETU/DL川ETOI ADDRESSMPX4CABLE2 SETS/RMASKTOOOIIOISETLOAD
/EMITmBLOCKL川ETOIADDRESSI
MPXL州E9 (2蟹)EMITS/RCLOCKPULSE瓜CRE
MENTCOUNTER46TESTIMPX mOGOT0(2の) 『ICONTINUE (2私)SET±ITO中BLOCKLINErOIS
ETPROCESS打BLOCKLINET。 ・ADDRESSIMPXLINEI0(2由)TES
TMPXmOGOTO mICONTINUE (26A)DISABLEMP×4 ADDRESSMPX3CABLEO ADDRESSMPX2CABLE2 SETS/RMASKTOOOIOIISETU/DL
INETOlADDRESSIMPXL瓜E9 (2紐)EMITS/RCLOCKPUBEmCREM
ENTCOUNTER46TESTIMPX びOGOT0(2紐) mICONTINUE (27A)SETU/○L瓜ETOISETS/RMA
SKTOOOOOIOADDRESSIMPXL瓜E9
(27B)EMITOUTPUTDATACPPULS
EEMITSノRCLOCKPULSEDNCREME
NTCOUNTER46 TESTIMPX mOGOT○(27B) mIGOT0(15) RESETF3TOO ADDRESSIMPXLOVElITESTIMPX
岬OGOTOmICONTINUE (29DOUTPUTEORPULSEGOT○(10
)(30)LOADCOPYREG48 (31)ADDRESSIMPXLINE7TESTI
MPX『1伽T0(洲 『OCONTINU (32A)ENABLEMPX4 ADDRESSMPX4CABLEl ADDRESSMPX2CABLE2 SETS/RMASKTOOOIOOOEMITS/R
CLOCKPULSEEMITS/RCLOCKPUL
SE EMITS/RCLOCKPULSE EMITS/RCLOCKPULSE SETS/RMASKTOOOIOOISETレOAO
/EMITmBリOCKLmETOISETU/DLI
NETOl ADDRESSIMPXLmE9 (3波)EMITS/RCLOCKPUBEmCREM
ENTCOUNTER46TESTIMPX 『OGOT○(3が) mICONTINUE DIS船LE船X4 (33A)SET土ITomBLOCKL瓜ETOlA
DDRESSIMPXL瓜ElOSETPROCESS
力BLOCKL1NBT。 ・TESTIMPX びOGOT0(3紙) mICONTINUE SETPRICESS汀BLOCKLmET〇〇(乳い
)ADDRESSMPX2CABLE2SETS/RM
ASKTOOOIOOISETU/DLINETOIC
LEARCOUNTER46 SETLOAD/EMITwBLOCKLWETOOA
DDRESSIMPXLmE9 (3の)EMITS/RCLOCKPUはEWCREM
ENTCOUNTER46TESTIMPX 『0のTO(郷) びICONTINUE (3松)ADDRESSIMPXLINE9のADCO
肌TER46SETS/RMASKTOOOOIOOS
ETU/DLINETO1(38)EMITS/RCL
OCKPUはEWCREMENTCOUNTER46T
ESTIMPX mOGOT0(3班) 『ICONTINUE (36A)ENABLEMPX4 ADDRESSMPX4CABLE2 ADDRESSMPX2CABLEl ADDRESSMPX3CABLEO SETS/RMASKTO0OIII0(3斑)EMI
TS/RCLOCKPUBE川CREMENTCOUN
TER46TESTIMPX mOGOT0(3曲) FICONTINUE (37A)LOADCOUNTER46 SETU/DLINETOO SETS/RMASKTOOOOOIOMPXMII(
37B)OUTPUTDATACPPULSEEMIT
S/RCLOCKPULSEDECREMENTCOU
NTER46TESTIMPXmOGOT○(37B) 『IGOT0(29) (38)OUTPUTEOFPULSE GOT0(2) (39A)ENABLEMP×4 ADDRESSMPX4CABLE3 ADDRESSMPXICABLEI SETLOAD/EMIT打Bh。 CKL的ETOISETU/DLINETOI SETS/RMASKTOOOOIOIADDRESS
IMPXLOVE9(3斑)EMITS/RCLOCK
PUBEDICREMENTCOUNTER46TES
TIMPX mOGOT○(3班) 『ICONTINUE (40A)SET士1T○mBLOCKLWETOIS
ETPROCESSmBLOCKLINETOI(4服
)ADDRESSIMPXLINElOTESTIMP
X『OGOT0(4船) mICONTINUE SETPROCESS中BLOCKLINETO○(4
1)ADDRESSMPX4CABLElADDRES
SMPX2CABLE2SETS/RMASKTOOO
IOOOEMITS/RCLOCKPULSEEMIT
S/RCLOCKPULSE EMITS/RCLOCKPULSE EMITS/RCLOCKPULSE (42A)DISABLEMP×4 SETU/DLINETOl ADDRESSMPX3CABLEl ADDRESSMPX2CABLEO SETS/RMASKTOOOIIIIADDRESS
IMPXL皿E9(4波)EMITS/RCLOCKP
UはEINCREMENTCOUNTER46TEST
IMPX 餌OGOT0(4$) mIGOT○(27A) (43A)ADDRESSMP×4CABLE3ENA
BLEMPX4SETLOAD/EMIT汀BLOCK
L瓜ETOISETS/RMASKTOOOOIOIS
ETU/DLINETOlADDRESSIMPXLm
E9 (4班)EMITS/RCLOCKPULSEOICR
EMENTCOUNTER46TESTIMPX『OG
OT0(4$) 『ICONTINUE (4幻ADDRESSIM円XLINE8TESTIM
PXmOGOT○(46) mICONTINUE (4払)SET士1TO灯BLOCKLNETOI(4
$)SETPROCESSmBLOCKLINETOI
ADDRESSIMPXLONEI0 (4に)TESTIMPX びOGOT○(4$) mICONTINUE SETPROCESS打BLOCKL1NET。 ○GOT0(47A) (4句SET士・T。 汀BLOCKLmETOOGOT0(4粥) (47A)SETLOAD/EMIT打BLOCKLW
ETOODIS船LE岬X4 ADDRESSMPX3CABLEO SETU/○LINETOI SETS/RMASKTOOOOOIIADDRESS
IMPXLmE9(47B)EMITSノRCLOCK
PUはEDリCREMENTCOUNTER46TES
TIMPX 『OGOT○(47B) ぽIGOT○(27A) 第3A図乃至第3C図のハードウェアの実施例について
上に全般的に説明したこと)今述べたマイクロプログラ
ム順序リストから、当業者であればこの発明を実施出来
る位に、この発明の操作が詳しく判ると思われる。 従って、以下説明するのは、マイクロプログラムの一部
分を適切な場合は第3A図乃至第3C図と結びつけて、
文章の形で説明し直すものである。 第IA図乃至第ID図のフローチャートを包括的に説明
すれば膨大なものになるから、以下の説明では、主に各
々のマイクロプログラム動作で何が行なわれるかを述べ
、時たまそれとフローチヤ−トに示す一層大がかりな動
作との関係を説明する。マイクロプログラム順序の番号
を大体フローチャートのボックスと対応する様にし、若
干の違いがあっても、それは主に便宜上又は場所を節約
する為であるから、フローチャートと以下の説明との間
の対応関係はかなり直接的であると考えられる。最初に
装置に実際に送込むことから説明を始めるとして、ブロ
ック1乃至11を簡単に説明する。 工程1は単に装置の入口であり、「オン・スィッチ」を
オンに転ずることに相当する。工程2で、5個のフラグ
FO乃至F4が全部0にリセットされる。装置が工程3
へ続き、そこで最初の命令によって、MPX線1がアド
レスされ、これがFIの状態を照会する。この線が0で
あれば、装置は本質的に待ちループにあり、工程3の最
初の命令へ戻り、ファイルの初めを表わす1の値にぶつ
かるまで、IMPXの線1を引続いて試験する。そうな
った時、装置が動作を続け、FIにリセット・パルスを
印加して、それを0にリセットする。次に装置は工程4
へ進み、そこで装置の出力にBOF信号が発生される。
装置は工程5へ続き、そこで1番目の命令がIMPXの
線7をアドレスする。次の命令がこの線を試験し、それ
が1にセットされていて、連鎖なしを表わす場合、装置
は工程7Aへブランチする。そうでなければ、工程6A
へ続く。工程6Aの1番目の命令が、M円X2に、その
入力のケーブル3からその出力へ至る通路を設定させる
。次の命令が計数器46を全部0に破算する。その次の
命令が計数器46に対するU/D線を1にセットし、こ
れによって計数器は線CPIを介してクロック・パルス
を受取った時には、何時でも増数される。次の命令がS
/Rマスクを011000にセットする。即ちA=D;
E=F=0、B=C=1。これによってシフト・レジス
タ・クロツク・マスク及び回路AO乃至A5が適当にセ
ットされ、この為KIレジスタ22(線Bを介して)及
び旧レジスタ12(線Cを介して)だけが適正なシフト
・パルスを受取る。次の命令がIMPXの線9を監視の
為にアドレスする。工程6Bは実際に菱入動作を行ない
、その1番目の命令がS/Rクロック・パルスを出す様
にし、これが前に述べた様に2つのシフト・レジスタだ
けに供給される。 次に計数器46が増数され、その後、IMPXが試験さ
れる。勿論、工程6Aの最後の命令がIMPXの線9を
アドレスする。第3B図について説明すると、線9は計
数器46からのr計数器桁上げ」であり、8回のシフト
が行なわれた時を示す為にこれが使われる。つまり、K
Iレジスタの内容が旧レジスタに完全に菱入されたこと
を示す。従って、IMPXに対する線9がまだ0であっ
て、シフトの回数が8回より少ないことを意味する場合
、装置は工程6Bへ戻り、もう1回シフト・サイクルを
行なう。この線が1にセットされていて、シフト動作及
び装入が完了したことを示すまで、このループ動作が続
けうれ、その後装置は工程10へ進む。ついでに云うと
「工程10に達する道は他にも沢山あり、それらはフロ
ーチャートから明らかであるので、こ)では繰返して説
明しない。工程10で、1番目の命令がMPXの線4を
アドレスする。次の命令がこの線を照会する。それが1
にセットされていて、ファイルの終りであることを表わ
す場合、F4が0にリセットされ、順序は工程38へ進
む。照会された線が0にセットされていると、装置は工
程11へ続く。工程11では、IMPXの線2が試験さ
れ、これはフローチャート及びハ−ドウェアの図面から
明らかな様に、記録の初めを試験する。この線が0にセ
ットされていると、装置は工程10へ戻り、逆に1にセ
ットされていると、装置はF2をリセットし、ブロック
12へ続く。これで工程1乃至11の初期設定動作が本
質的に完了する。次に完全なデータ・ブロックを暗合化
する順序を説明する。 これがブロック21乃至27に示されている。説明の便
宜上、暗号文の連鎖を利用していて、動作は暗合化であ
り、装置が工程21から直接的に22へ進み、その後工
程23という様に工程27まで進むと仮定する。工程2
1でIMPXの線7がアドレスされる。 この線の内容が次の命令で試験され、1(連鎖なし)で
あれば、装置は工程43Aにブランチし、そうでなけれ
ば工程22へ続く。これがこ)で仮定した場合である。
工程22の1番目の命令がIMPXの線8をアドレスす
る。次の工程がこの線の内容を試験し、0(復号)であ
れば、装置は工程39Aへブランチし、1(暗合化)で
あれば、工程23へ続く。工程23の1番目の命令がM
PX4のケーブル1をアドレスする。次の命令がMPX
4を出力ケーブルに接続する。次の命令がMPX2によ
ってその入力のケーブル2をアドレスする。云い換えれ
ば、ケーブル2を出力に接続する。次の命令がS/Rマ
スクを001000に設定する。その次の4つの命令が
、4個のクロツク・パルスを線Cを介して旧レジスタに
印加する。事実上、これによって、前に「順繰り回し一
操作について述べた様に、旧レジスタの内容が4バイト
だけ4個の位置にわたって順ぐりに回される。この後装
置は工程24Aに進み、そこで1番目の命令がU/D線
を1にセットする。次の命令がM円X4に対する入力の
ケーブル2をその出力ケーブルに接続する。次の命令が
S/Rマスクを001101にセットする(S/Rクロ
ック線をC,○,Fに接続する)。次の命令が汀ブロッ
ク菱入/放出線を1にセットし、これによってリブロッ
ク1/0レジスタ50が、適正なクロツク・パルスを受
取った時に、データを受入れる。次の命令がIMPXの
線9(計数器桁上げ)をアドレスする。次に装置は工程
248に進み、そこで1番目の命令がS/Rクロツク・
パルスを出させる。MmX2,MPX4及びS/Rマス
クの設定により、入力レジスタのバイトと旧レジス夕の
バイトの排他的オアが竹ブロック1/0レジスタに入る
と共に3つのレジスタ全部がシフトする。計数器46が
1だけ増数され、IMPXが試験される。この試験が0
であれば、装置は工程24Bの1番目の命令に戻り、1
であれば工程25Aへ続く。この点で、mフロツク1/
0レジスタが入力レジスタ及び旧レジスタの排他的オア
を持っている。工程25Aの1番目の命令がmブロック
±1線を1にセットし、暗合化動作がそこで行なわれる
ことを表わす。次の命令が「けブロック処理」信号を出
させ、これによってリブロック暗合化装置でブロック暗
合化膿序が行なわれる。次の命令がIMPXの線10を
照会し、これによって事実上、暗合化過程が完了したか
どうかが判断される。完了していなければ、装置は線1
0が1に変わるまで、待ちループ25Bにとゞまり、線
10が1に変わると、工程26Aへ続く。工程26Aの
1番目の命令がMPX4をその出力ケーブルから切離す
。次の命令が入力ケーブル0をその出力ケーブルのMP
X3に接続する。次の命令がMPX2のケーブル2をそ
の出力ケーブルに接続する。次の命令がS/Rマスクを
00iollに設定し、その次の命令がU/○線を1に
セットし、工程26Aの最後の命令がIMPXの線9を
アドレスする。この順序268により、8回のバイト・
シフト動作が行なわれるが、これはフローチャートのブ
ロック26に示した様に、データ・レジスタの菱入を行
なう為に逐次的になされなければならない。工程26B
の1番目の命令がS/Rク。ツク・パルスを出し、計数
器46が増数される。IMPXが試験され、0であれば
、268が繰返されるが、1であれば、8回のシフトが
行なわれたことであり、装直は工程27Aへ進むことが
出釆る。この結果、竹ブロック1/0レジスタが旧レジ
スタ及び出力レジスタの両方に謙込まれる。工程27A
の1番目の命令がU/D線を1にセットする。 次の命令がS/Rマスクを000010に設定する。次
の命令がIMPXの線9をアドレスする。この後、装置
は工程27Bへ進み、そこで1番目の命令が装置に出力
復号器40の出力フラグ線から出力データ・クロツク・
パルスを出させる。次の命令がS/Rクロツク・パルス
を発生させ、これがシフト・レジスタ・マスクを介して
出力レジスタ14に印加され、その中の次のデータ・バ
イトをこのレジスタの出力のデータ線13に出る様にす
る。次の工程が計数器46を1だけ増数し、IMPXが
試験される。IMPXの線9に対するこの試験も、8バ
イトが出力レジスタからシフトして出たことを判断する
為である。その時まで、この線は0にセットされており
、装置は工程27Bへ戻る。この線が1になるまでこの
状態が続く。1になると、装置が工程15へ進む。 工程21乃至27について上に述べたことを、工程1乃
至11について述べた所を併せて考えれば、マイクロプ
ログラム願序の制御による装置の動作が明瞭に判る。他
の全ての動作の順序は略同じ様に行なわれ、特定の動作
順序は、マイクロプログラム順序リスト中の番号をつけ
られた動作を順次追えば、容易に判る。この発明の暗合
化装置の作用について上に詳しく説明した所から、こ)
に示したハードウェアが暗合化及び復号の両方に対し、
制御の変更を最小限に抑え、事実上ハードウェアの変更
を伴わずに、同じハードウェアを利用出来る様な形で、
暗号文を連鎖する考えを実施するものであることは明ら
かであろう。 こ)に述べた実施例はビット並列、バイト直列の機械の
場合であるが、当業者であれば、他のデータ・フオーマ
ツト、例えばビット直列或いはブロック全体が並列とい
う形のデー外こ対処する様に機械を構成し得ることは容
易に明らかであろう。更に、前に述べた様に、それまで
の暗号文と新しいデータ・ブロックとの排他的オア形の
変換又は組合せの他に、簡単な加算又は制御された循環
桁送りの様な他の変換も利用することが出来る。更に、
直ぐ前の暗号文以外のデータ・ブロックを連鎖過程に利
用することが出来る。勿論、数学的な可逆性、即ち逆の
操作によってもとのデータを容易に再生することが出来
るという拘束はあるが、暗号文の連鎖の他に「平明文の
連鎖又はキーの連鎖も利用することが出来る。
船馨室員旨電室頭目・議室員員曇。 三;増e)★90bq’JGA【日【「l1山3.01
qa工「4AA○山磨ききき言責室員害室雲室員皇室喜
美】【孝二ヤヒZ岸1loAS,.ぷ。ト.燕雲量喜一
雲雲ぱ三・亀キN◆。三三Cへ…内雲梶Eまま≦広…ト
ご葦‐真三富貴きき言貴賓言責言責旨言責旨美喜旨。さ
きここ5^”A′・裏の)●:トコ538〇ュニ3★←
苔一三裏2裏三尾支援2葦工毒迄宏毒素ヒコへぐ・〇,
。 〇。〇。くコ。〇。OAAAA【−【ヱこ1【〕.例で
は暗号文の連鎖を利用していない。 第3表は、記録の連鎖の考えを適用した場合のこの発明
の利点を明瞭に示している。 これ迄の説明から判る様に、記録の連鎖は暗号文ブロッ
クの連鎖の特定の場合である。記録の連鎖を用いる時、
この連鎖は記録の境界にわたって続けられる。第1表に
示すデータの例では、各々の行が典型的には1つの記録
であり、記録の連鎖を使うと、暗号文ブロックの連鎖が
、この頁に表わされているデータ・ファイル全体にわた
って連続的に続けられる。この為、繰返しがもはや目に
つかなくなる。第4表及び第5表は、前に説明したこの
発明の別の面、即ち装置に誤りが導入された時にこの発
明では伝播が制限されることを例示している。 第4表及び第5表の例では、暗号化の際に何等かの形で
誤りが導入されたと仮定している。検査してみれば、星
印が図示の印字出力の左上隅から斜めに下に現われる点
で、第4表が第3表と違うことが認められよう。これが
導入された誤りである。第5表は第4表に示す不正の暗
号文を復号したものであり、誤りの伝播が制限されるこ
とを示している。第5表を第1表と比較すれば、各々の
行に限られた誤りしか存在しないことが認められよう。
これ迄の説明から判る様に、これは1つのブロック内で
は重大な誤りであるが、隣りのブロックではずっと小さ
な誤りである。ついでながら述べておくと、第2図に示
す特定のデータフオーマットは単に例として示したもの
であり、これは記録並びにファイルには、図示の特定の
初め及び終りマーク又は同等な区切り方法を用いる場合
が多いという計算機業界の常套手段に従ったものである
。 更に、データ・バイトがクロツク・パルスを含むことが
示されている。これも広く普及した使い方である。この
実施例はこのフオーマットを利用して作用する様に設計
されており、事実全ての制御及びタイミング回路はその
動作にこの様なフオーマツトを必要とする。然し、この
発明は暗号文の連鎖の考えをブロック単位暗号化装置と
粗合せて使うことに関するものであって、こういうデー
タフオーマット並びに所要の制御回路がこの発明の根本
的な一部分を構成するものではないことを明確に承知さ
れたい。次に第IA図乃至第ID図のフローチャートを
詳しく説明する。これらの図はこの発明の作用、具体的
に云えば実施例を非常に明確に例示している。このフロ
ーチャートを構成する第IA図乃至第ID図について具
体的に説明する他に、第3A図乃至第3C図のハードウ
ェアの実施例についても説明する。実施例の動作の説明
はフローチャートの説明をした後で行ない、最後にハー
ドウェアを動作させるのに必要なマイクロプログラム丹
頂序のIJストを挙げると共に、その動作を説明する。
以下の説明並びに第1図のフローチャートは、暗号化又
は復号しようとするデータが離散的な形(ディジタル形
式)の流れとして利用出釆、何等かの形でこのデータの
小さな流れに分割されていると仮定している。この4・
さな流れをこ)では記録と呼ぶ。これらの記録はファイ
ルと呼ぶ一層大きなグループにまとめられており或いは
まとめることが出来る。このフオーマットが第2図に示
されている。このデータは例えば貯蔵媒体から入手し得
るし、或いは通信線路に沿って伝送することが出来る。
第2図は、データが相次ぐバイト、即ち並列ビットの並
列の群としてこの装置のハードウェアに到達することを
明瞭に示している。各々のバイトがデータ・クロツク・
パルス(図に示してない)を伴う。1つの記録を構成す
るバイトの前に記録の初め即ち80Rマーク又は信号が
あり、その後にはそれに合せた記録の終り又はEOR信
号が続く。 ファイルはこの様な1つ又は更に多くの記録で礎成れ、
その前にファイルの初め又はBOF信号であり、その後
にはそれに合せたファイルの終り又はEOF信号が続く
。データ・パルス及び信号は今述べた順序で装置のハー
ドウェアに到着すると仮定する。必要があれば、適当な
予備処理並びに誤り検出及び補正回路によって、こうい
うことを保証することが出来る。こういう前提の下に、
データ又はマークが到着する合間の任意の時刻に、回路
は第2図に示す3つの主な状態の内のどれかの状態にあ
ると考えることが出来る。縦態1‘まファイルの合間の
状態、であり、全てのファイルの前又は全てのファイル
の後である場合を含む。BOFであれば、その各々には
対応するEOFがある。状態2は記録の合間の状態であ
り、或るファイルの最初の記録の前又は最後の記録の後
の場合を含む。BOFは受取ったが、それに対応するE
OFはまだない。然しこの後のBORにはいずれもEO
Rが対応している。状態3は記録内部の状態である。B
ORを受取っており、幾らかのデータも受取っている(
場合によっては受取っていない)が、それに対応するE
ORはまだ受取っていない。状態1では、BOFが最初
に到着する信号であると予想することが出来、それが到
着すれば装置が状態2になることが第2図から判る。状
態2では、BORが来るかEOFが来ることが予想され
、80Rが来れば装置は状態3になるが、EOFが釆れ
ば装置は状態1になる。状態3では、対応するデータ・
クロツク・パルスを伴うデータ・バイトか或いはEOR
が来ることが予想され、データ・バイトが来れば、それ
が処理され、装置は依然として状態3にとゞまるが、E
ORが来れば装置は状態2に戻る。これらの状態、特に
状態3は、例えばどれだけ多くのバイトを受取ったか、
どうし、々種類の連鎖を行なっているか等に応じて、更
に小状態(これは詳しく説明しない)に小分けされる。
次に第IA図乃至第ID図及び第3A図乃至第3C図に
ついて説明する。 第3A図の左上に1バイト幅の入力データ母線11と、
データ・クロック・パルス又はデータCP,BOF,8
0R,EOR及びEOFと呼ぶ5本の1ビット信号線と
があることが判る。ファイル又は通信線路又は予備処理
装置は、任意の時、これらの1ビット線がどれも付勢さ
れないか又はその1つだけが付勢され、この1つがデー
タ・クロツク・パルス線である場合、1バイト幅のデー
タ母線にデータ・バイトが利用し得る様になっていると
仮定する。この為、5本の1ビット制御線上の信号の順
序が、第2図に示した記録及びファイルのマーク並びに
データ・バイトの順序に対応する。更に、これらの図に
示すこれから説明する回路は通信線路に較べて十分速く
動作し、各々の入力信号は次の入力信号が到着する前に
処理されてリセットされると仮定する。回路が第3図の
右側に、これに対応する5本一組の1ビット出力信号線
及び1つの出力データ母線13を持つことに注意された
い。記録及びファイルのマークとデータ・バイト及びデ
ータ・クロツク・パルスの順序が出力でも入力と同じに
なる様に構成されていることを後で説明する。然し、出
力データは入力データを暗号化したもの又は復号したも
のであるので、実際のデータ・バイトは異なる。第38
図の左側に、連鎖なし、ブロック連鎖、記録の連鎖、並
びに暗号化か復号かに応じて1本ずつの4つの様式制御
入力とキー入力母線とがあることが判る。 各々のファイル(又はファイル群)に対し、これら4本
の線及び母線は、選択された様式にする様に且つキーを
使う様に予め設定されていて、ファイルを処理する間、
外部又は内部でラッチされている。連鎖を選択する3本
の線の左、1本だけが付勢される。 ブロック連鎖を選択した場合、連鎖はブロックからブロ
ックへ行なわれる(1ブロックがブロック単位暗号化装
置又はその他に入力され又はそこから出力されるデータ
の量である場合、一層少ない量のデータが記録の終りに
残る)。この時各々の記録の初めに連鎖の初期設定をし
直す。記録の連鎖を選択した場合、やはり連鎖はブロッ
クからブロックへ行なわれるが、連鎖の初期設定のやり
直しは各々のファイルの初めにだけなされ、各々の記録
の初めには行なわれない。この両方の様式が図示の装置
に含まれている。連鎖なしを選択した場合は側路様式で
あって、この時ブロックの暗号化は、何等連鎖を行なわ
ない単なるブロック暗号である。これを設けたのは両立
性の便宜の為であり、不可決ではない。残りの線は暗号
化を希望する場合は一方の状態に、そして復号を希望す
る場合は他方の状態にする。 次に第IA図乃至第ID図の動作の流れ図を機能的な観
点からボックス毎に説明する。装置を初めて作動した時
、状態1にある。制御はボックス1から始まる。制御が
ボックス2に移り、そこで入力フラグ及びデータ母線の
破算の様な任意の所望の初期設定が行なわれる。次に制
御がボックス3に移り、そこで予想されるBOF信号が
到着したかどうかが試験される。到着していなければ、
ノ−の通路をとり、制御はボックス3に戻り、再び試験
が行なわれる。BOF信号は最初に到着する信号である
と仮定しているが、これが到着すると、それがハードウ
ェアのBOFフラグ1(第3A図)にラツチされ、ボッ
クス3で検出される。この時フラグがオフに転ぜられて
将来の混同を招かない様にし、制御がボックス4に移る
。他のフラグのこの後のラッチ動作並びに試験も同機で
ある。この移行時、ファイルが開始され、状態1から状
態2へ変わりつ)ある。ボックス4で、出力BOF線に
出力信号が発生され、こうして出力及び入力フオーマッ
トの間の対応が始まる。ボックス5で、この回路で普通
行なう連鎖(即ちブロックの連鎖又は記録の連鎖)を行
なうかどうかの試験がなされる。連鎖が行なわれ)ば、
制御はボックス6へ進む。こ)で、連鎖を行なう為に1
つのブロックの暗号化から次のブロックの暗号化まで保
存される連鎖値vを入れる「旧レジスタ」と呼ばれる第
3A図のレジスタ12が、適当な定数KIに設定される
ことによって初期設定される。この定数の選択はそれ程
重要ではないが、ごく稀な場合に、平明文のあまり重要
でない或る部分が暗号文で確認出来るかどうかに若干の
影響が出ることがある。これは0にとることが出来る。
これから説明する特定の実施例では、これは交互の2進
1及び2進0から成る64ビット又はそれに相当する1
針固のla隼法の5で構成されるとした。ボックス5の
決定が連鎖なし、即ちこ)で説明するブロック(並びに
記録)の連鎖を側路するものである場合、それでも「旧
レジスタ」には定数が入れられ、短いブロック、即ち8
バイト未満のブロックの暗号化が出来る様にする。 この定数は所望のキー依存性を持つ暗号化の為にキー依
存性を持つものでなければならないが、今の実施例では
、この暗号化が或る定数K2をブロック単位で暗号化す
ることによって形成される。この定数もかなり任意であ
り、これも交互の2進1及び2進0から成る64ビット
又は1針固の16進法の5に選ふく。この流れ図全体に
わたり、暗号化過程が3つのボックスで表わされる。 こ)ではボックス7,8及び9で表わされ、機能fx及
びfRIを実行するブロック単位暗号化装置(汀ブロッ
ク暗号)の手順に合せる。この装置では、第3B図に示
す様に、入力及び出力の両方に使われるリブロック1/
0レジスタと呼ばれる1個のレジスタ50と、キーを菱
入する母線と、幾つかの制御線とがある。m装置を使う
には、平明文又は贈号文ブロックをその入力/出力レジ
スタに送込み、暗号化(中正1又はfK)又は復号(m
RI又はfRI)動作のいずれであるかを知らせ、得ら
れた暗号又は平明文を同じ入力/出力レジスタから出力
する。この3つの工程が流れ図のボックス7,8及び9
に示されている。ボックス7では、入力/出力レジスタ
に特定の定数K2が装入され、ボックス8では暗号化が
行なわれ、ボックス9では入力/出力レジスタを「旧レ
ジス夕」に読出す。3つのボックスを合せて、「旧レジ
スタ」に対するK2の暗号化が達成される。 ボックス5で連鎖を選んだかどうかに関係なく、制御が
ボックス6又はボックス9からボックス10へ移り、「
旧レジスタ」の適当な初期設定が完了する。 ボックス101ま、後で説明するボックス29からも入
ることが出来る。 いずれの場合も、装置はまだ状態2にある。即ち「記録
の合間Jの状態であり、次の入力信号はEOF又はBO
Rであると予想される。(前の入力信号がBOFであっ
たから、普通ならばまだEOFは予想されないが、それ
が起り得る様にしても又は試験する様にしても、何ら害
はない。この試験が後で必要になる。)ボックス10及
び11の組合せは、11から10へ鏡遠があるが、今述
べた内の1つが初めて発生するのを待つ。それがEOF
であれば、ボックス10からのイエスの出口があり、こ
れは後で説明する。もしBORであれば、ボックス11
からボックス12へのイエスの出口があり、こ)で状態
3の「記録内部」に入り、BORが出されて、再び出力
が入力に対応する様にする。ボックス13で、ブロック
連鎖を行なうかどうかを判断する試験が行なわれる。 決定がイエスであれば、制御はボックス14に移り、再
び「旧レジスタ」をK,に初期設定する。ファイル内の
最初の記録に対してこの初期設定は冗長である。何故な
ら既にボックス6で初期設定をしており、流れを何等か
の形で変更することによって省略することが出来るが、
ファイル内のその後の記録に対しては不可欠である。次
に制御がボックス15に移る。ボックス13の決定がノ
ーであれば、制御は直接にボックス15に進み、「旧レ
ジスタ」を変更しない。これは連鎖なしの場合は、「旧
レジスタ」はボックス9で指定された定数の値を保持す
べきであり、記録の連鎖が行なわれる場合、後で説明し
た様に、又これから説明する様に、「旧レジスタ」は流
れ図の他の何処かで最後に設定された値を保持すべきだ
からである。後で説明する様に、完全な8バイトのブロ
ックの入力、暗号化及び出力の後、ボックス27からも
結合子Dを介してボックス15に来ることが出来る。 いずれの場合にせよ、装置は0個又は更に多くのデータ
・クロック・パルスをそれに関連したデータ・バイトと
共に受取ることを予想し、それが最後にはEORで終了
する。その一層大きな目的は、8バイトが謙込まれるか
又はEORを受取るか、どちらかが最初に発生する時ま
で、相次ぐデ−夕・バイトを「入力レジスタ」(第3A
図の10)に諸込むことである。最初、ボックス15で
、nに対するバイト計数器(第3B図の46)を0に設
定する。次に、ボックス16及び17の鏡還ループで、
装置はデータ・クロック・パルス又はEORが初めて発
生するのを捜す。最初に発生するのがデータ・クロツク
・パルスであると仮定する。ボックス17からのイエス
出口がボックス18に通じ、そこで1個の入力データ・
バイトが「入力レジスタ」に読込まれ、データ・クロッ
ク・パルス・フラグF0(第3A図)がオフに転ぜられ
る。ボックス19で、バイト・カウントが1だけ増やさ
れ、ボックス20でそれが8と比較される。nが8より
小さければ、制御はボックス16に戻り、そこで装置は
EOR又はデータ・クロック・パルスが繰返されるのを
待つ。EORを受取る前に8個のデータ・クロック・パ
ルスを受取った場合、完全な8バイトの入力データ・ブ
ロックを受取ったことになり、これを処理すべきである
。制御はボックス20から結合子Aを介してボックス2
1へ進む。こ)で装置は、連鎖(ブロック又は記録の連
鎖)を行なっているかどうかを試験する。行なっていれ
ば、この装置では普通そうであるが、制御はボックス2
2へ移り、そこで暗号化/復号様式制御入力が試験され
る。様式が暗号化であると仮定する。 制御がボックス23及び24へ進み、そこでこの発明の
要部である暗号化の連鎖が行なわれる。ボックス6で又
はブロック連鎖の場合はボックス14で「旧レジス夕」
を初期設定した後、初めてボックス22に入る時、「旧
レジスタ」は、前に述べた様にKI即ちy〇を持ってい
る。この他にボックス22に入る時、「旧レジスタ」は
、後の説明から判る様に、ブロック単位暗号化装置から
出て来る最後の暗号化出力を持っている。いずれの場合
も、「旧レジスタ」は前に述べた連鎖値vを持っている
。一般に、これは直前の完全な入力ブロックを処理した
後であり、この最後の値はその前の8バイトの暗号文ブ
ロック、即ち前にyi‐,と呼んだものである。然し、
様式が記録の連鎖であり、1つ又は更に多くの短いブロ
ック、例えばK個の短いブロックがあって、その中間に
完全なブロックがない場合、「旧レジスタ」は最後の完
全な暗号文ブロックを相次いでK番目1こ再暗号化した
もの又はこのファイルに完全な出力ブロックがない場合
はKIを暗号化したものを持つ。ボックス23は前に述
べた関数gの評価u=g(v)を行なう。 この関数は暗号に適切で工学的に便利な離散値を持つ任
意の関数であってよく、例えば同一性g(v)=vであ
ってもよいし、或いはvのビットの一定の4・集合をと
ることであってもよいし、或いはvのビットの種々の小
集合の加算又は排他的なオア等であってよい。今の場合
、関数gは「順繰り回し一g(v)=vに選んだ。これ
はvの最初の32ビットを最後の32ビットと交換した
ものである。この関数を選んだのは、前述の特定のブロ
ック単位暗号化装置では、全ての可能なキーの内の4つ
のキー、即ち全てのビットが0のキー、全てのビットが
1のキー並びに他の2つのキーに対し、全部0ビットか
ら成る平明文の2つ又は更に多くのブロックが続くと、
同一の2つの暗号文ブロックが1ブロックだけ離れたパ
ターンが生ずるという、外観上好ましくない事態を避け
る為である。然し、関数gを選択する際、関数の値uが
直ちに繰返されることがない様な十分な可変性を温存す
ることが重要であり、そうしないと、平明文パターンが
繰返す場合に暗号文に所望の可変性が達成されない。 この実施例では、64ビット全体の可変性が保存される
。ボックス24で、「入力レジスタ」の内容は平明文ブ
ロックxiであり、「旧レジスタ」の内容はu=g(v
)であり、排他的オア操作が前に述べたアルゴリズムの
式E以下に示す田操作の1例である。 この操作の結果がxi′と呼ばれる。暗号化を出来る様
にする由操作の本質的な特徴は、右逆元日を持つこと、
即ち右側の演算数に対して可逆であること、即ち右側の
引数uが判っていればx;=xi由u及びvからxF又
‘′日uを再び決定することが出来ることである。由の
暗号手法として望ましい別の性質は、平明文の中の種々
の場所で繰返されていてもよいが、所定のxに対し、x
′のとり得る値が繰返される可能性がごく少なく、従っ
て、ブロック単位暗号化装置に於けるブロック単位の暗
号化が複雑である為、これから出るyの値が確認出来な
い様に相異なることが殆んど確実であることである。今
の場合、xiと64ビットのu=g(v)との排他的オ
ア操作が、右側の引数の64ビット全体の可変性を保存
する。 排他的オアの逆関数は別の排他的オアである。これと同
じく有効な組合せ操作は、オーバフローを無視した桁上
げつきの加算であろう。その逆関数は、負のオーバフロ
ーを無視した借つきの減算であろう。こういう操作は好
ましい実施例の場合の排他的オアよりも不必要に一層複
雑であるが、基本的な操作として加算並びに減算を持つ
が、排他的オアを持たない様なハードウェアでは、その
方が適していることもある。別の典型的な1対の関数g
及び由は、gがvから特定の6ビットuをとること、又
は特定の6ビットの集合の排他的オアuをとることであ
って、操作由が、xがu個のビット位置だけ左又は右へ
循環桁送りをすることである。 こうすると、×の各々に対しx′が64個の値をとり得
る。x′を構成し、それをボックス24で中ブロック1
/0レジス夕に入れると、装置はボックス25でそれを
暗号化(即ち中ヰ1又はfxを実行)する様に進み、ボ
ックス26で、この結果得られた暗号文yiを出力レジ
スタ(第3C図の14)並びに「旧レジスタ」の両方に
読込み、次のブロックに連鎖する為のvとして使う。 ボックス27で、こうして得られた8バイトの暗号文を
、夫々対応するクロック・パルスと共に出力する。この
点で、制御が結合子Dを介してボックス15に戻る。ボ
ックス15で、装置はこの後のデータ・クロック・パル
スを受取り、その結果対応するデータ・バイトを計数し
て処理するのを待つか、並びに/又はEORを受取るの
を待つ。 データ・クロック・パルス及びバイトがEORを伴わず
に引続いて到着する限り、それが8つずつ今述べた様に
ブロックとして暗号化される。この為、0個、1個又は
更に多くの完全な8バイトの入力データ・ブロックが処
理される。最後にボックス16でEORが検出され、制
御がボックス28へ移る。 nが0に等しいと、どれだけ多くの8バイトのブロック
を処理していても、記録中に付加的なバイトは受取って
いない。即ち、詑録の長さは8バイトの正確な倍数であ
る。制御が結合子Zを介してボックス29に移り、そこ
でEORが出力されて入力と合い、その後ボックス10
に移り、再びEOF又はBORを待つ。この様にボック
ス29からボックス10に来ることは後で説明する。他
方、ボックス28で、nが0に等しくなかった場合、ど
れだけ多くの8バイトのブロックを処理していても、記
録中に付加的なnバイト(少なくとも1つ、そして8よ
り少ない)を受取っており、従って記録の長さは正確に
8バイトの倍数ではない。この場合、装置はnバイトの
短いブロックを暗号化しなければならない。この為、制
御がボックス30へ移る。ボックス30で、バイト・カ
ウントnを、計数器で後に破壊的に処理した後に再び使
う為、コピー・レジスタ(第3B図の48)に写す。ボ
ックス31で、装置は連鎖様式を試験する。この発明の
場合の様に連鎖(ブロック又は記録の連鎖)を行なう場
合、制御がボックス32,33及び34に移る。これら
のボックスは一緒になって「旧レジスタ」の内容vをf
K(g(v))に取替える。次に制御がボックス35に
移り、そこでn個の入力バイトがバイト計数器の制御の
下に「入力レジスタ」内で左詰めにされる。ボックス3
6で、左詰めにされたデータが「旧レジスタ」の内容v
(この内容vも「旧レジスタ」に保存されている)と排
他的にオアされ、ボックス37で、この結果得られたn
バイトの暗号文がそれに対応するクロック・パルスと共
に(コピー・レジスタに保存されている値nを使って)
「旧レジスタ」から出力される。 入力データをmブロック暗号の暗号化にかける代りに、
排他的オアをとる目的は、平明文と同じバイト数の暗号
文を作り、それから平明文を回復することが出来る様に
することである。この代りに短い平明文ブロックを詰込
みにより8バイトにし、汀ブ。ック暗号に通すと、この
結果得られる暗号文はもとの平明文より長くなり、これ
は用途によっては望ましくない。こういう暗号文をもと
の長さに切って復号出来る様にすることが出来ないこと
がある。装置が平明文の排他的オアをとる時に用いた「
旧レジスタ」の内容は同じ記録内(ブロック連鎖の場合
)又は同じファイル内(記録の連鎖の場合)にあるそれ
迄の全ての完全なブロックの汀ブロック暗号を通じての
複雑な関数であり、この為、ブロック毎に変わるのが普
通であり、短いブロックに対しても暗号化を強力にする
。制御はボックス37から結合子Cを介してボックス2
9に進み、そこでEORを出力し、その後再びボックス
10へ移る。 前に述べた様に、8バイトの倍数から成る記録を完了し
た後、ボックス28からボックス29を介してボックス
101こ制御が移ることもある。両方の場合が合流し、
いずれの場合も、装置は状態3から状態2へ戻る。ボッ
クス10及び11の待ちループで、最初に受取った信号
がBORであると、装置は同じファイル内の新しい記録
を開始し、状態2から状態3へ戻る。「旧レジスタ」は
、ブロック連鎖を行なっている場合はボックス14でK
Iにリセットされるが、記録の連鎖を行なっているか或
いは連鎖なしの場合は、リセットされない。この新しい
記録並びに同じファイル内のこの後の記録は、上に述べ
た様に処理される。他方、最後にEOFがボックス10
に釆ると、制御はボックス10から結合子×を介してボ
ックス38へ移り、そこでEOFが出力され、その後ボ
ックス2へ戻り、状態2から状態1良Pち「ファイルの
合間」に戻る。 この時装置は次のファイルを同じ様に処理する用意が出
来ている。これ迄、装置が暗号化様式でブロック連鎖又
は記録の連鎖様式にあると大体仮定して来た。 次に復号様式でのブロック連鎖及び記録の連鎖を考える
。ボックス22までは、制御の流れはこれまでと同じで
あり、今度はボックス22からボックス39へ進む。こ
)で、「旧レジスタ」の内容vは、所定のブロックが復
号される直前には、そのブロックが初めて暗号化される
直前と(この装置内で又はそれと同等の装置内で)常に
同じであることを強調しておかなければならないし、こ
れが正しい復号にとって不可欠である。 これは次の様に考えれば判る。初期設定の直後は、いず
れの場合もv=KIであるからそうであるし、完全なブ
ロック並びに短いブロックの両方に対し、1つのブロッ
クを処理する初めにその通りであれば、そのブロックを
処理した終りにもそうであり、従って次のブロックの初
めにもそうなることが判る。この為、数学的な帰納法か
ら、全てのブロックについて上に述べたことが正しいこ
とが判る。ボックス39で、8バイトの入力yiがmブ
ロック1/0レジスタに送込まれると共に「入力レジス
タ」にも保管される。 ボックス40で、復号(mFI又はfRI)が行なわれ
、xi′が汀ブロック1/0レジスタに現われる。ボッ
クス41に入る時、帰納法の仮定により、「旧レジスタ
」の内容は、このブロックを初めて暗号化する時にボッ
クス23に入る場合と同じvである。ボックス41がこ
の復号の為に、このブロックの暗号化に対してボックス
23がしたのと同じ計算u=g(v)を行なう。u=g
(v)が「旧レジスタ」にあってxi′が中ブロック1
/0レジスタにあると、ボックス42はこの暗号文ブロ
ックに対し、対応する平明文に対してボックス24で行
なわれたのと逆の操作xi=xi′由uを行ない、こう
して「出力レジスタ」に平明文xiを回復する。同時に
yiが「旧レジスタ」にコピーされ、次のブロックを処
理する為のv=yiになる。初めの暗号化でもv=yi
であるから、帰納法の条件が充たされている。この点で
、制御がボックス27に戻り、その後のこの8バイト・
ブロックに対する流れは、暗号文の代りに平明文が出て
釆ることを別にすれば、暗号化の場合と同じである。ボ
ックス22及び27の間の、暗号化又は復号のいずれの
様式であるかによって決まるブランチは、完全な8バイ
ト・ブロックに対するものである。 ボックス30乃至37は、暗号化並びに復号の両方に使
われ、これは短いブロックに対して同じ様なものを必要
としない。これは、ボックス36に於ける排他的オア作
用がそれ自身の逆元だからである。ボックス36に於け
る操作が、オーバフロ−を抑圧した桁上げつき加算の様
なものであった場合、復号には、装置は逆の操作を行な
うボックスへのブランチを必要とすることになる。いず
れの場合も、「旧レジスタ」のvをfK(g(v))に
入れ替えることは、復号でも暗号化でも同じであり、そ
の為帰納法の仮定が充たされている。これでこの発明の
要旨とするブロック連鎖又は記録の連鎖の流れの説明を
終る。 連鎖による利点からみて、・連鎖ないま排除した方がよ
い様なものであるが、現存の装置との両立性の為、この
実施例の連鎖なしの様式を説明する。前に述べた様に、
連鎖なしの様式では、「旧レジスタ」の初期設定は定数
K2の暗号v=fK(K2)を用いてボックス7,8,
9で行なわれ、この為「旧レジスタ」の内容はキー依存
性を持つ。 連鎖なしの様式では、この内容は変更されることは決し
てなく、短いブロックの暗号化に用いられる。完全な8
バイト・ブロックを処理する時、連鎖なしの様式では、
ボックス21で制御がボックス43に移り、そこで平明
文又は暗号文ブロックをリブロック1/0レジスタに読
込む。ボックス44で暗号化又は復号様式が試験され、
制御は暗号化ではボックス45、復号ではボックス46
へ移る。いずれのボックスでも、制御がボックス47へ
移り、そこで暗号文又は平明文が「出力レジスタ」に謙
込まれる。この後流れはボックス27で連鎖様式の場合
の流れと一緒になる。短いブロックの場合、連鎖なしの
場合の制御は連鎖の場合とボックス31で分れ、ボック
ス32,33及び34を飛越し、制御は直接にボックス
35以降に進み、そこで連鎖の場合と同じく、nバイト
の平明文又は暗号文入力が「旧レジスタ」と排他的オア
され、nバイトの暗号文又は平明文出力を発生する。連
鎖の場合と同じく、ボックス36の操作が自己逆元であ
る場合、暗号化と復号の間で流れに差はない。この様に
短いブロックを処理する時、排他的オアによって平明文
を暗号文に又はその逆に変換する為に使われる「旧レジ
スタ」内に量は、ブ。ック連鎖又は記録連鎖の場合に経
過依存性を持つ変数であるのと対照的に、連鎖なしの場
合はキー依存性を持つ定数である。従って、表面的には
平明文をぼかすが、短いブロックを連鎖なしで暗号化し
たものは、暗号としては弱い。その為、連鎖を使う方が
よい。第3図はこれ迄説明した暗号化動作を遂行し得る
暗号化装置のハードウェアの1例を示す。 装置に使われる主な4つの処理レジスタが入力レジスタ
10、旧レジスタ12、出力レジスター4及びmフロツ
ク1/0レジスタ50であり、これはブロック単位暗号
化装置の入出力レジスタである。前に述べた様に、入力
レジス外ま、入力データ母線から受取った新しい各々の
データ・ブロックを収容する。旧レジスタは、連鎖値v
を保管する。これは初期設定値であるか又はブロック単
位暗号化装置からの前の出力のいずれかである。この連
鎖値はこ)からシフトして送出し、2つの排他的オア回
路16,18並びに2つのマルチプレクサM円X2、M
PX4に送ることが出来る。両方の排他的オア回路が全
く同じ機能を果たすが、或る種の動作でデータ通路に食
い違いがある為に重復して設けてあるにすぎないことに
注意されたい。レジスタ20が定数K2を貯蔵し、それ
を暗号にしたものが連鎖なし様式では「旧レジスタ」1
2に袋入される。同様に、レジスタ22が定数KIを保
持し、これは、ブロック連鎖又は記録の連鎖様式にある
時、新しいデータ記録又は新しいファイルの処理を開始
する際の装置の初期設定の時、旧レジスタ12に適当に
ゲートされる。これらの定数KI及びK2は等しくても
よく、0であってよい。こ)で、この装置がビット並列
、バイト直列の機械であり、各々のデータ・ブロックが
最大8バイトで構成されることに注意されたい。 この為、図から判る様に、データ転送母線が各バイトの
8ビットを伝える8本の線を持つことが示されている。
レジスタ10,12,14等の1つに装入するには、8
バイトをそのレジスタにビット並列、バイト直列形式で
適当にシフトする為、所定のレジスタに8つの別々のシ
フト信号が入らなければならない。読出専用記憶装置(
ROM)24がこの装置を制御する制御信号の源である
。この様な制御記憶装置の分野で周知の様に、この読出
専用記憶装置の各ワードは、それを適当な復号器で復号
して、装置内の種々の動作を制御する為に、選定された
線に所望の制御パルスを発生することが出来る様にする
第1のフィールドを持っているのが普通である。謙出専
用記憶装置で別の順序にブランチしたい場合、適当なフ
ィールドにブランチ・アドレスを入れることが出来る。
適当な試験により、ブランチを行なうと決定された場合
、このアドレスが記憶装置アドレス・レジスタ(MAR
)26に装入され、別の順序が利用出釆る様になる。 ブランチ状態がない場合、記憶装置アドレス・レジスタ
26が適当に増数され、この順序中に貯蔵された次の制
御ワードが呼出される。5つのフラグ・レジスタFO乃
至F4が、図に示していない外部入力データ・レジスタ
から自動的にセットされる。 これらのフラグは下記の場合に「1」にセットされる。
データ・クロツク・パルスが存在する時、フラグFOが
セットされるが、これは入力保持レジスタ(図に示して
ない)にデータ・ブロックがあり、入力データ母線11
にデータを利用し得ることを示すにすぎない。ファイル
の初め、記録の初め、記録の終り及びファイルの終りを
夫々表わすBOF,BOR,EOR,EOFと記した4
本の線のいずれかに信号があると、それは、第2図に示
す様な入力データフオーマットの対応する状態が発生し
たことを表わす。これらの信号は、或る初期設定並びに
終了作用を行なわなければならないことを装置に知らせ
ると共に、出力に同様な信号を適当に発生しなければな
らないことをも表わす。3つのマルチプレクサMPX1
、MPX2及びMPX3は、それらが接続されている夫
々のレジスタに対する直接的な入力選択動作を行なう。 即ち、或るマルチプレクサに入る制御信号の2進形式に
応じて、特定の入力母線が選択され、当然のことながら
、装入動作の為にレジスタ自体に接続される。同様に、
マルチプレクサMPX4は、それに接続された4本の入
力母線の内の1つを選択し、この入力を出力母線301
このせる。制御の適当な選択により、出力母線3川ま、
M円X4からげフロツク1/0レジスタへ、又はM円X
4或いはけブロック1/0レジスタのいずれか)らMP
X2,M円X3又は排他的オア18のいずれかへのデー
タの転送を出来る様にする。 入力M円X32は、前に述べた4つのマルチブレクサと
同様に選択作用をする。然し、このマルチプレクサは1
ビットのスイッチであり、他のもの)様に、出力母線に
8ビットを出すのではなく、その出力線34に1ビット
をのせる。事実上、マルチプレクサ32は、装置内に存
在する種々の状態の試験が出来る様にする。試験される
特定の状態は、5ビットの入力ケーブル36(4個のア
ドレス・ビット及び1個の付能ビット)に現われる2進
形式によって特定される。これによつて事実上、IZ本
の入力線0乃至11の内の選ばれた1つが照会される。
この為、例えば第IB図のボックス13に示す様に、装
置がブロック連鎖様式にあるかどうかを知りたい場合、
マルチプレクサ32の入力線6が照会され、この線の「
1」又は「0」が線34にゲートされる。システム・ク
ロック38がパルスを出した時、線34が「0」であれ
ば、諸出専用記億装置24に対する記憶装置アドレス・
レジスタ26内にある前のアドレスが1だけ増数され、
この新しいアドレスがROMで呼出される次のアドレス
になる。他の場合「ROMの現在制御ワードに貯蔵され
たブランチ・アドレスがケーブル44の一部分を介して
記憶装置アドレス・レジスタ26にゲートされ、このア
ドレスを利用して次のROM制御ワードを呼出すことは
云う迄もない。この為、入力マルチプレクサ32に対す
る種々の入力が、フローチャートに示した種々のブラン
チ動作全部を制御し、任意の所定の時、このブランチ動
作はケーブル36のビット形式によって入力マルチプレ
クサ32が選択する入力信号線と、この選ばれた入力線
の信号の状態によって決定される。出力復号器40は図
に示した複数個の制御作用に役立つ。 出力復号器は入力マルチプレクサ32と同様なスイッチ
ング作用をするが、この場合にすることは、ROMの制
御の下にシングル・ショット(S/S)43によってパ
ルスが発生された時には、何時でもそれを復号器の15
本の出力線の内の1つを介してゲートすることである。
特定の線が、復号器の上側にROMから供給される4つ
の入力ビットによって選択される。出力復号器から出て
行く上側の1群の線はフラグ・レジスタFO乃至F4の
リセット(下側)入力に行く。所定のリセット線は、そ
れに関連したフラグ・レジスタが入力マルチプレクサを
通じて試験され、セット状態にあると判ったすぐ後に付
勢される。S/Rクロックと託した線はシフト・レジス
タのィンデクス用クロツクであり、3つのレジスタ10
,12,14、2つの定数レジスタ20,22及び竹ブ
ロック1/0レジスタに対し、並びに/又はそれから随
意選択によって相次いでバイトをシフトさせる。各々の
S/Rクロック・パルス中にシフトさせられる特定のレ
ジス夕(1個又は複数)は、後で説明するラツチ回路4
2から釆る6ビットのマスク、即ち、S/Rマスクによ
って決定される。 このマスクは6本の線mE,mD,mC,mB,mA,
mF‘こラッチされる6つの信号で構成される。この各
々の線が1つのアンド・ゲートAO乃至A5に一方の入
力を供V給する。この各々のアンド・ゲートの他方の入
力はS/Rクロック・パルス線から入る。アンド・ゲー
トの出力は6つのシフト・レジスタ、即ち出力レジスタ
、入力レジスタ、旧レジスタ、KIレジスタ、K2レジ
スタ及び竹ブロック1/0レジスタのシフト制御線E,
D,C,B,A,Fになる。最後に、出力復号器40の
下側から出て来る5本の線から成るケーブルが、夫々計
数器46並びにコピー・レジスタ48に入る。 計数器は、1ブロック内で受取った実際のデータ・バイ
トの数n、即ち完全なブロックでは8、短いブロック(
EORで終了する)ではこれより少ない数を計数する為
に必要である。コピーレジスタは、短いブロックを処理
する時、nの値の余分のコピーを保管しておく為に必要
である。ケーブルの5本の線の作用は次の通りである。
クリア(破算)は計数器を0に破算する。U/Dは計数
の向き(上向き又は下向き)を制御する。CPIは計数
器を1だけインデックスする。菱入はコピー・レジスタ
の内容を計数器にコピーする。CP2は計数器の内容を
コピー・レジスタにコピーする。制御ラッチと託された
回路42もケーブル44によってROMの出力に接続さ
れており、夫々選定された1つの出力線に接続される複
数個のセット可能なラッチを持つ点で、装置32,40
とは異なる。 特定のラツチのセット動作がROMからの出力ビット・
パターンによって制御される。こ)でうッチを使う理由
は、一般にブロック42からの出力線の信号は長期間、
即ち多数の機械サイクルの間保持しなければならないか
らである。即ち、所定のデータ転送動作に対し、ブロッ
クのシフト動作全体にわたり、特定のマルチプレクサ・
アドレス並びに特定のシフト・レジスタのマスク・パタ
ーンを保持しなければならない。最後に、その石上の隅
にmフロック1/0レジスタ50を持つブロック単位暗
号化装置と記された、図の下側にあるブロックは、nビ
ットを原データとして受取り、n個の変換されたビット
を階号化又は復号データとして出す任意の公知のブロッ
ク単位暗号化装置であってよい。図でもこの説明でも、
ブロック単位暗号化装置をmブロックと呼んでいる。 第3図で下に書いたKと膚の記号士1があることが認め
られよう。このKはキーKを持つキー制御式暗号化装置
であることを示し、±1は暗号化(灯支1)及び復号(
汀RI)の両方に同じハードウェアを使っていることを
示す。竹ブロックの上側に入る4本の線は次の様に作用
する。「汀ブロックへの±IJは装置の制御装置が暗号
化又は復号のいずれかを行なう様に設定する。「リブロ
ツク袋入/放出」線はwブロック1/0レジスタ50の
ゲートを制御し、それが入力又は出力レジスタのいずれ
として作用するかをこのレジスタに知らせる。「mブロ
ック処理」線は、この名前の意味する様に、この時mブ
ロック1/0レジスタ50に入っているデータ・フロツ
クの暗号化又は復号を進める様に装置に合図する為にあ
る。最後に、Fと記す線は、汀フロツク1/0レジスタ
50へ又はこれからバイトをゲートする為のシフト・レ
ジスタ制御線である。mフロックから来る「処理完了」
と記された線はMPXに戻り、要請された暗号化処理が
完了したこと、並びに暗号化又は復号されたブロックが
現在けブロック1/0レジスタ501こ用意出来ている
ことを装置に知らせる。この為、第3A図乃至第3C図
に具体的に示したハードウェアが、この発明の本質的な
特徴である暗号文連鎖動作並びに短いブロックの処理動
作を行なうのに必要な制御装置の略全部を含んでいる。 前に第IA図乃至第ID図についての説明で、このハー
ドウエアの中で行なわなければならない具体的な動作を
一般的に説明した。行なわれる一連の動作を具体的に且
つ詳しく説明する為、次に下記のマイクロプログラム順
序リストを参照する。マイクロプログラムの命令符号の
選択並びにそれに従った装置の形態は単に例であって、
これと同等のその他の形でも実現することが出来ること
に注意されたい。マイクロ命令の並行の程度並びにそれ
に関連したROMの出力データの通路44の幅は特定し
ないま)にしてある。マイクロプログラム式制御器に装
置のハードウェアの各部分を制御する上で高度の同時性
を組込むことにより、高速動作を達成することが出釆る
。この為には比較的幅の広いデータ通路44を必要とし
、それに伴って費用も比較的高くなる。装置のハードウ
ェアの各部分を制御する上での同時性を比較的小さくす
る様に装置を構成することにより、それよりレベルは低
くても、所要の性能を充たすことが出来る。この様な条
件は、コストをそれに対応して比較的安くして、データ
通路44の幅を比較的狭くして充たすことが出来る。勿
論、こういうマイクロプログラム順序は簡略命令形式即
ち英語形式になっている。 云い換えれば、各々のマイクロ命令は、その命令によっ
て行なわれる具体的なハードウェアの作用を述べている
。実際には、各々の命令が2進ワードであって、その一
部分を出力復号器及び制御ラッチで復号して、これらの
2つのブロックから出て来る個々の制御線を通じて所望
の作用を遂行することが出来ることは云う迄もない。I
MPX32も前に述べた様にROMからケーブル36を
介して命令を受取る。マイクロプログラム順序リストは
第IA図乃至第ID図のフローチャートとよく似た形で
続く。 各群のマイクロ命令の左側の括弧内に記した数はフロー
チャートで同じ番号のボックスに対応する。或るグルー
プが6A及び6Bの様に部分に分けられているのは、当
然のことながらハードウェアを考慮して、装置内のブラ
ンチの入口又は折返し点の為である。マイクロプログラ
ムを説明する為、次に若干のマイクロ命令を一般的に説
明する。 ごく頻繁に必要になる1つのプロセスはデータ・ブロッ
ク(1つ又は複数)を種々のレジスタと他のハードウェ
ア装置との間で転送することである。この為には適当な
データ通路を設定することが必要であると共に、シフト
・レジスタ・クロック・パルスが適正なシフト・レジス
タに印加される様にする為に適当なシフト制御通路をも
設定することを必要とする。データ通路を設定する為、
命令「アドレスM円X…」を使う。例えば、マイクロプ
ログラム順序リストを参照すると、群6Aの最初の命令
「アドレスM円X2ケーブル3」は、MPX2の入力ケ
ーブル(母線)3をその出力母線に接続する。これによ
ってKIレジスタの出力が旧レジスタの入力に接続され
る。シフト制御通路を設定する為、6ビットの2進フィ
ールドを伴う命令「S/Rマスクを・・・に設定」を使
う。前に述べた様に、このマスクは事実上6つのアンド
回路AO乃至A5に印加される。この実施例では、6ビ
ットの2進フィールドが次の様に用いられる。1番左側
のビットが糠mAを介してアンド回路A4に供給され、
2番目のビットが線m鰍こ印加され、3番目のビットは
線mC、4番目のビットは線mD、5番目のビットは緑
m虹、6番目のビットは線mfに印加される。 この為、6Aと記した命令群について説明すると、その
中の4番目の命令はこういうマスク命令であり、特定さ
れたマスクは011000である。この結果線mB及び
mCが出力を持ち、それらが、S/Rクロック・パルス
が発生した時、それを線B及びCを介してKIレジス夕
22及び旧レジスタ12に印加させる。このマイクロ命
令並びに直ぐ前に述べたマイクロ命令の効果として、こ
の後の各々のS/Rクロック・パルスが1バイトをKI
レジスタから旧レジスタヘシフトさせる。この様な8個
のパルスにより、連鎖の為、旧レジスタがKIに適正に
初期設定されることは前に述べた通りである。マイクロ
プログラム順序リスト内に頻繁に現われる他の2つの操
作は、命令「IMPX線・・・アドレス」及び「IMP
X試験」である。 後の方の命令は常に2つの文「IFI…」及び「FO」
を伴う。前に述べた様に、この試験は装置内のブランチ
動作を左右する。入力マルチプレクサ即ちIMPXは1
2個の入力をとることが出釆、これらは本質的に試験し
なければならない全てのブランチ状態を表わす。更にこ
のマルチプレクサ力稀嫁34の1つの出力を持ち、これ
が最後にアドレスされた入力線からゲートされる。この
線に1又は0のいずれが現われるかに応じて、ブランチ
をとるか、或いは次の順序を続けるか、或いはその代り
に2つのブランチの内の一方をとる。即ち、例えばマイ
クロプログラム順序リストを参照して、命令群5を見る
と、最初の命令は「IMPX線7アドレス」と記されて
いる。こ)で線7は特定の動作順序で連鎖があるかない
かを示す為に外部からセットされる線である。この結果
、IMPXがこの特定線を線34にゲートする。この線
に1が現われると、2番目の命令「IMPX試験Jを実
行する時、マイクロプログラムが3番目の命令「1なら
7Aへ行け」に示される様に、群7Aの1番目の命令に
ブランチする。この群の4番目の命令「0なら継続せよ
」は、0が現われ)ば、マイクロプログラムが次の命令
、即ち6Aと託された群の1番目の命令へ続けられるこ
とを意味する。こういう命令の対がマイクロプログラム
順序全体にわたって何回も繰返される。下記のマイクロ
プログラム順序リストは、第IA図乃至第ID図のフロ
ーチャートのボックス1乃至47によって行なわれる機
能を遂行するのに必要な全ての動作を特定している。 ついでながら述べておくと、こういうボックスは、数多
くのブランチ状態を設けなければならないので、必ずし
も順序通りになっていない。然し、フローチャートの場
合と同じく、そこに特定された動作を行なうのに必要な
全ての命令がこのマイクロプログラム命令のリストに含
まれている。マイクロプログラム順序リスト ‘UENTER ‘2}RESETFOTOO RESETFIT○O RESETF2TOO RESETF3TOO RESETF4TO0 【3}ADDRESSIMPXLINEITESTIM
PXMOGOT○(3) 『ICONTINUE RESETFI ‘410UTPUTBOFSIGNAL‘5}ADDR
ESSIMPXLmE7TESTIMPX『IGOT○
(7A) mOCONTINUE (船)ADDRESSMPX2CABLE3CLEAR
COUNTER46SETU/DLINETOI SETS/RMASKTOOilOOOADDRESS
IMPXLmE9(粥)ENITS/RCLOCKPU
LSEWCREMENTCOUNTER46TESTI
MPX びOGOT○(脂) 『IGOT○(10) (7A)ADDRESSMPX4CABLEOENAB
LEMPX4SETS/RMASKTOIOOOOIS
ET山○AD/EMITmB山○CKLmETOICL
EARCOUNTER46 SETU/○LINETOl ADDRESSIMPXL瓜E9 (7B)EMITS/RCLOCKPUBE…CREM
ENTCOUNTER46TESTIMPX 『OGOT○(7B) 『ICONTINUE DIS曲LE岬X4 ■SET+・T。 汀BLOCKL1NETOISETPROCESS汀B
LOCKLINET。 ・(9A)SETS/RMASKTOOOIOOIAD
DRESSMPX2CABLE2ADDRESSIMP
XLINElO TESTIMPX mOGOT0(班) びICONTINUE SEThOAD/EM1T竹BhOCKLINErOO
SETPROCESSmBLOCKLINETO○GO
TO 00ADDRESSIMPXLWE4TESTIMPX
びIRESETF4GOT○(38) 『OCONTINUE (11)ADDRESSIMmXLINE2TESTI
MPXmOGOT0(10) びICONTINUE RESETF2 (12〇UTPUTB〇RSIGNAL(13)ADD
RESSIMmXLINE6TESTIMPXmOGO
T0(15) mICONTINUE (14A)ADDRESSMPX2CABLE3SET
U/○LINETOISETS/RMASKTOO1l
00OADDRESSIMPXLmE9(1の)EMI
TS/RCLOCKPUBEDVCREMENTCOU
NTER46TESTIMPX 花OGOTO 『ICONTINUE (15)CLEARCOUNTER46 (16)ADDRESSIMPXLINE3TESTI
MPX『IGOT○(28) mOCONTINUE (17)ADDRESSIMPXLINEOTESTI
MPXmOGOT○(16) mICONTINUE RESETFOTO0 (18)ADDRESSIMPXLINE9ADDRE
SSMPXICABLEOSETS/RMASKTOO
OOIOOSETU/DLINETOIEMITS/R
CLOCKPULSE (19)INCREM旧NTC〇UNTER46(20
)TESTIMPX岬000T○(16) 『ICONTINUE (21)ADDRESSIMPXLINE7TESTI
MPXmlのT0(柵 mOCONTINUE (22)ADDRESSIMPXLINE8TESTI
MPX『0のT0(柳 『ICONTINUE (23)ADDRESSMPX4CABLEIENA′
BLEMPX4ADDRESSMPX2CABLE2 SETS/RMASKTOOOIOOOEMITS/R
CLOCKPULSEEMITS/RCLOCKPUL
SE EMITS/RCLOCKPULSE EMITS/RCLOCKPULSE (2必)SETU/DL川ETOI ADDRESSMPX4CABLE2 SETS/RMASKTOOOIIOISETLOAD
/EMITmBLOCKL川ETOIADDRESSI
MPXL州E9 (2蟹)EMITS/RCLOCKPULSE瓜CRE
MENTCOUNTER46TESTIMPX mOGOT0(2の) 『ICONTINUE (2私)SET±ITO中BLOCKLINErOIS
ETPROCESS打BLOCKLINET。 ・ADDRESSIMPXLINEI0(2由)TES
TMPXmOGOTO mICONTINUE (26A)DISABLEMP×4 ADDRESSMPX3CABLEO ADDRESSMPX2CABLE2 SETS/RMASKTOOOIOIISETU/DL
INETOlADDRESSIMPXL瓜E9 (2紐)EMITS/RCLOCKPUBEmCREM
ENTCOUNTER46TESTIMPX びOGOT0(2紐) mICONTINUE (27A)SETU/○L瓜ETOISETS/RMA
SKTOOOOOIOADDRESSIMPXL瓜E9
(27B)EMITOUTPUTDATACPPULS
EEMITSノRCLOCKPULSEDNCREME
NTCOUNTER46 TESTIMPX mOGOT○(27B) mIGOT0(15) RESETF3TOO ADDRESSIMPXLOVElITESTIMPX
岬OGOTOmICONTINUE (29DOUTPUTEORPULSEGOT○(10
)(30)LOADCOPYREG48 (31)ADDRESSIMPXLINE7TESTI
MPX『1伽T0(洲 『OCONTINU (32A)ENABLEMPX4 ADDRESSMPX4CABLEl ADDRESSMPX2CABLE2 SETS/RMASKTOOOIOOOEMITS/R
CLOCKPULSEEMITS/RCLOCKPUL
SE EMITS/RCLOCKPULSE EMITS/RCLOCKPULSE SETS/RMASKTOOOIOOISETレOAO
/EMITmBリOCKLmETOISETU/DLI
NETOl ADDRESSIMPXLmE9 (3波)EMITS/RCLOCKPUBEmCREM
ENTCOUNTER46TESTIMPX 『OGOT○(3が) mICONTINUE DIS船LE船X4 (33A)SET土ITomBLOCKL瓜ETOlA
DDRESSIMPXL瓜ElOSETPROCESS
力BLOCKL1NBT。 ・TESTIMPX びOGOT0(3紙) mICONTINUE SETPRICESS汀BLOCKLmET〇〇(乳い
)ADDRESSMPX2CABLE2SETS/RM
ASKTOOOIOOISETU/DLINETOIC
LEARCOUNTER46 SETLOAD/EMITwBLOCKLWETOOA
DDRESSIMPXLmE9 (3の)EMITS/RCLOCKPUはEWCREM
ENTCOUNTER46TESTIMPX 『0のTO(郷) びICONTINUE (3松)ADDRESSIMPXLINE9のADCO
肌TER46SETS/RMASKTOOOOIOOS
ETU/DLINETO1(38)EMITS/RCL
OCKPUはEWCREMENTCOUNTER46T
ESTIMPX mOGOT0(3班) 『ICONTINUE (36A)ENABLEMPX4 ADDRESSMPX4CABLE2 ADDRESSMPX2CABLEl ADDRESSMPX3CABLEO SETS/RMASKTO0OIII0(3斑)EMI
TS/RCLOCKPUBE川CREMENTCOUN
TER46TESTIMPX mOGOT0(3曲) FICONTINUE (37A)LOADCOUNTER46 SETU/DLINETOO SETS/RMASKTOOOOOIOMPXMII(
37B)OUTPUTDATACPPULSEEMIT
S/RCLOCKPULSEDECREMENTCOU
NTER46TESTIMPXmOGOT○(37B) 『IGOT0(29) (38)OUTPUTEOFPULSE GOT0(2) (39A)ENABLEMP×4 ADDRESSMPX4CABLE3 ADDRESSMPXICABLEI SETLOAD/EMIT打Bh。 CKL的ETOISETU/DLINETOI SETS/RMASKTOOOOIOIADDRESS
IMPXLOVE9(3斑)EMITS/RCLOCK
PUBEDICREMENTCOUNTER46TES
TIMPX mOGOT○(3班) 『ICONTINUE (40A)SET士1T○mBLOCKLWETOIS
ETPROCESSmBLOCKLINETOI(4服
)ADDRESSIMPXLINElOTESTIMP
X『OGOT0(4船) mICONTINUE SETPROCESS中BLOCKLINETO○(4
1)ADDRESSMPX4CABLElADDRES
SMPX2CABLE2SETS/RMASKTOOO
IOOOEMITS/RCLOCKPULSEEMIT
S/RCLOCKPULSE EMITS/RCLOCKPULSE EMITS/RCLOCKPULSE (42A)DISABLEMP×4 SETU/DLINETOl ADDRESSMPX3CABLEl ADDRESSMPX2CABLEO SETS/RMASKTOOOIIIIADDRESS
IMPXL皿E9(4波)EMITS/RCLOCKP
UはEINCREMENTCOUNTER46TEST
IMPX 餌OGOT0(4$) mIGOT○(27A) (43A)ADDRESSMP×4CABLE3ENA
BLEMPX4SETLOAD/EMIT汀BLOCK
L瓜ETOISETS/RMASKTOOOOIOIS
ETU/DLINETOlADDRESSIMPXLm
E9 (4班)EMITS/RCLOCKPULSEOICR
EMENTCOUNTER46TESTIMPX『OG
OT0(4$) 『ICONTINUE (4幻ADDRESSIM円XLINE8TESTIM
PXmOGOT○(46) mICONTINUE (4払)SET士1TO灯BLOCKLNETOI(4
$)SETPROCESSmBLOCKLINETOI
ADDRESSIMPXLONEI0 (4に)TESTIMPX びOGOT○(4$) mICONTINUE SETPROCESS打BLOCKL1NET。 ○GOT0(47A) (4句SET士・T。 汀BLOCKLmETOOGOT0(4粥) (47A)SETLOAD/EMIT打BLOCKLW
ETOODIS船LE岬X4 ADDRESSMPX3CABLEO SETU/○LINETOI SETS/RMASKTOOOOOIIADDRESS
IMPXLmE9(47B)EMITSノRCLOCK
PUはEDリCREMENTCOUNTER46TES
TIMPX 『OGOT○(47B) ぽIGOT○(27A) 第3A図乃至第3C図のハードウェアの実施例について
上に全般的に説明したこと)今述べたマイクロプログラ
ム順序リストから、当業者であればこの発明を実施出来
る位に、この発明の操作が詳しく判ると思われる。 従って、以下説明するのは、マイクロプログラムの一部
分を適切な場合は第3A図乃至第3C図と結びつけて、
文章の形で説明し直すものである。 第IA図乃至第ID図のフローチャートを包括的に説明
すれば膨大なものになるから、以下の説明では、主に各
々のマイクロプログラム動作で何が行なわれるかを述べ
、時たまそれとフローチヤ−トに示す一層大がかりな動
作との関係を説明する。マイクロプログラム順序の番号
を大体フローチャートのボックスと対応する様にし、若
干の違いがあっても、それは主に便宜上又は場所を節約
する為であるから、フローチャートと以下の説明との間
の対応関係はかなり直接的であると考えられる。最初に
装置に実際に送込むことから説明を始めるとして、ブロ
ック1乃至11を簡単に説明する。 工程1は単に装置の入口であり、「オン・スィッチ」を
オンに転ずることに相当する。工程2で、5個のフラグ
FO乃至F4が全部0にリセットされる。装置が工程3
へ続き、そこで最初の命令によって、MPX線1がアド
レスされ、これがFIの状態を照会する。この線が0で
あれば、装置は本質的に待ちループにあり、工程3の最
初の命令へ戻り、ファイルの初めを表わす1の値にぶつ
かるまで、IMPXの線1を引続いて試験する。そうな
った時、装置が動作を続け、FIにリセット・パルスを
印加して、それを0にリセットする。次に装置は工程4
へ進み、そこで装置の出力にBOF信号が発生される。
装置は工程5へ続き、そこで1番目の命令がIMPXの
線7をアドレスする。次の命令がこの線を試験し、それ
が1にセットされていて、連鎖なしを表わす場合、装置
は工程7Aへブランチする。そうでなければ、工程6A
へ続く。工程6Aの1番目の命令が、M円X2に、その
入力のケーブル3からその出力へ至る通路を設定させる
。次の命令が計数器46を全部0に破算する。その次の
命令が計数器46に対するU/D線を1にセットし、こ
れによって計数器は線CPIを介してクロック・パルス
を受取った時には、何時でも増数される。次の命令がS
/Rマスクを011000にセットする。即ちA=D;
E=F=0、B=C=1。これによってシフト・レジス
タ・クロツク・マスク及び回路AO乃至A5が適当にセ
ットされ、この為KIレジスタ22(線Bを介して)及
び旧レジスタ12(線Cを介して)だけが適正なシフト
・パルスを受取る。次の命令がIMPXの線9を監視の
為にアドレスする。工程6Bは実際に菱入動作を行ない
、その1番目の命令がS/Rクロック・パルスを出す様
にし、これが前に述べた様に2つのシフト・レジスタだ
けに供給される。 次に計数器46が増数され、その後、IMPXが試験さ
れる。勿論、工程6Aの最後の命令がIMPXの線9を
アドレスする。第3B図について説明すると、線9は計
数器46からのr計数器桁上げ」であり、8回のシフト
が行なわれた時を示す為にこれが使われる。つまり、K
Iレジスタの内容が旧レジスタに完全に菱入されたこと
を示す。従って、IMPXに対する線9がまだ0であっ
て、シフトの回数が8回より少ないことを意味する場合
、装置は工程6Bへ戻り、もう1回シフト・サイクルを
行なう。この線が1にセットされていて、シフト動作及
び装入が完了したことを示すまで、このループ動作が続
けうれ、その後装置は工程10へ進む。ついでに云うと
「工程10に達する道は他にも沢山あり、それらはフロ
ーチャートから明らかであるので、こ)では繰返して説
明しない。工程10で、1番目の命令がMPXの線4を
アドレスする。次の命令がこの線を照会する。それが1
にセットされていて、ファイルの終りであることを表わ
す場合、F4が0にリセットされ、順序は工程38へ進
む。照会された線が0にセットされていると、装置は工
程11へ続く。工程11では、IMPXの線2が試験さ
れ、これはフローチャート及びハ−ドウェアの図面から
明らかな様に、記録の初めを試験する。この線が0にセ
ットされていると、装置は工程10へ戻り、逆に1にセ
ットされていると、装置はF2をリセットし、ブロック
12へ続く。これで工程1乃至11の初期設定動作が本
質的に完了する。次に完全なデータ・ブロックを暗合化
する順序を説明する。 これがブロック21乃至27に示されている。説明の便
宜上、暗号文の連鎖を利用していて、動作は暗合化であ
り、装置が工程21から直接的に22へ進み、その後工
程23という様に工程27まで進むと仮定する。工程2
1でIMPXの線7がアドレスされる。 この線の内容が次の命令で試験され、1(連鎖なし)で
あれば、装置は工程43Aにブランチし、そうでなけれ
ば工程22へ続く。これがこ)で仮定した場合である。
工程22の1番目の命令がIMPXの線8をアドレスす
る。次の工程がこの線の内容を試験し、0(復号)であ
れば、装置は工程39Aへブランチし、1(暗合化)で
あれば、工程23へ続く。工程23の1番目の命令がM
PX4のケーブル1をアドレスする。次の命令がMPX
4を出力ケーブルに接続する。次の命令がMPX2によ
ってその入力のケーブル2をアドレスする。云い換えれ
ば、ケーブル2を出力に接続する。次の命令がS/Rマ
スクを001000に設定する。その次の4つの命令が
、4個のクロツク・パルスを線Cを介して旧レジスタに
印加する。事実上、これによって、前に「順繰り回し一
操作について述べた様に、旧レジスタの内容が4バイト
だけ4個の位置にわたって順ぐりに回される。この後装
置は工程24Aに進み、そこで1番目の命令がU/D線
を1にセットする。次の命令がM円X4に対する入力の
ケーブル2をその出力ケーブルに接続する。次の命令が
S/Rマスクを001101にセットする(S/Rクロ
ック線をC,○,Fに接続する)。次の命令が汀ブロッ
ク菱入/放出線を1にセットし、これによってリブロッ
ク1/0レジスタ50が、適正なクロツク・パルスを受
取った時に、データを受入れる。次の命令がIMPXの
線9(計数器桁上げ)をアドレスする。次に装置は工程
248に進み、そこで1番目の命令がS/Rクロツク・
パルスを出させる。MmX2,MPX4及びS/Rマス
クの設定により、入力レジスタのバイトと旧レジス夕の
バイトの排他的オアが竹ブロック1/0レジスタに入る
と共に3つのレジスタ全部がシフトする。計数器46が
1だけ増数され、IMPXが試験される。この試験が0
であれば、装置は工程24Bの1番目の命令に戻り、1
であれば工程25Aへ続く。この点で、mフロツク1/
0レジスタが入力レジスタ及び旧レジスタの排他的オア
を持っている。工程25Aの1番目の命令がmブロック
±1線を1にセットし、暗合化動作がそこで行なわれる
ことを表わす。次の命令が「けブロック処理」信号を出
させ、これによってリブロック暗合化装置でブロック暗
合化膿序が行なわれる。次の命令がIMPXの線10を
照会し、これによって事実上、暗合化過程が完了したか
どうかが判断される。完了していなければ、装置は線1
0が1に変わるまで、待ちループ25Bにとゞまり、線
10が1に変わると、工程26Aへ続く。工程26Aの
1番目の命令がMPX4をその出力ケーブルから切離す
。次の命令が入力ケーブル0をその出力ケーブルのMP
X3に接続する。次の命令がMPX2のケーブル2をそ
の出力ケーブルに接続する。次の命令がS/Rマスクを
00iollに設定し、その次の命令がU/○線を1に
セットし、工程26Aの最後の命令がIMPXの線9を
アドレスする。この順序268により、8回のバイト・
シフト動作が行なわれるが、これはフローチャートのブ
ロック26に示した様に、データ・レジスタの菱入を行
なう為に逐次的になされなければならない。工程26B
の1番目の命令がS/Rク。ツク・パルスを出し、計数
器46が増数される。IMPXが試験され、0であれば
、268が繰返されるが、1であれば、8回のシフトが
行なわれたことであり、装直は工程27Aへ進むことが
出釆る。この結果、竹ブロック1/0レジスタが旧レジ
スタ及び出力レジスタの両方に謙込まれる。工程27A
の1番目の命令がU/D線を1にセットする。 次の命令がS/Rマスクを000010に設定する。次
の命令がIMPXの線9をアドレスする。この後、装置
は工程27Bへ進み、そこで1番目の命令が装置に出力
復号器40の出力フラグ線から出力データ・クロツク・
パルスを出させる。次の命令がS/Rクロツク・パルス
を発生させ、これがシフト・レジスタ・マスクを介して
出力レジスタ14に印加され、その中の次のデータ・バ
イトをこのレジスタの出力のデータ線13に出る様にす
る。次の工程が計数器46を1だけ増数し、IMPXが
試験される。IMPXの線9に対するこの試験も、8バ
イトが出力レジスタからシフトして出たことを判断する
為である。その時まで、この線は0にセットされており
、装置は工程27Bへ戻る。この線が1になるまでこの
状態が続く。1になると、装置が工程15へ進む。 工程21乃至27について上に述べたことを、工程1乃
至11について述べた所を併せて考えれば、マイクロプ
ログラム願序の制御による装置の動作が明瞭に判る。他
の全ての動作の順序は略同じ様に行なわれ、特定の動作
順序は、マイクロプログラム順序リスト中の番号をつけ
られた動作を順次追えば、容易に判る。この発明の暗合
化装置の作用について上に詳しく説明した所から、こ)
に示したハードウェアが暗合化及び復号の両方に対し、
制御の変更を最小限に抑え、事実上ハードウェアの変更
を伴わずに、同じハードウェアを利用出来る様な形で、
暗号文を連鎖する考えを実施するものであることは明ら
かであろう。 こ)に述べた実施例はビット並列、バイト直列の機械の
場合であるが、当業者であれば、他のデータ・フオーマ
ツト、例えばビット直列或いはブロック全体が並列とい
う形のデー外こ対処する様に機械を構成し得ることは容
易に明らかであろう。更に、前に述べた様に、それまで
の暗号文と新しいデータ・ブロックとの排他的オア形の
変換又は組合せの他に、簡単な加算又は制御された循環
桁送りの様な他の変換も利用することが出来る。更に、
直ぐ前の暗号文以外のデータ・ブロックを連鎖過程に利
用することが出来る。勿論、数学的な可逆性、即ち逆の
操作によってもとのデータを容易に再生することが出来
るという拘束はあるが、暗号文の連鎖の他に「平明文の
連鎖又はキーの連鎖も利用することが出来る。
第IA図乃至第ID図はこの発現の暗合化方法の動作順
序を示す高レベルのフローチャート、第2図はこの発明
の方法に用いるデータ母型を示す略図、第3図は第3A
図乃至第3C図で構成され、第3A図乃至第3C図は併
せてこの発明の方法に用いる暗合化装置の好ましい実施
例の機能ブロック図兼論理系統図である。 FIG.IA FIG.18 FIG.IC FIG.IC‐l FIG.IC−2 FIG.{0 FIG.2 FIG.3A FIG.3B FIG.3 FIG.3C
序を示す高レベルのフローチャート、第2図はこの発明
の方法に用いるデータ母型を示す略図、第3図は第3A
図乃至第3C図で構成され、第3A図乃至第3C図は併
せてこの発明の方法に用いる暗合化装置の好ましい実施
例の機能ブロック図兼論理系統図である。 FIG.IA FIG.18 FIG.IC FIG.IC‐l FIG.IC−2 FIG.{0 FIG.2 FIG.3A FIG.3B FIG.3 FIG.3C
Claims (1)
- 1 キーを用いてメツセージをブロツク単位で暗号化す
るブロツク単位暗号化装置にして、 暗号化すべき入力
ブロツクを受取る入力手段と、 前の暗号化過程におけ
るデータブロツクを保持する保持手段と、 数学的に可
逆な関数に従つて前記入力ブロツクおよび前記データブ
ロツクを組合せる論理手段と、 前記論理手段の出力を
暗号化する手段と、 を設けたことを特徴とするブロツ
ク単位暗号化装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US680405 | 1976-04-26 | ||
US05/680,405 US4078152A (en) | 1976-04-26 | 1976-04-26 | Block-cipher cryptographic system with chaining |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS52130505A JPS52130505A (en) | 1977-11-01 |
JPS6016779B2 true JPS6016779B2 (ja) | 1985-04-27 |
Family
ID=24730981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP52047515A Expired JPS6016779B2 (ja) | 1976-04-26 | 1977-04-26 | ブロツク単位暗号化装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US4078152A (ja) |
JP (1) | JPS6016779B2 (ja) |
GB (1) | GB1526652A (ja) |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2658065A1 (de) * | 1976-12-22 | 1978-07-06 | Ibm Deutschland | Maschinelles chiffrieren und dechiffrieren |
US4408203A (en) * | 1978-01-09 | 1983-10-04 | Mastercard International, Inc. | Security system for electronic funds transfer system |
US4259720A (en) * | 1978-01-09 | 1981-03-31 | Interbank Card Association | Security system for electronic funds transfer system |
US4249180A (en) * | 1978-09-20 | 1981-02-03 | Northern Telecom Limited | Past dependent microcomputer cipher apparatus |
US4229818A (en) * | 1978-12-29 | 1980-10-21 | International Business Machines Corporation | Method and apparatus for enciphering blocks which succeed short blocks in a key-controlled block-cipher cryptographic system |
US4304961A (en) * | 1980-03-03 | 1981-12-08 | Burroughs Corporation | Authenticator code generator |
US4658292A (en) * | 1982-04-30 | 1987-04-14 | Nec Corporation | Enciphering key distribution system for subscription TV broadcast or catv system |
US4661980A (en) * | 1982-06-25 | 1987-04-28 | The United States Of America As Represented By The Secretary Of The Navy | Intercept resistant data transmission system |
US4757533A (en) * | 1985-09-11 | 1988-07-12 | Computer Security Corporation | Security system for microcomputers |
US4731843A (en) * | 1985-12-30 | 1988-03-15 | Paradyne Corporation | Method and device of increasing the execution speed of cipher feedback mode of the DES by an arbitrary multiplier |
JP2871690B2 (ja) * | 1988-04-28 | 1999-03-17 | 日本電気株式会社 | 符号化装置及び復号化装置 |
US5003596A (en) * | 1989-08-17 | 1991-03-26 | Cryptech, Inc. | Method of cryptographically transforming electronic digital data from one form to another |
US5647001A (en) * | 1989-10-04 | 1997-07-08 | Litton Systems, Inc. | Nonlinear dynamic substitution devices and methods for block substitutions employing coset decompositions and direct geometric generation |
JP3143108B2 (ja) * | 1990-03-13 | 2001-03-07 | 株式会社日立製作所 | ファイル暗号化方法およびファイル暗号システム |
US6175312B1 (en) | 1990-05-29 | 2001-01-16 | Microchip Technology Incorporated | Encoder and decoder microchips and remote control devices for secure unidirectional communication |
US5159634A (en) * | 1991-09-13 | 1992-10-27 | At&T Bell Laboratories | Cryptosystem for cellular telephony |
EP0559975B1 (en) * | 1992-03-10 | 1999-06-16 | Hewlett-Packard Limited | Data storage apparatus |
EP0582122B1 (en) * | 1992-07-21 | 1999-03-24 | Matsushita Electric Industrial Co., Ltd. | Scramble apparatus and descramble apparatus |
JP3053527B2 (ja) * | 1993-07-30 | 2000-06-19 | インターナショナル・ビジネス・マシーンズ・コーポレイション | パスワードを有効化する方法及び装置、パスワードを生成し且つ予備的に有効化する方法及び装置、認証コードを使用して資源のアクセスを制御する方法及び装置 |
US5978481A (en) * | 1994-08-16 | 1999-11-02 | Intel Corporation | Modem compatible method and apparatus for encrypting data that is transparent to software applications |
US6690796B1 (en) * | 1995-05-17 | 2004-02-10 | The Chamberlain Group, Inc. | Rolling code security system |
BR9606663A (pt) | 1995-05-17 | 1997-09-16 | Chamberlain Group Inc | Transmissor para enviar um sinal criptografado para controlar um atuador receptor para receber um sinal criptografado de um transmissor e para gerar um sinal de atuação e receptor para receber um sinal de frequência de rádio criptografado de um transmissor e para gerar um sinal de atuação |
US6980655B2 (en) * | 2000-01-21 | 2005-12-27 | The Chamberlain Group, Inc. | Rolling code security system |
US7492905B2 (en) | 1995-05-17 | 2009-02-17 | The Chamberlain Group, Inc. | Rolling code security system |
US5671283A (en) * | 1995-06-08 | 1997-09-23 | Wave Systems Corp. | Secure communication system with cross linked cryptographic codes |
US5664016A (en) * | 1995-06-27 | 1997-09-02 | Northern Telecom Limited | Method of building fast MACS from hash functions |
US5727062A (en) * | 1995-07-06 | 1998-03-10 | Ritter; Terry F. | Variable size block ciphers |
US5724428A (en) * | 1995-11-01 | 1998-03-03 | Rsa Data Security, Inc. | Block encryption algorithm with data-dependent rotations |
US5684876A (en) * | 1995-11-15 | 1997-11-04 | Scientific-Atlanta, Inc. | Apparatus and method for cipher stealing when encrypting MPEG transport packets |
US5838794A (en) * | 1996-01-11 | 1998-11-17 | Teledyne Electronic Technologies | Method and apparatus for inter-round mixing in iterated block substitution systems |
US6459792B2 (en) * | 1997-04-23 | 2002-10-01 | Matsushita Electric Industrial Co., Ltd. | Block cipher using key data merged with an intermediate block generated from a previous block |
DE19724072C2 (de) * | 1997-06-07 | 1999-04-01 | Deutsche Telekom Ag | Vorrichtung zur Durchführung eines Blockchiffrierverfahrens |
US6182216B1 (en) | 1997-09-17 | 2001-01-30 | Frank C. Luyster | Block cipher method |
US6038317A (en) * | 1997-12-24 | 2000-03-14 | Magliveras; Spyros S. | Secret key cryptosystem and method utilizing factorizations of permutation groups of arbitrary order 2l |
US6249582B1 (en) | 1997-12-31 | 2001-06-19 | Transcrypt International, Inc. | Apparatus for and method of overhead reduction in a block cipher |
US6215876B1 (en) | 1997-12-31 | 2001-04-10 | Transcrypt International, Inc. | Apparatus for and method of detecting initialization vector errors and maintaining cryptographic synchronization without substantial increase in overhead |
US6493449B2 (en) | 1998-02-26 | 2002-12-10 | Arithmetica, Inc. | Method and apparatus for cryptographically secure algebraic key establishment protocols based on monoids |
US6269163B1 (en) | 1998-06-15 | 2001-07-31 | Rsa Security Inc. | Enhanced block ciphers with data-dependent rotations |
US6539092B1 (en) * | 1998-07-02 | 2003-03-25 | Cryptography Research, Inc. | Leak-resistant cryptographic indexed key update |
JP4763866B2 (ja) * | 1998-10-15 | 2011-08-31 | インターシア ソフトウェア エルエルシー | 2重再暗号化によりデジタルデータを保護する方法及び装置 |
MY131509A (en) * | 1999-03-15 | 2007-08-30 | Sony Corp | Data processing method, apparatus and system for encrypted- data transfer |
US7277543B1 (en) * | 2000-11-14 | 2007-10-02 | Honeywell International Inc. | Cryptographic combiner using two sequential non-associative operations |
US7136484B1 (en) * | 2001-10-01 | 2006-11-14 | Silicon Image, Inc. | Cryptosystems using commuting pairs in a monoid |
US7260217B1 (en) * | 2002-03-01 | 2007-08-21 | Cavium Networks, Inc. | Speculative execution for data ciphering operations |
US7376235B2 (en) * | 2002-04-30 | 2008-05-20 | Microsoft Corporation | Methods and systems for frustrating statistical attacks by injecting pseudo data into a data system |
JP4622222B2 (ja) * | 2003-09-30 | 2011-02-02 | ソニー株式会社 | 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム |
CN101019367A (zh) * | 2004-09-14 | 2007-08-15 | P·普拉拉德·辛加纳马拉 | 用于计算变换的方法和系统 |
WO2006048704A1 (en) * | 2004-11-05 | 2006-05-11 | Synaptic Laboratories Limited | Methods of encoding and decoding data |
US9148409B2 (en) | 2005-06-30 | 2015-09-29 | The Chamberlain Group, Inc. | Method and apparatus to facilitate message transmission and reception using different transmission characteristics |
US8422667B2 (en) | 2005-01-27 | 2013-04-16 | The Chamberlain Group, Inc. | Method and apparatus to facilitate transmission of an encrypted rolling code |
JP4667108B2 (ja) * | 2005-04-11 | 2011-04-06 | パナソニック株式会社 | データ処理装置 |
US8687800B2 (en) * | 2006-08-15 | 2014-04-01 | Alcatel Lucent | Encryption method for message authentication |
FI20070029L (fi) * | 2007-01-12 | 2008-07-13 | Valtion Teknillinen | Anonyymit tietoliikenteen mittausdataan liittyvät käyttäjätunnistukset |
FR2966953B1 (fr) * | 2010-11-02 | 2015-08-28 | St Microelectronics Rousset | Procede de contremesure cryptographique par derivation d'une donnee secrete |
US9008308B2 (en) * | 2012-02-08 | 2015-04-14 | Vixs Systems, Inc | Container agnostic decryption device and methods for use therewith |
US10652319B2 (en) | 2015-12-16 | 2020-05-12 | Dell Products L.P. | Method and system for forming compute clusters using block chains |
CA3002235C (en) | 2015-12-22 | 2021-01-26 | Thomson Reuters Global Resources Unlimited Company | Methods and systems for identity creation, verification and management |
US10652743B2 (en) | 2017-12-21 | 2020-05-12 | The Chamberlain Group, Inc. | Security system for a moveable barrier operator |
US11074773B1 (en) | 2018-06-27 | 2021-07-27 | The Chamberlain Group, Inc. | Network-based control of movable barrier operators for autonomous vehicles |
CA3107457A1 (en) | 2018-08-01 | 2020-02-06 | The Chamberlain Group, Inc. | Movable barrier operator and transmitter pairing over a network |
US10997810B2 (en) | 2019-05-16 | 2021-05-04 | The Chamberlain Group, Inc. | In-vehicle transmitter training |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3657699A (en) * | 1970-06-30 | 1972-04-18 | Ibm | Multipath encoder-decoder arrangement |
CH530742A (de) * | 1970-08-24 | 1972-11-15 | Ciba Geigy Ag | Vorrichtung zur Erzeugung von Schlüsselimpulsfolgen |
US3798360A (en) * | 1971-06-30 | 1974-03-19 | Ibm | Step code ciphering system |
US3798359A (en) * | 1971-06-30 | 1974-03-19 | Ibm | Block cipher cryptographic system |
US3911216A (en) * | 1973-12-17 | 1975-10-07 | Honeywell Inf Systems | Nonlinear code generator and decoder for transmitting data securely |
-
1976
- 1976-04-26 US US05/680,405 patent/US4078152A/en not_active Expired - Lifetime
-
1977
- 1977-04-20 GB GB16347/77A patent/GB1526652A/en not_active Expired
- 1977-04-26 JP JP52047515A patent/JPS6016779B2/ja not_active Expired
Also Published As
Publication number | Publication date |
---|---|
GB1526652A (en) | 1978-09-27 |
US4078152A (en) | 1978-03-07 |
JPS52130505A (en) | 1977-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6016779B2 (ja) | ブロツク単位暗号化装置 | |
EP0002388B1 (en) | Data processing terminal | |
EP0002579B1 (en) | A method of creating a secure data file | |
US4238853A (en) | Cryptographic communication security for single domain networks | |
US4227253A (en) | Cryptographic communication security for multiple domain networks | |
US4168396A (en) | Microprocessor for executing enciphered programs | |
US4193131A (en) | Cryptographic verification of operational keys used in communication networks | |
US4316055A (en) | Stream/block cipher crytographic system | |
EP0002390B1 (en) | Method for cryptographic file security in multiple domain data processing systems | |
US5008935A (en) | Efficient method for encrypting superblocks of data | |
US4249180A (en) | Past dependent microcomputer cipher apparatus | |
US3796830A (en) | Recirculating block cipher cryptographic system | |
US4465901A (en) | Crypto microprocessor that executes enciphered programs | |
JPS5917834B2 (ja) | 一連のデ−タ・ビットを暗号化する暗号器 | |
US4195196A (en) | Variant key matrix cipher system | |
JPS6016670B2 (ja) | 端末ユ−ザの身元を認証するためのシステム | |
USRE30957E (en) | Variant key matrix cipher system | |
JPH0793148A (ja) | ソフトウエア配布システム | |
CN109564553A (zh) | 多阶段存储器完整性方法和装置 | |
CA2593441A1 (en) | Method and system for microprocessor data security | |
JPH08328962A (ja) | 端末機と、当該端末機に接続されるメモリカードからなるシステム | |
US7681046B1 (en) | System with secure cryptographic capabilities using a hardware specific digital secret | |
JPS6333749B2 (ja) | ||
EP0008033B1 (en) | Microprocessor for executing enciphered programs | |
TW201918923A (zh) | 安全邏輯系統及操作安全邏輯系統的方法 |