JP6282343B2 - ブロードキャスト暗号化の方法、およびコンピュータ・プログラム - Google Patents

ブロードキャスト暗号化の方法、およびコンピュータ・プログラム Download PDF

Info

Publication number
JP6282343B2
JP6282343B2 JP2016524161A JP2016524161A JP6282343B2 JP 6282343 B2 JP6282343 B2 JP 6282343B2 JP 2016524161 A JP2016524161 A JP 2016524161A JP 2016524161 A JP2016524161 A JP 2016524161A JP 6282343 B2 JP6282343 B2 JP 6282343B2
Authority
JP
Japan
Prior art keywords
key
identifier
encrypted
cryptographic
content
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.)
Active
Application number
JP2016524161A
Other languages
English (en)
Other versions
JP2016541150A (ja
Inventor
ポンセレオン、ダルシー、ビー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2016541150A publication Critical patent/JP2016541150A/ja
Application granted granted Critical
Publication of JP6282343B2 publication Critical patent/JP6282343B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • 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
    • 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/60Digital content management, e.g. content distribution
    • H04L2209/601Broadcast encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明の実施形態は、ブロードキャスト暗号化に関し、より詳細には、ブロードキャスト暗号化システムにおける空間効率のよい鍵割当てに関する。
ブロードキャスト暗号化システムにおいて空間効率のよい鍵割当てのために、鍵行列が使用され得る。鍵行列手法では、許可されたコンテンツ消費者(たとえば、デジタル・メディア・プレーヤ)が、鍵行列の列から列へトラバースするために、一方向性暗号化関数を適用する。トラバーサルの各ステップにおいて、暗号化鍵が導出され、プロセスは、目的の鍵が取得されるまで繰り返される。許可されたクライアントは、鍵行列の特定の列における特定の行に関係しているデバイス鍵の一意の小さいセットを割り当てられる。許可されたクライアントが、そのデバイス鍵の1つを使用して暗号化関数を適用するとき、新しい鍵が生成される。この新しい鍵は、後続の列においてセルに適用できる。このプロセスの繰り返しが最終的には、保護されたコンテンツを復号するために使用され得る最終復号鍵を生み出す。鍵行列手法は、鍵の組合せが、その後配布される保護されたコンテンツとともに含まれるデータ(メディア鍵ブロック:Media Key Block、以下に説明する)の変更によって取り消されることを可能にする。
単一のあらかじめ定められた一方向性関数が、行列において後続の鍵を生成するために適用され得る。この関数が事前にわかっている場合、攻撃者が総当たり(brute force)によりさらなる鍵を導出できる可能性がある。特に、わかっている一方向性関数の結果は、すべての考えられる入力に対して計算され得る。結果がいずれかのわかっている暗号化鍵に一致すると、攻撃者は、鍵行列により後方に効果的にトラバースすることによって、所有することを許可されていなかった鍵を導出する。このような総当たり計算の結果は、並行して鍵の列全体と比較され得る。攻撃者が、破られた最終暗号化鍵の複数のセットを有する場合、この並列処理はさらに増える。
いずれか1つの列が解読されると、攻撃者は、暗号化鍵束における列のすべてに遡って、それを指す列などを続けて解読することができる。攻撃者は、その後、攻撃者がもともと所有していなかった鍵のセットを所有することになり、コンテンツの許可されていない復号または他の復号デバイスの偽装が可能になる。
このような攻撃の危険を最小限にするために、一方向性関数は、総当たり攻撃が実行不可能となるように選択され得る。特に、総当たりにより解読するには法外な時間を要することになる関数が選択され得る。たとえば、AES−128を使用する一方向性関数が、現時点で解読が不可能であると一般的に考えられている。しかしながら攻撃者は、18ヶ月ごとにその平均個別計算能力が倍増している複数のコンピュータを含む、ますます大きくなったクラウド(または、ボットネット)にアクセスできる。計算能力が継続して増加することにより、攻撃者は、毎年暗号化強度のおよそさらなる1ビット分を総当たりにより解読することができる。また、解読効率を桁違いに跳ね上げることができる技術(ハードウェアまたはアルゴリズムに関する)発展(たとえば、レインボー・テーブル、AESのためのCPU支援、マルチコア並列処理、GPU、FPGA、量子計算における超並列処理)が時々ある。これらの進行中の進化を考えると、現在は実際に解読できない一方向性関数が、近い将来に解読される可能性がある。
本発明の1つの実施形態によれば、ブロードキャスト暗号化の方法およびそのためのコンピュータ・プログラム製品が提供される。この実施形態では、鍵束(key bundle)が読み取られる。鍵束は、第1の暗号鍵と、関連する第1の鍵識別子と、関連する第1の暗号関数識別子とを含む。暗号化されたコンテンツが受け取られる。複数の暗号化された鍵が受け取られる。各暗号化された鍵が、関連する識別子を有する。複数の暗号化された鍵から第1の暗号化された鍵が、第1の暗号化された鍵の識別子が第1の鍵識別子と等しくなるように選択される。第1の暗号関数識別子に対応して、第1の暗号関数が特定される。第1の暗号関数は、第1の暗号鍵を使用して第1の暗号化された鍵に適用されて、第1の中間暗号鍵を取得する。第1の中間暗号鍵を使用して、コンテンツ暗号鍵が特定される。コンテンツ暗号鍵は、暗号化されたコンテンツに適用されて、復号されたコンテンツを取得する。
本発明の別の実施形態によれば、ブロードキャスト暗号化の方法およびそのためのコンピュータ・プログラム製品が提供される。この実施形態では、鍵束が提供される。鍵束は、第1の暗号鍵と、関連する第1の鍵識別子と、関連する第1の暗号関数識別子とを含む。暗号化されたコンテンツが提供される。複数の暗号化された鍵が提供される。各暗号化された鍵が、関連する鍵識別子を有する。複数の暗号化された鍵から第1の暗号化された鍵を、第1の暗号化された鍵の識別子が第1の鍵識別子と等しくなるように選択することと、第1の暗号関数識別子に対応する第1の暗号関数を特定することと、第1の暗号鍵を使用して第1の暗号化された鍵に第1の暗号関数を適用して、第1の中間暗号鍵を取得することと、第1の中間暗号鍵を使用してコンテンツ暗号鍵を特定することと、コンテンツ暗号鍵を暗号化されたコンテンツに適用することとによって、暗号化されたコンテンツが復号できるように、複数の暗号化された鍵は選択される。
本開示の一実施形態による、ブロードキャスト暗号化方式の概略図である。 本開示の一実施形態による、例示的デバイス鍵束の図である。 本開示の一実施形態による、例示的メディア鍵ブロックの図である。 本開示の一実施形態による、コンテンツを復号する方法の図である。 本発明の一実施形態による、計算ノードを示す図である。
ブロードキャスト暗号化システムにおいて空間効率のよい鍵割当てのために、鍵行列が使用され得る。鍵行列手法では、許可されたコンテンツ消費者(たとえば、デジタル・メディア・プレーヤ)が、鍵行列の列から列へトラバースするために、一方向性暗号化関数を適用する。トラバーサルの各ステップにおいて、暗号化鍵が導出され、プロセスは、目的の鍵が取得されるまで繰り返される。許可されたクライアントは、鍵行列の特定の列における特定の行に関係しているデバイス鍵の一意の小さいセットを割り当てられる。許可されたクライアントが、そのデバイス鍵の1つを使用して暗号化関数を適用するとき、新しい鍵が生成される。この新しい鍵は、後続の列においてセルに適用できる。このプロセスの繰り返しが最終的には、保護されたコンテンツを復号するために使用され得る最終復号鍵を生み出す。鍵行列手法は、鍵の組合せが、その後配布される保護されたコンテンツとともに含まれるデータ(メディア鍵ブロック:Media Key Block、以下に説明する)の変更によって取り消されることを可能にする。
単一のあらかじめ定められた一方向性関数が、行列において後続の鍵を生成するために適用され得る。この関数が事前にわかっている場合、攻撃者が総当たり(brute force)によりさらなる鍵を導出できる可能性がある。特に、わかっている一方向性関数の結果は、すべての考えられる入力に対して計算され得る。結果がいずれかのわかっている暗号化鍵に一致すると、攻撃者は、鍵行列により後方に効果的にトラバースすることによって、所有することを許可されていなかった鍵を導出する。このような総当たり計算の結果は、並行して鍵の列全体と比較され得る。攻撃者が、破られた最終暗号化鍵の複数のセットを有する場合、この並列処理はさらに増える。
いずれか1つの列が解読されると、攻撃者は、暗号化鍵束における列のすべてに遡って、それを指す列などを続けて解読することができる。攻撃者は、その後、攻撃者がもともと所有していなかった鍵のセットを所有することになり、コンテンツの許可されていない復号または他の復号デバイスの偽装が可能になる。
このような攻撃の危険を最小限にするために、一方向性関数は、総当たり攻撃が実行不可能となるように選択され得る。特に、総当たりにより解読するには法外な時間を要することになる関数が選択され得る。たとえば、AES−128を使用する一方向性関数が、現時点で解読が不可能であると一般的に考えられている。しかしながら攻撃者は、18ヶ月ごとにその平均個別計算能力が倍増している複数のコンピュータを含む、ますます大きくなったクラウド(または、ボットネット)にアクセスできる。計算能力が継続して増加することにより、攻撃者は、毎年暗号化強度のおよそさらなる1ビット分を総当たりにより解読することができる。また、解読効率を桁違いに跳ね上げることができる技術(ハードウェアまたはアルゴリズムに関する)発展(たとえば、レインボー・テーブル、AESのためのCPU支援、マルチコア並列処理、GPU、FPGA、量子計算における超並列処理)が時々ある。これらの進行中の進化を考えると、現在は実際に解読できない一方向性関数が、近い将来に解読される可能性がある。
ブロードキャスト暗号化における総当たり攻撃の危険に対処するために、本開示は、行列における個々の鍵に適用できる暗号化関数のバリエーションを提供する。暗号化関数がシステム内で変化するとき、効果的な総当たり攻撃を開始することはできない。単一の既知の関数に総当たりすることができる場合でも、適用できる暗号化関数がわからない場合、総当たり攻撃を行うことはできない。また、暗号化関数が変化することを可能にすることによって、同じ効果的暗号化強度を維持しながら、鍵の長さを縮小することができる。
図1を参照すると、ブロードキャスト暗号化方式の概略図が提供されている。一般的に、暗号化されるコンテンツ101は、メディア鍵102を用いて暗号化される。メディア鍵(Km)102は、デバイス鍵(Kd)103のセットを使用してメディア鍵ブロック(MKB)104を処理することによって、許可されたコンテンツ消費者によって特定される。メディア鍵102は、暗号化されたコンテンツに固有であり、デバイス鍵103は、許可されたコンテンツ消費者(デジタル・メディア・プレーヤなど)に含まれ、メディア鍵ブロック104は、たとえば、DVDなどの光メディアのリードイン領域に、暗号化されたコンテンツとともに含まれる。
このようなブロードキャスト暗号化方式では、鍵生成機関(KGF:KeyGeneration Facility)が、メディア鍵102、およびデバイス鍵103など、複数の暗号化鍵を生成する責任を負っている。鍵生成機関はまた、メディア鍵ブロック104を生成する責任を負い、メディア鍵ブロック104から、許可されたコンテンツ消費者によって所与のメディア鍵102が導出され得る。
暗号化されるコンテンツは、ネットワークを介してであっても、DVDなどの光メディア上であっても、配布される前に一意のメディア鍵102を使用して暗号化される。暗号化されたコンテンツと併せて、適切なメディア鍵ブロック102が提供される。いくつかの実施形態では、メディア鍵ブロック104は、暗号化されたコンテンツ101とともに光メディア上に置かれている。他の実施形態では、メディア鍵ブロック104は、暗号化されたコンテンツの配布前に、配布後に、または配布中に、ネットワークを通じて配布される。いくつかの実施形態では、暗号化されたコンテンツおよびメディア鍵ブロック104は、異なる機構によって配布され、いくつかの実施形態では、これらは同じ機構により配布される。
メディア・プレーヤなど、暗号化されたコンテンツの許可された消費者が、デバイス鍵(Kd)103の束を提供される。メディア鍵ブロック(MKB)104をそのデバイス鍵103で処理すること105によって、許可されたプレーヤは、メディア鍵(Km)102を特定することができる。メディア鍵(Km)102は、その後、暗号化されたコンテンツ101を復号するために使用される。CPRM/CPPMで行われる方法など、メディア鍵102を取得するためにメディア鍵ブロック104を処理するためのいくつかの方法が知られていることは、当業者には認識されよう。
鍵生成機関は、許可されたコンテンツ消費者、または消費者のグループに、デバイス鍵の異なる束を与える。メディア鍵ブロックは、許可されたデバイス鍵のみが、メディア鍵ブロックから所与のメディア鍵を特定することができるように、鍵生成機関によって生成される。所与の消費者またはメディア・プレーヤが、もはや暗号化されたコンテンツを消費することを許可されない場合、鍵生成機関によって生成されるその後のメディア鍵ブロックは、そのような取り消されたプレーヤがメディア鍵を取得すること可能にしない。このようにして、取り消された消費者は、その取り消し後に提供されたコンテンツを復号することができなくなる。
図2は、本開示の一実施形態による、例示的デバイス鍵束を示す。デバイス鍵束200は、(行として示される)複数のエントリを含み、エントリのそれぞれが列識別子201と、行識別子202と、鍵203とを含む。いくつかの実施形態では、鍵203は、128ビット(16バイト)のAES鍵であり、関数識別子204は省略され、適用できる関数は、許可されたコンテンツ消費者には推測的に(a priori)わかっている。いくつかの実施形態では、代替的ブロック暗号が使用される。AES、Blowfish、C2ブロック暗号、Camellia、CAST−128、CAST−256、CLEFIA、Cryptomeria、DES、FEAL、GOST 28147−89、ICE、IDEA、KASUMI、LOKI97、Lucifer、MacGuffin、MAGENTA、MARS、MISTY1、RC2、RC5、RC6、Skipjack、SMS4、TEA、Triple DES、Twofish、およびXTEAなどの、ただしこれらに限らない、様々な暗号および対応する鍵の長さが使用され得る。
いくつかの実施形態では、各エントリが、関数識別子204を含む。関数識別子204は、どの暗号関数が鍵203に適用できるかを示す。いくつかの実施形態では、関数識別子204は、知られている暗号関数へのソルト(すなわち、暗号関数への追加入力を提供するランダム値)である。いくつかの実施形態では、関数識別子204は、適用される関数の表示と、ソルト値の両方を含む。いくつかの実施形態では、関数識別子204は、関数またはソルト値を導出するのに十分な情報を含む。たとえば、関数識別子204は、その後暗号関数へのソルト値または他のパラメータを生成するために使用される、擬似乱数生成器へのシードを含むことができる。いくつかの実施形態では、関数識別子204は、MathMLなど、数学関数のコード化に適した言語で適用され、コード化される暗号関数の記述を含む。
いくつかの実装では、デバイス鍵束200が、考えられる各列識別子(たとえば、0から16383)に対して正確に1つの鍵を含む。デバイス鍵束200に含まれている論理データを記憶するために利用できる様々な物理表現があることは、当業者には認識されよう。たとえば、列および行識別子は、単一の明示的な識別子に結合され得る。列および行は、多次元配列など、エントリを含んだデータ構造のレイアウトによって示すことができる。いくつかの実施形態では、鍵は、3次元行列における位置を識別するために、列値および行値の代わりに、x値、y値、およびz値と関連付けられる。いくつかの実施形態では、鍵は、n次元空間における点を識別するn−ベクトルと関連付けられる。
図3は、本開示の一実施形態による、例示的メディア鍵ブロックを示す。メディア鍵ブロック300は、複数の列301、302を含む。第1の列301は、ヘッダ310と、複数の暗号化された値311・・・317とを含む。ヘッダ310は、列識別子(たとえば、列=6)を含む。代替的実施形態では、列ヘッダ310の代わりに、各暗号化された値311・・・317が、セル識別子とペアにされることが可能であり、セル識別子は、列および行番号を含むことができる。メディア鍵ブロック300に含まれている論理データを記憶するために利用できる様々な物理表現があることは、当業者には認識されよう。たとえば、各鍵が、明示的な行識別子と関連付けられることがあり、または行識別子は、配列などのデータ構造内の鍵の位置の結果として生じることがある。
第2の列302は、ヘッダ320と、複数の暗号化された値321・・・327とを含む。ヘッダ320は、暗号化された列識別子を含む。いくつかの実施形態では、メディア鍵ブロック300にさらなる列が含まれる。また、いくつかの実施形態は、列ヘッダ310、320に、またはメディア鍵ブロック300に、さらなる情報を含めることができる。たとえば、列ヘッダ310、320は、目的の鍵が取得されたかどうかを確認するために使用され得る検証値(verification value)を含むことができる。
図4は、本開示の一実施形態による、暗号化されたコンテンツを復号する方法を示す。401において、コンテンツ消費者が、暗号化されたコンテンツおよびメディア鍵ブロック(たとえば、300)を受け取る。いくつかの実施形態では、メディア鍵ブロックおよび暗号化されたコンテンツは、たとえばDVDなどのマシン可読媒体で、一緒に受け取られる。他の実施形態では、暗号化されたコンテンツおよびメディア鍵ブロックは、別々に受け取られる。402において、コンテンツ消費者は、メディア鍵ブロックを調べて、MKBに含まれる第1の列(たとえば、310)の列識別子を特定する。403において、コンテンツ消費者は、同じ列識別子(たとえば、列6)を有するデバイス鍵束から、デバイス鍵(たとえば、243)、行識別子(たとえば、行4、242)、および関数識別子(たとえば、AES−128、244)を選択する。いくつかの実施形態では、デバイス鍵束は、DVDメディア・プレーヤなど、許可されたコンテンツ消費者にある。他の実施形態では、デバイス鍵束は、ネットワークを介して、またはマシン可読媒体を介して、コンテンツ消費者に伝えられる。
404において、コンテンツ消費者は、以前に特定された行識別子に対応するMKBのセル(たとえば、列6、行4、314)にデバイス鍵(たとえば、243)を適用する。405において、コンテンツ消費者は、結果として生じた鍵を取得する。406において、結果として生じた鍵は、端末鍵(terminal key)であるかどうかを特定するためにテストされる。いくつかの実施形態では、端末鍵は、MKBに含まれる検証フィールドに端末鍵を適用して、あらかじめ定められた値(たとえば、0xDEADBEEF)を取得することによって識別される。端末鍵が見つけられた場合、端末鍵が使用されて、コンテンツ鍵407を取得する。いくつかの実施形態では、端末鍵は、コンテンツ鍵である。他の実施形態では、端末鍵は、コンテンツ鍵を復号するために使用される。さらに他の実施形態では、コンテンツ鍵を取得するために、一連の関数が端末鍵に適用される。
結果として生じた鍵が、端末ではない場合、409においてメディア消費者は、結果として生じた鍵をMKBの後続の列のヘッダ(たとえば、320)に適用する。410において、コンテンツ消費者は、列ヘッダへの鍵の適用から、復号された列識別子を取得する。この新しい列識別子を使用して、端末鍵が得られるまで、一連の次の鍵を取得するために、ステップ403〜406が繰り返される。ステップ404のいくつかの実施形態では、コンテンツ消費者のデバイス鍵と先の結果として生じた鍵の両方が、MKBの識別されたセルに適用される。たとえば、403において関連する列に対してデバイス鍵が特定されると、結果として生じた鍵は、MKBの対応する列および行に適用されて、中間値を特定する。デバイス鍵は、その後次の鍵を特定するために適用される。いくつかの実施形態では、デバイス鍵は、結果として生じた鍵より前に適用され得る。いくつかの実施形態では、デバイス鍵および先の結果として生じた鍵から次の鍵を取得するために、一連のさらなる関数が適用される。いくつかの実施形態では、先の結果として生じた鍵と併せて使用される暗号関数は、ヘッダ320に含まれる関数識別子によって特定される。
上述のように、ポリモーフィック(polymorphic)鍵行列手法は、多くの暗号化関数が同じブロードキャスト暗号化方式で使用されることを可能にする。コンテンツの許可された消費者が、暗号化関数の記述と結合されたデバイス鍵のセット、および関数と鍵とのマッピングを提供される。記述は、関数識別子、ソルト値、またはコンテンツ消費者が必要な関数を適用するのに十分な何らかの他の情報であってよい。消費者は、そのトラバーサルに必要とされない(すなわち、その行/列の組合せ用ではない)関数の記述を与えられない。関数は変化するので、攻撃者には、未知の鍵を導出するためにどの一方向性関数を解読しなければならないかがわからない。攻撃者がある関数にマッチする答えを取得する場合、攻撃者は、それが正しい関数であるかどうかがわからず、したがって、総当たり攻撃を事実上実施することができない。所与の鍵のための正しい関数についての正確な推測でも、さらなる列へのトラバースに必要な関数に関する情報を攻撃者に提供しない。したがって、本開示のポリモーフィック鍵行列の適用は、未知の鍵を取得することに向けられた総当たり攻撃を事実上不可能にする。いくつかの実施形態では、コンテンツ提供者は、以後の鍵を生成するために、実在のメディア鍵ブロックに適用される関数のすべてを知る。しかしながら、いくつかの実施形態では、既存のコンテンツをアクセスできない状態にすることなく、コンテンツ提供者を変更することによって、既存のシステムにさらなる関数が適用され得る。いくつかの実施形態では、コンテンツ提供者ごとに、異なる関数を割り当てられる。いくつかの実施形態では、使用中の関数は、フォレンジクス・システム(forensics system)に知られ、欠陥を生じた鍵を検出するために使用され得る。
さらに、ブロードキャスト暗号化システムの効果的な暗号化強度のいくつかは、ポリモーフィック・トラバーサル関数に再配置することができ、所与の長さの鍵の強度は、大いに増加する。いくつかの応用では、未知の鍵の保護は、個々のコンテンツ(または、単一メッセージ)の保護よりも重要である。ブロードキャスト暗号化技法は、このような環境において適用され得る。したがって、起動鍵のサイズを削減することができ、その結果として、MKBを使用するシステムにおいてMKBサイズが削減され得る。たとえば、適用される暗号化の強度は、個々のコンテンツをその有効期間(たとえそれがわずか数時間または数日であっても)の間保護するように選択され得る。その結果、集約された復号鍵束サイズは、著しく削減され得る。いくつかの実装において、復号鍵束サイズは、半分以上削減され得る。復号鍵束は、(クライアントではワンタイムの静的鍵および関数ストレージに含まれているのとは対照的に)ブロードキャスト伝送と結合されるので、進行中の伝送オーバヘッドを著しく削減する。
いくつかの実施形態では、行列における各セルのためのトラバーサル関数は異なる。これは、コンテンツ消費者によって要求される空間に関してより大きい鍵を配布することと等しくなる。コンテンツ消費者の空間要求は高いが、暗号化されたコンテンツとともに提供される復号鍵束は小さい。したがって、暗号化されたコンテンツの適切な保護を維持しながら、利用できる帯域幅から有効利用が行われる。
いくつかの実施形態では、トラバーサル関数は、行列において複数のセルに使用される。このような部分ポリモーフィック行列(Partial Polymorphic Matrix)手法では、セルへの関数の様々な割当てを使用することができる。たとえば、各列または各行に異なる関数を使用することができる。別の例として、いくつかの列が1つの関数を有することができると同時に、他の列は行ごとに1つの関数を有する。この開示に従って、セルへの関数の任意の割当てを採用することができる。
上述のように、本開示の主題は、ブロードキャスト暗号化方式において使用されるのに適している。本開示は、CPRM/CPPMなど、既存のブロードキャスト暗号化方式に適用できる。コンテンツ消費者に提供される鍵束に、本開示に従った関数識別子を加えることによって、既存のブロードキャスト暗号化方式が変更され得る。
次に図5を参照すると、本発明の一実施形態による計算ノードの一例の概略図が提供されている。計算ノード10は、好適な計算ノードの一例にすぎず、本明細書に記載する本発明の実施形態の使用または機能の範囲に関していかなる制限を提案することも意図していない。それとは関係なく、計算ノード10は、実装されること、または以上に示す機能のいずれかを行うこと、あるいはその両方が可能である。
計算ノード10には、コンピュータ・システム/サーバ12があり、数多くの他の汎用または特殊用途のコンピューティング・システム環境または構成で動作可能である。コンピュータ・システム/サーバ12とともに使用するのに適している可能性がある、よく知られているコンピューティング・システム、環境、または構成、あるいはその組合せの例には、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、ハンドヘルドもしくはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサベースのシステム、セット・トップ・ボックス、プログラマブル家庭用電化製品、ネットワークPC、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、および上記のシステムもしくはデバイスのいずれかを含む分散クラウド・コンピューティング環境などが含まれるが、これらに限らない。
コンピュータ・システム/サーバ12は、コンピュータ・システムによって実行される、プログラム・モジュールなどの、コンピュータ・システム実行可能命令の一般的な文脈で説明されることがある。一般的に、プログラム・モジュールは、特定のタスクを行うまたは特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、構成要素、論理、データ構造などを含むことができる。コンピュータ・システム/サーバ12は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される分散コンピューティング環境で実践され得る。分散コンピューティング環境では、プログラム・モジュールが、メモリ記憶デバイスを含んだローカルとリモートの両方のコンピュータ・システム記憶媒体に置かれることがある。
図5に示すように、計算ノード10におけるコンピュータ・システム/サーバ12が、汎用コンピューティング・デバイスの形で示される。コンピュータ・システム/サーバ12の構成要素は、1つもしくは複数のプロセッサまたは処理ユニット16と、システム・メモリ28と、システム・メモリ28を含む様々なシステム構成要素をプロセッサ16に結合するバス18とを含むことができるが、これらに限らない。
バス18は、メモリ・バスまたはメモリ・コントローラ、周辺機器用バス、アクセラレーテッド・グラフィックス・ポート(accelerated graphics port)、および様々なバス・アーキテクチャのいずれかを使用するプロセッサまたはローカル・バスなど、いくつかのタイプのバス構造のいずれかの1つまたは複数を表わす。例として、限定ではなく、このようなアーキテクチャには、業界標準アーキテクチャ(ISA:Industry Standard Architecture)バス、マイクロ・チャネル・アーキテクチャ(MCA:Micro Channel Architecture)バス、拡張ISA(EISA:EnhancedISA)バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション(VESA:VideoElectronics Standards Association)ローカル・バス、および周辺構成要素相互接続(PCI:Peripheral Component Interconnect)バスが含まれる。
コンピュータ・システム/サーバ12は、一般に様々なコンピュータ・システム可読媒体を含む。このような媒体は、コンピュータ・システム/サーバ12によってアクセス可能であるいかなる利用可能媒体であってもよく、揮発媒体と不揮発媒体、取り外し可能な媒体と取り外し不可能な媒体をともに含む。
システム・メモリ28は、ランダム・アクセス・メモリ(RAM)30、またはキャッシュ・メモリ32、あるいはその両方など、揮発性メモリの形式のコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム/サーバ12は、他の取り外し可能/取り外し不可能、揮発性/不揮発性の、コンピュータ・システム記憶媒体をさらに含むことができる。単に例として、取り外し不可能な、不揮発性磁気媒体(図示せず、一般に「ハード・ドライブ」と呼ばれる)からの読み取りおよびこれへの書き込みのために、ストレージ・システム34を設けることができる。図示していないが、取り外し可能な不揮発性磁気ディスク(たとえば、「フロッピー(R)・ディスク」)からの読み取りまたはこれへの書き込みのための磁気ディスク・ドライブ、およびCD−ROM、DVD−ROMもしくは他の光媒体など、取り外し可能な不揮発性光ディスクからの読み取りまたはこれへの書き込みのための光ディスク・ドライブを設けることができる。このような場合、1つまたは複数のデータ媒体のインタフェースによって、それぞれがバス18に接続され得る。以下にさらに示して説明するように、メモリ28は、本発明の実施形態の機能を実行するように構成されたプログラム・モジュールのセット(たとえば、少なくとも1つ)を有する少なくとも1つのプログラム製品を含むことができる。
プログラム・モジュール42のセット(少なくとも1つ)を有するプログラム/ユーティリティ40は、例として、限定ではなくメモリ28に、ならびにオペレーティング・システム、1つまたは複数のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データに、記憶することができる。オペレーティング・システム、1つもしくは複数のアプリケーション・プログラム、他のプログラム・モジュール、およびプログラム・データのそれぞれ、またはその何らかの組合せは、ネットワーキング環境の実装を含むことができる。プログラム・モジュール42は、一般に、本明細書に記載する本発明の実施形態の機能または方法、あるいはその両方を実行する。
コンピュータ・システム/サーバ12は、キーボード、ポインティング・デバイス、ディスプレイ24などのような1つもしくは複数の外部デバイス14、またはユーザがコンピュータ・システム/サーバ12と対話できるようにする1つもしくは複数のデバイス、またはコンピュータ・システム/サーバ12が1つもしくは複数の他のコンピューティング・デバイスと通信できるようにする任意のデバイス(たとえば、ネットワーク・カード、モデムなど)、あるいはその組合せと通信することもできる。このような通信は、入力/出力(I/O)インタフェース22を介して行うことができる。さらにコンピュータ・システム/サーバ12は、ローカル・エリア・ネットワーク(LAN)、または一般的なワイド・エリア・ネットワーク(WAN)、またはパブリック・ネットワーク(たとえば、インターネット)、あるいはその組合せのような、1つまたは複数のネットワークと、ネットワーク・アダプタ20を介して通信することができる。図示するように、ネットワーク・アダプタ20は、コンピュータ・システム/サーバ12の他の構成要素とバス18を介して通信する。図示していないが、他のハードウェア構成要素またはソフトウェア構成要素、あるいはその両方を、コンピュータ・システム/サーバ12と併せて使用できることを理解されたい。例には、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、RAIDシステム、テープ・ドライブ、およびデータ・アーカイブ・ストレージ・システムなどが含まれるが、これらに限らない。
当業者には理解されるように、本発明の諸態様は、システム、方法、またはコンピュータ・プログラム製品として具体化されることが可能である。したがって、本発明の諸態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、またはソフトウェアの態様とハードウェアの態様を組み合わせた実施形態の形をとることができ、これらを本明細書ではすべて一般的に「回路」、「モジュール」、または「システム」と呼ぶことがある。さらに、本発明の諸態様は、コンピュータ可読プログラム・コードを包含した1つまたは複数のコンピュータ可読媒体において具体化されるコンピュータ・プログラム製品の形をとることができる。
1つまたは複数のコンピュータ可読媒体の任意の組合せが使用され得る。コンピュータ可読媒体は、コンピュータ可読信号媒体、またはコンピュータ可読記憶媒体であり得る。コンピュータ可読記憶媒体が、たとえば、電子、磁気、光、電磁気、赤外線、または半導体のシステム、装置、またはデバイス、あるいは上記の任意の好適な組合せであってもよいが、これらに限定されない。コンピュータ可読記憶媒体のさらなる具体例(非網羅的リスト)には、1つもしくは複数の配線を有する電気接続、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブル読み出し専用メモリ(EPROMもしくはフラッシュ・メモリ)、光ファイバ、ポータブル・コンパクト・ディスク読み出し専用メモリ(CD−ROM)、光学式記憶デバイス、磁気記憶デバイス、または上記の任意の好適な組合せが含まれる。この文書の文脈において、コンピュータ可読記憶媒体は、命令実行システム、装置、もしくはデバイスによって、またはこれらと関連させて使用するためのプログラムを収めるまたは記憶することができる任意の有形媒体とすることができる。
コンピュータ可読信号媒体は、たとえば、ベースバンドに、または搬送波の一部として、コンピュータ可読プログラム・コードを包含した伝搬データ信号を含むことができる。このような伝搬信号は、電磁気、光、またはその任意の好適な組合せなどの、ただしこれらに限らない、様々な形のいずれかをとることができる。コンピュータ可読信号媒体は、コンピュータ可読記憶媒体ではなく、命令実行システム、装置、もしくはデバイスによって、またはこれらに関連させて使用するためにプログラムを伝える、伝搬する、または伝送することができる任意のコンピュータ可読媒体であってもよい。
コンピュータ可読媒体に包含されたプログラム・コードは、無線、有線、光ファイバ・ケーブル、RFなど、または上記の任意の好適な組合せを含む、ただしこれらに限らない、任意の適切な媒体を使用して送信されてもよい。
本発明の諸態様のための動作を実行するためのコンピュータ・プログラム・コードは、Java(R)、Smalltalk(R)、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの、従来の手続きプログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組合せで書かれてもよい。プログラム・コードは、すべてユーザのコンピュータ上で実行する、スタンドアロン型ソフトウェア・パッケージとして、一部はユーザのコンピュータ上で実行する、一部はユーザのコンピュータ上で実行し、一部はリモート・コンピュータ上で実行する、またはすべてリモート・コンピュータもしくはサーバ上で実行することができる。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)などの、任意のタイプのネットワークを通じてユーザのコンピュータに接続することができ、または(たとえば、インターネット・サービス・プロバイダを使用してインターネットを通じて)外部コンピュータへの接続を行うことができる。
本発明の諸実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図、あるいはその両方を参照して、本発明の諸態様を以下に述べる。フローチャート図またはブロック図、あるいはその両方の各ブロック、およびフローチャート図またはブロック図、あるいはその両方におけるブロックの組合せは、コンピュータ・プログラム命令によって実施され得ることは理解されよう。これらのコンピュータ・プログラム命令は、コンピュータまたは他のプログラマブル・データ処理装置のプロセッサにより実行される命令が、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定される機能/行為を実施するための手段を生み出すように、汎用コンピュータ、専用コンピュータ、または他のプログラマブル・データ処理装置のプロセッサに提供されてマシンを作り出すものであってよい。
これらのコンピュータ・プログラム命令は、コンピュータ可読媒体に格納された命令が、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定される機能/行為を実施する命令を組み込んだ製品を作り出すように、コンピュータ可読媒体に記憶されて、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスに、特定の方法で機能するように指示するものであってもよい。
コンピュータ・プログラム命令は、コンピュータまたは他のプログラマブル装置上で実行される命令が、フローチャートまたはブロック図、あるいはその両方の1つまたは複数のブロックに指定される機能/行為を実施するためのプロセスを提供するように、コンピュータ実施プロセスを作り出すべく、コンピュータ、他のプログラマブル・データ処理装置、または他のデバイスにロードされて、一連の動作ステップをコンピュータ、他のプログラマブル装置、または他のデバイス上で実行させるものであってもよい。
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および動作を示す。この関連で、フローチャートまたはブロック図の各ブロックは、(1つまたは複数の)指定された論理機能を実施するための1つまたは複数の実行可能命令を含むコードのモジュール、セグメント、または一部を表わすことができる。いくつかの代替的な実装では、ブロックに示した機能が図に示した順序を外れて行われ得ることにも留意されたい。たとえば、連続して示した2つのブロックは、実際には実質的に同時に実行されることがあり、またはブロックは、関連する機能に応じて、時には逆の順序で実行されることがある。ブロック図またはフローチャート図、あるいはその両方の各ブロック、およびブロック図またはフローチャート図、あるいはその両方におけるブロックの組合せは、指定された機能または行為を行う専用ハードウェアベースのシステム、あるいは専用ハードウェアおよびコンピュータ命令の組合せによって実施され得ることにも注意されたい。
本発明の様々な実施形態の説明を、例示の目的で提示したが、網羅的であること、または開示する実施形態に限定することを意図していない。説明した実施形態の範囲および趣旨を逸脱することなく、多くの変更形態および変形形態が当業者には明らかとなるであろう。本明細書で使用する用語は、実施形態の原理、実際の応用、または市場で見つけられる技術を超える技術改善を最も良く説明するように、または、当業者が本明細書に開示する実施形態を理解できるように選択した。

Claims (20)

  1. コンピュータにより実施される方法であって、前記コンピュータはメモリにロードしたプログラムをプロセッサにより実行することにより読み取る手段、第1の受け取る手段、第2の受け取る手段、選択する手段、第1の特定する手段、適用する手段、第2の特定する手段、および取得する手段を有し、
    前記方法は、前記コンピュータが、
    前記読み取る手段により、第1の暗号鍵、関連する第1の鍵識別子、および関連する第1の暗号関数識別子を含む鍵束を読み取るステップと、
    前記第1の受け取る手段により、暗号化されたコンテンツを受け取るステップと、
    前記第2の受け取る手段により、それぞれが識別子を有する複数の暗号化された鍵を受け取るステップと、
    前記選択する手段により、前記複数の暗号化された鍵から第1の暗号化された鍵を、前記第1の暗号化された鍵の前記識別子が前記第1の鍵識別子と等しくなるように選択するステップと、
    前記第1の特定する手段により、前記第1の暗号関数識別子に対応する第1の暗号関数を特定するステップと、
    前記適用する手段により、前記第1の暗号鍵を使用して前記第1の暗号化された鍵に前記第1の暗号関数を適用して、第1の中間暗号鍵を取得するステップと、
    前記第2の特定する手段により、前記第1の中間暗号鍵を使用して、コンテンツ暗号鍵を特定するステップと、
    前記取得する手段により、前記暗号化されたコンテンツに前記コンテンツ暗号鍵を適用して、復号されたコンテンツを取得するステップと
    を含む、方法。
  2. 前記復号されたコンテンツが、マルチメディア・データを含む、請求項1に記載の方法。
  3. 前記第1の暗号関数識別子が、ソルト値である、請求項1に記載の方法。
  4. 前記第1の暗号関数識別子が、ランダム・シードである、請求項1に記載の方法。
  5. 前記第1の暗号関数が、ブロック暗号、AES、Blowfish、C2ブロック暗号、Camellia、CAST−128、CAST−256、CLEFIA、Cryptomeria、DES、FEAL、GOST 28147−89、ICE、IDEA、KASUMI、LOKI97、Lucifer、MacGuffin、MAGENTA、MARS、MISTY1、RC2、RC5、RC6、Skipjack、SMS4、TEA、Triple DES、Twofish、およびXTEAからなる群から選択される、請求項1に記載の方法。
  6. 前記第1の鍵識別子および前記複数の暗号化された鍵の前記識別子が、列および行ペアである、請求項1に記載の方法。
  7. 前記第1の鍵識別子および前記複数の暗号化された鍵の前記識別子が、n−ベクトルである、請求項1に記載の方法。
  8. 前記鍵束が、第2の暗号鍵、関連する第2の鍵識別子、および関連する第2の暗号関数識別子を含み、
    前記第1の中間暗号鍵を使用してコンテンツ暗号鍵を特定するステップが、
    前記複数の暗号化された鍵から第2の暗号化された鍵を、前記第2の暗号化された鍵の前記識別子が前記第2の鍵識別子と等しくなるように選択するステップと、
    前記第2の暗号関数識別子に対応する第2の暗号関数を特定するステップと、
    前記第2の暗号鍵を使用して前記第2の暗号化された鍵に前記第2の暗号関数を適用して、第2の中間暗号鍵を取得するステップと、
    前記第2の中間暗号鍵を使用して、前記コンテンツ暗号鍵を特定するステップとを含む、請求項1に記載の方法。
  9. 前記第1の中間暗号鍵を使用してコンテンツ暗号鍵を特定するステップが、前記第1の中間暗号鍵に第3の暗号関数を適用するステップを含む、請求項1に記載の方法。
  10. コンピュータにより実施される方法であって、前記コンピュータはメモリにロードしたプログラムをプロセッサにより実行することにより第1の提供する手段、第2の提供する手段、および第3の提供する手段を有し、
    前記方法は、前記コンピュータが、
    前記第1の提供する手段により、第1の暗号鍵、関連する第1の鍵識別子、および関連する第1の暗号関数識別子を含む鍵束を提供するステップと、
    前記第2の提供する手段により、暗号化されたコンテンツを提供するステップと、
    前記第3の提供する手段により、それぞれが鍵識別子を有する複数の暗号化された鍵を提供するステップとを含み
    ここで前記暗号化されたコンテンツ
    前記複数の暗号化された鍵から第1の暗号化された鍵を、前記第1の暗号化された鍵の前記識別子が前記第1の鍵識別子と等しくなるように選択し、
    前記第1の暗号関数識別子に対応する第1の暗号関数を特定し、
    前記第1の暗号鍵を使用して前記第1の暗号化された鍵に前記第1の暗号関数を適用して、第1の中間暗号鍵を取得し、
    前記第1の中間暗号鍵を使用して、コンテンツ暗号鍵を特定し、
    前記コンテンツ暗号鍵を前記暗号化されたコンテンツに適用することによって復号できる方法。
  11. 前記暗号化されたコンテンツが、暗号化されたマルチメディア・データを含む、請求項10に記載の方法。
  12. 前記第1の暗号関数識別子が、ソルト値である、請求項10に記載の方法。
  13. 前記第1の暗号関数識別子が、ランダム・シードである、請求項10に記載の方法。
  14. 前記第1の暗号関数が、ブロック暗号、AES、Blowfish、C2ブロック暗号、Camellia、CAST−128、CAST−256、CLEFIA、Cryptomeria、DES、FEAL、GOST 28147−89、ICE、IDEA、KASUMI、LOKI97、Lucifer、MacGuffin、MAGENTA、MARS、MISTY1、RC2、RC5、RC6、Skipjack、SMS4、TEA、Triple DES、Twofish、およびXTEAからなる群から選択される、請求項10に記載の方法。
  15. 前記第1の鍵識別子および前記複数の暗号化された鍵の前記識別子が、列および行ペアである、請求項10に記載の方法。
  16. 前記第1の鍵識別子および前記複数の暗号化された鍵の前記識別子が、n−ベクトルである、請求項10に記載の方法。
  17. 前記鍵束が、第2の暗号鍵、関連する第2の鍵識別子、および関連する第2の暗号関数識別子を含み、前記第1の中間暗号鍵を使用してコンテンツ暗号鍵を特定するステップが、前記複数の暗号化された鍵から第2の暗号化された鍵を、前記第2の暗号化された鍵の前記識別子が前記第2の鍵識別子と等しくなるように選択するステップと、
    前記第2の暗号関数識別子に対応する第2の暗号関数を特定するステップと、
    前記第2の暗号鍵を使用して前記第2の暗号化された鍵に前記第2の暗号関数を適用して、第2の中間暗号鍵を取得するステップと、
    前記第2の中間暗号鍵を使用して、前記コンテンツ暗号鍵を特定するステップとを含む、請求項10に記載の方法。
  18. 前記第1の中間暗号鍵を使用してコンテンツ暗号鍵を特定するステップが、前記第1の中間暗号鍵に第3の暗号関数を適用するステップを含む、請求項10に記載の方法。
  19. ブロードキャスト暗号化のためのコンピュータ・プログラムであって、前記コンピュータ・プログラムは、コンピュータのメモリに読み出されてプロセッサにより実行されることにより前記コンピュータに、読み取る手段、第1の読み取り手段、第2の読み取り手段、第3の読み取り手段、選択する手段、第1の特定する手段、適用する手段、第2の特定する手段、および取得する手段を提供し、
    前記コンピュータ・プログラムは、前記コンピュータに
    前記第1の読み取り手段により、第1の暗号鍵と、関連する第1の鍵識別子と、関連する第1の暗号関数識別子とを含む鍵束を読み取り、
    前記第2の読み取り手段により、暗号化されたコンテンツを読み取り、
    前記第3の読み取り手段により、それぞれが識別子を有する複数の暗号化された鍵を読み取り、
    前記選択する手段により、前記複数の暗号化された鍵から第1の暗号化された鍵を、前記第1の暗号化された鍵の前記識別子が前記第1の鍵識別子と等しくなるように選択し、
    前記第1の特定する手段により、前記第1の暗号関数識別子に対応する第1の暗号関数を特定し、
    前記適用する手段により、前記第1の暗号鍵を使用して前記第1の暗号化された鍵に前記第1の暗号関数を適用して、第1の中間暗号鍵を取得し、
    前記第2の特定する手段により、前記第1の中間暗号鍵を使用して、コンテンツ暗号鍵を特定し、
    前記取得する手段により、前記暗号化されたコンテンツに前記コンテンツ暗号鍵を適用して、復号されたコンテンツを取得する
    ことを実行させる、ブロードキャスト暗号化のためのコンピュータ・プログラム。
  20. 前記鍵束が、コンピュータ可読記憶媒体においてコード化される、請求項19に記載のコンピュータ・プログラム。
JP2016524161A 2013-10-18 2014-08-25 ブロードキャスト暗号化の方法、およびコンピュータ・プログラム Active JP6282343B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/057,203 US9363075B2 (en) 2013-10-18 2013-10-18 Polymorphic encryption key matrices
US14/057,203 2013-10-18
PCT/JP2014/004356 WO2015056387A1 (en) 2013-10-18 2014-08-25 Polymorphic encryption key matrices

Publications (2)

Publication Number Publication Date
JP2016541150A JP2016541150A (ja) 2016-12-28
JP6282343B2 true JP6282343B2 (ja) 2018-02-21

Family

ID=52826179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016524161A Active JP6282343B2 (ja) 2013-10-18 2014-08-25 ブロードキャスト暗号化の方法、およびコンピュータ・プログラム

Country Status (5)

Country Link
US (2) US9363075B2 (ja)
JP (1) JP6282343B2 (ja)
CN (1) CN105637801B (ja)
GB (1) GB2533748A (ja)
WO (1) WO2015056387A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015145211A1 (en) * 2014-03-27 2015-10-01 Kam Fu Chan Token key infrastructure and method for cloud services
US9438421B1 (en) * 2014-06-27 2016-09-06 Amazon Technologies, Inc. Supporting a fixed transaction rate with a variably-backed logical cryptographic key
US10148639B2 (en) * 2016-05-24 2018-12-04 Microsoft Technology Licensing, Llc Distinguishing vertical brute force attacks from benign errors
EP3281598A1 (en) 2016-08-09 2018-02-14 Koninklijke Philips N.V. Light based skin treatment device and method
CN108259160B (zh) * 2016-12-28 2021-06-18 湖北高瞻科技有限责任公司 数据通讯加密方法及装置
US20180212766A1 (en) * 2017-01-24 2018-07-26 Six Degrees Space Ltd Asymmetric content protection of large datastreams
CN108462579B (zh) * 2018-05-23 2020-12-25 东南大学 一种基于密钥矩阵的密钥分配方法
US11392350B2 (en) * 2019-06-18 2022-07-19 Oracle International Corporation Parallel generation of pseudorandom number sequences using multiple generators with brined initial states

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5185796A (en) 1991-05-30 1993-02-09 Motorola, Inc. Encryption synchronization combined with encryption key identification
GB2288519A (en) * 1994-04-05 1995-10-18 Ibm Data encryption
US6118873A (en) 1998-04-24 2000-09-12 International Business Machines Corporation System for encrypting broadcast programs in the presence of compromised receiver devices
AU1513301A (en) * 1999-11-30 2001-06-12 Bording Data A/S An access control system
US7107462B2 (en) * 2000-06-16 2006-09-12 Irdeto Access B.V. Method and system to store and distribute encryption keys
US7249384B1 (en) * 2000-08-16 2007-07-24 Matsushita Electric Industrial Co., Ltd. Copy-resistant read-only digital optical disc and adaptable player
US6985591B2 (en) * 2001-06-29 2006-01-10 Intel Corporation Method and apparatus for distributing keys for decrypting and re-encrypting publicly distributed media
US7636724B2 (en) * 2001-08-31 2009-12-22 Peerify Technologies LLC Data storage system and method by shredding and deshredding
GB0129928D0 (en) 2001-12-14 2002-02-06 Ibm Method and apparatus for encryption of data
US7184550B2 (en) * 2002-08-15 2007-02-27 Intel Corporation Method and apparatus for simultaneous decryption and re-encryption of publicly distributed content via stream ciphers
EP1648170A1 (fr) * 2004-10-15 2006-04-19 Nagracard S.A. Méthode de transmission de messages de gestion par un centre de gestion à destination d'une pluralité d'unités multimédia
JP2006211343A (ja) * 2005-01-28 2006-08-10 Renesas Technology Corp 認証方式及び認証システム
WO2006082961A1 (ja) * 2005-02-07 2006-08-10 Matsushita Electric Industrial Co., Ltd. 記録装置、再生装置、集積回路及び制御プログラム
JP4774509B2 (ja) * 2005-05-13 2011-09-14 国立大学法人お茶の水女子大学 擬似乱数発生システム
US8978154B2 (en) * 2006-02-15 2015-03-10 Samsung Electronics Co., Ltd. Method and apparatus for importing content having plurality of parts
CN101267295A (zh) * 2006-10-06 2008-09-17 美国博通公司 用于安全通信系统中处理信息的方法和系统
JP2008113172A (ja) * 2006-10-30 2008-05-15 Hitachi Ltd コンテンツ送信装置、コンテンツ受信装置及びコンテンツ暗号化方法
JP5496880B2 (ja) * 2007-05-22 2014-05-21 イルデト・コーポレート・ビー・ヴイ データセキュリティ
WO2009027126A1 (en) * 2007-08-24 2009-03-05 International Business Machines Corporation System and method for protection of content stored in a storage device
JP2009135871A (ja) * 2007-11-05 2009-06-18 Sumitomo Electric Ind Ltd 暗号鍵生成方法
US20100027790A1 (en) * 2007-12-20 2010-02-04 Balaji Vembu Methods for authenticating a hardware device and providing a secure channel to deliver data
US9710623B2 (en) * 2008-03-05 2017-07-18 Irdeto B.V. Cryptographic system
JP2010074537A (ja) 2008-09-18 2010-04-02 Canon Inc 放送受信装置、その制御方法、放送送信装置、及びその制御方法
JP2010074637A (ja) * 2008-09-19 2010-04-02 Alps Electric Co Ltd アップダウンカウンタ装置
KR101305740B1 (ko) * 2010-09-10 2013-09-16 삼성전자주식회사 비휘발성 저장 장치의 인증 방법 및 장치
US8538029B2 (en) * 2011-03-24 2013-09-17 Hewlett-Packard Development Company, L.P. Encryption key fragment distribution

Also Published As

Publication number Publication date
CN105637801A (zh) 2016-06-01
US20170085373A1 (en) 2017-03-23
US10476669B2 (en) 2019-11-12
US20150110273A1 (en) 2015-04-23
CN105637801B (zh) 2018-09-25
JP2016541150A (ja) 2016-12-28
WO2015056387A1 (en) 2015-04-23
US9363075B2 (en) 2016-06-07
GB2533748A (en) 2016-06-29

Similar Documents

Publication Publication Date Title
JP6282343B2 (ja) ブロードキャスト暗号化の方法、およびコンピュータ・プログラム
CN109635586B (zh) 媒体文件加密密钥管理方法、系统、设备及存储介质
US10721062B2 (en) Utilizing error correction for secure secret sharing
KR101324825B1 (ko) 메시지 인증 코드 사전 연산 방법 및 시스템
US20170163413A1 (en) System and Method for Content Encryption in a Key/Value Store
US9866373B2 (en) Polymorphic encryption key allocation scheme
US10102386B2 (en) Decrypting content protected with initialization vector manipulation
CN112019328B (zh) Ip地址的加密方法、装置、设备和存储介质
CN106789008B (zh) 对可共享的加密数据进行解密的方法、装置及系统
CN112019323A (zh) 数据加密、解密方法及装置、存储介质及电子设备
CN116389137A (zh) 一种基于网络信息安全的数据加密方法及系统
CN114760052A (zh) 银行物联网平台密钥生成方法、装置、电子设备及介质
CN102480353A (zh) 口令认证和密钥保护的方法
CN111798236B (zh) 交易数据加、解密方法、装置及设备
US8862893B2 (en) Techniques for performing symmetric cryptography
CN116132041A (zh) 密钥处理方法、装置、存储介质及电子设备
US11997189B2 (en) Encrypted communication using counter mode encryption and secret keys
CN116781265A (zh) 一种数据加密的方法和装置
CN106533674B (zh) 加密数据的共享方法、装置及系统
Maheswari et al. Enhancing Blueshift Encryption Method by Overheads Optimization
CN117061128B (zh) 数据置换的验证方法、装置、存储介质及电子设备
US20240078151A1 (en) Data security method and data security system
CN117955636A (zh) 一种高安全性的敏感数据存取方法和系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171204

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180123

R150 Certificate of patent or registration of utility model

Ref document number: 6282343

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150