JP2007013506A - 暗号化処理装置、暗号化方法、復号化処理装置、復号化方法、及びデータ構造 - Google Patents

暗号化処理装置、暗号化方法、復号化処理装置、復号化方法、及びデータ構造 Download PDF

Info

Publication number
JP2007013506A
JP2007013506A JP2005190803A JP2005190803A JP2007013506A JP 2007013506 A JP2007013506 A JP 2007013506A JP 2005190803 A JP2005190803 A JP 2005190803A JP 2005190803 A JP2005190803 A JP 2005190803A JP 2007013506 A JP2007013506 A JP 2007013506A
Authority
JP
Japan
Prior art keywords
data
encryption
condition data
encrypted
condition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005190803A
Other languages
English (en)
Inventor
Takatoshi Nakamura
貴利 中村
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.)
N Crypt Inc
Original Assignee
N Crypt Inc
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 N Crypt Inc filed Critical N Crypt Inc
Priority to JP2005190803A priority Critical patent/JP2007013506A/ja
Priority to AU2006263057A priority patent/AU2006263057A1/en
Priority to CNA2006800209398A priority patent/CN101194458A/zh
Priority to PCT/JP2006/313186 priority patent/WO2007001075A1/ja
Priority to EP06767764A priority patent/EP1898550A1/en
Priority to RU2007148046/09A priority patent/RU2007148046A/ru
Priority to MX2007014283A priority patent/MX2007014283A/es
Priority to CA002606122A priority patent/CA2606122A1/en
Priority to US11/915,099 priority patent/US20090154693A1/en
Priority to KR1020087002233A priority patent/KR20080022223A/ko
Priority to TW095123530A priority patent/TW200709634A/zh
Publication of JP2007013506A publication Critical patent/JP2007013506A/ja
Priority to IL187662A priority patent/IL187662A0/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/10Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols with particular housing, physical features or manual controls
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00507Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein consecutive physical data units of the record carrier are encrypted with separate encryption keys, e.g. the key changes on a cluster or sector basis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise

Abstract

【課題】 復号化の条件を多様に設定して暗号化を行えるようにする。
【解決手段】 処理対象データを暗号化して得られる暗号化データは、ヘッダデータ501、基本条件データ502、暗号化条件データ503、暗号化切断データ504を有する。基本条件データ502は、暗号化条件データ503の復号化を許容又は禁止するための条件についてのデータを含んでいる。復号化処理装置では、基本条件データ502で復号化が認められた暗号化条件データのみが復号化されて条件データとされる。条件データは、暗号化切断データの復号化を許容又は禁止するための条件についてのデータを含んでいる。復号化処理装置では、条件データ503で復号化が認められた暗号化切断データ504のみが復号化される。
【選択図】 図4

Description

本発明は、平文である処理対象データを暗号化し暗号化データとする暗号化技術、及び暗号化データを復号化する復号化技術に関する。
情報に関するセキュリティの重要性が益々高まる現在、正当と認められない第三者にその内容を知られるのが好ましくないデータ(この明細書では、これを「処理対象データ」と呼ぶ。)を暗号化して暗号化データにする暗号化技術についての様々な研究がなされている。
ところで、暗号化データは、復号化処理装置を兼ねるその暗号化データの暗号化を行った暗号化処理装置で復号化される場合もあるが、第三者に引渡されることが多い。その第三者は、所定の鍵とアルゴリズムを用いて受取った暗号化データを復号化して元の処理対象データに戻し、その処理対象データを適宜利用する。
ところで、例えば、同一の暗号化データを複数人に渡す場合に、その複数人のそれぞれに暗号化データの異なる部分の復号化を許容できれば便利である。
また、ある暗号化データの復号化を、特定の条件下、例えば期間限定で認められれば便利である。例えば、近年の個人情報保護の高まりを鑑みれば、暗号化された暗号化データだからといって、いつまでも復号化可能な状態でどこかに存在しつづけるというのは、あまり好ましいことではない。また、上述の如き期間限定での暗号化データの復号化を許容する場合、期間を複数に分け、この期間であれば暗号化データのこの部分の復号化を許容する、また、他の期間であれば暗号化データの他の部分の復号化を許容するといったきめ細かな制限をかけられれば、非常に便利である。
しかしながら、このようなことを可能とする、復号化の条件を多様に設定する暗号化技術は存在しない。
本発明は、処理対象データの暗号化によって生成された暗号化データの復号化の条件を多様に設定することのできる暗号化技術、その暗号化技術により暗号化された暗号化データのデータ構造、及びその暗号化データの復号化技術を提供することをその課題とする。
かかる課題を解決するため、本願発明者は、以下に説明する発明を提案する。
本願発明は、平文である処理対象データを所定のビット数毎に切断して複数の平文切断データにする切断手段と、複数の前記平文切断データを、所定の鍵、及び所定のアルゴリズムによって暗号化して複数の暗号化切断データとする暗号化手段と、前記暗号化切断データのそれぞれの復号化を許容する場合の条件と、前記暗号化切断データのそれぞれの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む条件データを生成する条件データ生成手段と、前記条件データを所定の鍵、及び所定のアルゴリズムによって暗号化して暗号化条件データとする条件データ暗号化手段と、前記暗号化条件データの復号化を許容する場合の条件と、前記暗号化条件データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む基本条件データを生成する基本条件データ生成手段と、複数の前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを一まとめにして、所定の復号化処理装置で復号化されることが予定された一連の暗号化データとする接続手段と、を備えている暗号化処理装置である。
そして、前記接続手段は、前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを、前記暗号化条件データが、その暗号化条件データの元になった条件データに含まれた条件によりその復号化が許容又は禁止される暗号化切断データよりも前方に位置するようにしながら、且つ前記基本条件データが前記暗号化条件データよりも前方に位置するようにしながら一まとめにして一連の暗号化データとするようになっている。
この暗号化処理装置は、処理対象データを切断して生成した複数の平文切断データのそれぞれを暗号化することにより複数の暗号化切断データを生成し、それを一まとめにして暗号化データとするという、一般的な暗号化処理装置をその基本としている。そして、この暗号化処理装置は、暗号化切断データのそれぞれの復号化を許容する場合の条件と、暗号化切断データのそれぞれの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む条件データを生成する条件データ生成手段を備えており、その条件データをも暗号化して暗号化条件データとし、それを暗号化データの一部に加えるものとしている。したがって、この暗号化処理装置で生成された暗号化データは、上述の条件データにより、暗号化データの少なくとも一部(少なくとも複数の暗号化切断データのうちの一部)を他の部分とは異なる条件で復号化できるな条件設定を行えるようになる。これにより、この暗号化処理装置は、処理対象データの暗号化によって生成された暗号化データの復号化の条件を多様に設定することのできるものとなる。
なお、上述したように、この暗号化処理装置は、条件データも暗号化して暗号化条件データとすることとしている。したがって、どのような条件で暗号化切断データのそれぞれを復号化できるのかということは、予定された者以外は知ることができない。したがって、この暗号化処理装置によって作られた暗号化データは、安全性が高い。
この暗号化処理装置は、暗号化条件データの復号化を許容する場合の条件と、暗号化条件データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む基本条件データを生成する基本条件データ生成手段を備えており、基本条件データ生成手段が生成した基本条件データを暗号化データに含めることとしている。暗号化データの復号化を行う者は、この基本条件データにより、上述の暗号化条件データの復号化が行えることになる。
なお、この暗号化処理装置は、前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを、前記暗号化条件データが、その暗号化条件データの元になった条件データに含まれた条件によりその復号化が許容又は禁止される暗号化切断データよりも前方に位置するようにしながら、且つ前記基本条件データが前記暗号化条件データよりも前方に位置するようにしながら一まとめにして一連の暗号化データとするようになっている。暗号化条件データが、その暗号化条件データの元になった条件データに含まれた条件によりその復号化が許容又は禁止される暗号化切断データよりも前方に位置するようにするのは、復号化処理装置で暗号化データが復号化される際に、暗号化データは先頭から読込まれるのであるが、暗号化データを復号化するには条件データが必要となるので、その条件データを生成するための暗号化条件データを先に読込む必要があるからである。基本条件データが暗号化条件データよりも前方に位置するようにするのも同様の理由からである。
この暗号化処理装置が有する作用効果と同様の作用効果を、例えば以下の方法によっても得ることができる。
暗号化処理装置にて実行される方法であって、当該暗号化処理装置が、平文である処理対象データを所定のビット数毎に切断して複数の平文切断データにする過程、複数の前記平文切断データを、所定の鍵、及び所定のアルゴリズムによって暗号化して複数の暗号化切断データとする過程、前記暗号化切断データのそれぞれの復号化を許容する場合の条件と、前記暗号化切断データのそれぞれの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む条件データを生成する過程、前記条件データを所定の鍵、及び所定のアルゴリズムによって暗号化して暗号化条件データとする過程、前記暗号化条件データの復号化を許容する場合の条件と、前記暗号化条件データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む基本条件データを生成する過程、複数の前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを一まとめにして、所定の復号化処理装置で復号化されることが予定された一連の暗号化データとする過程、を実行し、前記暗号化処理装置は、複数の前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを一まとめにして、所定の復号化処理装置で復号化されることが予定された一連の暗号化データとする過程では、前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを、前記暗号化条件データが、その暗号化条件データの元になった条件データに含まれた条件によりその復号化が許容又は禁止される暗号化切断データよりも前方に位置するようにしながら、且つ前記基本条件データが前記暗号化条件データよりも前方に位置するようにしながら一まとめにして一連の暗号化データとする、暗号化方法である。
前記条件データ生成手段は、条件データを一つだけ生成してもよいし、複数生成してもよい。前者の場合、暗号化条件データは一つとなり、後者の場合、暗号化条件データは複数となる。
前記条件データ生成手段は、例えば、以下の(1)〜(3)の条件を充足するようにして前記条件データを複数生成するようになっていてもよい。
(1)複数の前記条件データのそれぞれは、前記暗号化切断データのうちの少なくとも一つと対応付けられているとともに、その対応付けられた前記暗号化切断データの復号化を許容する場合の条件と、その対応付けられた前記暗号化切断データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む、
(2)複数の前記条件データは、前記暗号化切断データのすべてが複数の前記条件データのいずれかと対応付けられるようにされる、
(3)一つの前記暗号化切断データに複数の前記条件データが対応付けられることはない。
この場合、基本条件データ生成手段は、複数の前記暗号化条件データのうちのどれの復号化を許容するのかという条件と、複数の前記暗号化条件データのうちのどれの復号化を禁止するのかという条件の少なくとも一方についてのデータを含む基本条件データを生成するようになっている。
このようにすることで、暗号化切断データのどれの復号化を許容するのかということの前提となる条件データの元となる暗号化条件データの復号化についての設定をきめ細かく行えるようになる。
この場合、各暗号化条件データは、各暗号化条件データの元となった条件データと対応付けられた平文切断データを暗号化して作られた暗号化切断データよりも前方に位置するようにされる。なお、暗号化条件データは、場合によっては、暗号化切断データよりも後方に位置する場合がある。
上述したように、条件データ生成手段は、前記条件データを複数生成するようになっている場合がある。この場合、前記条件データ生成手段は、前記条件データの少なくとも一つに、他の条件データを暗号化して生成された暗号化条件データの復号化を許容する場合の条件についてのデータを含めるようになっていてもよい。
条件データ生成手段がこのような条件データを生成する場合、ある暗号化条件データを復号化することによって生成された条件データは、次の暗号化条件データ(次の暗号化条件データは、一つとは限らない。)を復号化するための前提条件となりうる。
つまり、ある暗号化条件データを復号化することにより得られた条件データから、次の暗号化条件データの復号化を許容する場合の条件についてのデータを取り出せたとしても、次の暗号化条件データの復号化を許容する場合の条件が充足されない場合には、次の暗号化条件データの復号化を行うことができない。また、ある暗号化条件データを復号化する際に、その一つ手前で復号化されるべきであった暗号化条件データが復号化されていない場合にはその暗号化条件データの復号化はなされることがない。
前記条件データ生成手段は、前記条件データを複数生成するようになっているとともに、複数の前記条件データのうちの少なくとも幾つかを、それら幾つかの条件データを暗号化して生成された暗号化条件データの復号化が所定の順番で行われるように関連付けられており、且つそれら幾つかの条件データには、その条件データを暗号化して生成された暗号化条件データの次に復号化される暗号化条件データを復号化するための条件についてのデータが含まれるようにして生成するようになっていても構わない。
この場合、ある暗号化条件データを復号化することによって生成された条件データは、次の暗号化条件データ(次の暗号化条件データは、一つである。)を復号化するための前提条件となりうる。この場合、次に復号化される暗号化条件データを復号化するための条件が充足される限り、暗号化条件データは、所定の順番で、芋づる式に次々と復号化されることとなる。
前記基本条件データ生成手段は、前記幾つかの条件データのうち、それらを暗号化して生成された暗号化条件データのうち最初に復号化されるものの復号化を許容する場合の条件を含んでいてもよい。このようにすれば、復号化が所定の順番で行われるように関連付けられた一連の暗号化条件データの最初のものから順に、復号化を行えるようになる。
前記条件データにより特定される暗号化切断データの復号化を許容又は禁止するための条件は、上述のようなものであれば特にその制限はない。前記条件データは、例えば、以下の(4)〜(7)の少なくとも一つについてのデータを含んでいる。
(4)前記暗号化切断データのうちの少なくとも一つについての復号化を行うことが許容又は禁止された復号化処理装置を特定するための情報、
(5)前記暗号化切断データの少なくとも一つについての復号化を行うことが許容又は禁止されたユーザを特定するための情報、
(6)前記暗号化切断データの少なくとも一つについての復号化が許容される期間に関する情報と、前記暗号化切断データの少なくとも一つについての復号化が禁止される期間に関する情報の少なくとも一方、
(7)複数の前記暗号化切断データのうちのどれの復号化を許容するかという情報、又は複数の前記暗号化切断データのうちのどれの復号化を禁止するかという情報。
暗号化処理装置は、前記暗号化手段が前記平文切断データを暗号化する際に用いられる鍵である複数の暗号化用鍵が保持された暗号化用鍵保持手段を備えていてもよい。
そして、前記暗号化手段は、前記暗号化用鍵保持手段に保持された複数の暗号化用鍵のうちの少なくとも2つを用いて複数の前記平文切断データを、そのうちの少なくとも1つが他の前記平文切断データとは異なる暗号化用鍵で暗号化されるようにして暗号化切断データとするようになっており、且つ、前記条件データ生成手段は、前記暗号化切断データのそれぞれが、前記暗号化用鍵保持手段に保持されている暗号化用鍵のうちのどれを用いて暗号化切断データとされたかということについてのデータを含む条件データを生成するようになっていてもよい。
この暗号化処理装置は、複数の暗号化用鍵を用いて平文切断データを暗号化切断データにするとともに、その暗号化切断データを暗号化するための暗号化用鍵を特定するためのデータを条件データに含めることで、暗号化データを復号化する者がその復号化を行えるようにしている。なお、この暗号化処理装置で作られた暗号化データを復号化する復号化処理装置は、この暗号化処理装置が備えるのと同様の鍵保持手段を備えていることが必要となる。
この暗号化処理装置は、複数の暗号化用鍵を用いて平文切断データの暗号化を行うことで暗号化データの安全性を高くできる。
上述の発明では、複数の暗号化用鍵を鍵保持手段によって予め保持しておくことで、平文切断データの暗号化にあたり複数の鍵を用いることができるようにしている。
これに対して、複数の暗号化用鍵を順次生成することで、平文切断データの暗号化にあたり複数の鍵を用いることができるようにすることも可能である。
そのような暗号化処理装置は、例えば、前記暗号化手段が前記平文切断データを暗号化する際に用いられる鍵である暗号化用鍵を所定のタイミングで生成する暗号化用鍵生成手段を備えている。そして、前記暗号化手段は、前記暗号化用鍵生成手段により生成された複数の暗号化用鍵を用いて複数の前記平文切断データを、そのうちの少なくとも1つが他の前記平文切断データとは異なる暗号化用鍵で暗号化されるようにして暗号化切断データとするようになっており、且つ、前記条件データ生成手段は、前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータを含む条件データを生成するようになっている。
このような暗号化処理装置は、平文切断データを暗号化するために用いる暗号化用鍵を保持しておらず、その代わりにそれを連続的に発生させるようになっているので、暗号化用鍵を盗まれることがない。したがって、このような暗号化処理装置で暗号化された暗号化データは、その安全性が高い。
前記暗号化用鍵生成手段は、前記暗号化用鍵を、初期状態から順次前記暗号化用鍵を生成した場合に、同じ順番で生成された暗号化用鍵が常に同じものとなるようにして生成するようになっていてもよい。この場合、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成された順番を示すものとすることができる。暗号化用鍵生成手段が生成する鍵が、同じ順番で生成されたものが常に同じものとなるようになっているのであれば、その暗号化用鍵を特定するためのデータは、暗号化用鍵が生成された順番を示すものとするのが簡単である。
なお、この暗号化処理装置で作られた暗号化データを復号化する復号化処理装置は、この暗号化処理装置が備えるのと同様の鍵生成手段を備えていることが必要となる。
前記暗号化用鍵生成手段を備える暗号化処理装置は、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用鍵用解生成手段を備えていてもよい。この場合、前記暗号化用鍵生成手段は、前記暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記暗号化用鍵を生成する。また、この場合、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成されたときに用いられた解を示すものとすることができる。
この暗号化処理装置における暗号化用鍵生成手段は、順次生成される擬似乱数である解に基づいて暗号化用鍵を生成する。したがって、この暗号化処理装置によって生成された暗号化データを復号化する復号化処理装置は、その解を特定するためのデータが条件データに含まれていれば、その解に基づいて暗号化用鍵を生成し、また、その暗号化用鍵によって暗号化切断データを復号化することが可能である。
上述したように、前記暗号化用鍵生成手段を備える暗号化処理装置は、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用鍵用解生成手段を備えている場合がある。
この場合、前記暗号化用鍵生成手段は、前記暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記暗号化用鍵を生成するものとされており、且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成されたときに用いられた解の生成された順番を示すものとすることができる。
この暗号化処理装置における暗号化用鍵生成手段は、順次生成される擬似乱数である解に基づいて暗号化用鍵を生成するが、その解は、同じ順番で生成させられた解が常に同じものとなるようになっている。したがって、この暗号化処理装置によって生成された暗号化データを復号化する復号化処理装置は、その解の生成された順番がわかればその解を特定でき、またその解が特定されればそれに基づいて暗号化用鍵を生成し、また、その暗号化用鍵によって暗号化切断データを復号化することが可能である。
ただし、以上2つの暗号化処理装置で作られた暗号化データを復号化する復号化処理装置は、この暗号化処理装置が備えるのと同様の鍵生成手段と暗号化用鍵用解生成手段を備えていることが必要となる。
上述したように、前記条件データ生成手段は、前記条件データを複数生成するようになっている場合がある。
この場合、暗号化処理装置は、前記条件データ暗号化手段が前記条件データを暗号化する際に用いられる鍵である複数の条件データ暗号化用鍵が保持された条件データ暗号化用鍵保持手段を備えていてもよい。
そして、前記条件データ暗号化手段は、前記条件データ暗号化用鍵保持手段に保持された複数の条件データ暗号化用鍵のうちの少なくとも2つを用いて複数の前記条件データを、そのうちの少なくとも1つが他の条件データとは異なる条件データ暗号化用鍵で暗号化されるようにして暗号化条件データとするようになっており、且つ、前記基本条件データ生成手段は、前記暗号化条件データのそれぞれが、前記条件データ鍵保持手段に保持されている条件データ暗号化用鍵のうちのどれを用いて暗号化条件データとされたかということについてのデータを含む基本条件データを生成するようになっていてもよい。
この暗号化処理装置は、複数の暗号化用鍵を予め準備しておくことで、平文切断データの暗号化にあたり複数の鍵を用いることができるようにした上述の場合と同様に、複数の条件データ暗号化用鍵を予め準備しておくことで、条件データの暗号化にあたり複数の鍵を用いることができるようにしたものである。
なお、この暗号化処理装置で作られた暗号化データを復号化する復号化処理装置は、この暗号化処理装置が備えるのと同様の条件データ暗号化用鍵保持手段を備えていることが必要となる。
この暗号化処理装置は、複数の条件データ暗号化用鍵を用いて条件データの暗号化を行うことで暗号化データの安全性を高くできる。
本願の暗号化処理装置が備える前記条件データ生成手段は、前記条件データを複数生成するようになっていてもよいが、この場合、前記条件データ暗号化手段が前記条件データを暗号化する際に用いられる鍵である条件データ暗号化用鍵を所定のタイミングで生成する条件データ暗号化用鍵生成手段を備えており、前記条件データ暗号化手段は、前記条件データ暗号化用鍵生成手段により生成された複数の条件データ暗号化用鍵を用いて複数の前記条件データを、そのうちの少なくとも1つが他の条件データとは異なる条件データ暗号化用鍵で暗号化されるようにして暗号化条件データとするようになっており、且つ、前記基本条件データ生成手段は、前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータを含む基本条件データを生成するようになっていてもよい。
これは、複数の暗号化用鍵を順次生成することで、平文切断データの暗号化にあたり複数の鍵を用いることができるようにした上述の場合と同様に、複数の条件データ暗号化用鍵を順次生成することで、条件データの暗号化にあたり複数の鍵を用いることができるようにしたものである。
以下の発明も、複数の暗号化用鍵を生成する上述の発明と類似するものである。
この暗号化処理装置によっても、暗号化データの安全性を高められるという効果を得られる。
前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵を、初期状態から順次前記条件データ暗号化用鍵を生成した場合に、同じ順番で生成された条件データ暗号化用鍵が常に同じものとなるようにして生成するようになっており、且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成された順番を示すものとすることができる。
この暗号化処理装置は、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用鍵用解生成手段を備えており、前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用鍵を生成するものとされており、且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成されたときに用いられた解を示すものとすることがきる。
また、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用鍵用解生成手段を備えており、前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用鍵を生成するものとされており、且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成されたときに用いられた解の生成された順番を示すものとすることができる。
ただし、以上2つの暗号化処理装置で作られた暗号化データを復号化する復号化処理装置は、この暗号化処理装置が備えるのと同様の条件データ暗号化用鍵生成手段と条件データ暗号化用鍵用解生成手段を備えていることが必要となる。
本発明の暗号化処理装置は、上述のように、暗号化用鍵を複数用いるものとすることができる。これに代えて、複数の暗号化用アルゴリズムを用いるようにすることもできる。
例えば、暗号化処理装置は、前記暗号化手段が前記平文切断データを暗号化する際に用いられるアルゴリズムである複数の暗号化用アルゴリズムが保持された暗号化用アルゴリズム保持手段を備えていてもよい。この場合、前記暗号化手段は、前記暗号化用アルゴリズム保持手段に保持された複数の暗号化用アルゴリズムのうちの少なくとも2つを用いて複数の前記平文切断データを、そのうちの少なくとも1つが他の前記平文切断データとは異なる暗号化用アルゴリズムで暗号化されるようにして暗号化切断データとするようになっており、且つ、前記条件データ生成手段は、前記暗号化切断データのそれぞれが、前記暗号化用アルゴリズム保持手段に保持されている暗号化用アルゴリズムのうちのどれを用いて暗号化切断データとされたかということについてのデータを含む条件データを生成するようになっている。
これによっても、暗号化処理装置で生成された暗号化データの安全性を高められる。
なお、この暗号化処理装置で作られた暗号化データを復号化する復号化処理装置は、この暗号化処理装置が備えるのと同様の暗号化用アルゴリズム保持手段を備えていることが必要となる。
複数の暗号化用鍵を連続して生成する暗号化処理装置について上述したが、本願の暗号化処理装置は、複数の暗号化用鍵を連続して生成するのに代えて複数の暗号化用アルゴリズムを連続して生成するものとすることもできる。
その暗号化処理装置は、前記暗号化手段が前記平文切断データを暗号化する際に用いられるアルゴリズムである暗号化用アルゴリズムを所定のタイミングで生成する暗号化用アルゴリズム生成手段を備えており、前記暗号化手段は、前記暗号化用アルゴリズム生成手段により生成された複数の暗号化用アルゴリズムを用いて複数の前記平文切断データを、そのうちの少なくとも1つが他の前記平文切断データとは異なる暗号化用アルゴリズムで暗号化されるようにして暗号化切断データとするようになっており、且つ、前記条件データ生成手段は、前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータを含む条件データを生成するようになっている。
この場合、前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズムを、初期状態から順次前記暗号化用アルゴリズムを生成した場合に、同じ順番で生成された暗号化用アルゴリズムが常に同じものとなるようにして生成するようになっており、且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成された順番を示すものとすることができる。
同じ順番で生成された暗号化用アルゴリズムが常に同じものとなるようにして暗号化用アルゴリズムを生成する暗号化用アルゴリズム生成手段を備える暗号化処理装置は、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用アルゴリズム用解生成手段を備えており、前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記暗号化用アルゴリズムを生成するものとされており、且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成されたときに用いられた解を示すもとすることができる。
或いは、暗号化処理装置は、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用アルゴリズム用解生成手段を備えており、前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記暗号化用アルゴリズムを生成するものとされており、且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成されたときに用いられた解の生成された順番を示すものとすることができる。
上述したように条件データ生成手段は、条件データを複数生成するようになっている場合がある。そして、生成した複数の条件データの少なくとも一つを他とは異なる条件データ暗号化用鍵で暗号化する暗号化処理装置について既に説明した。これに代えて、生成した複数の条件データの少なくとも一つを他とは異なる条件データ暗号化用アルゴリズムで暗号化することができる。
それは例えば、以下の暗号化処理装置により可能となる。
即ち、前記条件データ生成手段は、前記条件データを複数生成するようになっており、前記条件データ暗号化手段が前記条件データを暗号化する際に用いられるアルゴリズムである複数の条件データ暗号化用アルゴリズムが保持された条件データ暗号化用アルゴリズム保持手段を備えており、前記条件データ暗号化手段は、前記条件データ暗号化用アルゴリズム保持手段に保持された複数の条件データ暗号化用アルゴリズムのうちの少なくとも2つを用いて複数の前記条件データを、そのうちの少なくとも1つが他の条件データとは異なる条件データ暗号化用アルゴリズムで暗号化されるようにして暗号化条件データとするようになっており、且つ、前記基本条件データ生成手段は、前記暗号化条件データのそれぞれが、前記条件データ暗号化用アルゴリズム保持手段に保持されている条件データ暗号化用アルゴリズムのうちのどれを用いて暗号化条件データとされたかということについてのデータを含む条件データを生成するようになっている暗号化処理装置である。
暗号化処理装置の条件データ生成手段が条件データを複数生成するようになっている場合、条件データ暗号化用アルゴリズムを連続的に生成することによっても、生成した複数の条件データの少なくとも一つを他とは異なる条件データ暗号化用アルゴリズムで暗号化することができる。
例えば、前記条件データ生成手段は、前記条件データを複数生成するようになっているとともに、前記条件データ暗号化手段が前記条件データを暗号化する際に用いられるアルゴリズムである条件データ暗号化用アルゴリズムを所定のタイミングで生成する条件データ暗号化用アルゴリズム生成手段を備えており、前記条件データ暗号化手段は、前記条件データ暗号化用アルゴリズム生成手段により生成された複数の条件データ暗号化用アルゴリズムを用いて複数の前記条件データを、そのうちの少なくとも1つが他の条件データとは異なる条件データ暗号化用アルゴリズムで暗号化されるようにして暗号化条件データとするようになっており、且つ、前記基本条件データ生成手段は、前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータを含む基本条件データを生成するようになっている、暗号化処理装置である。
この暗号化処理装置における前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズムを、初期状態から順次前記条件データ暗号化用アルゴリズムを生成した場合に、同じ順番で生成された条件データ暗号化用アルゴリズムが常に同じものとなるようにして生成するようになっており、且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成された順番を示すものとすることができる。
同じ順番で生成された条件データ暗号化用アルゴリズムが常に同じものとなるようにして条件データ暗号化用アルゴリズムを生成する条件データ暗号化用アルゴリズム生成手段を備える暗号化処理装置は、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用アルゴリズム用解生成手段を備えており、前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用アルゴリズムを生成するものとされており、且つ前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成されたときに用いられた解を示すものとすることができる。
また、条件データ暗号化用アルゴリズム生成手段を備える暗号化処理装置は、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用アルゴリズム用解生成手段を備えており、前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用アルゴリズムを生成するものとされており、且つ前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成されたときに用いられた解の生成された順番を示すものとすることができる。
本発明の暗号化処理装置が生成する暗号化データのデータ構造は、以下に述べるようなものであり、いずれもその安全性が高い。
即ち、平文である処理対象データを所定のビット数毎に切断して得られた複数の平文切断データを、所定の鍵、及び所定のアルゴリズムによって暗号化して得られた複数の暗号化切断データと、前記暗号化切断データのそれぞれの復号化を許容する場合の条件と、前記暗号化切断データのそれぞれの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む条件データを所定の鍵、及び所定のアルゴリズムによって暗号化して得られた暗号化条件データと、前記暗号化条件データの復号化を許容する場合の条件と、前記暗号化条件データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む基本条件データと、を、一まとめにして一連とした、所定の復号化処理装置で復号化されることが予定された暗号化データのデータ構造であって、前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとは、前記暗号化条件データが、その暗号化条件データの元になった条件データに含まれた条件によりその復号化が許容又は禁止される暗号化切断データよりも前方に位置するようにしながら、且つ前記基本条件データが前記暗号化条件データよりも前方に位置するようになっている、暗号化データのデータ構造である。
このデータ構造において、前記条件データは複数とすることができ、且つ以下の(1)〜(3)の条件を充足するようになっているようにすることができる。
(1)複数の前記条件データのそれぞれは、前記暗号化切断データのうちの少なくとも一つと対応付けられているとともに、その対応付けられた前記暗号化切断データの復号化を許容する場合の条件と、その対応付けられた前記暗号化切断データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む、
(2)複数の前記条件データは、前記暗号化切断データのすべてが複数の前記条件データのいずれかと対応付けられるようにされる、
(3)一つの前記暗号化切断データに複数の前記条件データが対応付けられることはない。
この場合、前記基本条件データは、複数の前記暗号化条件データのうちのどれの復号化を許容するのかという条件と、複数の前記暗号化条件データのうちのどれの復号化を禁止するのかという条件の少なくとも一方についてのデータを含むようになっているものとすることができる。
前記条件データは複数であり、且つ前記条件データの少なくとも一つには、他の条件データを暗号化して生成された暗号化条件データの復号化を許容する場合の条件についてのデータが含められていてもよい。
前記条件データは複数であり、且つ複数の前記条件データのうちの少なくとも幾つかは、それら幾つかの条件データを暗号化して生成された暗号化条件データの復号化が所定の順番で行われるように関連付けられており、且つそれら幾つかの条件データのそれぞれには、その条件データを暗号化して生成された暗号化条件データの次に復号化される暗号化条件データを復号化するための条件についてのデータが含まれていてもよい。この場合、前記基本条件データは、前記幾つかの条件データのうち、それらを暗号化して生成された暗号化条件データのうち最初に復号化されるものの復号化を許容する場合の条件を含んでいても構わない。
上述のデータ構造に含まれる前記条件データは、以下の(4)〜(7)の少なくとも一つについてのデータを含んでいてもよい。
(4)前記暗号化切断データのうちの少なくとも一つについての復号化を行うことが許容又は禁止された復号化処理装置を特定するための情報、
(5)前記暗号化切断データの少なくとも一つについての復号化を行うことが許容又は禁止されたユーザを特定するための情報、
(6)前記暗号化切断データの少なくとも一つについての復号化が許容される期間に関する情報と、前記暗号化切断データの少なくとも一つについての復号化が禁止される期間に関する情報の少なくとも一方、
(7)複数の前記暗号化切断データのうちのどれの復号化を許容するかという情報、又は複数の前記暗号化切断データのうちのどれの復号化を禁止するかという情報。
本発明のデータ構造における前記暗号化切断データのそれぞれは、複数の暗号化用鍵の1つを用いて、且つ複数の前記平文切断データの少なくとも1つが他の平文切断データとは異なる暗号化用鍵で暗号化されるようにして暗号化されたものであり、且つ、前記条件データは、前記暗号化切断データのそれぞれが、複数の前記暗号化用鍵のうちのどれを用いて暗号化切断データとされたかということについてのデータを含むものとされていてもよい。
本発明のデータ構造における前記暗号化データは、複数の暗号化用鍵を所定のタイミングで生成する暗号化用鍵生成手段を備える暗号化処理装置で生成されるものであり、前記暗号化切断データのそれぞれは、前記暗号化用鍵生成手段が生成した複数の暗号化用鍵の1つを用いて、且つ複数の前記平文切断データの少なくとも1つが他の平文切断データとは異なる暗号化用鍵で暗号化されるようにして暗号化されたものであり、且つ、前記条件データは、前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータを含むものとされていてもよい。
本発明のデータ構造は、それが複数の前記暗号化用鍵を所定のタイミングで生成する暗号化用鍵生成手段を備える暗号化処理装置で生成される場合には次のようなものとできる。
即ち、前記暗号化用鍵生成手段は、前記暗号化用鍵を、初期状態から順次前記暗号化用鍵を生成した場合に、同じ順番で生成された暗号化用鍵が常に同じものとなるようにして生成するようになっており、且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成された順番を示すものとすることができる。
暗号化用鍵生成手段を有する暗号化処理装置で生成される暗号化データは、次のようなものとすることができる。
即ち、前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用鍵用解生成手段を備える暗号化処理装置で生成されるものであり、前記暗号化用鍵生成手段は、前記暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記暗号化用鍵を生成するものとされており、且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成されたときに用いられた解を示すものとされていてもよい。
或いは、前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用鍵用解生成手段を備える暗号化処理装置で生成されるものであり、前記暗号化用鍵生成手段は、前記暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記暗号化用鍵を生成するものとされており、且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成されたときに用いられた解の生成された順番を示すものとされていてもよい。
本発明の暗号化データのデータ構造において、前記条件データは複数である場合がある。この場合、前記暗号化条件データのそれぞれは、複数の条件データ暗号化用鍵の1つを用いて、且つ複数の前記条件データの少なくとも1つが他の条件データとは異なる条件データ暗号化用鍵で暗号化されるようにして暗号化されたものであり、且つ、前記基本条件データは、前記暗号化条件データのそれぞれが、複数の前記条件データ暗号化用鍵のうちのどれを用いて暗号化条件データとされたかということについてのデータを含むものとされていてもよい。
本発明の暗号化データのデータ構造において、前記条件データは複数である場合がある。この場合、前記暗号化条件データは、複数の前記条件データ暗号化用鍵を所定のタイミングで生成する条件データ暗号化用鍵生成手段を備える暗号化処理装置で生成されるものであり、前記暗号化条件データのそれぞれは、前記条件データ暗号化用鍵生成手段が生成した複数の条件データ暗号化用鍵の1つを用いて、且つ複数の前記条件データの少なくとも1つが他の条件データとは異なる条件データ暗号化用鍵で暗号化されるようにして暗号化されたものであり、且つ前記基本条件データは、前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータを含むものとされていてもよい。
本発明のデータ構造は、それが複数の前記条件データ暗号化用鍵を所定のタイミングで生成する条件データ暗号化用鍵生成手段を備える暗号化処理装置で生成される場合には次のようなものとできる。
即ち、前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵を、初期状態から順次前記条件データ暗号化用鍵を生成した場合に、同じ順番で生成された条件データ暗号化用鍵が常に同じものとなるようにして生成するようになっており、且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成された順番を示すものとされていてもよい。
条件データ暗号化用鍵生成手段を有する暗号化処理装置で生成される暗号化データは、次のようなものとすることができる。
即ち、前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用鍵用解生成手段を備える暗号化処理装置で生成されるものであり、前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用鍵を生成するものとされており、且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵生成されたときに用いられた解を示すものとすることができる。
或いは、前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用鍵用解生成手段を備える暗号化処理装置で生成されるものであり、前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用鍵を生成するものとされており、且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成されたときに用いられた解の生成された順番を示すものとすることができる。
本発明のデータ構造における前記暗号化切断データのそれぞれは、複数の暗号化用アルゴリズムの1つを用いて、且つ複数の前記平文切断データの少なくとも1つが他の平文切断データとは異なる暗号化用アルゴリズムで暗号化されるようにして暗号化されたものであり、且つ、前記条件データは、前記暗号化切断データのそれぞれが、複数の前記暗号化用アルゴリズムのうちのどれを用いて暗号化切断データとされたかということについてのデータを含むものとされていてもよい。
本発明のデータ構造における前記暗号化データは、前記暗号化データは、複数の暗号化用アルゴリズムを所定のタイミングで生成する暗号化用アルゴリズム生成手段を備える暗号化処理装置で生成されるものであり、前記暗号化切断データのそれぞれは、前記暗号化用アルゴリズム生成手段が生成した複数の暗号化用アルゴリズムの1つを用いて、且つ複数の前記平文切断データの少なくとも1つが他の平文切断データとは異なる暗号化用アルゴリズムで暗号化されるようにして暗号化されたものであり、且つ前記条件データは、前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータを含むものとされていてもよい。
本発明のデータ構造は、それが複数の前記暗号化用アルゴリズムを所定のタイミングで生成する暗号化用アルゴリズム生成手段を備える暗号化処理装置で生成される場合には次のようなものとできる。
即ち、前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズムを、初期状態から順次前記暗号化用アルゴリズムを生成した場合に、同じ順番で生成された暗号化用アルゴリズムが常に同じものとなるようにして生成するようになっており、且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成された順番を示すものとすることができる。
暗号化用アルゴリズム生成手段を有する暗号化処理装置で生成される暗号化データは、次のようなものとすることができる。
即ち、前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用アルゴリズム用解生成手段を備える暗号化処理装置で生成されるものであり、前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記暗号化用アルゴリズムを生成するものとされており、且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成されたときに用いられた解を示すものとされていてもよい。
或いは、前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用アルゴリズム用解生成手段を備える暗号化処理装置で生成されるものであり、前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記暗号化用アルゴリズムを生成するものとされており、且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成されたときに用いられた解の生成された順番を示すものとされていてもよい。
本発明の暗号化データのデータ構造において、前記条件データは複数である場合がある。この場合、前記暗号化条件データのそれぞれは、複数の条件データ暗号化用アルゴリズムの1つを用いて、且つ複数の前記条件データの少なくとも1つが他の条件データとは異なる条件データ暗号化用アルゴリズムで暗号化されるようにして暗号化されたものであり、且つ、前記基本条件データは、前記暗号化条件データのそれぞれが、複数の前記条件データ暗号化用アルゴリズムのうちのどれを用いて暗号化条件データとされたかということについてのデータを含むものとされていてもよい。
本発明の暗号化データのデータ構造において、前記条件データは複数である場合がある。この場合、前記暗号化条件データは、複数の条件データ暗号化用アルゴリズムを所定のタイミングで生成する条件データ暗号化用アルゴリズム生成手段を備える暗号化処理装置で生成されるものであり、前記暗号化条件データのそれぞれは、条件データ暗号化用アルゴリズム生成手段が生成した複数の条件データ暗号化用アルゴリズムの1つを用いて、且つ複数の前記条件データの少なくとも1つが他の条件データとは異なる条件データ暗号化用アルゴリズムで暗号化されるようにして暗号化されたものであり、且つ前記基本条件データは、前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータを含むものとされていてもよい。
本発明のデータ構造は、それが複数の前記条件データ暗号化用アルゴリズムを所定のタイミングで生成する条件データ暗号化用アルゴリズム生成手段を備える暗号化処理装置で生成される場合には次のようなものとできる。
即ち、前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズムを、初期状態から順次前記条件データ暗号化用アルゴリズムを生成した場合に、同じ順番で生成された条件データ暗号化用アルゴリズムが常に同じものとなるようにして生成するようになっており、且つ前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成された順番を示すものとされていてもよい。
条件データ暗号化用アルゴリズム生成手段を有する暗号化処理装置で生成される暗号化データは、次のようなものとすることができる。
即ち、前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用アルゴリズム用解生成手段を備える暗号化処理装置で生成されるものであり、前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用アルゴリズムを生成するものとされており、且つ前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成されたときに用いられた解を示すものとすることができる。
或いは、前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用アルゴリズム用解生成手段を備える暗号化処理装置で生成されるものであり、前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用アルゴリズムを生成するものとされており、且つ前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成されたときに用いられた解の生成された順番を示すものとすることができる。
本発明の暗号化処理装置によって生成された暗号化データは、例えば次の復号化処理装置によって復号化することができる。
即ち、前記暗号化データから基本条件データを読出す基本条件データ読出し手段、前記暗号化データから前記暗号化条件データを読出す暗号化条件データ読出し手段、前記暗号化データから前記暗号化切断データを読出す暗号化切断データ読出し手段、前記暗号化条件データ読出し手段によって読出した前記暗号化条件データが、前記基本条件データ読出し手段が読出した前記基本条件データに示された暗号化条件データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化条件データが復号化を禁止される場合の条件に合致しないと判断した場合に前記暗号化条件データを復号化して条件データにする暗号化条件データ復号化手段、前記暗号化切断データ読出し手段によって読出した暗号化切断データのそれぞれを、前記暗号化条件データ復号化手段によって復号化された条件データに示された暗号化切断データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化切断データが復号化を禁止される場合の条件に合致しないと判断した場合にのみ復号化して平文切断データにする復号化手段、前記復号化手段によって復号化された平文切断データを一まとめにして処理対象データとする接続手段、を備えている復号化処理装置である。
或いは、前記暗号化データから基本条件データを読出す基本条件データ読出し手段、前記暗号化データから前記暗号化条件データを読出す暗号化条件データ読出し手段、前記暗号化データから前記暗号化切断データを読出す暗号化切断データ読出し手段、前記暗号化条件データ読出し手段によって読出した前記暗号化条件データが、前記基本条件データ読出し手段が読出した前記基本条件データに示された暗号化条件データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化条件データが復号化を禁止される場合の条件に合致しないと判断した場合に前記暗号化条件データを復号化して条件データにする暗号化条件データ復号化手段、前記暗号化切断データ読出し手段によって読出した暗号化切断データのそれぞれが、前記暗号化条件データ復号化手段によって復号化された条件データに示された暗号化切断データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化切断データが復号化を禁止される場合の条件に合致しないと判断した場合にのみ、その暗号化切断データを復号化して平文切断データにする復号化手段、前記復号化手段によって復号化された平文切断データを一まとめにして処理対象データとする接続手段、を備えており、前記暗号化条件データ復号化手段は、前記暗号化条件データ読出し手段によって読出した暗号化条件データのそれぞれが、複数の前記暗号化条件データのうちのどれの復号化を許容するのかという条件に合致すると判断した場合、又は複数の前記暗号化条件データのうちのどれの復号化を禁止するのかという条件に合致しなかった場合にのみ、その暗号化条件データを復号化して条件データにするようにされており、前記復号化手段は、復号化された条件データのみに基づいて、前記暗号化切断データを復号化して前記平文切断データにする処理を行う、復号化処理装置である。
復号化処理装置では、例えば以下の方法が実行される。
復号化処理装置で実行される方法であって、前記復号化処理装置が、前記暗号化データから基本条件データを読出す過程、前記暗号化データから前記暗号化条件データを読出す過程、前記暗号化データから前記暗号化切断データを読出す過程、読出した暗号化条件データが、読出した前記基本条件データに示された暗号化条件データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化条件データが復号化を禁止される場合の条件に合致しないと判断した場合に前記暗号化条件データを復号化して条件データにする過程、読出した暗号化切断データのそれぞれを、復号化された条件データに示された暗号化切断データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化切断データが復号化を禁止される場合の条件に合致しないと判断した場合にのみ復号化して平文切断データにする過程、前記復号化手段によって復号化された平文切断データを一まとめにして処理対象データとする過程、を含む復号化方法である。
或いは、復号化処理装置で実行される方法であって、前記暗号化データから基本条件データを読出す過程、前記暗号化データから前記暗号化条件データを読出す過程、前記暗号化データから前記暗号化切断データを読出す過程、読出した前記暗号化条件データが、読出した前記基本条件データに示された暗号化条件データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化条件データが復号化を禁止される場合の条件に合致しないと判断した場合に前記暗号化条件データを復号化して条件データにする過程、前記暗号化切断データ読出し手段によって読出した暗号化切断データのそれぞれが、前記暗号化条件データ復号化手段によって復号化された条件データに示された暗号化切断データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化切断データが復号化を禁止される場合の条件に合致しないと判断した場合にのみ、その暗号化切断データを復号化して平文切断データにする過程、復号化された平文切断データを一まとめにして処理対象データとする過程、を含み、前記暗号化条件データを復号化して条件データにする前記過程では、暗号化条件データのそれぞれが、複数の前記暗号化条件データのうちのどれの復号化を許容するのかという条件に合致すると判断した場合、又は複数の前記暗号化条件データのうちのどれの復号化を禁止するのかという条件に合致しなかった場合にのみ、その暗号化条件データを復号化して条件データにし、暗号化切断データを復号化して平文切断データにする前記過程では、復号化された条件データのみに基づいて、前記暗号化切断データを復号化して前記平文切断データにする前記過程を行う、復号化方法である。
以下、本発明の第1、及び第2実施形態について説明する。
各実施形態の説明では、同一の対象には同一の符号を付すものとし、また、重複する説明は場合により省略するものとする。
≪第1実施形態≫
この実施形態では、暗号化処理装置1と、複数の復号化処理装置2を含む図1に示した如き暗号化システムを、本発明の一実施形態として挙げる。
暗号化処理装置1と、復号化処理装置2は、LAN(Local Area Network)その他のネットワークNによって接続されており、暗号化処理装置1が後述するようにして生成した暗号化データを、復号化処理装置2のそれぞれに送ることができるようにされている。
もっとも、暗号化処理装置1と復号化処理装置2がネットワークNで接続されている必要は必ずしも無い。ただし、復号化処理装置2は、暗号化処理装置1が生成した暗号化データを、例えばCD−ROMなどの記録媒体を介して暗号化処理装置1から受取れるようにする必要がある。そのために必要な、記録媒体に暗号化データの記録を行うデータライタや、記録媒体から暗号化データを読出すデータリーダについては、それらが汎用的な技術なのでその説明を省略する。
なお、復号化処理装置2は少なくとも一つあれば足り、また、暗号化処理装置1が復号化処理装置2を兼ねる場合もある。
暗号化処理装置1、復号化処理装置2の構成を説明する。まず、暗号化処理装置1の構成を説明することにする。
暗号化処理装置1のハードウエア構成を図2に示す。
暗号化処理装置1は、この実施形態では、CPU(central processing unit)21、ROM(read only memory)22、HDD(hard disk drive)23、RAM(random access memory)24、入力装置25、表示装置26、暗号化装置27、通信装置28、バス29を含む構成とされている。CPU21、ROM22、HDD23、RAM24、入力装置25、表示装置26、暗号化装置27、通信装置28は、バス29を介してデータの交換が可能とされている。
ROM22、あるいはHDD23には、所定のプログラム、及び所定のデータ(これには、処理対象データとなるものが含まれる場合があり、本実施形態ではそのようにされている。また、所定のデータには、上記プログラムを実行するために必要なデータが含まれる。)が記録されている。CPU21は、暗号化処理装置1全体の制御を行うものであり、ROM22、あるいはHDD23に記憶されたプログラムやデータに基づいて、後述する処理を実行するものである。RAM24は、CPU21で処理を行う際の作業用記憶領域として用いられる。
入力装置25は、キーボード、マウスなどから構成されており、コマンドやデータの入力に用いられる。表示装置26は、LCD(liquid crystal display)、CRT(cathode ray tube)などから構成されており、コマンドや入力されたデータや、後述する処理の状況などを表示するために用いられる。
暗号化装置27は、後述する、処理対象データの暗号化、及び暗号化データの復号化を行うものである。
通信装置28は、ネットワークNを介しての復号化処理装置2との通信を実行するものである。通信装置28は、後述する暗号化データの後述するヘッダに含まれるMACアドレスなどで指定される宛先に、暗号化データを送信するようになっている。
次に、暗号化装置27の構成について説明する。図3に、暗号化装置27のブロック構成図を示す。
暗号化装置27は、インタフェイス部271、前処理部272、暗号化部273、解生成部274、アルゴリズム生成部275、鍵生成部276、条件データ生成部277、基本条件データ生成部278、ヘッダ生成部279、及び接続部280から構成される。
インタフェイス部271は、バス29と通信装置28との間におけるデータのやりとりを行うものである。
インタフェイス部271は、バス29を介して、HDDHH23から処理対象データを受取るようになっており、受取った処理対象データを前処理部272に送るようになっている。また、インタフェイス部271は処理対象データ又は暗号化データを受取った場合、その旨を示すデータを解生成部274に送るようになっている。
他方、インタフェイス部271は、後述するように、接続部280から暗号化データを受取るようになっており、受取った暗号化データをバス29に送るようになっている。この暗号化データは、通信装置28介して、ネットワークN経由で復号化処理装置2へ送られる。
前処理部272は、インタフェイス部271を介してバス29から受取った処理対象データを、所定のビット数毎に切断して、平文切断データを生成し、これを暗号化部273に送る機能を有している。処理対象データをどのように切断するかについては後述する。なお、前処理部272は、この実施形態では、処理対象データに後述するような方法で、処理対象データとは関係のないデータであるダミーデータを含める機能を有している。
暗号化部273は、平文切断データを前処理部272から受取り、それを暗号化する機能を有している。また、暗号化部273は、後述する条件データを条件データ生成部277から受取り、これも暗号化する機能を有している。なお、条件データ生成部277は、生成した条件データを後述する基準ビット数に予め切断してから暗号化部273に送るようにされている。
なお、この実施形態における暗号化部273は、暗号化を行う場合の処理単位である基準ビット数が固定されている。この実施形態における基準ビット数は、これには限られないが8ビットとなっている。暗号化の処理の詳細については後で述べる。
解生成部274は、解を順次生成するものである。暗号化処理装置1の解生成部274が生成する解は、同じ順番で生成された解が同じものになるようにされている。なお、後述する復号化処理装置2における復号化装置も解生成部を備えており、この解生成部は暗号化処理装置1が備える解生成部274と同じにされている。つまり、同じ順番で生成された解を比較すれば、暗号化処理装置1が備える解生成部274が生成する解と、復号化処理装置2が備える解生成部が生成する解は同じになるようにされている。この実施形態における解は、擬似乱数である。生成された解は、前処理部272と、アルゴリズム生成部275と、鍵生成部276とに送られる。また、その解が何番目に生成された解なのかという情報が、解生成部274から、条件データ生成部277と、基本条件データ生成部278とに送られる。
アルゴリズム生成部275は、解生成部274から受付けた解に基づいてアルゴリズムを生成するものである。このアルゴリズムは、暗号化部273で、暗号化処理を行うときに使用されるものである。
鍵生成部276は、解生成部274から受付けた解に基づいて鍵を生成するものである。鍵は、暗号化部273で、暗号化処理を行うときに使用されるものである。
条件データ生成部277は、例えばユーザが操作した入力装置から、インタフェイス部271を介して受付けたデータに基づいて、条件データを生成するものである。
条件データは、復号化処理装置2で、上述の暗号化切断データのそれぞれの復号化を許容する場合の条件と、暗号化切断データのそれぞれの復号化を禁止する場合の条件の少なくとも一方についてのデータを含んでいる。
この実施形態の条件データは、複数である。
条件データのそれぞれは、複数ある暗号化切断データの少なくとも一つと対応付けられている。ただし、一つの暗号化切断データに複数の条件データが対応付けられていることはない。また、暗号化切断データのすべてが、複数の条件データのいずれかと対応付けられている。
条件データは、その対応付けられた暗号化切断データの復号化を許容する場合の条件と、その対応付けられた暗号化切断データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含んでいる。また、条件データは、解生成部274から受付けたその解が何番目に生成された解であるのかという上述の情報(なお、この情報は、その条件データが対応付けられた暗号化切断データのそれぞれが、何番目の解に基づいて生成された鍵とアルゴリズムで暗号化されたのかということを示すものである)を含んでいる場合がある。ただし、条件データに含まれるその解が何番目に生成された解であるかという情報は、すべての解について含まれている必要はない。復号化処理装置2で復号化が許容される暗号化切断データを暗号化する際に使用された解のそれぞれが何番目に生成された解であるかという情報が含まれていれば足りる。
条件データが含んでいる対応付けられた暗号化切断データの復号化を許容する場合の条件と、その対応付けられた暗号化切断データの復号化を禁止する場合の条件は、この実施形態では、以下の(A)〜(D)のいずれか、またはそれらの組合わせである。
(A)暗号化切断データの復号化を行うことが許容又は禁止された復号化処理装置を特定するための情報
(B)暗号化切断データの少なくとも一つについての復号化を行うことが許容又は禁止されたユーザを特定するための情報
(C)暗号化切断データの復号化が許容される時期に関する情報と、暗号化切断データの少なくとも一つについての復号化が禁止される時期に関する情報の少なくとも一方
(D)複数の暗号化切断データのうちのどれの復号化を許容するかという情報、又は複数の暗号化切断データのうちのどれの復号化を禁止するかという情報
生成された条件データは、暗号化部273に送られ、そこで暗号化されて暗号化条件データにされるようになっている。
基本条件データ生成部278は、例えばユーザが操作した入力装置から、インタフェイス部271を介して受付けたデータに基づいて、基本条件データを生成するものである。
基本条件データは、復号化処理装置2で、暗号化条件データの復号化を許容する場合の条件と、暗号化条件データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含んでいる。この実施形態における暗号化条件データは複数であるので、この実施形態における基本条件データは、復号化処理装置2で、複数の暗号化条件データのうちのどれの復号化を許容するのかという条件と、複数の暗号化条件データのどれの復号化を禁止するのかという条件の少なくとも一方についてのデータを含む基本条件データを生成するようになっている。
より具体的には、基本条件データは、解生成部274から受付けたその解が何番目に生成された解であるのかという上述の情報(なお、この情報は、復号化処理装置2で復号が許される暗号化条件データがのそれぞれが、何番目の解に基づいて生成された鍵とアルゴリズムで暗号化されたのかということを示すものである。)を含んでいる場合がある。ただし、この実施形態では、基本条件データに含まれる解が生成された順番を示す情報は、復号化処理装置2で復号が許される暗号化条件データを暗号化したときに使用された解が生成された順番を示す情報のみである。
基本条件データ生成部278は、生成した基本条件データを、接続部280に送るようになっている。
ヘッダ生成部279は、例えばユーザが操作した入力装置から、インタフェイス部271を介して受付けたデータに基づいて、暗号化データのヘッダとなるヘッダデータを生成するものである。
ヘッダデータには、暗号化データの送信元となる暗号化処理装置1のアドレス、暗号化データの送信先となる復号化処理装置2のアドレスなどが記載されている。
ヘッダ生成部279は、生成したヘッダデータを、接続部280に送るようになっている。
接続部280は、暗号化部273で平文切断データを暗号化することによって生成された暗号化切断データを接続して一まとめの暗号化データとする機能を有している。この実施形態の接続部280は、暗号化部273から受付けた暗号化切断データの他に、暗号化部273から受付けた暗号化条件データ、基本条件データ生成部278が生成した基本条件データ、ヘッダ生成部279が生成したヘッダデータを接続することで、一まとめの暗号化データとするようになっている。
暗号化データのデータ構造は、図4に例示したようにされる。なお、暗号化切断データ504の数は、実際はずっと多数であるが、図示の都合上、図4ではその数をかなり少なく書いている。
暗号化データは、図4(A)、(B)に示したように、その先頭(図4においては左側が暗号化データの先頭にあたる。)に、上述のヘッダデータ501が置かれている。
ヘッダデータ501の直後には上述の基本条件データ502が配されている。なお、基本条件データ502は、後述する暗号化条件データ503のうちの最も前方に位置するものよりも前方に置かれている必要がある。それ故、図4(A)、(B)に示した暗号化データでは、ヘッダデータ501の直後に基本条件データ502が置かれている。もっとも、ヘッダデータ501内に基本条件データ502を置くようにしても構わない。
図4(A)、(B)に示した暗号化データとも、基本条件データ502の後に暗号化条件データ503と、暗号化切断データ504が続いている。
図4(A)の暗号化データでは、基本条件データ502の後に複数の暗号化条件データ503が続いており、更にその後に複数の暗号化切断データ504が配されている。
図4(B)の暗号化データでは、基本条件データ502の後に、暗号化条件データ503と暗号化切断データ504が入り組んで配されている。ただし、暗号化条件データ503は、その元となった条件データが対応付けられていた平文切断データを暗号化して生成された暗号化切断データ504よりも前方に位置するようにされている。
なお、図4(A)、(B)において暗号化条件データ503から暗号化切断データ504に向けて引いてある矢印は、矢印の基端に位置する暗号化条件データ503の元となった条件データが、矢印の先端に位置する暗号化切断データ504の元となった平文切断データと対応付けられているということを示している。
接続部280で生成された暗号化データは、インタフェイス部271に送られ、そこから、バス29を介して通信装置28に送られ、更にネットワークN経由で復号化処理装置2に送られるようになっている。
次に、復号化処理装置2の構成について説明する。
復号化処理装置2のハードウエア構成は、図5に示したとおりになっている。
復号化処理装置2は、CPU31、ROM32、HDD33、RAM34、入力装置35、表示装置36、復号化装置37、通信装置38、及びバス39を備えている。復号化処理装置2におけるCPU31、ROM32、HDD33、RAM34、入力装置35、表示装置36、及びバス39のそれぞれは、暗号化処理装置1におけるCPU21、ROM22、HDD23、RAM24、入力装置25、表示装置26、及びバス29とそれぞれ同一に構成され、同様の機能を有するようにされている。復号化処理装置2のHDD33には、復号化処理装置2のMACアドレスが保持されている。
なお、復号化処理装置2の通信装置38は、暗号化処理装置1から送信された暗号化データを、ネットワークNを介して受付けることができるようになっている。
復号化装置37は、暗号化処理装置1から受取った暗号化データを復号化するものであり、図6に示されたように構成されている。
復号化装置37は、インタフェイス部371、前処理部372、復号化部373、解生成部374、アルゴリズム生成部375、鍵生成部376、条件データ解析部377、基本条件データ解析部378、接続部379、及びタイマー380から構成される。
インタフェイス部371は、バス39を介して、通信装置38から暗号化データを受取るようになっており、受取った暗号化データを前処理部372に送るようになっている。
他方、インタフェイス部371は、後述するように、接続部379から処理対象データを受取るようになっており、受取った処理対象データをバス39に送るようになっている。
前処理部372は、インタフェイス部371を介してバス39から受取った暗号化データからヘッダデータを取除くとともに、基本条件データを取り出し、取り出した基本条件データを基本条件データ解析部378に送るようになっている。
また、前処理部372は、後述するような条件下で暗号化データから暗号化条件データを取り出し、それを復号化部373に送るようになっている。
また、前処理部372は、後述するような条件下で暗号化切断データを取り出し、それを復号化部373に送るようになっている。
前処理部372は、暗号化条件データと暗号化切断データを、暗号化処理装置1における基準ビット数と同じビット数に切断して、それを復号化部373に送るようになっている。
復号化部373は、前処理部372から受付けた暗号化条件データと暗号化切断データを復号化する機能を有している。なお、この実施形態における復号化部373は、復号化の処理を行う場合の処理単位である基準ビット数が、暗号化処理装置1と同じになるようにして固定されている。この実施形態における基準ビット数は、これには限られないが8ビットとなっている。復号化の処理の詳細については後で述べる。
解生成部374は、解を順次生成するものである。この解生成部374が生成する解は、上述したように、同じ順番で生成された解同士を比較すれば、暗号化処理装置1の解生成部374が生成した解と同じになるっている。生成された解は、前処理部372と、アルゴリズム生成部375と、鍵生成部376とに送られる。
アルゴリズム生成部375は、解生成部374から受付けた解に基づいてアルゴリズムを生成するものである。このアルゴリズムは、復号化部373で、復号化処理を行うときに使用されるものである。復号化処理装置2におけるアルゴリズム生成部375が生成するアルゴリズムは、暗号化処理装置1におけるアルゴリズム生成部275で同じ順番で生成されたアルゴリズムと同じものとなるようにされている。
鍵生成部376は、解生成部374から受付けた解に基づいて鍵を生成するものである。鍵は、復号化部373で、復号化処理を行うときに使用されるものである。復号化処理装置2における鍵生成部376が生成する鍵は、暗号化処理装置1における鍵生成部276で同じ順番で生成された鍵と同じものとなるようにされている。
条件データ解析部377は、復号化部373から送られた条件データを受付け、その条件データに示された内容を解析するものである。
条件データ解析部377が解析した条件データの内容についての情報は、解生成部374、又は復号化部373に送られるようになっている。
基本条件データ解析部378は、前処理部372から送られた基本条件データを受付け、その基本条件データに示された内容を解析するものである。
基本条件データ解析部378が解析した基本条件データの内容についての情報は、解生成部374、又は復号化部373に送られるようになっている。
復号化処理装置2における接続部379の機能は、暗号化処理装置1のそれと略同様である。接続部379は、復号化部373が暗号化切断データを復号化することによって生成した平文切断データを一まとめにして処理対象データを生成する。この処理対象データは、暗号化処理装置1で暗号化された元の処理対象データと同じか、その一部になっている。この処理対象データは、バス39を介してHDD33に送られるようになっている。
タイマー380は、現在の時刻を計測する時計である。タイマー380は、必要に応じて、条件データ解析部377、基本条件データ解析部378にその時点の時刻についての時刻データを送る。
次に、この暗号化システムで行われる処理の流れについて説明する。
図7を用いて概略で説明すると、このデータ処理システムで行われる処理の流れは以下のとおりである。
まず、暗号化処理装置1が処理対象データを暗号化して暗号化データを生成する(S110)。
次いで、その暗号化処理装置1がその暗号化データを復号化処理装置2に送る(S120)。
次いで、暗号化データを受取った復号化処理装置2が、その暗号化データを復号化して処理対象データにする(S130)。
まず、暗号化処理装置1が処理対象データを暗号化して暗号化データを生成する上述のS110の過程について、図8を参照しながら詳しく説明する。
まず、処理対象データの読み出しが行われる(S1101)。処理対象データは暗号化処理装置1から復号化処理装置2に送信する必要のあるデータであればどのようなものでもよい。この実施形態では、処理対象データはHDD23に記録されているものとする。外部記録媒体などの他の記録媒体から暗号化処理装置1に読み込ませた何らかのデータを処理対象データとしてもよい。
処理対象データを復号化処理装置2へ送れという内容のコマンドが例えば入力装置25から入力された場合、CPU21は、処理対象データをHDD23から読み出し、バス29を経て、暗号化装置27に送る。この処理対象データは、より詳細には、バス29から、暗号化装置27内のインタフェイス部271に送られ、そこから前処理部272に送られることになる。
処理対象データの読出しと前後して、その処理対象データを暗号化して得られる暗号化データをどの復号化処理装置2へ送るのかという宛先情報と、条件データを生成するための情報と、基本条件データを生成するための情報が入力装置25から入力される(S1102)。これら宛先情報と、条件データを生成するための情報と、基本条件データを生成するための情報は、CPU21によって、バス29を経て暗号化装置27に送られる。より詳細には、宛先情報はインタフェイス部371を経てヘッダ生成部279へ、条件データを生成するための情報はインタフェイス部371を経て条件データ生成部277へ、基本条件データを生成するための情報はインタフェイス部371を経て基本条件データ生成部278へ、それぞれ送られる。
宛先情報を受付けたヘッダ生成部279は、ヘッダデータを生成し、条件データを生成するための情報を受付けた条件データ生成部277は条件データを生成し、基本条件データを生成するための情報を受付けた基本条件データ生成部278は基本条件データを生成する(S1103)。
ヘッダデータ、条件データ、基本条件データは、上述したような内容である。
ただし、条件データ又は基本条件データが、解が何番目に生成されたのかという情報を含むものである場合には、条件データ生成部277と、基本条件データ生成部278は、解生成部274からその解が何番目に作られたものであるかという情報を受付けてから、条件データと基本条件データの生成を行う。なお、同一の処理対象データに対して、複数回暗号化を行い、それにより生成された複数の暗号化データを異なる複数の復号化処理装置2に送る場合、それぞれの暗号化データに暗号化してから暗号化条件データとして含めることになる条件データは、互いに異なるものとすることができる。基本条件データも同様である。
この実施形態では、各条件データには、
(A)暗号化切断データの復号化を行うことが許容又は禁止された復号化処理装置を特定するための情報
(B)暗号化切断データの復号化を行うことが許容又は禁止されたユーザを特定するための情報
(C)暗号化切断データの少なくとも一つについての復号化が許容される時期に関する情報と、暗号化切断データの少なくとも一つについての復号化が禁止される時期に関する情報の少なくとも一方
(D)複数の暗号化切断データのうちのどれの復号化を許容するかという情報、又は複数の暗号化切断データのうちのどれの復号化を禁止するかという情報
のうちの一つと、その条件データと対応付けられた平文切断データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報が含まれているものとする。なお、平文切断データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報に代えて、その条件データと対応付けられた平文切断データを生成したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解そのもの、或いは、その条件データと対応付けられた平文切断データを暗号化したときに用いられた鍵、及びアルゴリズムそのものを条件データに含めることも可能である。
また、この実施形態における基本条件データには、復号化処理装置2で、各暗号化条件データの復号化が許容されるための条件と、暗号化条件データの復号化が禁止されるための条件の少なくとも一方についてのデータ(これらは、上記(A)から(D)と同等のものとすることができる。)と、各暗号化条件データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報が含まれているものとする。なお、各暗号化条件データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報に代えて、各暗号化条件データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解そのもの、或いは、各暗号化条件デーを暗号化したときに用いられた鍵、及びアルゴリズムそのものを基本条件データに含めることも可能である。
ヘッダデータはヘッダ生成部279から、基本条件データは基本条件データ生成部278から、接続部280へ送られる。また、条件データは条件データ生成部277から、暗号化部273へ送られる。
前処理部272で、処理対象データは、所定のビット数毎に切断され、平文切断データにされる(S1104)。前処理部272は、必要に応じて、平文切断データにダミーデータを含める。
処理対象データから平文切断データを生成する方法は一通りであってもよいが、この実施形態では、以下の3通りの方法のいずれかで、処理対象データから平文切断データを生成するようになっている。
X)処理対象データを基準ビット数よりも短い一定のビット数に切断して平文切断データにするとともに、そのすべてが基準ビット数よりもビット数が短くされている平文切断データのそれぞれの一定の位置にダミーデータを含める場合
Y)処理対象データを基準ビット数よりも短いビット数の一定のビット数に切断して平文切断データにするとともに、そのすべてが基準ビット数よりもビット数が短くされている平文切断データのそれぞれの異なる位置にダミーデータを含める場合
Z)処理対象データを基準ビット数と同じかそれよりも短いビット数に切断して平文切断データにするとともに、基準ビット数よりもビット数の短い平文切断データのそれぞれにダミーデータを含める場合
上述した3通りの方法のどれで、処理対象データから平文切断データを生成するかは、解生成部274が生成した解によって決定されるようになっている。
そこで、解生成部274がどのように解を生成するかについて先に説明することにする。
解生成部274は、インタフェイス部271がバス29から処理対象データを受付けた場合、その情報をインタフェイス部271から受付ける。
これを契機に解生成部274は、解の生成を開始する。この実施形態では、解生成部274は、処理対象データがインタフェイス部271で受付けられるたびに、解を生成するようになっている。なお、これには限られないが、この実施形態における解は8行8列の行列(X)である。
解生成部274は、必ずしもそうなっている必要はないが、この実施形態では、解を、非線形遷移するようなものとして連続して発生させる。この解は、結果として擬似乱数となる。
非線形遷移するように解を連続して発生させるには、例えば、(1)解の生成の過程に、過去の解のべき乗の演算を含む、(2)解の生成の過程に、過去の2つ以上の解の掛け合わせを含む、或いは、(1)と(2)を組み合わせるなどの手法が考えられる。
この実施形態では、解生成部274は、初期行列として、第01解(X01)と第02解(X02)を予め定められたものとして持っている(例えば、第01解と第02解は、HDD23やROM22などの所定のメモリに記録されている)。なお、暗号化処理装置1が有する初期行列は、後述するように、復号化処理装置2が有する初期行列と同じである。
解生成部274は、この初期行列を、解生成部274が保持している解生成用アルゴリズムに代入して、第1解(X)を以下のように生成する。
第1解(X)=X0201+α(α=8行8列の行列)
これが最初に生成される解である。
次にインタフェイス部271がバス29から処理対象データを受付けた場合、解生成部274は、第2解(X)を以下のように生成する。
第2解(X)=X02+α
同様に、インタフェイス部271がバス29から処理対象データを受付けるたびに、解生成部274は、第3解、第4解、……第N解を、以下のように生成する。
第3解(X)=X+α
第4解(X)=X+α

第N解(X)=XN−1N−2+α
このようにして生成された解は、前処理部272、アルゴリズム生成部275、及び鍵生成部276に送られるとともに、解生成部274で保持されることになる。この実施形態では、第N解(X)を生成するために、第N−1解(XN−1)と第N−2解(XN−2)を、要するに、その直前に生成された2つの解を用いる。したがって、解生成部274は、新しい解を生成するにあたって、過去に生成された直近2つの解を保持していなければならない(又は、解生成部274ではない他の何者かがこれら2つの解を保持していなければならない)。逆に過去に生成された直近2つの解よりも古い解は、新しい解を生成するために今後使用されることのないものである。そこで、この実施形態では、常に過去2つの解を解生成部274で保持することとするが、新しい解が生成されることで直近3つ目の解となったそれまで直近2つ目の解であった解を、その解が記録されていた所定のメモリなどから消去することとしている。ただし、初期行列だけは消去しないで保持しておく。
なお、このように生成される解は、非線形遷移するカオス的なものとなり、擬似乱数となる。
非線形遷移を起こさせるには、第N解を求める際に、上述した
第N解(X)=XN−1N−2+α
という式を用いる他に、以下のような式を用いることが考えられる。
例えば、
(a)第N解(X)=(XN−1
(b)第N解(X)=(XN−1(XN−2(XN−3(XN−4
(c) 第N解(X)=(XN−1+(XN−2
などである。
なお、P、Q、R、Sはそれぞれ所定の定数である。また、数式(a)又は(c)を用いる場合には、2つ、数式(b)を用いる場合には4つの初期行列を、解生成部274は有している。
また、上述したαは定数であったが、これを、特定の変化する環境情報とすることもできる。この環境情報は、時間の経過にしたがって次々と自然発生する情報であって離れた場所でも共通して取得できる情報であり例えば、特定地方の天気に基づいて定められる情報、特定の時間に放送されるあるテレビ局のテレビジョン放送の内容に基づいて定められる情報、特定のスポーツの結果によって定められる情報などである。
このような環境情報から、上述のαを次々に作成し共通情報を生成することにすれば、通信の秘匿性をより高められる。
上述した、数式(a)〜(c)の右辺に、α(これは環境情報から生成されたものでもよい。)を加えることももちろん可能である。
上述したように生成された解(即ち、上述の解)を受付けた前処理部272は、それにしたがって、上述のX)、Y)、Z)のいずれの方法で平文切断データを生成するかを決定する。この実施形態では、これには限られないが、解である8行8列の行列を構成する数字を足し合わせた和を3で割り、その余りが0のときはX)の方法で、その余りが1のときはY)の方法で、その余りが2のときはZ)の方法で、それぞれ平文切断データを生成することとしている。
X)の方法で平文切断データを生成する場合には、前処理部272は、インタフェイス部271から受付けた処理対象データを先頭から順に、基準ビット数よりも短い一定のビット数(この実施形態では、7ビット)で切断することで、平文切断データを生成していく。また、前処理部272は、平文切断データの一定の位置に、ダミーデータを埋め込んでいく。なお、ダミーデータを埋め込む平文切断データにおける位置は、変化してもよいし、固定されていてもよい。後者の場合、ダミーデータが埋め込まれる位置は、例えば、平文切断データの先頭や末尾、或いは2ビット目や3ビット目などの所定の中間の位置とすることができる。このダミーデータは、処理対象データとは無関係のデータであればどのようなものでも構わない。例えば、常に0というデータを埋め込んでいく、又は1というデータを埋め込んでいく、或いは1と0というデータを交互に埋め込んでいくなどの処理が考えられる。更に他の例として、上述の解に基づいて、どのようなダミーデータを埋め込んでいくかを決定することもできる。例えば、解である8行8列の行列を構成する数字を足し合わせた和を9で割り、その余りが0のときは0、0、0、0…と0を連続し、その余りが1のときは、0、1、0、1…と1つおきに1を挟み込み、その余りが2のときは、0、0、1、0、0、1…と2つおきに1を挟み込み、同様に、余りが3のときは3つおきに、余りが4のときは4つおきに、……余りが9のときは9つおきに1を挟み込むようなものとすることができる。
Y)の方法で平文切断データを生成する場合には、前処理部272は、処理対象データを基準ビット数よりも短いビット数の一定のビット数(例えば、7ビット)に切断して平文切断データにするとともに、そのすべてが基準ビット数よりもビット数が短くされている平文切断データにダミーデータを含める。この場合、ダミーデータの埋め込まれる位置は、固定でもよいし、平文切断データのそれぞれについて、1ビット目、2ビット目、3ビット目…8ビット目、1ビット目、2ビット目…8ビット目、と順に移動していくような、規則的に変化するものでも、或いは、ランダムに変化するようなものであってもよい。ダミーデータの埋め込まれる位置がランダムに変化する場合には、例えば、ダミーデータの埋め込まれる位置が、解に基づいて決定されるようになっていてもよい。
解によって、ダミーデータの埋め込まれる位置を決定する方法としては、例えば、解である8行8列の行列を構成する数字を足し合わせた和を8で割り、その余りが0のときは、平文切断データ1つおきに、先頭と末尾に交互にダミーデータを埋め込む、余りが1のときは先頭にダミーデータが埋め込まれた平文切断データと、末尾にダミーデータが埋め込まれた平文切断データが2つおきになるようにする、余りが2のときは先頭にダミーデータが埋め込まれた平文切断データと、末尾にダミーデータが埋め込まれた平文切断データが3つおきになるようにする、……余りが7のときは先頭にダミーデータが埋め込まれた平文切断データと、末尾にダミーデータが埋め込まれた平文切断データが8つおきになるようにする、という処理を行うようにすることができる。先頭と末尾のように、ダミーデータを埋め込む位置を固定せずに、その位置を更に動かすようにすることもできる。
Z)の方法により平文切断データを生成する場合には、処理対象データを基準ビット数と同じかそれよりも短いビット数に切断する。この切断は、処理対象データを、8ビットよりも短いランダムな長さに切断することにより行うことができ、例えば、解である8行8列の行列を構成する数字を足し合わせた和を8で割り、その余りが0のときは処理対象データのその時点における先頭部分を8ビットで切断し、その余りが1のときは処理対象データのその時点における先頭部分を1ビットで切断し、その余りが2のときは処理対象データのその時点における先頭部分を2ビットで切断し、…その余りが7のときは処理対象データのその時点における先頭部分を7ビットで切断するようにすることができる。また、前処理部272は、これにより生成された平文切断データのうち、基準ビット数よりもビット数の短い平文切断データのそれぞれに、ダミーデータを埋め込む。この場合のダミーデータの埋め込み位置は先頭、末尾などの特定の位置であってもよいし、例えば解によって特定される変化する所定の位置であってもよい。
いずれにせよ、このようにして生成された平文切断データは、生成された順番で、暗号化部273に送られる。
平文切断データの生成と並行して、アルゴリズム生成部275が、平文切断データを暗号化する際に用いられるアルゴリズムを生成する。
この実施形態におけるアルゴリズム生成部275は、アルゴリズムを、解に基づいて生成する。
この実施形態においては、アルゴリズム生成部275は、アルゴリズムを以下のようなものとして生成する。
この実施形態におけるアルゴリズムは、『8ビットのデータである平文切断データを1行8列の行列Yとした場合に、解である8行8列の行列Xをa乗してから、時計周りにn×90°だけ回転させた行列に、Yを掛け合わせて求められるもの』と定義される。
ここで、aは所定の定数とされる場合もあるが、この実施形態では、解に基づいて変化する数字である。つまり、この実施形態におけるアルゴリズムは、解に基づいて変化する。例えばaは、8行8列の行列である解に含まれている行列の要素である数すべてを足し合わせて得られる数を5で割った場合の余り(ただし、余りが0の場合はa=1とする)のように定めることができる。
また、上述のnは、鍵によって定められる所定の数である。鍵が一定の数であればnは固定であるが、以下に説明するように、鍵は解に基づいて変化する。つまり、この実施形態では、このnも解に基づいて変化するようになっている。
もっとも、アルゴリズムを他のものとして決定することもできる。
この実施形態では、アルゴリズム生成部275は、解生成部274から解を受取るたびにアルゴリズムを生成し、それを暗号化部273に送る。
平文切断データの生成と並行して、鍵生成部276が、平文切断データを暗号化する際に用いられる鍵を生成する。
鍵生成部276は、鍵を解に基づいて生成する。
この実施形態においては、鍵生成部276は、鍵を以下のようなものとして生成する。
この実施形態における鍵は、8行8列の行列である解に含まれている行列の要素である数すべてを足し合わせて得られる数とされる。したがって、鍵は、この実施形態では、解に基づいて変化する。
なお、鍵を他のものとして決定することもできる。
この実施形態では、鍵生成部276は、解生成部274から解を受取るたびに鍵を生成し、それを暗号化部273に送る。
暗号化部273は、アルゴリズム生成部275から受付けたアルゴリズムと、鍵生成部276から受付けた鍵に基づいて、条件データ生成部277から受付けた条件データと、前処理部272から受付けた平文切断データを暗号化する(S1105)。
この実施形態では、条件データを先に暗号化し、続けて平文切断データを暗号化することとしている。
アルゴリズムは、上述したように、『8ビットのデータである平文切断データを1行8列の行列Yとした場合に、解である8行8列の行列Xをa乗してから、時計周りにn×90°だけ回転させた行列に、Yを掛け合わせて求められるもの』という決まりであり、鍵であるnは、上述したような数である。
例えば、aが3、nが6である場合には、Xを3乗して得られる8行8列の行列を、6×90°=540°だけ時計回りに回転させることによって得られた8行8列の行列に、条件データ、又は平文切断データを掛け合わせて暗号化が行われる。
これにより生成されたデータが、暗号化条件データと、暗号化切断データである。
暗号化条件データと、暗号化切断データは、接続部280に送られる。接続部280は、これらとヘッダデータと、基本条件データを、図4に示したような構造で一まとめに接続し、暗号化データを生成する(S1106)。このときの暗号化切断データの並び順は、元の平文切断データの並び順に対応したものとされる。
以上のようにして、まず、暗号化処理装置1が処理対象データを暗号化して暗号化データを生成するS110の過程が終了する。
このようにして生成された暗号化データは、バス29を介して暗号化処理装置1内の通信装置28に送られる。
通信装置28は、その暗号化データを、暗号化データのヘッダデータに含まれているMACアドレスで指定された復号化処理装置2へネットワークNを介して送る。
これにより、上述したS120の過程が実行される。
この暗号化データを受取った復号化処理装置2にて、暗号化データを復号化して処理対象データに戻すS130の過程が実行される。
以下、この復号化の過程について図9を参照しながら詳述する。
復号化処理装置2に送られた暗号化データは、復号化処理装置2の通信装置38が受付ける(S1301)。
通信装置38は、この暗号化データを復号化装置37に送る。
復号化装置37内の前処理部372が、インタフェイス部371を介してこの暗号化データを受取る。
前処理部372は、受付けた暗号化データから基本条件データを取出して(S1302)、それを基本条件データ解析部378に送る。前処理部372は、暗号化条件データを、復号化部373に送る。
基本条件データ解析部378は、基本条件データの示す内容を解析する(S1303)。基本条件データ解析部378は、この情報から判断されるどの暗号化条件データを復号化するのかという情報を、復号化部373に送る。
また、上述したように、基本条件データには、各暗号化条件データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報が含まれている。基本条件データ解析部378は、基本条件データに含まれていた各暗号化条件データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報を解生成部374に送る。ただし、解生成部374に送られるのは、基本条件データに含まれた条件により復号化が許容されている、或いは復号化が禁止されていない暗号化条件データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報のみである。
解生成部374は、この情報に基づいて、暗号化条件データを復号化するための解を生成する(S1304)。
復号化処理装置2の復号化装置37内にある解生成部374で行われる解の生成は、暗号化処理装置1の解生成部274で行われたのと同じ過程を経て行われる。
なお、この解生成部374は、上述したように、その解生成部374を含む復号化装置37と対応付けられた暗号化処理装置1の解生成部274が持っていたのと同様の初期行列と、解生成用アルゴリズムを持っている。したがって、復号化処理装置2の復号化装置37内で生成される解は、生成された順番が同じもの同士を比較すれば、暗号化処理装置1の暗号化装置27内で生成される解と同じになっている。
生成された解は、解生成部374から、アルゴリズム生成部375と、鍵生成部376とに送られる。
アルゴリズム生成部375と、鍵生成部376は暗号化条件データを復号化するためのアルゴリズムと鍵を生成する(S1305)。
アルゴリズム生成部375は、受付けた情報に基づいてアルゴリズムを生成する。復号化処理装置2のアルゴリズム生成部375がアルゴリズムを生成する過程は、暗号化処理装置1のアルゴリズム生成部275がアルゴリズムを生成する過程と同じである。同じ解に基づいて生成されたアルゴリズムは、暗号化処理装置1のアルゴリズム生成部275で生成されたものと常に同じになるようになっている。
他方、鍵生成部376は、受付けた情報に基づいて鍵を生成する。復号化処理装置2の鍵生成部376が鍵を生成する過程は、暗号化処理装置1の鍵生成部276が鍵を生成する過程と同じである。同じ解に基づいて生成された鍵は、暗号化処理装置1の鍵生成部276で生成されたものと常に同じになるようになっている。
ところで、復号化処理装置2では、暗号化処理装置1で条件データを暗号化したときに使用された解が何番目に生成されたものかという情報に基づいて暗号化処理装置1で生成されたのと同じ解を生成し、それに基づいてアルゴリズムと鍵を生成することとしている。したがって、復号化処理装置2は、暗号化処理装置1で条件データを暗号化したときに使用されたアルゴリズムと鍵と同じものを生成することができるのである。
生成されたアルゴリズムは、アルゴリズム生成部375から復号化部373へ送られる。また、生成された鍵は、鍵生成部376から復号化部373へ送られる。
なお、基本条件データに、各条件データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解そのものが含まれている場合には、このデータをアルゴリズム生成部375と、鍵生成部276に送ればよい。この場合、アルゴリズム生成部375と、鍵生成部376で生成されたアルゴリズムは、アルゴリズム生成部375から復号化部373へ送られる。また、生成された鍵は、鍵生成部376から復号化部373へ送られる。
また、基本条件データに、各条件デーを暗号化したときに用いられた鍵、及びアルゴリズムそのものを条件データに含めた場合には、それらを復号化部373へ送るようにする。
次いで、アルゴリズム生成部375と鍵生成部376から受付けたアルゴリズムと鍵を用いて、復号化部373で、暗号化条件データの復号化が行われる(S1306)。
より詳細には、復号化部373は、アルゴリズム生成部375から受付けたアルゴリズム(『8ビットのデータである条件データを1行8列の行列Yとした場合に、解である8行8列の行列Xをa乗してから、時計周りにn×90°だけ回転させた行列に、Yを掛け合わせて求められるものが暗号化条件データである』という定義)に基づいて、復号化処理を行うためのアルゴリズム(『暗号化条件データを1行8列の行列Zと見た場合に、解である8行8列の行列Xをa乗してから、時計周りにn×90°だけ回転させた行列の逆行列に、Yを掛け合わせて求められるものが条件データである』という定義)を生成し、鍵を用いて上述の定義にしたがった演算を行うことで、復号化の処理を行う。
こうして、復号化部373では、前処理部372から送られた暗号化条件データを復号化し、条件データを生成する。なお、ここで復号化される暗号化条件データは、基本条件データに含まれた条件により復号化が許容されている、或いは復号化が禁止されていない暗号化条件データのみである。
次いで、復号化された条件データは、条件データ解析部377に送られる。
条件データ解析部377は、条件データの示す内容を解析する(S1307)。上述したように、条件データには、下記(A)〜(D)の少なくとも一つと、各暗号化切断データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報が含まれている。
条件データ解析部377は、まず、各暗号化切断データが、下記(A)〜(D)の条件に合致するか否かを判断する。
(A)暗号化切断データの復号化を行うことが許容又は禁止された復号化処理装置を特定するための情報
(B)暗号化切断データの復号化を行うことが許容又は禁止されたユーザを特定するための情報
(C)暗号化切断データの少なくとも一つについての復号化が許容される時期に関する情報と、暗号化切断データの少なくとも一つについての復号化が禁止される時期に関する情報の少なくとも一方
(D)複数の暗号化切断データのうちのどれの復号化を許容するかという情報、又は複数の暗号化切断データのうちのどれの復号化を禁止するかという情報
例えば、(A)の条件に合致するか否かを判断するにあたっては、条件データ解析部377は、その復号化処理装置2のMACアドレスをHDD33からバス39経由で読出し、その復号化処理装置2のMACアドレスと条件データに含まれていた暗号化切断データの復号化を行うことが許容又は禁止された復号化処理装置2のMACアドレスの情報とを対比する。
また、(B)の条件に合致するか否かを判断するにあたっては、例えば、各ユーザ毎に割振られたユニークなIDやパスワードをユーザに入力装置35から入力させてからバス39経由で受取り、そのIDやパスワードを、その復号化処理装置2の条件データに含まれていた、暗号化切断データの復号化を行うことが許容又は禁止されたユーザのIDやパスワードと対比する。
また、(C)の条件に合致するか否かを判断するにあたっては、例えば、タイマー380から時刻データを受付け、それによって示される現在時刻と、暗号化切断データの復号化を行うことが許容又は禁止された時期に関する情報とを対比する。
また、(D)の条件に合致するか否かを判断するにあたっては、各暗号化切断データが、条件データに含まれている、復号化を許容する暗号化切断データに該当するか、或いは復号化が禁止される暗号化切断データに該当するかという点を個別に判断する。
なお、説明を省略したが、以上の判断手法は、基本条件データに(A)〜(D)の条件が含まれている場合においては、基本条件データ解析部378でも同様に行われる。
結果的に、復号化が許容される条件に一つでも該当しなかった暗号化切断データ、及び復号化が禁止される条件に一つでも該当した暗号化切断データは、その復号化が許されないものと判断される。それ以外の暗号化切断データは、復号化が許容されたものと判断される。
条件データ解析部377は、この情報を復号化部373に送る。
また、条件データ解析部377は、条件データに含まれていた、アルゴリズム及び鍵が何番目に生成されたものかということについての情報を、解生成部374に送る。ただし、解生成部374に送られるのは、基本条件データに含まれた条件により復号化が許容されている、或いは復号化が禁止されていない暗号化条件データを暗号化したときに用いられた鍵、及びアルゴリズムを生成したときに用いた解が何番目に生成されたものかという情報のみである。
解生成部374は、受付けた情報に基づいて、暗号化切断データを復号化するための解を生成する(S1308)。
復号化処理装置2の復号化装置37内にある解生成部374で行われる解の生成は、暗号化処理装置1の解生成部274で行われたのと同じ過程を経て行われる。
生成された解は、解生成部374から、前処理部372と、アルゴリズム生成部375と、鍵生成部376とに送られる。
アルゴリズム生成部375と、鍵生成部376は、暗号化切断データを復号化するためのアルゴリズムと鍵を生成する(S1309)。
アルゴリズム生成部375は、受付けた情報に基づいて、アルゴリズムを生成する。復号化処理装置2のアルゴリズム生成部375がアルゴリズムを生成する過程は、暗号化処理装置1のアルゴリズム生成部275がアルゴリズムを生成する過程と同じである。
他方、鍵生成部376は、受付けた情報に基づいて、鍵を生成する。復号化処理装置2の鍵生成部376が鍵を生成する過程は、暗号化処理装置1の鍵生成部276が鍵を生成する過程と同じである。
暗号化条件データを復号化するときに発生させた鍵とアルゴリズムと同じ理由で、暗号化切断データを復号化するときに復号化処理装置2で発生させる鍵とアルゴリズムは、暗号化処理装置1で発生させた鍵とアルゴリズムと同一のものとなる。
生成されたアルゴリズムは、アルゴリズム生成部375から復号化部373へ送られる。また、生成された鍵は、鍵生成部376から復号化部373へ送られる。
なお、条件データに、各条件データを暗号化したときに用いられた鍵を生成したとき、及びアルゴリズムを生成したときに用いられた解そのものが含まれている場合には、このデータをアルゴリズム生成部375と、鍵生成部376に送る。この場合、アルゴリズム生成部375で生成されたアルゴリズムと、鍵生成部376で生成された鍵は、アルゴリズム生成部375、鍵生成部376のそれぞれから、復号化部373へ送られる。
また、基本条件データに、各条件データを暗号化したときに用いられた鍵、及びアルゴリズムそのものが含められている場合には、それらを復号化部373へ送るようにする。
次いで、アルゴリズム生成部375と鍵生成部376から受付けたアルゴリズムと鍵を用いて、復号化部373で、暗号化条件データの復号化が行われる(S1310)。その際に、必要な場合には、ダミーデータの除去が行われる。
暗号化切断データの復号化による平文切断データの生成は、暗号化条件データを復号化して条件データを生成する上述の過程と同様にして行われる。
ダミーデータの除去は、以下のように行われる。
上述したように、解生成部374で生成された解は前処理部372に送られている。この解は、暗号化処理装置1の前処理部272でどのようにしてダミーデータを平文切断データに埋め込んだのかを決定するときに使用されたものである。つまり、復号化装置37の前処理部372がその時点で持っている解は、復号化処理装置2の復号化部373が復号化を終えた(或いは復号化を行っている、もしくは今から復号化をしようとしている)暗号化切断データ(より正確には、その暗号化切断データが暗号化される前の平文切断データ)にどのようにしてダミーデータを埋め込んだかを示すものである。
前処理部372は、復号化部373で復号化された平文切断データのどこにダミーデータが埋め込まれているかということについての情報を、復号化部373に送る。これを用いて、復号化部373は、ダミーデータを平文切断データの中から除く。
なお、ダミーデータの除去は、暗号化切断データを復号化して生成された平文切断データからではなく、暗号化切断データから除いても構わない。
なお、ここで復号化される暗号化切断データは、条件データに含まれた条件により復号化が許容されている、或いは復号化が禁止されていない暗号化切断データのみである。
次いで、復号化された平文切断データは、接続部379に送られる。接続部379は、受付けた平文切断データを接続して一まとめにすることで、処理対象データを生成する(S1311)。
このようにして、復号化処理装置2が暗号化データを復号化して処理対象データに戻すS130の過程が終了する。
生成された処理対象データは、接続部379からインタフェイス部371に送られ、バス39を介して、例えばHDD33に送られる。この処理対象データは、復号化処理装置2で適宜利用される。
<変形例1>
第1実施形態における暗号化システムの第1の変形例である変形例1について説明する。
この変形例1に係る暗号化システムは、基本的に、上述した暗号化システムと同一であるが、暗号化処理装置1における暗号化装置27と、復号化処理装置2における復号化装置37の一部の構成が、上述した暗号化システムに含まれていたものとは異なっている。
変形例1に係る暗号化処理装置1における暗号化装置27は、図10に示したように構成されている。
この暗号化装置27が、第1実施形態の場合と異なるのは、第1実施形態におけるアルゴリズム生成部275が、第1アルゴリズム生成部275Aと第2アルゴリズム生成部275Bに、第1実施形態における鍵生成部276が、第1鍵生成部276Aと第2鍵生成部276Bに、それぞれ置き換えられているという点である。
第1アルゴリズム生成部275Aと第2アルゴリズム生成部275Bはともに、アルゴリズム生成部275と同様にアルゴリズムを生成するものであるが、第1アルゴリズム生成部275Aが平文切断データを暗号化するためのアルゴリズムを生成するものであるのに対して、第2アルゴリズム生成部275Bが条件データを暗号化するためのアルゴリズムを生成するためのものである点で異なっている。
第1鍵生成部276Aと第2鍵生成部276Bはともに、鍵生成部276と同様に鍵を生成するものであるが、第1鍵生成部276Aが平文切断データを暗号化するための鍵を生成するものであるのに対して、第2鍵生成部276Bが条件データを暗号化するための鍵を生成するためのものである点で異なっている。
この変形例1では、平文切断データを暗号化する場合には、解生成部274から第1アルゴリズム生成部275Aへ解が送られ、そこで平文切断データを暗号化するためのアルゴリズムが生成される。また、条件データを暗号化する場合には、解生成部274から第2アルゴリズム生成部275Bへ解が送られ、そこで条件データを暗号化するためのアルゴリズムが生成される。
また、この変形例1では、平文切断データを暗号化する場合には、解生成部274から第1鍵生成部276Aへ解が送られ、そこで平文切断データを暗号化するための鍵が生成される。また、条件データを暗号化する場合には、解生成部274から第2鍵生成部276Bへ解が送られ、そこで条件データを暗号化するための鍵が生成される。
変形例1に係る復号化処理装置2における復号化装置37は、図11に示したように構成されている。
この復号化装置37が、第1実施形態の場合と異なるのは、第1実施形態におけるアルゴリズム生成部375が、第1アルゴリズム生成部375Aと第2アルゴリズム生成部375Bに、第1実施形態における鍵生成部376が、第1鍵生成部376Aと第2鍵生成部376Bに、それぞれ置き換えられているという点である。
第1アルゴリズム生成部375Aと第2アルゴリズム生成部375Bはともに、アルゴリズム生成部375と同様にアルゴリズムを生成するものであるが、第1アルゴリズム生成部375Aが暗号化切断データを暗号化するためのアルゴリズムを生成するものであるのに対して、第2アルゴリズム生成部375Bが暗号化条件データを暗号化するためのアルゴリズムを復号化するためのものである点で異なっている。
第1鍵生成部376Aと第2鍵生成部376Bはともに、鍵生成部376と同様に鍵を生成するものであるが、第1鍵生成部376Aが暗号化データを暗号化するための鍵を生成するものであるのに対して、第2鍵生成部376Bが暗号化条件データを復号化するための鍵を生成するためのものである点で異なっている。
この変形例1では、暗号化切断データを復号化する場合には、解生成部374から第1アルゴリズム生成部375Aへ解が送られ、そこで暗号化切断データを復号化するためのアルゴリズムが生成される。また、暗号化条件データを復号化する場合には、解生成部374から第2アルゴリズム生成部375Bへ解が送られ、そこで暗号化条件データを復号化するためのアルゴリズムが生成される。
また、この変形例1では、暗号化切断データを復号化する場合には、解生成部374から第1鍵生成部376Aへ解が送られ、そこで暗号化切断データを復号化するための鍵が生成される。また、暗号化条件データを復号化する場合には、解生成部374から第2鍵生成部376Bへ解が送られ、そこで暗号化条件データを復号化するための鍵が生成される。
この変形例1では、以上のように、暗号化又は復号化する対象が平文切断データ又は暗号化切断データであるか、それとも条件データ又は暗号化条件データであるかにより、アルゴリズムと鍵を生成する手段を分けている。
なお、アルゴリズム生成部275と鍵生成部276のみならず、解生成部274をも分けることができる。
例えば、第1実施形態の暗号化処理装置1の場合であれば、一つの解生成部274から、アルゴリズム生成部275と鍵生成部276へと解を送ることにしていたが、上記解生成部274を例えば第1解生成部274Aと第2解生成部274Bのように2つに分けて、前者が生成した解をアルゴリズム生成部275へ、後者が生成した解を鍵生成部276へ送るようにすることができる。
この場合、復号化処理装置2の解生成部374は、暗号化処理装置1に対応させて、第1解生成部374Aと第2解生成部374Bに分ける必要がある。この場合、前者が生成した解はアルゴリズム生成部375へ、後者が生成した解は鍵生成部376へそれぞれ送られる。
変形例1のように、暗号化処理装置1において、第1実施形態におけるアルゴリズム生成部275を、第1アルゴリズム生成部275Aと、第2アルゴリズム生成部275Bに、第1実施形態における鍵生成部276を、第1鍵生成部276Aと、第2鍵生成部276Bにそれぞれ置き換えるとともに、復号化処理装置2において、第1実施形態におけるアルゴリズム生成部375を、第1アルゴリズム生成部375Aと、第2アルゴリズム生成部375Bに、第1実施形態における鍵生成部376を、第1鍵生成部376Aと、第2鍵生成部376Bにそれぞれ置き換えた場合には、解生成部274、374を以下のようにすることができる。即ち、暗号化処理装置1における解生成部274を、第1〜第4解生成部274A〜Dに置き換えて、第1解生成部274Aが生成した解を第1アルゴリズム生成部275Aに、第2解生成部274Bが生成した解を第2アルゴリズム生成部275Bに、第3解生成部274Cが生成した解を第1鍵生成部276Aに、第4解生成部274Dが生成した解を第2鍵生成部276Bにそれぞれ送るようにするとともに、復号化処理装置2における解生成部374を、第1〜第4解生成部374A〜Dに置き換えて、第1解生成部374Aが生成した解を第1アルゴリズム生成部375Aに、第2解生成部374Bが生成した解を第2アルゴリズム生成部375Bに、第3解生成部374Cが生成した解を第1鍵生成部376Aに、第4解生成部374Dが生成した解を第2鍵生成部376Bにそれぞれ送るようにすることができる。
<変形例2>
次いで、変形例2について説明する。
変形例2における暗号化システムは、基本的に、上述した第1実施形態による暗号化システムと同一であり、それに含まれる暗号化処理装置1と復号化処理装置2の構成も、第1実施形態の場合と同様である。ただし、この変形例2に含まれる暗号化処理装置1における暗号化装置27と、復号化処理装置2における復号化装置37の一部の機能が、上述した暗号化システムに含まれていたものとは異なっている。
上述したように、変形例2における暗号化装置27の構成は第1実施形態におけるそれの構成と同様であり、図3に示したようなものとなっている。
変形例2と第1実施形態で異なっているのは、条件データ生成部277の機能である。もっとも、変形例2における条件データ生成部277は、第1実施形態における条件データ生成部277と同様に、複数の条件データを生成するものであるので、その基本的機能に関していえば、第1実施形態の条件データ生成部277と変わらない。
第1実施形態の条件データ生成部277が生成する条件データは、その条件データと対応付けられた暗号化切断データの復号化を許容する場合の条件と、その対応付けられた暗号化切断データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含むものとされていたが、変形例2の条件データ生成部277が生成する条件データには、上述のデータに加えて、条件データの少なくとも一つに、他の条件データを暗号化して生成された暗号化条件データの復号化を許容する場合の条件についてのデータが含まれるようになっている。つまり、変形例2の条件データ生成部277は、第1実施形態のそれと比べて、機能が追加されている。
より詳細には、変形例2の条件データ生成部277は、条件データを複数生成するようになっているとともに、複数の条件データのうちの少なくとも幾つかを、それら幾つかの条件データを暗号化して生成された暗号化条件データの復号化が所定の順番で行われるように関連付けた状態で生成するようになっている。また、条件データ生成部277は、その幾つかの条件データを、ある条件データを暗号化して生成された暗号化条件データの次に復号化される暗号化条件データを復号化するための条件についてのデータが含まれるようにして生成するようになっている。この場合における条件データに含まれる、ある条件データを暗号化して生成された暗号化条件データの次に復号化される暗号化条件データを復号化するための条件は、どのようなものでも構わない。例えば、以下の(A)〜(C)のようなものとすることができる。
(A)暗号化条件データの復号化を行うことが許容された復号化処理装置を特定するための情報
(B)暗号化条件データの復号化を行うことが許容されたユーザを特定するための情報
(C)暗号化条件データの復号化が許容される時期に関する情報
なお、上述したように、変形例2の条件データ生成部277は、複数の条件データのうちの少なくとも幾つかを、それら幾つかの条件データを暗号化して生成された暗号化条件データの復号化が所定の順番で行われるように関連付けた状態で生成するようになっているが、上述の幾つかの条件データは、複数の条件データのすべてであっても構わない。
また、変形例2の基本条件データ生成部278の機能も、第1実施形態の基本条件データ生成部278の機能とは異なっている。
変形例2では、上述のように、複数の条件データのうちの少なくとも幾つかを、それら幾つかの条件データを暗号化して生成された暗号化条件データの復号化が所定の順番で行われるように関連付けた状態で生成されるが、変形例2における基本条件データ生成部278は、これら幾つかの条件データのうち、それを暗号化して得られた暗号化条件データが最初に復号化されるものの復号化を許容するための条件についてのデータを含めて基本条件データを生成する。この条件は、上述した、ある条件データを暗号化して生成された暗号化条件データの次に復号化される暗号化条件データを復号化するための条件に準じたものとすることができる。
なお、基本条件データ生成部278は、それら条件データを暗号化して生成された暗号化条件データの復号化が所定の順番で行われるように関連付けた状態で生成された上述の幾つかの条件データが、複数の条件データのすべてではない場合には、上記幾つかの条件データ以外の条件データの復号化を許容又は禁止するための条件の少なくとも一方を含んでいる。
変形例2でも、上述した如き条件データは暗号化されて、暗号化条件データとなる。
基本条件データと、暗号化条件データは、変形例2の場合でも、接続部280で、ヘッダデータ及び暗号化切断データとともに一まとめにされて、暗号化データとされる。
なお、この場合、暗号化条件データのうち、復号化が所定の順番で行われるように関連付けた幾つかのものは、先に復号化されるものが前方に位置するようにされる。
次に、変形例2における復号化装置37について説明する。変形例2の復号化装置37の機能の一部が、上述したように、第1実施形態の場合と多少異なる。もっとも、この機能の相違は、第1実施形態の場合と変形例2の場合とで、暗号化データに含まれている暗号化条件データ及び基本条件データに含まれているデータが異なることに起因するものであり、本質的な相違はない。
変形例2と第1実施形態で異なっているのは、基本条件データ解析部378、条件データ解析部377の機能である。
変形例2における基本条件データ解析部378は、第1実施形態の場合と同様に、前処理部372から送られた基本条件データを受付け、その基本条件データに示された内容を解析する。
上述したように、変形例2における基本条件データには、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データのうち、最初に復号化されるものの復号化を許容するための条件についてのデータが含まれている。基本条件データ解析部378は、それを読出して、復号化部373に送るようになっている。
また、変形例2における基本条件データには、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データ以外の暗号化条件データが含まれる場合がある。この場合には、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データ以外の暗号化条件データのそれぞれの復号化を許容又は禁止する条件を、基本条件データから読出す。基本条件データ解析部378は、そのようなデータを読出した場合には、それを、復号化部373と解生成部374に送るようになっている。
変形例2の復号化部373は、第1実施形態の場合と同様に、前処理部372から受付けた暗号化切断データと暗号化条件データを復号化する機能を有する。
前者の復号化は、第1実施形態の場合と同様である。したがって、後者について説明する。
暗号化条件データの復号化は、基本的には、第1実施形態の場合と同様である。特に、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データ以外の暗号化条件データについては、第1実施形態の場合と同一である。
復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データの復号化は、以下のようにしてなされる。まず、基本条件データから読出された、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データのうち、最初に復号化されるものの復号化を許容するための条件に基づいて、前処理部372から送られた、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データのうち最初に復号化されるものの復号化が試みられる。復号化部373が、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データのうち、最初に復号化されるものの復号化を許容するための条件が充足されていると判断した場合、その暗号化条件データは復号化されて条件データに戻される。
復号化されて得られたその条件データは、条件データ解析部377に送られる。条件データ解析部377は、その条件データから、その次に復号化されるべき暗号化条件データの復号化を許容するための条件を読出す。その条件についてのデータは、復号化部373に送られる。
復号化部373は、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データのうち2番目に復号化されるものの復号化を試みる。復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データのうち、2番目に復号化されるものの復号化を許容するための条件が充足されていると判断した場合、復号化部373は、その暗号化条件データを復号化して条件データにする。
このような処理を繰り返し、復号化部373は、復号化が所定の順番で行われるように関連付けられた上記幾つかの暗号化条件データを、芋づる式に復号化していく。
ただし、復号化部373は、復号化が所定の順番で行われるように関連付けられた幾つかの暗号化条件データの復号化を試みる際に、その暗号化条件データの復号化を許容する条件が満たされていないと判断した場合には、その暗号化条件データの復号化を行わない。
暗号化切断データの復号化、その後行われる接続部379での処理などについては、第1実施形態の場合と同様である。
≪第2実施形態≫
第2実施形態の暗号化システムについて説明する。
第2実施形態の暗号化システムは、概ね第1実施形態の暗号化システムと共通する。
第2実施形態の暗号化システムは、暗号化処理装置における暗号化装置27と、復号化処理装置2における復号化装置37の一部の構成が、第1実施形態における暗号化システムに含まれていたものとは異なっている。
第2実施形態の暗号化装置27は、図12に示されたように構成されている。
この暗号化装置27は第1実施形態の場合と概ね同様であるが、アルゴリズム生成部275と鍵生成部276がなくなっており、その代わりにアルゴリズム保持部281と、鍵保持部282が設けられている点で第1実施形態の暗号化装置27と異なっている。
アルゴリズム保持部281は複数のアルゴリズムを、鍵保持部282は複数の鍵を保持している。アルゴリズムは、暗号化部273で平文切断データと条件データを暗号化するために用いられるアルゴリズムであり、鍵は、暗号化部273で平文切断データと条件データを暗号化するために用いられる鍵である。
第1実施形態では、アルゴリズムと鍵を、解生成部274が生成した解に基づいてアルゴリズム生成部275と鍵生成部276で生成することにより、平文切断データと条件データを暗号化する場合に使用されるアルゴリズムと鍵の双方を複数とできるようにしていたが、第2実施形態では、アルゴリズム保持部281と鍵保持部282にそれぞれ複数のアルゴリズム、又は複数の鍵を保持させておくことで、新たにアルゴリズムや解を生成しなくても、平文切断データと条件データを暗号化する場合に複数のアルゴリズムと複数の鍵を使用できるようになっている。
第2実施形態における条件データ生成部277が生成する条件データは、アルゴリズム生成部275と鍵生成部276がアルゴリズム保持部281と、鍵保持部282に置き換えられたことに伴い、それが生成する条件データの内容を第1実施形態の場合と多少異にする。
第2実施形態で生成される複数の条件データは、第1実施形態の場合と同様に、復号化処理装置2で、上述の暗号化切断データのそれぞれの復号化を許容する場合の条件と、暗号化切断データのそれぞれの復号化を禁止する場合の条件の少なくとも一方についてのデータを含んでいる。条件データは、第1実施形態の場合と同様に、対応付けられた暗号化切断データの復号化を許容する場合の条件と、その対応付けられた暗号化切断データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含んでいる。
ただし、第2実施形態における条件データは、第1実施形態における条件データに含まれている場合のあった、解生成部274から受付けたその解が何番目に生成された解であるのかという情報(なお、この情報は、その条件データが対応付けられた暗号化切断データのそれぞれが、何番目の解に基づいて生成された鍵とアルゴリズムで暗号化されたのかということを示すものである)を含んでいない。その代わり、第2実施形態における条件データは、各平文切断データを暗号化するときに使用されたアルゴリズムがアルゴリズム保持部281に保持されていたもののうちのどれかということを示す情報と、各平文切断データを暗号化するときに使用された鍵が鍵保持部282に保持されていたもののうちのどれかということを示す情報とが含まれている場合がある。この情報は、例えば、アルゴリズムと鍵に、通し番号のような識別子が振られている場合であればその識別子とすることができ、または、アルゴリズムそのもの、或いは鍵そのものとすることができる。この実施形態では、識別子を条件データに含めることとしている。
同様に、第1実施形態の基本条件データに含まれることのあったその解が何番目に生成された解であるのかという情報は、第2実施形態の基本条件データには含まれていない。その代わりに、第2実施形態における基本条件データには、各条件データを暗号化するときに使用されたアルゴリズムがアルゴリズム保持部281に保持されていたもののうちのどれかということを示す情報と、各条件データを暗号化するときに使用された鍵が鍵保持部282に保持されていたもののうちのどれかということを示す情報とが含まれている場合がある。この情報は、例えば、アルゴリズムと鍵に、通し番号のような識別子が振られている場合であればその識別子とすることができ、または、アルゴリズムそのもの、或いは鍵そのものとすることができる。この実施形態では、識別子を条件データに含めることとしている。
第2実施形態の復号化装置37は、図13に示されたように構成されている。
この復号化装置37は第1実施形態の場合と概ね同様であるが、アルゴリズム生成部375と鍵生成部376がなくなっており、その代わりにアルゴリズム保持部381と、鍵保持部382が設けられている点で第1実施形態の復号化装置37と異なっている。この変更は、暗号化装置27の上述の変更と対応したものとなっている。
アルゴリズム保持部381及び鍵保持部382は、暗号化装置27内のアルゴリズム保持部281及び鍵保持部282と同じものとされている。アルゴリズム保持部381は複数のアルゴリズムを、鍵保持部382は複数の鍵を保持している。
アルゴリズムは、復号化部373で暗号化切断データと暗号化条件データを復号化するために用いられるアルゴリズムであり、鍵は、復号化部373で暗号化切断データと暗号化条件データを復号化するために用いられる鍵である。
第1実施形態では、アルゴリズムと鍵を、解生成部374が生成した解に基づいてアルゴリズム生成部375と鍵生成部376で生成することにより、暗号化切断データと暗号化条件データを復号化する場合に使用されるアルゴリズムと鍵の双方を複数とできるようにしていたが、第2実施形態では、アルゴリズム保持部381と鍵保持部382にそれぞれ複数のアルゴリズム、又は複数の鍵を保持させておくことで、新たにアルゴリズムや解を生成しなくても、暗号化切断データと暗号化条件データを復号化する場合に複数のアルゴリズムと複数の鍵を使用できるようになっている。
第2実施形態の復号化装置37での条件データ解析部377と基本条件データ解析部378の機能は、第1実施形態の場合と多少異なるものとなっている。この相違は、第2実施形態における条件データ及び基本条件データが、第1実施形態における条件データ及び基本条件データと上述したように異なっていることに起因したものである。
第1実施形態の基本条件データ解析部378は、基本条件データの示す内容を解析するS1303において、どの暗号化条件データを復号化してよいのかという情報を復号化部373に送るとともに、復号化をしてよい暗号化条件データのそれぞれを暗号化したときに用いられたアルゴリズム及び鍵を生成したときに用いられた解が何番目に生成されたものかという情報を解生成部374に送ることとしている。
第2実施形態の基本条件データ解析部378は、第1実施形態の場合と同様に、どの暗号化条件データを復号化してよいのかという情報を復号化部373に送るが、復号化をしてよい暗号化条件データのそれぞれを暗号化したときに用いられたアルゴリズム及び鍵を生成したときに用いられた解が何番目に生成されたものかという情報を解生成部374に送ることをしない。その代わりに、第2実施形態の基本条件データ解析部378は、復号化をしてよい暗号化条件データのそれぞれを暗号化するときに使用されたアルゴリズムがアルゴリズム保持部281に保持されていたもののうちのどれかということを示す情報(上述の識別子)と、復号化をしてよい暗号化条件データを暗号化するときに使用された鍵が鍵保持部282に保持されていたもののうちのどれかということを示す情報(上述の識別子)とを復号化部373に送ることとしている。
識別子を受付けた復号化部373は、アルゴリズム保持部381からその識別子と対応付けられたアルゴリズムを読出し、また、鍵保持部382からその識別子と対応付けられた鍵を読出す。
こうしてアルゴリズム保持部381と鍵保持部382から読出されたアルゴリズム及び鍵は、暗号化処理装置1で条件データを暗号化するときに使用されたアルゴリズム及び鍵と同一のものとなっている。このアルゴリズムと鍵を用いて、復号化部373は暗号化条件データの復号化を行う。
なお、基本条件データに含まれている暗号化条件データのそれぞれを暗号化するときに使用されたアルゴリズムがアルゴリズム保持部281に保持されていたもののうちのどれかということを示す情報がアルゴリズム自体である場合には、アルゴリズム保持部381は不要になる。この場合には、基本条件データ解析部378は、基本条件データに含まれていたアルゴリズム自体を、復号化部373に送るようになっていればよい。また、基本条件データに含まれている暗号化条件データのそれぞれを暗号化するときに使用された鍵が鍵保持部282に保持されていたもののうちのどれかということを示す情報が鍵自体である場合には、鍵保持部382は不要になる。この場合には、基本条件データ解析部378は、基本条件データに含まれていた鍵自体を、復号化部373に送るようになっていればよい。
条件データ解析部377もこれと同様の処理を行う。
第1実施形態の条件データ解析部377は、条件データの示す内容を解析するS1307において、どの暗号化切断データを復号してよいのかという情報を復号化部373に送るとともに、復号化をしてよい暗号化切断データのそれぞれを暗号化したときに用いられたアルゴリズム及び鍵を生成したときに用いられた解が何番目に生成されたものかという情報を解生成部374に送ることとしている。
第2実施形態の基本条件データ解析部378は、第1実施形態の場合と同様に、どの暗号化切断データを復号化してよいのかという情報を復号化部373に送るが、復号化をしてよい暗号化切断データのそれぞれを暗号化したときに用いられたアルゴリズム及び鍵を生成したときに用いられた解が何番目に生成されたものかという情報を解生成部374に送ることをしない。その代わりに、第2実施形態の条件データ解析部377は、復号化をしてよい暗号化切断データのそれぞれを暗号化するときに使用されたアルゴリズムがアルゴリズム保持部281に保持されていたもののうちのどれかということを示す情報(上述の識別子)と、復号化をしてよい暗号化切断データを暗号化するときに使用された鍵が鍵保持部282に保持されていたもののうちのどれかということを示す情報(上述の識別子)とを復号化部373に送ることとしている。
識別子を受付けた復号化部373は、上述の場合と同様に、アルゴリズム保持部381からその識別子と対応付けられたアルゴリズムを読出し、また、鍵保持部382からその識別子と対応付けられた鍵を読出し、それを用いて暗号化切断データの復号化を行う。
なお、条件データに含まれている暗号化切断データのそれぞれを暗号化するときに使用されたアルゴリズムがアルゴリズム保持部281に保持されていたもののうちのどれかということを示す情報がアルゴリズム自体である場合にアルゴリズム保持部381は不要になること、及び条件データに含まれている暗号化切断データのそれぞれを暗号化するときに使用された鍵が鍵保持部282に保持されていたもののうちのどれかということを示す情報が鍵自体である場合には、鍵保持部382は不要になることは、上述の場合と同様である。
第1実施形態における暗号化システムの全体構成を示す図。 図1に示した暗号化システムに含まれる暗号化処理装置のハードウエア構成を示す図。 図2に示した暗号化処理装置に含まれる暗号化装置の構成を示すブロック図。 図2に示した暗号化処理装置で生成される暗号化データのデータ構造を示す図。 図1に示した暗号化システムに含まれる復号化処理装置のハードウエア構成を示す図。 図5に示した復号化処理装置に含まれる暗号化装置の構成を示すブロック図。 図1に示した暗号化システムで実行される処理の流れを示す流れ図。 図7で示したS110で実行される処理の流れを示す流れ図。 図7で示したS130で実行される処理の流れを示す流れ図。 図3に示した暗号化装置の変形例に係る構成を示すブロック図。 図6に示した復号化装置の変形例に係る構成を示すブロック図。 第2実施形態における暗号化処理装置に含まれる暗号化装置の構成を示すブロック図。 第2実施形態における復号化処理装置に含まれる復号化装置の構成を示すブロック図。
符号の説明
1 暗号化処理装置
2 復号化処理装置
25 入力装置
26 表示装置
27 暗号化装置
28 通信装置
29 バス
35 入力装置
36 表示装置
37 復号化装置
38 通信装置
39 バス
271 インタフェイス部
272 前処理部
273 暗号化部
274 解生成部
275 アルゴリズム生成部
276 鍵生成部
277 条件データ生成部
278 基本条件データ生成部
279 ヘッダ生成部
280 接続部
281 アルゴリズム保持部
282 鍵保持部
371 インタフェイス部
372 前処理部
373 復号化部
374 解生成部
375 アルゴリズム生成部
376 鍵生成部
377 条件データ解析部
378 基本条件データ解析部
379 接続部
380 タイマー
381 アルゴリズム保持部
382 鍵保持部
501 ヘッダデータ
502 基本条件データ
503 暗号化条件データ
504 暗号化切断データ

Claims (57)

  1. 平文である処理対象データを所定のビット数毎に切断して複数の平文切断データにする切断手段と、
    複数の前記平文切断データを、所定の鍵、及び所定のアルゴリズムによって暗号化して複数の暗号化切断データとする暗号化手段と、
    前記暗号化切断データのそれぞれの復号化を許容する場合の条件と、前記暗号化切断データのそれぞれの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む条件データを生成する条件データ生成手段と、
    前記条件データを所定の鍵、及び所定のアルゴリズムによって暗号化して暗号化条件データとする条件データ暗号化手段と、
    前記暗号化条件データの復号化を許容する場合の条件と、前記暗号化条件データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む基本条件データを生成する基本条件データ生成手段と、
    複数の前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを一まとめにして、所定の復号化処理装置で復号化されることが予定された一連の暗号化データとする接続手段と、
    を備えている暗号化処理装置であって、
    前記接続手段は、前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを、前記暗号化条件データが、その暗号化条件データの元になった条件データに含まれた条件によりその復号化が許容又は禁止される暗号化切断データよりも前方に位置するようにしながら、且つ前記基本条件データが前記暗号化条件データよりも前方に位置するようにしながら一まとめにして一連の暗号化データとするようになっている、
    暗号化処理装置。
  2. 前記条件データ生成手段は、
    以下の(1)〜(3)の条件を充足するようにして前記条件データを複数生成するようになっているとともに、
    (1)複数の前記条件データのそれぞれは、前記暗号化切断データのうちの少なくとも一つと対応付けられているとともに、その対応付けられた前記暗号化切断データの復号化を許容する場合の条件と、その対応付けられた前記暗号化切断データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む、
    (2)複数の前記条件データは、前記暗号化切断データのすべてが複数の前記条件データのいずれかと対応付けられるようにされる、
    (3)一つの前記暗号化切断データに複数の前記条件データが対応付けられることはない、
    前記基本条件データ生成手段は、
    複数の前記暗号化条件データのうちのどれの復号化を許容するのかという条件と、複数の前記暗号化条件データのうちのどれの復号化を禁止するのかという条件の少なくとも一方についてのデータを含む基本条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  3. 前記条件データは、以下の(4)〜(7)の少なくとも一つについてのデータを含んでいる、請求項1又は2記載の暗号化処理装置。
    (4)前記暗号化切断データのうちの少なくとも一つについての復号化を行うことが許容又は禁止された復号化処理装置を特定するための情報
    (5)前記暗号化切断データの少なくとも一つについての復号化を行うことが許容又は禁止されたユーザを特定するための情報
    (6)前記暗号化切断データの少なくとも一つについての復号化が許容される期間に関する情報と、前記暗号化切断データの少なくとも一つについての復号化が禁止される期間に関する情報の少なくとも一方
    (7)複数の前記暗号化切断データのうちのどれの復号化を許容するかという情報、又は複数の前記暗号化切断データのうちのどれの復号化を禁止するかという情報
  4. 前記暗号化手段が前記平文切断データを暗号化する際に用いられる鍵である複数の暗号化用鍵が保持された暗号化用鍵保持手段を備えており、
    前記暗号化手段は、前記暗号化用鍵保持手段に保持された複数の暗号化用鍵のうちの少なくとも2つを用いて複数の前記平文切断データを、そのうちの少なくとも1つが他の前記平文切断データとは異なる暗号化用鍵で暗号化されるようにして暗号化切断データとするようになっており、
    且つ、前記条件データ生成手段は、前記暗号化切断データのそれぞれが、前記暗号化用鍵保持手段に保持されている暗号化用鍵のうちのどれを用いて暗号化切断データとされたかということについてのデータを含む条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  5. 前記条件データ生成手段は、前記条件データを複数生成するようになっているとともに、
    前記条件データ暗号化手段が前記条件データを暗号化する際に用いられる鍵である複数の条件データ暗号化用鍵が保持された条件データ暗号化用鍵保持手段を備えており、
    前記条件データ暗号化手段は、前記条件データ暗号化用鍵保持手段に保持された複数の条件データ暗号化用鍵のうちの少なくとも2つを用いて複数の前記条件データを、そのうちの少なくとも1つが他の条件データとは異なる条件データ暗号化用鍵で暗号化されるようにして暗号化条件データとするようになっており、
    且つ、前記基本条件データ生成手段は、前記暗号化条件データのそれぞれが、前記条件データ鍵保持手段に保持されている条件データ暗号化用鍵のうちのどれを用いて暗号化条件データとされたかということについてのデータを含む基本条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  6. 前記暗号化手段が前記平文切断データを暗号化する際に用いられる鍵である暗号化用鍵を所定のタイミングで生成する暗号化用鍵生成手段を備えており、
    前記暗号化手段は、前記暗号化用鍵生成手段により生成された複数の暗号化用鍵を用いて複数の前記平文切断データを、そのうちの少なくとも1つが他の前記平文切断データとは異なる暗号化用鍵で暗号化されるようにして暗号化切断データとするようになっており、
    且つ、前記条件データ生成手段は、前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータを含む条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  7. 前記暗号化用鍵生成手段は、前記暗号化用鍵を、初期状態から順次前記暗号化用鍵を生成した場合に、同じ順番で生成された暗号化用鍵が常に同じものとなるようにして生成するようになっており、
    且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成された順番を示すものである、
    請求項6記載の暗号化処理装置。
  8. 擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用鍵用解生成手段を備えており、
    前記暗号化用鍵生成手段は、前記暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記暗号化用鍵を生成するものとされており、
    且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成されたときに用いられた解を示すものである、
    請求項7記載の暗号化処理装置。
  9. 擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用鍵用解生成手段を備えており、
    前記暗号化用鍵生成手段は、前記暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記暗号化用鍵を生成するものとされており、
    且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成されたときに用いられた解の生成された順番を示すものである、
    請求項7記載の暗号化処理装置。
  10. 前記条件データ生成手段は、前記条件データを複数生成するようになっているとともに、
    前記条件データ暗号化手段が前記条件データを暗号化する際に用いられる鍵である条件データ暗号化用鍵を所定のタイミングで生成する条件データ暗号化用鍵生成手段を備えており、
    前記条件データ暗号化手段は、前記条件データ暗号化用鍵生成手段により生成された複数の条件データ暗号化用鍵を用いて複数の前記条件データを、そのうちの少なくとも1つが他の条件データとは異なる条件データ暗号化用鍵で暗号化されるようにして暗号化条件データとするようになっており、
    且つ、前記基本条件データ生成手段は、前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータを含む基本条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  11. 前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵を、初期状態から順次前記条件データ暗号化用鍵を生成した場合に、同じ順番で生成された条件データ暗号化用鍵が常に同じものとなるようにして生成するようになっており、
    且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成された順番を示すものである、
    請求項10記載の暗号化処理装置。
  12. 擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用鍵用解生成手段を備えており、
    前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用鍵を生成するものとされており、
    且つ、前記基本条件データ生成手段が生成する前記暗号化暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成されたときに用いられた解を示すものである、
    請求項11記載の暗号化処理装置。
  13. 擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用鍵用解生成手段を備えており、
    前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用鍵を生成するものとされており、
    且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成されたときに用いられた解の生成された順番を示すものである、
    請求項11記載の暗号化処理装置。
  14. 前記暗号化手段が前記平文切断データを暗号化する際に用いられるアルゴリズムである複数の暗号化用アルゴリズムが保持された暗号化用アルゴリズム保持手段を備えており、
    前記暗号化手段は、前記暗号化用アルゴリズム保持手段に保持された複数の暗号化用アルゴリズムのうちの少なくとも2つを用いて複数の前記平文切断データを、そのうちの少なくとも1つが他の前記平文切断データとは異なる暗号化用アルゴリズムで暗号化されるようにして暗号化切断データとするようになっており、
    且つ、前記条件データ生成手段は、前記暗号化切断データのそれぞれが、前記暗号化用アルゴリズム保持手段に保持されている暗号化用アルゴリズムのうちのどれを用いて暗号化切断データとされたかということについてのデータを含む条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  15. 前記条件データ生成手段は、前記条件データを複数生成するようになっているとともに、
    前記条件データ暗号化手段が前記条件データを暗号化する際に用いられるアルゴリズムである複数の条件データ暗号化用アルゴリズムが保持された条件データ暗号化用アルゴリズム保持手段を備えており、
    前記条件データ暗号化手段は、前記条件データ暗号化用アルゴリズム保持手段に保持された複数の条件データ暗号化用アルゴリズムのうちの少なくとも2つを用いて複数の前記条件データを、そのうちの少なくとも1つが他の条件データとは異なる条件データ暗号化用アルゴリズムで暗号化されるようにして暗号化条件データとするようになっており、
    且つ、前記基本条件データ生成手段は、前記暗号化条件データのそれぞれが、前記条件データ暗号化用アルゴリズム保持手段に保持されている条件データ暗号化用アルゴリズムのうちのどれを用いて暗号化条件データとされたかということについてのデータを含む条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  16. 前記暗号化手段が前記平文切断データを暗号化する際に用いられるアルゴリズムである暗号化用アルゴリズムを所定のタイミングで生成する暗号化用アルゴリズム生成手段を備えており、
    前記暗号化手段は、前記暗号化用アルゴリズム生成手段により生成された複数の暗号化用アルゴリズムを用いて複数の前記平文切断データを、そのうちの少なくとも1つが他の前記平文切断データとは異なる暗号化用アルゴリズムで暗号化されるようにして暗号化切断データとするようになっており、
    且つ、前記条件データ生成手段は、前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータを含む条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  17. 前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズムを、初期状態から順次前記暗号化用アルゴリズムを生成した場合に、同じ順番で生成された暗号化用アルゴリズムが常に同じものとなるようにして生成するようになっており、
    且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成された順番を示すものである、
    請求項16記載の暗号化処理装置。
  18. 擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用アルゴリズム用解生成手段を備えており、
    前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記暗号化用アルゴリズムを生成するものとされており、
    且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成されたときに用いられた解を示すものである、
    請求項17記載の暗号化処理装置。
  19. 擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用アルゴリズム用解生成手段を備えており、
    前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記暗号化用アルゴリズムを生成するものとされており、
    且つ、前記条件データ生成手段が生成する前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成されたときに用いられた解の生成された順番を示すものである、
    請求項17記載の暗号化処理装置。
  20. 前記条件データ生成手段は、前記条件データを複数生成するようになっているとともに、
    前記条件データ暗号化手段が前記条件データを暗号化する際に用いられるアルゴリズムである条件データ暗号化用アルゴリズムを所定のタイミングで生成する条件データ暗号化用アルゴリズム生成手段を備えており、
    前記条件データ暗号化手段は、前記条件データ暗号化用アルゴリズム生成手段により生成された複数の条件データ暗号化用アルゴリズムを用いて複数の前記条件データを、そのうちの少なくとも1つが他の条件データとは異なる条件データ暗号化用アルゴリズムで暗号化されるようにして暗号化条件データとするようになっており、
    且つ、前記基本条件データ生成手段は、前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータを含む基本条件データを生成するようになっている、
    請求項1記載の暗号化処理装置。
  21. 前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズムを、初期状態から順次前記条件データ暗号化用アルゴリズムを生成した場合に、同じ順番で生成された条件データ暗号化用アルゴリズムが常に同じものとなるようにして生成するようになっており、
    且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成された順番を示すものである、
    請求項20記載の暗号化処理装置。
  22. 擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用アルゴリズム用解生成手段を備えており、
    前記条件データ暗号化用アルゴリズム生成手段は、前記前記条件データ暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用アルゴリズムを生成するものとされており、
    且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成されたときに用いられた解を示すものである、
    請求項21記載の暗号化処理装置。
  23. 擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用アルゴリズム用解生成手段を備えており、
    前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用アルゴリズムを生成するものとされており、
    且つ、前記基本条件データ生成手段が生成する前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成されたときに用いられた解の生成された順番を示すものである、
    請求項21記載の暗号化処理装置。
  24. 暗号化処理装置にて実行される方法であって、
    当該暗号化処理装置が、
    平文である処理対象データを所定のビット数毎に切断して複数の平文切断データにする過程、
    複数の前記平文切断データを、所定の鍵、及び所定のアルゴリズムによって暗号化して複数の暗号化切断データとする過程、
    前記暗号化切断データのそれぞれの復号化を許容する場合の条件と、前記暗号化切断データのそれぞれの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む条件データを生成する過程、
    前記条件データを所定の鍵、及び所定のアルゴリズムによって暗号化して暗号化条件データとする過程、
    前記暗号化条件データの復号化を許容する場合の条件と、前記暗号化条件データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む基本条件データを生成する過程、
    複数の前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを一まとめにして、所定の復号化処理装置で復号化されることが予定された一連の暗号化データとする過程、
    を実行し、
    前記暗号化処理装置は、複数の前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを一まとめにして、所定の復号化処理装置で復号化されることが予定された一連の暗号化データとする過程では、
    前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとを、前記暗号化条件データが、その暗号化条件データの元になった条件データに含まれた条件によりその復号化が許容又は禁止される暗号化切断データよりも前方に位置するようにしながら、且つ前記基本条件データが前記暗号化条件データよりも前方に位置するようにしながら一まとめにして一連の暗号化データとする、
    暗号化方法。
  25. 平文である処理対象データを所定のビット数毎に切断して得られた複数の平文切断データを、所定の鍵、及び所定のアルゴリズムによって暗号化して得られた複数の暗号化切断データと、
    前記暗号化切断データのそれぞれの復号化を許容する場合の条件と、前記暗号化切断データのそれぞれの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む条件データを所定の鍵、及び所定のアルゴリズムによって暗号化して得られた暗号化条件データと、
    前記暗号化条件データの復号化を許容する場合の条件と、前記暗号化条件データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む基本条件データと、
    を、一まとめにして一連とした、所定の復号化処理装置で復号化されることが予定された暗号化データのデータ構造であって、
    前記暗号化切断データと、前記暗号化条件データと、前記基本条件データとは、前記暗号化条件データが、その暗号化条件データの元になった条件データに含まれた条件によりその復号化が許容又は禁止される暗号化切断データよりも前方に位置するようにしながら、且つ前記基本条件データが前記暗号化条件データよりも前方に位置するようになっている、
    暗号化データのデータ構造。
  26. 前記条件データは複数であり、且つ以下の(1)〜(3)の条件を充足するようになっているとともに、
    (1)複数の前記条件データのそれぞれは、前記暗号化切断データのうちの少なくとも一つと対応付けられているとともに、その対応付けられた前記暗号化切断データの復号化を許容する場合の条件と、その対応付けられた前記暗号化切断データの復号化を禁止する場合の条件との少なくとも一方についてのデータを含む、
    (2)複数の前記条件データは、前記暗号化切断データのすべてが複数の前記条件データのいずれかと対応付けられるようにされる、
    (3)一つの前記暗号化切断データに複数の前記条件データが対応付けられることはない、
    前記基本条件データは、
    複数の前記暗号化条件データのうちのどれの復号化を許容するのかという条件と、複数の前記暗号化条件データのうちのどれの復号化を禁止するのかという条件の少なくとも一方についてのデータを含むようになっている、
    請求項25記載の暗号化データのデータ構造。
  27. 前記条件データは、以下の(4)〜(7)の少なくとも一つについてのデータを含んでいる、請求項25又は26記載の暗号化データのデータ構造。
    (4)前記暗号化切断データのうちの少なくとも一つについての復号化を行うことが許容又は禁止された復号化処理装置を特定するための情報
    (5)前記暗号化切断データの少なくとも一つについての復号化を行うことが許容又は禁止されたユーザを特定するための情報
    (6)前記暗号化切断データの少なくとも一つについての復号化が許容される期間に関する情報と、前記暗号化切断データの少なくとも一つについての復号化が禁止される期間に関する情報の少なくとも一方
    (7)複数の前記暗号化切断データのうちのどれの復号化を許容するかという情報、又は複数の前記暗号化切断データのうちのどれの復号化を禁止するかという情報
  28. 前記暗号化切断データのそれぞれは、複数の暗号化用鍵の1つを用いて、且つ複数の前記平文切断データの少なくとも1つが他の平文切断データとは異なる暗号化用鍵で暗号化されるようにして暗号化されたものであり、
    且つ、前記条件データは、前記暗号化切断データのそれぞれが、複数の前記暗号化用鍵のうちのどれを用いて暗号化切断データとされたかということについてのデータを含むものとされている、
    請求項25記載の暗号化データのデータ構造。
  29. 前記条件データは複数であり、
    前記暗号化条件データのそれぞれは、複数の条件データ暗号化用鍵の1つを用いて、且つ複数の前記条件データの少なくとも1つが他の条件データとは異なる条件データ暗号化用鍵で暗号化されるようにして暗号化されたものであり、
    且つ、前記基本条件データは、前記暗号化条件データのそれぞれが、複数の前記条件データ暗号化用鍵のうちのどれを用いて暗号化条件データとされたかということについてのデータを含むものとされている、
    請求項25記載の暗号化データのデータ構造。
  30. 前記暗号化データは、複数の暗号化用鍵を所定のタイミングで生成する暗号化用鍵生成手段を備える暗号化処理装置で生成されるものであり、
    前記暗号化切断データのそれぞれは、前記暗号化用鍵生成手段が生成した複数の暗号化用鍵の1つを用いて、且つ複数の前記平文切断データの少なくとも1つが他の平文切断データとは異なる暗号化用鍵で暗号化されるようにして暗号化されたものであり、
    且つ、前記条件データは、前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータを含むものとされている、
    請求項25記載の暗号化データのデータ構造。
  31. 前記暗号化用鍵生成手段は、前記暗号化用鍵を、初期状態から順次前記暗号化用鍵を生成した場合に、同じ順番で生成された暗号化用鍵が常に同じものとなるようにして生成するようになっており、
    且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成された順番を示すものとされている、
    請求項30記載の暗号化データのデータ構造。
  32. 前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用鍵用解生成手段を備える暗号化処理装置で生成されるものであり、
    前記暗号化用鍵生成手段は、前記暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記暗号化用鍵を生成するものとされており、
    且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成されたときに用いられた解を示すものである、
    請求項31記載の暗号化データのデータ構造。
  33. 前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用鍵用解生成手段を備える暗号化処理装置で生成されるものであり、
    前記暗号化用鍵生成手段は、前記暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記暗号化用鍵を生成するものとされており、
    且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用鍵を特定するためのデータは、前記暗号化用鍵が生成されたときに用いられた解の生成された順番を示すものである、
    請求項31記載の暗号化データのデータ構造。
  34. 前記条件データは複数であり、
    前記暗号化条件データは、複数の条件データ暗号化用鍵を所定のタイミングで生成する条件データ暗号化用鍵生成手段を備える暗号化処理装置で生成されるものであり、
    前記暗号化条件データのそれぞれは、前記条件データ暗号化用鍵生成手段が生成した複数の条件データ暗号化用鍵の1つを用いて、且つ複数の前記条件データの少なくとも1つが他の条件データとは異なる条件データ暗号化用鍵で暗号化されるようにして暗号化されたものであり、
    且つ、前記基本条件データは、前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータを含むものとされている、
    請求項25記載の暗号化データのデータ構造。
  35. 前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵を、初期状態から順次前記条件データ暗号化用鍵を生成した場合に、同じ順番で生成された条件データ暗号化用鍵が常に同じものとなるようにして生成するようになっており、
    且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成された順番を示すものとされている、
    請求項34記載の暗号化データのデータ構造。
  36. 前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用鍵用解生成手段を備える暗号化処理装置で生成されるものであり、
    前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用鍵を生成するものとされており、
    且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵生成されたときに用いられた解を示すものである、
    請求項35記載の暗号化データのデータ構造。
  37. 前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用鍵用解生成手段を備える暗号化処理装置で生成されるものであり、
    前記条件データ暗号化用鍵生成手段は、前記条件データ暗号化用鍵用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用鍵を生成するものとされており、
    且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用鍵を特定するためのデータは、前記条件データ暗号化用鍵が生成されたときに用いられた解の生成された順番を示すものである、
    請求項36記載の暗号化データのデータ構造。
  38. 前記暗号化切断データのそれぞれは、複数の暗号化用アルゴリズムの1つを用いて、且つ複数の前記平文切断データの少なくとも1つが他の平文切断データとは異なる暗号化用アルゴリズムで暗号化されるようにして暗号化されたものであり、
    且つ、前記条件データは、前記暗号化切断データのそれぞれが、複数の前記暗号化用アルゴリズムのうちのどれを用いて暗号化切断データとされたかということについてのデータを含むものとされている、
    請求項25記載の暗号化データのデータ構造。
  39. 前記条件データは複数であり、
    前記暗号化条件データのそれぞれは、複数の条件データ暗号化用アルゴリズムの1つを用いて、且つ複数の前記条件データの少なくとも1つが他の条件データとは異なる条件データ暗号化用アルゴリズムで暗号化されるようにして暗号化されたものであり、
    且つ、前記基本条件データは、前記暗号化条件データのそれぞれが、複数の前記条件データ暗号化用アルゴリズムのうちのどれを用いて暗号化条件データとされたかということについてのデータを含むものとされている、
    請求項25記載の暗号化データのデータ構造。
  40. 前記暗号化データは、前記暗号化データは、複数の暗号化用アルゴリズムを所定のタイミングで生成する暗号化用アルゴリズム生成手段を備える暗号化処理装置で生成されるものであり、
    前記暗号化切断データのそれぞれは、前記暗号化用アルゴリズム生成手段が生成した複数の暗号化用アルゴリズムの1つを用いて、且つ複数の前記平文切断データの少なくとも1つが他の平文切断データとは異なる暗号化用アルゴリズムで暗号化されるようにして暗号化されたものであり、
    且つ、前記条件データは、前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータを含むものとされている、
    請求項25記載の暗号化データのデータ構造。
  41. 前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズムを、初期状態から順次前記暗号化用アルゴリズムを生成した場合に、同じ順番で生成された暗号化用アルゴリズムが常に同じものとなるようにして生成するようになっており、
    且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成された順番を示すものとされている、
    請求項40記載の暗号化データのデータ構造。
  42. 前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用アルゴリズム用解生成手段を備える暗号化処理装置で生成されるものであり、
    前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記暗号化用アルゴリズムを生成するものとされており、
    且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成されたときに用いられた解を示すものである、
    請求項41記載の暗号化データのデータ構造。
  43. 前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる暗号化用アルゴリズム用解生成手段を備える暗号化処理装置で生成されるものであり、
    前記暗号化用アルゴリズム生成手段は、前記暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記暗号化用アルゴリズムを生成するものとされており、
    且つ、前記条件データに含まれる前記暗号化切断データのそれぞれが暗号化された際に使用された暗号化用アルゴリズムを特定するためのデータは、前記暗号化用アルゴリズムが生成されたときに用いられた解の生成された順番を示すものである、
    請求項41記載の暗号化データのデータ構造。
  44. 前記条件データは複数であり、
    前記暗号化条件データは、複数の条件データ暗号化用アルゴリズムを所定のタイミングで生成する条件データ暗号化用アルゴリズム生成手段を備える暗号化処理装置で生成されるものであり、
    前記暗号化条件データのそれぞれは、前記条件データ暗号化用アルゴリズム生成手段が生成した複数の条件データ暗号化用アルゴリズムの1つを用いて、且つ複数の前記条件データの少なくとも1つが他の条件データとは異なる条件データ暗号化用アルゴリズムで暗号化されるようにして暗号化されたものであり、
    且つ、前記基本条件データは、前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータを含むものとされている、
    請求項25記載の暗号化データのデータ構造。
  45. 前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズムを、初期状態から順次前記条件データ暗号化用アルゴリズムを生成した場合に、同じ順番で生成された条件データ暗号化用アルゴリズムが常に同じものとなるようにして生成するようになっており、
    且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成された順番を示すものとされている、
    請求項44記載の暗号化データのデータ構造。
  46. 前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用アルゴリズム用解生成手段を備える暗号化処理装置で生成されるものであり、
    前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用アルゴリズムを生成するものとされており、
    且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成されたときに用いられた解を示すものである、
    請求項45記載の暗号化データのデータ構造。
  47. 前記暗号化データは、擬似乱数である解を、初期状態から同じ順番で生成させられた解が常に同じものとなるようにして順次生成させることのできる条件データ暗号化用アルゴリズム用解生成手段を備える暗号化処理装置で生成されるものであり、
    前記条件データ暗号化用アルゴリズム生成手段は、前記条件データ暗号化用アルゴリズム用解生成手段から受付けた前記解に基づいて、前記条件データ暗号化用アルゴリズムを生成するものとされており、
    且つ、前記基本条件データに含まれる前記暗号化条件データのそれぞれが暗号化された際に使用された条件データ暗号化用アルゴリズムを特定するためのデータは、前記条件データ暗号化用アルゴリズムが生成されたときに用いられた解の生成された順番を示すものである、
    請求項45記載の暗号化データのデータ構造。
  48. 請求項25記載の暗号化データを復号化するものであり、
    前記暗号化データから基本条件データを読出す基本条件データ読出し手段、
    前記暗号化データから前記暗号化条件データを読出す暗号化条件データ読出し手段、
    前記暗号化データから前記暗号化切断データを読出す暗号化切断データ読出し手段、
    前記暗号化条件データ読出し手段によって読出した前記暗号化条件データが、前記基本条件データ読出し手段が読出した前記基本条件データに示された暗号化条件データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化条件データが復号化を禁止される場合の条件に合致しないと判断した場合に前記暗号化条件データを復号化して条件データにする暗号化条件データ復号化手段、
    前記暗号化切断データ読出し手段によって読出した暗号化切断データのそれぞれを、前記暗号化条件データ復号化手段によって復号化された条件データに示された暗号化切断データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化切断データが復号化を禁止される場合の条件に合致しないと判断した場合にのみ復号化して平文切断データにする復号化手段、
    前記復号化手段によって復号化された平文切断データを一まとめにして処理対象データとする接続手段、
    を備えている、
    復号化処理装置。
  49. 請求項26記載の暗号化データを復号化するものであり、
    前記暗号化データから基本条件データを読出す基本条件データ読出し手段、
    前記暗号化データから前記暗号化条件データを読出す暗号化条件データ読出し手段、
    前記暗号化データから前記暗号化切断データを読出す暗号化切断データ読出し手段、
    前記暗号化条件データ読出し手段によって読出した前記暗号化条件データが、前記基本条件データ読出し手段が読出した前記基本条件データに示された暗号化条件データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化条件データが復号化を禁止される場合の条件に合致しないと判断した場合に前記暗号化条件データを復号化して条件データにする暗号化条件データ復号化手段、
    前記暗号化切断データ読出し手段によって読出した暗号化切断データのそれぞれが、前記暗号化条件データ復号化手段によって復号化された条件データに示された暗号化切断データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化切断データが復号化を禁止される場合の条件に合致しないと判断した場合にのみ、その暗号化切断データを復号化して平文切断データにする復号化手段、
    前記復号化手段によって復号化された平文切断データを一まとめにして処理対象データとする接続手段、
    を備えており、
    前記暗号化条件データ復号化手段は、
    前記暗号化条件データ読出し手段によって読出した暗号化条件データのそれぞれが、複数の前記暗号化条件データのうちのどれの復号化を許容するのかという条件に合致すると判断した場合、又は複数の前記暗号化条件データのうちのどれの復号化を禁止するのかという条件に合致しなかった場合にのみ、その暗号化条件データを復号化して条件データにするようにされており、
    前記復号化手段は、
    復号化された条件データのみに基づいて、前記暗号化切断データを復号化して前記平文切断データにする処理を行う、
    復号化処理装置。
  50. 請求項25記載の暗号化データを復号化する復号化処理装置で実行される方法であって、
    前記復号化処理装置が、
    前記暗号化データから基本条件データを読出す過程、
    前記暗号化データから前記暗号化条件データを読出す過程、
    前記暗号化データから前記暗号化切断データを読出す過程、
    読出した暗号化条件データが、読出した前記基本条件データに示された暗号化条件データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化条件データが復号化を禁止される場合の条件に合致しないと判断した場合に前記暗号化条件データを復号化して条件データにする過程、
    読出した暗号化切断データのそれぞれを、復号化された条件データに示された暗号化切断データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化切断データが復号化を禁止される場合の条件に合致しないと判断した場合にのみ復号化して平文切断データにする過程、
    前記復号化手段によって復号化された平文切断データを一まとめにして処理対象データとする過程、
    を含む復号化方法。
  51. 請求項26記載の暗号化データを復号化する復号化処理装置で実行される方法であって、
    前記暗号化データから基本条件データを読出す過程、
    前記暗号化データから前記暗号化条件データを読出す過程、
    前記暗号化データから前記暗号化切断データを読出す過程、
    読出した前記暗号化条件データが、前記基本条件データ読出し手段が読出した前記基本条件データに示された暗号化条件データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化条件データが復号化を禁止される場合の条件に合致しないと判断した場合に前記暗号化条件データを復号化して条件データにする過程、
    前記暗号化切断データ読出し手段によって読出した暗号化切断データのそれぞれが、復号化された条件データに示された暗号化切断データが復号化を許容される場合の条件に合致すると判断した場合、又は暗号化切断データが復号化を禁止される場合の条件に合致しないと判断した場合にのみ、その暗号化切断データを復号化して平文切断データにする過程、
    復号化された平文切断データを一まとめにして処理対象データとする過程、
    を含み、
    前記暗号化条件データを復号化して条件データにする前記過程では、読出した暗号化条件データのそれぞれが、複数の前記暗号化条件データのうちのどれの復号化を許容するのかという条件に合致すると判断した場合、又は複数の前記暗号化条件データのうちのどれの復号化を禁止するのかという条件に合致しなかった場合にのみ、その暗号化条件データを復号化して条件データにし、
    暗号化切断データを復号化して平文切断データにする前記過程では、復号化された条件データのみに基づいて、前記暗号化切断データを復号化して前記平文切断データにする処理を行う、
    復号化方法。
  52. 前記条件データ生成手段は、前記条件データを複数生成するようになっているとともに、前記条件データの少なくとも一つに、他の条件データを暗号化して生成された暗号化条件データの復号化を許容する場合の条件についてのデータを含めるようになっている、
    請求項1記載の暗号化処理装置。
  53. 前記条件データ生成手段は、
    前記条件データを複数生成するようになっているとともに、
    複数の前記条件データのうちの少なくとも幾つかを、それら幾つかの条件データを暗号化して生成された暗号化条件データの復号化が所定の順番で行われるように関連付けられており、且つそれら幾つかの条件データには、その条件データを暗号化して生成された暗号化条件データの次に復号化される暗号化条件データを復号化するための条件についてのデータが含まれるようにして生成するようになっている、
    請求項1記載の暗号化処理装置。
  54. 前記基本条件データ生成手段は、前記幾つかの条件データのうち、それらを暗号化して生成された暗号化条件データのうち最初に復号化されるものの復号化を許容する場合の条件を含んでいる、
    請求項53記載の暗号化処理装置。
  55. 前記条件データは複数であり、且つ前記条件データの少なくとも一つには、他の条件データを暗号化して生成された暗号化条件データの復号化を許容する場合の条件についてのデータが含められている、
    請求項25記載の暗号化データのデータ構造。
  56. 前記条件データは複数であり、且つ複数の前記条件データのうちの少なくとも幾つかは、それら幾つかの条件データを暗号化して生成された暗号化条件データの復号化が所定の順番で行われるように関連付けられており、且つそれら幾つかの条件データのそれぞれには、その条件データを暗号化して生成された暗号化条件データの次に復号化される暗号化条件データを復号化するための条件についてのデータが含まれている、
    請求項25記載の暗号化データのデータ構造。
  57. 前記基本条件データは、前記幾つかの条件データのうち、それらを暗号化して生成された暗号化条件データのうち最初に復号化されるものの復号化を許容する場合の条件を含んでいる、
    請求項56記載の暗号化データのデータ構造。
JP2005190803A 2005-06-29 2005-06-29 暗号化処理装置、暗号化方法、復号化処理装置、復号化方法、及びデータ構造 Pending JP2007013506A (ja)

Priority Applications (12)

Application Number Priority Date Filing Date Title
JP2005190803A JP2007013506A (ja) 2005-06-29 2005-06-29 暗号化処理装置、暗号化方法、復号化処理装置、復号化方法、及びデータ構造
RU2007148046/09A RU2007148046A (ru) 2005-06-29 2006-06-27 Процессор шифрования, способ шифрования, процессор дешифрования, способ дешифрования и структура данных
CNA2006800209398A CN101194458A (zh) 2005-06-29 2006-06-27 加密处理装置、加密方法、解密处理装置、解密方法、数据结构
PCT/JP2006/313186 WO2007001075A1 (ja) 2005-06-29 2006-06-27 暗号化処理装置、暗号化方法、復号化処理装置、復号化方法、及びデータ構造
EP06767764A EP1898550A1 (en) 2005-06-29 2006-06-27 Encryption device, encryption method, decryption device, decryption method, and data structure
AU2006263057A AU2006263057A1 (en) 2005-06-29 2006-06-27 Encryption device, encryption method, decryption device, decryption method, and data structure
MX2007014283A MX2007014283A (es) 2005-06-29 2006-06-27 Aparato de procesamiento de codificacion, metodo de codificacion, aparato de procesamiento de descodificacion, metodo de descodificacion y estructura de datos.
CA002606122A CA2606122A1 (en) 2005-06-29 2006-06-27 Encryption processing apparatus, encryption method, decryption processing apparatus, decryption method and data structure
US11/915,099 US20090154693A1 (en) 2005-06-29 2006-06-27 Encryption processing apparatus, encryption method, decryption processing apparatus, decryption method and data structure
KR1020087002233A KR20080022223A (ko) 2005-06-29 2006-06-27 암호화 처리 장치, 암호화 방법, 복호화 처리 장치, 복호화방법, 및 데이터 구조
TW095123530A TW200709634A (en) 2005-06-29 2006-06-29 Encryption device, encryption method, decryption device, decryption method, and data structure
IL187662A IL187662A0 (en) 2005-06-29 2007-11-26 Encryption processing apparatus, encryption method, decryption processing apparatus, decryption method and data structure

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005190803A JP2007013506A (ja) 2005-06-29 2005-06-29 暗号化処理装置、暗号化方法、復号化処理装置、復号化方法、及びデータ構造

Publications (1)

Publication Number Publication Date
JP2007013506A true JP2007013506A (ja) 2007-01-18

Family

ID=37595309

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005190803A Pending JP2007013506A (ja) 2005-06-29 2005-06-29 暗号化処理装置、暗号化方法、復号化処理装置、復号化方法、及びデータ構造

Country Status (11)

Country Link
US (1) US20090154693A1 (ja)
EP (1) EP1898550A1 (ja)
JP (1) JP2007013506A (ja)
KR (1) KR20080022223A (ja)
CN (1) CN101194458A (ja)
AU (1) AU2006263057A1 (ja)
CA (1) CA2606122A1 (ja)
IL (1) IL187662A0 (ja)
RU (1) RU2007148046A (ja)
TW (1) TW200709634A (ja)
WO (1) WO2007001075A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008153163A1 (ja) * 2007-06-11 2008-12-18 N-Crypt Lab., Inc. 暗号化装置、復号化装置、及びそれらで実行される方法、暗号化・復号化システム、並びにプログラム
WO2009123366A1 (ja) 2008-04-04 2009-10-08 株式会社エヌクリプトラボ 送受信システム、送信装置、受信装置、認証装置、ユーザ装置、それらで実行される方法、並びにプログラム

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8351610B2 (en) * 2005-01-07 2013-01-08 N-Crypt, Inc. Communication system and communication method
KR100917495B1 (ko) 2006-11-27 2009-09-16 나노스텔라 인코포레이티드 팔라듐-금을 포함하는 엔진 배기가스 촉매
US7534738B2 (en) 2006-11-27 2009-05-19 Nanostellar, Inc. Engine exhaust catalysts containing palladium-gold
US7709414B2 (en) 2006-11-27 2010-05-04 Nanostellar, Inc. Engine exhaust catalysts containing palladium-gold
US8504492B2 (en) 2011-01-10 2013-08-06 Accenture Global Services Limited Identification of attributes and values using multiple classifiers
US8620836B2 (en) * 2011-01-10 2013-12-31 Accenture Global Services Limited Preprocessing of text
GB201508872D0 (en) * 2015-05-22 2015-07-01 Exate Technology Ltd Encryption and decryption system
CN108777611B (zh) * 2018-05-11 2021-06-18 吉林大学 基于双密钥流密码的双向链表顺序加密解密方法
US11785448B2 (en) * 2020-03-24 2023-10-10 Boe Technology Group Co., Ltd. Method and device for implementing secure communication, and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225550A (ja) * 1994-02-10 1995-08-22 Hitachi Software Eng Co Ltd データ多段階参照方法およびデータ多段階参照システム
JPH1127252A (ja) * 1997-07-07 1999-01-29 Hitachi Ltd 鍵管理システム、鍵管理装置、情報暗号化装置、情報復号化装置、およびプログラムを記憶した記憶媒体
JP2000252974A (ja) * 1999-03-03 2000-09-14 Kobe Steel Ltd ディジタル情報暗号化装置,及びディジタル情報再生装置
JP2002077138A (ja) * 2000-06-19 2002-03-15 Xerox Corp 遷移状態に基づく暗号化システムおよび方法
JP2003173284A (ja) * 2001-12-05 2003-06-20 Hitachi Ltd 送信制御可能なネットワークシステム
JP2004295955A (ja) * 2003-03-26 2004-10-21 Hitachi Ltd ディジタル信号記録再生装置及びディジタル信号記録再生方法
JP2005102021A (ja) * 2003-09-26 2005-04-14 Renesas Technology Corp 端末装置、そのプログラム及び認証処理を行う記憶装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6259789B1 (en) * 1997-12-12 2001-07-10 Safecourier Software, Inc. Computer implemented secret object key block cipher encryption and digital signature device and method
DE60024941T8 (de) * 1999-08-31 2006-08-10 Matsushita Electric Industrial Co., Ltd., Kadoma Verschlüsselungsverfahren und -Vorrichtung, Entschlüsselungsverfahren und -Vorrichtung
GB0013398D0 (en) * 2000-06-01 2000-07-26 Tao Group Ltd A method of protecting a cryptosystem from a multiple transmission attack
CN100428751C (zh) * 2000-12-25 2008-10-22 松下电器产业株式会社 安全通信包处理装置及其方法
US7478243B2 (en) * 2001-03-21 2009-01-13 Microsoft Corporation On-disk file format for serverless distributed file system with signed manifest of file modifications
US7380120B1 (en) * 2001-12-12 2008-05-27 Guardian Data Storage, Llc Secured data format for access control
GB0229894D0 (en) * 2002-12-21 2003-01-29 Ibm Methods, apparatus and computer programs for generating and/or using conditional electronic signatures and/or for reporting status changes
US7707427B1 (en) * 2004-07-19 2010-04-27 Michael Frederick Kenrich Multi-level file digests

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07225550A (ja) * 1994-02-10 1995-08-22 Hitachi Software Eng Co Ltd データ多段階参照方法およびデータ多段階参照システム
JPH1127252A (ja) * 1997-07-07 1999-01-29 Hitachi Ltd 鍵管理システム、鍵管理装置、情報暗号化装置、情報復号化装置、およびプログラムを記憶した記憶媒体
JP2000252974A (ja) * 1999-03-03 2000-09-14 Kobe Steel Ltd ディジタル情報暗号化装置,及びディジタル情報再生装置
JP2002077138A (ja) * 2000-06-19 2002-03-15 Xerox Corp 遷移状態に基づく暗号化システムおよび方法
JP2003173284A (ja) * 2001-12-05 2003-06-20 Hitachi Ltd 送信制御可能なネットワークシステム
JP2004295955A (ja) * 2003-03-26 2004-10-21 Hitachi Ltd ディジタル信号記録再生装置及びディジタル信号記録再生方法
JP2005102021A (ja) * 2003-09-26 2005-04-14 Renesas Technology Corp 端末装置、そのプログラム及び認証処理を行う記憶装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008153163A1 (ja) * 2007-06-11 2008-12-18 N-Crypt Lab., Inc. 暗号化装置、復号化装置、及びそれらで実行される方法、暗号化・復号化システム、並びにプログラム
WO2009123366A1 (ja) 2008-04-04 2009-10-08 株式会社エヌクリプトラボ 送受信システム、送信装置、受信装置、認証装置、ユーザ装置、それらで実行される方法、並びにプログラム
US8885826B2 (en) 2008-04-04 2014-11-11 N-Crypt Lab., Inc. Transmission/reception system, transmission device, reception device, authentication device, user device, method executed by the aforementioned, and program

Also Published As

Publication number Publication date
KR20080022223A (ko) 2008-03-10
AU2006263057A1 (en) 2007-01-04
WO2007001075A1 (ja) 2007-01-04
US20090154693A1 (en) 2009-06-18
EP1898550A1 (en) 2008-03-12
CN101194458A (zh) 2008-06-04
RU2007148046A (ru) 2009-07-10
TW200709634A (en) 2007-03-01
IL187662A0 (en) 2008-08-07
CA2606122A1 (en) 2007-01-04

Similar Documents

Publication Publication Date Title
JP2007013506A (ja) 暗号化処理装置、暗号化方法、復号化処理装置、復号化方法、及びデータ構造
KR101008135B1 (ko) 데이터 처리 장치
TWI417758B (zh) Data processing device, data processing system, and data processing method
KR20180110550A (ko) 부채널 분석 방지를 위한 화이트박스 암호 방법 및 장치
WO2021006313A1 (ja) データ処理装置、データ処理方法、及びコンピュータプログラム
TWI387297B (zh) Communication system and communication method
TWI387296B (zh) Communication system and communication method (1)
JP2011259439A (ja) 通信システム、通信方法
JP2008167326A (ja) 情報処理装置、情報処理方法、コンピュータプログラム
JP5837626B2 (ja) データ処理装置、データ処理システム、及びデータ処理方法
JP2011229174A (ja) データ処理装置、データ処理システム、及びデータ処理方法
JP2014112870A (ja) 通信システム、通信方法
JP2017118560A (ja) データ処理装置、データ処理システム、及びデータ処理方法
JP2011234398A (ja) データ処理装置、データ処理システム、及びデータ処理方法
JP2014079002A (ja) データ処理装置、データ処理システム、及びデータ処理方法
JP2011259446A (ja) 通信システム、通信方法
MX2007014283A (es) Aparato de procesamiento de codificacion, metodo de codificacion, aparato de procesamiento de descodificacion, metodo de descodificacion y estructura de datos.
JP2014099875A (ja) 通信システム、通信方法
JP2005204131A (ja) 管理データ更新装置及びプログラム
KR20090106563A (ko) 복호화 처리 장치, 데이터 처리 방법, 컴퓨터 프로그램

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080604

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100818

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20100819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110405

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20110419

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110802