JP2004133087A - ブロック暗号方法およびブロック暗号回路 - Google Patents

ブロック暗号方法およびブロック暗号回路 Download PDF

Info

Publication number
JP2004133087A
JP2004133087A JP2002295808A JP2002295808A JP2004133087A JP 2004133087 A JP2004133087 A JP 2004133087A JP 2002295808 A JP2002295808 A JP 2002295808A JP 2002295808 A JP2002295808 A JP 2002295808A JP 2004133087 A JP2004133087 A JP 2004133087A
Authority
JP
Japan
Prior art keywords
data
encryption
circuit
key data
bank
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
JP2002295808A
Other languages
English (en)
Inventor
Iwao Ofuji
大藤 巌
Tsutomu Ichinose
一ノ瀬 勉
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
Priority to JP2002295808A priority Critical patent/JP2004133087A/ja
Priority to KR1020047008752A priority patent/KR20050069927A/ko
Priority to US10/496,306 priority patent/US7386124B2/en
Priority to EP03751378A priority patent/EP1550928A1/en
Priority to PCT/JP2003/012877 priority patent/WO2004034171A1/ja
Priority to CNB2003801000282A priority patent/CN100524150C/zh
Publication of JP2004133087A publication Critical patent/JP2004133087A/ja
Pending legal-status Critical Current

Links

Images

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
    • 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/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06CDIGITAL COMPUTERS IN WHICH ALL THE COMPUTATION IS EFFECTED MECHANICALLY
    • G06C1/00Computing aids in which the computing members form at least part of the displayed result and are manipulated directly by hand, e.g. abacuses or pocket adding devices
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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
    • 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】キースケジューリングのオーバーヘッドをなくす。
【解決手段】暗号化用あるいは復号化用のキーデータからラウンドキーデータを形成するキースケジューリング回路12と、このキースケジューリング回路12により形成されたラウンドキーデータを所定のバンクに保存するバンクメモリ13とを設ける。バンクに保存されたラウンドキーデータと、平文データあるいは暗号文データとが1ブロック分ずつ供給されて平文データあるいは暗号文データの暗号化処理あるいは復号化処理を実行する暗号化回路11を設ける。暗号化回路11から暗号化処理あるいは復号化処理の結果を取り出す。
【選択図】    図1

Description

【0001】
【発明の属する技術分野】
この発明は、ブロック暗号方法およびブロック暗号回路に関する。
【0002】
【従来の技術】
平文データを暗号化する暗号回路の1つとして、AES方式のブロック暗号回路がある。このAESブロック暗号回路は、平文データを例えば128ビットごとに1ブロックとし、その1ブロックごとにラウンドキーデータにより暗号化を行うように構成されている。なお、このとき、ラウンドキーデータは、暗号化用のキーデータからキースケジューリングにより形成される(例えば、非特許文献1参照)。
【0003】
したがって、暗号文データを再暗号化(もとの暗号文データを、対応するラウンドキーデータにより平文データに復号化し、その平文データを、別のラウンドキーデータにより再び暗号文データに暗号化すること)する場合には、以下に示すような処理の流れとなる。
【0004】
すなわち、図4に示すように、
1 ホストコンピュータ1に、もとの暗号文データと、復号化用のキーデータと、暗号化用のキーデータとを用意する。
2 ホストコンピュータ1からキースケジューリング回路2に、復号化用のキーデータを転送してキースケジューリング処理を行い、復号化用のラウンドキーデータを作成する。
3 ホストコンピュータ1から暗号回路3に暗号文データの1ブロックを転送し、2項で作成したラウンドキーデータにより平文データに復号化する。
4 ホストコンピュータ1からキースケジューリング回路2に、暗号化用のキーデータを転送してキースケジューリング処理を行い、暗号化用のラウンドキーデータを作成する。
5 3項で作成された平文データを、4項で作成したラウンドキーデータにより暗号文データに暗号化する。
6 5項で得られた再暗号文データをホストコンピュータ1に返送する。
7 2〜6項の処理を、もとの暗号文データの1ブロックごとに繰り返す。
【0005】
また、マルチタスクOSなどにおいて、1つの暗号回路を2つのタスクから利用する場合も、同様にキースケジューリング処理により各タスクごとにそれぞれのラウンドキーデータを作成して暗号化処理や復号化処理を行う必要がある。
【0006】
【非特許文献1】
「AES 概説」、[online]、2002年6月11日、名古屋工業大学電気情報工学科岩田研究室、[2002年10月8日検索]、インターネット〔URL:http://mars.elcom.nitech.ac.jp/security/aes.html〕
【0007】
【発明が解決しようとする課題】
ところが、一般に、キースケジューリング処理は、暗号化や復号化の2倍程度の処理時間を必要とするので、2項や4項のように、各ブロックごとにキースケジューリング処理を実行したり、マルチタスクにおいて、各タスクごとにキースケジューリング処理を実行したりすると、かなりのオーバーヘッドになってしまい、全体として暗号化や復号化の速度が低下してしまう。
【0008】
この発明は、このような問題点を解決しようとするものである。
【0009】
【課題を解決するための手段】
この発明においては、例えば、
暗号化用あるいは復号化用のキーデータをキースケジューリング回路に供給してラウンドキーデータを形成し、
この形成されたラウンドキーデータをバンクメモリの所定のバンクに保存し、このバンクに保存されたラウンドキーデータを1ラウンド分ずつ暗号化回路に供給するとともに、
平文データあるいは暗号文データを1ブロックずつ上記暗号化回路に供給して暗号化処理あるいは復号化処理を実行し、
この実行結果を取り出す
ようにしたブロック暗号方法
とするものである。
したがって、キースケジューリングによるオーバーヘッドがなくなり、全体として高速となる。
【0010】
【発明の実施の形態】
▲1▼−1 ブロック暗号回路10の構成
図1において、符号10は、この発明によるブロック暗号回路を全体として示し、符号20は、暗号回路10を使用するホストコンピュータを示す。そして、この例における暗号回路10は、暗号文データの再暗号化を高速に実行できるようにした場合である。
【0011】
このため、ホストコンピュータ20のメモリ23には、再暗号化される暗号文データと、その暗号文データを平文データに復号化するためのキーデータと、その平文データを再び暗号文データに暗号化するための別のキーデータとが用意されている。なお、例えば、もとの暗号文データの1ブロックは128ビットであり、暗号化用および復号化用の各キーデータも128ビットである。
【0012】
そして、暗号回路10には、2つのモードが用意され、その第1のモードでは、復号化用のキーデータから復号化用のラウンドキーデータが形成されてメモリに保存されるとともに、暗号化用のキーデータから暗号化用のラウンドキーデータが形成されてメモリに保存される。さらに、第2のモードでは、第1のモードでメモリに保存されたラウンドキーデータを使用して暗号文データの平文データへの復号化と、その平文データの再暗号化とが、1ブロックずつ交互に実行される。
【0013】
すなわち、暗号回路10は、暗号化回路11と、キースケジューリング回路12とを有する。この場合、暗号化回路11は、暗号文データの1ブロックを復号化用のラウンドキーデータにより平文データに復号化する処理と、平文データの1ブロックを暗号化用のラウンドキーデータにより暗号文データに暗号化する処理とを実行するものである。さらに、キースケジューリング回路12は、復号化用のキーデータから復号化用のラウンドキーデータを作成し、また、暗号化用のキーデータから暗号化用のラウンドキーデータを作成するものである。
【0014】
そして、これら暗号化回路11およびキースケジューリング回路12は、ブロック暗号回路10の内部バス19に接続され、このバス19はホストコンピュータ20に接続される。
【0015】
さらに、暗号回路10において、バス19にレジスタ15が接続され、このレジスタ15にモードフラグMFLGが用意される。このモードフラグMFLGは、コンピュータ20により設定されるとともに、暗号化回路11およびキースケジューリング回路12にそれらの動作の制御信号として供給され、暗号化回路11およびキースケジューリング回路12は、
MFLG=“0”のとき、暗号化回路11の動作を禁止、かつ、キースケジューリング回路12の動作を許可
MFLG=“1”のとき、暗号化回路11の動作を許可、かつ、キースケジューリング回路12の動作を禁止
のように制御される。
【0016】
また、暗号回路10は、バンクメモリ13と、レジスタ14とを有する。この場合、バンクメモリ13は、2つのバンク#0、#1を有し、キースケジューリング回路12の形成した暗号化用および復号化用のラウンドキーデータを、バンク#0および#1にそれぞれ保存するものである。このため、レジスタ15に切り換えフラグBNKFが用意され、この切り換えフラグBNKFが、コンピュータ20により設定されるとともに、メモリ13にバンク切り換えの制御信号として供給され、メモリ13は、
BNKF=“0”のとき、バンク#0が有効、かつ、バンク#1が無効
BNKF=“1”のとき、バンク#0が無効、かつ、バンク#1が有効
のように制御される。
【0017】
さらに、暗号回路10には、メモリコントロール回路16が設けられ、このメモリコントロール回路16により、バンクメモリ13に対するラウンドキーデータの書き込み・読み出しおよびそのアドレスなどが制御される。
【0018】
そして、このバンクメモリ13の出力がレジスタ14にいったん保持されてから暗号化回路11にラウンドキーデータとして供給される。
【0019】
さらに、レジスタ15の切り換えフラグBNKFが、暗号化回路11に、暗号化処理と復号化処理の切り換え制御信号として供給され、暗号化回路11は、
BNKF=“0”のとき、復号化処理
BNKF=“1”のとき、暗号化処理
を実行するように制御される。
【0020】
そして、暗号回路10は、ホストコンピュータ20に用意されている暗号文データを再暗号化処理するとき、例えば図2のフローチャート100に示すような流れで、その処理を実行するものである。これを以下に説明する。
【0021】
▲1▼−2 ブロック暗号回路10による再暗号化処理
暗号文データを再暗号化する場合には、処理はフローチャート100のステップ101からスタートし、次にステップ102として示すように、コンピュータ20によりレジスタ16のフラグMFLG、BNKFは“0”レベルにセットされる。したがって、モードフラグMFLGによりキースケジューリング回路12の動作は許可、暗号化回路11の動作は禁止とされるとともに、切り換えフラグBNKFによりバンク#0が有効、バンク#1が無効とされる。
【0022】
次に、コンピュータ20は、モードフラグMFLGを“0”レベルにセットしているので、ステップ103として示すように、コンピュータ20は、メモリ23に用意されているキーデータのうち、復号化用のキーデータをキースケジューリング回路12に転送する。続いて、ステップ104として示すように、キースケジューリング回路12において、ステップ103により転送されたキーデータからラウンドキーデータが形成される。今の場合は、BNKF=“0”なので、復号用のラウンドキーデータが形成される。
【0023】
そして、ステップ105として示すように、ステップ104で形成されたラウンドキーデータが、メモリコントロール回路16によりメモリ13に転送され、今の場合、ステップ102によりメモリ13はバンク#0が有効とされているので、バンク#0に書き込まれる。続いて、ステップ106として示すように、切り換えフラグBNKFのレベルが判別され、今の場合、BNKF=“0”なので、処理の流れはステップ106からステップ107に進み、このステップ107において、レジスタ15の切り換えフラグBNKFは、コンピュータ20により“1”レベルにセットされ、その後、処理の流れはステップ103に戻る。
【0024】
したがって、以後、BNKF=“1”に対応して、メモリ23のキーデータのうち、暗号化用のキーデータがキースケジューリング回路12に転送され(ステップ103)、このキーデータから暗号化用のラウンドキーデータが形成され(ステップ104)、このラウンドキーデータがメモリ13のバンク#1に書き込まれる(ステップ105)。そして、ステップ106において、BNKF=“1”なので、処理の流れはステップ106からステップ111に進む。このとき、メモリ13のバンク#0には復号用化のラウンドキーデータが用意され、#1には再暗号化用のラウンドキーデータが用意されていることになる。
【0025】
そして、ステップ111において、レジスタ15のモードフラグMFLGが“1”レベルにセットされ、したがって、モードフラグMFLGによりキースケジューリング回路12の動作は禁止、暗号化回路11の動作は許可とされる。次にステップ112として示すように、切り換えフラグBNKFが“0”レベルにセットされてバンク#0が有効、バンク#1が無効とされるとともに、暗号化回路11は復号化処理を実行するように設定される。
【0026】
続いて、ステップ113として示すように、バンク#0、#1のうち、有効とされているバンクのラウンドキーデータ、今の場合、バンク#0のラウンドキーデータがレジスタ14を通じて暗号化回路11に供給される。さらに、ステップ114として示すように、コンピュータ20のメモリ23に用意されている暗号文データのうち、第n番目のブロック、今の場合、第1番目のブロックが暗号化回路11に転送される。したがって、このとき、BNKF=“0”なので、ステップ115として示すように、暗号化回路11において、ステップ113で供給されたラウンドキーデータによりステップ114で転送された暗号文データのブロックが平文データに復号化される。
【0027】
次に、ステップ116として示すように、ステップ115により復号化された平文データのブロックがコンピュータ20のメモリ23に返送され、続いて、ステップ117として示すように、メモリ23のすべての暗号文データの処理を終了したかどうかが判別され、今の場合、終了していないので、処理の流れはステップ117からステップ118に進む。
【0028】
そして、ステップ118においては、切り換えフラグBNKFがチェックされ、今の場合、ステップ112によりBNKF=“0”なので、処理の流れはステップ118からステップ119に進み、このステップ119において、レジスタ15の切り換えフラグBNKFは“1”レベルにセットされ、その後、処理の流れはステップ113に戻る。
【0029】
したがって、再びステップ113〜116が繰り返されるが、今の場合、BNKF=“1”なので、メモリ13はバンク#1が有効であり、復号用のラウンドキーデータが取り出されて暗号化回路11に供給される(ステップ113)。また、コンピュータ20のメモリ23からは直前にステップ115で復号化された平文データのブロックが暗号化回路11に供給される(ステップ114)。そして、BNKF=“1”なので、暗号化回路11においては、暗号化が実行される(ステップ115)。したがって、もとの暗号文データの第1のブロックが再暗号化されたことになり、この再暗号化された暗号文データのブロックがコンピュータ20に返送されてメモリ23に書き込まれる(ステップ116)。
【0030】
そして、今の場合、まだ、1ブロックしか再暗号化がされていないので、処理の流れはステップ117からステップ118に進むが、BNKF=“1”なので、処理の流れはステップ118からステップ112に戻る。
【0031】
したがって、以後、ステップ111〜119により、上述のように、メモリ23の暗号文データの第2番目のブロックに対して、平文データへの復号化および平文データから暗号分データへの再暗号化が、ブロック単位で実行されることになる。また、そのとき、平文データへの復号化および平文データから暗号分データへの再暗号化は、ステップ101〜105によりメモリ13のバンク#0、#1に用意された復号化用のラウンドキーデータおよび暗号化用のラウンドキーデータを使用して実行される。
【0032】
そして、メモリ23のすべての暗号文データが再暗号化されると、処理の流れはステップ117からステップ121に進み、フローチャート100の処理を終了する。
【0033】
こうして、メモリ23に用意された暗号文データは再暗号化される。そして、この場合、その再暗号化には、復号化用のラウンドキーデータおよび暗号化用のラウンドキーデータが必要であるが、そのラウンドキーデータは、メモリ13のバンク#0、#1にあらかじめ用意するので、キースケジューリングは復号化用および再暗号化用にそれぞれ1回実行するだけでよく、したがって、暗号文データの再暗号化に必要な時間を大幅に短縮することができ、全体としての速度を向上させることができる。
【0034】
▲2▼ 記録再生装置
図3は、この発明をCD−R/RW記録再生装置に適用した場合の一形態を示す。
【0035】
すなわち、符号31はオーディオ信号の信号源、例えばマイクロフォン、符号32はオーディオ信号の出力先、例えばスピーカ32を示し、これらはオーディオインターフェイス回路33を通じて後述するマイクロコンピュータ40のシステムバス49に接続される。さらに、このシステムバス49には、ディスクインターフェイス回路34を通じてディスクドライブ装置35が接続され、このドライブ装置35に、CD−RあるいはCD−RWなどのディスク36がセットされる。
【0036】
そして、マイクロコンピュータ40は、▲1▼におけるコンピュータ20に対応するとともに、この記録再生装置全体の動作を制御するシステムコントロール回路を構成するものである。そして、このマイクロコンピュータ40は、CPU41、各種のプログラムおよびデータの書き込まれたROM42、ワークエリア用のRAM43を有し、これらがシステムバス49に接続される。さらに、▲1▼において説明した暗号回路10が、その内部バス19を通じてシステムバス49に接続される。なお、RAM43は、その一部のアドレスエリアがメモリ23として使用される。
【0037】
さらに、ユーザインターフェイスとして、各種の操作キー44およびディスプレイ、例えばLCD45もシステムバス49に接続される。また、システムバス49には、外部インターフェイスとしてUSBインターフェイス回路46が接続され、このUSBインターフェイス回路46に、外部機器として例えばパーソナルコンピュータ50が接続される。
【0038】
そして、記録時および再生時には、暗号化処理あるいは復号化処理の有無に対応して以下のような処理が実行される。
【0039】
▲2▼−1 通常の記録
暗号化を必要としない記録時には、マイクロフォン31からのオーディオ信号がインターフェイス回路33に供給されてデジタルオーディオデータにA/D変換され、このデジタルオーディオデータが、システムバス49を通じてディスクインターフェイス回路34に供給されてエラー訂正用のエンコード処理および記録用のEFM変調処理が行われる。そして、このエンコード処理および変調処理の行われた信号が、ディスクドライブ装置35に供給され、ディスク36に記録される。
【0040】
▲2▼−2 通常の再生
ドライブ装置35によりディスク36から信号が再生され、この再生信号がディスクインターフェイス回路34に供給されて記録時とは相補の処理、すなわち、EFM復調処理およびエラー訂正用のデコード処理が行われ、もとのデジタルオーディオデータが取り出される。そして、このデジタルオーディオデータが、システムバス49を通じてインターフェイス回路33に供給されてアナログのオーディオ信号にD/A変換され、このオーディオ信号がスピーカ32に供給される。
【0041】
なお、デジタルオーディオデータ以外のデジタルデータをディスク36に対して記録あるいは再生する場合には、そのためのエンコード処理やデコード処理などが必要となるが、それらの処理もディスクインターフェイス回路34において実行される。
【0042】
▲2▼−3 オーディオ信号の暗号化および記録
オーディオ信号を暗号化してディスク36に記録する場合には、マイクロフォン31からのオーディオ信号がインターフェイス回路33に供給されてデジタルオーディオデータにA/D変換され、このデジタルオーディオデータがRAM43にいったんバッファリングされてから暗号回路10に供給される。こうして、RAM43のデジタルオーディオデータは、暗号回路10により例えば2Kバイトごとに▲1▼において説明したように暗号文データにブロック暗号化される。
【0043】
そして、このRAM43の暗号文データが、ディスクインターフェイス回路34に供給されてエラー訂正用のエンコード処理および記録用のEFM変調処理が行われ、その後、ディスクドライブ装置35に供給され、ディスク36に記録される。
【0044】
▲2▼−4 オーディオ信号の再生および復号化
ディスク36に記録されているオーディオ信号を復号化して再生する場合には、ドライブ装置35によりディスク36から信号が再生され、この再生信号がディスクインターフェイス回路34に供給されてもとの暗号データがデコードされて取り出される。そして、この暗号データが、RAM43にいったんバッファリングされてから例えば2Kバイトずつ暗号回路10に供給され、▲1▼において説明したように、もとのデジタルオーディオデータにブロック復号化される。
【0045】
そして、この復号化されたデジタルオーディオデータが、RAM43からインターフェイス回路33に供給されてもとのアナログのオーディオ信号にD/A変換され、このオーディオ信号がスピーカ32に供給される。
【0046】
▲2▼−5 オーディオ信号の再暗号化
これは、ディスク36に暗号化されて記録されているオーディオ信号を再暗号化し、その再暗号化したデジタルオーディオデータを例えばパーソナルコンピュータ50に出力する場合である。
【0047】
すなわち、ディスク36の再生が開始されると、▲2▼−4と同様、ディスク36からの再生信号が、ディスクインターフェイス回路34によりもとの暗号文データにデコードされて出力されるが、その暗号文データがRAM43に順次書き込まれていく。そして、ディスク36の例えば1セクタ分の暗号文データがRAM43に書き込まれると、フローチャート100の処理が実行されてRAM43の暗号文データは再暗号化され、この再暗号文データがUSBインターフェイス回路46を通じてパーソナルコンピュータ50が供給される。そして、以後、このような処理が、ディスク36から1セクタ分の暗号文データが再生されるごとに繰り返される。
【0048】
こうして、ディスク36に暗号化されて記録されているオーディオ信号は再暗号化されてパーソナルコンピュータ50に出力されるが、この場合、フローチャート100の処理は、上述のように再暗号化をオーバーヘッドがないので、上記のようにディスク36を再生しながらリアルタイムで処理を実行することができる。
【0049】
▲3▼ その他
上述においては、暗号文データを再暗号化する場合であるが、マルチタスクOSなどにおいて、1つの暗号回路10を2つのタスクから利用する場合には、ステップ102において、実行するタスクに対応して切り換えフラグBNKFを“0”レベルあるいは“1”レベルにセットしてステップ103〜105を実行し、続いてステップ111、113〜117を実行し、ステップ117からステップ113に戻るとともに、それらのステップにおいて、暗号化あるいは復号化に対応した処理を実行すればよい。さらに、3つ以上のタスクの場合も同様に、タスクごとにバンクメモリ13のバンクを切り換えてステップ103〜105、111、113〜117を実行すればよい。
【0050】
また、上述においては、暗号文データあるいは復号文データが1つのキーデータを持つ場合であるが、複数のキーデータを持ってもよい。さらに、暗号化回路11は汎用のブロック暗号化回路であってもよく、暗号化回路11にキースケジューリング回路12が一体化されていてもよい。
【0051】
〔この明細書で使用している略語の一覧〕
A/D  :Analog to Digital
AES  :Advanced Encryption Standard
CD   :Compact Disc
CD−R :CD Recordable
CD−RW:CD ReWritable
CPU  :Central Processing Unit
D/A  :Digital to Analog
EFM  :Eight to Fourteen Modulation
K    :1024
LCD  :Liquid Crystal Display
OS   :Operating System
RAM  :Random Access Memory
ROM  :Read Only Memory
URL  :Uniform Resource Locator
USB  :Universal Serial Bus
【0052】
【発明の効果】
この発明によれば、1つの暗号回路により複数の暗号化処理あるいは復号化処理を実行するとき、暗号化用あるいは復号化用のラウンドキーデータをバンクメモリの各バンクにあらかじめ用意しているので、キースケジューリングは1回実行するだけでよく、したがって、平文データあるいは暗号文データのブロックごとにキースケジューリングを実行する場合に比べ、オーバーヘッドをなくすことができるので、暗号化あるいは復号化に必要な時間を大幅に短縮することができ、全体としての速度を向上させることができる。
【図面の簡単な説明】
【図1】この発明の一形態を示す系統図である。
【図2】図1の回路の処理の流れを示すフローチャートである。
【図3】この発明の一形態を示す系統図である。
【図4】この発明を説明するための系統図である。
【符号の説明】
10…ブロック暗号回路、11…暗号化回路、12…キースケジューリング回路、13…バンクメモリ、15…レジスタ、16…メモリコントロール回路

Claims (4)

  1. 暗号化用あるいは復号化用のキーデータをキースケジューリング回路に供給してラウンドキーデータを形成し、
    この形成されたラウンドキーデータをバンクメモリの所定のバンクに保存し、このバンクに保存されたラウンドキーデータを暗号化回路に供給するとともに、
    平文データあるいは暗号文データを1ブロックずつ上記暗号化回路に供給して暗号化処理あるいは復号化処理を実行し、
    この実行結果を取り出す
    ようにしたブロック暗号方法。
  2. 復号化用のキーデータをキースケジューリング回路に供給してラウンドキーデータを形成し、
    この形成されたラウンドキーデータをバンクメモリの第1のバンクに保存し、暗号化用のキーデータを上記キースケジューリング回路に供給してラウンドキーデータを形成し、
    この形成されたラウンドキーデータを上記バンクメモリの第2のバンクに保存し、
    上記第1のバンクに保存されたラウンドキーデータを暗号化回路に供給するとともに、
    暗号文データの1ブロックを上記暗号化回路に供給して平文データの1ブロックを復号化し、
    この復号化された平文データの1ブロックと、上記第2のバンクに保存されたラウンドキーデータの1ラウンド分とを上記暗号化回路に供給して再暗号化された暗号文データの1ブロックを取り出し、
    以後、上記復号化と、上記再暗号化とを1ブロックごとに繰り返す
    ようにしたブロック暗号方法。
  3. 暗号化用あるいは復号化用のキーデータからラウンドキーデータを形成するキースケジューリング回路と、
    このキースケジューリング回路により形成された上記ラウンドキーデータを所定のバンクに保存するバンクメモリと、
    上記バンクに保存されたラウンドキーデータと、平文データあるいは暗号文データとが1ブロック分ずつ供給されて上記平文データあるいは暗号文データの暗号化処理あるいは復号化処理を実行する暗号化回路と
    を有し、
    この暗号化回路から上記暗号化処理あるいは復号化処理の結果を取り出す
    ようにしたブロック暗号回路。
  4. 請求項3に記載のブロック暗号回路において、
    復号化用のキーデータを上記キースケジューリング回路に供給して復号化用のラウンドキーデータを形成し、
    この形成された復号化用のラウンドキーデータを上記バンクメモリの第1のバンクに保存し、
    暗号化用のキーデータを上記キースケジューリング回路に供給して暗号化用のラウンドキーデータを形成し、
    この形成された暗号化用のラウンドキーデータを上記バンクメモリの第2のバンクに保存し、
    上記第1のバンクに保存された復号化用のラウンドキーデータを上記暗号化回路に供給するとともに、
    暗号文データの1ブロックを上記暗号化回路に供給して平文データの1ブロックを復号化し、
    この復号化された平文データの1ブロックと、上記第2のバンクに保存された暗号化用のラウンドキーデータの1ラウンド分とを上記暗号化回路に供給して再暗号化された暗号文データの1ブロックを取り出し、
    以後、上記復号化と、上記再暗号化とを1ブロックごとに繰り返す
    ようにしたブロック暗号回路。
JP2002295808A 2002-10-09 2002-10-09 ブロック暗号方法およびブロック暗号回路 Pending JP2004133087A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2002295808A JP2004133087A (ja) 2002-10-09 2002-10-09 ブロック暗号方法およびブロック暗号回路
KR1020047008752A KR20050069927A (ko) 2002-10-09 2003-10-08 블록암호화 방법 및 블록암호/복호회로
US10/496,306 US7386124B2 (en) 2002-10-09 2003-10-08 Block encoding method and block encoding/decoding circuit
EP03751378A EP1550928A1 (en) 2002-10-09 2003-10-08 Block encoding method and block encoding/decoding circuit
PCT/JP2003/012877 WO2004034171A1 (ja) 2002-10-09 2003-10-08 ブロック暗号化方法およびブロック暗号/復号回路
CNB2003801000282A CN100524150C (zh) 2002-10-09 2003-10-08 分组密码方法及分组加密/解密电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002295808A JP2004133087A (ja) 2002-10-09 2002-10-09 ブロック暗号方法およびブロック暗号回路

Publications (1)

Publication Number Publication Date
JP2004133087A true JP2004133087A (ja) 2004-04-30

Family

ID=32089223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002295808A Pending JP2004133087A (ja) 2002-10-09 2002-10-09 ブロック暗号方法およびブロック暗号回路

Country Status (6)

Country Link
US (1) US7386124B2 (ja)
EP (1) EP1550928A1 (ja)
JP (1) JP2004133087A (ja)
KR (1) KR20050069927A (ja)
CN (1) CN100524150C (ja)
WO (1) WO2004034171A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012004661A (ja) * 2010-06-14 2012-01-05 Fujitsu Semiconductor Ltd プロセッサ及びプロセッサシステム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4752113B2 (ja) * 2001-01-16 2011-08-17 ソニー株式会社 電子機器及び信号伝送方法
KR100949538B1 (ko) * 2008-09-09 2010-03-25 한국전자통신연구원 Aes 라인달 알고리즘을 이용하는 암호화 및 복호화 장치와 그 방법
US8233620B2 (en) * 2009-02-27 2012-07-31 Inside Secure Key recovery mechanism for cryptographic systems
CN102063179A (zh) * 2011-01-13 2011-05-18 浙江大学 一种生成轮密钥的分组密码算法的低功耗装置及方法
KR101516574B1 (ko) 2014-02-21 2015-05-04 한국전자통신연구원 형태보존 암호화를 위한 가변길이 블록암호 장치 및 방법
US10341090B2 (en) * 2014-10-14 2019-07-02 Sony Corporation Cipher processing apparatus and cipher processing method
CN110311771B (zh) * 2018-03-20 2022-07-22 北京小米松果电子有限公司 Sm4加解密方法及电路

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3824328C1 (ja) * 1988-07-18 1989-12-21 Kone-Anlagenbau Gmbh, 8900 Augsburg, De
DE3910444C3 (de) * 1989-03-31 1998-10-22 Wifag Maschf Automatische Anlage zum Einbringen von Papierrollen in die Rollenständer einer Rollenrotationsdruckmaschine
JPH06149153A (ja) 1992-11-02 1994-05-27 Nippon Telegr & Teleph Corp <Ntt> 汎用高速暗号装置
EP0715241B1 (en) * 1994-10-27 2004-01-14 Mitsubishi Corporation Apparatus for data copyright management system
JP3502200B2 (ja) * 1995-08-30 2004-03-02 株式会社日立製作所 暗号通信システム
US5726283A (en) * 1997-01-03 1998-03-10 Far Eastern Textile, Ltd. Conductive polyester sheet
DE19847160A1 (de) * 1998-10-13 2000-04-20 Hauni Maschinenbau Ag Bobinenwechsler
JP3679936B2 (ja) * 1998-11-27 2005-08-03 東芝ソリューション株式会社 暗復号装置及び記憶媒体
US7003107B2 (en) * 2000-05-23 2006-02-21 Mainstream Encryption Hybrid stream cipher
JP4153653B2 (ja) * 2000-10-31 2008-09-24 株式会社東芝 マイクロプロセッサおよびデータ保護方法
US20020124177A1 (en) * 2001-01-17 2002-09-05 Harper Travis Kelly Methods for encrypting and decrypting electronically stored medical records and other digital documents for secure storage, retrieval and sharing of such documents
US6937727B2 (en) * 2001-06-08 2005-08-30 Corrent Corporation Circuit and method for implementing the advanced encryption standard block cipher algorithm in a system having a plurality of channels
US7203310B2 (en) * 2001-12-04 2007-04-10 Microsoft Corporation Methods and systems for cryptographically protecting secure content
US7006628B2 (en) * 2002-01-04 2006-02-28 Avaya Technology Corp. Efficient packet encryption method
US7221763B2 (en) * 2002-04-24 2007-05-22 Silicon Storage Technology, Inc. High throughput AES architecture

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012004661A (ja) * 2010-06-14 2012-01-05 Fujitsu Semiconductor Ltd プロセッサ及びプロセッサシステム

Also Published As

Publication number Publication date
US20050232414A1 (en) 2005-10-20
WO2004034171A1 (ja) 2004-04-22
CN100524150C (zh) 2009-08-05
US7386124B2 (en) 2008-06-10
KR20050069927A (ko) 2005-07-05
EP1550928A1 (en) 2005-07-06
CN1685296A (zh) 2005-10-19

Similar Documents

Publication Publication Date Title
JP4500306B2 (ja) 解読待ち時間が削減されたメモリ暗号化のための装置及び方法
JPH11272561A (ja) 記憶媒体のデータ保護方法、その装置及びその記憶媒体
JP2000236325A (ja) デジタルデータファイルの暗号化装置及びその方法
US7529366B2 (en) Block encoding/decoding method, circuit, and device
CN1670817B (zh) 用于记录和再现音乐内容的电子音乐装置
JP2003152703A (ja) 暗号化装置、暗号化方法、復号化装置、復号化方法、暗号化復号化装置及び暗号化復号化方法
JPWO2006077871A1 (ja) コンテンツ複製装置及びコンテンツ複製方法
KR101117588B1 (ko) 암호화 표시정보를 갖는 기록매체
JP2008234544A (ja) ファイル暗号化・復号化システム、ファイル暗号化・復号化方法、及びファイル暗号化・復号化プログラム
JP2004133087A (ja) ブロック暗号方法およびブロック暗号回路
JPH07249264A (ja) Cd−romの記録方式、記録・再生方式及びcd−romディスク
JPH09134310A (ja) データの復号アルゴリズムを記憶する記憶媒体および方法
JP2007074044A (ja) データ配信システム及びデータ通信端末
US20120054719A1 (en) Apparatus, method and program
JP2003195758A (ja) データ処理装置、インタフェースボードおよびデータ秘匿方法
JP2001176189A (ja) 記録装置及び方法、再生装置及び方法並びに記録媒体
KR20050122209A (ko) 디지털 데이터 보존·재생방법 및 장치
JP2005195673A (ja) 音楽コンテンツ利用装置及びプログラム
KR20080112082A (ko) 데이터 암호화방법, 암호화데이터 재생방법
JPS63182758A (ja) 情報記憶装置
JP2000231760A (ja) 情報記録装置および方法、情報再生装置および方法、並びに記録媒体
JP2002305515A5 (ja)
TWI411934B (zh) 資料處理系統及其相關密碼管理方法及資料讀取與寫入方法
JP2005011105A (ja) 再生装置、暗号化記録装置及びプログラム
JP2004184567A (ja) Aesブロック暗号方法およびその暗号回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050810

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090121

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090527