JPS60121486A - 再帰的キー目録暗号化装置 - Google Patents

再帰的キー目録暗号化装置

Info

Publication number
JPS60121486A
JPS60121486A JP59223648A JP22364884A JPS60121486A JP S60121486 A JPS60121486 A JP S60121486A JP 59223648 A JP59223648 A JP 59223648A JP 22364884 A JP22364884 A JP 22364884A JP S60121486 A JPS60121486 A JP S60121486A
Authority
JP
Japan
Prior art keywords
exclusive
counter
output
memory
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP59223648A
Other languages
English (en)
Other versions
JPH0723984B2 (ja
Inventor
ブルース イー バスビー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of JPS60121486A publication Critical patent/JPS60121486A/ja
Publication of JPH0723984B2 publication Critical patent/JPH0723984B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Control Of Motors That Do Not Use Commutators (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、暗号化装置、特にデジタル・ワードを暗号化
する装置に関するものである。
〔従来の技術及び問題点〕 ′ コンピヱータのソフトウェアを暗号化する何らかのシス
テム又は装置が欲しいことがよくある。
特に、ソフトウェアを占有する人間によりそのソフトウ
ェアが変えられるのを防止したい場合に、それが望まれ
る。−例として、教育用コンピュータ・プログラムを用
いる学生があげられる。そのプログラムには彼の点数が
コンピュータ・メモリ・ディスクに記録されており、そ
れを学生が占有する可能性がある。従来の技術で上述の
ような装置を作ろうとすると、例えばIBM/NBS 
DES型シクシステムうに比較的多量のコードとデータ
を必要とする難点がある。
また、暗号化は、各使用者の電子的署名を形成する性質
のものであることが望ましい。そうすると、暗号文(テ
キスト)の呈示者が占有を認められたものかどうかを決
定してその人間にそのテキストの解読をさせることがで
きる。暗号化装置は、その装置の使用者間でのデータの
転移を考慮しなければならない。
〔発明の目的〕
本発明の1つの目的は、帰納的キー目録(recurs
 −1°Q: key 5chedule )を発生す
る暗1t[ff1l提供することである。
本発明の他の目的は、ソフトウェアを余り必要としない
暗号化装置を提供することである。
本発明の更に他の目的は、暗号データのファイルをもつ
人間によって変更されるのを防止する暗号化装置を提供
することである。
本発明の別の目的は、データ作成者のデジタル自署をチ
ェックしてその暗号データの所有者が資格のあるもので
あるかどうかを決定できる暗号化装置を提供することで
ある。
〔発明の概要〕
上述及び他の目的を達成するため、デジタル形式の原文
を暗号化する装置の本発明においては、まず使用者によ
り示されるコード・ワードから作用(working 
)暗号化キー目録、すなわち最初のキー目録を発生した
後に原文を暗号化する手段と、非直線的暗号化手段を設
ける。こうすると、作用暗号化キー目録を記憶又は送信
する必要がなく暗号文のみを記憶すればよいことになる
。また、これにより、暗号化ソフトウェア・プログラム
の大きさを減らしその実行速度を上げることができる。
本発明装置は、ランダムアクセス(アドレス可能)メモ
リの形のマスター・テーブル及びワーキング・テーブル
と、異なる計数限度をもつ複数のリセット可能カウンタ
と、2人力及び1出力をもつ排他的オア論理手段と、こ
の排他的オア論理手段の出力が供給され、入来デジタル
・ワードの各ビット位置を異なるビット位置にシフトし
、その結果を出力する第1の非対称ビットかきまぜ手段
と、予め定めたアドレス可能ワードを記憶し、上記非対
称ビットかきまぜ手段の出力より供給される入来デジタ
ル・ワードを所定のビット群に分割し、それらを記憶さ
れたワードのアドレスとしてそれらを出力するのに用い
る第1のルックアップ・テーブル手段とを有する。本発
明装置は、更に、マスター・テーブル及びワーキング・
テーブル・メモリ、排他的オア論理手段、カウンタ、並
びにルックアップ・テーブル手段に接続され、これらの
装置に次のような一連のステップを行わせる制御手段を
有する。
まず、ワーキング・テーブル・メモリに最初の所定キー
目録データを入れた後、所定のビット群より成るコード
・ワードを排他的オア論理手段により排他的オア処理す
るが、その際カウンタの1つにおけるカウントを参照し
て選択したマスター・テーブル・メモリにおけるエント
リ(入力データ)を用いる。次に、そのカウンタのカウ
ントを歩道(増加)させる。排他的オア論理手段の出力
は、第1の非対称ビットかきまぜ手段に入力し、入来す
る排他的オア処理(以下「排他オア」と略す。)された
ワードの各ビット位置を異なるビット位置にシフトし、
その出力を第1のルックアップ・テーブル手段に供給す
る。そこで、それらを2つの所定ビット群に分割して、
ルックアップ・テーブルにおける記憶ワードのアドレス
として用い、それらのアドレスに記憶されたワードを出
力させる。
ルックアップ・テーブル手段からのワード出力は、それ
から排他的オア論理手段の入力に帰還させ、この全過程
を排他オア処理の間に複数回にわたり毎回異なる1つの
カウンタを用いて繰返す。
最後に、ルックアップ・テーブル手段の出力をマスター
・テーブル・メモリへ順次大れて記憶させる。このよう
にして、この処理過程を全コード・ワードの処理が終わ
るまで繰返す。
上述の制御過程により、入力コード・ワードに基く新し
い作用キー目録が発生する。その後デジタル原文を暗号
化するために、制御手段は次のような一連のステップを
実行する。まず、マスター・テーブル・メモリの内容な
ワーキング・テーブル・メモリに移す。そして、排他的
オア論理手段に所定のビット群より成る入力原文ワード
を排他オアさせる際に、カウンタの1つにおけるカウン
トを参照して選択したワーキング・テーブル・メモリ手
段におけるエントリを用いる。次に、制御手段はそのカ
ウンタのカウントを歩進させる。再び、排他オアされた
ワードのビット位置をかきまぜてルックアップ・テーブ
ル手段に送り、上記の過程と同様に、ルックアップ・テ
ーブル手段の出力を排他的オア論理手段に入力ワードと
して再供給する。
この過程を、複数回にわたり毎回異なる1つのカウンタ
を用いながら一定の順序で繰返し、最後に、第1ルツク
アツプ・テーブル手段からの結果を暗号化されたテキス
ト・ワードとして出方する。
こうして、コード・ワードから発生した作用キー目録を
用い、すなわち帰納的キー目録を発生して、原文を暗号
化する。その解読は、コード・ワード。
原(最初の)キー・テーブルをもち、非対称ビットかき
まぜ器及びルックアップ・テーブル手段にアクセスしう
る者によってのみ可能である。
解読は最初同じ線に沿って進行するが、原コード・ワー
ドを用いて作用キー目録を発生した後は、手順はほぼ逆
になる。入来暗号文は、制御手段により第2のルックア
ップ・テーブル手段に供給する。第2ルツクアツプ・テ
ーブル手段は、入力について第1ルツクアツプ・テーブ
ル手段の逆を行う。この逆ルックアップ・テーブル手段
の出方は、第2の非対称ビットかきまぜ手段に供給され
る。
第2非対称ビツトかきまぜ手段は、第1非対称ビツトか
きまぜ手段と同量を反対方向にかきまぜてビットを原位
置に戻す(復元する)。この第2非対称ビツトかきまぜ
手段の出力は、第2の排他的オア論理手段により、カウ
ンタの1つにおけるカウントにより選択されたワーキン
グ・テーブル・メモリにおけるエントリと共に排他オア
される。
そのカウンタはその後制御手段により歩進され、第2排
他的オア論理手段の出力は第2ルツクアツプ・テーブル
手段へ帰還し、そして、この過程を複数回にわたり毎回
異なる1つのカウンタを用いて繰返す。カウンタを使用
する順序は、原文(テキスト)の暗号化に使用するとき
の反対である。
最後に、第2排他的オア論理手段の出力が明瞭なテキス
ト・ワードとなる。
暗号化過程において更に無作為性を与えるには、各カウ
ンタに共通因子をもたない異なる予め定めた数をカウン
トさせる。その後、各カウンタを制御手段によりリセッ
トする。
最初のマスター・キー目録及びコード・ワードは、どち
らも解読処理を引受ける操作員には知られている。しか
し、暗号化処理を引受ける者には、コード・ワードしか
知られていない。したがって、デコーダ(解読器)にと
って、コード化されたメツセージの呈示者が解読された
メツセージを受けるか又はそれを使用する資格のあるも
のかどうかは、明らかとなる。なぜならば、キー目録及
びコード・ワードは、特定の正白な使用者しか有しない
からである。
本発明の上述及び他の目的、特徴及び利点は、図示の実
施例について以下の詳細な説明により容易に理解できる
であろう。
〔実施例〕
第1図は、本発明装置の暗号化操作を示すブロック図で
ある。同図において、使用者から供給される最初のコー
ド・ワードすなわちキー・ワードα〔は、ステップαa
で最初のキー目録アレーを用いて暗号化される。この最
初のキー目録アレーは、例えば所定の暗号文の受領者か
ら与えられる。暗号化ステップaりにおいて、コード・
ワードは作用(operating or worki
ng )キー目録アレー(14)の発生に用いられる。
明瞭な原文α樽は、ステップ06)で作用キー目録アレ
ーα→を用いて暗号化され、暗号文−が作られる。
第2図は、本発明の暗号化装置の実施例を示すブロック
図である。この基本的暗号化装置は、上記ステップα2
及びαeの両方において使用される。
コード・ワードQO)のような入力バイト(22は、キ
ー目録アレー弼からの選択されたエントリと共に排他的
オア論理手段0!荀により排他オア(XOR)される。
このキー目録は、最初の予め定めたキー目録でも、又は
後述のようなコード・ワードを用いて発生貝だキー目録
でもよい。各入力バイトと共に排他オアされるべきキー
目録アレー06)からの各8ビツト群を選択するのに、
3つのカウンタ(ト)、(至)又は(4Gのうちの1つ
におけるカウントに対応する指示(pointer )
を用いる。
排他オアされた出力は非対称ビットかきまぜ器に供給し
、そこで入来ワードの全ビットを決められた方向に1以
上位置を動かす。例えば、1ビツトだけ右に動かす。
かきまぜられたビット出力は、次いでルックアップ・テ
ーブル手段(至)の入力に供給する。ルックアップ・テ
ーブル手段(至)は、入来ワードを最初(前)と最後(
後)の4ビツト群に分ける。前の4ビツト群は、第1の
ルックアップ・テーブルであるSボックス0つの入力に
供給する。入来ワードは、Sボックス0つに予め定めた
記憶ワードを配置するアドレスとして使用し、記憶ワー
ドは出力ワードの前の4ビツトとしてあとで出力される
。同様に、入来ワードの後の4ビツトは、同じ機能をも
ち出力ワードの後の4ビツトを発生するSボックス(財
)に供給する。ビットかきまぜ器(至)及びルックアッ
プ・テーブル(至)は、非直線的暗号化すなわち分散(
diffusion )処理を行うものである。
排他的オア手段04)、キー目録アレー・メモリQ6)
、非対称ビットかきまぜ器(ハ)、ルックアップ・テー
ブル手段軸及びカウンタ(3fE)、 C(8)、 (
4[)は、すべてこれらに接続されたCPU(42に制
御される。CPU(43がこれらの装置を操作する特別
の方法を第3図を参照して説明する。第3図は、第2図
装置の動作を詳細に示す流れ図である。同図は、CPU
(4Bで実行されるステップのプログラムと、これらの
プログラムされたステップに続<CPUQ2によるこれ
らの装置の操作によって生じる一連の結果とを示してい
る。
第3図において1.CPU(42は、最初のステップ(
44)でカウンタ(至)、弼及び四の終点を定める。こ
れは、各カウンタが自動的にOのような最初の値にリセ
ットされる点である。同図において、カウンタ(至)の
終点は、END POINT(0)と定義され14に等
しくセットされる。カウンタ(至)の終点は、 END
 PO−INT(1)と定義され15に等しくセットさ
れる。カウンタ(40の終点は、END POINT(
2)と定義され13に等しくセットされる。したがって
、例えば、カウンタ(至)はカウント15に達すると自
動的に0にリセットされる。
次のステップ(4eで、 CPU(421は、ワーキン
グ及びマスター・キー・テーブル・メモリの大きさを決
める。本例では、8X32ビツトである。カウンタ06
)、(至)及び顛は、その後ステップ(4槌でOに初期
化される。また、第2図でアレー(ハ)として記号的に
示されたマスター及びワーキング・テーブル・メモリも
、 CPU(43により0に初期化される。ステップ5
Iで、可変整数Mが0にセットされる。Mは、暗号化を
受けつつある入力バイトの列におけるバイトの番号を表
わす。M=Oは、第1バイトのことである。それから、
CPU(6)は、ステップ(5功で、予め定めた最初の
キー目録データをマスター・キー・テーブル・メモリに
入れる。マスター・キー・テーブルの内容は、それから
ステップ64)でワーキング・テーブル・メモリにコピ
ーされる。
ステップ(ト)及び(ト)で、一時に1バイトの入来ワ
ードは、CPU(4Bに送られ可変指示されるものとな
る。すなわち、ステップ槌で、可変ワードWORDは、
ステップ(至)に供給される次の入力バイトINPUT
 BYTEに等しくセットされる。
ステップ−で、3つのカウンタN、 C38)、 Gi
Iのどれが使用中かを示す変数Nが、カウンタ(1)に
対応してOに等しくセットされる。KEY POINT
ERとして指示される変数は、ステップ呻で、カウンタ
(N)のカウントに等しくセットされる。Nがθ値の場
合、カウンタ弼のカウントがKEY POINTERに
なる。Nが1に等しい場合、カウンタ弼のカウントがK
EY POINTERになり、Nが2に等しい場合、カ
ウンターのカウントがKEY POINTERになる。
ステップ(財)で、CPU(4つは、KEY POIN
TERの値により指示されるワーキング・テーブル・ア
レー(ハ)からのエントリと共に論理手段(ハ)により
、可変WORDを排他オア(XOR)させる。したがっ
て、N=Oの場合、カウンタ(至)のカウントにより指
示されるアドレスにあるアレー〇〇の内容が、上述のよ
うに、ステップ(ト)で供給される入力バイトに等しい
可変WORDと共に排他オアされることになる。
ステップ−で、カウンタ(N)のカウントを1つだけ進
める。次のステップ輪で、 CPU(4Bは、カウンタ
(N)のカウントがEND POINT(N)に等しい
かと5かを質問する。答えがイエスであれば、ステップ
Cl0)で、カウンタ(N)のカウントな0に等しくセ
ットする。答えがノーであれば、CPU(421は、ス
テップυaに進み、非対称ビットかきまぜ器(ハ)に排
他オアされたWORDの全ビットを右に1位置だけシフ
トさせる。この処理により得られる8ビツト・ワードは
、ステップσ荀で、ルックアップ・テーブル手段(7)
により前と後の4ビツト群に分けられる。CPU(43
は、ステップffeで、前の4ビツトを用いて対応する
4ビツトをルックアップ・テーブル0渇中に見付け、ス
テップσ槌で、後の4ビツトを用いて対応する4ビツト
をテーブルC34中に見付ける。
ステップfff9の出力は前の4ビツトとして、またス
テップ(?樽の出力は後の4ビツトとして用いられ、ス
テップ−で、 NEWORDとして定義される新しい8
ビツト・ワードが作られる。
ステップ曽で、コンピュータは、Nが2に等しいかどう
かをチェックする。Nが2に等しければ、全3カウンタ
(至)、(至)及び顛がアクセスされたことを示す。ノ
ーであれば、 CPU(ハ)は、直接ステップ岐に進み
NをN+1に等しくセットし、ステップ6トWORD 
ヲNEWORD K等シ<セットする。CPUハ、それ
からステップ6榎に戻り、順に各カウンタ弼。
(至)及び四の内容を用いてステップI4からr83ま
でを繰返し、(ト)に供給される入力バイトを暗号化す
る。
カウンタ顛を使用し終わるとNは2に等しくなり、CP
U(42は、ステップ(財)に進みMが31より大か否
かを判定する。Mが31より大きいことは、コード・ワ
ードの全32バイトが暗号化されたことを示す。Mが3
1より大でなければ、CPU(42は、ステップ(財)
に進み、マスター・テーブル・メモリの第1エントリか
ら始めて各エントリな順次NEWORDで置換える。
その後、 CPU(43&ま、ステップapでMを1だ
け進め、ステップ(財)でMが30より小さいか又は等
しいかを質問する。コード・ワードの全バイトが暗号化
されるまで答えはノーであり、CPUは、ステップ(至
)に戻りステップr5[9のコード・ワードの次のバイ
トを入力させる。CPUは、Mが30より大となる、す
なわちMが31に等しくなるまで、ステップ輸より(財
)までを繰返す。それから、CPU(4Bは、ステップ
(ト)に進みMが31より大か否かを判定する。M=3
1すなわちコード・ワードの最後の8ビツトが暗号化さ
れた時点で、CPU(43&よ、マスター・キー・テー
ブル・メモリの内容をステップ(至)でワーキング・テ
ーブル・メモリにコピーする。それから、CPU(43
は、ステップ[相]に進み今や原文(1alであるIN
PUT BYTEを受入れ続ける。CPU(6)は、同
様にして、ステップ6ト(を用い入力原文の各8ビツト
を順次暗号化する。しかし、ステップ(財)。
a3.$4)及び弼をバイパスし、単にステップ(10
のでNEWORDの各8ビツトを出力し、ステップ(1
02)で原文の終わりが判定され、そしてステップ(1
04)でプログラムは終わる。ここに、暗号化プログラ
ムの大きさが従来技術に比して非常に小さく、実行が非
常に早いことが認められるであろう。
第4図は、本発明装置の解読操作を示すブロック図であ
る。同図において、解読の間、第1図に示したと同じス
テップ(10)、 (12)及びα力は繰返されるが、
暗号文−がステップ(1ので元の明瞭な原文α印に解読
される。作用キー目録アレーα荀は、単にコード・ワー
ド0〔と暗号文の受領者が保持する原キ−目録アレーと
を用いて再発生される。
第5図は、本発明に用いうる解読装置を示すブロック図
である。同図について、第4図のステップ(16′)に
使用される装置を説明する。暗号文の各入力バイトは、
順次前と後の4ビツト群に分割され、別々に逆ルックア
ップ・テーブル手段(106)の入力として供給される
。逆ルックアップ・テーブル手段(106)は、テーブ
ル(108)と(11のより成り、ルックアップ・テー
ブル翰と全く逆の機能を果す。
すなわち、ルックアップ・テーブル(108)及び(1
10)の内容は、単にそれぞれルックアップ・テーブル
04及び(財)の内容の逆である。ルックアップ・テー
ブル(108)及び(110)からの出力は新ワードの
前と後の4ビツトとして供給され、この新ワードは非対
称ビット復元器(112)への入力として供給される。
復元手段(112)は、ビットかきまぜ器(2)で行わ
れた場合に比し全ビットを逆方向に同量だけシフトする
復元器(112)からの出力は、それから、カウンタ顛
のカウントにより選択されるキー目録アレー(ハ)から
のエントリと共に排他的オア論理手段(114)におい
て、排他オアされる。カウンタ顛のカウントは、歩進さ
れる。その結果は入力に帰還され、この過程は順次カウ
ンタ(至)及び(至)について繰返され、8ビツトの明
瞭な原文が作られる。手段(106) )(112) 
、 (114)及びメモリf20並びにカウンタ(至)
〜(4Gは、すべてcpu(a2の制御の下に動作する
。しかし、第5図の装置は、暗号文の解読にのみ使用さ
れ、コード・ワードからの作用キー目録の発生には使用
されない点に注意されたい。これは、第2及び第3図に
ついて上述したと同様にして行われる。
第6図は、第5図装置の動作を示す流れ図である。同図
において、CPU(4aは、解読の間、ステップ(44
)〜−を繰返すことにより作用キー目録を発生する。た
だし、ステップ(財)のみは飛ばして直接ステップ侶4
からステップ輸に進む。CPU(42は、コード・ワー
ドの全バイトを暗号化して作用キー目録を作り、マスタ
ー・キー・テーブルに記憶してマスター・キー・テーブ
ルをワーキング・テーブルにステップ−でコピーした後
、暗号文の解読に移る。
解読は、まず、ステップ(116)でNを2に等しくセ
ットすることから始まる。CPU(43は、次に、ステ
ップ(118)で与えられる暗号文の最初の入力バイト
INPUT BYTEを取上げ、ステップ(120)で
WOR−Dを次のINPUT BYTEに等しくセット
する。ステップ(122)で、CPUは、WORDを前
と後の4ビツトに分け、ステップ(124)で、前の4
ビツトを用いて逆ルックアップ・テーブル(10B)中
に対応する4ビツトを見付け、ステップ(126)で、
後の4ビツトを用い【逆ルックアップ・テーブル(11
の中に対応する4ビツトを見付ける。ステップ(128
)で、ステップ(124)からの出力はNEWORDの
前の4ビツトとなり、ステップ(126)の出力はNE
WORDの後の4ビツトとなる。ステップ(13ので、
 CPU(43は、復元器(112)にNEWORDの
全ビットを1位置左に、すなわちステップσa、σe、
σ樽で行ったのと反対にシフトされる。
次に、CPU(421は、ステップ(132)で、KE
Y PO−INTERをカウンタ(N)のカウントに等
しくセットする。それから、NEWORDは、ステップ
(134)で、KEY POINTERにより指示され
るワーキング・テーブル・メモリからのエントリと共に
排他オア(XOR)される。ステップ(136)で、カ
ウンタ(N)のカウントは1つ進められる。
それから、CPU (4のは、ステップ(138)で、
カウンタ(N)のカウントがEND POINT(N)
に等しいかどうかを判定する。その特定のカウンタがそ
の終点に達しておれば、そのカウンタのカウントはステ
ップ(14ので0にリセットされる。それから、CPU
(6)は、ステップ(142)でNを1つ減らし、ステ
ップ(144)でWORDを排他オア(XOR)された
NEWORDに等しくセットする。こうして、暗号文の
最初の8ビツトが第5図の装置によって解読される。暗
号化過程で行ったように、この一連のステップは更に2
回繰返される。すなわち、各カウンタ(4I、(至)及
び(至)に対し、この順序でこれらのステップが繰返さ
れる。この段階の完了は、ステップ(146)で、Nが
−1に等しいかどうかを質問して判定される。答えがノ
ー、すなわち未だ全部のカウンタが使用されていない場
合、CPU(43は、ステップ(122)に戻り、Nが
−1に等しくなるまでステップ(122)より(146
)までを繰返す。その後ステップ(148)で、 WO
RDが明瞭な原文として出力される。
ステップ(150)で暗号文が終わりに達しない場合、
CPUは、ステップ(116)に戻り、暗号文の次のI
NPUT BYTEを処理する。この処理は、文の終わ
りが決定されるまでステップ(116)〜(150)に
より繰返される。文の終わりが決定されると、CPUは
ステップ(152)でプログラムを終了する。
本発明の暗号化装置によれば、ただ1つのコード・ワー
ドを用いて必要な帰納的キー目録を発生するので、デー
タ記憶量を大きく減らすことができる。上述の実施例で
は特定の非直線的暗号化手段(@、 C3GF (10
6)及び(112) )を好適なものとして示したが、
本発明においては他の型の非直線的暗号化手段を使用し
【もよい。
また、上述の実施例ではカウンタのカウントは作用キー
目録発生後リセットされないが、他の実施例におい【エ
ラー源となる可能性を除くためにこのステップを追加し
てもよい。
本明細書で用いた語句や表現は、説明のためであって限
定のためのものではなく、均等物を除外するものでもな
い。本発明は、特許請求の範囲内において種々の変形・
変更をしうるものである。
〔発明の効果〕
本発明の効果は、次のとおりである。
(イ)ただ1つのコード・ワードを用いて必要な帰納的
キー目録を発生するので、データ記憶に要する装置を大
幅に減少することができる。
(ロ)必要なソフトウェアが少なくてすむ。暗号化プロ
グラムの大きさが非常に少なく、実行速度が早い。
(ハ)暗号データのファイルをもつ人間によってソフト
ウェアが変えられるのを防止する。
に)暗号データの所有者が資格のあるものかどうかをチ
ェックできる。
【図面の簡単な説明】
第1図は本発明の暗号化操作を示すブロック図、第2図
は本発明装置の実施例を示すブロック図、第3図は第2
図装置の動作を示す流れ図、第4図は本発明の解読操作
を示すブロック図、第5図は本発明に用いうる解読装置
を示すブロック図、第6図は第5図装置の動作を示す流
れ図である。 (ハ)・・・・・・マスター・テーブル・ランダムアク
セス(アドレス可能)メモリ及びワーキング・テーブル
・ランダムアクセス(アドレス可能)メモリ、06)〜
(41・・・・・・カウンタ、(財)・・・・・・排他
的オア論理手段、(ハ)・・・・・・非直線的暗号化手
段、@り・叩・制御手段。

Claims (1)

    【特許請求の範囲】
  1. デジタル形式の原文を暗号化するために帰納的キー目録
    を発生させる装置において、1つのマスター・テーブル
    −ランダムアクセス(アドレス可能)メモリと、1つの
    ワーキング・テーブル・ランダムアクセス(アドレス可
    能)メモリと、複数の計数限度が異なるリセツ、ト可能
    カウンタと、2人力及び1出力を有する排他的オア論理
    手段と、この排他的オア論理手段の出力を受けてそれを
    暗号化し、その結果を出力として生じる非直線的暗号化
    手段と、上記マスター・テーブル及びワーキング・テー
    ブル・メモリ、上記排他的オア論理手段、上記カウンタ
    並びに上記非直線的暗号化手段に接続された制御手段と
    を具え、この制御手段は、上記ワーキング・テーブル・
    メモリに予め定めたキー目録データを入れ、その後上記
    排他的オア論理手段に、上記カウンタの1つにおけるカ
    ウントを参照して選択したマスター・テーブル・メモリ
    のエントリと共に所定のピット群より成るコード・ワー
    ドを排他的オア処理させ、上記1つのカウンタのカウン
    トを歩進させ、上記非直線的暗号化手段の出力を上記排
    他的オア論理手段への入力として供給し、この過程を複
    数回にわたり毎回具なる1つのカウンタを使用し且つ上
    記非直線的暗号化手段の出力を連続するエントリとして
    上記マスター・テニプル手段に記憶させながら繰返し、
    これらの動作を全コード・ワードが暗号化されるまで繰
    返し、上記マスター・テーブル・メモリの内容を上記ワ
    ーキング・テーブル・メモリに入れ、その後この動作を
    原文の連続するデジタル・ビット群に対して繰返し、そ
    の結果を出力することを特徴とする帰納的キー目録暗号
    化装置。
JP59223648A 1983-10-24 1984-10-24 再帰的キー目録暗号化装置 Expired - Fee Related JPH0723984B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/545,079 US4776011A (en) 1983-10-24 1983-10-24 Recursive key schedule cryptographic system
US545079 1983-10-24

Publications (2)

Publication Number Publication Date
JPS60121486A true JPS60121486A (ja) 1985-06-28
JPH0723984B2 JPH0723984B2 (ja) 1995-03-15

Family

ID=24174822

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59223648A Expired - Fee Related JPH0723984B2 (ja) 1983-10-24 1984-10-24 再帰的キー目録暗号化装置

Country Status (2)

Country Link
US (1) US4776011A (ja)
JP (1) JPH0723984B2 (ja)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2204975B (en) * 1987-05-19 1990-11-21 Gen Electric Co Plc Authenticator
US5001755A (en) * 1988-04-19 1991-03-19 Vindicator Corporation Security system network
US4935961A (en) * 1988-07-27 1990-06-19 Gargiulo Joseph L Method and apparatus for the generation and synchronization of cryptographic keys
US5003596A (en) * 1989-08-17 1991-03-26 Cryptech, Inc. Method of cryptographically transforming electronic digital data from one form to another
US5038376A (en) * 1989-10-04 1991-08-06 Teledyne Industries, Inc. Block substitution based encryption by a modulo 2 addition method and apparatus
US5113444A (en) * 1990-09-05 1992-05-12 Arnold Vobach Random choice cipher system and method
US5239584A (en) * 1991-12-26 1993-08-24 General Electric Corporation Method and apparatus for encryption/authentication of data in energy metering applications
US5307412A (en) * 1992-09-30 1994-04-26 Vobach Arnold R Random coding cipher system and method
US8073695B1 (en) 1992-12-09 2011-12-06 Adrea, LLC Electronic book with voice emulation features
US7835989B1 (en) 1992-12-09 2010-11-16 Discovery Communications, Inc. Electronic book alternative delivery systems
US7849393B1 (en) 1992-12-09 2010-12-07 Discovery Communications, Inc. Electronic book connection to world watch live
JP3958355B2 (ja) 1992-12-09 2007-08-15 セドナ・パテント・サービシズ・エルエルシー ケーブルテレビ配送システムのためのネットワーク・コントローラ
US5335280A (en) * 1993-01-28 1994-08-02 Vobach Arnold R Random sum cipher system and method
US7861166B1 (en) 1993-12-02 2010-12-28 Discovery Patent Holding, Llc Resizing document pages to fit available hardware screens
US7865567B1 (en) 1993-12-02 2011-01-04 Discovery Patent Holdings, Llc Virtual on-demand electronic book
US9053640B1 (en) 1993-12-02 2015-06-09 Adrea, LLC Interactive electronic book
US8095949B1 (en) 1993-12-02 2012-01-10 Adrea, LLC Electronic book with restricted access features
GB2302246B (en) * 1994-03-23 1998-05-13 Chantilley Corp Ltd Apparatus for generating encryption/decryption look-up tables using a session key
US5724428A (en) * 1995-11-01 1998-03-03 Rsa Data Security, Inc. Block encryption algorithm with data-dependent rotations
JPH09233066A (ja) * 1996-02-23 1997-09-05 Sony Corp 暗号化/解読化方法および装置
US6041123A (en) * 1996-07-01 2000-03-21 Allsoft Distributing Incorporated Centralized secure communications system
US5841872A (en) * 1996-07-01 1998-11-24 Allsoft Distributing Incorporated Encryption enhancement system
US5745577A (en) * 1996-07-25 1998-04-28 Northern Telecom Limited Symmetric cryptographic system for data encryption
US6526145B2 (en) * 1997-01-29 2003-02-25 David M. Marzahn Data encryptor/decryptor using variable in-place I/O
US6157723A (en) * 1997-03-03 2000-12-05 Motorola, Inc. Method and apparatus for secure communications with encryption key scheduling
CA2210199A1 (en) 1997-07-11 1999-01-11 Mitel Corporation Method and apparatus for the generation of non-linear confusion data
US6151395A (en) 1997-12-04 2000-11-21 Cisco Technology, Inc. System and method for regenerating secret keys in diffie-hellman communication sessions
US6035042A (en) * 1997-12-10 2000-03-07 Allegheny Teledyne Inc. High speed and method of providing high speed table generation for block encryption
ATE325478T1 (de) 1998-01-02 2006-06-15 Cryptography Res Inc Leckresistentes kryptographisches verfahren und vorrichtung
US7587044B2 (en) * 1998-01-02 2009-09-08 Cryptography Research, Inc. Differential power analysis method and apparatus
EP1090480B1 (en) 1998-06-03 2019-01-09 Cryptography Research, Inc. Improved des and other cryptographic processes with leak minimization for smartcards and other cryptosystems
CA2334597C (en) 1998-07-02 2007-09-04 Cryptography Research, Inc. Leak-resistant cryptographic indexed key update
US7181014B1 (en) 1999-09-10 2007-02-20 Cisco Technology, Inc. Processing method for key exchange among broadcast or multicast groups that provides a more efficient substitute for Diffie-Hellman key exchange
US6684331B1 (en) 1999-12-22 2004-01-27 Cisco Technology, Inc. Method and apparatus for distributing and updating group controllers over a wide area network using a tree structure
US7260716B1 (en) 1999-09-29 2007-08-21 Cisco Technology, Inc. Method for overcoming the single point of failure of the central group controller in a binary tree group key exchange approach
US7434046B1 (en) 1999-09-10 2008-10-07 Cisco Technology, Inc. Method and apparatus providing secure multicast group communication
US7103185B1 (en) 1999-12-22 2006-09-05 Cisco Technology, Inc. Method and apparatus for distributing and updating private keys of multicast group managers using directory replication
US6987855B1 (en) 1999-09-10 2006-01-17 Cisco Technology, Inc. Operational optimization of a shared secret Diffie-Hellman key exchange among broadcast or multicast groups
US7013389B1 (en) 1999-09-29 2006-03-14 Cisco Technology, Inc. Method and apparatus for creating a secure communication channel among multiple event service nodes
US7089211B1 (en) * 2000-01-12 2006-08-08 Cisco Technology, Inc. Directory enabled secure multicast group communications
US6941457B1 (en) 2000-06-30 2005-09-06 Cisco Technology, Inc. Establishing a new shared secret key over a broadcast channel for a multicast group based on an old shared secret key
US20040186805A1 (en) * 2000-07-01 2004-09-23 Gologorsky Steven Phillip Sealed-bid auction comprising staged bid publication
US7299207B1 (en) * 2000-08-23 2007-11-20 Demont & Breyer, Llc Data processing system that provides an auction with programmable proxy bids
US7006629B2 (en) * 2000-12-19 2006-02-28 International Business Machines Corporation Method and system for processing a data set
US7203317B2 (en) * 2001-10-31 2007-04-10 Hewlett-Packard Development Company, L.P. System for enabling lazy-revocation through recursive key generation
US7334125B1 (en) 2001-11-27 2008-02-19 Cisco Technology, Inc. Facilitating secure communications among multicast nodes in a telecommunications network
CA2486713A1 (en) * 2002-05-23 2003-12-04 Atmel Corporation Advanced encryption standard (aes) hardware cryptographic engine
WO2006048702A1 (en) * 2004-11-05 2006-05-11 Synaptic Laboratories Limited A method of and apparatus for encoding a signal in a hashing primitive
KR20060081847A (ko) * 2005-01-10 2006-07-13 삼성전자주식회사 비밀키를 보호하는 스마트 카드 및 그것의 방법
WO2006084375A1 (en) * 2005-02-11 2006-08-17 Universal Data Protection Corporation Method and system for microprocessor data security
WO2007028241A2 (en) * 2005-09-07 2007-03-15 Universal Data Protection Corporation Method and system for data security of recording media
GB0601700D0 (en) * 2006-01-27 2006-03-08 Claricom Ltd Printing Method
US9251143B2 (en) 2012-01-13 2016-02-02 International Business Machines Corporation Converting data into natural language form
EP2885875A1 (fr) * 2013-02-27 2015-06-24 Morpho Procede d'encodage de donnees sur une carte a puce par des codes de poids constant
US10021079B2 (en) 2015-05-31 2018-07-10 Awen Labs, Llc Security system, method, and apparatus

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5526583A (en) * 1978-08-17 1980-02-26 Fujitsu Ltd Ciphor circuit
JPS5555385A (en) * 1978-10-18 1980-04-23 Fujitsu Ltd Cipher key control mechanism

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3798359A (en) * 1971-06-30 1974-03-19 Ibm Block cipher cryptographic system
US3796830A (en) * 1971-11-02 1974-03-12 Ibm Recirculating block cipher cryptographic system
US4004089A (en) * 1975-02-28 1977-01-18 Ncr Corporation Programmable cryptic device for enciphering and deciphering data
US4160120A (en) * 1977-11-17 1979-07-03 Burroughs Corporation Link encryption device
US4193131A (en) * 1977-12-05 1980-03-11 International Business Machines Corporation Cryptographic verification of operational keys used in communication networks
US4206315A (en) * 1978-01-04 1980-06-03 International Business Machines Corporation Digital signature system and apparatus
US4322576A (en) * 1979-12-28 1982-03-30 Racal-Milgo, Inc. Message format for secure communication over data links
US4408093A (en) * 1981-06-05 1983-10-04 Itt Industries, Inc. Cryptographic encoder-decoder
US4578530A (en) * 1981-06-26 1986-03-25 Visa U.S.A., Inc. End-to-end encryption system and method of operation
US4520232A (en) * 1982-04-30 1985-05-28 Wilson William J Polygraphic encryption-decryption system
US4578531A (en) * 1982-06-09 1986-03-25 At&T Bell Laboratories Encryption system key distribution method and apparatus
US4605820A (en) * 1983-11-10 1986-08-12 Visa U.S.A. Inc. Key management system for on-line communication

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5526583A (en) * 1978-08-17 1980-02-26 Fujitsu Ltd Ciphor circuit
JPS5555385A (en) * 1978-10-18 1980-04-23 Fujitsu Ltd Cipher key control mechanism

Also Published As

Publication number Publication date
JPH0723984B2 (ja) 1995-03-15
US4776011A (en) 1988-10-04

Similar Documents

Publication Publication Date Title
JPS60121486A (ja) 再帰的キー目録暗号化装置
US5008935A (en) Efficient method for encrypting superblocks of data
US5425103A (en) Variable-key cryptography system
US3796830A (en) Recirculating block cipher cryptographic system
EP0002388B1 (en) Data processing terminal
US4238853A (en) Cryptographic communication security for single domain networks
US5479512A (en) Method and apparatus for performing concryption
JP3320928B2 (ja) 暗号化システム
EP0002579B1 (en) A method of creating a secure data file
EP0342832B1 (en) Dynamic feedback arrangement scrambling technique keystream generator
US6125182A (en) Cryptographic engine using logic and base conversions
US4319079A (en) Crypto microprocessor using block cipher
US5231662A (en) Method and device for enciphering data to be transferred and for deciphering the enciphered data, and a computer system comprising such a device
EP0725511A2 (en) Method for data encryption/decryption using cipher block chaining (CBC) and message authetication codes (MAC)
CN108989287B (zh) 加密方法、装置、终端设备及存储介质
NO20006385L (no) Blokk-chiffere med heltallsmultiplikasjon og dataavhengig og fast antall rotasjoner i hver runde
US4115657A (en) Random digital code generator
JPH09510591A (ja) セッションキーを用いて暗号化/解読用ルックアップテーブルを生成するための装置
JPS6333749B2 (ja)
Cusick et al. The redoc ii cryptosystem
JPH10240500A (ja) 乱数生成装置及び方法、暗号化装置及び方法、復号装置及び方法、並びにストリーム暗号システム
JPH0675524A (ja) ストリーム暗号処理装置
CN112134914B (zh) 一种基于密码学的分布式安全存储策略
CN115913725A (zh) 基于异或加密链的前向安全动态可搜索加密方法及系统
US3317899A (en) Information processing system utilizing a key to address transformation circuit

Legal Events

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