JP2000056679A - Desの鍵スケジュール装置 - Google Patents

Desの鍵スケジュール装置

Info

Publication number
JP2000056679A
JP2000056679A JP10227405A JP22740598A JP2000056679A JP 2000056679 A JP2000056679 A JP 2000056679A JP 10227405 A JP10227405 A JP 10227405A JP 22740598 A JP22740598 A JP 22740598A JP 2000056679 A JP2000056679 A JP 2000056679A
Authority
JP
Japan
Prior art keywords
key
stage
key data
expanded
bit
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
JP10227405A
Other languages
English (en)
Inventor
Soichi Okada
壮一 岡田
Takayuki Hasebe
高行 長谷部
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP10227405A priority Critical patent/JP2000056679A/ja
Publication of JP2000056679A publication Critical patent/JP2000056679A/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
    • 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)

Abstract

(57)【要約】 【課題】 DESにおけるf関数処理を多段化して行う
場合に、小さい回路規模にて高速で各段に拡大鍵を供給
する鍵スケジュール装置を提供する。 【解決手段】 各段でのf関数処理に使用する拡大鍵を
生成する前に、拡大鍵の生成に必要な鍵データをラッチ
するフリップフロップ3を有し、このフリップフロップ
3でラッチした鍵データに基づいて各段の拡大鍵を生成
する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、DES(Data Enc
ryption Standard)で利用される鍵スケジュール装置に
関する。
【0002】
【従来の技術】近年におけるコンピュータネットワーク
の発達により、データベースを検索する機会、電子メー
ル,電子ニュース等の電子化された情報をネットワーク
を経由して送受する機会が急速に増加してきている。し
かしながら、それに伴って、ネットワーク上の電子化さ
れた情報を盗聴する、改竄する、他人になりすましてサ
ービスを無償で受ける等の問題も指摘されている。特
に、無線を利用したネットワークにおいては、傍受が容
易なためにこれらの問題を解決する対策が望まれてい
る。
【0003】このような問題を解決するための有効な手
法として、人類の過去の歴史上主として軍事,外交面で
用いられてきた暗号技術が注目されている。暗号とは、
情報の意味が当事者以外には理解できないように情報を
交換することである。暗号において、誰でも理解できる
元の文(平文)を第三者には意味がわからない文(暗号
文)に変換することが暗号化であり、また、暗号文を平
文に戻すことが復号であり、暗号化の過程及び復号の過
程には、それぞれ暗号化鍵及び復号鍵と呼ばれる秘密の
情報が用いられる。復号時には秘密の復号鍵が必要であ
るので、この復号鍵を知っている者のみが暗号文を復号
でき、暗号化によって情報の秘密性が維持され得る。
【0004】暗号化方式は、大別すると、暗号化鍵と復
号鍵とが同一である対称暗号系(共通鍵暗号系)と、暗
号化鍵と復号鍵とが異なる公開鍵暗号系との二つに分類
できる。この対称暗号系の中の代表的なものとして、米
国商務省標準局が定めたDESがある。以下、このDE
Sについて、「暗号理論入門」,岡本栄司著,共立出版
を参考にして簡単に説明する。
【0005】図6は、DESの暗号化における構成図で
ある。DESは、64ビット入力を64ビット出力に変える
ブロック暗号であり、暗号化処理では、64ビットの平文
を64ビットの暗号文に変換する。また、鍵データも64ビ
ットであるが、そのうちの8ビットはパリティに使用さ
れるので、実質56ビットである。
【0006】図6に示すように、DESでは、64ビット
の平文入力に対して、一定の初期転置IPを施した後、
左右32ビットずつに分けて、同一構造の変換(図6の破
線部)を16段施す。第n段目のf関数処理部(破線部)
のデータ系列入力を(Ln-1,Rn-1 )、鍵系列入力
(拡大鍵)をKn とした場合に、その出力(Ln
n)は、下記式(1),(2)で与えられる。
【0007】
【数1】
【0008】16段の変換の後、左右32ビットを入れ替え
て、初期転置の逆変換IP-1を施して64ビットの暗号文
を得る。
【0009】次に、鍵の流れを説明する。鍵データ入力
64ビットに対して、縮約型転置PC1でパリティ8ビッ
トを除去してビット入替えを行った後、左右28ビットず
つのブロック(C0 ,D0 )に分ける。この縮約型転置
PC1を表1に示す。
【0010】
【表1】
【0011】この縮約型転置PC1に従って、例えば、
入力の第57番目のビットが第1番目に出力され、入力の
第49番目のビットが第2番目に出力される。表1の上4
行がC0 になり、下4行がD0 になる。8の倍数番目
は、パリティなので使われない。これらのブロックは各
々左巡回シフト(LS)を16回受ける。この左巡回シフ
トのシフト量を表2に示す。
【0012】
【表2】
【0013】この左巡回シフトでは、第1,第2段目は
各1ビットのシフト、第3段目は2ビットのシフト、
…、第16段目は1ビットのシフトとなっており、各シフ
ト後に、両ブロックを合わせた56ビット(Cn ,Dn
から、縮約型転置PC2により48ビットが選ばれ、しか
もビット入替えを受けて、前記関数fの入力の1つであ
る拡大鍵Kn になる。このようなことが16段繰り返され
る。16回の左巡回シフトの合計シフト量は28となるよう
に決められており、(C16,D16)は最初の(C 0 ,D
0 )に等しい。この縮約型転置PC2を表3に示す。
【0014】
【表3】
【0015】図7は、DESの復号における構成図であ
る。図7の構成は暗号化の図6の構成とほとんど同じで
あるが、鍵系列が暗号化とは逆の順に拡大鍵K16からK
1 まで使用される点が異なっている。64ビットの暗号文
が入力されると64ビットの元の平文に復号される。
【0016】暗号化過程の最後のIP-1と復号過程の最
初のIPとは互いに逆変換の関係にある。従って、暗号
文を復号過程に入力すると、初めの初期転置IPの後の
データは(R16,L16)となる。ここで上記式(1),
(2)から、下記式(3),(4)が成立するので、第
1段目のf関数処理部(破線部)の変換出力は(R15
15)となる。
【0017】
【数2】
【0018】以下同様にして、最終の第16段目のf関数
処理部(破線部)の変換出力は(R 0 ,L0 )となる。
そして、その左右を交換すると、暗号化過程の初期転置
IP直後のデータ(L0 ,R0 )と等しくなるので、逆
変換IP-1を施せば元の平文になる。
【0019】次に、鍵の流れを説明する。復号過程にお
いて、縮約型転置PC1後の出力(C16,D16)は(C
0 ,D0 )に等しいので、暗号化過程のときのシフト量
の逆の順である右巡回シフト(RS)を16回行えば良
い。この右巡回シフトのシフト量を表4に示す。この結
果、拡大鍵もK16,K15,…,K1 の順に生成できる。
【0020】
【表4】
【0021】このようなDES処理にあっては、1段の
f関数処理を16回ループして行うと、ループ損が大きく
なり、処理速度が低下する。そこで、DES処理の高速
化を図る手法として、f関数処理を多段化して、ループ
損の削減を行うことが試みられている。この多段化の段
数としては、16の約数である2段,4段,8段が考えら
れるが、処理速度と回路規模とを考慮して4段を1組と
する構成が一般的である。この多段化の手法では、各f
関数処理部(図6,図7の破線部)で使用される拡大鍵
を必要な段数分だけ生成して供給する鍵スケジュールを
行う鍵スケジュール装置が必要である。
【0022】図8は、このような鍵スケジュール装置の
基本構成を示すブロック図である。この基本構成の鍵ス
ケジュール装置(以下、基本例という)は、64ビットの
鍵データを56ビットに変換する前述したようなPC1縮
約型転置を行うPC1転置器41と、初期入力の鍵データ
と前段の鍵データとの何れかを選択するセレクタ42と、
各段に応じた前述したような左巡回シフトまたは右巡回
シフトを行う直列に配されたシフタ43,44,45,46と、
各シフタ43,44,45,46の56ビットの出力を48ビットの
拡大鍵に変換する前述したようなPC2縮約型転置を行
うPC2転置器47,48,49,50と、シフタ46の出力をラ
ッチするフリップフロップ51とを備える。
【0023】このような構成により、基本例では、4段
を1単位として各段の拡大鍵を生成してf関数処理装置
へ供給していく。最初のサイクルにおいて、PC1転置
器41にて表1に従ったPC1縮約型転置が行われた鍵デ
ータがセレクタ42で選択され、各シフタ43,44,45,46
で表2または表4に従って0,1 または2ビットのシフ
ト処理が行われ、更に各PC2転置器47,48,49,50に
て表3に従ったPC2縮約型転置が行われ、第1〜第4
段目の拡大鍵1〜4が生成される。次のサイクルでは、
前回の最終段からフィードバックされた鍵データがセレ
クタ42で選択され、同様に第5〜第8段目の拡大鍵1〜
4が生成される。以下、このような動作を繰り返し、4
サイクルで16段分の拡大鍵が生成される。なお、この基
本例では、拡大鍵1においてセレクタ42とシフタ43との
遅延パスがあり、更に、拡大鍵2,3,4と順次シフタ
1個分ずつの遅延が加算される。
【0024】DES処理を高速化するためには、拡大鍵
のスケジュール処理も高速にする必要があり、拡大鍵の
スケジュール処理の高速化を図る鍵スケジュール装置と
して図9に示す構成のものが公知である(USP 5,381,48
0)。図9において、図8と同一の構成部材には同一番号
を付している。この従来の鍵スケジュール装置(以下、
従来例という)は、基本例の構成に加えて、上位3段の
PC2転置器47,48,49の出力をラッチするフリップフ
ロップ52,53,54を更に備えている。
【0025】このような構成により、従来例では、基本
例と同様に、4段を1単位として各段の拡大鍵を生成し
てf関数処理装置に供給していくが、各段の拡大鍵をフ
リップフロップ52,53,54でラッチするようにして、鍵
スケジュールの高速化を図っている。なお、この従来例
では、PC2転置器47,48,49の出力をフリップフロッ
プ52,53,54でラッチしているので、すべての拡大鍵1
〜4において遅延が生じない。
【0026】
【発明が解決しようとする課題】上記従来例では、確か
に各段の拡大鍵をフリップフロップでラッチすることに
より各段での拡大鍵の遅延をなくして、高速な鍵スケジ
ュールを実現できている。しかしながら、DES処理の
速度は、この鍵スケジュールの処理時間だけでなく、f
関数処理での遅延パスにも依存し、しかも、f関数処理
での遅延の方が鍵スケジュールの遅延よりも大きいの
で、1段目の拡大鍵の遅延パスを短縮する必要性はある
が、2段目以降の拡大鍵についてはそのスケジュールに
それほどの高速性は必要としない。また、図9に示す構
成の従来例では図8に示す構成の基本例と比べて、48ビ
ットのフリップフロップが3個増設されており、144 ビ
ット分のフリップフロップだけ回路規模が大きくなると
いう問題がある。
【0027】本発明は斯かる事情に鑑みてなされたもの
であり、従来例より小さい回路規模(基本例と同程度の
回路規模)にて、従来例と同程度のDES処理の高速化
を実現できるDESの鍵スケジュール装置を提供するこ
とを目的とする。
【0028】
【課題を解決するための手段】請求項1に係るDESの
鍵スケジュール装置は、DESにおけるf関数処理が多
段化して関数処理部で行われる場合に、入力された鍵デ
ータに基づいて各段のf関数処理に使用する拡大鍵を生
成して前記関数処理部へ供給する鍵スケジュール装置に
おいて、各段に供給すべき拡大鍵を生成する前に前記鍵
データを保持するラッチ回路を備え、該ラッチ回路で保
持した鍵データで各段の拡大鍵を生成するようにしたこ
とを特徴とする。
【0029】請求項2に係るDESの鍵スケジュール装
置は、請求項1において、初段目のf関数処理に使用す
る拡大鍵に必要な初段鍵データを、前記ラッチ回路での
ラッチ処理の前に、入力された前記鍵データに基づいて
生成する初段鍵処理回路を更に備えることを特徴とす
る。
【0030】請求項3に係るDESの鍵スケジュール装
置は、請求項2において、前記初段鍵処理回路が、暗号
化処理の場合に、入力された前記鍵データを1ビット左
シフトして前記初段鍵データを生成するようにしたこと
を特徴とする。
【0031】請求項4に係るDESの鍵スケジュール装
置は、請求項2において、前記初段鍵処理回路が、復号
処理の場合に、入力された前記鍵データをシフト処理し
ないで前記初段鍵データを生成するようにしたことを特
徴とする。
【0032】図1は、本発明の鍵スケジュール装置(以
下、本発明例という)の構成を示すブロック図である。
本発明例は、64ビットの鍵データを56ビットに変換する
前述したようなPC1縮約型転置を行うPC1転置器1
と、初期入力の鍵(PC1転置器1の出力)と前段の鍵
データ(シフタ7の出力)との何れかを選択するセレク
タ2と、セレクタ2の出力をラッチするフリップフロッ
プ3と、各段に応じた前述したような左巡回シフトまた
は右巡回シフトを行う直列に配されたシフタ4,5,
6,7と、フリップフロップ3,各シフタ4,5,6の
56ビットの出力を48ビットの拡大鍵に変換する前述した
ようなPC2縮約型転置を行うPC2転置器8,9,1
0,11とを備える。
【0033】このような構成により、本発明例では、基
本例,従来例と同様に、4段を1単位として各段の拡大
鍵を生成してf関数処理装置に供給していく。最初のサ
イクルにおいて、PC1転置器1にて表1に従ったPC
1縮約型転置が行われた鍵データがセレクタ2で選択さ
れ、フリップフロップ3でラッチされた後PC2転置器
8にて表3に従ったPC2縮約型転置が行われて、第1
段目の拡大鍵1が生成される。フリップフロップ3の出
力は、各シフタ4,5,6で表2または表4に従って
0,1 または2ビットのシフト処理が行われ、更に各P
C2転置器9,10,11にて表4に従ったPC2縮約型転
置が行われ、第2,第3,第4段目の拡大鍵2,3,4
が生成される。次のサイクルでは、前回の最終段からフ
ィードバックされた鍵データがセレクタ2で選択され、
同様に第5〜第8段目の拡大鍵1〜4が生成される。以
下、このような動作を繰り返し、4サイクルで16段分の
拡大鍵が生成される。
【0034】本発明例では、各サイクルの最上段の拡大
鍵1は、従来例と同じタイミングで生成し、それ以外の
各段の拡大鍵2,3,4は、シフタ1個分ずつ遅延した
タイミングで生成する。
【0035】本発明例における拡大鍵1〜4のスケジュ
ールのタイミングチャートを図2に示す。なお、図2に
は、前述した基本例,従来例における拡大鍵1〜4のス
ケジュールのタイミングチャートも併せて示す。
【0036】基本例では、拡大鍵1においてセレクタ及
びシフタによる遅延があり、拡大鍵2,3,4と順次シ
フタによる遅延が加算される。従来例では、全ての拡大
鍵1〜4にあって遅延が生じておらず、この結果、高速
な鍵スケジュールを実現できている。
【0037】確かに、各サイクルの最上段のf関数処理
における拡大鍵1を高速に生成することはDESの処理
速度の高速化に寄与するが、各サイクルの4段のf関数
処理における2,3,4段目の遅延パスは、鍵スケジュ
ールの遅延パスより大きいので、拡大鍵2,3,4のス
ケジュールにあっては、拡大鍵1から多少の遅延が生じ
てもDESの処理速度には影響を与えない。よって、従
来例のように拡大鍵2,3,4も遅延が生じないように
構成する必要はない。
【0038】そこで、本発明例では、セレクタ2の出力
である鍵データをフリップフロップ3でラッチして拡大
鍵1を生成するが、残りの拡大鍵2,3,4はフリップ
フロップでラッチしない構成にしている。つまり、各サ
イクルの最上段のf関数処理における拡大鍵1は従来例
と同様に遅延なく生成するが、他の拡大鍵2,3,4は
シフタ1個分ずつ遅延したタイミングで生成する。
【0039】このようにしても、シフタによる遅延パス
よりもf関数処理における遅延パスが大きいので、従来
例と同様に、高速な鍵スケジュールを実現できる。本発
明例では、従来例のように多数のフリップフロップを設
ける必要がなく、従来例と比べて回路規模を大幅に削減
できる。以上のように、本発明例では、基本例と同程度
の小さな回路規模にて、従来例と同程度の鍵スケジュー
ルの高速化を達成できる。
【0040】
【発明の実施の形態】以下、本発明をその実施の形態を
示す図面を参照して具体的に説明する。図3は、本発明
例の一実施の形態の構成を示すブロック図である。図3
において、図1と同一部分には同一番号を付してそれら
の説明は省略する。PC1転置器1とセレクタ2との間
には、第1段目の拡大鍵を生成するために必要な先行処
理を行う初段鍵処理器12が設けられている。
【0041】この初段鍵処理器12及び各シフタ4,5,
6,7には、暗号化過程であるか復号過程であるかを示
す暗号化/復号信号が入力される。また、セレクタ2に
は同期信号が入力される。更に、各シフタ4,5,6,
7には、鍵データのシフト量(1ビットか2ビットか)
を示すシフト信号が入力される。
【0042】図4は、各シフタ4,5,6,7の回路構
成図である。各シフタ4,5,6,7は、入力データを
左に1ビットだけシフトする第1シフタ21と、入力デー
タを左に2ビットだけシフトする第2シフタ22と、入力
データを右に1ビットだけシフトする第3シフタ23と、
入力データを右に2ビットだけシフトする第4シフタ24
と、シフト信号に基づいて第1シフタ21及び第2シフタ
22の何れかの出力を選択する第1セレクタ25と、シフト
信号に基づいて第3シフタ23及び第4シフタ24の何れか
の出力を選択する第2セレクタ26と、暗号化/復号信号
に基づいて第1セレクタ25及び第2セレクタ26の何れか
の出力を選択する第3セレクタ27とを有する。
【0043】このような構成の各シフタ4,5,6,7
では、それぞれセレクタ2段分の遅延がある。なお、各
PC2転置器8,9,10,11は、ビットの転置処理を行
うものであって、結線だけで機能を実現できるので遅延
の要素にはならない。
【0044】また、図5は、初段鍵処理器12の回路構成
図である。初段鍵処理器12は、入力データを左に1ビッ
トだけシフトするシフタ31と、暗号化/復号信号に基づ
いてシフタ31の出力または入力データそのものの何れか
を選択するセレクタ32とを有する。
【0045】次に、動作について説明する。まず、最初
のサイクルにおいて、64ビットの鍵データがPC1転置
器1に入力され、表1に従ったPC1縮約型転置が行わ
れて56ビットの鍵データに変換されて初段鍵処理器12へ
出力される。初段鍵処理器12において、暗号化過程では
表2の1段目の左シフト量(1ビット)に従い、復号過
程では表4の1段目の右シフト量(0ビット)に従っ
て、先行シフト処理が行われる。即ち、PC1転置後の
56ビットの鍵データの左28ビット、右28ビットのそれぞ
れに対して、暗号化過程では左に1ビットだけシフトさ
せ、復号過程ではシフトせずそのまま、初段鍵処理器12
からセレクタ2へ出力する。具体的には、初段鍵処理器
12において、暗号化時には、暗号化過程であることを示
す暗号化/復号信号の入力に応じてセレクタ32がシフタ
31の出力を選択して出力し、復号時には、復号過程であ
ることを示す暗号化/復号信号の入力に応じてセレクタ
32がスルーされたデータを選択して出力する。
【0046】セレクタ2は、この初段鍵処理器12からの
入力を選択してフリップフロップ3へ出力し、フリップ
フロップ3は入力された鍵データをラッチした後PC2
転置器8及びシフタ4へ出力する。PC2転置器8では
表3に従ったPC2縮約型転置が行われて第1段目の48
ビットの拡大鍵1が生成される。この際、セレクタ2の
次にフリップフロップ3でラッチするので、従来例と同
様に拡大鍵1の生成に遅延は生じない(図2参照)。
【0047】シフタ4において、暗号化過程では表2の
2段目の左シフト量(1ビット)に従った左に1ビット
だけシフトさせるシフト処理が、復号過程では表4の2
段目の右シフト量(1ビット)に従った右に1ビットだ
けシフトさせるシフト処理が行われる。具体的には、暗
号化時には、シフト量が1ビットであることを示すシフ
ト信号及び暗号化過程であることを示す暗号化/復号信
号の入力に応じて第1セレクタ25及び第3セレクタ27が
第1シフタ21の出力を選択して出力し、復号時には、シ
フト量が1ビットであることを示すシフト信号及び復号
過程であることを示す暗号化/復号信号の入力に応じて
第2セレクタ26及び第3セレクタ27が第3シフタ23の出
力を選択して出力する。シフタ4でのシフト処理後の鍵
データはPC2転置器9及びシフタ5に入力される。
【0048】PC2転置器9では表3に従ったPC2縮
約型転置が行われて第2段目の48ビットの拡大鍵2が生
成される。この際、拡大鍵2の生成は従来例と比べてシ
フタ1個分だけ遅延するが(図2参照)、この遅延量は
f関数処理での遅延に比べて小さいのでDES全体の処
理速度には影響しない。
【0049】シフタ5において、暗号化過程では表2の
3段目の左シフト量(2ビット)に従った左に2ビット
だけシフトさせるシフト処理が、復号過程では表4の3
段目の右シフト量(2ビット)に従った右に2ビットだ
けシフトさせるシフト処理が行われる。具体的には、暗
号化時には、シフト量が2ビットであることを示すシフ
ト信号及び暗号化過程であることを示す暗号化/復号信
号の入力に応じて第1セレクタ25及び第3セレクタ27が
第2シフタ22の出力を選択して出力し、復号時には、シ
フト量が2ビットであることを示すシフト信号及び復号
過程であることを示す暗号化/復号信号の入力に応じて
第2セレクタ26及び第3セレクタ27が第4シフタ24の出
力を選択して出力する。シフタ5でのシフト処理後の鍵
データはPC2転置器10及びシフタ6に入力される。
【0050】PC2転置器10では表3に従ったPC2縮
約型転置が行われて第3段目の48ビットの拡大鍵3が、
シフタ2個分だけ遅延して生成される(図2参照)。
【0051】シフタ6において、シフタ5と同様のシフ
ト処理(暗号化時には表2の4段目に従った左への2ビ
ットのシフト、復号時には表4の4段目に従った右への
2ビットのシフト)が行われて、そのシフト処理後の鍵
データはPC2転置器11及びシフタ7に入力される。そ
して、PC2転置器11では表4に従ったPC2縮約型転
置が行われて第4段目の48ビットの拡大鍵4が、シフタ
3個分だけ遅延して生成される(図2参照)。
【0052】シフタ7において、シフタ5と同様のシフ
ト処理(暗号化時には表2の5段目に従った左への2ビ
ットのシフト、復号時には表4の5段目に従った右への
2ビットのシフト)が行われて、そのシフト処理後の鍵
データはセレクタ2に入力される。
【0053】第2回目のサイクルにおいて、セレクタ2
は、シフタ7からの入力を選択してフリップフロップ3
へ出力し、フリップフロップ3は入力された鍵データを
ラッチした後PC2転置器8及びシフタ4へ出力する。
そして、PC2転置器8で、第5段目の48ビットの拡大
鍵1が遅延なく生成される(図2参照)。
【0054】その後、第2〜第4段目と同様に、第6〜
第8段目の拡大鍵2〜4が生成される。以下、同様に、
第3回目,第4回目のサイクルが実施されて、4サイク
ルで16段分の拡大鍵が生成される。
【0055】
【発明の効果】以上のように本発明では、48ビットの拡
大鍵を生成する前に56ビットの鍵データを保持するラッ
チ回路(フリップフロップ)を設け、16段のうちの最初
の1段目の拡大鍵を先行処理するようにしたので、小さ
な回路規模であっても鍵スケジュールの高速化を図るこ
とができる。
【図面の簡単な説明】
【図1】本発明の鍵スケジュール装置(本発明例)の構
成を示すブロック図である。
【図2】鍵スケジュールのタイミングチャートである。
【図3】本発明の鍵スケジュール装置の一実施の形態の
構成を示すブロック図である。
【図4】シフタの回路構成図である。
【図5】初段鍵処理器の回路構成図である。
【図6】DESの暗号化における構成図である。
【図7】DESの復号における構成図である。
【図8】鍵スケジュール装置(基本例)の構成を示すブ
ロック図である。
【図9】従来の鍵スケジュール装置(従来例)の構成を
示すブロック図である。
【符号の説明】
1 PC1転置器 2 セレクタ 3 フリップフロップ 4,5,6,7 シフタ 8,9,10,11 PC2転置器 12 初段鍵処理器

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 DESにおけるf関数処理が多段化して
    関数処理部で行われる場合に、入力された鍵データに基
    づいて各段のf関数処理に使用する拡大鍵を生成して前
    記関数処理部へ供給する鍵スケジュール装置において、
    各段に供給すべき拡大鍵を生成する前に前記鍵データを
    保持するラッチ回路を備え、該ラッチ回路で保持した鍵
    データで各段の拡大鍵を生成するようにしたことを特徴
    とするDESの鍵スケジュール装置。
  2. 【請求項2】 初段目のf関数処理に使用する拡大鍵に
    必要な初段鍵データを、前記ラッチ回路でのラッチ処理
    の前に、入力された前記鍵データに基づいて生成する初
    段鍵処理回路を更に備える請求項1記載のDESの鍵ス
    ケジュール装置。
  3. 【請求項3】 前記初段鍵処理回路は、暗号化処理の場
    合に、入力された前記鍵データを1ビット左シフトして
    前記初段鍵データを生成するようにした請求項2記載の
    DESの鍵スケジュール装置。
  4. 【請求項4】 前記初段鍵処理回路は、復号処理の場合
    に、入力された前記鍵データをシフト処理しないで前記
    初段鍵データを生成するようにした請求項2記載のDE
    Sの鍵スケジュール装置。
JP10227405A 1998-08-11 1998-08-11 Desの鍵スケジュール装置 Pending JP2000056679A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10227405A JP2000056679A (ja) 1998-08-11 1998-08-11 Desの鍵スケジュール装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10227405A JP2000056679A (ja) 1998-08-11 1998-08-11 Desの鍵スケジュール装置

Publications (1)

Publication Number Publication Date
JP2000056679A true JP2000056679A (ja) 2000-02-25

Family

ID=16860326

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10227405A Pending JP2000056679A (ja) 1998-08-11 1998-08-11 Desの鍵スケジュール装置

Country Status (1)

Country Link
JP (1) JP2000056679A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004004603A (ja) * 2002-04-03 2004-01-08 Matsushita Electric Ind Co Ltd 拡大鍵生成装置、暗号化装置および暗号化システム
KR20050087271A (ko) * 2004-02-26 2005-08-31 삼성전자주식회사 가변 키 길이를 가지는 초기 라운드 키에 대응하는 암호라운드 키와 복호 라운드 키를 선택적으로 발생하는 키스케쥴 장치
JP2011503665A (ja) * 2007-11-19 2011-01-27 西安西電捷通無線網絡通信有限公司 パケット暗号化アルゴリズムに基づく暗号化処理方法
JP2011503666A (ja) * 2007-11-19 2011-01-27 西安西電捷通無線網絡通信有限公司 パケット暗号化アルゴリズムに基づく暗号化処理装置
US8457306B2 (en) 2006-09-01 2013-06-04 Kabushiki Kaisha Toshiba Cryptographic module and IC card

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004004603A (ja) * 2002-04-03 2004-01-08 Matsushita Electric Ind Co Ltd 拡大鍵生成装置、暗号化装置および暗号化システム
JP4515716B2 (ja) * 2002-04-03 2010-08-04 パナソニック株式会社 拡大鍵生成装置、暗号化装置および暗号化システム
KR20050087271A (ko) * 2004-02-26 2005-08-31 삼성전자주식회사 가변 키 길이를 가지는 초기 라운드 키에 대응하는 암호라운드 키와 복호 라운드 키를 선택적으로 발생하는 키스케쥴 장치
US8457306B2 (en) 2006-09-01 2013-06-04 Kabushiki Kaisha Toshiba Cryptographic module and IC card
JP2011503665A (ja) * 2007-11-19 2011-01-27 西安西電捷通無線網絡通信有限公司 パケット暗号化アルゴリズムに基づく暗号化処理方法
JP2011503666A (ja) * 2007-11-19 2011-01-27 西安西電捷通無線網絡通信有限公司 パケット暗号化アルゴリズムに基づく暗号化処理装置
US8385540B2 (en) 2007-11-19 2013-02-26 China Iwncomm Co., Ltd. Block cipher algorithm based encryption processing method

Similar Documents

Publication Publication Date Title
US5745577A (en) Symmetric cryptographic system for data encryption
EP1191737A2 (en) Data encryption apparatus
EP0618701B1 (en) Hardware arrangement for enciphering bit blocks while renewing a key at each iteration
JPH11509940A (ja) データブロックおよび鍵を非線形的に結合する暗号方法および装置
JP2002023622A (ja) 暗号化装置、復号装置及び拡大鍵生成装置、拡大鍵生成方法並びに記録媒体
GB2383860A (en) Apparatus for encryption and decrytion, capable of use in encryption and decryption of Advanced Encryption Standard (RIJNDAEL)
US20070291935A1 (en) Apparatus for supporting advanced encryption standard encryption and decryption
US6272221B1 (en) Encryption apparatus and computor-readable recording medium containing program for realizing the same
US6732271B1 (en) Method of deciphering ciphered data and apparatus for same
Gielata et al. AES hardware implementation in FPGA for algorithm acceleration purpose
JP2000056679A (ja) Desの鍵スケジュール装置
Balamurugan et al. High speed low cost implementation of advanced encryption standard on fpga
JP2000209195A (ja) 暗号通信システム
Rais et al. A novel FPGA implementation of AES-128 using reduced residue of prime numbers based S-Box
Lam et al. Implementation of lightweight cryptography core PRESENT and DM-PRESENT on FPGA
KR100668664B1 (ko) Aes 라인달 블록 알고리즘을 이용하는 암호화/복호화장치 및 방법
JP2000075785A (ja) 高速暗号処理回路および処理方法
Chakole et al. Design of advanced encryption standard algorithm
KR20160108861A (ko) 경량 블록암호 lea 기반 암호화 및 복호화 장치
JPH09269727A (ja) 暗号化方法および暗号化装置
JP2002108205A (ja) ブロック暗号方法及び復号方法
RU2309549C2 (ru) Способ криптографического преобразования цифровых данных
JPH10153954A (ja) 暗号装置
Rais et al. FPGA implementation of Rijndael algorithm using reduced residue of prime numbers
Sharma et al. Comparative analysis of des and s-des encryption algorithm using verilog coding

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040928

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20041221