JP2004126323A - ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置 - Google Patents

ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置 Download PDF

Info

Publication number
JP2004126323A
JP2004126323A JP2002291949A JP2002291949A JP2004126323A JP 2004126323 A JP2004126323 A JP 2004126323A JP 2002291949 A JP2002291949 A JP 2002291949A JP 2002291949 A JP2002291949 A JP 2002291949A JP 2004126323 A JP2004126323 A JP 2004126323A
Authority
JP
Japan
Prior art keywords
memory
data
block
circuit
encryption
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
JP2002291949A
Other languages
English (en)
Inventor
Tsutomu Ichinose
一ノ瀬 勉
Iwao Ofuji
大藤 巌
Nobutane Hideshima
秀嶋 信種
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 JP2002291949A priority Critical patent/JP2004126323A/ja
Priority to PCT/JP2003/012234 priority patent/WO2004032097A1/ja
Priority to KR1020047008372A priority patent/KR20050069924A/ko
Priority to CNB038017156A priority patent/CN1290069C/zh
Priority to US10/497,109 priority patent/US7529366B2/en
Priority to EP03799130A priority patent/EP1548688A1/en
Publication of JP2004126323A publication Critical patent/JP2004126323A/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/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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
    • H04KSECRET COMMUNICATION; JAMMING OF COMMUNICATION
    • H04K1/00Secret communication
    • H04K1/06Secret communication by transmitting the information or elements thereof at unnatural speeds or in jumbled order or backwards
    • 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

Abstract

【課題】可変長のブロック暗号回路において、構成を簡単化するとともに、ホストコンピュータの負担を軽くする。
【解決手段】平文メモリ11と、原データをブロック単位で暗号化処理あるいは復号化処理する暗号化回路13とを設ける。外部から原データを平文メモリ11に転送する。この転送された原データを、暗号化回路13に供給してブロック単位で暗号化処理あるいは復号化処理する。この処理結果のデータを、平文メモリ11の原データと置換する。平文メモリ11に転送された原データのすべてが処理結果のデータに置換されたとき、この処理結果のデータを外部に出力する。
【選択図】    図1

Description

【0001】
【発明の属する技術分野】
この発明は、ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置に関する。
【0002】
【従来の技術】
平文データを暗号化する方法として、平文データの例えば64ビットを1ブロックとし、このブロック単位で暗号化をするブロック暗号処理法がある。そして、このブロック暗号処理は、ブロックおよび鍵の使い方によって、ECB、CBC、OFB、CFBの4つのモードに分類することができる。
【0003】
そして、CBCモードにおいてはブロック連鎖暗号化処理が行われるが、このCBCモードのブロック暗号回路を、データの流れを中心にして示すと、図5に示すとおりである。
【0004】
すなわち、平文データの第1番目のブロック1Aと、初期値(初期化ベクトル)IVとがイクスクルーシブオア回路2Aに供給され、その出力が暗号化回路3Aに供給されて秘密鍵により暗号文データの第1番目のブロック4Aが作成される。次に、平文データの第2番目のブロック1Bと、第1番目の暗号文データ4Aとがイクスクルーシブオア回路2Bに供給され、その出力が暗号化回路3Bに供給されて秘密鍵により暗号文データの第2番目のブロック4Bが作成される。さらに、平文データの第3番目のブロック1Cと、第2番目の暗号文データ4Bとがイクスクルーシブオア回路2Cに供給され、その出力が暗号化回路3Cに供給されて秘密鍵により暗号文データの第3番目のブロック4Cが作成される。
【0005】
そして、以下同様に、平文データの第n番目のブロックと、1つ前の第(n−1)番目の暗号文データとのイクスクルーシブオア出力が秘密鍵により暗号化されて暗号文データの第n番目のブロックが作成される(例えば、特許文献1参照)。
【0006】
こうして、図5のブロック暗号回路によれば、平文データをCBCモードにより暗号化することができる。また、図6に示すように、信号の流れを逆にするとともに、回路3A、3B、3C、・・を復号化回路として使用すれば、暗号文データを平文データに復号化することができる。
【0007】
なお、図5はデータの流れを中心にして示すものであり、実際のブロック暗号回路においては、イクスクルーシブオア回路2A、2B、2C、・・・は、このブロック暗号回路を使用するホストコンピュータのソフトウェア処理により実現される。さらに、暗号化回路3A、3B、3C、・・・は、ハードウェアにより構成されるが、そのうちの1つだけが設けられ、その暗号化回路が、平文データのブロック1A、1B、1C、・・・および暗号文データのブロック4A、4B、4C、・・・に対して共通に使用される。
【0008】
また、イクスクルーシブオア回路2A、2B、2C、・・・などにおける処理を変更することにより、ECBモードのブロック暗号処理などを実現することができるので、イクスクルーシブオア回路2A、2B、2C、・・・などにおける処理は、モード処理とも呼ばれている。
【0009】
【特許文献1】
特開2000−338866
【0010】
【発明が解決しようとする課題】
ところで、音楽などのデジタルオーディオデータをディスクに記録して販売する場合に、不正コピーを防止するため、そのデジタルオーディオデータを暗号化してディスクに記録しておくことが考えられている。そして、その場合、図5により説明したブロック暗号化を適用することができる。
【0011】
ところが、図5のブロック暗号回路においては、コンピュータがイクスクルーシブオア処理などのモード処理をする場合、例えば64ビットずつブロック単位で処理をするので、平文データ(デジタルオーディオデータ)が長いとき、コンピュータに負担がかかってしまう。例えば、平文データの長さが2Kバイトであるとすれば、コンピュータはモード処理を256回(=2Kバイト/64ビット)実行する必要があり、コンピュータにとってかなりの負担となってしまう。
【0012】
このため、ブロック暗号化されたディスクを再生するプレーヤの場合、システム制御用のマイクロコンピュータとは別に、復号化用のマイクロコンピュータを必要としたり、あるいはシステム制御用兼暗号化用のマイクロコンピュータとして処理能力の高いものが必要になってしまう。
【0013】
この発明は、このような点にかんがみ、コンピュータの負担が軽く、しかも、簡単な構成で任意の長さの平文データに対応できるブロック暗号回路を提供しようとするものである。
【0014】
【課題を解決するための手段】
この発明においては、例えば、
平文メモリと、
原データをブロック単位で暗号化処理あるいは復号化処理する暗号化回路と
を有し、
外部から上記原データを上記平文メモリに転送し、
この平文メモリに転送された原データを、上記暗号化回路に供給してブロック単位で暗号化処理あるいは復号化処理し、
この処理結果のデータを、上記平文メモリの原データと置換し、
上記平文メモリに転送された上記原データのすべてが上記処理結果のデータに置換されたとき、この処理結果のデータを外部に出力する
ようにしたブロック暗号回路
とするものである。
したがって、ホストコンピュータは、平文データあるいは暗号文データを平文メモリの容量単位でアクセスすることになる。
【0015】
【発明の実施の形態】
▲1▼ ブロック暗号回路の構成および処理内容
図1において、符号10は、この発明によるブロック暗号回路を全体として示し、符号20は、ブロック暗号回路10を使用するホストコンピュータを示す。
【0016】
そして、ブロック暗号回路10は、平文メモリ11と、データコントロール回路12と、暗号化回路13とを有する。この場合、平文メモリ11は、平文データおよび暗号文データを暗号化あるいは復号化が終了するまで保持するためのものであり、平文データのブロックの複数個分の容量、例えば2Kバイト(=64ビット×256ブロック)の容量を有する。
【0017】
また、データコントロール回路12は、図5のイクスクルーシブオア回路2Aに対応するイクスクルーシブオア回路12Aと、ラッチ回路12Bとを有する。さらに、暗号化回路13は、図5の暗号化回路3Aに対応するものであるが、汎用のブロック暗号化回路により構成され、入力されたデータを1ブロック単位で暗号化するものである。なお、暗号化回路13は暗号文データの復号化にも使用される。
【0018】
さらに、ブロック暗号回路10は、メモリコントロール回路14と、初期値メモリ15と、レジスタ16とを有する。この場合、メモリコントロール回路14は、平文メモリ11の書き込み・読み出しおよびそのアドレスなどを制御するためのものである。また、メモリ15は、ホストコンピュータ20から供給される初期値IVを保持するものであり、レジスタ16は、ホストコンピュータ20から供給されるモードフラグCBCF、IVフラグIVF、暗号フラグCRYFを保持するものである。
【0019】
ここで、モードフラグCBCFは、暗号・復号モードをCBCモードとECBモードとに切り換えるためのものであり、CBCモードで暗号化・復号化するときには、CBCF=“1”とされ、ECBモードで暗号化・復号化するときには、CBCF=“0”とされる。また、IVフラグIVFは、暗号化あるいは復号化するときに、初期値IVの使用を制御するためのものであり、平文データあるいは暗号文データの第1番目のブロックを暗号化あるいは復号化するとき(初期値IVを使用するとき)は、IVF=“1”とされ、第2番目以降のブロックを暗号化あるいは復号化するとき(初期値IVを使用しないとき)は、IVF=“0”とされる。さらに、暗号フラグCRYFは、暗号化を行うときには、CRYF=“1”とされ、復号化を行うときには、CRYF=“0”とされる。
【0020】
そして、暗号化回路13はデータコントロール回路12に接続され、残る回路11、12、14〜17は、ブロック暗号回路10の内部バス19を通じてコンピュータ20に接続される。また、コンピュータ20のメモリ23には、暗号化する平文データあるいは復号化する暗号文データが用意される。この平文データあるいは暗号文データは、平文メモリ11の容量よりも大きくてもよい。また、その平文データあるいは暗号文データが1ブロック64ビットの整数倍ではないときには、最後にダミーデータが付加されて整数倍とされる。
【0021】
そして、ブロック暗号回路10は、ホストコンピュータ20のメモリ23に用意されている平文データあるいは暗号文データを暗号化処理あるいは復号化処理をするとき、例えば図2のフローチャート100に示すような流れで、その処理を行うものである。これを以下に説明する。
【0022】
▲1▼−1 CBCモードによる暗号化
ホストコンピュータ20がブロック暗号回路10をCBCモードで使用して平文の暗号化をする場合には、フローチャート100のステップ101として示すように、コンピュータ20からメモリ15に初期値IVがロードされるとともに、レジスタ16に“1”レベルのフラグCBCF、IVF、CRYFがロードされる。続いて、ステップ102として示すように、メモリ23に用意されている平文データのうち、最初の2Kバイトが平文メモリ11に転送される。なお、この転送はメモリコントロール回路14のDMA転送により実行される。
【0023】
次に、ステップ111として示すように、平文メモリ11の平文データのうち、第n番目のブロック、今の場合、第1番目のブロックが指定され、さらに、ステップ112として示すように、データコントロール回路12がレジスタ16の暗号フラグCRYFをチェックすることにより、暗号化および復号化のどちらを行うのかが判別される。今の場合は、CRYF=“1”で暗号化なので、処理の流れはステップ112からステップ113に進む。
【0024】
そして、ステップ113として示すように、データコントロール回路12がレジスタ16のモードフラグCBCFをチェックすることにより、暗号化をCBCモードとECBモードとのどちらで行うのかが判別される。今の場合は、CBCF=“1”でCBCモードなので、処理の流れはステップ113からステップ114に進む。そして、ステップ114として示すように、IVフラグIVFをチェックすることにより、ステップ111により指定されたブロックが、平文メモリ11における平文データの第1番目のブロックであるかどうかが判別される。
【0025】
そして、第1番目のブロックのときには(このとき、IVF=“1”である)、処理の流れはステップ114からステップ115に進み、このステップ115において、ステップ111により指定された第n番目のブロック、今の場合、第1番目のブロックと、ステップ101によりメモリ15にロードされた初期値IVとが、イクスクルーシブオア回路12Aに供給される。さらに、このとき、IVF=“0”レベルとされる(したがって、以後、ステップ114が実行されたとき、処理の流れはステップ114からステップ116に進むことになる)。
【0026】
また、ステップ114において、ステップ111により指定されたブロックが、平文メモリ11における平文データの第2番目以降のブロックのときには(このとき、IVF=“0”である)、処理の流れはステップ114からステップ116に進み、このステップ116において、ステップ111により指定された第n番目のブロックのデータと、1つ前の第(n−1)番目の暗号化されたブロックのデータとが、イクスクルーシブオア回路12Aに供給される。こうして、ステップ115あるいは116により、イクスクルーシブオア出力が形成される。
【0027】
そして、処理の流れはステップ115あるいは116からステップ117に進み、このステップ117において、ステップ115あるいは116のイクスクルーシブオア出力が、暗号化回路13に供給されて暗号文データに暗号化され、平文メモリ11のもとの平文データのブロックと置換される。次に、ステップ118として示すように、ステップ117により暗号化されたブロックがラッチ回路12Bにラッチされる。このラッチされたイクスクルーシブオア出力は、上述のように、ステップ116において、1つ前の第(n−1)番目のブロックのデータとして使用される。
【0028】
続いて、ステップ119として示すように、平文メモリ11のすべてのブロックに対してステップ117の暗号化処理が実行されたかどうかが判別され、暗号化処理のされていないブロックが残っているときには、処理の流れはステップ119からステップ111に戻る。こうして、平文メモリ11の平文データは、1ブロックずつ暗号文データに暗号化されていく。
【0029】
そして、平文メモリ11のすべてのブロックに対してステップ117の暗号化処理が実行されたときには、処理の流れはステップ119からステップ131に進み、このステップ131において、平文メモリ11に作成された暗号文データがコンピュータ20のメモリ23に転送される。なお、この転送もメモリコントロール回路14のDMA転送により実行される。
【0030】
以上で、コンピュータ20のメモリ23に用意されている平文データのうち、最初の2Kバイトが暗号化されたことになるので、これでフローチャート100の処理はいったん終了する。そして、メモリ23に用意されている平文データが2Kバイトよりも多く、したがって、暗号化されていない平文データが残っているときには、その残っている平文データに対してフローチャート100の処理が繰り返される。
【0031】
▲1▼−2 ECBモードによる暗号化
コンピュータ20に用意されている平文データをECBモードで暗号化する場合にも、フローチャート100の処理の流れとされるが、ステップ101におけるメモリ15への初期値IVのロードは行われない。また、レジスタ16にロードされるモードフラグCBCFは“0”レベルとされる。
【0032】
すると、フローチャート100における処理の流れは、ステップ113からステップ117に進むので、イクスクルーシブオア回路12Aにおけるイクスクルーシブオア処理は実行されず、第n番目の平文データのブロックは、そのブロックだけで暗号化回路13により暗号化されることになる。したがって、ECBモードの暗号文データが得られることになる。
【0033】
▲1▼−3 CBCモードによる復号化
コンピュータ20がブロック暗号回路10をCBCモードで使用して暗号文の復号化をする場合には、フローチャート100のステップ101として示すように、コンピュータ20のメモリ23からメモリ15に初期値IVがロードされ、さらに、レジスタ16に、“1”レベルのフラグCBCF、IVFがロードされるとともに、“0”レベルの暗号フラグCRYFがロードされる。
【0034】
そして、ステップ102として示すように、コンピュータ20のメモリ23に用意されている暗号文データの最初の2Kバイトが平文メモリ11に転送され、そのうちの第n番目(今の場合はn=1)のブロックが指定される。続いて、ステップ112として示すように、データコントロール回路12がレジスタ16の暗号フラグCRYFをチェックすることにより、暗号化および復号化のどちらを行うのかが判別され、今の場合、CRYF=“0”で復号化なので、処理の流れはステップ112からステップ121に進む。
【0035】
そして、ステップ121として示すように、平文メモリ11の暗号文のうち、ステップ111により指定された第n番目のブロックがラッチ回路12Bにラッチされ、次に、ステップ122として示すように、平文メモリ11の暗号文データのうち、ステップ111により指定された第n番目のブロックが暗号化回路13に供給されて平文データ(イクスクルーシブオア処理前の平文データ)に復号化される。なお、ラッチ回路12Bにラッチされたブロックは、後述するように、第n番目のブロック復号化データにイクスクルーシブオア処理をするとき、その1つ前の第(n−1)番目のブロックとして使用される。
【0036】
次に、処理の流れはステップ123に進み、データコントロール回路12がレジスタ16のモードフラグCBCFをチェックすることにより、復号化をCBCモードおよびECBモードのどちらで行うのかが判別される。今の場合は、CBCF=“1”でCBCモードなので、処理の流れはステップ123からステップ124に進む。そして、ステップ124として示すように、IVフラグIVFをチェックすることにより、ステップ111により指定されたブロックが、平文メモリ11における暗号文データの第1番目のブロックであるかどうかが判別される。
【0037】
そして、第1番目のブロックのときには(このとき、IVF=“1”である)、処理の流れはステップ124からステップ125に進み、このステップ125において、ステップ122により復号化された平文データのブロックと、ステップ101によりメモリ15にロードされた初期値IVとが、イクスクルーシブオア回路12Aに供給されてもとの平文データとされ、この平文データが平文メモリ11のもとの暗号文データのブロックと置換される。さらに、このとき、IVF=“0”レベルとされる。
【0038】
また、ステップ124において、ステップ111により指定されたブロックが、平文メモリ11における暗号文データの第2番目以降のブロックのときには(このとき、IVF=“0”である)、処理の流れはステップ124からステップ126に進む。そして、このステップ126において、ステップ122により復号化された平文データのブロックと、ステップ121によりラッチ回路12Bにラッチされている1つ前の第(n−1)番目のブロックのデータとが、イクスクルーシブオア回路12Aに供給されてもとの平文データとされ、この平文データが平文メモリ11のもとの暗号文データのブロックの位置に書き込まれる。
【0039】
そして、以後、▲1▼−1の暗号化時と同様、ステップ119以降の処理が実行され、平文メモリ11の暗号文データは、1ブロックずつ平文データに復号されていき、平文メモリ11のすべてのブロックに対しての復号化処理が実行されると、その平文データがコンピュータ20のメモリ23に転送される。
【0040】
そして、コンピュータ20のメモリ23に、復号化されていない暗号文データが残っているときには、以上の処理が繰り返され、コンピュータ20のメモリ23に用意されているすべての暗号文データが復号化されたとき、すべての処理を終了する。
【0041】
▲1▼−4 ECBモードによる復号化
コンピュータ20に用意されている暗号文データをECBモードで復号化する場合には、ステップ101におけるメモリ15への初期値IVのロードは行われない。また、レジスタ16にロードされるフラグCBCF、CRYFは“0”レベルとされる。
【0042】
すると、フローチャート100における処理の流れは、ステップ123からステップ119に進むので、イクスクルーシブオア回路12Aにおけるイクスクルーシブオア処理は実行されず、第n番目の平文データのブロックは、そのまま平文メモリ11のもとの暗号文データと置換されることになる。したがって、ECBモードの平文データが得られることになる。
【0043】
▲1▼−5 まとめ
上述のようにして、平文データのブロック暗号化(および暗号文データのブロック復号化)が実行されるが、その場合、ホストコンピュータ20は、平文データを平文メモリ11の容量単位でブロック暗号回路10にアクセスすればよいので、コンピュータ20の負担が軽くなる。
【0044】
すなわち、図5の暗号回路の場合には、ホストコンピュータは、1ブロック64ビットごとに平文データの送信および暗号文データの受信を行う必要があり、その送信および受信の回数が多くなるので、ホストコンピュータの負担が大きくなるが、図1のブロック暗号回路10の場合には、ホストコンピュータ20は、例えば32ブロック2Kバイトごとに平文データの送信および暗号文データの受信を行えばよく、その送信および受信回数が1/256(=64ビット/2Kバイト)と大幅に少なくなるので、ホストコンピュータ20の負担が軽くなる。さらに、ホストコンピュータ20が暗号化処理に必要とする時間も短縮することができる。
【0045】
また、ホストコンピュータ20は、ブロック暗号回路10に平文データを送信した後は、ブロック暗号回路10から暗号化データを受信するまで、ブロックのイクスクルーシブオア処理やブロックの管理などの処理をする必要がないので、この点からも負担が軽くなり、ホストコンピュータ20は本来の処理に集中できる。例えば、CDプレーヤなどに使用した場合には、そのシステム制御用のコンピュータがホストコンピュータ20となるが、システム制御のための処理に集中できる。また、このことにより、特に携帯用の機器においては、システム制御用のコンピュータとして高度のものを使用する必要がなくなる。
【0046】
さらに、暗号化する平文データの長さは、平文メモリ11の容量の整数倍である必要がなく、任意の長さの平文データを暗号化することができる。すなわち、可変長のブロック暗号回路である。また、平文メモリー11の容量を単位として暗号化処理および復号化処理を行うことができるので、連鎖暗号処理時における伝送誤りの影響を軽減することができる。しかも、以上の効果を得るために、特殊な回路を必要とすることがない。
【0047】
▲2▼ 記録再生装置
図3は、この発明をCD−R/RW記録再生装置に適用した場合の一形態を示す。
【0048】
すなわち、暗号化および復号化を必要としない記録時には、信号源、例えばマイクロフォン31からのオーディオ信号がインターフェイス回路33に供給されてデジタルオーディオデータにA/D変換され、このデジタルオーディオデータが、後述するマイクロコンピュータ40のシステムバス49を通じてディスクインターフェイス回路34に供給されてエラー訂正用のエンコード処理および記録用のEFM変調処理が行われる。そして、このエンコード処理および変調処理の行われた信号が、ディスクドライブ装置35に供給され、CD−RあるいはCD−RWなどのディスク36に記録される。
【0049】
また、再生時には、ドライブ装置35によりディスク36から信号が再生され、この再生信号がディスクインターフェイス回路34に供給されて記録時とは相補の処理、すなわち、EFM復調処理およびエラー訂正用のデコード処理が行われ、もとのデジタルオーディオデータが取り出される。そして、このデジタルオーディオデータがシステムバス49を通じてインターフェイス回路33に供給されてアナログのオーディオ信号にD/A変換され、このオーディオ信号が所定の信号出力先、例えばスピーカ32に供給される。
【0050】
なお、デジタルオーディオデータ以外のデジタルデータをディスク36に対して記録あるいは再生する場合には、そのためのエンコード処理やデコード処理などが必要となるが、それらの処理もディスクインターフェイス回路34において実行される。
【0051】
また、マイクロコンピュータ40は、この記録再生装置全体の動作を制御するシステムコントロール回路を構成しているもので、CPU41、各種のプログラムおよびデータの書き込まれたROM42、ワークエリア用のRAM43を有し、これらがシステムバス49に接続される。さらに、▲1▼において説明したブロック暗号回路10が、その内部バス19を通じてシステムバス49に接続される。なお、RAM43は、その一部のアドレスエリアがメモリ23として使用される。
【0052】
さらに、ユーザインターフェイスとして、各種の操作キー44およびディスプレイ、例えばLCD45もシステムバス49に接続される。また、システムバス49には、外部インターフェイスとしてUSBインターフェイス回路46が接続され、このUSBインターフェイス回路46に、外部機器として例えばパーソナルコンピュータ50が接続される。
【0053】
そして、オーディオ信号の暗号化および記録と、再生および復号化の処理が、以下のように行われる。
【0054】
▲2▼−1 オーディオ信号の暗号化および記録
オーディオ信号を暗号化してディスク36に記録する場合には、マイクロフォン31からのオーディオ信号がインターフェイス回路33に供給されてデジタルオーディオデータにA/D変換され、このデジタルオーディオデータがRAM43にいったんバッファリングされてからブロック暗号回路10に供給される。こうして、RAM43のデジタルオーディオデータは、ブロック暗号回路10により例えば2Kバイトごとに▲1▼において説明したように暗号データにブロック暗号化される。
【0055】
そして、このRAM43の暗号データが、ディスクインターフェイス回路34に供給されてエラー訂正用のエンコード処理および記録用のEFM変調処理が行われ、その後、ディスクドライブ装置35に供給され、ディスク36に記録される。
【0056】
▲2▼−2 オーディオ信号の再生および復号化
ディスク36に記録されているオーディオ信号を復号化して再生する場合には、ドライブ装置35によりディスク36から信号が再生され、この再生信号がディスクインターフェイス回路34に供給されてもとの暗号データがデコードされて取り出される。そして、この暗号データが、RAM43にいったんバッファリングされてから例えば2Kバイトずつブロック暗号回路10に供給され、▲1▼において説明したように、もとのデジタルオーディオデータにブロック復号化される。
【0057】
そして、この復号化されたデジタルオーディオデータが、RAM43からインターフェイス回路33に供給されてもとのアナログのオーディオ信号にD/A変換され、このオーディオ信号が例えばスピーカ32に供給される。
【0058】
▲2▼−3 暗号データの再暗号化
これは、例えば、ディスク36に暗号化されて記録されているオーディオ信号を、いったん復号化してから別の秘密鍵を使用して再び暗号化し、その再暗号文データをパーソナルコンピュータ50に出力する場合である。また、以下は、復号化されたデジタルオーディオデータを、4Kバイトごと再暗号化する場合である。そして、この場合には、CPU41は、例えば図4に示すルーチン200を実行する。
【0059】
すなわち、ディスク36の再生が開始されると、▲2▼−2と同様、ディスク36からの再生信号が、ディスクインターフェイス回路34によりもとの暗号文データにデコードされて出力されるが、ステップ201において、その暗号文データがRAM43に順次書き込まれていく。このとき、ステップ202において、RAM43への暗号文データの書き込みが2Kバイトに達したかどうかが判別され、達していないときには、ステップ201により暗号文データのRAM43への書き込みが続行される。
【0060】
そして、RAM43に書き込まれた暗号文データが2Kバイトに達すると、CPU41の処理はステップ202からステップ203に進み、このステップ203において、フローチャート100の処理が実行されてRAM43の暗号文データは平文データ(デジタルオーディオデータ)に復号化され、次にステップ204において、RAM43における平文データが4Kバイトに達したかどうかが判別され、達していないときには、処理はステップ201に戻る。こうして、RAM43には、ディスク36から再生された暗号文データが順次書き込まれていくとともに、その暗号文データは2Kバイトごとに平文データ(デジタルオーディオデータ)に復号化されていく。
【0061】
そして、RAM43における平文データが4Kバイトに達すると、これがステップ204において判別され、処理はステップ204からステップ211に進み、このステップ211において、フローチャート100の処理が実行され、RAM43の4Kバイトの平文データのうち、前半の2Kバイトの平文データが暗号文データに暗号化される。
【0062】
続いて、処理はステップ212に進み、このステップ212において、再びフローチャート100の処理が実行され、RAM43の4Kバイトの平文データのうち、後半の2Kバイトの平文データが暗号文データに暗号化される。なお、この場合、ステップ212におけるフローチャート100の処理のときには、ステップ101の初期化は実行されず、ステップ211におけるフローチャート100の処理のときのフラグCBCF、IVF、CRYFの値がそのまま使用される。
【0063】
そして、ステップ213において、ディスク36の再生を終了するかどうかが判別され、終了しないときには、処理はステップ213からステップ201に戻り、ステップ201以降の処理が繰り返される。したがって、RAM43には、再暗号文データが4Kバイトずつ得られるが、この再暗号文データは、USBインターフェイス回路46を通じて例えばパーソナルコンピュータ50が供給される。
【0064】
こうして、ディスク36に暗号化されて記録されているオーディオ信号は再暗号化されてパーソナルコンピュータ50に出力されるが、この場合、フローチャート200からも明かなように、マイクロコンピュータ40は、暗号文データあるいは平文データの2Kバイトごとに処理を実行すればよいので、上記のようにディスク36を再生しながらリアルタイムで処理を実行することができる。
【0065】
▲3▼ その他
フローチャート100において、ステップ131の処理が終了した場合に、メモリ23に平文データが残っているとき、ステップ131に続いてステップ102から処理を繰り返すこともできる。
【0066】
〔この明細書で使用している略語の一覧〕
A/D  :Analog to Digital
CBC  :Cipher Block Chaining
CD   :Compact Disc
CD−R :CD Recordable
CD−RW:CD ReWritable
CFB  :K−bit Cipher FeedBack
CPU  :Central Processing Unit
D/A  :Digital to Analog
DMA  :Direct Memory Access
ECB  :Electronic Code Book
EFM  :Eight to Fourteen Modulation
K    :1024
LCD  :Liquid Crystal Display
OFB  :K−bit Output FeedBack
RAM  :Random Access Memory
ROM  :Read Only Memory
USB  :Universal Serial Bus
【0067】
【発明の効果】
この発明によれば、ホストコンピュータは、平文データ(あるいは暗号文データ)を平文メモリの容量単位で暗号回路にアクセスすればよいので、ホストコンピュータの負担が大幅に軽くなる。さらに、ホストコンピュータが暗号化処理に必要とする時間も短縮することができる。
【0068】
また、ホストコンピュータは、暗号回路に平文データを送信した後は、暗号回路から暗号化データを受信するまで、ブロックのイクスクルーシブオア処理やブロックの管理などの処理をする必要がないので、この点からも負担が軽くなり、本来のシステム制御に集中できる。
【0069】
さらに、任意の長さの平文データを暗号化することができ、すなわち、可変長のブロック暗号回路である。また、平文メモリーの容量を単位として暗号化処理および復号化処理を行うことができるので、連鎖暗号処理時における伝送誤りの影響を軽減することができる。しかも、以上の効果を得るために、特殊な回路を必要とすることがない。
【0070】
また、ディスクなどに暗号化されて記録されているオーディオ信号を再暗号化して外部に出力することができるが、この場合、ホストコンピュータは、暗号文データあるいは平文データを平文メモリの容量単位で処理すればよいので、リアルタイムで処理を実行することができる。
【図面の簡単な説明】
【図1】この発明の一形態を示す系統図である。
【図2】図1の回路の処理の流れを示すフローチャートである。
【図3】この発明の一形態を示す系統図である。
【図4】図3の回路の処理を示すフローチャートである。
【図5】この発明を説明するための系統図である。
【図6】この発明を説明するための系統図である。
【符号の説明】
10…ブロック暗号回路、11…平文メモリ、12…データコントロール回路、12A…イクスクルーシブオア回路、12B…ラッチ回路、13…暗号化回路、14…メモリコントロール回路、15…メモリ、16…レジスタ、20…ホストコンピュータ

Claims (14)

  1. 外部からのデータを第1のメモリに転送し、
    この第1のメモリに転送されたデータを第2のメモリに転送し、
    この第2のメモリに蓄積されたデータを所定のブロック単位で暗号化処理し、
    この暗号化処理されたデータを上記第2のメモリに転送し、
    上記第2のメモリに蓄積されている上記暗号化処理されたデータが、上記ブロック単位の整数倍になったとき、当該暗号化処理されたデータを上記第1のメモリに転送する
    ようにしたブロック暗号方法。
  2. 請求項1に記載のブロック暗号方法において、
    上記データを、上記ブロック単位の整数倍の単位で上記第1のメモリから第2のメモリに転送する
    ようにしたブロック暗号方法。
  3. 請求項1に記載のブロック暗号方法において、
    上記第1のメモリから上記第2のメモリに転送されたデータを初期値あるいは1つ前の暗号化処理されたデータと演算処理してから暗号化処理する
    ようにしたブロック暗号方法。
  4. 外部からの暗号化されたデータを第1のメモリに転送するステップと、
    上記暗号化されたデータを上記第1のメモリから第2のメモリに転送するステップと、
    上記第2のメモリに蓄積された暗号化されたデータを所定のブロック単位で復号処理するステップと、
    上記復号処理されたデータを上記第2のメモリに転送するステップと、
    上記復号処理されたデータが上記ブロック単位の整数倍となったとき、当該復号されたデータを上記第1のメモリに転送するステップと
    からなるブロック復号方法。
  5. 請求項4に記載のブロック復号方法において、
    上記暗号化されたデータを、上記ブロック単位の整数倍の単位で上記第1のメモリから第2のメモリに転送する
    ようにしたブロック復号方法。
  6. 請求項4に記載のブロック復号方法において、
    上記第1のメモリから上記第2のメモリに転送された暗号化されたデータを初期値あるいは1つ前の暗号化されたデータと演算処理してから暗号化処理する
    ようにしたブロック復号方法。
  7. メモリと、
    このメモリに蓄積されたデータをブロック単位で暗号化処理する暗号化回路とを有し、
    外部から転送されたデータを上記メモリに蓄積した後、上記暗号化回路に供給してブロック単位で暗号化処理し、
    その暗号化処理されたデータを上記メモリに蓄積し、
    上記暗号化処理されたデータが上記ブロック単位の整数倍になったとき、当該暗号化処理されたデータを外部に出力する
    ようにしたブロック暗号回路。
  8. 請求項7に記載のブロック暗号回路において、
    上記データと初期値あるいは1つ前の暗号化されたデータと演算処理してから暗号化処理する
    ようにしたブロック暗号回路。
  9. 暗号文データを蓄積するためのメモリと、
    このメモリに蓄積された暗号文データをブロック単位で復号化処理する復号化回路と
    を有し、
    外部から転送された暗号文データを上記メモリに蓄積した後、ブロック単位で上記復号化回路に供給して復号化処理し、
    その復号化処理されたデータを上記メモリに蓄積し、
    上記復号化処理されたデータが上記ブロック単位の整数倍になったとき、その復号化処理されたデータを外部に出力する
    ようにしたブロック復号回路。
  10. 請求項9に記載のブロック復号回路において、
    上記暗号文データと初期値あるいは1つ前の復号化されたデータとを演算処理してから復号化処理をする
    ようにしたブロック復号回路。
  11. 外部からのデータを蓄積する第1のメモリと、
    第1のメモリと第2のメモリとの間でデータの送受信を行う通信回路と、
    この通信回路を通じて上記第1のメモリから送信されたデータを蓄積する第2のメモリと、
    この第2のメモリに蓄積されたデータを所定のブロック単位で暗号化処理し、上記第2のメモリに送信する暗号化回路と、
    上記暗号化回路により暗号化処理されたデータが上記ブロック単位の整数倍となったとき、当該暗号化されたデータを上記第1のメモリに転送させるように上記第2のメモリを制御するメモリ制御回路と
    からなる暗号装置。
  12. 請求項11に記載の暗号装置において、
    上記メモリ制御回路は、上記データを上記ブロック単位の整数倍の単位で上記第1のメモリから上記第2のメモリに送信させる
    ようにした暗号装置。
  13. 外部からの暗号文データを蓄積する第1のメモリと、
    この第1のメモリと第2のメモリとの間で上記暗号文データの送受信を行う通信回路と、
    この通信回路により上記第1のメモリから送信された暗号文データを蓄積する第2のメモリと、
    この第2のメモリに蓄積された暗号文データを所定のブロック単位で復号化処理し、上記第2のメモリに送信する復号化回路と、
    この復号化回路により復号化処理された平文データが上記ブロック単位の整数倍となったとき、当該復号化された平文データを上記第1のメモリに転送させるように上記第2のメモリを制御するメモリ制御回路と
    からなる復号装置。
  14. 請求項13に記載の復号装置において、
    上記メモリ制御回路は、上記暗号文データを上記ブロック単位の整数倍の単位で上記第1のメモリから上記第2のメモリに送信させる
    ようにした復号装置。
JP2002291949A 2002-10-04 2002-10-04 ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置 Pending JP2004126323A (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2002291949A JP2004126323A (ja) 2002-10-04 2002-10-04 ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置
PCT/JP2003/012234 WO2004032097A1 (ja) 2002-10-04 2003-09-25 ブロック暗号/復号方法、回路、及び装置
KR1020047008372A KR20050069924A (ko) 2002-10-04 2003-09-25 블록 암호/복호방법, 회로 및 장치
CNB038017156A CN1290069C (zh) 2002-10-04 2003-09-25 分组加密/解密的方法及设备
US10/497,109 US7529366B2 (en) 2002-10-04 2003-09-25 Block encoding/decoding method, circuit, and device
EP03799130A EP1548688A1 (en) 2002-10-04 2003-09-25 Block encoding/decoding method, circuit, and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002291949A JP2004126323A (ja) 2002-10-04 2002-10-04 ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置

Publications (1)

Publication Number Publication Date
JP2004126323A true JP2004126323A (ja) 2004-04-22

Family

ID=32063904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002291949A Pending JP2004126323A (ja) 2002-10-04 2002-10-04 ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置

Country Status (6)

Country Link
US (1) US7529366B2 (ja)
EP (1) EP1548688A1 (ja)
JP (1) JP2004126323A (ja)
KR (1) KR20050069924A (ja)
CN (1) CN1290069C (ja)
WO (1) WO2004032097A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008109611A (ja) * 2006-09-29 2008-05-08 Fujitsu Ltd 暗号変換装置、暗号変換方法および暗号変換プログラム
WO2009128370A1 (ja) * 2008-04-15 2009-10-22 日本電気株式会社 調整値付きブロック暗号装置、暗号生成方法および記録媒体
JP2010016526A (ja) * 2008-07-02 2010-01-21 Mitsubishi Electric Corp 通信装置及び暗号通信システム及び通信方法及び通信プログラム
PL429447A1 (pl) * 2019-03-29 2019-07-29 Politechnika Opolska Układ szyfrowania danych

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FI115356B (fi) * 2001-06-29 2005-04-15 Nokia Corp Menetelmä audiovisuaalisen informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä ja elektroniikkalaite
FI115257B (fi) * 2001-08-07 2005-03-31 Nokia Corp Menetelmä informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä, elektroniikkalaite ja suoritinlohko
JP2006229863A (ja) * 2005-02-21 2006-08-31 Seiko Epson Corp 暗号化/復号化装置、通信コントローラ及び電子機器
US20080084995A1 (en) * 2006-10-06 2008-04-10 Stephane Rodgers Method and system for variable and changing keys in a code encryption system
JP4347351B2 (ja) * 2007-02-15 2009-10-21 富士通株式会社 データ暗号化装置、データ復号化装置、データ暗号化方法、データ復号化方法およびデータ中継装置
JP2009069686A (ja) * 2007-09-14 2009-04-02 Konica Minolta Business Technologies Inc 暗号化回路及び復号化回路
WO2009147788A1 (ja) * 2008-06-04 2009-12-10 パナソニック株式会社 暗号化装置及び暗号化システム
CN101355421B (zh) * 2008-09-25 2011-05-11 中国电信股份有限公司 分组加解密数据长度适配的方法
JP5228803B2 (ja) * 2008-10-30 2013-07-03 富士通セミコンダクター株式会社 共通鍵ブロック暗号におけるスワップ回路及び、それを有する暗号化・復号化回路
US9680637B2 (en) * 2009-05-01 2017-06-13 Harris Corporation Secure hashing device using multiple different SHA variants and related methods
US20130042112A1 (en) * 2011-02-12 2013-02-14 CertiVox Ltd. Use of non-interactive identity based key agreement derived secret keys with authenticated encryption
DE112014006666T5 (de) * 2014-05-14 2017-01-26 Mitsubishi Electric Corporation Verschlüsselungsvorrichtung, Speichersystem, Entschlüsselungsvorrichtung, Verschlüsselungsverfahren, Entschlüsselungsverfahren, Verschlüsselungsprogramm und Entschlüsselungsprogramm
CN105391543A (zh) * 2015-11-09 2016-03-09 中国电子科技集团公司第三十研究所 一种基于iSCSI网络存储的加密实现方法及实现系统
EP3661115B1 (en) * 2017-09-01 2024-01-17 Mitsubishi Electric Corporation Encryption device, decryption device, encryption method, decryption method, encryption program, and decryption program
CN112035866B (zh) * 2020-11-04 2021-07-23 湖北芯擎科技有限公司 一种数据加密方法、装置、设备和计算机可读存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0719124B2 (ja) * 1986-09-17 1995-03-06 株式会社日立製作所 暗号装置
US5008935A (en) * 1989-06-30 1991-04-16 At&T Bell Laboratories Efficient method for encrypting superblocks of data
US6708273B1 (en) * 1997-09-16 2004-03-16 Safenet, Inc. Apparatus and method for implementing IPSEC transforms within an integrated circuit
CN100428751C (zh) * 2000-12-25 2008-10-22 松下电器产业株式会社 安全通信包处理装置及其方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008109611A (ja) * 2006-09-29 2008-05-08 Fujitsu Ltd 暗号変換装置、暗号変換方法および暗号変換プログラム
US8713328B2 (en) 2006-09-29 2014-04-29 Fujitsu Limited Code conversion apparatus, code conversion method, and computer product
WO2009128370A1 (ja) * 2008-04-15 2009-10-22 日本電気株式会社 調整値付きブロック暗号装置、暗号生成方法および記録媒体
JP5273141B2 (ja) * 2008-04-15 2013-08-28 日本電気株式会社 調整値付きブロック暗号装置、暗号生成方法および記録媒体
US8526602B2 (en) 2008-04-15 2013-09-03 Nec Corporation Adjustment-value-attached block cipher apparatus, cipher generation method and recording medium
JP2010016526A (ja) * 2008-07-02 2010-01-21 Mitsubishi Electric Corp 通信装置及び暗号通信システム及び通信方法及び通信プログラム
PL429447A1 (pl) * 2019-03-29 2019-07-29 Politechnika Opolska Układ szyfrowania danych

Also Published As

Publication number Publication date
CN1290069C (zh) 2006-12-13
CN1602508A (zh) 2005-03-30
KR20050069924A (ko) 2005-07-05
US20050031123A1 (en) 2005-02-10
EP1548688A1 (en) 2005-06-29
US7529366B2 (en) 2009-05-05
WO2004032097A1 (ja) 2004-04-15

Similar Documents

Publication Publication Date Title
JP2004126323A (ja) ブロック暗号方法、ブロック暗号回路、暗号装置、ブロック復号方法、ブロック復号回路および復号装置
US6618789B1 (en) Security memory card compatible with secure and non-secure data processing systems
US10554387B2 (en) Architecture and instruction set for implementing advanced encryption standard (AES)
US7929692B2 (en) Firmware encrypting and decrypting method and an apparatus using the same
US20090274297A1 (en) Digital content decrypting apparatus and operating method thereof
EP1043860A2 (en) Security units, memory units, data processing units and data encryption methods
JP2004226969A (ja) 暗号システム及び多様なモードを支援する方法
TW200903254A (en) Performing AES encryption or decryption in multiple modes with a single instruction
US20200313860A1 (en) A hardware multiple cipher engine
JP5118494B2 (ja) イン−ストリームデータ暗号化/復号の機能を有するメモリシステム
KR101117588B1 (ko) 암호화 표시정보를 갖는 기록매체
GB2398213A (en) Encryption using the KASUMI algorithm
JP2003152703A (ja) 暗号化装置、暗号化方法、復号化装置、復号化方法、暗号化復号化装置及び暗号化復号化方法
WO2007028241A2 (en) Method and system for data security of recording media
WO2000031744A1 (en) Copy management for data systems
US7386124B2 (en) Block encoding method and block encoding/decoding circuit
JP2003195758A (ja) データ処理装置、インタフェースボードおよびデータ秘匿方法
KR100320181B1 (ko) 디지탈 데이터 파일 암호화 방법
KR20080112082A (ko) 데이터 암호화방법, 암호화데이터 재생방법
JP2004109177A (ja) コンテンツデータ記録媒体、コンテンツデータ復号装置、コンテンツデータ暗号化装置、コンテンツデータ復号方法及びコンテンツデータ暗号化方法
JP3588593B2 (ja) 複製制御方法及び複製制御装置
KR100321934B1 (ko) 무단 복제를 방지하기 위한 휴대용 저장매체를 갖는 시스템
JPH1139794A (ja) 暗号データ復号装置
EP1684480A1 (en) Method for transmitting informations between a computer device and a consumer device
JP2004184567A (ja) Aesブロック暗号方法およびその暗号回路