Nothing Special   »   [go: up one dir, main page]

JP2000295212A - 暗号データの復号化処理方法および装置 - Google Patents

暗号データの復号化処理方法および装置

Info

Publication number
JP2000295212A
JP2000295212A JP11094744A JP9474499A JP2000295212A JP 2000295212 A JP2000295212 A JP 2000295212A JP 11094744 A JP11094744 A JP 11094744A JP 9474499 A JP9474499 A JP 9474499A JP 2000295212 A JP2000295212 A JP 2000295212A
Authority
JP
Japan
Prior art keywords
data
encryption
chain value
des
decryption
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
JP11094744A
Other languages
English (en)
Other versions
JP3824121B2 (ja
Inventor
Kazuhiko Sako
和彦 迫
Satoru Kokuni
哲 小國
Takatsugu Tamura
卓嗣 田村
Naoki Hirayama
直紀 平山
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP09474499A priority Critical patent/JP3824121B2/ja
Priority to US09/540,268 priority patent/US6732271B1/en
Publication of JP2000295212A publication Critical patent/JP2000295212A/ja
Application granted granted Critical
Publication of JP3824121B2 publication Critical patent/JP3824121B2/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/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Landscapes

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

Abstract

(57)【要約】 【課題】 DES暗号機構などにおいて、CBC方式や
CFB方式などの動作モードでの暗号データ復号化の高
速化を実現する。 【解決手段】 DES演算器310,320に次演算用
連鎖値生成部314,324を設ける。DES演算器3
10では、暗号化コア部315での暗号文データ301
の復号化処理と平行して、連鎖値生成部314において
次演算用の連鎖値330を生成し、DES演算器320
へ送る。DES演算器320では、DES演算器310
の復号化処理とオーバーラップさせて、該連鎖値により
次の暗号文データ303の復号化処理を暗号化コア部3
23で実行し、これと平行して同様に、連鎖値生成部3
24において、その次の演算用の連鎖値331を生成
し、DES演算器310へ送る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、CBC(Cipher
Block Chaining)方式やCFB(CipherFeedback)
方式などのように、あるブロックの暗号化/復号化が次
のブロックの暗号化/復号化に影響を与える暗号方式に
おいて、特に暗号データの高速な復号化を実現する復号
化処理方法および装置に関する。
【0002】
【従来の技術】暗号化は、データ通信ネットワーク上を
流れるデータやコンピュータシステムに蓄積されている
データを保護するための基本的な技術の1つであり、不
当な第3者がデータを利用できないような形にデータを
変換することである。データを通信する際には、「暗号
化」の操作により、送信側は普通の通信文である「平
文」をそのまま見ても理解できない「暗号文」にする。
受信側は、この暗号文を「復号化」の操作により平文に
戻す。この際、暗号化および復号化を制御するためのパ
ラメータを「鍵」とよび、受信側では、この鍵を用いて
容易に暗号文を復号化することができる。
【0003】暗号通信においては、暗号強度が高い、す
なわち、第3者に通信内容が解読されにくいこととも
に、正規の送信者および受信者が実用上支障が発生しな
いよう、暗号化および復号化を高速に行えることが重要
となる。
【0004】データ通信の分野でもっとも広く普及して
いる暗号化方式としてDES(DataEncryption Stand
ard)がある。DESはアメリカ連邦政府機関の標準デ
ータ暗号化規格とされているだけでなく、民間でも広く
普及している。DESは、平文を64ビットごとにブロ
ック化し、平文64ビットを56ビットの鍵を用いて暗
号化し、64ビットの暗号文をつくりだす暗号方式であ
る。これを実現するDES暗号機構の主要部(暗号化コ
ア部)は16段のDES暗号化段からなり、平文64ビ
ットを32ビット、32ビットに分け、56ビットの鍵
から48ビットの鍵K1〜K16を逐次生成し、16回
の転置処理を繰り返して暗号文64ビットを出力する構
成をとる。
【0005】米国規格協会(ANSI)では、DESに
四つのモードの動作方式を定めている(ANSI X
3.106−1983)。すなわち、ECB(Electri
cCodebook)方式、CBC(Cipher Block Chainin
g)方式、CFB(CipherFeedback)方式、そしてO
FB(Output Feedback)方式である。このうち、E
CB方式では、各64ビットを個別に暗号化する。この
ため、ECB方式では複数のDES暗号演算器で並列に
処理するか、または、DES暗号演算器のパイプライン
化により、他の3つの方式と比較して高速な暗号化/復
号化が可能であるが、暗号強度は低くなる。一方、CB
C、CFBそしてOFB方式では、あるブロックの暗号
化/復号化が次のブロックの暗号化/復号化に影響をあ
たえる。このため、ECB方式と比較して暗号強度が強
くなるが、並列処理を有効に活用できなく、この結果E
CB方式と比較して高速化が困難である。
【0006】一般的に、DESの暗号化および復号化
は、ECB,CBC,CFB、そしてOFBのすべての
方式において、暗号化の核となる16段のDES暗号化
段の実行にもっとも多くの処理時間を要し、その前後の
処理はDES暗号化段の実行と比較して処理時間は非常
に小さい。従来の高速化手法は、DES暗号化段以外の
処理時間の小さい分の処理を高速化することで、DES
暗号機構の高速化が行われてきた。例えば、特開平10
−74044号公報では、暗号化段にデータを入力した
後、適切なサイクル数後に出力レジスタに暗号化/復号
化されたデータを取り出すという手法を開示している。
この手法を用いることにより、DES暗号化段以外の部
分をDES暗号化段の処理時間よりも高速なクロック周
波数で動作させることが可能になり、DES暗号機構の
あらゆる動作方式で、暗号化および復号化を高速に動作
させることが可能になる。
【0007】
【発明が解決しようとする課題】しかしながら、かかる
従来の方法においては次のような問題がある。すなわ
ち、クロック周波数をあげることにより、ある平文デー
タが入力されてから暗号文データが出力されるまで、ま
たは、ある暗号文データが入力されてから平文データが
出力されるまでの時間の高速化が可能になるが、データ
のスループットは、並列処理が困難なCBC,CFBお
よびOFB方式においては、DES暗号機構において最
も処理時間を要するDES暗号化段のスループットが上
限になる。
【0008】図5に、DES暗号機構のCBC,CF
B,OFB方式の復号化において従来適用されてきた実
施形態を示す。DES演算器510はデータ入力レジス
タ511、連鎖値レジスタ512、入力データ生成部5
13、暗号化コア部515、出力データ・次演算用連鎖
値生成部516、データ出力レジスタ517で構成され
る。暗号化コア部515は16段からなるDES暗号化
段により構成され、最も処理時間を要する部分である。
図5では、復号化の実施形態を示しているが、暗号化の
実施形態も同様である。
【0009】CBC,CFB,OFB方式の復号化の場
合、データ入力レジスタ511に暗号文データ501お
よび連鎖値レジスタ512に初期ベクトル(連鎖値の初
期値)502がセットされる。次に、データ入力レジス
タ513および連鎖値レジスタ514から入力データ生
成部513を経て生成された入力データは、暗号化コア
部515により復号化され、該暗号化コア部515の出
力とともにデータ入力レジスタ511および連鎖値レジ
スタ512の出力が、出力データ・次演算用連鎖値生成
部516に入力され、該出力データ・次演算用連鎖値生
成部516により、平文データ504および次演算用連
鎖値530が生成される。そして、次演算用連鎖値53
0は連鎖値レジスタ512にセットされ、次の暗号文デ
ータを復号化する際に利用される。
【0010】図6に、この従来の実施形態を用いた場合
のCBC,CFB,OFB方式の復号化のタイミングチ
ャートを示す。図6では、図5におけるデータ入力レジ
スタ511および連鎖値レジスタ512から暗号化コア
部515に到達するまでの時間を1サイクル、暗号化コ
ア部515の実行時間を8サイクル、そして、暗号化コ
ア部515の実行が終了してから連鎖値レジスタ512
に次演算用の連鎖値がセットされるまでの時間を1サイ
クルと仮定している。
【0011】従来の実施形態では、CBC,CFB,O
FB方式のいずれの復号化の場合でも、データ入力レジ
スタ511に暗号文データD0、連鎖値レジスタ511
に初期ベクトルC0をセットし、入力データ生成部51
を経て暗号化コア部515の実行を開始する。その後、
暗号化コア部515の実行が終了し、暗号化コア部51
5から出力データE0が出力されると、出力データ・次
演算用連鎖値生成部516により、平文データAOを出
力するとともに、次の連鎖値C1を連鎖値レジスタ51
2にセットし、これと前後してデータ入力レジスタ51
1にセットされた次のデータD1に対する暗号化コア部
515の実行を開始する。この結果、平文データの出力
間隔は10サイクルとなり、図5における暗号化コア部
515の実行の前後処理を効率化しても、暗号化コア部
515の実行時間より高速なスループットを達成できな
い。
【0012】このように、従来は、あるデータブロック
が後続のデータブロックの暗号化/復号化に影響を与え
るCBC,CFB,OFB方式の場合、いずれも一律に
暗号化コア部での実行後、次のデータのための連鎖値を
生成しており、データのスループットを向上させるのに
限界があった。
【0013】ところで、CBC,CFB,OFB方式の
復号化において、次演算用連鎖値の生成に暗号化コア部
の出力データを必要とするのはOFB方式だけであり、
CBCおよびCFB方式では、入力データおよび/また
は前の連鎖値から次演算用の連鎖値を生成するアルゴリ
ズムを用いており、連鎖値の生成に、暗号化コア部の出
力データは不要である。
【0014】本発明は、上記CBC,CFB方式のアル
ゴリズムに着目するものであり、その目的は、CBC,
CFB,OFB方式の暗号化/復号化の内、CBCおよ
びCFB方式の復号化において、データのスループット
を向上させる処理方法および装置を提供することにあ
る。
【0015】
【課題を解決するための手段】本発明は、DES暗号機
構などのCBC,CFBモードの復号化において、ある
暗号データの復号化時に、次の暗号データの復号化に必
要な連鎖値を先行して生成することを主要な特徴とする
ものである。これにより、1つ以上のDES演算器で、
データの連続的な復号化、あるいは同時に複数のデータ
の復号化が可能になり、データのスループットを向上で
きる。一般に、次のデータの復号化用の連鎖値の生成時
間は16段からなるDES暗号化段の実行時間より非常
に小さい。このため、適切なタイミングで連鎖値を生成
することにより、1つのDES演算器で1度に1つの復
号化を処理できる場合、例えば2つのDES演算器で2
倍のスループットを確保することができる。
【0016】さらに、本発明はDES暗号機構に限ら
ず、次演算用連鎖値の生成に暗号化コア部の出力データ
を必要としないCBC方式およびCFB方式などの動作
モードを有するあらゆる暗号機構において、適用するこ
とができる。
【0017】
【発明の実施の形態】以下、本発明の一実施の形態につ
いて図面により説明する。図1にCBC方式でのデータ
暗号化/復号化の概念図を示す。図1の(A)に示すよ
うに、CBC方式の暗号化は、平文データA101が入
力されると、該平文データA101は初期ベクトル(連
鎖値の初期化)171とXOR(排他的論理和)151
がとられ、その出力データ161が暗号化コア部11
1、すなわち16段からなるDES暗号化段に入力され
て暗号化される。暗号化コア部111から出力されたデ
ータは、暗号文データA121であると同時に、次の平
文データB102を暗号化するための連鎖値172とな
る。平文データB102は該連鎖値172とXOR15
2がとられ、その出力データ102が暗号化コア部11
2に入力され、該暗号化コア部112の出力データは暗
号文データB112であると同時に、次の平文データの
暗号化のための連鎖値173となる。以下、各平文デー
タについて同様の動作を繰り返す。
【0018】一方、CBC方式の復号化では、図1の
(B)に示すように、暗号文データA121は、暗号化
コア部131に入力される。暗号化コア部131から出
力されたデータは、初期ベクトル191とXOR181
をとられ、平文データA141として出力される。この
とき、入力された暗号文データA121は、次の暗号文
データB122を復号化するための連鎖値192として
利用される。暗号文データB122は、暗号化コア部1
32に入力されて復号化され、その出力データは、連鎖
値192とXOR182をとられ、平文データB142
として出力される。このときも、暗号文データB122
は、次の暗号文データを復号化するための連鎖値193
として利用される。
【0019】以上のように、CBC方式では、暗号化で
は処理時間の大きい暗号化コア部の出力データを、次の
暗号化で利用するため高速化が困難であるが、復号化で
は、暗号化コア部の出力データを次のデータの復号化で
利用しないため、処理時間の大きい暗号化コア部を並行
して実行することにより、データのスループットを向上
させることが可能になる。この際、複数の暗号化コア部
の実行は同時である必要はない。また、暗号化コア部が
一つの場合でも、該暗号化コア部を連続的に実行するこ
とにより、データのスループットが向上する。さらに、
暗号化コア部はDES暗号化段である必要はなく、他の
暗号機構でもよい。これは次に示すCFB方式の場合で
も同様である。
【0020】図2にCFB方式でのデータ暗号化/復号
化の概念図を示す。図2の(A)に示すように、CFB
方式の暗号化においては、初期ベクトル(64ビット)
201が暗号化コア部206の入力222となり、該暗
号化コア部206の出力上位nビット229と平文デー
タA(nビット)208とのXOR210がとれ、暗号
文データ(nビット)212として出力される。この暗
号文データA212のnビットと初期ベクトル201の
下位(64−n)ビット221とがマージ204され
(212が下位ビット、221が上位ビットにマー
ジ)、次平文データを暗号化するための連鎖値(64ビ
ット)202となる。該連鎖値202は暗号化コア部2
07の入力226となり、該暗号化コア部207の出力
上位nビット230と平文データB(nビット)209
とのXOR211がとられ、暗号文データB(nビッ
ト)213として出力される。そして、この暗号文デー
タB213のnビットと連鎖値202の下位(64−
n)225とがマージ205され、次平文データを暗号
化するための連鎖値(64ビット)203となる。
【0021】このCFB方式の復号化においては、図2
の(B)に示すように、初期ベクトル(64ビット)2
51が暗号化コア部256の入力272となり、該暗号
化コア部256の出力上位ビット279と暗号文データ
A(nビット)258のXOR260がとられ、平文デ
ータA(nビット)262として出力される。このと
き、暗号文データA258のnビットと初期ベクトル2
51の下位(64−n)ビット271とがマージ254
され、連鎖値(64ビット)252が生成される。該連
鎖値252は暗号化コア部257の入力276となり、
該暗号化コア部257の出力上位nビット280と暗号
文データB(nビット)259とのXOR261がとら
れ、平文データB(nビット)263として出力され
る。このときも、暗号文データB259のnビットと連
鎖値252の下位(64−n)ビット275とがマージ
255され、次の連鎖値(64ビット)253が生成さ
れる。
【0022】このCFB方式の復号化もCBCの復号化
と同様のことが適用される。すなわち、暗号化において
は、暗号化コア部206の出力データ229がXOR、
マージ処理後,平文データBの暗号化のたのために利用
される暗号化コア部207の入力データ226として利
用されるため、高速化が困難であるが、復号化の場合
は、暗号化コア部257の実行には、初期ベクトル25
1および暗号文データA258のマージ結果を必要とす
るのみのため、暗号化コア部256を実行中に、次の暗
号文データB259に対する暗号化コア部257を実行
することにより、データのスループットを向上させるこ
とができる。この際、CBC方式と同様に、複数の暗号
化コア部の実行は同時である必要はない。また、一つの
暗号化コア部を連続的に実行することでもよい。
【0023】図3に、本発明を適用したDES暗号機構
のCBC方式およびCFB方式の復号化の実施形態の構
成図を示す。本実施の形態ではDES暗号機構は、2つ
のDES演算器310と320より構成されるとする。
他にはCBCとCFBの動作モードを切り替えるなどの
制御部を具備するが、図3では省略してある。
【0024】図3において、一方のDES演算器310
はデータ入力レジスタ311、連鎖値レジスタ312、
入力データ生成部313、次演算用連鎖値生成部31
4、暗号化コア部315、出力データ生成部316で構
成される。他方のDES演算器320の構成も、DES
演算器310とまったく同様である。DES演算器31
0の次演算用連鎖値生成部314の出力330はDES
演算器320の連鎖値レジスタ322の入力となり、D
ES演算器320の次演算用連鎖値生成部324の出力
331はDES演算器310の連鎖値レジスタ312の
入力となる。各々のDES演算器310、320の暗号
化コア部315は16段からなるDES暗号化段により
構成されている。
【0025】なお、図3では、DES演算器は2つとな
っているが、3つ以上でも良く、また、データ入力レジ
スタ311と連鎖値レジスタ312の値を保持する機構
を持てば、DES演算器はパイプライン構造を持つなど
して、あるDES暗号演算実行中に、次のDES暗号演
算が実行可能な1つのDES演算器でもかまわない。ま
た、データのスループットは少し縮退するが、単純に一
つのDES演算器で暗号化コア部を連続動作とすること
でもよい。さらに、暗号機構は、DES暗号機構である
必要はなく、CBCおよびCFB方式を有するあらゆる
暗号機構に適用される。
【0026】最初、CBC方式の復号化の場合の動作に
ついて説明する。まず、DES演算器310のデータ入
力レジスタ311に暗号文データ301および連鎖値レ
ジスタ312に初期ベクトル302がセットされる。C
BC方式では、データ入力レジスタ311の暗号文デー
タが入力データ生成部313で選択されて暗号化コア部
315の入力となる。該暗号化コア部315での復号化
終了後、出力データ生成部316において、該暗号化コ
ア部313の出力データと連鎖値レジスタ312の値か
ら平文データ304が生成される。ここで、データ入力
レジスタ311の暗号文データは次演算用連鎖値生成部
314にも入力され、該次演算用連鎖値生成部314に
より、暗号化コア部315においてデータの復号化が実
行さる前または実行中に、次の演算用の連鎖値330が
生成され、DES演算器320内に存在する連鎖値レジ
スタ322にセットされる。次の暗号文データ303
は、該DES演算器320内のデータ入力レジスタ32
1にセットされ、これが入力データ生成部323で選択
されて暗号化コア部325の入力となる。該暗号化コア
部325の出力データと連鎖値レジスタ322の値か
ら、出力データ生成部326において平文データ305
が生成される。このDES演算器320でも、暗号化コ
ア部315でデータの復号化が実行される前または実行
中に、次演算用連鎖値生成部324において、データ入
力レジスタ321にセットされた暗号文データから次の
演算用の連鎖値331が生成され、DES演算器310
の連鎖値レジスタ312にセットされる。この時、DE
S演算器310内のデータ入力レジスタ311には、次
の暗号文データがセットされている。そして、これ以降
同様の動作を繰り返すことになる。
【0027】次に、CFB方式の復号化の場合の動作に
ついて説明する。まず、DES演算器310のデータ入
力レジスタ311に暗号文データ301および連鎖値レ
ジスタ312に初期ベクトル302がセットされる。C
FB方式では、連鎖値レジスタ312の値が入力データ
生成部313で選択されて暗号化コア部315の入力と
なり、出力データ生成部316において、該暗号化コア
部315の出力データとデータ入力レジスタ311の暗
号文データから平文データ304が生成される。CFB
方式でも、データ入力レジスタ311の暗号文データお
よび連鎖値レジスタ312にセットされた値から、次演
算用連鎖値生成部314により、暗号化コア部315に
おいてデータの復号化が実行さる前または実行中に、次
の演算用の連鎖値330が生成され、DES演算器32
0内に存在する連鎖値レジスタ322にセットされる。
これと前後して、該DES演算器320内のデータ入力
レジスタ303には、次の暗号文データ303がセット
される。DES演算器320では、連鎖値レジスタ32
2の値が入力データ生成部323で選択されて暗号化コ
ア部325の入力となり、出力データ生成部326にお
いて、該暗号化コア部325の出力データとデータ入力
レジスタ321の暗号文データから平文データ305が
生成される。このDES演算器320でも、暗号化コア
部325でデータの復号化が実行される前または実行中
に、次演算用連鎖値生成部324において、データ入力
レジスタ321と連鎖値レジスタ322にセットされた
値から次の演算用の連鎖値331が生成され、DES演
算器310内の連鎖値レジスタ312にセットされる。
そして、これ以降同様の動作を繰り返すことになる。
【0028】図3において、データ入力レジスタ311
および連鎖値レジスタ312から次演算用連鎖値314
を経由して連鎖値レジスタ322にいたる経路、同様
に、データ入力レジスタ321や連鎖値レジスタ322
から次演算用連鎖値生成部324を経由して連鎖値レジ
スタ312にいたる経路にかかる時間は、非常に複雑な
演算を実行する暗号化コア部315、325の実行時間
と比較して充分に小さい。したがって、各々のデータ入
力レジスタ311、321および連鎖値レジスタ31
2、322にデータを適切なタイミングでセットするこ
とにより、DES演算器310、320とも常に並列に
演算を実行している状態にすることが可能である。
【0029】この様に複数の演算器を持つことによりス
ケーラブルにデータのスループットを向上することが可
能である。また、次演算用連鎖値生成部314、324
は従来の方式においてもその機構自体は必要なため、複
数のDES演算器を持つDES暗号機構においては、従
来の方式に対して330および331の経路およびそれ
を制御するための機構のみを追加することにより実現可
能である。
【0030】図4に、図3の本発明の実施形態を適用し
たDES暗号機構の動作タイミングチャートの一例とし
て、CBC方式の復号化の場合を示す。図4では、図3
におけるデータ入力レジスタ311,321および連鎖
値レジスタ312,322から暗号化コア部315,3
25に到達するまでの時間を1サイクル、暗号化コア部
315,325の実行時間を8サイクル、そして、デー
タ入力レジスタ311、321から次演算用連鎖値生成
部314、324を経て、連鎖値レジスタ322、31
2に次の演算用連鎖値がセットされるまでの時間を1サ
イクルと仮定している。なお、CFB方式の復号化に関
しても同様のタイミングで実行できる。
【0031】CBC方式の復号化では、まず、DES演
算器310にて、データ入力レジスタ311に暗号文デ
ータD0、連鎖値レジスタ312に初期化ベクトルC0
をセットし、D0を入力データ生成部313を経由して
暗号化コア部315に入力し、暗号化コア部315の実
行を開始する。そして、暗号化コア部315の実行が終
了すると、該暗号化コア部315から出力されたデータ
E0と連鎖値レジスタ312の値C0から、出力データ
生成部316において平文データA0が生成される。こ
れと並行して、DES演算器310では、暗号化コア部
315の実行中に、データ入力レジスタ311のD0を
次の暗号文データD1用の連鎖値C1として、次演算用
連鎖値生成部314よりDES演算器320の連鎖値レ
ジスタ322にセットする。
【0032】DES演算器320では、連鎖値レジスタ
322に値C1がセットされるのと前後してデータ入力
レジスタ321に次の暗号文データD1がセットされ
る。このデータ入力レジスタ321のD1が入力データ
生成部323を経由して暗号化コア部325に入力さ
れ、DES演算器320でも、DES演算器310にお
ける値D0に対する暗号化コア部315の実行とオーバ
ラップして、該D1に対する暗号化コア部325の実行
を開始する。そして、暗号化コア部325の実行が終了
すると、その出力データE1と連鎖値レジスタ322の
値C1から、出力データ生成部326において平文デー
タA1が生成される。これと並行して、DES演算器3
20でも、暗号化コア部325の実行中に、データ入力
レジスタ321のD1を、その次の平文データD2用の
連鎖値C2として、次演算用連鎖値生成部324よりD
ES演算器310の連鎖値レジスタ312にセットす
る。
【0033】DES演算器310では、連鎖値レジスタ
322に値C2がセットされる前後して、データ入力レ
ジスタ311にその次の暗号文データD2がセットさ
れ、DES演算器320の暗号化コア部325の実行と
オーバラップして、再び暗号化コア部315の実行を開
始する。以下、上記と同様の処理が繰り返されることに
なる。
【0034】図4から明らかなように、本発明を適用
し、2つのDES演算器を用いて次演算用の連鎖値を先
行して生成することにより、暗号化コア部実行時間であ
る8サイクルより短い5サイクルピッチの平文データ出
力間隔でデータの復号化を実行することが可能になる。
さらに、図3における暗号化コア部315,325の前
後処理を改善し、暗号化コア部315,325を同じ8
サイクルピッチで実行することを可能にした場合、2つ
のDES演算器310,320をもちいて最高4サイク
ルピッチのデータ復号化が可能になる。
【0035】図7に、従来と本発明におけるDES暗号
機構のCBC/CFB方式の復号化の処理ステージの遷
移図を並ベて示す。従来方式および本発明方式における
各処理ステージとDES暗号機構の各部の対応は図8に
示す通りである。
【0036】従来のCBC、CFB方式の復号化におい
ては(OFB方式も同様)、まず、暗号文データAに対
して、入力データ生成ステージ、暗号化コア部実行ス
テージ、出力データおよび連鎖値生成ステージと遷
移し、その後、生成された連鎖値を利用して、次の暗号
文データBに対し、同様に入力データ生成ステージ、
暗号化コア部実行ステージ、出力データおよび連鎖値
生成ステージとシーケンシャルに遷移する。このた
め、平文データ出力間隔は、暗号化コア部実行時間以下
とすることは不可能である。
【0037】一方、本発明のCBC、CFB方式の復号
化においては、暗号文データAに対して、入力データ生
成ステージ、暗号化コア部実行ステージ、出力デー
タ生成−Aと遷移するが、暗号化コア部実行ステージ
と並行に、次の暗号文データBのための連鎖値生成ス
テージ−Bが実行される。そして、生成された連鎖値
を利用して、次の暗号文データBに対する、入力データ
生成ステージ、暗号化コア部実行ステージ、出力デ
ータ生成ステージ−Aが、暗号文データAに対する処
理と並行に進行する。さらに、この暗号文データBの暗
号化コア部実行ステージと並行に、次の暗号文データ
のための連鎖値生成ステージ−Bが実行される。この
ため、平文データ出力間隔は、暗号化コア部実行時間以
下とすることが可能である。また、暗号化コア部が一つ
の場合には、前の復号化の実行が終了したなら、直ちに
次の復号化を開始することにより、平文データ出力間隔
をほぼ暗号化コア部実行時間とすることが可能である。
【0038】以上のことから、複数のDES演算器を搭
載している暗号機構においては、ほとんどハードウェア
資源を浪費すること無くDES演算器の数に比例して、
CBCおよびCFB方式のデータ復号化の高速化を実現
でき、また、DES演算器を追加することにより、スケ
ーラブルな高速化が期待できる。また、DES演算器が
一つでも、出力データ・連鎖値生成時間を無視できるた
め、その分高速化が期待できる。
【0039】
【発明の効果】本発明によれば、DES暗号機構におい
て、CBC方式およびCFB方式などの動作モードの高
速な復号化を実現することができる。さらに、本発明は
DES暗号機構に限らずCBC方式およびCFB方式、
それに類似の方式を採用するあらゆる暗号機構におい
て、同様の効果を得ることができる。
【図面の簡単な説明】
【図1】CBC方式の暗号化/復号化の概念図を示す。
【図2】CFB方式の暗号化/復号化の概念図を示す。
【図3】本発明を適用したDES暗号機構のCBC/C
FB方式の復号化装置の実施形態を示す。
【図4】本発明を適用したDES暗号機構のCBC方式
の復号化のタイミングチャートを示す。
【図5】従来のDES暗号機構のCBC/CFB/OF
B方式の復号化装置の実施形態を示す。
【図6】従来のDES暗号機構のCBC/CFB/OF
B方式の復号化のタイミングチャートを示す。
【図7】従来と本発明における暗号データ復号化の処理
ステージの遷移を示す。
【図8】図7の処理ステージとDES暗号機構の各部の
対応を示す。
【符号の説明】
310,320 DES演算器 311,321 データ入力レジスタ 312,322 連鎖値レジスタ 313,323 入力データ生成部 314,324 次演算用連鎖値生成部 315,325 暗号化コア部 316,326 出力データ生成部
───────────────────────────────────────────────────── フロントページの続き (72)発明者 田村 卓嗣 神奈川県秦野市堀山下1番地 株式会社日 立製作所エンタープライズサーバ事業部内 (72)発明者 平山 直紀 神奈川県秦野市堀山下1番地 株式会社日 立製作所エンタープライズサーバ事業部内 Fターム(参考) 5J104 AA01 AA20 JA04 JA13 NA37

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 あるデータの暗号結果を次のデータを暗
    号化するための連鎖値として、順次、データを暗号化し
    ていく暗号方式における暗号データの復号化処理方法で
    あって、 ある暗号データの復号化と並行に次の暗号データを復号
    化するための連鎖値を生成し、該生成された連鎖値を使
    用して次の暗号データの復号化を実行することを特徴と
    する暗号データの復号化処理方法。
  2. 【請求項2】 前記連鎖値の生成は、CBC(Cipher
    Block Chaining)方式では入力される暗号データから
    生成し、CFB(Cipher Feedback)方式では入力さ
    れる暗号データと初期ベクトルあるいは前段からの連鎖
    値とから生成することを特徴とする請求項1記載の暗号
    データの復号化処理方法。
  3. 【請求項3】 あるデータの暗号結果を次のデータを暗
    号化するための連鎖値として、順次、データを暗号化し
    ていく暗号方式における暗号データの復号化処理装置で
    あって、 暗号データを保持する手段と、初期値あるいは生成され
    た連鎖値を保持する手段と、連鎖値を使用して暗号デー
    タを復号化する手段と、ある暗号データの復号化と並行
    して次の暗号データを復号化するための連鎖値を生成す
    る手段とを具備することを特徴とする暗号データの復号
    化処理装置。
  4. 【請求項4】 請求項3記載の暗号データの復号化処理
    装置において、暗号データ保持手段、連鎖値保持手段、
    復号化手段および連鎖値生成手段を複数組具備し、複数
    の暗号化データの復号化を並列に実行することを特徴と
    する暗号データの復号化処理装置。
JP09474499A 1999-04-01 1999-04-01 暗号データの復号化処理方法および装置 Expired - Fee Related JP3824121B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP09474499A JP3824121B2 (ja) 1999-04-01 1999-04-01 暗号データの復号化処理方法および装置
US09/540,268 US6732271B1 (en) 1999-04-01 2000-03-31 Method of deciphering ciphered data and apparatus for same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09474499A JP3824121B2 (ja) 1999-04-01 1999-04-01 暗号データの復号化処理方法および装置

Publications (2)

Publication Number Publication Date
JP2000295212A true JP2000295212A (ja) 2000-10-20
JP3824121B2 JP3824121B2 (ja) 2006-09-20

Family

ID=14118646

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09474499A Expired - Fee Related JP3824121B2 (ja) 1999-04-01 1999-04-01 暗号データの復号化処理方法および装置

Country Status (2)

Country Link
US (1) US6732271B1 (ja)
JP (1) JP3824121B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010055658A1 (ja) 2008-11-13 2010-05-20 パナソニック株式会社 コンテンツ復号処理装置、コンテンツ復号処理方法及び集積回路
US8121284B2 (en) 2006-03-14 2012-02-21 Nec Corporation Information processing system, information processing method, and information processing program
US8527756B2 (en) 2005-10-06 2013-09-03 Cisco Technology, Inc. Security device and building block functions

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002202719A (ja) * 2000-11-06 2002-07-19 Sony Corp 暗号化装置及び方法、復号装置及び方法、並びに記憶媒体
JP2003050745A (ja) * 2001-08-07 2003-02-21 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2003223098A (ja) * 2002-01-29 2003-08-08 Sony Corp ブーリアン・マトリクスに基づく暗号化処理方法、および復号処理方法、並びにデータ通信システム
US20060034456A1 (en) * 2002-02-01 2006-02-16 Secure Choice Llc Method and system for performing perfectly secure key exchange and authenticated messaging
US20030149876A1 (en) * 2002-02-01 2003-08-07 Secure Choice Llc Method and system for performing perfectly secure key exchange and authenticated messaging
US20040111626A1 (en) * 2002-12-09 2004-06-10 Doron Livny Security processing of unlimited data size
WO2006115217A1 (ja) * 2005-04-21 2006-11-02 Matsushita Electric Industrial Co., Ltd. プログラム変換装置及び秘密保持プログラム
GB2426673B (en) * 2005-05-27 2010-02-10 Sony Uk Ltd Data processing apparatus for performing a cryptographic method
AU2006324920B2 (en) * 2005-12-14 2010-08-12 Nds Limited Method and system for usage of block cipher encryption
US7428306B2 (en) * 2006-04-18 2008-09-23 International Business Machines Corporation Encryption apparatus and method for providing an encrypted file system
EP2060051A4 (en) * 2006-09-06 2012-07-25 Sslnext Inc METHOD AND SYSTEM FOR PROVIDING AN AUTHENTICATION SERVICE FOR INTERNET USERS
US8144875B2 (en) * 2006-09-06 2012-03-27 Paul McGough Method and system for establishing real-time authenticated and secured communications channels in a public network

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09233066A (ja) * 1996-02-23 1997-09-05 Sony Corp 暗号化/解読化方法および装置
DE59708572D1 (de) * 1996-09-03 2002-11-28 Siemens Ag Anordnung und verfahren zur kryptographischen bearbeitung eines digitalen datenstroms, der eine beliebige anzahl von daten aufweist
TW375721B (en) * 1998-06-17 1999-12-01 Ind Tech Res Inst DES chip processor capable of executing data encryption standard (DES) operation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8527756B2 (en) 2005-10-06 2013-09-03 Cisco Technology, Inc. Security device and building block functions
US8121284B2 (en) 2006-03-14 2012-02-21 Nec Corporation Information processing system, information processing method, and information processing program
WO2010055658A1 (ja) 2008-11-13 2010-05-20 パナソニック株式会社 コンテンツ復号処理装置、コンテンツ復号処理方法及び集積回路

Also Published As

Publication number Publication date
JP3824121B2 (ja) 2006-09-20
US6732271B1 (en) 2004-05-04

Similar Documents

Publication Publication Date Title
Gueron et al. Fast garbling of circuits under standard assumptions
US7697681B2 (en) Parallelizable integrity-aware encryption technique
Burr Selecting the advanced encryption standard
Rebeiro et al. Bitslice implementation of AES
US11546135B2 (en) Key sequence generation for cryptographic operations
US20070116272A1 (en) Method and apparatus for data encryption
JP3824121B2 (ja) 暗号データの復号化処理方法および装置
Huang et al. A novel structure with dynamic operation mode for symmetric-key block ciphers
JP3769804B2 (ja) 解読化方法および電子機器
Yoshinaka et al. On implementing ChaCha on a programmable switch
Miroshnik et al. Uses of programmable logic integrated circuits for implementations of data encryption standard and its experimental linear cryptanalysis
Patel et al. Hybrid security algorithms for data transmission using AES-DES
KR20080072345A (ko) 암호화 장치 및 그 방법
JP5182295B2 (ja) 暗号化装置及び暗号処理方法
GN et al. Performance enhancement of Blowfish and CAST-128 algorithms and Security analysis of improved Blowfish algorithm using Avalanche effect
KR100362170B1 (ko) 라운드 키 생성 및 암호처리용 암호화장치
Mancillas-López et al. An Ultra-Fast Authenticated Encryption Scheme with Associated Data Using AES-OTR
CN111262685B (zh) 一种新型密钥生成的Shield分组密码实现方法、装置及可读存储介质
JP2000075785A (ja) 高速暗号処理回路および処理方法
RU2738321C1 (ru) Способ криптографического преобразования и устройство для его осуществления
CN111740818A (zh) 一种数据处理方法、装置、设备及存储介质
JP2002108205A (ja) ブロック暗号方法及び復号方法
KR100546777B1 (ko) Seed 암/복호화 장치, 암/복호화 방법, 라운드 처리 방법, 이에 적합한 f함수 처리기
KR102348802B1 (ko) Aes 암호화 및 복호화 회로
JPS62237834A (ja) デ−タ暗号化装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050124

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060329

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060529

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060621

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060621

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees