Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3625354B2 - Unit device, decryption unit device, encryption unit device, encryption processing system, and encryption method - Google Patents
[go: Go Back, main page]

JP3625354B2 - Unit device, decryption unit device, encryption unit device, encryption processing system, and encryption method - Google Patents

Unit device, decryption unit device, encryption unit device, encryption processing system, and encryption method Download PDF

Info

Publication number
JP3625354B2
JP3625354B2 JP10205597A JP10205597A JP3625354B2 JP 3625354 B2 JP3625354 B2 JP 3625354B2 JP 10205597 A JP10205597 A JP 10205597A JP 10205597 A JP10205597 A JP 10205597A JP 3625354 B2 JP3625354 B2 JP 3625354B2
Authority
JP
Japan
Prior art keywords
data
encryption key
data encryption
key
identification information
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.)
Expired - Fee Related
Application number
JP10205597A
Other languages
Japanese (ja)
Other versions
JPH10293724A (en
Inventor
岳久 加藤
直樹 遠藤
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP10205597A priority Critical patent/JP3625354B2/en
Publication of JPH10293724A publication Critical patent/JPH10293724A/en
Application granted granted Critical
Publication of JP3625354B2 publication Critical patent/JP3625354B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ディジタル化された文書、音声、画像、プログラムなどのデータをネットワークを介して通信を行うシステムあるいは前記ディジタルデータを記録保存し、読み出しするシステムのためのユニット装置、復号化ユニット装置、暗号化ユニット装置、暗号処理システム及び暗号化方法に関する。
【0002】
【従来の技術】
現在、計算機が広範に普及しており、種々の分野で情報を電子化して処理し、あるいは情報を電子化して記録装置に保存することが通常行われるようになっている。また、ネットワーク環境も益々整ってきており、情報を電子化して通信することも通常行われるようになってきている。さらには、文書情報だけでなく、音声や画像などのデータを電子化して扱う技術も急速に進歩してきている。
【0003】
ところで、電子化して扱う情報には、もちろん企業秘密や個人情報のように秘匿性を要する情報が含まれる。また、著作権に係る情報のように扱いに注意を要する情報も含まれる。
【0004】
そこで、情報を電子化して扱う際に、暗号化を行っておき、正当な者だけがこれを復号できるようにする技術が良く使われている。
例えば、データを暗号化して記録媒体に保存し、また記録媒体から暗号化データを読み出して復号し元のデータを取り出す暗号システムでは、予め暗号化と復号に用いる秘密鍵を定めておき、この秘密鍵を用いて保存、読み出しが行われる。このシステムによれば、秘密鍵を用いることができる者だけが保存された暗号化データを復号することができ、秘密鍵が解読されない限り、秘密鍵を用いることができない第三者が暗号化されたデータを不正に解読することはできない。
【0005】
【発明が解決しようとする課題】
しかしながら、上記システムでは、もし第三者の不正な攻撃により秘密鍵が解読されると、すべての暗号化データが解読されるばかりでなく、解読により得たデータ(プレインデータ)を自由にコピーすることが可能となってしまう。
【0006】
また、秘密鍵が解読されなくても、他の暗号化システムにも同一の秘密鍵を内蔵するような場合には、暗号化データをそのままコピーすることにより、簡単に海賊版の作成ができてしまう。
【0007】
さらに、秘密鍵が暴かれたことが発覚した場合、該当する暗号化システムの秘密鍵を更新する必要があり繁雑であるだけでなく、秘密鍵の更新後には当該暴かれた秘密鍵が復号にも使用できなくなるような更新形態をとるシステムにおいては、秘密鍵の更新後は当該暴かれた秘密鍵で暗号化されていたデータを復号することができなくなり、正当な者も元の内容を得ることができなくなってしまう不具合がある。
【0008】
本発明は、上記事情を考慮してなされたものであり、第三者による不正なコピーを防止することができるユニット装置、復号化ユニット装置、暗号化ユニット装置、暗号処理システム及び暗号化方法を提供することを目的とする。
【0009】
また、本発明は、第三者が鍵情報を取得しあるいは暗号化データを解読することを困難にするユニット装置、復号化ユニット装置、暗号化ユニット装置、暗号処理システム及び暗号化方法を提供することを目的とする。
【0010】
さらに、本発明は、鍵情報の更新手続きを不要とするユニット装置、復号化ユニット装置、暗号化ユニット装置、暗号処理システム及び暗号化方法を提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明は、計算機のCPUバスを介さずに入力したデータ(デジタル化されたデータ;例えば、文書、音声、画像、プログラムなど)を所定の記録媒体に記録する前に暗号化する装置のために、データ暗号化鍵を生成し記録する、計算機のCPUバスに接続されて使用されるユニット装置であって、暗号化対象となるデータの識別番号を生成するための手段と、前記データの暗号化に用いるデータ暗号化鍵を生成するための手段と、生成されたデータ暗号化鍵と識別番号とを対応付けて記録するための手段と、前記計算機のCPUバスを介して前記暗号化する装置に前記データ暗号化鍵または前記データ暗号化鍵と前記識別情報の両方を外部から取得されることなく安全に伝えるための手段とを備えたことを特徴とする。
【0012】
本発明は、暗号化されて所定の記録媒体に記録されたデータを復号する、計算機のCPUバスに接続されて使用される復号化ユニット装置であって、前記計算機のCPUバスを介さずに入力されたデータを暗号化する暗号化ユニット装置が暗号化対象とするデータの識別番号を生成するための手段と、前記暗号化ユニット装置が前記データの暗号化に用いるデータ暗号化鍵を生成するための手段と、生成されたデータ暗号化鍵と識別番号とを対応付けて記録するための手段と、前記計算機のCPUバスを介して前記暗号化ユニットに前記データ暗号化鍵を外部から取得されることなく安全に伝えるための手段と、自装置内に識別情報と対応して記録されているデータ暗号化鍵のうちから、識別情報とこれに対応するデータ暗号化鍵で暗号化されたデータが記録された前記記録媒体から読み出され前記CPUバスを介して与えられた識別情報に対応するデータ暗号化鍵を求めるための手段と、求められた前記データ暗号化鍵を復号鍵として、前記記録媒体から読み出され前記CPUバスを介して与えられた暗号化されたデータを復号するための手段とを備えたことを特徴とする。
【0013】
本発明は、暗号化されて所定の記録媒体に記録されたデータを復号する、計算機のCPUバスに接続されて使用される復号化ユニット装置であって、前記計算機のCPUバスを介さずに入力されたデータを暗号化する暗号化ユニット装置が暗号化対象とするデータの識別番号を生成するための手段と、前記暗号化ユニット装置が前記データと前記識別情報の暗号化に用いるデータ暗号化鍵を生成するための手段と、生成されたデータ暗号化鍵と識別番号とを対応付けて記録するための手段と、前記計算機のCPUバスを介して前記暗号化ユニットに前記データ暗号化鍵と前記識別情報を外部から取得されることなく安全に伝えるための手段と、自装置内に識別情報と対応して記録されているデータ暗号化鍵のうちから、データ暗号化鍵で暗号化された識別情報と該データ暗号化鍵で暗号化されたデータが記録された前記記録媒体から読み出され前記CPUバスを介して与えられた暗号化された識別情報に対応するデータ暗号化鍵を求めるための手段と、求められた前記データ暗号化鍵を復号鍵として、前記記録媒体から読み出され前記CPUバスを介して与えられた暗号化されたデータを復号するための手段とを備えたことを特徴とする。
【0014】
好ましくは、前記データ暗号化鍵を求めるための手段は、自装置内に記録されている識別情報とデータ暗号化鍵の組のうちから、前記記録媒体から読み出されたデータ暗号化鍵で暗号化された識別情報を自装置内に記録されているデータ暗号化鍵で復号して得られる識別情報と、該データ暗号化鍵に対応して自装置内に記録されている識別情報とが等しくなる組を探すことにより、復号に用いるべきデータ暗号化鍵を求めるものである。
【0015】
好ましくは、前記記録媒体から読み出された暗号化されたデータを復号して得られたもとのデータに所定の変換処理を施した後に、前記計算機のCPUバスを介さずに外部に出力するための手段をさらに備えても良い。
【0016】
本発明は、計算機のCPUバスを介さずに入力されたデータを、所定の記録媒体に記録する前に暗号化する暗号化ユニット装置であって、暗号化対象となるデータの識別番号と該データの暗号化に用いるデータ暗号化鍵を生成しこれらを対応付けて記録する装置から、前記計算機のCPUバスを介して前記データ暗号化鍵または前記データ暗号化鍵と前記識別情報の両方を外部から取得されることなく安全に受け取るための手段と、受け取った前記データ暗号化鍵を用いて前記暗号化対象となるデータまたは前記暗号化対象となるデータと受け取った前記識別情報の両方を暗号化するための手段とを備えたことを特徴とする。
【0017】
本発明は、計算機のCPUバスを介さずに入力されたデータを、所定の記録媒体に記録する前に暗号化する暗号化ユニット装置であって、暗号化対象となるデータの識別番号と該データの暗号化に用いるデータ暗号化鍵を生成しこれらを対応付けて記録し、与えられた識別情報またはデータ暗号化鍵で暗号化された識別情報をもとにして求めたデータ暗号化鍵を用いて与えられた暗号化されたデータを復号する復号化ユニットから、前記計算機のCPUバスを介して前記データ暗号化鍵または前記データ暗号化鍵と前記識別情報の両方を外部から取得されることなく安全に受け取るための手段と、受け取った前記データ暗号化鍵を用いて前記暗号化対象となるデータまたは前記暗号化対象となるデータと受け取った前記識別情報の両方を暗号化するための手段とを備えたことを特徴とする。
【0018】
本発明は、計算機のCPUバスに接続された暗号化ユニットと復号化ユニットを用いてCPUバスを介さずに外部から入力されたデータを所定の記録媒体に記録する前に暗号化しおよび該復号化ユニットを用いて該記録媒体に記録された暗号化されたデータを復号する暗号処理システムであって、前記復号化ユニットは、暗号化対象となるデータの暗号化に用いるデータ暗号化鍵を生成するための手段と、前記データの識別番号を生成するための手段と、生成されたデータ暗号化鍵と識別番号とを対応付けて記録するための手段と、前記計算機のCPUバスを介して前記暗号化ユニットに前記データ暗号化鍵を外部から取得されることなく安全に伝えるための手段と、自ユニット内に識別情報と対応して記録されているデータ暗号化鍵のうちから、識別情報とこれに対応するデータ暗号化鍵で暗号化されたデータが記録された前記記録媒体から読み出され前記CPUバスを介して与えられた識別情報に対応するデータ暗号化鍵を求めるための手段と、求められた前記データ暗号化鍵を復号鍵として、前記記録媒体から読み出され前記CPUバスを介して与えられた暗号化されたデータを復号するための手段を備え、前記暗号化ユニットは、前記計算機のCPUバスを介して前記データ暗号化鍵を外部から取得されることなく安全に受け取るための手段と、受け取った前記データ暗号化鍵を用いて前記暗号化対象となるデータを暗号化するための手段とを備えたことを特徴とする。
【0019】
好ましくは、前記記録媒体から読み出された暗号化されたデータを復号して得られたもとのデータに所定の変換処理を施した後に、前記計算機のCPUバスを介さずに外部に出力するための手段をさらに備えても良い。
【0020】
本発明は、計算機のCPUバスに接続された暗号化ユニットと復号化ユニットを用いてCPUバスを介さずに外部から入力されたデータを所定の記録媒体に記録する前に暗号化しおよび該復号化ユニットを用いて該記録媒体に記録された暗号化されたデータを復号する暗号処理システムであって、前記復号化ユニットは、暗号化対象となるデータの暗号化に用いるデータ暗号化鍵を生成するための手段と、前記データの識別番号を生成するための手段と、生成されたデータ暗号化鍵と識別番号とを対応付けて記録するための手段と、前記計算機のCPUバスを介して前記暗号化ユニットに前記データ暗号化鍵を外部から取得されることなく安全に伝えるための手段と、自ユニット内に識別情報と対応して記録されているデータ暗号化鍵のうちから、データ暗号化鍵で暗号化された識別情報と該データ暗号化鍵で暗号化されたデータが記録された前記記録媒体から読み出され前記CPUバスを介して与えられた暗号化された識別情報に対応するデータ暗号化鍵を求めるための手段と、求められた前記データ暗号化鍵を復号鍵として、前記記録媒体から読み出され前記CPUバスを介して与えられた暗号化されたデータを復号するための手段を備え、前記暗号化ユニットは、前記計算機のCPUバスを介して前記データ暗号化鍵と前記識別情報を外部から取得されることなく安全に受け取るための手段と、受け取った前記データ暗号化鍵を用いて前記暗号化対象となるデータと受け取った前記識別情報とをそれぞれ暗号化するための手段とを備えたことを特徴とする。
【0021】
好ましくは、前記データ暗号化鍵を求めるための手段は、自ユニット内に記録されている識別情報とデータ暗号化鍵の組のうちから、前記記録媒体から読み出されたデータ暗号化鍵で暗号化された識別情報を自ユニット内に記録されているデータ暗号化鍵で復号して得られる識別情報と、該データ暗号化鍵に対応して自ユニット内に記録されている識別情報とが等しくなる組を探すことにより、復号に用いるべきデータ暗号化鍵を求めるものである。
【0022】
好ましくは、前記記録媒体から読み出された暗号化されたデータを復号して得られたもとのデータに所定の変換処理を施した後に、前記計算機のCPUバスを介さずに外部に出力するための手段をさらに備えても良い。
【0023】
好ましくは、前記伝えるための手段および前記受け取るための手段は、それぞれ、前記計算機のCPUバスを介した情報のやり取りにより協調して行われる所定の鍵共有手順により所定の一時鍵を外部から取得されることなく共有するための手段を備えるとともに、前記伝えるための手段は、生成された前記データ暗号化鍵を共有した前記一時鍵で復号して出力するための手段を備え、前記受け取るための手段は、与えられた前記一時鍵で復号されたデータ暗号化鍵を共有した前記一時鍵で暗号化するための手段を備えても良い。
【0024】
本発明は、計算機のCPUバスに接続された暗号化ユニットと復号化ユニットを用いて、該CPUバスを介さずに外部から入力されたデータを所定の記録媒体に記録する前に暗号化する暗号化方法であって、前記復号化ユニットにて、暗号化対象となるデータの暗号化に用いるデータ暗号化鍵を生成するとともに、該データの識別番号を生成し、これら生成されたデータ暗号化鍵と識別番号とを対応付けて自ユニット内の所定の記録領域に記録し、前記復号化ユニットから前記計算機のCPUバスを介して前記暗号化ユニットに前記データ暗号化鍵を外部から取得されることなく安全に伝え、前記暗号化ユニットにて、前記暗号化対象となるデータを伝えられた前記データ暗号化鍵で暗号化することを特徴とする。
【0025】
本発明は、所定の記録媒体に識別情報とともに記録された暗号化されたデータを、計算機のCPUバスに接続された、識別情報とデータ暗号化鍵とを組にして記憶している復号化ユニットを用いて復号する復号化方法であって、自ユニット内に記録されているデータ暗号化鍵のうちから、前記記録媒体から読み出され前記CPUバスを介して与えられた識別情報に対応するデータ暗号化鍵を求め、求められた前記データ暗号化鍵を復号鍵として、前記記録媒体から読み出され前記CPUバスを介して与えられた暗号化されたデータを復号することを特徴とする。
【0026】
本発明は、計算機のCPUバスに接続された暗号化ユニットと復号化ユニットを用いて、該CPUバスを介さずに外部から入力されたデータを所定の記録媒体に記録する前に暗号化する暗号化方法であって、前記復号化ユニットにて、暗号化対象となるデータの暗号化に用いるデータ暗号化鍵を生成するとともに、該データの識別番号を生成し、これら生成されたデータ暗号化鍵と識別番号とを対応付けて自ユニット内の所定の記録領域に記録し、前記復号化ユニットから前記計算機のCPUバスを介して前記暗号化ユニットに前記データ暗号化鍵と前記識別情報を外部から取得されることなく安全に伝え、前記暗号化ユニットにて、前記暗号化対象となるデータと伝えられた前記識別情報とを、伝えられた前記データ暗号化鍵でそれぞれ暗号化することを特徴とする。
【0027】
本発明は、所定の記録媒体に暗号化された識別情報とともに記録された暗号化されたデータを、計算機のCPUバスに接続された、識別情報とデータ暗号化鍵とを組にして記憶している復号化ユニットを用いて復号する復号化方法であって、自ユニット内に記録されているデータ暗号化鍵のうちから、前記記録媒体から読み出され前記CPUバスを介して与えられたデータ暗号化鍵で暗号化された識別情報に対応するデータ暗号化鍵を求め、求められた前記データ暗号化鍵を復号鍵として、前記記録媒体から読み出され前記CPUバスを介して与えられた暗号化されたデータを復号することを特徴とする。
【0028】
本発明によれば、データを暗号化した暗号鍵をデータに付与した識別情報に対応して復号化ユニット内にデータベースとして記録しておくことにより、データを暗号化した計算機(あるいはデータの暗号化に用いた復号化ユニットそのものを組み込んだ計算機)でなければ復号を行うことができない。したがって、記録媒体の複製を作って頒布しても他の計算機では復号することができない。
【0029】
また、本発明によれば、データを暗号化するためのデータ暗号化鍵を、例えば共有化した一時鍵あるいはマスター鍵の鍵束の中の何れかを用いて暗号化するなどして、復号化ユニットと暗号化ユニットとの間でCPUバスを介して共有するため、CPUバスからこれらの情報を記録することは無意味である。
【0030】
また、本発明によれば、データを暗号化するデータ暗号化鍵自体も、またデータ暗号化鍵を共有化するために用いる一時鍵も、毎回変わるため、第3者により暗号を解読することは極めて困難である。
【0031】
したがって、本発明によれば、第3者による不正なコピーを防止することが可能となる。
また、本発明によれば、鍵情報の更新手続きが不要となる。
【0032】
【発明の実施の形態】
以下、図面を参照しながら発明の実施の形態を説明する。
本実施形態では、データを暗号化して記録媒体に記録し、また記録媒体から暗号化データを読み出し復号するシステムを例にとって説明する。
【0033】
本実施形態では、暗号化の操作をEy(x)と表す。ここで、xは暗号化の対象となるデータであり、yは暗号化に用いる暗号鍵である。また、復号化の操作をDy(z)と表す。ここで、zは復号化の対象となるデータであり、yは復号化に用いる復号鍵である。
【0034】
本実施形態では、あるデータをまず復号化し、その後、復号化されたデータを暗号化してもとのデータに戻すことがある。これは、暗号の性質上、データの復号化に暗号化と同等の作用があることに基づいている。つまり、復号化したデータをもとに戻すためには復号化に用いた鍵がわからなければならず、鍵が判れば復号化したデータを暗号化することにより最初に復号化したデータが得られる。この操作は、暗号鍵をxとしデータをyとすれば、
Ex(Dx(y))=y
で表される。
【0035】
本実施形態に係るシステムは、パーソナル・コンピュータなどの計算機(以下、PC)内に備えられたCPU(図示せず)のCPUバスに接続され、全体的な処理の流れの制御はプログラムで実現される。本実施形態では、データの入出力はCPUバス以外の例えばI/Oポート等を通じて行われるが、ディスクドライブ装置(図示せず)とユニットとの間、ユニットとユニットとの間でのデータ転送には、CPUバスが用いられる。従って、CPUバス上を流れるデータには、暗号化(あるいは暗号化に先だって行う復号化)を施している。
【0036】
本実施形態は、概略的には、一纏まりのデータを暗号化する際に、データの暗号化に用いるデータ暗号化鍵Sk1と識別情報IDの対を生成し、この対をデータベースに記録しておくとともに、記録媒体にはIDの情報とSk1で暗号化したデータを記録し、再生時には記録媒体から読み出したIDの情報をもとにデータベースからSk1を求め、Sk1を復号鍵として記録媒体に記録された暗号化データを復号するものである。
【0037】
第1,3の実施形態ではIDを暗号化せずに記録媒体に記録する例を、第2,4の実施形態ではIDをデータ暗号化鍵で暗号化して記録する例を示す。第1,3の実施形態では、データを暗号化した暗号鍵の検索を容易にし、復号時間を短縮することが可能となる。第2,4の実施形態ではIDを暗号化して記録媒体に記録することにより、暗号化されたデータをより厳密に第3者から守ることが可能となる。
【0038】
また、第1,2の実施形態ではCPUを介したユニット間で鍵を共有する1つの例を、第3,4の実施形態ではCPUを介したユニット間で鍵を共有する他の1つの例を示す。
【0039】
(第1の実施形態)
図1は、本発明の第1の実施形態に係るシステムの構成を示すブロック図である。なお、図1の鍵共有回路30a,30bの内部構成の一例を図2に示す。また、図3に本システムの暗号化の際の手順を、図4に鍵共有手順の一例を、図5に本システムの復号の際の手順をそれぞれ示す。
【0040】
図1に示すように、本実施形態に係るシステムは、暗号化ユニット118と復号化ユニット121を備えている。また、暗号化ユニット118と復号化ユニット121は、PCのCPUバス120に接続されている。
【0041】
また、CPUバス120にはディスクドライブ装置(図示せず)が接続されており、ディスクドライブ装置により記録媒体117への読み書きが行われる。
図1に示すように、暗号化ユニット118は、鍵共有回路30b、暗号化回路34,105cを備えている。暗号化ユニット118は、独立した1つのICチップとして形成されるものとする。
【0042】
復号化ユニット121は、データ暗号鍵生成回路107、ID生成回路108、復号化回路32,106c、ID/鍵情報記憶回路109を備えている。復号化ユニット121は、独立した1つのICチップとして形成されるものとする。
【0043】
なお、全体の制御は図示しない制御部が司るものとする。制御部は例えばプログラムを当該PCのCPUで実行することにより実現することができる。
データDataは、暗号化して記録する対象となる入力データであり、例えばPCのI/Oポートから入力される映像、音声、テキストなどのマルチメディア・データである。
【0044】
IDは、本実施形態では、一纏まりのデータ毎(例えばタイトル毎)に与えられる識別番号である。なお、IDは、ディスク毎に与えるようにしても良いし、ディスクの片面毎あるいは複数のディスクからなる組毎に与えるようにしても良いし、上記の一纏まりのデータをさらに細分化した部分毎(例えばチャプター毎あるいは曲毎など)に与えるようにしても良い。
【0045】
Sk1は、データの暗号化および復号に用いるデータ暗号鍵(共通鍵暗号方式における共通鍵)であり、IDと対で生成される。
Sktは、CPUバス120上に情報を流す際に、該情報を復号(暗号化に先だって行う復号)するための、その都度変化する一時鍵(共通鍵暗号方式における共通鍵)である。
【0046】
ID生成回路108は、ID番号を生成する。ID番号は、1から順番に発番するようにしても良いが、好ましくはランダムに発番する方が良い。後者の場合、生成されるIDが全て異なるようにするために、例えばID生成回路108を乱数発生器を用いて構成する方法が考えられる。なお、重複発番する可能性のある乱数等を用いる場合には、生成したIDが既発番のものと同じであるかどうかチェックし、重複して発番されたことが分かったならば、そのIDは破棄し、別のIDを生成し直すようにすると好ましい。
【0047】
データ暗号鍵生成回路107は、IDと対になるデータ暗号鍵Sk1を生成する。データ暗号鍵生成回路107は、例えば鍵長分の乱数発生器で構成しても良い。また、乱数を発生するにあたって、例えば時計(図示せず)からの時間情報を用いるようにしても良い。なお、全てのビットが0や1になる可能性のある乱数で鍵を生成する場合は、全てのビットが0や1になることがないようにチェック処理等をする必要がある。
【0048】
ID/鍵情報記憶回路109は、対になるIDとSk1とを対応づけて記憶するためのものでる。例えば、IDとSk1をデータベース化して保管しておく。鍵共有回路30a,30bは、少なくとも論理的に同一の構成を有し、後述する手順により相互に情報の受け渡しをして同一の一時鍵(バス鍵)Sktを生成し共有する。復号化ユニット121と暗号化ユニット118は、鍵共有回路30a,30bを用いて、同一の一時鍵Sktを外部から知得されることなく安全に共有する。鍵共有回路30a,30bは外部からその内部の論理が解析されないようにICチップ内に作り込むものとする。
【0049】
記録媒体117は、暗号化されたI/Oポートからの入力データを記録するためのものであり、例えばハードディスク、MO、FD、1回書き込み可能なCD、DVD−RAMなどを用いることが考えられる。
【0050】
なお、ディスクドライブ装置内には、記録の際に変調、誤り訂正回路を行い、再生の際に復調、誤り訂正回路を行う変復調/誤り訂正回路が内蔵される場合がある。
【0051】
また、本実施形態では、復号化ユニット121にはディジタルデータDataをアナログデータに変換するD/A変換回路が備えられ、復号化ユニット121からはアナログに変換されらデータが出力されるものとする。また、ディジタルデータDataが復号すべきものである場合にはこれを復号する復号回路をD/A変換回路の前に設けるものとする。例えばディジタルデータDataがMPEG方式で圧縮された画像データである場合に、MPEG復号回路を設けるものとする。また、種々の方式で圧縮等されたデータあるいは復号の必要ないデータのいずれも出力できるように、複数種類の復号回路を設け、これを適宜切替て使用し、あるいはこれらを使用しないように構成することも可能である。なお、復号化ユニット121からの出力は例えば画像としてディスプレイなどに表示される。
【0052】
最初に、図1〜図4を参照しながら、暗号化の際の手順について説明する。なお、図4におけるCPUはプログラムで実現した場合の制御部に相当し、ここではCPUすなわち制御部が手順の仲介を行っていることを示している。なお、制御部の仲介なしにユニット間で直接情報のやり取りを行うようにしても構わない。
【0053】
まず、記録媒体117がリムーバブルな媒体である場合には、これをディスクドライブ装置(図示せず)にセットしておく。
ステップS11では、復号化ユニット121にて、ID生成回路108により入力データに対するIDを生成する。また、データ暗号鍵生成回路107により入力データを暗号化するための暗号鍵Sk1を生成する。そして、生成されたIDとSk1とを対応付けて復号化ユニット121内の記憶領域109に記録しておく。また、生成されたIDを記録媒体117に記録する。
【0054】
なお、IDは、復号化ユニット121からCPUバスを介して直接、ディスクドライブ装置に与えても良いし、復号化ユニット121からCPUバスを介して暗号化ユニット118に与え、暗号化ユニット118からCPUバスを介してディスクドライブ装置に与えるようにしても良い。
【0055】
ステップS12では、復号化ユニット121と暗号化ユニット118との間で鍵共有手順により一時鍵Sktを共有する。
ここでは、「日経エレクトロニクス No.676 pp.13−14 1996.11.18」に開示された技術を応用するものとする。
【0056】
まず、本実施形態における鍵共有手順に用いる図2に示される鍵共有回路30a,30bの構成について説明する。
鍵共有回路30aは、チャレンジ鍵生成回路31a、認証鍵生成回路33a、比較回路35a、バス鍵生成回路37aを備えている。また、鍵共有回路30bは、チャレンジ鍵生成回路31b、認証鍵生成回路33b、比較回路35b、バス鍵生成回路37bを備えている。
【0057】
チャレンジ鍵生成回路31a,31bは、例えば乱数生成アルゴリズムを用いて、生成の都度変化するチャレンジ鍵を生成する。
認証鍵生成回路33a,33bは、例えば一方向性関数を用いて、チャレンジ鍵から認証鍵を生成する。
【0058】
比較回路35a,35bは、2つの認証鍵が一致するか否か比較する。
バス鍵生成回路37a,37bは、例えば一方向性関数を利用して、2つの認証鍵からバス鍵、すなわち一時鍵を生成する。
【0059】
認証鍵生成回路33aと認証鍵生成回路33bは、例えば同一のアルゴリズムを用いることにより、同一のチャレンジ鍵に対して同一の認証鍵を生成するものとする。
【0060】
バス鍵生成回路37aとバス鍵生成回路37bは、例えば同一のアルゴリズムを用いることにより、同一の2つの認証鍵から同一のバス鍵を生成するものとする。
【0061】
次に、図2、図4を参照しながら、鍵共有手順について説明する。
まず、鍵共有手順のフェイズ1では、復号化ユニット121にて、チャレンジ鍵生成回路31aによりチャレンジ鍵(Challenge Key)1を生成し、これを暗号化ユニット118にも伝える。次に、復号化ユニット121の認証鍵生成回路33aと暗号化ユニット118の認証鍵生成回路33bのそれぞれにて、チャレンジ鍵1をもとに認証鍵1(Key1)を生成し、また暗号化ユニット118から復号化ユニット121へ生成した認証鍵1を転送する。そして、復号化ユニット121にて、比較回路35aにより、復号化ユニット121と暗号化ユニット118のそれぞれで生成された2つの認証鍵1を比較する。もし一致すれば次のフェイズ2に移行する。もし一致しなければ異常終了となる。
【0062】
次に、フェイズ2では、暗号化ユニット118にて、チャレンジ鍵生成回路31bによりチャレンジ鍵(Challenge Key)2を生成し、これを復号化ユニット121にも伝える。次に、暗号化ユニット118の認証鍵生成回路33bと復号化ユニット121の認証鍵生成回路33aのそれぞれにて、チャレンジ鍵2をもとに認証鍵2(Key2)を生成し、また復号化ユニット121から暗号化ユニット118へ生成した認証鍵2を転送する。そして、暗号化ユニット118にて、比較回路35bにより、暗号化ユニット118と復号化ユニット121のそれぞれで生成された2つの認証鍵2を比較する。もし一致すれば次のフェイズ3に移行する。もし一致しなければ異常終了となる。
【0063】
そして、フェイズ3では、復号化ユニット121のバス鍵生成回路37aと暗号化ユニット118のバス鍵生成回路37bのそれぞれにて、認証鍵1および認証鍵2をもとにバス鍵(BUS Key)すなわち一時鍵Sktを生成する。
【0064】
これによって、復号化ユニット121と暗号化ユニット118との間で安全に一時鍵Sktが共有化される。
ステップS13では、復号化ユニット121から暗号化ユニット118へ、共有化した一時鍵Sktを用いてデータ暗号鍵Sk1を伝える。すなわち、まず、復号化ユニット121にて、復号化回路32によりSktでSk1を復号して、DSkt(Sk1)を得る。次に、復号化ユニット121から暗号化ユニット118へ、DSkt(Sk1)を送る。そして、暗号化ユニット118にて、暗号化回路34により、SktでDSkt(Sk1)を暗号化して、Sk1を得る。
【0065】
ステップS14では、暗号化ユニット118にて、暗号化回路105cにより、Sk1を暗号鍵として用いて入力データDataを暗号化して、ESk1(Data)を得る。
【0066】
ステップS15では、ESk1(Data)を記録媒体117に記録する。
なお、1つの記録媒体に複数のIDが格納される場合、IDとESk1(Data)とを対応付けて格納する。
【0067】
次に、図1、図5を参照しながら、復号の際の手順について説明する。
まず、記録媒体117がリムーバブルな媒体である場合には、これをディスクドライブ装置(図示せず)にセットしておく。
【0068】
ステップS21では、記録媒体117に記録されたIDを復号化ユニット121へ送る。
ステップS22では、復号化ユニット121にて、送られたIDをもとに、記録領域109から、対応するSk1を検索して取り出し、復号化回路106eに与える。
【0069】
ステップS23では、記録媒体117に記録されたESk1(Data)を復号化ユニット121へ送る。
ステップS24では、復号化ユニット121にて、復号化回路106eにより、Sk1を復号鍵としてESk1(Data)を復号し、もとの入力データ(Data)を得る。
【0070】
なお、復号対象となるデータの暗号化に用いた復号化ユニットと当該復号化ユニット121とが相違するものである場合、すなわち記録媒体117に暗号化データを記録したPCと当該PCが相違するものである場合、復号化ユニット121内に対応するIDとSk1の組が登録されていないので、上記のステップS22にて対応するSk1を検索して取り出すことに成功せず、結局、対象となる暗号化データを復号することはできない。言い換えると、本実施形態では、記録媒体117に暗号化データを記録したPCにおいてのみ復号を行うことができる。
【0071】
本実施形態で示した手順は一例であり種々変形することが可能である。
例えば、図3において、ステップS12の一時鍵の共有は最初に行っても良い。また、ステップS12のIDの生成、データベースへの登録、記録媒体への記録は、それぞれどのようなタイミングで行っても良い。また、暗号化ユニット内にバッファがあればデータはどのようなタイミングで読み込んでも良い。また、すべてのデータを暗号化してから記録媒体に記録しても良いが、所定の単位ごとに暗号化と記録(あるいは読み込みと暗号化と記録)を繰り返し行っても良い。
【0072】
また、例えば図5において、復号化ユニット内にバッファがあれば暗号化データはどのようなタイミングで読み込んでも良い。また、すべてのデータを復号してから出力しても良いが、所定の単位ごとに復号と出力(あるいは読み込みと復号と出力)を繰り返し行っても良い。
【0073】
上記の暗号化回路や復号化回路で用いる暗号化方式は、すべての部分で同じものを用いても良いし、対になる暗号化回路と復号化回路の組ごとに、用いる暗号化方式を適宜決めても良い(すべて異なるようにすることも可能である)。
【0074】
また、上記では暗号化回路や復号化回路は独立した回路として示したが、暗号化回路や復号化回路は暗号化方式が同じであればユニット内において1つまたは複数のもので兼用するように構成しても構わない。すなわち、復号化ユニット121の復号化回路21と暗号化ユニット118の暗号化回路32の暗号化方式と、復号化ユニット121の復号化回路106cと暗号化ユニット118の暗号化回路105cの暗号化方式が同じである場合に、復号化ユニット121において復号化回路21と復号化回路106cを1つの回路で構成しても良いし、同様に暗号化ユニット118において暗号化回路32と暗号化回路105cを1つの回路で構成しても良い。
【0075】
本実施形態では、暗号化ユニットはPC内に例えば暗号化ボードとして組み込まれCPUバスに接続されるものであったが、暗号化ユニットはディスクドライブ装置内に内蔵されることもある。
【0076】
なお、図1の構成において、復号化ユニット121を2つのICチップに分離して構成することも可能である。例えば、復号化ユニット121から復号化回路106cを分離し、これに鍵共有回路30aと同じものと暗号化回路を付加してICチップ化し(これを第3ユニットとする)、復号の際には復号化ユニット121と第3ユニットとの間で鍵共有回路により一時鍵を共有化した後、復号化ユニット121から第3ユニットへCPUバス120を介して一時鍵で復号化したデータ暗号化鍵を送り、第3ユニットにてこれを一時鍵で暗号化してデータ暗号化鍵を得るようにしても良い。なお、この場合、復号化ユニット121に新たに復号化回路を付け加えても良いが、すでに存在する復号化回路を兼用しても良い。
【0077】
(第2の実施形態)
図6は、本発明の第2の実施形態に係るシステムの構成を示すブロック図である。なお、図6の鍵共有回路30a,30bの内部構成の一例を図2に示す。また、図7に本システムの暗号化の際の手順を、図4に鍵共有手順の一例を、図8に本システムの復号の際の手順をそれぞれ示す。
【0078】
本実施形態は、基本的には第1の実施形態と同様の構成を有するものであり、以下では、主に相違する点について説明する。
まず、暗号化ユニット118は、図1の構成と同様であるが、復号化ユニット121から渡されたDSkt(ID)を、暗号化回路32により一時鍵で復号する点、復号されたIDを暗号化回路105cによりSk1で暗号化する点が相違する。
【0079】
また、復号化ユニット121は、図1の構成に加えて、与えられたESk1(ID)からSk1を得るための復号化回路106dとID判定回路110が付加されており、また生成したIDをも復号化回路32により一時鍵Sktで復号化して暗号化ユニット118に送る点が相違する。
【0080】
次に、図6、図7、図2、図4を参照しながら、暗号化の際の手順について説明する。
ステップS31では、復号化ユニット121にて、ID生成回路108により入力データに対するIDを生成する。また、データ暗号鍵生成回路107により入力データを暗号化するための暗号鍵Sk1を生成する。そして、生成されたIDとSk1とを対応付けて復号化ユニット121内の記憶領域109に記録しておく。
【0081】
ステップS32では、ステップS12と同様にして、復号化ユニット121と暗号化ユニット118との間で鍵共有手順により一時鍵Sktを共有する。
ステップS33では、復号化ユニット121から暗号化ユニット118へ、共有化した一時鍵Sktを用いてデータ暗号鍵Sk1とIDを伝える。
【0082】
すなわち、データ暗号鍵Sk1については、まず、復号化ユニット121にて、復号化回路32によりSktでSk1を復号して、DSkt(Sk1)を得る。次に、復号化ユニット121から暗号化ユニット118へ、DSkt(Sk1)を送る。そして、暗号化ユニット118にて、暗号化回路34により、SktでDSkt(Sk1)を暗号化して、Sk1を得る。
【0083】
また、IDについては上記と同様に、復号化ユニット121にて、復号化回路32によりSktでIDを復号して、DSkt(ID)を得る。次に、復号化ユニット121から暗号化ユニット118へ、DSkt(ID)を送る。そして、暗号化ユニット118にて、暗号化回路34により、SktでDSkt(ID)を暗号化して、IDを得る。
【0084】
ステップS34では、暗号化ユニット118にて、暗号化回路105cにより、Sk1を暗号鍵として用いてIDを暗号化して、ESk1(ID)を得る。そして、ESk1(ID)を記録媒体117に記録する。
【0085】
ステップS35では、暗号化ユニット118にて、暗号化回路105cにより、Sk1を暗号鍵として用いて入力データDataを暗号化して、ESk1(Data)を得る。そして、ESk1(Data)を記録媒体117に記録する。
【0086】
なお、1つの記録媒体に複数のESk1(ID)が格納される場合、ESk1(ID)とESk1(Data)とを対応付けて格納する。
次に、図6、図8を参照しながら、復号の際の手順について説明する。
【0087】
まず、記録媒体117がリムーバブルな媒体である場合には、これをディスクドライブ装置(図示せず)にセットしておく。
ステップS41では、記録媒体117に記録されたESk1(ID)を復号化ユニット121へ送る。
【0088】
ステップS42では、復号化ユニット121にて、送られたESk1(ID)をもとに記録領域109から対応するSk1を求める。
すなわち、まず、復号化回路106dにより、記録領域109に記録されている1つの暗号鍵を使って、ESk1(ID)を復号し、この結果をID候補とし、ID判定回路110に与える。また、この1つの暗号鍵に対応して記録領域109に記録されているIDをID判定回路110に与える。そして、ID判定回路110により、両者を比較して、一致しなければ、記録領域109に記憶されている他の暗号鍵を使って同様の手順を行う。そして、ID判定回路110により、両者を比較して、一致すれば、そのSk1とIDの組が求めるべきものであるので、記録領域109からあるいは復号化回路106からそのSk1を復号化回路106dに与える。
【0089】
ステップS43では、記録媒体117に記録されたESk1(Data)を復号化ユニット121へ送る。
ステップS44では、復号化ユニット121にて、復号化回路106cにより、Sk1を復号鍵としてESk1(Data)を復号し、もとの入力データを得る。
【0090】
本実施形態で示した手順は一例であり種々変形することが可能である。
例えば、図7において、ステップS32の一時鍵の共有は最初に行っても良い。また、ステップS31のIDの生成、Sk1の生成は、ステップS32の後に行っても良い。また、ステップS31のデータベースへの登録は、どのようなタイミングで行っても良い。また、ステップS33において、IDとSk1のいずれを先に共有しても構わない。また、暗号化ユニット内にバッファがあればデータはどのようなタイミングで読み込んでも良い。また、すべてのデータを暗号化してから記録媒体に記録しても良いが、所定の単位ごとに暗号化と記録(あるいは読み込みと暗号化と記録)を繰り返し行っても良い。
【0091】
また、例えば図8において、復号化ユニット内にバッファがあれば暗号化データはどのようなタイミングで読み込んでも良い。また、すべてのデータを復号してから出力しても良いが、所定の単位ごとに復号と出力(あるいは読み込みと復号と出力)を繰り返し行っても良い。
【0092】
なお、第1の実施形態と同様に、暗号化回路や復号化回路は暗号化方式が同じであればユニット内において1つまたは複数のもので兼用するように構成しても構わない。本実施形態では、復号化ユニット121において、復号化回路32,106c,106dを1つの回路で構成することも可能であり、また、2つの回路(例えば、復号化回路32と、復号化回路106c,106dに共用する回路)で構成することも可能である。
【0093】
(第3の実施形態)
図9は、本発明の第3の実施形態に係るシステムの構成を示すブロック図である。図10は、本システムの暗号化の際の手順を示すフローチャートである。図11は、本システムの復号の際の手順を示すフローチャートである。
【0094】
図9に示すように、本実施形態に係るシステムは、暗号化ユニット118と復号化ユニット121を備えている。また、暗号化ユニット118と復号化ユニット121は、PCのCPUバス120に接続されている。
【0095】
また、CPUバス120にはディスクドライブ装置(図示せず)が接続されており、ディスクドライブ装置により記録媒体117への読み書きが行われる。
図9に示すように、暗号化ユニット118は、暗号化回路105a〜105c、鍵判定回路210を備えている。暗号化ユニット118は、独立した1つのICチップとして形成されるものとする。
【0096】
復号化ユニット121は、データ暗号鍵生成回路107、ID生成回路108、復号化回路106a〜106c、ID/鍵情報記憶回路109を備えている。復号化ユニット121は、独立した1つのICチップとして形成されるものとする。
【0097】
復号化ユニット121内には、後述する複数のマスター鍵Mks(図中102a)が登録されている(作り込まれている)。
また、暗号化ユニット118内には、復号化ユニット121と同一の複数のマスター鍵Mks(図中102b)が登録されている(作り込まれている)。
【0098】
なお、万一、マスター鍵が破られたことが発覚した場合、それ以降、復号化ユニット121には、その破られたものを除いてマスター鍵が作り込まれる。ただし、暗号化ユニット118については、その破られたものを除いてマスター鍵が作り込まれても良いし、そうしなくても良い。また、破られたマスター鍵が作り込まれている復号化ユニット203は、その破られたものを除いてマスター鍵が作り込まれている新しいものに差し替えるのが望ましい。ただし、暗号化ユニット118は、破られたマスター鍵が作り込まれているものをそのまま使用しても構わない。
【0099】
なお、全体の制御は図示しない制御部が司るものとする。制御部は例えばプログラムを当該PCのCPUで実行することにより実現することができる。
データDataは、暗号化して記録する対象となる入力データであり、例えばPCのI/Oポートから入力される映像、音声、テキストなどのマルチメディア・データである。
【0100】
IDは、本実施形態では、一纏まりのデータ毎(例えばタイトル毎)に与えられる識別番号である。なお、IDは、ディスク毎に与えるようにしても良いし、ディスクの片面毎あるいは複数のディスクからなる組毎に与えるようにしても良いし、上記の一纏まりのデータをさらに細分化した部分毎(例えばチャプター毎あるいは曲毎など)に与えるようにしても良い。
【0101】
Sk1は、データの暗号化および復号に用いるデータ暗号鍵(共通鍵暗号方式における共通鍵)であり、IDと対で生成される。
Mks(s=1〜n、nは2以上の整数)は、マスター鍵(共通鍵暗号方式における共通鍵)の鍵束である。マスター鍵は、例えばメーカ毎に所定個数づつが割り当てられる。この場合、マスター鍵は、メーカ間で重複のないように割り当てられる。ここでは、一例として、s=1,…10(s=10)とする。つまり、Mk1,Mk2,…,Mk10のマスター鍵が、暗号化ユニット118、復号化ユニット121のそれぞれに作り込まれる。
【0102】
前述したように、マスター鍵の鍵束は、利用者が外部から取得できないように、暗号化ユニットのチップ、復号化ユニットのチップそれぞれにおいて、利用者が意図的に取り出せないようにチップ内部の秘匿された領域に記録されているものとする。
【0103】
ID生成回路108は、ID番号を生成する。ID番号は、1から順番に発番するようにしても良いが、好ましくはランダムに発番する方が良い。後者の場合、生成されるIDが全て異なるようにするために、例えばID生成回路108を乱数発生器を用いて構成する方法が考えられる。なお、重複発番する可能性のある乱数等を用いる場合には、生成したIDが既発番のものと同じであるかどうかチェックし、重複して発番されたことが分かったならば、そのIDは破棄し、別のIDを生成し直すようにすると好ましい。
【0104】
データ暗号鍵生成回路107は、IDと対になるデータ暗号鍵Sk1を生成する。一時鍵生成回路107は、例えば鍵長分の乱数発生器で構成しても良い。また、乱数を発生するにあたって、例えば時計(図示せず)からの時間情報を用いるようにしても良い。なお、全てのビットが0や1になる可能性のある乱数で鍵を生成する場合は、全てのビットが0や1になることがないようにチェック処理等をする必要がある。
【0105】
ID/鍵情報記憶回路109は、対になるIDとSk1とを対応づけて記憶するためのものでる。例えば、IDとSk1をデータベース化して保管しておく。
記録媒体117は、暗号化されたI/Oポートからの入力データを記録するためのものであり、例えばハードディスク、MO、FD、1回書き込み可能なCD、DVD−RAMなどを用いることが考えられる。
【0106】
なお、ディスクドライブ装置内には、記録の際に変調、誤り訂正回路を行い、再生の際に復調、誤り訂正回路を行う変復調/誤り訂正回路が内蔵される場合がある。
【0107】
また、本実施形態では、復号化ユニット121にはディジタルデータDataをアナログデータに変換するD/A変換回路が備えられ、復号化ユニット121からはアナログに変換されらデータが出力されるものとする。また、ディジタルデータDataが復号すべきものである場合にはこれを復号する復号回路をD/A変換回路の前に設けるものとする。例えばディジタルデータDataがMPEG方式で圧縮された画像データである場合に、MPEG復号回路を設けるものとする。また、種々の方式で圧縮等されたデータあるいは復号の必要ないデータのいずれも出力できるように、複数種類の復号回路を設け、これを適宜切替て使用し、あるいはこれらを使用しないように構成することも可能である。なお、復号化ユニット121からの出力は例えば画像としてディスプレイなどに表示される。
【0108】
最初に、図9、図10を参照しながら、暗号化の際の手順について説明する。
まず、記録媒体117がリムーバブルな媒体である場合には、これをディスクドライブ装置(図示せず)にセットしておく。
【0109】
ステップS51では、復号化ユニット121にて、ID生成回路108により入力データに対するIDを生成する。また、データ暗号鍵生成回路107により入力データを暗号化するための暗号鍵Sk1を生成する。そして、生成されたIDとSk1とを対応付けて復号化ユニット121内の記憶領域109に記録しておく。また、生成されたIDを記録媒体117に記録する。
【0110】
なお、IDは、復号化ユニット121からCPUバスを介して直接、ディスクドライブ装置に与えても良いし、復号化ユニット121からCPUバスを介して暗号化ユニット118に与え、暗号化ユニット118からCPUバスを介してディスクドライブ装置に与えるようにしても良い。
【0111】
ステップS52では、以下に示すような手順を用いて、復号化ユニット121から暗号化ユニット118へ、生成されたデータ暗号鍵Sk1を伝える。
Sk1のプレインデータを取得されないように、Sk1は、復号化ユニット121内に記録されたマスター鍵Mks(s=1,…,n)のうちのいずれか(これをMkiとする)で暗号化され、EMki(Sk1)としてCPUバス120を通って暗号化ユニット118へ送られる。
【0112】
ここで、もしマスター鍵が1つだけ存在するのであれば(これをMk0とする)、単に復号化ユニット121にてMk0でSk1を復号し、このEMk0(Sk1)を暗号化ユニット118へ送り、暗号化ユニット118にてMk0でEMk0(Sk1)を暗号化することにより、Sk1を取り出すことができるが、本実施形態では、複数のマスター鍵からなる鍵束のうちの使用したマスター鍵Mkiを直接的に指し示す識別情報は復号化ユニット121から暗号化ユニット118へ伝えないようにし、その代わりに、上記マスター鍵Mkiを特定可能とする情報を復号化ユニット121から復号化ユニット121へ送り、暗号化ユニット118にて、Sktの復号に使用されたマスター鍵Mkiがn個のマスター鍵のうちのいずれであるかを特定するとともに、このマスター鍵の特定を通じてSk1を得る。
【0113】
以下、ステップS52のより詳しい手順について説明する。
まず、復号化ユニット121にて、復号化回路106aにより、n個のマスター鍵Mks(i=1,…,n)のうちから例えばランダムあるいは順番に選んだ1つ(これをMkiとする)でデータ暗号化鍵Sk1を復号して、DMki(Sk1)を得る。また、復号化回路106bにより、Sk1自身を復号鍵として用いてSk1を復号して、DSk1(Sk1)を得る。そして、DMki(Sk1)とDSk1(Sk1)を、CPUバス120を通じて暗号化ユニット118へ送る。
【0114】
次に、暗号化ユニット118にて、まずマスター鍵を1つ選ぶ(これをMkpとする)。
選んだMkpを復号鍵として、暗号化回路105aにより、DMki(Sk1)を暗号化し、
EMkp(DMki(Sk1))=Ska
を得る。
【0115】
次に、暗号化回路105aの出力Skaを復号鍵として、暗号化回路105bにより、DSk1(Sk1)を暗号化し、
ESka(DSk1(Sk1))=Skb
を得る。
【0116】
次に、鍵判定回路210により、SkaとSkbとが一致するか否か調べる。ここで、復号化ユニット121にてSk1を暗号化したマスター鍵MkiがMkpであったならば、
Ska=EMkp(DMki(Sk1))=Sk1
となり、従って、
Skb=ESka(DSk1(Sk1))=ESk1(DSk1(Sk1))=Sk1
となり、ゆえに、
Ska=Skb=Sk1
となる。
【0117】
つまり、鍵判定回路210により、SkaとSkbとが一致することがわかった場合には、
Mki=Mkp、かつ、Ska=Skb=Sk1であり、
この場合、鍵判定回路210はSka=Skb=Sk1を出力する。
【0118】
一方、鍵判定回路210により、SkaとSkbとが一致しないことがわかった場合には、
Mki≠Mkpであり、復号化ユニット121にてSk1はこのMkpでは暗号化されておらず、それ以外のマスター鍵で暗号化されたことが判る。この場合、鍵判定回路210は出力をしない(あるいは鍵判定回路210の出力が暗号化回路105cには伝えられない)。
【0119】
以降は、SkaとSkbとが一致するまで、暗号化に用いるマスター鍵Mkpを変更して、上記の手順を繰り返す。例えば、最初にMkpとしてMk1を用いて上記の手順を行ってSkaとSkbとが一致しなかった場合に、次にMk2へと更新して再び上記の手順を繰り返すのである。
【0120】
以上のような手順を用いて、復号化ユニット121にてどのマスター鍵を用いたのかを暗号化ユニット118側で特定することができるとともに、復号化ユニット121と暗号化ユニット118との間でデータ暗号化鍵Sk1を安全に共有することが可能となる。
【0121】
ステップS53では、暗号化ユニット118にて、暗号化回路105cにより、Sk1を暗号鍵として用いて入力データDataを暗号化して、ESk1(Data)を得る。
【0122】
ステップS54では、ESk1(Data)を記録媒体117に記録する。
なお、1つの記録媒体に複数のIDが格納される場合、IDとESk1(Data)とを対応付けて格納する。
【0123】
次に、図9、図11を参照しながら、復号の際の手順について説明する。
まず、記録媒体117がリムーバブルな媒体である場合には、これをディスクドライブ装置(図示せず)にセットしておく。
【0124】
ステップS61では、記録媒体117に記録されたIDを復号化ユニット121へ送る。
ステップS62では、復号化ユニット121にて、送られたIDをもとに、記録領域109から、対応するSk1を検索して取り出し、復号化回路106eに与える。
【0125】
ステップS63では、記録媒体117に記録されたESk1(Data)を復号化ユニット121へ送る。
ステップS64では、復号化ユニット121にて、復号化回路106eにより、Sk1を復号鍵としてESk1(Data)を復号し、もとの入力データ(Data)を得る。
【0126】
なお、復号対象となるデータの暗号化に用いた復号化ユニットと当該復号化ユニット121とが相違するものである場合、すなわち記録媒体117に暗号化データを記録したPCと当該PCが相違するものである場合、復号化ユニット121内に対応するIDとSk1の組が登録されていないので、上記のステップS22にて対応するSk1を検索して取り出すことに成功せず、結局、対象となる暗号化データを復号することはできない。言い換えると、本実施形態では、記録媒体117に暗号化データを記録したPCにおいてのみ復号を行うことができる。
【0127】
本実施形態で示した手順は一例であり種々変形することが可能である。
例えば、図10において、ステップS51のIDの生成、データベースへの登録、記録媒体への記録は、それぞれどのようなタイミングで行っても良い。また、暗号化ユニット内にバッファがあればデータはどのようなタイミングで読み込んでも良い。また、すべてのデータを暗号化してから記録媒体に記録しても良いが、所定の単位ごとに暗号化と記録(あるいは読み込みと暗号化と記録)を繰り返し行っても良い。図11については、第1の実施形態と同様である。
【0128】
上記の暗号化回路や復号化回路で用いる暗号化方式は、すべての部分で同じものを用いても良いし、対になる暗号化回路と復号化回路の組ごとに、用いる暗号化方式を適宜決めても良い(すべて異なるようにすることも可能である)。
【0129】
また、上記では暗号化回路や復号化回路は独立した回路として示したが、暗号化回路や復号化回路は暗号化方式が同じであればユニット内において1つまたは複数のもので兼用するように構成しても構わない。例えば、復号化ユニット121において、復号化回路106a,106b,106cを1つの回路で構成することも可能であり、また、2つの回路(例えば、復号化回路106a,106bに共用する回路と、復号化回路106c)で構成することも可能である。また、例えば、暗号化ユニット118において、暗号化回路105a,105b,105cを1つの回路で構成することも可能であり、また、2つの回路(例えば、暗号化回路105a,105bに共用する回路と、暗号化回路105c)で構成することも可能である。
【0130】
なお、第1の実施形態と同様に、図9の構成においても、復号化ユニット121を2つのICチップに分離して構成することも可能である。
(第4の実施形態)
図12は、本発明の第4の実施形態に係るシステムの構成を示すブロック図である。図13は、本システムの暗号化の際の手順を示すフローチャートである。図14は、本システムの復号の際の手順を示すフローチャートである。
【0131】
本実施形態は、基本的には第3の実施形態と同様の構成を有するものであり、以下では、主に相違する点について説明する。
まず、暗号化ユニット118は、図9の構成と同様であるが、復号化ユニット121から渡されたDMki(ID)を、マスター鍵Mkiが特定された後に暗号化回路105aによりこのマスター鍵Mkiで復号する点、復号されたIDを暗号化回路105cによりSk1で暗号化する点が相違する。
【0132】
また、復号化ユニット121は、図9の構成に加えて、与えられたESk1(ID)からSk1を得るための復号化回路106dとID判定回路110が付加されており、また生成したIDをも復号化回路106aによりマスター鍵Mkiで復号化して暗号化ユニット118に送る点が相違している。
【0133】
次に、図12、図13を参照しながら、暗号化の際の手順について説明する。
ステップS71では、復号化ユニット121にて、ID生成回路108により入力データに対するIDを生成する。また、データ暗号鍵生成回路107により入力データを暗号化するための暗号鍵Sk1を生成する。そして、生成されたIDとSk1とを対応付けて復号化ユニット121内の記憶領域109に記録しておく。
【0134】
ステップS72では、以下に示すような手順を用いて、復号化ユニット121から暗号化ユニット118へ、生成されたデータ暗号鍵Sk1とIDを伝える。
まず、復号化ユニット121にて、復号化回路106aにより、n個のマスター鍵Mks(i=1,…,n)のうちのずれか(これをMkiとする)でデータ暗号化鍵Sk1を復号して、DMki(Sk1)を得る。また、復号化回路106bにより、Sk1自身を復号鍵として用いてSk1を復号して、DSk1(Sk1)を得る。そして、DMki(Sk1)とDSk1(Sk1)を、CPUバス120を通じて暗号化ユニット118へ送る。また、復号化回路106aにより、IDも同じMkiで復号して、DMki(ID)を求め、これもCPUバス120を通じて暗号化ユニット118へ送る。
【0135】
次に、ステップS52と同様にして、暗号化ユニット118にて、マスター鍵Mkiを特定するとともに、データ暗号化鍵Sk1を求める。そして、暗号化回路105aにより、特定したMkiでEMki(ID)を復号して、IDを得る。
【0136】
ステップS73では、暗号化ユニット118にて、暗号化回路105cにより、Sk1を暗号鍵として用いてIDを暗号化して、ESk1(ID)を得る。そして、ESk1(ID)を記録媒体117に記録する。
【0137】
ステップS74では、暗号化ユニット118にて、暗号化回路105cにより、Sk1を暗号鍵として用いて入力データDataを暗号化して、ESk1(Data)を得る。そして、ESk1(Data)を記録媒体117に記録する。
【0138】
なお、1つの記録媒体に複数のESk1(ID)が格納される場合、ESk1(ID)とESk1(Data)とを対応付けて格納する。
次に、図12、図14を参照しながら、復号の際の手順について説明する。
【0139】
まず、記録媒体117がリムーバブルな媒体である場合には、これをディスクドライブ装置(図示せず)にセットしておく。
ステップS81では、記録媒体117に記録されたESk1(ID)を復号化ユニット121へ送る。
【0140】
ステップS82では、復号化ユニット121にて、送られたESk1(ID)をもとに記録領域109から対応するSk1を求める。
すなわち、まず、復号化回路106dにより、記録領域109に記録されている1つの暗号鍵を使って、ESk1(ID)を復号し、この結果をID候補とし、ID判定回路110に与える。また、この1つの暗号鍵に対応して記録領域109に記録されているIDをID判定回路110に与える。そして、ID判定回路110により、両者を比較して、一致しなければ、記録領域109に記憶されている他の暗号鍵を使って同様の手順を行う。そして、ID判定回路110により、両者を比較して、一致すれば、そのSk1とIDの組が求めるべきものであるので、記録領域109からあるいは復号化回路106からそのSk1を復号化回路106dに与える。
【0141】
ステップS83では、記録媒体117に記録されたESk1(Data)を復号化ユニット121へ送る。
ステップS84では、復号化ユニット121にて、復号化回路106cにより、Sk1を復号鍵としてESk1(Data)を復号し、もとの入力データを得る。
【0142】
本実施形態で示した手順は一例であり種々変形することが可能である。
例えば、図13において、ステップS71のIDの生成、データベースへの登録、記録媒体への記録は、それぞれどのようなタイミングで行っても良い。また、暗号化ユニット内にバッファがあればデータはどのようなタイミングで読み込んでも良い。また、すべてのデータを暗号化してから記録媒体に記録しても良いが、所定の単位ごとに暗号化と記録(あるいは読み込みと暗号化と記録)を繰り返し行っても良い。図11については、第2の実施形態と同様である。
【0143】
第3の実施形態と同様に、暗号化回路や復号化回路は暗号化方式が同じであればユニット内において1つまたは複数のもので兼用するように構成しても構わない。本実施形態では、例えば、復号化ユニット121において、復号化回路106a,106b,106c,106dを1つの回路で構成することも可能であり、また、2つの回路(例えば、復号化回路106a,106bに共用する回路と、復号化回路106c,106dに共用する回路)で構成することも可能であり、また、3つの回路で構成することも可能である。
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。
【0144】
【発明の効果】
本発明によれば、その都度生成するデータ暗号化鍵を識別情報と対応させてユニット内に記録しておくことにより、このユニットそのものがなければ復号を行うことができず、記録媒体の複製を作っても他の計算機では復号することができない。
【0145】
また、本発明によれば、CPUバスを流れるデータ暗号化鍵は暗号化されており、またデータ暗号化鍵自体もその都度生成されるものであるため、第3者により暗号を解読することは極めて困難である。
したがって、本発明によれば、第3者による不正なコピーを防止することが可能となる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るシステムの構成を示すブロック図
【図2】図1の鍵共有回路の内部構成の一例を示す図
【図3】同実施形態における暗号化の際の手順を示すフローチャート
【図4】鍵共有手順の一例を示すフローチャート
【図5】同実施形態における復号の際の手順を示すフローチャート
【図6】本発明の第2の実施形態に係るシステムの構成を示すブロック図
【図7】同実施形態における暗号化の際の手順を示すフローチャート
【図8】同実施形態における復号の際の手順を示すフローチャート
【図9】本発明の第3の実施形態に係るシステムの構成を示すブロック図
【図10】同実施形態における暗号化の際の手順を示すフローチャート
【図11】同実施形態における復号の際の手順を示すフローチャート
【図12】本発明の第4の実施形態に係るシステムの構成を示すブロック図
【図13】同実施形態における暗号化の際の手順を示すフローチャート
【図14】同実施形態における復号の際の手順を示すフローチャート
【符号の説明】
30a,30b…鍵共有回路
31a,31b…チャレンジ鍵生成回路
33a,33b…認証鍵生成回路
35a,35b…比較回路
37a,37b…バス鍵生成回路
102a,102b…マスター鍵の鍵束
105a〜105c…暗号化回路
106a〜106d…復号化回路
107…データ暗号鍵生成回路
108…ID生成回路
109…ID/鍵情報記憶回路
110…ID判定回路
117…記録媒体
118…暗号化ユニット
120…CPUバス
121…復号化ユニット
210…鍵判定回路
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a unit device, a decoding unit device for a system for communicating data such as digitized documents, voices, images, programs, etc. via a network, or a system for recording and storing the digital data, and reading the digital data. The present invention relates to an encryption unit device, an encryption processing system, and an encryption method.
[0002]
[Prior art]
At present, computers are widely spread, and in various fields, information is digitized and processed, or information is digitized and stored in a recording apparatus. In addition, the network environment is becoming more and more established, and information is electronically communicated. Furthermore, not only document information, but also technologies for handling data such as voice and images in an electronic manner are rapidly progressing.
[0003]
By the way, the information handled electronically includes, of course, information that requires confidentiality such as trade secrets and personal information. In addition, information that requires attention, such as information related to copyright, is also included.
[0004]
Therefore, a technique is often used in which when information is digitized and handled, encryption is performed so that only an authorized person can decrypt the information.
For example, in an encryption system in which data is encrypted and stored in a recording medium, and the encrypted data is read from the recording medium and decrypted to extract the original data, a secret key used for encryption and decryption is determined in advance, and this secret Saving and reading are performed using the key. According to this system, only the person who can use the secret key can decrypt the stored encrypted data, and unless the secret key is decrypted, a third party who cannot use the secret key is encrypted. Data cannot be deciphered illegally.
[0005]
[Problems to be solved by the invention]
However, in the above system, if the secret key is decrypted by an unauthorized attack by a third party, not only all the encrypted data is decrypted, but also the data (plane data) obtained by the decryption is freely copied. It becomes possible.
[0006]
Even if the secret key is not decrypted, if the same secret key is built in another encryption system, the pirated version can be easily created by copying the encrypted data as it is. .
[0007]
Furthermore, when it is discovered that the secret key has been revealed, it is necessary to update the secret key of the corresponding encryption system, which is not only complicated, but after the secret key is updated, the uncovered secret key is decrypted. In a system that takes an updated form that can no longer be used, after the secret key is updated, it becomes impossible to decrypt the data encrypted with the secret key that has been revealed, and the legitimate person also obtains the original contents. There is a bug that makes it impossible.
[0008]
The present invention has been made in view of the above circumstances, and includes a unit device, a decryption unit device, an encryption unit device, an encryption processing system, and an encryption method that can prevent unauthorized copying by a third party. The purpose is to provide.
[0009]
The present invention also provides a unit device, a decryption unit device, an encryption unit device, an encryption processing system, and an encryption method that make it difficult for a third party to acquire key information or decrypt encrypted data. For the purpose.
[0010]
It is another object of the present invention to provide a unit device, a decryption unit device, an encryption unit device, an encryption processing system, and an encryption method that do not require a key information update procedure.
[0011]
[Means for Solving the Problems]
The present invention is for an apparatus for encrypting data (digitized data; for example, document, sound, image, program, etc.) inputted without going through the CPU bus of a computer before recording it on a predetermined recording medium. A unit device used for generating and recording a data encryption key connected to a CPU bus of a computer, means for generating an identification number of data to be encrypted, and encryption of the data Means for generating a data encryption key used in the above, a means for recording the generated data encryption key and an identification number in association with each other, and a device for encrypting via the CPU bus of the computer And means for safely transmitting the data encryption key or both the data encryption key and the identification information without being acquired from the outside.
[0012]
The present invention is a decryption unit device connected to a computer CPU bus and used for decrypting data that has been encrypted and recorded on a predetermined recording medium, and is input without going through the computer CPU bus. Means for generating an identification number of the data to be encrypted by the encryption unit device for encrypting the encrypted data, and for generating a data encryption key used by the encryption unit device for encrypting the data And means for recording the generated data encryption key and the identification number in association with each other, and the data encryption key is acquired from the outside to the encryption unit via the CPU bus of the computer Without using the identification information and the corresponding data encryption key from the data encryption key recorded in correspondence with the identification information in the device. Means for obtaining a data encryption key corresponding to the identification information read from the recording medium on which the recorded data is recorded and given through the CPU bus, and using the obtained data encryption key as a decryption key And means for decrypting the encrypted data read from the recording medium and given via the CPU bus.
[0013]
The present invention is a decryption unit device connected to a computer CPU bus and used for decrypting data that has been encrypted and recorded on a predetermined recording medium, and is input without going through the computer CPU bus. Means for generating an identification number of data to be encrypted by an encryption unit device for encrypting the encrypted data, and a data encryption key used by the encryption unit device for encryption of the data and the identification information , Means for associating and recording the generated data encryption key and identification number, and the data encryption key and the data in the encryption unit via the CPU bus of the computer Encrypt with the data encryption key from the means for safely transmitting the identification information without being acquired from the outside and the data encryption key recorded in correspondence with the identification information in the device itself A data encryption key corresponding to the encrypted identification information read from the recording medium in which the encrypted identification information and the data encrypted with the data encryption key are recorded and given through the CPU bus Means for obtaining, and means for decrypting the encrypted data read from the recording medium and given through the CPU bus using the obtained data encryption key as a decryption key It is characterized by that.
[0014]
Preferably, the means for obtaining the data encryption key is encrypted with a data encryption key read from the recording medium from a set of identification information and data encryption key recorded in the device. The identification information obtained by decrypting the encrypted identification information with the data encryption key recorded in the own device is equal to the identification information recorded in the own device corresponding to the data encryption key The data encryption key to be used for the decryption is obtained by searching for the set.
[0015]
Preferably, a predetermined conversion process is performed on the original data obtained by decrypting the encrypted data read from the recording medium, and then output to the outside without going through the CPU bus of the computer Means may be further provided.
[0016]
The present invention is an encryption unit device that encrypts data input without going through a CPU bus of a computer before recording it on a predetermined recording medium, and includes an identification number of the data to be encrypted and the data From a device that generates data encryption keys used for encryption and records them in association with each other, the data encryption key or both the data encryption key and the identification information are externally transmitted via the CPU bus of the computer. Encrypt both the data to be encrypted or the data to be encrypted and the received identification information using the means for safely receiving without being acquired and the received data encryption key And means for the above.
[0017]
The present invention is an encryption unit device that encrypts data input without going through a CPU bus of a computer before recording it on a predetermined recording medium, and includes an identification number of the data to be encrypted and the data Data encryption keys used for encryption of data are generated and recorded in association with each other, and the data encryption key obtained based on the given identification information or the identification information encrypted with the data encryption key is used. Without obtaining the data encryption key or both the data encryption key and the identification information from the outside via the CPU bus of the computer from the decryption unit that decrypts the encrypted data given Means for securely receiving and encrypting the data to be encrypted or the data to be encrypted and the received identification information using the received data encryption key Characterized by comprising a means for.
[0018]
The present invention uses an encryption unit and a decryption unit connected to a CPU bus of a computer to encrypt and decrypt data input from outside without going through the CPU bus on a predetermined recording medium. An encryption processing system for decrypting encrypted data recorded on the recording medium using a unit, wherein the decryption unit generates a data encryption key used for encrypting data to be encrypted Means for generating an identification number of the data, means for recording the generated data encryption key and the identification number in association with each other, and the encryption via the CPU bus of the computer A means for safely transmitting the data encryption key to the encryption unit without being acquired from the outside, and a data encryption key recorded in correspondence with the identification information in the own unit The data encryption key corresponding to the identification information read from the recording medium in which the identification information and the data encrypted with the data encryption key corresponding thereto are recorded and given through the CPU bus is obtained. And means for decrypting the encrypted data read from the recording medium and given through the CPU bus using the obtained data encryption key as a decryption key, The encryption unit includes means for safely receiving the data encryption key without being acquired from the outside via the CPU bus of the computer, and data to be encrypted using the received data encryption key. And means for encrypting.
[0019]
Preferably, a predetermined conversion process is performed on the original data obtained by decrypting the encrypted data read from the recording medium, and then output to the outside without going through the CPU bus of the computer Means may be further provided.
[0020]
The present invention uses an encryption unit and a decryption unit connected to a CPU bus of a computer to encrypt and decrypt data input from outside without going through the CPU bus on a predetermined recording medium. An encryption processing system for decrypting encrypted data recorded on the recording medium using a unit, wherein the decryption unit generates a data encryption key used for encrypting data to be encrypted Means for generating an identification number of the data, means for recording the generated data encryption key and the identification number in association with each other, and the encryption via the CPU bus of the computer A means for safely transmitting the data encryption key to the encryption unit without being acquired from the outside, and a data encryption key recorded in correspondence with the identification information in the own unit The identification information encrypted with the data encryption key and the encrypted identification read from the recording medium on which the data encrypted with the data encryption key is recorded and given through the CPU bus Means for obtaining a data encryption key corresponding to the information, and using the obtained data encryption key as a decryption key, the encrypted data read from the recording medium and given through the CPU bus Means for decrypting, wherein the encryption unit receives the data encryption key and the identification information securely via the CPU bus of the computer without being acquired from the outside, and the received And a means for encrypting the data to be encrypted and the received identification information using a data encryption key.
[0021]
Preferably, the means for obtaining the data encryption key is encrypted with a data encryption key read from the recording medium from a set of identification information and data encryption key recorded in the unit. Identification information obtained by decrypting the encrypted identification information with the data encryption key recorded in the own unit is equal to the identification information recorded in the own unit corresponding to the data encryption key The data encryption key to be used for the decryption is obtained by searching for the set.
[0022]
Preferably, a predetermined conversion process is performed on the original data obtained by decrypting the encrypted data read from the recording medium, and then output to the outside without going through the CPU bus of the computer Means may be further provided.
[0023]
Preferably, the means for transmitting and the means for receiving are each obtained from a predetermined temporary key by a predetermined key sharing procedure performed in cooperation by exchanging information via the CPU bus of the computer. And means for decrypting the generated data encryption key with the shared temporary key and outputting the decrypted data encryption key. The means for receiving May comprise means for encrypting with the temporary key sharing the data encryption key decrypted with the given temporary key.
[0024]
The present invention uses an encryption unit and a decryption unit connected to a CPU bus of a computer, and encrypts data inputted from outside without going through the CPU bus before recording it on a predetermined recording medium. The encryption unit generates a data encryption key used for encryption of data to be encrypted, generates an identification number of the data, and generates the generated data encryption key. And the identification number are associated with each other and recorded in a predetermined recording area in the unit, and the data encryption key is acquired from the decryption unit to the encryption unit via the CPU bus of the computer from the outside. The encryption unit encrypts the data to be encrypted with the transmitted data encryption key, and the encryption unit encrypts the data to be encrypted.
[0025]
The present invention relates to a decryption unit for storing encrypted data recorded together with identification information on a predetermined recording medium, in combination with identification information and a data encryption key connected to a CPU bus of a computer. The data corresponding to the identification information read from the recording medium and given through the CPU bus from the data encryption key recorded in the unit An encryption key is obtained, and the encrypted data read from the recording medium and given through the CPU bus is decrypted using the obtained data encryption key as a decryption key.
[0026]
The present invention uses an encryption unit and a decryption unit connected to a CPU bus of a computer, and encrypts data inputted from outside without going through the CPU bus before recording it on a predetermined recording medium. The encryption unit generates a data encryption key used for encryption of data to be encrypted, generates an identification number of the data, and generates the generated data encryption key. And the identification number are associated with each other and recorded in a predetermined recording area within the unit, and the data encryption key and the identification information are externally transmitted from the decryption unit to the encryption unit via the CPU bus of the computer. It is safely transmitted without being acquired, and the encryption unit encrypts the data to be encrypted and the transmitted identification information with the transmitted data encryption key. Characterized by reduction.
[0027]
The present invention stores encrypted data recorded together with identification information encrypted on a predetermined recording medium as a set of identification information and a data encryption key connected to a CPU bus of a computer. A decryption method for decrypting data using a decryption unit that is read from the recording medium and provided via the CPU bus from among data encryption keys recorded in the unit A data encryption key corresponding to the identification information encrypted with the encryption key is obtained, and the encryption read out from the recording medium and given through the CPU bus using the obtained data encryption key as a decryption key The decoded data is decrypted.
[0028]
According to the present invention, an encryption key for encrypting data is recorded as a database in the decryption unit in correspondence with the identification information given to the data, whereby the computer (or data encryption) Decoding can be performed only by a computer incorporating the decoding unit itself used in (1). Therefore, even if a copy of the recording medium is made and distributed, it cannot be decrypted by another computer.
[0029]
Further, according to the present invention, a data encryption key for encrypting data is decrypted by encrypting, for example, using either a shared temporary key or a key bundle of master keys. Since the unit and the encryption unit are shared via the CPU bus, it is meaningless to record such information from the CPU bus.
[0030]
In addition, according to the present invention, since the data encryption key for encrypting data itself and the temporary key used for sharing the data encryption key change every time, the third party cannot decrypt the encryption. It is extremely difficult.
[0031]
Therefore, according to the present invention, it is possible to prevent unauthorized copying by a third party.
Further, according to the present invention, the key information update procedure is not required.
[0032]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the invention will be described with reference to the drawings.
In the present embodiment, a description will be given by taking as an example a system for encrypting and recording data on a recording medium, and reading and decrypting the encrypted data from the recording medium.
[0033]
In the present embodiment, the encryption operation is represented as Ey (x). Here, x is data to be encrypted, and y is an encryption key used for encryption. Decoding operation is represented as Dy (z). Here, z is data to be decrypted, and y is a decryption key used for decryption.
[0034]
In this embodiment, certain data is first decrypted, and then the decrypted data may be restored to the original data. This is based on the fact that the decryption of data has the same effect as encryption due to the nature of encryption. In other words, in order to restore the decrypted data, the key used for decryption must be known, and if the key is known, the decrypted data is encrypted to obtain the first decrypted data. . In this operation, if the encryption key is x and the data is y,
Ex (Dx (y)) = y
It is represented by
[0035]
The system according to the present embodiment is connected to a CPU bus of a CPU (not shown) provided in a computer (hereinafter referred to as a PC) such as a personal computer, and control of the overall processing flow is realized by a program. The In this embodiment, data input / output is performed through, for example, an I / O port other than the CPU bus, but for data transfer between a disk drive device (not shown) and a unit, and between units. The CPU bus is used. Accordingly, the data flowing on the CPU bus is encrypted (or decrypted prior to encryption).
[0036]
In the present embodiment, generally, when a set of data is encrypted, a pair of a data encryption key Sk1 and an identification information ID used for data encryption is generated, and this pair is recorded in a database. In addition, ID information and data encrypted with Sk1 are recorded on the recording medium, and Sk1 is obtained from the database based on the ID information read from the recording medium at the time of reproduction, and recorded on the recording medium using Sk1 as a decryption key. The decrypted encrypted data is decrypted.
[0037]
In the first and third embodiments, an example is shown in which an ID is recorded on a recording medium without being encrypted. In the second and fourth embodiments, an example is shown in which an ID is encrypted with a data encryption key and recorded. In the first and third embodiments, it is possible to easily search for an encryption key obtained by encrypting data and to shorten the decryption time. In the second and fourth embodiments, by encrypting the ID and recording it on a recording medium, the encrypted data can be more strictly protected from a third party.
[0038]
In the first and second embodiments, one example of sharing a key between units via a CPU, and in the third and fourth embodiments, another example of sharing a key between units via a CPU. Indicates.
[0039]
(First embodiment)
FIG. 1 is a block diagram showing a configuration of a system according to the first embodiment of the present invention. An example of the internal configuration of the key sharing circuits 30a and 30b in FIG. 1 is shown in FIG. FIG. 3 shows a procedure for encryption of the system, FIG. 4 shows an example of a key sharing procedure, and FIG. 5 shows a procedure for decryption of the system.
[0040]
As shown in FIG. 1, the system according to this embodiment includes an encryption unit 118 and a decryption unit 121. The encryption unit 118 and the decryption unit 121 are connected to the CPU bus 120 of the PC.
[0041]
Further, a disk drive device (not shown) is connected to the CPU bus 120, and reading / writing from / to the recording medium 117 is performed by the disk drive device.
As shown in FIG. 1, the encryption unit 118 includes a key sharing circuit 30b and encryption circuits 34 and 105c. It is assumed that the encryption unit 118 is formed as an independent IC chip.
[0042]
The decryption unit 121 includes a data encryption key generation circuit 107, an ID generation circuit 108, decryption circuits 32 and 106c, and an ID / key information storage circuit 109. It is assumed that the decryption unit 121 is formed as an independent IC chip.
[0043]
The overall control is controlled by a control unit (not shown). The control unit can be realized, for example, by executing a program by the CPU of the PC.
Data Data is input data to be encrypted and recorded, for example, multimedia data such as video, audio, and text input from an I / O port of a PC.
[0044]
In the present embodiment, the ID is an identification number given to each set of data (for example, for each title). The ID may be given for each disk, may be given for each side of the disk, or for each set of a plurality of disks, or for each portion obtained by further subdividing the group of data. (For example, for each chapter or each song).
[0045]
Sk1 is a data encryption key (common key in the common key cryptosystem) used for data encryption and decryption, and is generated in pairs with the ID.
Skt is a temporary key (common key in the common key cryptosystem) that changes each time when the information flows on the CPU bus 120 to decrypt the information (decryption performed prior to encryption).
[0046]
The ID generation circuit 108 generates an ID number. The ID number may be issued in order from 1, but it is preferable to issue the ID number randomly. In the latter case, in order to make all generated IDs different, for example, a method of configuring the ID generation circuit 108 using a random number generator is conceivable. In addition, when using a random number or the like that may cause duplicate numbering, it is checked whether the generated ID is the same as that of the already numbered number. The ID is preferably discarded and another ID is generated again.
[0047]
The data encryption key generation circuit 107 generates a data encryption key Sk1 that is paired with the ID. The data encryption key generation circuit 107 may be composed of a random number generator for the key length, for example. Further, when generating random numbers, for example, time information from a clock (not shown) may be used. Note that when a key is generated with a random number in which all bits may be 0 or 1, it is necessary to perform a check process or the like so that all bits do not become 0 or 1.
[0048]
The ID / key information storage circuit 109 stores a paired ID and Sk1 in association with each other. For example, ID and Sk1 are stored in a database. The key sharing circuits 30a and 30b have at least the same logical configuration, and exchange information with each other by a procedure described later to generate and share the same temporary key (bus key) Skt. The decryption unit 121 and the encryption unit 118 use the key sharing circuits 30a and 30b to securely share the same temporary key Skt without being obtained from the outside. It is assumed that the key sharing circuits 30a and 30b are built in the IC chip so that the internal logic is not analyzed from the outside.
[0049]
The recording medium 117 is for recording input data from an encrypted I / O port. For example, a hard disk, MO, FD, CD that can be written once, DVD-RAM, or the like may be used. .
[0050]
In some cases, the disk drive device includes a modulation / demodulation / error correction circuit that performs modulation and error correction circuits during recording and performs demodulation and error correction circuits during reproduction.
[0051]
In this embodiment, the decoding unit 121 is provided with a D / A conversion circuit that converts digital data Data into analog data, and the decoding unit 121 outputs data after being converted into analog data. . If the digital data Data is to be decoded, a decoding circuit for decoding the digital data Data is provided in front of the D / A conversion circuit. For example, when the digital data Data is image data compressed by the MPEG system, an MPEG decoding circuit is provided. In addition, a plurality of types of decoding circuits are provided so that either data compressed by various methods or data that does not need to be decoded can be output and used by switching between them or not using them. It is also possible. The output from the decoding unit 121 is displayed on a display or the like as an image, for example.
[0052]
First, the procedure for encryption will be described with reference to FIGS. Note that the CPU in FIG. 4 corresponds to a control unit realized by a program, and shows that the CPU, that is, the control unit mediates the procedure. Note that information may be directly exchanged between units without intermediation of the control unit.
[0053]
First, when the recording medium 117 is a removable medium, it is set in a disk drive device (not shown).
In step S <b> 11, the decryption unit 121 generates an ID for the input data by the ID generation circuit 108. Further, the data encryption key generation circuit 107 generates an encryption key Sk1 for encrypting input data. Then, the generated ID and Sk 1 are associated with each other and recorded in the storage area 109 in the decryption unit 121. Further, the generated ID is recorded in the recording medium 117.
[0054]
The ID may be given directly from the decryption unit 121 to the disk drive device via the CPU bus, or from the decryption unit 121 to the encryption unit 118 via the CPU bus, and from the encryption unit 118 to the CPU. You may make it give to a disk drive apparatus via a bus | bath.
[0055]
In step S12, the temporary key Skt is shared between the decryption unit 121 and the encryption unit 118 by a key sharing procedure.
Here, the technique disclosed in “Nikkei Electronics No. 676 pp. 13-14 1996.11.18” is applied.
[0056]
First, the configuration of the key sharing circuits 30a and 30b shown in FIG. 2 used for the key sharing procedure in this embodiment will be described.
The key sharing circuit 30a includes a challenge key generation circuit 31a, an authentication key generation circuit 33a, a comparison circuit 35a, and a bus key generation circuit 37a. The key sharing circuit 30b includes a challenge key generation circuit 31b, an authentication key generation circuit 33b, a comparison circuit 35b, and a bus key generation circuit 37b.
[0057]
The challenge key generation circuits 31a and 31b generate, for example, a challenge key that changes with each generation using a random number generation algorithm.
The authentication key generation circuits 33a and 33b generate an authentication key from the challenge key using, for example, a one-way function.
[0058]
The comparison circuits 35a and 35b compare whether or not the two authentication keys match.
The bus key generation circuits 37a and 37b generate a bus key, that is, a temporary key from two authentication keys using, for example, a one-way function.
[0059]
The authentication key generation circuit 33a and the authentication key generation circuit 33b generate the same authentication key for the same challenge key by using, for example, the same algorithm.
[0060]
The bus key generation circuit 37a and the bus key generation circuit 37b generate the same bus key from the same two authentication keys by using the same algorithm, for example.
[0061]
Next, a key sharing procedure will be described with reference to FIGS.
First, in phase 1 of the key sharing procedure, the decryption unit 121 generates a challenge key 1 by the challenge key generation circuit 31 a and transmits this to the encryption unit 118. Next, in each of the authentication key generation circuit 33a of the decryption unit 121 and the authentication key generation circuit 33b of the encryption unit 118, an authentication key 1 (Key1) is generated based on the challenge key 1, and the encryption unit The generated authentication key 1 is transferred from 118 to the decryption unit 121. Then, in the decryption unit 121, the comparison circuit 35a compares the two authentication keys 1 generated by the decryption unit 121 and the encryption unit 118, respectively. If they match, the process proceeds to the next phase 2. If they do not match, the process ends abnormally.
[0062]
Next, in phase 2, in the encryption unit 118, the challenge key generation circuit 31b generates a challenge key 2 and transmits this to the decryption unit 121 as well. Next, in each of the authentication key generation circuit 33b of the encryption unit 118 and the authentication key generation circuit 33a of the decryption unit 121, the authentication key 2 (Key2) is generated based on the challenge key 2, and the decryption unit The generated authentication key 2 is transferred from 121 to the encryption unit 118. Then, the encryption unit 118 compares the two authentication keys 2 generated by the encryption unit 118 and the decryption unit 121 by the comparison circuit 35b. If they match, the process proceeds to the next phase 3. If they do not match, the process ends abnormally.
[0063]
In phase 3, the bus key (BUS Key) based on the authentication key 1 and the authentication key 2 in each of the bus key generation circuit 37a of the decryption unit 121 and the bus key generation circuit 37b of the encryption unit 118, that is, A temporary key Skt is generated.
[0064]
As a result, the temporary key Skt is securely shared between the decryption unit 121 and the encryption unit 118.
In step S13, the data encryption key Sk1 is transmitted from the decryption unit 121 to the encryption unit 118 using the shared temporary key Skt. That is, first, in the decoding unit 121, Sk1 is decoded with Skt by the decoding circuit 32 to obtain DSkt (Sk1). Next, DSkt (Sk1) is sent from the decryption unit 121 to the encryption unit 118. Then, the encryption unit 118 encrypts DSkt (Sk1) with Skt by the encryption circuit 34 to obtain Sk1.
[0065]
In step S14, the encryption unit 118 encrypts the input data Data using the encryption circuit 105c using Sk1 as an encryption key to obtain ESk1 (Data).
[0066]
In step S15, ESk1 (Data) is recorded on the recording medium 117.
When a plurality of IDs are stored in one recording medium, the ID and ESk1 (Data) are stored in association with each other.
[0067]
Next, the procedure for decoding will be described with reference to FIGS.
First, when the recording medium 117 is a removable medium, it is set in a disk drive device (not shown).
[0068]
In step S 21, the ID recorded on the recording medium 117 is sent to the decryption unit 121.
In step S22, the decoding unit 121 searches for and extracts the corresponding Sk1 from the recording area 109 based on the sent ID, and provides it to the decoding circuit 106e.
[0069]
In step S 23, ESk 1 (Data) recorded on the recording medium 117 is sent to the decryption unit 121.
In step S24, in the decryption unit 121, the decryption circuit 106e decrypts ESk1 (Data) using Sk1 as a decryption key to obtain original input data (Data).
[0070]
When the decryption unit used to encrypt the data to be decrypted is different from the decryption unit 121, that is, the PC in which the encrypted data is recorded on the recording medium 117 is different from the PC. In this case, since the corresponding ID and Sk1 pair is not registered in the decryption unit 121, the corresponding Sk1 is not successfully retrieved and retrieved in the above step S22. The encrypted data cannot be decrypted. In other words, in the present embodiment, decryption can be performed only on a PC that has recorded encrypted data on the recording medium 117.
[0071]
The procedure shown in this embodiment is an example and can be variously modified.
For example, in FIG. 3, the temporary key sharing in step S12 may be performed first. Further, the ID generation, registration in the database, and recording on the recording medium in step S12 may be performed at any timing. Further, data may be read at any timing as long as there is a buffer in the encryption unit. Further, all data may be encrypted and then recorded on the recording medium, but encryption and recording (or reading, encryption and recording) may be repeated for each predetermined unit.
[0072]
For example, in FIG. 5, if there is a buffer in the decryption unit, the encrypted data may be read at any timing. Further, all data may be output after being decoded, but decoding and output (or reading, decoding and output) may be repeated for each predetermined unit.
[0073]
The same encryption method may be used for all of the above-mentioned encryption circuits and decryption circuits, and the encryption method used for each pair of encryption circuit and decryption circuit to be paired appropriately. You can decide (all can be different).
[0074]
In the above description, the encryption circuit and the decryption circuit are shown as independent circuits. However, if the encryption system and the decryption circuit have the same encryption method, one or a plurality of them are shared in the unit. You may comprise. That is, the encryption method of the decryption circuit 21 of the decryption unit 121 and the encryption circuit 32 of the encryption unit 118, and the encryption method of the decryption circuit 106c of the decryption unit 121 and the encryption circuit 105c of the encryption unit 118 In the decryption unit 121, the decryption circuit 21 and the decryption circuit 106c may be configured by one circuit. Similarly, the encryption unit 118 includes the encryption circuit 32 and the encryption circuit 105c. You may comprise with one circuit.
[0075]
In this embodiment, the encryption unit is incorporated in the PC as, for example, an encryption board and connected to the CPU bus. However, the encryption unit may be incorporated in the disk drive device.
[0076]
In the configuration of FIG. 1, the decoding unit 121 can be configured to be separated into two IC chips. For example, the decryption circuit 106c is separated from the decryption unit 121, and the same circuit as the key sharing circuit 30a and an encryption circuit are added to form an IC chip (this is referred to as a third unit). After the temporary key is shared by the key sharing circuit between the decryption unit 121 and the third unit, the data encryption key decrypted with the temporary key is transmitted from the decryption unit 121 to the third unit via the CPU bus 120. The data encryption key may be obtained by encrypting it with a temporary key in the third unit. In this case, a new decoding circuit may be added to the decoding unit 121, but an existing decoding circuit may also be used.
[0077]
(Second Embodiment)
FIG. 6 is a block diagram showing a configuration of a system according to the second embodiment of the present invention. An example of the internal configuration of the key sharing circuits 30a and 30b in FIG. 6 is shown in FIG. FIG. 7 shows an encryption procedure of this system, FIG. 4 shows an example of a key sharing procedure, and FIG. 8 shows a decryption procedure of this system.
[0078]
This embodiment basically has the same configuration as that of the first embodiment, and the following mainly describes differences.
First, the encryption unit 118 has the same configuration as that shown in FIG. 1 except that the DSkt (ID) passed from the decryption unit 121 is decrypted with a temporary key by the encryption circuit 32, and the decrypted ID is encrypted. The difference is that the encryption circuit 105c encrypts with Sk1.
[0079]
In addition to the configuration shown in FIG. 1, the decryption unit 121 has a decryption circuit 106d and an ID determination circuit 110 for obtaining Sk1 from a given ESk1 (ID). The difference is that the decryption circuit 32 decrypts the temporary key Skt and sends it to the encryption unit 118.
[0080]
Next, the procedure for encryption will be described with reference to FIGS. 6, 7, 2, and 4. FIG.
In step S31, the ID for the input data is generated by the ID generation circuit 108 in the decryption unit 121. Further, the data encryption key generation circuit 107 generates an encryption key Sk1 for encrypting input data. Then, the generated ID and Sk 1 are associated with each other and recorded in the storage area 109 in the decryption unit 121.
[0081]
In step S32, the temporary key Skt is shared by the key sharing procedure between the decryption unit 121 and the encryption unit 118 in the same manner as in step S12.
In step S33, the data encryption key Sk1 and the ID are transmitted from the decryption unit 121 to the encryption unit 118 using the shared temporary key Skt.
[0082]
That is, for the data encryption key Sk1, first, in the decryption unit 121, Sk1 is decrypted by the decryption circuit 32 to obtain DSkt (Sk1). Next, DSkt (Sk1) is sent from the decryption unit 121 to the encryption unit 118. Then, the encryption unit 118 encrypts DSkt (Sk1) with Skt by the encryption circuit 34 to obtain Sk1.
[0083]
As for the ID, the decoding unit 121 decodes the ID with Skt in the same manner as described above to obtain DSkt (ID). Next, DSkt (ID) is sent from the decryption unit 121 to the encryption unit 118. Then, the encryption unit 118 encrypts DSkt (ID) with Skt by the encryption circuit 34 to obtain an ID.
[0084]
In step S34, the encryption unit 118 encrypts the ID using Sk1 as an encryption key by the encryption circuit 105c to obtain ESk1 (ID). Then, ESk1 (ID) is recorded on the recording medium 117.
[0085]
In step S35, the encryption unit 118 encrypts the input data Data using Sk1 as an encryption key by the encryption circuit 105c to obtain ESk1 (Data). Then, ESk1 (Data) is recorded on the recording medium 117.
[0086]
When a plurality of ESk1 (ID) are stored in one recording medium, ESk1 (ID) and ESk1 (Data) are stored in association with each other.
Next, the procedure for decoding will be described with reference to FIGS.
[0087]
First, when the recording medium 117 is a removable medium, it is set in a disk drive device (not shown).
In step S41, ESk1 (ID) recorded on the recording medium 117 is sent to the decryption unit 121.
[0088]
In step S42, the decoding unit 121 obtains the corresponding Sk1 from the recording area 109 based on the sent ESk1 (ID).
That is, first, ESk1 (ID) is decrypted by the decryption circuit 106d using one encryption key recorded in the recording area 109, and this result is set as an ID candidate and given to the ID determination circuit 110. In addition, the ID recorded in the recording area 109 corresponding to this one encryption key is given to the ID determination circuit 110. Then, the ID determination circuit 110 compares the two, and if they do not match, the same procedure is performed using another encryption key stored in the recording area 109. Then, the ID determination circuit 110 compares the two and if the two match, the pair of Sk1 and ID should be obtained. Therefore, the Sk1 from the recording area 109 or from the decoding circuit 106 is sent to the decoding circuit 106d. give.
[0089]
In step S43, ESk1 (Data) recorded on the recording medium 117 is sent to the decryption unit 121.
In step S44, in the decryption unit 121, the decryption circuit 106c decrypts ESk1 (Data) using Sk1 as a decryption key to obtain the original input data.
[0090]
The procedure shown in this embodiment is an example and can be variously modified.
For example, in FIG. 7, the temporary key sharing in step S32 may be performed first. Further, the generation of the ID in step S31 and the generation of Sk1 may be performed after step S32. Further, the registration in the database in step S31 may be performed at any timing. In step S33, either ID or Sk1 may be shared first. Further, data may be read at any timing as long as there is a buffer in the encryption unit. Further, all data may be encrypted and then recorded on the recording medium, but encryption and recording (or reading, encryption and recording) may be repeated for each predetermined unit.
[0091]
For example, in FIG. 8, if there is a buffer in the decryption unit, the encrypted data may be read at any timing. Further, all data may be output after being decoded, but decoding and output (or reading, decoding and output) may be repeated for each predetermined unit.
[0092]
Similarly to the first embodiment, the encryption circuit and the decryption circuit may be configured so that one or a plurality of them are shared in the unit as long as the encryption method is the same. In the present embodiment, in the decoding unit 121, the decoding circuits 32, 106c, and 106d can be configured as one circuit, and two circuits (for example, the decoding circuit 32 and the decoding circuit 106c). , 106d).
[0093]
(Third embodiment)
FIG. 9 is a block diagram showing a configuration of a system according to the third embodiment of the present invention. FIG. 10 is a flowchart showing a procedure for encrypting the system. FIG. 11 is a flowchart showing a procedure for decoding in the present system.
[0094]
As shown in FIG. 9, the system according to this embodiment includes an encryption unit 118 and a decryption unit 121. The encryption unit 118 and the decryption unit 121 are connected to the CPU bus 120 of the PC.
[0095]
Further, a disk drive device (not shown) is connected to the CPU bus 120, and reading / writing from / to the recording medium 117 is performed by the disk drive device.
As shown in FIG. 9, the encryption unit 118 includes encryption circuits 105 a to 105 c and a key determination circuit 210. It is assumed that the encryption unit 118 is formed as an independent IC chip.
[0096]
The decryption unit 121 includes a data encryption key generation circuit 107, an ID generation circuit 108, decryption circuits 106a to 106c, and an ID / key information storage circuit 109. It is assumed that the decryption unit 121 is formed as an independent IC chip.
[0097]
In the decryption unit 121, a plurality of master keys Mks (102a in the figure) to be described later are registered (built in).
In the encryption unit 118, a plurality of master keys Mks (102b in the figure) that are the same as those in the decryption unit 121 are registered (built in).
[0098]
If it is detected that the master key has been broken, thereafter, the master key is created in the decryption unit 121 except for the broken one. However, for the encryption unit 118, a master key may or may not be created except for the broken one. In addition, it is desirable that the decryption unit 203 in which the broken master key is built is replaced with a new one in which the master key is made except for the broken one. However, the encryption unit 118 may use the broken master key as it is.
[0099]
The overall control is controlled by a control unit (not shown). The control unit can be realized, for example, by executing a program by the CPU of the PC.
Data Data is input data to be encrypted and recorded, for example, multimedia data such as video, audio, and text input from an I / O port of a PC.
[0100]
In the present embodiment, the ID is an identification number given to each set of data (for example, for each title). The ID may be given for each disk, may be given for each side of the disk, or for each set of a plurality of disks, or for each portion obtained by further subdividing the group of data. (For example, for each chapter or each song).
[0101]
Sk1 is a data encryption key (common key in the common key cryptosystem) used for data encryption and decryption, and is generated in pairs with the ID.
Mks (s = 1 to n, n is an integer of 2 or more) is a key bundle of a master key (a common key in a common key cryptosystem). For example, a predetermined number of master keys are assigned for each manufacturer. In this case, the master key is assigned so that there is no duplication between manufacturers. Here, as an example, s = 1,... 10 (s = 10). That is, the master keys Mk1, Mk2,..., Mk10 are created in the encryption unit 118 and the decryption unit 121, respectively.
[0102]
As described above, the key ring of the master key is concealed inside the chip so that the user cannot intentionally extract it from the chip of the encryption unit and the chip of the decryption unit so that the user cannot obtain it from the outside. It is assumed that it is recorded in the recorded area.
[0103]
The ID generation circuit 108 generates an ID number. The ID number may be issued in order from 1, but it is preferable to issue the ID number randomly. In the latter case, in order to make all generated IDs different, for example, a method of configuring the ID generation circuit 108 using a random number generator is conceivable. In addition, when using a random number or the like that may cause duplicate numbering, it is checked whether the generated ID is the same as that of the already numbered number. The ID is preferably discarded and another ID is generated again.
[0104]
The data encryption key generation circuit 107 generates a data encryption key Sk1 that is paired with the ID. The temporary key generation circuit 107 may be composed of a random number generator for the key length, for example. Further, when generating random numbers, for example, time information from a clock (not shown) may be used. Note that when a key is generated with a random number in which all bits may be 0 or 1, it is necessary to perform a check process or the like so that all bits do not become 0 or 1.
[0105]
The ID / key information storage circuit 109 stores a paired ID and Sk1 in association with each other. For example, ID and Sk1 are stored in a database.
The recording medium 117 is for recording input data from an encrypted I / O port. For example, a hard disk, MO, FD, CD that can be written once, DVD-RAM, or the like may be used. .
[0106]
In some cases, the disk drive device includes a modulation / demodulation / error correction circuit that performs modulation and error correction circuits during recording and performs demodulation and error correction circuits during reproduction.
[0107]
In this embodiment, the decoding unit 121 is provided with a D / A conversion circuit that converts digital data Data into analog data, and the decoding unit 121 outputs data after being converted into analog data. . If the digital data Data is to be decoded, a decoding circuit for decoding the digital data Data is provided in front of the D / A conversion circuit. For example, when the digital data Data is image data compressed by the MPEG system, an MPEG decoding circuit is provided. In addition, a plurality of types of decoding circuits are provided so that either data compressed by various methods or data that does not need to be decoded can be output and used by switching between them or not using them. It is also possible. The output from the decoding unit 121 is displayed on a display or the like as an image, for example.
[0108]
First, the procedure for encryption will be described with reference to FIGS.
First, when the recording medium 117 is a removable medium, it is set in a disk drive device (not shown).
[0109]
In step S51, the ID for the input data is generated by the ID generation circuit 108 in the decryption unit 121. Further, the data encryption key generation circuit 107 generates an encryption key Sk1 for encrypting input data. Then, the generated ID and Sk 1 are associated with each other and recorded in the storage area 109 in the decryption unit 121. Further, the generated ID is recorded in the recording medium 117.
[0110]
The ID may be given directly from the decryption unit 121 to the disk drive device via the CPU bus, or from the decryption unit 121 to the encryption unit 118 via the CPU bus, and from the encryption unit 118 to the CPU. You may make it give to a disk drive apparatus via a bus | bath.
[0111]
In step S52, the generated data encryption key Sk1 is transmitted from the decryption unit 121 to the encryption unit 118 using the following procedure.
Sk1 is encrypted with one of the master keys Mks (s = 1,..., N) recorded in the decryption unit 121 (this is referred to as Mki) so that the plain data of Sk1 is not acquired. , EMki (Sk1) and sent to the encryption unit 118 through the CPU bus 120.
[0112]
Here, if there is only one master key (denoted Mk0), the decryption unit 121 simply decrypts Sk1 with Mk0 and sends this EMk0 (Sk1) to the encryption unit 118. By encrypting EMk0 (Sk1) with Mk0 in the encryption unit 118, Sk1 can be taken out, but in this embodiment, the used master key Mki of the key bundle made up of a plurality of master keys is directly used. The identification information pointed to is not transmitted from the decryption unit 121 to the encryption unit 118, and instead, information enabling identification of the master key Mki is sent from the decryption unit 121 to the decryption unit 121 for encryption. Which of the n master keys is the master key Mki used for decrypting the Skt in the unit 118 With identifying, obtaining Sk1 through certain of the master key.
[0113]
Hereinafter, a more detailed procedure of step S52 will be described.
First, in the decryption unit 121, the decryption circuit 106a selects one of the n master keys Mks (i = 1,..., N), for example, randomly or sequentially (this is referred to as Mki). The data encryption key Sk1 is decrypted to obtain DMki (Sk1). Further, the decryption circuit 106b decrypts Sk1 using Sk1 itself as a decryption key to obtain DSk1 (Sk1). Then, DMki (Sk1) and DSk1 (Sk1) are sent to the encryption unit 118 through the CPU bus 120.
[0114]
Next, the encryption unit 118 first selects one master key (this is referred to as Mkp).
Using the selected Mkp as a decryption key, the encryption circuit 105a encrypts DMki (Sk1),
EMkp (DMki (Sk1)) = Ska
Get.
[0115]
Next, DSk1 (Sk1) is encrypted by the encryption circuit 105b using the output Ska of the encryption circuit 105a as a decryption key,
ESka (DSk1 (Sk1)) = Skb
Get.
[0116]
Next, the key determination circuit 210 checks whether Ska and Skb match. Here, if the master key Mki obtained by encrypting Sk1 in the decryption unit 121 is Mkp,
Ska = EMkp (DMki (Sk1)) = Sk1
And therefore
Skb = ESka (DSk1 (Sk1)) = ESk1 (DSk1 (Sk1)) = Sk1
And therefore
Ska = Skb = Sk1
It becomes.
[0117]
That is, when the key determination circuit 210 finds that Ska and Skb match,
Mki = Mkp and Ska = Skb = Sk1,
In this case, the key determination circuit 210 outputs Ska = Skb = Sk1.
[0118]
On the other hand, if the key determination circuit 210 finds that Ska and Skb do not match,
Mki ≠ Mkp, and it is understood by the decryption unit 121 that Sk1 is not encrypted with this Mkp, but is encrypted with the other master key. In this case, the key determination circuit 210 does not output (or the output of the key determination circuit 210 is not transmitted to the encryption circuit 105c).
[0119]
Thereafter, the master key Mkp used for encryption is changed and the above procedure is repeated until Ska and Skb match. For example, if the above procedure is first performed using Mk1 as Mkp and Ska and Skb do not match, then the procedure is repeated again after updating to Mk2.
[0120]
Using the above-described procedure, the master unit used in the decryption unit 121 can be specified on the encryption unit 118 side, and data can be transmitted between the decryption unit 121 and the encryption unit 118. It becomes possible to share the encryption key Sk1 safely.
[0121]
In step S53, the encryption unit 118 encrypts the input data Data using Sk1 as an encryption key by the encryption circuit 105c to obtain ESk1 (Data).
[0122]
In step S54, ESk1 (Data) is recorded on the recording medium 117.
When a plurality of IDs are stored in one recording medium, the ID and ESk1 (Data) are stored in association with each other.
[0123]
Next, the decoding procedure will be described with reference to FIGS.
First, when the recording medium 117 is a removable medium, it is set in a disk drive device (not shown).
[0124]
In step S 61, the ID recorded on the recording medium 117 is sent to the decryption unit 121.
In step S62, the decoding unit 121 searches for and extracts the corresponding Sk1 from the recording area 109 based on the sent ID, and provides it to the decoding circuit 106e.
[0125]
In step S 63, ESk 1 (Data) recorded on the recording medium 117 is sent to the decryption unit 121.
In step S64, in the decryption unit 121, the decryption circuit 106e decrypts ESk1 (Data) using Sk1 as a decryption key to obtain original input data (Data).
[0126]
When the decryption unit used to encrypt the data to be decrypted is different from the decryption unit 121, that is, the PC in which the encrypted data is recorded on the recording medium 117 is different from the PC. In this case, since the corresponding ID and Sk1 pair is not registered in the decryption unit 121, the corresponding Sk1 is not successfully retrieved and retrieved in the above step S22. The encrypted data cannot be decrypted. In other words, in the present embodiment, decryption can be performed only on a PC that has recorded encrypted data on the recording medium 117.
[0127]
The procedure shown in this embodiment is an example and can be variously modified.
For example, in FIG. 10, the ID generation, registration in the database, and recording on the recording medium in step S51 may be performed at any timing. Further, data may be read at any timing as long as there is a buffer in the encryption unit. Further, all data may be encrypted and then recorded on the recording medium, but encryption and recording (or reading, encryption and recording) may be repeated for each predetermined unit. FIG. 11 is the same as in the first embodiment.
[0128]
The same encryption method may be used for all of the above-mentioned encryption circuits and decryption circuits, and the encryption method used for each pair of encryption circuit and decryption circuit to be paired appropriately. You can decide (all can be different).
[0129]
In the above description, the encryption circuit and the decryption circuit are shown as independent circuits. However, if the encryption system and the decryption circuit have the same encryption method, one or a plurality of them are shared in the unit. You may comprise. For example, in the decoding unit 121, the decoding circuits 106a, 106b, and 106c can be configured by one circuit, and two circuits (for example, a circuit shared by the decoding circuits 106a and 106b and a decoding circuit) It is also possible to configure the circuit 106c). Further, for example, in the encryption unit 118, the encryption circuits 105a, 105b, and 105c can be configured by one circuit, and two circuits (for example, a circuit shared by the encryption circuits 105a and 105b) The encryption circuit 105c) can also be used.
[0130]
Similar to the first embodiment, in the configuration of FIG. 9, the decoding unit 121 can be configured to be separated into two IC chips.
(Fourth embodiment)
FIG. 12 is a block diagram showing a configuration of a system according to the fourth embodiment of the present invention. FIG. 13 is a flowchart showing a procedure for encryption of the present system. FIG. 14 is a flowchart showing a procedure for decoding in this system.
[0131]
This embodiment basically has the same configuration as that of the third embodiment, and the following mainly describes differences.
First, the encryption unit 118 has the same configuration as that shown in FIG. 9, but the DMki (ID) passed from the decryption unit 121 is converted into the master key Mki by the encryption circuit 105a after the master key Mki is specified. The difference is that the decrypted ID is encrypted with Sk1 by the encryption circuit 105c.
[0132]
Further, in addition to the configuration of FIG. 9, the decoding unit 121 is provided with a decoding circuit 106d and an ID determination circuit 110 for obtaining Sk1 from a given ESk1 (ID), and also has a generated ID. The difference is that the decryption circuit 106a decrypts the master key Mki and sends it to the encryption unit 118.
[0133]
Next, the procedure for encryption will be described with reference to FIGS.
In step S <b> 71, the decryption unit 121 generates an ID for the input data by the ID generation circuit 108. Further, the data encryption key generation circuit 107 generates an encryption key Sk1 for encrypting input data. Then, the generated ID and Sk 1 are associated with each other and recorded in the storage area 109 in the decryption unit 121.
[0134]
In step S72, the generated data encryption key Sk1 and the ID are transmitted from the decryption unit 121 to the encryption unit 118 using the following procedure.
First, in the decryption unit 121, the decryption circuit 106a decrypts the data encryption key Sk1 with any one of n master keys Mks (i = 1,..., N) (this is referred to as Mki). DMki (Sk1) is obtained. Further, the decryption circuit 106b decrypts Sk1 using Sk1 itself as a decryption key to obtain DSk1 (Sk1). Then, DMki (Sk1) and DSk1 (Sk1) are sent to the encryption unit 118 through the CPU bus 120. Also, the decryption circuit 106 a decrypts the ID with the same Mki to obtain DMki (ID), which is also sent to the encryption unit 118 through the CPU bus 120.
[0135]
Next, in the same manner as in step S52, the encryption unit 118 specifies the master key Mki and obtains the data encryption key Sk1. Then, the encryption circuit 105a decrypts EMki (ID) with the specified Mki to obtain an ID.
[0136]
In step S73, the encryption unit 118 encrypts the ID using Sk1 as an encryption key by the encryption circuit 105c to obtain ESk1 (ID). Then, ESk1 (ID) is recorded on the recording medium 117.
[0137]
In step S74, the encryption unit 118 encrypts the input data Data using Sk1 as an encryption key by the encryption circuit 105c to obtain ESk1 (Data). Then, ESk1 (Data) is recorded on the recording medium 117.
[0138]
When a plurality of ESk1 (ID) are stored in one recording medium, ESk1 (ID) and ESk1 (Data) are stored in association with each other.
Next, a procedure for decoding will be described with reference to FIGS.
[0139]
First, when the recording medium 117 is a removable medium, it is set in a disk drive device (not shown).
In step S 81, ESk 1 (ID) recorded on the recording medium 117 is sent to the decryption unit 121.
[0140]
In step S82, the decoding unit 121 obtains the corresponding Sk1 from the recording area 109 based on the sent ESk1 (ID).
That is, first, ESk1 (ID) is decrypted by the decryption circuit 106d using one encryption key recorded in the recording area 109, and this result is set as an ID candidate and given to the ID determination circuit 110. In addition, the ID recorded in the recording area 109 corresponding to this one encryption key is given to the ID determination circuit 110. Then, the ID determination circuit 110 compares the two, and if they do not match, the same procedure is performed using another encryption key stored in the recording area 109. Then, the ID determination circuit 110 compares the two and if the two match, the pair of Sk1 and ID should be obtained. Therefore, the Sk1 from the recording area 109 or from the decoding circuit 106 is sent to the decoding circuit 106d. give.
[0141]
In step S83, ESk1 (Data) recorded on the recording medium 117 is sent to the decryption unit 121.
In step S84, in the decryption unit 121, the decryption circuit 106c decrypts ESk1 (Data) using Sk1 as a decryption key to obtain the original input data.
[0142]
The procedure shown in this embodiment is an example and can be variously modified.
For example, in FIG. 13, the ID generation, registration in the database, and recording on the recording medium in step S71 may be performed at any timing. Further, data may be read at any timing as long as there is a buffer in the encryption unit. Further, all data may be encrypted and then recorded on the recording medium, but encryption and recording (or reading, encryption and recording) may be repeated for each predetermined unit. FIG. 11 is the same as in the second embodiment.
[0143]
Similarly to the third embodiment, one or a plurality of encryption circuits and decryption circuits may be used in the unit as long as the encryption method is the same. In the present embodiment, for example, in the decoding unit 121, the decoding circuits 106a, 106b, 106c, and 106d can be configured by one circuit, and two circuits (for example, the decoding circuits 106a and 106b) can be configured. And a circuit shared by the decoding circuits 106c and 106d), or can be configured by three circuits.
The present invention is not limited to the above-described embodiment, and can be implemented with various modifications within the technical scope thereof.
[0144]
【The invention's effect】
According to the present invention, the data encryption key generated each time is recorded in the unit in correspondence with the identification information, so that it cannot be decrypted without the unit itself, and the recording medium can be copied. Even if it is made, it cannot be decrypted by other computers.
[0145]
Further, according to the present invention, the data encryption key flowing through the CPU bus is encrypted, and the data encryption key itself is generated each time, so that the third party cannot decrypt the encryption. It is extremely difficult.
Therefore, according to the present invention, it is possible to prevent unauthorized copying by a third party.
[Brief description of the drawings]
FIG. 1 is a block diagram showing the configuration of a system according to a first embodiment of the present invention.
FIG. 2 is a diagram showing an example of an internal configuration of the key sharing circuit of FIG.
FIG. 3 is a flowchart showing a procedure for encryption in the embodiment;
FIG. 4 is a flowchart showing an example of a key sharing procedure.
FIG. 5 is a flowchart showing a procedure for decoding in the embodiment;
FIG. 6 is a block diagram showing a configuration of a system according to a second embodiment of the present invention.
FIG. 7 is a flowchart showing a procedure for encryption in the embodiment;
FIG. 8 is a flowchart showing a procedure for decoding in the embodiment;
FIG. 9 is a block diagram showing a configuration of a system according to a third embodiment of the present invention.
FIG. 10 is a flowchart showing a procedure for encryption in the embodiment;
FIG. 11 is a flowchart showing a procedure for decoding in the embodiment;
FIG. 12 is a block diagram showing a configuration of a system according to a fourth embodiment of the present invention.
FIG. 13 is a flowchart showing a procedure for encryption in the embodiment;
FIG. 14 is a flowchart showing a procedure for decoding in the embodiment;
[Explanation of symbols]
30a, 30b ... key sharing circuit
31a, 31b ... Challenge key generation circuit
33a, 33b ... authentication key generation circuit
35a, 35b ... comparison circuit
37a, 37b ... bus key generation circuit
102a, 102b ... Key bundle of master keys
105a to 105c ... encryption circuit
106a to 106d ... decoding circuit
107: Data encryption key generation circuit
108... ID generation circuit
109 ... ID / key information storage circuit
110... ID determination circuit
117 ... Recording medium
118 ... Encryption unit
120 ... CPU bus
121 ... Decoding unit
210: Key determination circuit

Claims (15)

計算機のCPUバスを介さずに入力したデータを記録媒体に記録する前に暗号化する装置のために、データ暗号化鍵を生成し記録する、計算機のCPUバスに接続されて使用されるユニット装置であって、
予め定められた複数のマスター鍵の全部又は一部を外部から秘匿した形で記憶するための記憶手段と、
暗号化対象となるデータの識別情報を生成するための手段と、
前記データの暗号化に用いるデータ暗号化鍵を生成するための手段と、
生成された前記データ暗号化鍵と前記識別情報とを対応付けて記録するための手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記暗号化する装置との間で、前記データ暗号化鍵を共有するための手段とを備え、
前記共有するための手段は、
前記データ暗号化鍵を、前記記憶手段に記憶されているいずれかのマスター鍵で復号するとともに、該データ暗号化鍵自身でデータ暗号化鍵を復号し、
前記いずれかのマスター鍵で復号されたデータ暗号化鍵及び前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、前記計算機のCPUバスを介して、前記暗号化する装置へ出力することを特徴とするユニット装置。
The data input without using the CPU bus of the computer for devices which encrypted before being recorded on the record medium, generating a data encryption key and record, is used by being connected to the CPU bus of the computer A unit device,
Storage means for storing all or part of a plurality of predetermined master keys in a concealed form from the outside;
Means for generating identification information of data to be encrypted;
Means for generating a data encryption key for use in encrypting the data;
And means for recording in association generated with the data encryption key and said identification information,
Via the CPU bus of said computer, by performing transfer of information for key agreement based on secret information, to and from the equipment to the encrypted, means order to share the data encryption key for example Bei the door,
The means for sharing is:
Decrypting the data encryption key with any master key stored in the storage means, decrypting the data encryption key with the data encryption key itself,
Said one of the data encryption key is decrypted with the master key and the data encryption key itself decoded data encryption key in, through the CPU bus of said computer, the child output to the device to the encrypted A unit device characterized by.
計算機のCPUバスを介さずに入力したデータを記録媒体に記録する前に暗号化する装置のために、データ暗号化鍵を生成し記録する、該計算機のCPUバスに接続されて使用されるユニット装置であって、A unit that is connected to the computer's CPU bus and used to generate and record a data encryption key for an apparatus that encrypts data input without going through the computer's CPU bus before recording it on a recording medium. A device,
予め定められた複数のマスター鍵の全部又は一部を外部から秘匿した形で記憶するための記憶手段と、Storage means for storing all or part of a plurality of predetermined master keys in a concealed form from the outside;
暗号化対象となるデータの識別情報を生成するための手段と、Means for generating identification information of data to be encrypted;
前記データの暗号化に用いるデータ暗号化鍵を生成するための手段と、Means for generating a data encryption key for use in encrypting the data;
生成された前記データ暗号化鍵と前記識別情報とを対応付けて記録するための手段と、Means for associating and recording the generated data encryption key and the identification information;
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記暗号化する装置との間で、前記データ暗号化鍵及び前記識別情報を共有するための手段とを備え、To share the data encryption key and the identification information with the encrypting device by exchanging information for key sharing based on secret information via the CPU bus of the computer With the means of
前記共有するための手段は、The means for sharing is:
前記データ暗号化鍵及び前記識別情報を、前記記憶手段に記憶されているいずれかのマスター鍵でそれぞれ復号するとともに、該データ暗号化鍵自身でデータ暗号化鍵を復号し、The data encryption key and the identification information are each decrypted with any of the master keys stored in the storage means, and the data encryption key itself is decrypted with the data encryption key,
前記いずれかのマスター鍵でそれぞれ復号された前記データ暗号化鍵及び前記識別情報並びに前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、前記計算機のCPUバスを介して、前記暗号化する装置へ出力することを特徴とするユニット装置。The data encryption key and the identification information each decrypted with any one of the master keys and the data encryption key decrypted with the data encryption key itself are encrypted via the CPU bus of the computer. A unit device that outputs to a device.
暗号化されて記録媒体に記録されたデータを復号する、計算機のCPUバスに接続されて使用される復号化ユニット装置であって、
予め定められた複数のマスター鍵の全部又は一部を外部から秘匿した形で記憶するための記憶手段と、
前記計算機のCPUバスを介さずに入力されたデータを暗号化する暗号化ユニット装置が暗号化対象とするデータの識別情報を生成するための手段と、
前記暗号化ユニット装置が前記データの暗号化に用いるデータ暗号化鍵を生成するための手段と、
生成された前記データ暗号化鍵と前記識別情報とを対応付けて記録するための記録手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡し を行うことによって、前記暗号化ユニット装置との間で、前記データ暗号化鍵を共有するための手段と、
前記記録媒体から読み出された識別情報及び該識別情報に対応するデータ暗号化鍵で暗号化されたデータを、前記計算機のCPUバスを介して入力するための手段と、
前記記録手段に識別情報と対応付けて記録されているデータ暗号化鍵のうちから、入力した前記識別情報に対応するデータ暗号化鍵を求めるための手段と、
求められた前記データ暗号化鍵を復号鍵として、入力した前記データ暗号化鍵で暗号化されたデータを復号するための手段とを備え、
前記共有するための手段は、
前記データ暗号化鍵を、前記記憶手段に記憶されているいずれかのマスター鍵で復号するとともに、該データ暗号化鍵自身でデータ暗号化鍵を復号し、
前記いずれかのマスター鍵で復号されたデータ暗号化鍵及び前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、前記計算機のCPUバスを介して、前記暗号化する装置へ出力することを特徴とする復号化ユニット装置。
Decodes the data recorded encrypted in the record medium, a computer decoding unit device used by being connected to the CPU bus,
Storage means for storing all or part of a plurality of predetermined master keys in a concealed form from the outside;
Means for generating identification information of data to be encrypted by an encryption unit device for encrypting data input without going through the CPU bus of the computer;
Means for generating a data encryption key used by the encryption unit device to encrypt the data;
And recording means for recording in association generated with the data encryption key and said identification information,
Via the CPU bus of said computer, by performing transfer of information for key agreement based on secret information, to and from the encryption unit apparatus, comprising: means order to share the data encryption key ,
Means for inputting identification information read from the recording medium and data encrypted with a data encryption key corresponding to the identification information via the CPU bus of the computer;
From among the data encryption key is recorded in association with the identification information in the recording means, means for determining a data encryption key corresponding to the identification information input,
As a decryption key the data encryption key obtained, Bei example and means for decoding the input encrypted data in the data encryption key was,
The means for sharing is:
Decrypting the data encryption key with any master key stored in the storage means, decrypting the data encryption key with the data encryption key itself,
Said one of the data encryption key is decrypted with the master key and the data encryption key itself decoded data encryption key in, through the CPU bus of said computer, the child output to the device to the encrypted A decoding unit device characterized by the above.
暗号化されて記録媒体に記録されたデータを復号する、計算機のCPUバスに接続されて使用される復号化ユニット装置であって、
予め定められた複数のマスター鍵の全部又は一部を外部から秘匿した形で記憶するための記憶手段と、
前記計算機のCPUバスを介さずに入力されたデータを暗号化する暗号化ユニット装置が暗号化対象とするデータの識別情報を生成するための手段と、
前記暗号化ユニット装置が前記データと前記識別情報の暗号化に用いるデータ暗号化鍵を生成するための手段と、
生成された前記データ暗号化鍵と前記識別情報とを対応付けて記録するための記録手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記暗号化ユニット装置との間で、前記データ暗号化鍵及び前記識別情報を共有するための手段と、
前記記録媒体から読み出されたデータ暗号化鍵で暗号化された識別情報及び該データ暗号化鍵で暗号化されたデータを、前記計算機のCPUバスを介して入力するための手段と、
前記記録手段に識別情報と対応付けて記録されているデータ暗号化鍵のうちから、入力した前記データ暗号化鍵で暗号化された識別情報に対応するデータ暗号化鍵を求めるための手段と、
求められた前記データ暗号化鍵を復号鍵として、入力した前記データ暗号化鍵で暗号化されたデータを復号するための手段とを備え、
前記共有するための手段は、
前記データ暗号化鍵及び前記識別情報を、前記記憶手段に記憶されているいずれかのマスター鍵でそれぞれ復号するとともに、該データ暗号化鍵自身でデータ暗号化鍵を復号し、
前記いずれかのマスター鍵でそれぞれ復号された前記データ暗号化鍵及び前記識別情報並びに前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、前記計算機のCPUバスを介して、前記暗号化する装置へ出力することを特徴とする復号化ユニット装置。
Decodes the data recorded encrypted in the record medium, a computer decoding unit device used by being connected to the CPU bus,
Storage means for storing all or part of a plurality of predetermined master keys in a concealed form from the outside;
Means for generating identification information of data to be encrypted by an encryption unit device for encrypting data input without going through the CPU bus of the computer;
Means for generating a data encryption key used by the encryption unit device to encrypt the data and the identification information;
And recording means for recording in association generated with the data encryption key and said identification information,
Via the CPU bus of said computer, by performing transfer of information for key agreement based on secret information, to and from the encryption unit device, that share the data encryption key and said identification information Means for
Means for inputting identification information encrypted with the data encryption key read from the recording medium and data encrypted with the data encryption key via the CPU bus of the computer;
From among the data encryption key is recorded in association with the identification information in the recording means, means for determining a data encryption key corresponding to the encryption identification information in the data encryption key entered ,
As a decryption key the data encryption key obtained, Bei example and means for decoding the input encrypted data in the data encryption key was,
The means for sharing is:
The data encryption key and the identification information are each decrypted with any of the master keys stored in the storage means, and the data encryption key itself is decrypted with the data encryption key,
The data encryption key and the identification information decrypted with any one of the master keys and the data encryption key decrypted with the data encryption key itself are encrypted via the CPU bus of the computer. decoding unit and wherein the output child to the device.
前記データ暗号化鍵を求めるための手段は、前記記録手段に記録されている識別情報とデータ暗号化鍵の組のうちから、前記記録媒体から読み出された前記データ暗号化鍵で暗号化された識別情報を前記記録手段に記録されているデータ暗号化鍵で復号して得られる識別情報と、該データ暗号化鍵に対応付けて前記記録手段に記録されている識別情報とが等しくなる組を探すことにより、前記データ暗号化鍵を求めるものであることを特徴とする請求項に記載の復号化ユニット装置。Said means for obtaining the data encryption key, from among a set of identification information and data encryption key recorded in the recording means, is encrypted with the data encryption key read out from said recording medium and the identification information obtained by identification information decoded by the data encryption key recorded in the recording means, the set of the identification information recorded in the recording means in association to the data encryption key is equal The decryption unit device according to claim 4 , wherein the data encryption key is obtained by searching for. 前記記録媒体から読み出された暗号化されたデータを復号して得られたもとのデータにある変換処理を施した後に、前記計算機のCPUバスを介さずに外部に出力するための手段をさらに備えたことを特徴とする請求項ないしのいずれか1項に記載の復号化ユニット装置。After performing a conversion process on the original data obtained by decoding the encrypted data read from said recording medium, further comprising means for outputting to the outside without passing through the CPU bus of said computer The decoding unit device according to any one of claims 3 to 5 , wherein 算機のCPUバスを介さずに入力されたデータを、記録媒体に記録する前に暗号化する暗号化ユニット装置であって、
予め定められた複数のマスター鍵を外部から秘匿した形で記憶するための記憶手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、暗号化対象となるデータの識別情報と該データの暗号化に用いるデータ暗号化鍵を生成しこれらを対応付けて記録する装置との間で、該データ暗号化鍵を共有するための手段と、
暗号化対象となるデータを、前記計算機のCPUバスを介さずに入力するための手段と、
共有した前記データ暗号化鍵を用いて、入力した前記データ暗号化するための手段とを備え、
前記共有するための手段は、
前記計算機のCPUバスを介して、前記記録する装置から、前記いずれかのマスター鍵で復号されたデータ暗号化鍵及び前記データ暗号化鍵自身で復号されたデータ暗号化鍵を入力し、
入力した前記いずれかのマスター鍵で復号されたデータ暗号化鍵を、前記記憶手段に記録されているいずれかのマスター鍵で暗号化して得られる第1の鍵候補と、入力した前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、該第1の鍵候補で暗号化して得られる第2の鍵候補とが一致するものを探し求め、該一致が得られたときの鍵候補を、求めるべきデータ暗号化鍵とすることを特徴とする暗号化ユニット装置。
The input data without using the CPU bus of the calculation device, a cryptographic unit apparatus for encrypting before recording the record medium,
Storage means for storing a plurality of predetermined master keys in a concealed form from the outside;
Generates identification information of data to be encrypted and a data encryption key used for encryption of the data by passing information for key sharing based on secret information via the CPU bus of the computer and between the apparatus for recording in association with these, and means order to share the data encryption key,
Means for inputting data to be encrypted without going through the CPU bus of the computer;
Sharing the using the data encryption key, e Bei and means for encrypting the data input,
The means for sharing is:
Via the CPU bus of the computer, the data encryption key decrypted with one of the master keys and the data encryption key decrypted with the data encryption key itself are input from the recording device,
A first key candidate obtained by encrypting a data encryption key decrypted with any of the inputted master keys with any of the master keys recorded in the storage means, and the inputted data encryption The data encryption key decrypted with the key itself is searched for a match with the second key candidate obtained by encrypting with the first key candidate, and the key candidate when the match is obtained is obtained. encrypting unit and wherein the data encryption key and a child should.
前記記録する装置は、与えられた識別情報をもとにして求めたデータ暗号化鍵を用いて与えられた暗号化されたデータを復号する復号化ユニット装置であることを特徴とする請求項7に記載の暗号化ユニット装置。 The recording apparatus according which is a decoding unit apparatus for decoding encrypted data supplied using the data encryption key determined based on given the obtained identification information Item 8. The encryption unit device according to Item 7 . 計算機のCPUバスを介さずに入力されたデータを、記録媒体に記録する前に暗号化する暗号化ユニット装置であって、
予め定められた複数のマスター鍵を外部から秘匿した形で記憶するための記憶手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、暗号化対象となるデータの識別情報と該データの暗号化に用いるデータ暗号化鍵を生成しこれらを対応付けて記録する装置との間で、該データ暗号化鍵及び該識別情報を共有するための手段と、
暗号化対象となるデータを、前記計算機のCPUバスを介さずに入力するための手段と、
共有した前記データ暗号化鍵を用いて、入力した前記データ及び共有した前記識別情報をそれぞれ暗号化するための手段とを備え、
前記共有するための手段は、
前記計算機のCPUバスを介して、前記記録する装置から、前記いずれかのマスター鍵でそれぞれ復号された前記データ暗号化鍵及び前記識別情報並びに前記データ暗号化鍵自身で復号されたデータ暗号化鍵を入力し、
入力した前記いずれかのマスター鍵で復号されたデータ暗号化鍵を、前記記憶手段に記録されているいずれかのマスター鍵で暗号化して得られる第1の鍵候補と、入力した前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、該第1の鍵候補で暗号化して得られる第2の鍵候補とが一致するものを探し求め、該一致が得られたときの鍵候補を、求める べきデータ暗号化鍵し、
入力した前記いずれかのマスター鍵で復号された識別情報を、前記一致が得られたときに用いられたマスター鍵と同じマスター鍵で暗号化して、前記識別情報を求めることを特徴とする暗号化ユニット装置。
An encryption unit device that encrypts data input without going through the CPU bus of a computer before recording it on a recording medium,
Storage means for storing a plurality of predetermined master keys in a concealed form from the outside;
Generates identification information of data to be encrypted and a data encryption key used to encrypt the data by passing information for key sharing based on secret information via the CPU bus of the computer And means for sharing the data encryption key and the identification information with a device that records these in association with each other;
Means for inputting data to be encrypted without going through the CPU bus of the computer;
Means for encrypting each of the input data and the shared identification information using the shared data encryption key;
The means for sharing is:
The data encryption key and the identification information decrypted with any one of the master keys and the data encryption key decrypted with the data encryption key itself from the recording device via the CPU bus of the computer Enter
A first key candidate obtained by encrypting a data encryption key decrypted with any of the inputted master keys with any of the master keys recorded in the storage means, and the inputted data encryption The data encryption key decrypted with the key itself is searched for a match with the second key candidate obtained by encrypting with the first key candidate, and the key candidate when the match is obtained is obtained. Data encryption key
The input the identification information decoded by either the master key was, and encrypted with the same master key as the master key used when the match is obtained, the encryption characterized that you seek the identification information Unit equipment.
前記記録する装置は、与えられたデータ暗号化鍵で暗号化された識別情報をもとにして求めたデータ暗号化鍵を用いて与えられた暗号化されたデータを復号する復号化ユニット装置であることを特徴とする請求項9に記載の暗号化ユニット装置。The recording device is a decryption unit device that decrypts the encrypted data given using the data encryption key obtained based on the identification information encrypted with the given data encryption key. The encryption unit device according to claim 9, wherein the encryption unit device is provided. 計算機のCPUバスに接続された暗号化ユニット装置と復号化ユニット装置とを用いて、該計算機のCPUバスを介さずに外部から入力されたデータを記録媒体に記録する前に暗号化しおよび該復号化ユニット装置を用いて該記録媒体に記録された暗号化されたデータを復号する暗号処理システムであって、
前記復号化ユニット装置は、
予め定められた複数のマスター鍵の全部又は一部を外部から秘匿した形で記憶するための第1の記憶手段と、
暗号化対象となるデータの暗号化に用いるデータ暗号化鍵を生成するための手段と、
前記データの識別情報を生成するための手段と、
生成された前記データ暗号化鍵と前記識別情報とを対応付けて記録するための記録手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記暗号化ユニット装置との間で、前記データ暗号化鍵を共有するための手段とを備え、
前記暗号化ユニット装置は、
予め定められた複数のマスター鍵を外部から秘匿した形で記憶するための第2の記憶手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記データ暗号化鍵を共有するための手段と、
暗号化対象となるデータを、前記計算機のCPUバスを介さずに入力するための手段と、
共有した前記データ暗号化鍵を用いて、入力した前記データ暗号化するための手段とを備え、
前記復号化ユニット装置は、さらに、
前記記録媒体から読み出された識別情報及び該識別情報に対応するデータ暗号化鍵で暗号化されたデータを、前記計算機のCPUバスを介して入力するための手段と、
前記記録手段に識別情報と対応付けて記録されているデータ暗号化鍵のうちから、入力した前記識別情報に対応するデータ暗号化鍵を求めるための手段と、
求められた前記データ暗号化鍵を復号鍵として、入力した前記データ暗号化鍵で暗号化されたデータを復号するための手段とを備え、
前記復号化ユニット装置が備える前記共有するための手段は、
前記データ暗号化鍵を、前記第1の記憶手段に記憶されているいずれかのマスター鍵で復号するとともに、該データ暗号化鍵自身でデータ暗号化鍵を復号し、
前記いずれかのマスター鍵で復号されたデータ暗号化鍵及び前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、前記計算機のCPUバスを介して、前記暗号化ユニット装置へ出力するものであり、
前記暗号化ユニット装置が備える前記共有するための手段は、
前記計算機のCPUバスを介して、前記復号化ユニット装置から、前記いずれかのマスター鍵で復号されたデータ暗号化鍵及び前記データ暗号化鍵自身で復号されたデータ暗号化鍵を入力し、
入力した前記いずれかのマスター鍵で復号されたデータ暗号化鍵を、前記第2の記憶手 段に記録されているいずれかのマスター鍵で暗号化して得られる第1の鍵候補と、入力した前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、該第1の鍵候補で暗号化して得られる第2の鍵候補とが一致するものを探し求め、該一致が得られたときの鍵候補を、求めるべきデータ暗号化鍵とするものであることを特徴とする暗号処理システム。
Using a computer connected to the enciphering unit apparatus to the CPU bus of the decoding unit device, encrypted before recording the data inputted from the outside without passing through the CPU bus of the computer to record medium and said An encryption processing system for decrypting encrypted data recorded on the recording medium using a decryption unit device ,
The decoding unit device
First storage means for storing all or part of a plurality of predetermined master keys in a concealed form from the outside;
Means for generating a data encryption key used to encrypt data to be encrypted;
Means for generating identification information of the data;
And recording means for recording in association generated with the data encryption key and said identification information,
Via the CPU bus of said computer, by performing transfer of information for key agreement based on secret information, to and from the encryption unit apparatus, comprising: means order to share the data encryption key With
The encryption unit device is:
A second storage means for storing a plurality of predetermined master keys in a concealed form from the outside;
Via the CPU bus of said computer, by performing transfer of information for key agreement based on secret information, and means order to share the data encryption key,
Means for inputting data to be encrypted without going through the CPU bus of the computer;
Sharing the using the data encryption key, e Bei and means for encrypting the data input,
The decoding unit device further includes:
Means for inputting identification information read from the recording medium and data encrypted with a data encryption key corresponding to the identification information via the CPU bus of the computer;
Means for obtaining a data encryption key corresponding to the input identification information from among the data encryption keys recorded in association with the identification information in the recording means;
Means for decrypting data encrypted with the inputted data encryption key, using the obtained data encryption key as a decryption key,
The means for sharing provided in the decoding unit device comprises:
Decrypting the data encryption key with any master key stored in the first storage means, and decrypting the data encryption key with the data encryption key itself;
The data encryption key decrypted with one of the master keys and the data encryption key decrypted with the data encryption key itself are output to the encryption unit device via the CPU bus of the computer. Yes,
The means for sharing provided in the encryption unit device includes:
Via the CPU bus of the computer, a data encryption key decrypted with any one of the master keys and a data encryption key decrypted with the data encryption key itself are input from the decryption unit device,
An input above one of the master key decrypted data encryption key in the, a first key candidates obtained by encrypting either the master key recorded in the second storage hand stage, entered The data encryption key decrypted with the data encryption key itself is searched for a match with the second key candidate obtained by encrypting with the first key candidate, and the key when the match is obtained cryptographic processing system comprising a call in which candidates, the data encryption key to be obtained.
計算機のCPUバスに接続された暗号化ユニット装置と復号化ユニット装置とを用いて、該計算機のCPUバスを介さずに外部から入力されたデータを記録媒体に記録する前に暗号化しおよび該復号化ユニット装置を用いて該記録媒体に記録された暗号化されたデータを復号する暗号処理システムであって、
前記復号化ユニット装置は、
予め定められた複数のマスター鍵の全部又は一部を外部から秘匿した形で記憶するための第1の記憶手段と、
暗号化対象となるデータの暗号化に用いるデータ暗号化鍵を生成するための手段と、
前記データの識別情報を生成するための手段と、
生成された前記データ暗号化鍵と前記識別情報とを対応付けて記録するための記録手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記暗号化ユニット装置との間で、前記データ暗号化鍵及び前記識別情報を共有するための手段とを備え、
前記暗号化ユニット装置は、
予め定められた複数のマスター鍵を外部から秘匿した形で記憶するための第2の記憶手段と、
前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記復号化ユニット装置との間で、前記データ暗号化鍵及び前記識別情報を共有するための手段と、
暗号化対象となるデータを、前記計算機のCPUバスを介さずに入力するための手段と、
共有した前記データ暗号化鍵を用いて、入力した前記データ及び共有した前記識別情報をそれぞれ暗号化するための手段とを備え、
前記復号化ユニット装置は、さらに、
前記記録媒体から読み出されたデータ暗号化鍵で暗号化された識別情報及び前記データ暗号化鍵で暗号化されたデータを、前記計算機のCPUバスを介して入力するための手段と、
前記記録手段に識別情報と対応付けて記録されているデータ暗号化鍵のうちから、入力した前記データ暗号化鍵で暗号化された識別情報に対応するデータ暗号化鍵を求めるための手段と、
求められた前記データ暗号化鍵を復号鍵として、入力した前記データ暗号化鍵で暗号化されたデータを復号するための手段とを備え、
前記復号化ユニット装置が備える前記共有するための手段は、
前記データ暗号化鍵及び前記識別情報を、前記第1の記憶手段に記憶されているいずれかのマスター鍵でそれぞれ復号するとともに、該データ暗号化鍵自身でデータ暗号化鍵を復号し、
前記いずれかのマスター鍵でそれぞれ復号された前記データ暗号化鍵及び前記識別情報並びに前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、前記計算機のCPUバスを介して、前記暗号化ユニット装置へ出力するものであり、
前記暗号化ユニット装置が備える前記共有するための手段は、
前記計算機のCPUバスを介して、前記復号化ユニット装置から、前記いずれかのマスター鍵でそれぞれ復号された前記データ暗号化鍵及び前記識別情報並びに前記データ暗号化鍵自身で復号されたデータ暗号化鍵を入力し、
入力した前記いずれかのマスター鍵で復号されたデータ暗号化鍵を、前記第2の記憶手 段に記録されているいずれかのマスター鍵で暗号化して得られる第1の鍵候補と、入力した前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、該第1の鍵候補で暗号化して得られる第2の鍵候補とが一致するものを探し求め、該一致が得られたときの鍵候補を、求めるべきデータ暗号化鍵し、
入力した前記いずれかのマスター鍵で復号された識別情報を、前記一致が得られたときに用いられたマスター鍵と同じマスター鍵で暗号化して、前記識別情報を求めるものであることを特徴とする暗号処理システム。
Using a computer connected to the enciphering unit apparatus to the CPU bus of the decoding unit device, encrypted before recording the data inputted from the outside without passing through the CPU bus of the computer to record medium and said An encryption processing system for decrypting encrypted data recorded on the recording medium using a decryption unit device ,
The decoding unit device
First storage means for storing all or part of a plurality of predetermined master keys in a concealed form from the outside;
Means for generating a data encryption key used to encrypt data to be encrypted;
Means for generating identification information of the data;
And recording means for recording in association generated with the data encryption key and said identification information,
Via the CPU bus of said computer, by performing transfer of information for key agreement based on secret information, to and from the encryption unit device, that share the data encryption key and said identification information and a means for,
The encryption unit device is:
A second storage means for storing a plurality of predetermined master keys in a concealed form from the outside;
Via the CPU bus of said computer, by performing transfer of information for key agreement based on secret information, between said decoding unit device, that share the data encryption key and said identification information Means for
Means for inputting data to be encrypted without going through the CPU bus of the computer;
Using the data encryption key shared, Bei example and means for encrypting entered the data and share the said identification information, respectively,
The decoding unit device further includes:
Means for inputting identification information encrypted with the data encryption key read from the recording medium and data encrypted with the data encryption key via the CPU bus of the computer;
From among the data encryption key is recorded in association with the identification information in the recording means, means for determining a data encryption key corresponding to the encryption identification information in the data encryption key entered ,
Means for decrypting data encrypted with the inputted data encryption key, using the obtained data encryption key as a decryption key,
The means for sharing provided in the decoding unit device comprises:
The data encryption key and the identification information are each decrypted with one of the master keys stored in the first storage means, and the data encryption key is decrypted with the data encryption key itself,
The data encryption key and the identification information respectively decrypted with any one of the master keys and the data encryption key decrypted with the data encryption key itself are sent to the encryption unit via the CPU bus of the computer. Output to the device,
The means for sharing provided in the encryption unit device includes:
The data encryption key and the identification information respectively decrypted with any one of the master keys and the data encryption decrypted with the data encryption key itself from the decryption unit device via the CPU bus of the computer Enter the key,
An input above one of the master key decrypted data encryption key in the, a first key candidates obtained by encrypting either the master key recorded in the second storage hand stage, entered The data encryption key decrypted with the data encryption key itself is searched for a match with the second key candidate obtained by encrypting with the first key candidate, and the key when the match is obtained Candidate data encryption key to be sought,
The input the identification information decoded by either the master key was, and encrypted with the same master key as the master key used when the match is obtained, and wherein a call and requests the identification information Cryptographic processing system.
前記復号化ユニット装置が備える前記データ暗号化鍵を求めるための手段は、前記記録手段に記録されている識別情報とデータ暗号化鍵の組のうちから、前記記録媒体から読み出されたデータ暗号化鍵で暗号化された識別情報を前記記録手段に記録されているデータ暗号化鍵で復号して得られる識別情報と、該データ暗号化鍵に対応付けて前記記録手段に記録されている識別情報とが等しくなる組を探すことにより、前記データ暗号化鍵を求めるものであることを特徴とする請求項12に記載の暗号処理システム。The means for obtaining the data encryption key provided in the decryption unit device is a data encryption read from the recording medium from a set of identification information and data encryption key recorded in the recording means. The identification information obtained by decrypting the identification information encrypted with the encryption key with the data encryption key recorded in the recording means, and the identification recorded in the recording means in association with the data encryption key 13. The cryptographic processing system according to claim 12, wherein the data encryption key is obtained by searching for a set having equal information. 計算機のCPUバスに接続された、予め定められた複数のマスター鍵の全部又は一部を外部から秘匿した形で記憶するための第1の記憶手段を備えた復号化ユニット装置と、予め定められた複数のマスター鍵を外部から秘匿した形で記憶するための第2の記憶手段を備えた暗号化ユニット装置とを用いて、該計算機のCPUバスを介さずに外部から入力されたデータを記録媒体に記録する前に暗号化する暗号化方法であって、
前記復号化ユニット装置において、暗号化対象となるデータの暗号化に用いるデータ暗号化鍵を生成するステップと、
前記復号化ユニット装置において、前記データの識別情報を生成するステップと、
前記復号化ユニット装置において、生成された前記データ暗号化鍵と前記識別情報とを対応付けて記録手段に記録するステップと、
前記復号化ユニット装置前記暗号化ユニット装置との間で、前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記データ暗号化鍵を共有する共有ステップと、
前記暗号化ユニット装置において、暗号化対象となるデータを、前記計算機のCPUバスを介さずに入力するステップと、
前記暗号化ユニット装置において、共有した前記データ暗号化鍵を用いて、入力した前記データ暗号化するステップとを有し、
前記共有ステップでは、
前記復号化ユニット装置において、前記データ暗号化鍵を、前記第1の記憶手段に記憶されているいずれかのマスター鍵で復号するとともに、該データ暗号化鍵自身でデータ暗号化鍵を復号し、
前記復号化ユニット装置において、前記いずれかのマスター鍵で復号されたデータ暗号化鍵及び前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、前記計算機のCPUバスを介して、前記暗号化ユニット装置へ出力し、
前記暗号化ユニット装置において、前記計算機のCPUバスを介して、前記復号化ユニット装置から、前記いずれかのマスター鍵で復号されたデータ暗号化鍵及び前記データ暗号化鍵自身で復号されたデータ暗号化鍵を入力し、
前記暗号化ユニット装置において、入力した前記いずれかのマスター鍵で復号されたデータ暗号化鍵を、前記第2の記憶手段に記録されているいずれかのマスター鍵で暗号化して得られる第1の鍵候補と、入力した前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、該第1の鍵候補で暗号化して得られる第2の鍵候補とが一致するものを探し求め、該一致が得られたときの鍵候補を、求めるべきデータ暗号化鍵とすることを特徴とする暗号化方法。
A decryption unit device provided with a first storage means connected to the CPU bus of the computer for storing all or part of a plurality of predetermined master keys in a concealed form from the outside; was by using a plurality of master key encryption unit apparatus provided with a second storage means for storing in a form that is concealed from the outside, the serial data input from the outside without using the CPU bus of the computer An encryption method for encrypting before recording on a recording medium,
Generating a data encryption key used for encrypting data to be encrypted in the decryption unit device ;
Generating identification information of the data in the decoding unit device ;
In the decoding unit device, and recording in the recording means in association with the generated said data encryption key and said identification information,
The data encryption key is shared by exchanging information for key sharing based on secret information between the decryption unit device and the encryption unit device via the CPU bus of the computer. Sharing steps to
In the encryption unit apparatus, inputting data to be encrypted without going through the CPU bus of the computer;
In the encrypted unit device, using the data encryption key shared, and a step of encrypting the data input,
In the sharing step,
In the decryption unit device, the data encryption key is decrypted with any master key stored in the first storage means, and the data encryption key itself is decrypted with the data encryption key,
In the decryption unit device, the data encryption key decrypted with one of the master keys and the data encryption key decrypted with the data encryption key itself are encrypted via the CPU bus of the computer. Output to the unit device,
In the encryption unit device, the data encryption key decrypted with one of the master keys and the data encryption key decrypted with the data encryption key itself from the decryption unit device via the CPU bus of the computer Enter the activation key,
In the encryption unit device, a first data key obtained by encrypting a data encryption key decrypted with any one of the inputted master keys with any master key recorded in the second storage means A search is made for a match between the key candidate and the second key candidate obtained by encrypting the data encryption key decrypted with the input data encryption key itself with the first key candidate. An encryption method, wherein a key candidate when obtained is used as a data encryption key to be obtained.
計算機のCPUバスに接続された、予め定められた複数のマスター鍵の全部又は一部を 外部から秘匿した形で記憶するための第1の記憶手段を備えた復号化ユニット装置と、予め定められた複数のマスター鍵を外部から秘匿した形で記憶するための第2の記憶手段を備えた暗号化ユニット装置とを用いて、該計算機のCPUバスを介さずに外部から入力されたデータを記録媒体に記録する前に暗号化する暗号化方法であって、
前記復号化ユニット装置において、暗号化対象となるデータの暗号化に用いるデータ暗号化鍵を生成するステップと、
前記復号化ユニット装置において、前記データの識別情報を生成するステップと、
前記復号化ユニット装置において、生成された前記データ暗号化鍵と前記識別情報とを対応付けて記録手段に記録するステップと、
前記復号化ユニット装置前記暗号化ユニット装置との間で、前記計算機のCPUバスを介して、秘密の情報に基づく鍵共有のための情報の受け渡しを行うことによって、前記データ暗号化鍵及び前記識別情報を共有する共有ステップと、
前記暗号化ユニット装置において、暗号化対象となるデータを、前記計算機のCPUバスを介さずに入力するステップと、
前記暗号化ユニット装置において、共有した前記データ暗号化鍵を用いて、入力した前記データ及び共有した前記識別情報をそれぞれ暗号化するステップとを有し、
前記共有ステップでは、
前記復号化ユニット装置において、前記データ暗号化鍵及び前記識別情報を、前記第1の記憶手段に記憶されているいずれかのマスター鍵でそれぞれ復号するとともに、該データ暗号化鍵自身でデータ暗号化鍵を復号し、
前記復号化ユニット装置において、前記いずれかのマスター鍵でそれぞれ復号された前記データ暗号化鍵及び前記識別情報並びに前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、前記計算機のCPUバスを介して、前記暗号化ユニット装置へ出力し、
前記暗号化ユニット装置において、前記計算機のCPUバスを介して、前記復号化ユニット装置から、前記いずれかのマスター鍵でそれぞれ復号された前記データ暗号化鍵及び前記識別情報並びに前記データ暗号化鍵自身で復号されたデータ暗号化鍵を入力し、
前記暗号化ユニット装置において、入力した前記いずれかのマスター鍵で復号されたデータ暗号化鍵を、前記第2の記憶手段に記録されているいずれかのマスター鍵で暗号化して得られる第1の鍵候補と、入力した前記データ暗号化鍵自身で復号されたデータ暗号化鍵を、該第1の鍵候補で暗号化して得られる第2の鍵候補とが一致するものを探し求め、該一致が得られたときの鍵候補を、求めるべきデータ暗号化鍵し、
前記暗号化ユニット装置において、入力した前記いずれかのマスター鍵で復号された識別情報を、前記一致が得られたときに用いられたマスター鍵と同じマスター鍵で暗号化して、前記識別情報を求めることを特徴とする暗号化方法。
A decryption unit device provided with a first storage means connected to the CPU bus of the computer for storing all or part of a plurality of predetermined master keys in a concealed form from the outside; was by using a plurality of master key encryption unit apparatus provided with a second storage means for storing in a form that is concealed from the outside, the serial data input from the outside without using the CPU bus of the computer An encryption method for encrypting before recording on a recording medium,
Generating a data encryption key used for encrypting data to be encrypted in the decryption unit device ;
Generating identification information of the data in the decoding unit device ;
In the decoding unit device, and recording in the recording means in association with the generated said data encryption key and said identification information,
By passing information for key sharing based on secret information between the decryption unit device and the encryption unit device via the CPU bus of the computer, the data encryption key and the data A sharing step for sharing identification information;
In the encryption unit apparatus, inputting data to be encrypted without going through the CPU bus of the computer;
Encrypting the input data and the shared identification information using the shared data encryption key in the encryption unit device ,
In the sharing step,
In the decryption unit device, the data encryption key and the identification information are each decrypted with any one of the master keys stored in the first storage means, and the data encryption key itself encrypts the data. Decrypt the key,
In the decryption unit device, the data encryption key and the identification information decrypted with each of the master keys, and the data encryption key decrypted with the data encryption key itself are sent to the CPU bus of the computer. Through the encryption unit device,
In the encryption unit device, the data encryption key, the identification information, and the data encryption key itself decrypted by the master key from the decryption unit device via the CPU bus of the computer, respectively. Enter the data encryption key decrypted with
In the encryption unit device, a first data key obtained by encrypting a data encryption key decrypted with any one of the inputted master keys with any master key recorded in the second storage means The key candidate and the data encryption key decrypted with the input data encryption key itself are searched for a match with the second key candidate obtained by encrypting with the first key candidate. The key candidate when obtained is the data encryption key to be obtained,
In the encryption unit device, the identification information decrypted with one of the inputted master keys is encrypted with the same master key as the master key used when the match is obtained, and the identification information is obtained. An encryption method characterized by the above.
JP10205597A 1997-04-18 1997-04-18 Unit device, decryption unit device, encryption unit device, encryption processing system, and encryption method Expired - Fee Related JP3625354B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10205597A JP3625354B2 (en) 1997-04-18 1997-04-18 Unit device, decryption unit device, encryption unit device, encryption processing system, and encryption method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10205597A JP3625354B2 (en) 1997-04-18 1997-04-18 Unit device, decryption unit device, encryption unit device, encryption processing system, and encryption method

Publications (2)

Publication Number Publication Date
JPH10293724A JPH10293724A (en) 1998-11-04
JP3625354B2 true JP3625354B2 (en) 2005-03-02

Family

ID=14317095

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10205597A Expired - Fee Related JP3625354B2 (en) 1997-04-18 1997-04-18 Unit device, decryption unit device, encryption unit device, encryption processing system, and encryption method

Country Status (1)

Country Link
JP (1) JP3625354B2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1233569B1 (en) 1999-11-17 2009-01-07 Fujitsu Limited Data distribution system and record medium used in the same
WO2001048755A1 (en) 1999-12-28 2001-07-05 Matsushita Electric Industrial Co., Ltd. Recording apparatus, reproducing apparatus, data processing apparatus, recording/reproducing apparatus, and data transmitting apparatus
KR100571617B1 (en) * 2000-06-29 2006-04-17 마쯔시다덴기산교 가부시키가이샤 Copyright protection and how
JP4112188B2 (en) 2001-03-09 2008-07-02 シャープ株式会社 Data storage device
DE60202568T8 (en) 2001-08-08 2005-10-20 Matsushita Electric Industrial Co., Ltd., Kadoma Copyright protection system, recording device, and playback device
JP2008016095A (en) * 2006-07-04 2008-01-24 Sharp Corp Communication system, decoding / reproducing apparatus, recording apparatus, communication program, and recording medium
JP4764808B2 (en) 2006-12-07 2011-09-07 キヤノン株式会社 Image file management apparatus and image file management method
JP5646382B2 (en) * 2011-03-28 2014-12-24 Kddi株式会社 Content editing apparatus, content editing method, and content editing program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3073590B2 (en) * 1992-03-16 2000-08-07 富士通株式会社 Electronic data protection system, licensor's device and user's device
JPH06187510A (en) * 1992-12-18 1994-07-08 Omron Corp Information recording and reproducing system
JP2600643B2 (en) * 1994-07-28 1997-04-16 日本電気株式会社 File encryption device
JPH0934841A (en) * 1995-07-21 1997-02-07 Fujitsu Ltd Online media decryption system and method

Also Published As

Publication number Publication date
JPH10293724A (en) 1998-11-04

Similar Documents

Publication Publication Date Title
TW514844B (en) Data processing system, storage device, data processing method and program providing media
US6950941B1 (en) Copy protection system for portable storage media
KR100495189B1 (en) Data transmission devices and methods, encryption devices and methods, data reception devices and methods, data decoding devices and methods, and recording media for program recording
EP1061515B1 (en) Memory card, memory card utilizing device, and corresponding method and program for converting management information which contains restrictive information using a different key in each management information send and receive session
WO2001054099A1 (en) Data authentication system
KR20030027066A (en) Device arranged for exchanging data, and method of authenticating
EP1975841A2 (en) Method and system for mutual authentication between mobile and host devices
JP2006504176A (en) Method and apparatus for permitting content operation
WO2007129434A1 (en) Method and device of content management
KR20010109323A (en) Data recording/reproducing device and saved data processing method, and program providing medium
JP2002244927A (en) Data distribution system
JP2007124717A (en) Digital content unauthorized copy prevention system
JP2001203686A (en) Data processing apparatus, data processing method, data verification value providing method, and program providing medium
JP3625354B2 (en) Unit device, decryption unit device, encryption unit device, encryption processing system, and encryption method
JP3625356B2 (en) External storage device, encryption unit device, decryption unit device, encryption system, decryption system, encryption method, and decryption method
US7620820B2 (en) Content data processing method, recording device, and reproduction device
JP2001209305A (en) Data processing system, recording device, data processing method, and program providing medium
JP3625355B2 (en) External storage device, encryption unit device, decryption unit device, encryption system, decryption system, encryption method, and decryption method
JP2003195758A (en) Data processor, interface board and data concealing method
JP2001211162A (en) Data processing system, recording device, data processing method, and program providing medium
JP5296195B2 (en) Content data reproduction system and recording apparatus
JP3625353B2 (en) External storage device, encryption unit device, decryption unit device, encryption system, decryption system, encryption method, and decryption method
JP2001209310A (en) Data processing device, data processing method, content data generation method, and program providing medium
JP2001209309A (en) Data processing device, content data generation method, data processing method, and program providing medium
JP2001209580A (en) Data storage element manufacturing method, data storage element, and data processing device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040708

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041007

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: 20041124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041129

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071210

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081210

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091210

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091210

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101210

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees