JPH1074044A - デジタルデータを符号化する方法および装置 - Google Patents

デジタルデータを符号化する方法および装置

Info

Publication number
JPH1074044A
JPH1074044A JP9097464A JP9746497A JPH1074044A JP H1074044 A JPH1074044 A JP H1074044A JP 9097464 A JP9097464 A JP 9097464A JP 9746497 A JP9746497 A JP 9746497A JP H1074044 A JPH1074044 A JP H1074044A
Authority
JP
Japan
Prior art keywords
digital data
encryption
register
data
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP9097464A
Other languages
English (en)
Inventor
Mark L Buer
マーク、エル.ビューア
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.)
Philips Semiconductors Inc
Original Assignee
VLSI Technology Inc
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 VLSI Technology Inc filed Critical VLSI Technology Inc
Publication of JPH1074044A publication Critical patent/JPH1074044A/ja
Pending 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/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • 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/12Details relating to cryptographic hardware or logic circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 【目的】 あらゆる動作方式上で高速で動作するデジタ
ルデータを暗号化および暗号解読する方法を提供するこ
と。 【構成】 デジタルデータを暗号化および暗号解読する
方法が構成される。最初に、デジタルデータは入力レジ
スタによりラッチされる。直列に接続された16の暗号
化段はデジタルデータを暗号化するのに使用される。こ
うした暗号化段はプロセス技術によってのみ制限された
最高周波数で動作する。最終の暗号化段からの符号化デ
ジタルデータは出力レジスタに記憶されている。入力レ
ジスタと出力レジスタは、DES核のデータ周波数の境
界周波数でクロックされる。適切な数のサイクルが経過
すると、出力レジスタが標本化される。プログラム式カ
ウンタを、出力レジスタが有効な暗号化データを含んで
いる時を指示するのに使用する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデジタルデータを符
号化する暗号器の分野に関する。具体的には、クロック
を拡大縮小調整可能なDES暗号器に関する。
【0002】
【従来の技術】暗号化とは、未認証加入者が認識できな
い形式にデータを変形することである。しばしば、暗号
化データは擬似乱数により特徴づけられる。暗号解読と
は、上記の変形されたデータを元の形式に戻すことであ
る。一般的に、暗号解読は、「キー」と呼ばれる秘密を
知っている認証されたユーザにより容易に実行される。
したがって、首尾よくデータが暗号化されていれば、未
認証の盗聴者がデータの内容を判定できないのでユーザ
のプライバシーが保持される。秘密のキーを知らない
と、暗号解読は事実上不可能であり、暗号コードを破る
には、異常に長い時間と計算資源が必要になる。現在の
実施されている例では、特にコンピュータネットワーク
またはデジタル電話線を介した私用通信の安全保守は、
送信データの暗号化に頼っている。これは、送信されて
いるデータのプライバシーと精度を確実にするために実
行される。たとえば、金銭面の交換(銀行からの電子マ
ネーの転送など)、軍事データ、通商上の取引き(航空
機の予約やチケットの購入など)で、不正に操作されず
に、確実に秘密が保てることが重要である。
【0003】データを暗号化する多種多様な戦略や方法
がある。一般に、暗号化方式が確実になるにつれて、暗
号化/暗号解読を実行するのに長く時間がかかる。広い
人気と支持を受けている暗号化方式はデータ暗号化標準
(DES)として知られている。DESは、連邦政府と
米国規格協会により標準として採用された暗号化プロト
コルである。DESは現在まで連邦政府の標準技術とし
て使用され続けており、事業でも広く使用されている。
DESを解説した関連文献には、アメリカ連邦標準局
(NBS)FIPS PUB46「データ暗号化標準(Data Encry
ption Standard)」(1977)、FIPS PUB 81「DES動
作方式(DES Modes of Operation)(1980)、ならびに
FIPS PUB 74「NBSデータ暗号化標準の実施使用ガイ
ドライン(Guidelines for Implementing and Using th
e NBS Data Encryption Standard)(1981)がある。他
の関連政府文献には、FIPS PUB112と113がある。これら
の文献は、パスワードによる暗号化とコンピュータデー
タの認証のためにDESの使用を指定するものである。
DES標準は機密扱いではないので、Bruce Schneierに
よる「応用暗号学(Applied Cryptography)」などの著
名な書物に標準についてくだけた説明がなされている。
現在、DESを検査してDES実行を認証する責任は、
国立標準技術研究所(NIST:National Institute of Sta
ndards and Technology)と国家安全保障局(NSA:Natio
nal Security Agency)にある。
【0004】DESは、56ビットキーを使用して64
ビットの平文入力の複数ブロックを64ビットの暗号文
の複数ブロックに暗号化する。同じキーが暗号化と暗号
解読段階で使用される。前述のFIPS PUB 81はDESに
4つの作動方式を指定している。電子コードブック(EC
B)、暗号ブロック連鎖(CBC)、出力帰還(OFB)、なら
びに暗号帰還(CFB)である。こうした4つの方式間の
主な相違は、あるブロックがその後に続くブロックの暗
号化に与える影響である。ECB方式では、各64ビッ
トが個別に暗号化される。他の方式では、これまでのブ
ロックが暗号化の役割を担い、したがって、所与のブロ
ックに対する暗号文を判定する。結果として、ECB方
式は、敵対者からの攻撃に脆弱であるが、他の方式は確
実になる。
【0005】しかし、ECB方式は高い暗号化/暗号解
読率を示すことができる。ECBは、複数のプロセッサ
マシンまたは複数のマシンで並列に実施できる。初期デ
ータを個別部分に分割することで実施される。各個別部
分は、複数プロセッサ間で同時に処理されるが、各プロ
セッサはその部分を個別に暗号化する。これにより、デ
ータが極めて速い速度で暗号化と暗号解読が可能にな
る。高速でデータを暗号化/暗号解読する機能は、音声
通信やビデオ会議などのさまざまなリアルタイムの応用
分野で重要である。さらに、迅速な暗号化/暗号解読
は、非同期転送モード(ATM)などのネットワーク分
野では極めて望ましい。
【0006】残念ながら、並列処理技術は、複製論理が
占有するシリコンチップの領域が広いので比較的高額に
なる。さらにダイスの寸法が大きくなるとコストが高く
なるというのは、所与のウェハーから製造できるダイス
(すなわち、半導体チップ)の数が少なくなるからであ
る。さらに、CBC、OFBおよびCFB方式は、シリ
アルデータブロック間の相互依存性のために並列処理を
有効に利用することはできない。言い換えれば、1デー
タブロックは、以前に暗号化/暗号解読されたデータブ
ロックに応じて暗号化/暗号解読される。したがって、
従来技術の設計は通常は単一の動作方式に調整されてい
た。結果として、DESチップは1つの動作方式しか取
り扱うことができなかった。そうでない場合、複数の動
作方式に適応させるには、その速度を犠牲にすることに
なる。従来のDES設計の他の欠点は、プロセス技術に
よる物理的な制約がシリコンチップを最高帯域幅までに
制限することである。しかし、適用分野によっては(た
とえば、ATM)DESチップによる帯域幅よりもはる
かに高い帯域幅で動作する必要がある。
【0007】
【発明が解決しようとする課題】したがって、あらゆる
動作方式上で動作する高速DES暗号化および暗号解読
機構が必要である。本発明はこうした解決方法を提供す
るものである。本発明は、あらゆる可能なDES方式
(ECB, CBC, OFBおよびCFB)に関連して使用でき、スル
ープットの高いDESシステムを実施する新規なハード
ウェアアーキテクチャに関する。さらに、本発明のDE
S設計の性能は、符号化されているデータのクロック周
波数にあわせて調整できる。本発明の上記および他の利
点は、本発明の説明により明らかになるであろう。
【0008】
【課題を解決するための手段】本発明は、デジタルデー
タを暗号化および暗号解読する方法に関する。デジタル
データは最初に、入力レジスタによりラッチされる。直
列に接続されている16の個別暗号化段がデジタルデー
タを暗号化するのに使用されている。こうした暗号化段
は、プロセス技術によってのみ制限される最高周波数で
動作する。最終の暗号化段からの符号化デジタルデータ
は出力レジスタに記憶される。入出力レジスタは、中心
となるデータ周波数の境界周波数とは異なる境界周波数
でクロック可能である。クロックは境界周波数から分割
されて、16の暗号化段の遅延要請に応える。適切な数
のサイクルが経過すると、出力レジスタから標本が取ら
れる。プログラム式カウンタは、出力レジスタが有効な
暗号化データを含んでいる時を示すのに使用される。そ
のため、暗号化ブロックの性能全体は、入出力レジスタ
を通過するクロックを制御することでDES核を通過す
るデータのクロック周波数に調整できる。このため、入
力レジスタから出力レジスタまでの経路が、入力周波数
とプロセス技術の速度に応じたマルチサイクル経路にな
る。本発明は、符号化メッセージを解読するのにも使用
できる。さらに、本発明は、ECB、CBC、OFB、
およびCFB動作方式で使用できる。
【0009】本明細書に広く開示されているデジタルデ
ータを符号化する方法は、入力レジスタにデジタルデー
タを記憶する工程と、最初の周波数で複数の暗号化段に
よりデジタルデータを処理する工程と、暗号化段の1つ
からの符号化デジタルデータを出力レジスタに記憶する
工程と、第2の周波数で入力レジスタと出力レジスタを
クロックする工程と、第1周波数と第2周波数の関数で
ある、処理工程を完了するサイクルの数を判定する工程
と、上記サイクルの数が完了したときに出力レジスタを
標本化する工程とから構成される。
【0010】さらに、本明細書に広く開示されているデ
ジタルデータを符号化する装置は、デジタルデータを記
憶する入力レジスタと、デジタルデータを符号化するた
めに入力レジスタに接続された複数の暗号化段と、符号
化デジタルデータを記憶するために暗号化段の少なくと
も1つに接続された出力レジスタと、第2の周波数で入
力レジスタと出力レジスタをクロックするために入力レ
ジスタと出力レジスタに接続されたクロックと、第1周
波数と第2周波数の関数であるサイクル数が経過した後
で出力レジスタを標本化するために出力レジスタに接続
された論理とから構成される。
【0011】
【発明の実施の形態】本発明の以下に示す詳細な説明で
は、本発明を完全に理解するために多数の特定の細部が
詳述されている。しかし、当業者には明らかなことだ
が、こうした特定の細部なしでも他の要素や方法を使用
することによっても本発明を実施することができる。他
の例では、周知の方法、処理手順、構成要素および回路
は、本発明の局面が不必要に不明瞭にならないように詳
細には説明されていない。
【0012】本発明は、標準暗号化方式、すなわちデー
タ暗号化標準の新規のハードウェア設計と実行を提供す
るものである。本発明は、高速で確実に私用通信を暗号
化するもので、スループットはCBC方式では毎秒少な
くとも355メガビットである。本発明では、迅速なD
ESハードウェアが妥当なコストで広い範囲の適用分野
で使用可能である。標準の用語使いによると、暗号化処
理を解説するときには、元のメッセージは平文と呼ば
れ、暗号化メッセージは暗号文と呼ばれる。暗号文の暗
号解読をしようとする未認証ユーザは敵対者と呼ばれ
る。
【0013】図1は、単一キーを用いるキー準拠暗号化
装置の標準モデルを表す。メッセージ、すなわち平文1
00は、キー105と暗号化方法110に基づいて暗号
化される。キーはユーザにより選択され、秘密される。
暗号化の秘密保持はキーの秘密性に左右される。暗号化
による出力は暗号文115と呼ばれる。キー105と適
切な暗号解読アルゴリズム120を知っていれば、暗号
文は元の平文125に戻される。このパラダイムは、多
様な基調をなすハードウェアまたはソフトウェア方式に
よる広範な設定にあまねく適用できる。
【0014】デジタル暗号化標準すなわちDESは、単
一キーを用いたキー準拠暗号化方式の1例である。図2
は、工程200のメッセージが対応する暗号文に変形さ
れる方法を示す工程の流れ図である。工程205では、
このメッセージは2進法で形成されている。工程210
で、ユーザが56ビットの秘密キーを選択したと仮定さ
れる。工程215で、メッセージは64ビットブロック
符号化される。工程220で、符号化された64ビット
のブロックは64ビット出力ブロックとなる。64ビッ
トブロックだけが受け取られるので、最後のブロックの
長さが64ビットでない場合、一般に、最後のブロック
にはある規則的なパターン(たとえば、0の列)が埋め
込まれる。工程225では、初期メッセージ全体が符号
化されるまで64ビットのブロックが符号化される。次
に、工程230で、出力ブロックが連結されて、最終的
な符号化メッセージが形成される。符号化は、工程22
0での以後のブロックの符号化で使用可能な状態情報を
作成することもできることに注意すべきである。この工
程は、DES標準を指定する文書に詳細に説明されてい
る。たとえば、電子コードブック(ECB)方式では、こ
うした状態情報は使用されない。各ブロックは個別に符
号化される。暗号ブロック鎖(CBC)方式では、平文
は、暗号化される前に、前の暗号文のブロックと排他的
論理和がとられる。暗号解読方法はほぼ同じであり、暗
号化に使用される同じキーで実施される。
【0015】図3は、DES暗号化処理の機能の詳細な
例を示す。ユーザは、平文メッセージ300を符号化す
る。305と310に示してあるように、平文メッセー
ジは64ビットのブロックP1、P2のように分割され
る。64ビットのブロックは、参照番号315と320
により示してあるように、明らかに無作為の64ビット
の列E1、E2などに連続して符号化される。最後に、
符号化出力は、列E1、E2などの連結から構成されて
いる。
【0016】本発明の暗号化アーキテクチャの好ましい
実施例は図4に示してある。この設計では、16の暗号
化段430から構成される単一DESブロック(または
核)が必要となる。DESハードウェアに入力される平
文は64ビットのブロック400から構成されている。
同一の演算が16回まわる。これらの16の同一周回は
それぞれ暗号化段と呼ばれる。第2段から第16段まで
にわたって、ある暗号化段の結果が、次の暗号段への入
力として使用される。暗号段への入力が平文からのもの
かまたは最後の暗号化段出力からのものかは、マルチプ
レクサ410により判定されて、マルチプレクサ410
はその判定結果を適切な入力レジスタ420に送る。1
6の暗号化段430の後で、その結果作成された暗号化
データは出力暗号文レジスタ440に記憶される。CB
C方式では、出力暗号文は帰還経路470を介して帰還
され、排他的論理和(XOR)演算460により次の6
4ビットブロック435と加算される。他の動作および
暗号解読方式も同じ基準アーキテクチャを使用する。た
とえば、ECB方式では、XOR演算410が全体的に
迂回される。標準実施例では、1サイクルは、基調をな
すマシンが1つの演算を実行する時間単位を参照する。
1サイクルの実際のクロック時がマシン間で変化する。
暗号化演算は、同じハードウェア430により16回繰
り返される。各サイクルでは、暗号化段への入力は前の
暗号化段からの出力により判定される。DES核が単一
ブロックを暗号化する時間は、基調をなすマシンで数サ
イクルに相当する時間となる。しかし、根底をなすマシ
ンとDESブロックを適切に同期することで、サイクル
時間にかかわらず、ピークまたは亜ピーク性能が確保で
きる。したがって、DESブロックは、サイクル時間で
はなくプロセス技術の速度に依存した複サイクル経路と
して効果的に作用する。
【0017】DES核は図5(a),(b)に詳細に示
してある。500で示された点「A」から点「B」への
工程は、平文データを入力レジスタ510にラッチする
工程と、16の暗号化段520でデータを暗号化する工
程と、暗号化データを出力レジスタ530に記憶する工
程とを含む。16の段520は直列に接続されて、暗号
化段のそれぞれに入力データが流れる。16の暗号化段
の最初で入力データはラッチされて、その後、入力デー
タが暗号化段の16段すべてを通って出力レジスタ53
0に落ちる。注意すべきことは、DESブロックが暗号
化タスクを完了する時間、すなわち、入力レジスタへの
入力の到着と出力レジスタへの出力の到着の間の時間
が、ハードウェアにより固定されて、サイクル時間から
独立する。さらに例を示す。プロセス技術がデータが単
一暗号化段を通過するのに5ナノ秒を必要とする場合、
データが核全体を通過する時間は全体で80ナノ秒かか
る。さらに、入力レジスタ、出力レジスタ、データの多
重化などによる遅延によるオーバーヘッドがある。他の
遅延がすべてさらに10ナノ秒となる場合、最高のスル
ープットは64ビット毎に90ナノ秒、すなわち毎秒約
711メガビットとなる。クロック速度が正確に11.11
メガヘルツ(90ナノ秒/サイクル)の場合、上記がス
ループットとなる。多くの場合、基調となるマシンは、
サイクル当たり90ナノ秒より実質的に小さいサイクル
時間を備えている。どの場合でも、ピーク性能を達成す
るために、クロックとDESブロックはできるだけ密接
に同期しなければならない。たとえば、基調のクロック
速度がサイクル当たり20ナノ秒(50メガヘルツ)と
仮定すると、データは入力レジスタに入力されて、4.
5サイクル毎に出力レジスタから取り出されて、毎秒7
11メガビットのピーク性能を達成する。大半のマシン
では、データは1サイクルまたは半サイクルでラッチさ
れるので、入出力が適切にラッチされる周波数を調整す
ることで、ピーク近傍の性能やしばしばピーク性能がこ
うしたシステムにより保証できる。シリコン技術の速度
の改善が進むにつれて、DES核に必要な時間も改良さ
れることに注意すべきである。上記の発明の記載は、D
ES核による実際の時間からは独立しているので、本実
施例の説明は、シリコン技術の改良により誘導される将
来の性能の改良を制限するものではない。
【0018】図6は、暗号化段の典型例を示す回路図で
ある。その最も基本的なレベルでは、DESアルゴリズ
ムは、2つの基本的な暗号化技術の組合せ、混乱と拡散
から構成される。したがって、暗号化段は、キー604
に基づいて、平文の置換602と603に関して代入6
01を実行することで上記の原理を利用している。最初
には、平文の64ビットのブロックが32ビットの左側
の半分(L)と右側の半分(R)に分割される。文字
「i」が、現在の繰返しを指定するのに使用される。し
たがって、Li-1ブロック605は前の繰返しの32ビッ
ト左半分の結果を表す。同様に、Ri-1ブロック606
は、前の繰返しの対応する32ビットの右半分の結果を
表す。Ri-1のデータは、展開置換ブロック602に入力
されている。展開置換はデータの右半分を32ビットか
ら48ビットに展開する。この演算はビットの順序を変
えるとともにいくつかのビットを繰り返す。目的は、X
OR演算607のために、右側半分をキーと同じ大きさ
にすることである。さらに、置換処理601中に圧縮で
きるデータが長くなる。暗号方式では、展開置換602
により1ビットが2つの置換に影響を及ぼすことができ
る。その結果、入力ビットへの出力ビットの依存がより
迅速に拡大する。DESは、暗号文の各ビットが平文の
各ビットとキーの各ビットにできるだけ迅速に依存する
状態に到達するよう設計されている。
【0019】同時に、64ビットのキー604が変換さ
れる。このキーは、各8番目のビットを無視することで
56ビットのキーに縮小される。こうしたビットはパリ
ティ検査として使用され、そのキーにエラーがないこと
を確認する。56ビットのキーが取り出された後で、異
なる48ビットのサブキーが、以下に示すように16暗
号化段のそれぞれで生成される。最初に、56ビットの
キーが2つの28ビットづつに分割される。次に、特定
の暗号化段に応じて、シフタ608と609が、両半分
が1または2ビット分左に循環的に移送する。その上、
圧縮置換610は、ビットの順序を入れ換えるとともに
48ビットの部分集合を選択するのに使用される。移送
のために、キーのビットの異なる部分集合が各部分キー
で使用される。さらに、各ビットは16のサブキーの約
14で使用される。ただし、すべてのビットが正確に同
じ数で使用されるわけではない。その結果圧縮されたキ
ーがXORゲート607に入力される。
【0020】圧縮キーは展開ブロックと排他的論理和6
07がとられた後で、48ビットの結果が代入Sボック
ス601に入力される。代入は8つの異なる代入ボック
スにより実行される。各Sボックスは6ビット入力と4
ビット出力を備えている。48ビットは8つの6ビット
のサブブロックに分割される。各ブロックは個別のSボ
ックスにより演算される。各Sボックスは、4行と6列
の表から構成される。ボックスの各入力は4ビットの数
に対応する。Sボックスの6つの入力ビットが、その下
に、行と列の数を指定して、出力する。Sボックスの非
線形がDESを確実にする。次に、代入Sボックス60
1からの32ビットの出力が置換Pボックス603によ
り置換される。この置換は各入力ビットを出力位置にマ
ップする。どのビットも2度使用されることはなく、無
視されることもない。言い換えれば、直接置換が実行さ
れる。
【0021】置換Pボックス603からの結果はLi-l6
05と排他的論理和611がとられて、現繰返しの右半
分のデータRi612を生成する。現繰返しの左半分デー
タLi613は前の繰返しの右半分Ri-1606から直接と
られる。最後に、移送されたキー614はその後の繰返
しで使用される。
【0022】図7は、本発明が実施され実践される典型
的なコンピュータシステム700を示す。図7のコンピ
ュータシステム700は例示にすぎず、本発明は、汎用
コンピュータシステム、埋め込みコンピュータシステ
ム、送信を確実にするコンピュータシステムなど様々な
コンピュータシステムの内部で動作可能である。図7の
コンピュータシステムは、様々な構成要素間でデジタル
情報を移送するアドレス/データバス709と、デジタ
ル情報と命令を処理する中央演算処理装置(CPU)7
01と、デジタル情報と命令を記憶するランダムアクセ
スメモリ(RAM)702と、永続的なデジタル情報と
命令を記憶する読取り専用メモリ(ROM)703とを
備えている。さらに、コンピュータシステム700は、
大量のデータを記憶するデータ記憶装置704(たとえ
ば、磁気、光、フロッピー、またはテープドライブ装
置)と、周辺装置(たとえば、コンピュータネットワー
ク、モデム、等)とインターフェースを取る入出力イン
ターフェース708とを備えている。さらに、暗号化お
よび暗号解読回路710は、外向けのメッセージを符号
化し、送り手により暗号化された受信メッセージを暗号
解読するのに使用できる。コンピュータシステム700
に接続可能な装置は、情報(たとえば、チャンネルグリ
ッドマップ、垂直制約グラフ、重み付け関数、実現可能
な連結)をコンピュータユーザに表示する表示装置70
5と、英数字入力装置706(たとえば、キーボード)
と、データと選択を入力するカーソル制御装置707
(たとえば、マウス、トラックボール、光ペン)とを備
えている。 本発明の好ましい実施例をこのように説明
してきた。本発明は特定の実施例により説明してきた
が、本発明はこうした実施例により制限されるものでは
なく、請求の範囲に記載されているように解釈されるこ
とが理解されるべきである。
【図面の簡単な説明】
【図1】単一キーを用いたキー基準符号化装置の標準モ
デルの構成図。
【図2】メッセージを対応する暗号文に変形する方法の
工程を示す流れ図。
【図3】DES暗号化処理の機能の詳細な例を示す図。
【図4】CBC方式のDES暗号化法の標準ハードウェ
ア実施の重要な特色を示す構成図。
【図5】本発明のDES核を示す図。
【図6】典型的な暗号化段の回路図。
【図7】本発明が実施または実践される典型的なコンピ
ュータシステムの構成を示す構成図。
【符号の説明】
400 平文データ 410 マルチプレクサ 420 入力レジスタ 430 暗号化ブロックDES核 440 出力レジスタ 450 暗号化データ 460 排他的論理和 510 入力レジスタ 520 暗号化段(DES核) 530 出力レジスタ

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】入力レジスタにデジタルデータを記憶する
    工程と、 直列に接続された複数の暗号化段で前記デジタルデータ
    を処理する工程と、 最後の暗号化段からの符号化デジタルデータを出力レジ
    スタに記憶する工程と、 前記入力レジスタと前記出力レジスタを第2周波数でク
    ロックする工程と、 前記処理工程を完了するためのサイクルの数を判定する
    工程と、 前記サイクル数が完了したときに前記出力レジスタを標
    本化する工程と、 を含み前記処理はプロセス技術により制限されている第
    1周波数で実行され、前記サイクル数は前記第1周波数
    と第2周波数の関数であることを特徴とするデジタルデ
    ータを符号化する方法。
  2. 【請求項2】前記サイクル数を計数する、前記出力レジ
    スタが標本化される時を指示するプログラム式クロック
    を増分する工程をさらに含む請求項1記載の方法。
  3. 【請求項3】前記符号化データを第2入力レジスタに入
    力する工程と、 第2の暗号化段集合で前記符号化データを処理して、未
    符号化デジタルデータを作成する工程と、 第2出力レジスタに前記未符号化デジタルデータを記憶
    する工程と、 前記出力レジスタから前記未符号化デジタルデータを読
    み取る工程と、から構成される復号工程をさらに含む請
    求項1または2に記載の方法。
  4. 【請求項4】前記第1周波数に応じて前記処理工程を調
    整するよう前記第2周波数を制御する工程をさらに含む
    請求項1、2、または3に記載の方法。
  5. 【請求項5】最終の暗号化段からXORゲートに前記符
    号化デジタルデータを帰還させる工程と、 前記符号化デジタルデータと以降の未符号化デジタルデ
    ータとに関してXOR機能を実行する工程と、をさらに
    含む請求項1、2、3、または4に記載の方法。
  6. 【請求項6】少なくとも2つの動作方式間で選択する工
    程をさらに含み、XORゲートからの出力または未符号
    化デジタルデータが前記入力レジスタに記憶される請求
    項5に記載の方法。
  7. 【請求項7】デジタルデータを符号化する装置であっ
    て、 デジタルデータを記憶する入力レジスタと、 前記入力レジスタに接続されて、前記デジタルデータを
    符号化する、直列に接続された複数の暗号化段と、 符号化デジタルデータを記憶する、最終の暗号化段に接
    続された出力レジスタと、 第2周波数で前記入力レジスタと前記出力レジスタをク
    ロックする、前記入力レジスタと前記出力レジスタに接
    続されたクロックと、 数サイクルが経過した後で前記出力レジスタを標本化す
    る、前記出力レジスタに接続された論理と、 を含み、前記符号化が第1周波数で実行され、前記の経
    過サイクルは前記第1と第2の周波数の関数であること
    を特徴とする装置。
  8. 【請求項8】前記サイクル数を計数する、前記出力レジ
    スタに接続されたプログラム式クロックをさらに含み、
    前記プログラム式クロックは、前記出力レジスタが標本
    化される時を指示する請求項7記載の装置。
  9. 【請求項9】復号器をさらに含み、前記復号器は、 符号化データが記憶される第2入力レジスタと、 前記符号化データを暗号解読する、前記第2入力レジス
    タに接続された第2の暗号化段の集合と、 暗号解読されたデジタルデータを記憶する、前記第2の
    暗号化段の集合に接続された第2出力レジスタと、から
    構成される請求項7または8記載の装置。
  10. 【請求項10】前記第1周波数に応じて前記処理工程を
    調整するように前記第2周波数を制御するコントローラ
    をさらに含む請求項7、8または9記載の装置。
  11. 【請求項11】前記符号化デジタルデータとその後の未
    符号デジタルデータについてXOR機能を実行する、前
    記入力レジスタに接続されたXORゲートと、 最後の暗号化段から前記XORゲートに符号化デジタル
    データを帰還させる帰還経路と、をさらに含む請求項
    7、8、9または10記載の装置。
  12. 【請求項12】少なくとも2つの動作方式間で選択す
    る、XORゲートに接続された選択器をさらに含み、X
    ORゲートからの出力または未符号化デジタルデータが
    前記入力レジスタに記憶される請求項11記載の装置。
  13. 【請求項13】前記暗号化段が、データ暗号化標準に対
    応する16の独立ブロックから構成される、請求項7な
    いし12のいずれかに記載の装置。
  14. 【請求項14】前記2つの動作方式は暗号化ブロック鎖
    と電子コードブック方式を含む、請求項7ないし12ま
    たは13のいずれかに記載の装置。
  15. 【請求項15】前記デジタルデータが平文を表す請求項
    7ないし14のいずれかに記載の装置。
JP9097464A 1996-04-16 1997-04-15 デジタルデータを符号化する方法および装置 Pending JPH1074044A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/633,156 US5671284A (en) 1996-04-16 1996-04-16 Data encryptor having a scalable clock
US633156 1996-04-16

Publications (1)

Publication Number Publication Date
JPH1074044A true JPH1074044A (ja) 1998-03-17

Family

ID=24538502

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9097464A Pending JPH1074044A (ja) 1996-04-16 1997-04-15 デジタルデータを符号化する方法および装置

Country Status (3)

Country Link
US (1) US5671284A (ja)
EP (1) EP0802652A2 (ja)
JP (1) JPH1074044A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003037482A (ja) * 2001-01-23 2003-02-07 Hitachi Ltd 疑似乱数生成装置またはそれを用いた暗号復号処理装置
KR101224021B1 (ko) * 2011-04-29 2013-01-21 (주)네오와인 암복호화 장치 및 방법
JP2013255261A (ja) * 2009-04-06 2013-12-19 Panasonic Corp 鍵実装システム
US11838402B2 (en) 2019-03-13 2023-12-05 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835599A (en) * 1996-04-15 1998-11-10 Vlsi Technology, Inc. Muti-cycle non-parallel data encryption engine
US6122375A (en) * 1996-12-10 2000-09-19 Hitachi, Ltd. Hash value generating method and device, data encryption method and device, data decryption method and device
US5950170A (en) * 1997-04-11 1999-09-07 Vanguard International Semiconductor Corporation Method to maximize capacity in IC fabrication
DE19724072C2 (de) * 1997-06-07 1999-04-01 Deutsche Telekom Ag Vorrichtung zur Durchführung eines Blockchiffrierverfahrens
TW375721B (en) * 1998-06-17 1999-12-01 Ind Tech Res Inst DES chip processor capable of executing data encryption standard (DES) operation
US6351539B1 (en) 1998-09-18 2002-02-26 Integrated Device Technology, Inc. Cipher mixer with random number generator
US6282073B1 (en) * 1998-12-22 2001-08-28 Act Communications, Inc. Environmentally insensitive surge suppressor apparatus and method
US6985581B1 (en) * 1999-05-06 2006-01-10 Intel Corporation Method and apparatus to verify circuit operating conditions
US6904527B1 (en) 2000-03-14 2005-06-07 Xilinx, Inc. Intellectual property protection in a programmable logic device
US7502463B2 (en) * 2000-12-13 2009-03-10 Broadcom Corporation Methods and apparatus for implementing a cryptography engine
US7142671B2 (en) * 2000-12-13 2006-11-28 Broadcom Corporation Methods and apparatus for implementing a cryptography engine
US7366300B2 (en) * 2000-12-13 2008-04-29 Broadcom Corporation Methods and apparatus for implementing a cryptography engine
KR20020087332A (ko) * 2001-05-14 2002-11-22 최병윤 대칭키 암호 알고리즘의 모듈화된 ecb, cbc, cfb, ofb모드 구현 회로
US7006627B2 (en) * 2001-09-28 2006-02-28 Tarari, Inc. Cipher block chaining mode in encryption/decryption processing
JP2003223098A (ja) * 2002-01-29 2003-08-08 Sony Corp ブーリアン・マトリクスに基づく暗号化処理方法、および復号処理方法、並びにデータ通信システム
US7580519B1 (en) 2003-12-08 2009-08-25 Advanced Micro Devices, Inc. Triple DES gigabit/s performance using single DES engine
US7545928B1 (en) * 2003-12-08 2009-06-09 Advanced Micro Devices, Inc. Triple DES critical timing path improvement
JP4674440B2 (ja) * 2004-03-04 2011-04-20 ソニー株式会社 データ処理回路
US7885405B1 (en) * 2004-06-04 2011-02-08 GlobalFoundries, Inc. Multi-gigabit per second concurrent encryption in block cipher modes
US7526085B1 (en) 2004-07-13 2009-04-28 Advanced Micro Devices, Inc. Throughput and latency of inbound and outbound IPsec processing
US7783037B1 (en) 2004-09-20 2010-08-24 Globalfoundries Inc. Multi-gigabit per second computing of the rijndael inverse cipher
US20100067687A1 (en) * 2004-12-06 2010-03-18 The Trustees Of The Stevens Institute Of Technology Method and apparatus for maintaining data integrity for block-encryption algorithms
US8417965B1 (en) * 2010-04-07 2013-04-09 Xilinx, Inc. Method and circuit for secure definition and integration of cores

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5128959A (en) * 1991-02-22 1992-07-07 Motorola, Inc. Variable bandwidth CDMA radio system
US5377264A (en) * 1993-12-09 1994-12-27 Pitney Bowes Inc. Memory access protection circuit with encryption key

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003037482A (ja) * 2001-01-23 2003-02-07 Hitachi Ltd 疑似乱数生成装置またはそれを用いた暗号復号処理装置
JP2013255261A (ja) * 2009-04-06 2013-12-19 Panasonic Corp 鍵実装システム
KR101224021B1 (ko) * 2011-04-29 2013-01-21 (주)네오와인 암복호화 장치 및 방법
US11838402B2 (en) 2019-03-13 2023-12-05 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption

Also Published As

Publication number Publication date
EP0802652A2 (en) 1997-10-22
US5671284A (en) 1997-09-23

Similar Documents

Publication Publication Date Title
EP0802653B1 (en) Multi-cycle non-parallel data encryption engine
US5671284A (en) Data encryptor having a scalable clock
CN110313146B (zh) 模糊度增强
JP3901909B2 (ja) 暗号化装置およびプログラムを記録した記録媒体
US8503670B2 (en) Parallelizable integrity-aware encryption technique
US8983063B1 (en) Method and system for high throughput blockwise independent encryption/decryption
US6185679B1 (en) Method and apparatus for a symmetric block cipher using multiple stages with type-1 and type-3 feistel networks
US20020041685A1 (en) Data encryption apparatus
US7092525B2 (en) Cryptographic system with enhanced encryption function and cipher key for data encryption standard
US6189095B1 (en) Symmetric block cipher using multiple stages with modified type-1 and type-3 feistel networks
US20030059054A1 (en) Apparatus for generating encryption or decryption keys
Mohurle et al. Review on realization of AES encryption and decryption with power and area optimization
US20040184607A1 (en) Crypto-system with an inverse key evaluation circuit
JP2004157535A (ja) データ暗号化方法
Anusha et al. Analysis and comparison of symmetric key cryptographic algorithms on FPGA
Bajaj et al. AES algorithm for encryption
Landge et al. VHDL based Blowfish implementation for secured embedded system design
EP1629626A1 (en) Method and apparatus for a low memory hardware implementation of the key expansion function
JPH09233065A (ja) 暗号化装置及び暗号化方法
Ajlouni et al. A New Approach in Key Generation and Expansion in Rijndael Algorithm.
KR100546777B1 (ko) Seed 암/복호화 장치, 암/복호화 방법, 라운드 처리 방법, 이에 적합한 f함수 처리기
Abdulsamad et al. Analysis of the Cryptography Methods for Design of Crypto-Processor
Swayamprakash et al. Design of Advanced Encryption Standard using Verilog HDL
KR20020003579A (ko) 비-병렬 다중 사이클 데이터 암호화 장치 및 방법
Mukhopadhyay et al. On the effectiveness of TMTO and exhaustive search attacks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040414

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20051005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060725

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20061025

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061030

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070216