JP2004318154A - ブロック暗号の暗号化法を用いたデジタルコンテンツの保護関連出願本出願は、2003年4月14日に出願された米国仮特許出願番号60/462,987号についての優先権を主張する。著作権表示/許諾この明細書の開示内容の一部は、著作権保護の対象となるマテリアルを含む。著作権者は、この明細書が特許商標庁への特許出願又は記録であると認められるファックスコピー又は特許開示に対しては異議を唱えないが、それ以外のあらゆる全ての著作権の権利を保有する。以下の表示は、後述するソフトウェア及びデータ、並びに添付の図面に適用される。著作権(c)2003:全ての著作権はソニーエレクトロニクスインク社に帰属する(Copyright(c)2003,SonyElectronics,Inc.,AllRightsReserved)。 - Google Patents

ブロック暗号の暗号化法を用いたデジタルコンテンツの保護関連出願本出願は、2003年4月14日に出願された米国仮特許出願番号60/462,987号についての優先権を主張する。著作権表示/許諾この明細書の開示内容の一部は、著作権保護の対象となるマテリアルを含む。著作権者は、この明細書が特許商標庁への特許出願又は記録であると認められるファックスコピー又は特許開示に対しては異議を唱えないが、それ以外のあらゆる全ての著作権の権利を保有する。以下の表示は、後述するソフトウェア及びデータ、並びに添付の図面に適用される。著作権(c)2003:全ての著作権はソニーエレクトロニクスインク社に帰属する(Copyright(c)2003,SonyElectronics,Inc.,AllRightsReserved)。 Download PDF

Info

Publication number
JP2004318154A
JP2004318154A JP2004119465A JP2004119465A JP2004318154A JP 2004318154 A JP2004318154 A JP 2004318154A JP 2004119465 A JP2004119465 A JP 2004119465A JP 2004119465 A JP2004119465 A JP 2004119465A JP 2004318154 A JP2004318154 A JP 2004318154A
Authority
JP
Japan
Prior art keywords
encryption
data
initialization vector
stride
encrypted
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
JP2004119465A
Other languages
English (en)
Inventor
Pierre Chavanne
シャバンヌ、ピエール
John Hwa
ホワ、ジョン
Lakshmana Pamarthy
パマーシー、ラクシュマナ
Carl Quinn
クイン、カール
Ralph Hill
ヒル、ラルフ
Eric Swenson
スウェンソン、エリック
Kisei Futagami
基誠 二神
Atsushi Mitsuzawa
敦 光澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Electronics Inc
Original Assignee
Sony Electronics 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 Sony Electronics Inc filed Critical Sony Electronics Inc
Publication of JP2004318154A publication Critical patent/JP2004318154A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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

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)

Abstract

【課題】ブロック暗号化法の特別な応用例を用いたデジタルコンテンツの保護方法を提供する。
【解決手段】デジタルコンテンツは、暗号鍵と、初期化ベクトルとを用いて暗号化される。デジタルコンテンツは、複数のストライドを含み、各ストライドは、暗号化されるデータストリングと、暗号化されるデータブロックとを含む。各データブロックの暗号化のために用いられる初期化ベクトルは、ストライド内のデータストリングから導出される。更に、初期化ベクトルは、シード値と各ストライドのデータストリングとの排他的論理和演算によって算出される。
【選択図】図1

Description

本発明は、暗号を用いたデジタルコンテンツの保護に関し、特に、暗号文ブロック連鎖(cipher block chaining)方式を用いたデジタルコンテンツの保護に関する。
デジタル著作権管理(Digital Rights Management)は、著作権が発生しているマテリアルを暗号によって保護し、通常はコンテンツとは独立して配信される規則によってマテリアルへのアクセスを管理する手法について用いられる用語である。保護されたコンテンツには、多くの場合、正当に取得されたライセンス(アクセスを管理する規則が組み込まれている)と、適切なライセンスが利用できる場合にはコンテンツを解釈(interpret)及び解除(release)するソフトウェアとがなければアクセスできない。この技術は、音楽レーベル及びこの他の音楽/コンテンツ販売業者に対して、自らのコンテンツを保護するための核となる技術として用いることが広く奨励されている。
特にストリーミング可能なメディア(例えば、コンテンツ全体が受信された後ではなく、又はローカルファイルから読み出されるのではなく、ネットワークを介してストリーミングされ、表現(rendering)(例えば再生)される音楽又は映像等のメディア)では、コンテンツの暗号化にある種の問題が生じる。これらの場合、暗号化はリアルタイムで行う必要があり、損失があるトランスポートプロトコルでは、送信されたコンテンツの全てがクライアントに受信されない場合もある。例えば、暗号化されたデータのブロックが失われると、ファイル全体を読み出せないこともある。更に、ある種の暗号化技術では、デジタルコンテンツのファイルのサイズが大きくなってしまうという問題もある。
ブロック暗号の暗号化法(block cipher cryptography)の特別な応用例を用いたデジタルコンテンツの保護を提供する。デジタルコンテンツは、暗号鍵と、算出された初期化ベクトル(initialization vector)とを用いて暗号化される。デジタルコンテンツは、複数のストライドを含み、各ストライドは、暗号化されるデータストリング(string of data)と、暗号化されるデータブロック(block of data)とを含む。データブロックを暗号化するために用いられる算出された初期化ベクトルは、暗号化されるストライド内のデータストリングから導出される。更に、初期化ベクトルは、シード値と各ストライドのデータストリングとの排他的論理和演算を実行することによって算出される。
以下、添付の図面を用いて、本発明の実施例を詳細に説明する。添付の図面においては、類似した要素には、同じ参照符号を付す。添付の図面は、本発明を実施することができる特定の実施例を例示的に示している。これらの実施例については、当業者が本発明を実施することができるよう、詳細に説明するが、この他の実施例も可能であり、本発明の範囲から逸脱することなく、論理的、機械的、電気的、機能的及びこの他の変更を行うことができる。したがって、以下の詳細な説明は、限定的には解釈されず、本発明の範囲は、添付の請求の範囲によってのみ定義される。
図1は、ネットワーク環境100の一例を示している。ネットワーク環境100は、デジタルコンテンツプロバイダサーバ10と、クライアント装置20と、クライアント装置25と、クライアント装置30とを備えている。デジタルコンテンツプロバイダサーバ10は、例えばインターネットであるネットワーク40の一部であり、又はネットワーク40に接続されており、クライアント又はサーバコンピュータとして、各クライアント装置20、25、30とデータを交換する。なお、本発明はインターネットの使用に限定されるものではなく、直接接続された及びプライベートネットワークに本発明を適用してもよいことは明らかである。
デジタルコンテンツプロバイダサーバ10には、デジタル音楽、電子書籍、ソフトウェアソースコード、映画等の著作権が消滅した(public domain)又は著作権保護されたデジタルコンテンツが保存されている。更に、デジタルコンテンツプロバイダサーバ10は、デジタル権利管理コンポーネント5を備えている。デジタル権利管理コンポーネント5は、クライアント装置20、25、30を使用するデジタルコンテンツの1人以上の正規のユーザが用いる生のデジタルコンテンツを暗号化する。
各クライアント装置20、25、30は、復号コンポーネント7と、デジタルコンテンツ再生コンポーネント8とを備える。復号コンポーネント7は、暗号化されたデジタルコンテンツ(例えば、デジタル権利管理コンポーネント5によって暗号化されたデジタルコンテンツ)を復号する機能を提供する。デジタルコンテンツ再生コンポーネント8は、デジタルコンテンツを表現(rendering)する機能を提供する。各クライアント装置20、25、30は、例えばパーソナルコンピュータ、携帯型デジタル音楽プレーヤ、携帯型デジタル映像プレーヤを始めとする、デジタルコンテンツを表現するために用いられる周知の機器のいずれであってもよい。
図2は、図1に示すネットワーク環境100において、デジタルコンテンツを交換する処理フロー200の一例を示している。
ステップ210において、デジタル権利管理コンポーネント5は、生のデジタルコンテンツを受け取る。生のデジタルコンテンツは、例えば、著作権保護されたデジタル音楽ファイル又は映画ファイル等であってもよい。
ステップ220において、デジタル権利管理コンポーネント5は、図3A、図3B、図3C、図3D、図3E、及び図4を用いて後述するように、ブロック暗号の暗号化法及びデジタルコンテンツに基づいて算出される初期化ベクトル値(initialization vector value)を用いて生のデジタルコンテンツを暗号化する。これにより、例えば、暗号化の際に複数の初期化ベクトルを加算する必要がなくなり、デジタルコンテンツのサイズを大きくしないで済む。
ステップ230において、デジタル権利管理コンポーネント5は、ネットワーク40を介して、暗号化されたデジタルコンテンツをクライアント装置(例えば、クライアント装置20)に送信する。また、デジタル権利管理コンポーネント5は、暗号化されたデジタルコンテンツを復号するための復号鍵も送信する。復号鍵の値は、暗号鍵と同じであってもよい。デジタル権利管理コンポーネント5は、復号鍵を暗号化されたデジタルコンテンツの一部として、又は暗号化されたデジタルコンテンツとは別に送信してもよい。更に、デジタル権利管理コンポーネント5は、シード値(例えばパラメータの値)を暗号化されたデジタルコンテンツの一部として、又は暗号化されたデジタルコンテンツとは別に送信してもよい。
ステップ235において、クライアント装置20は、暗号化されたデジタルコンテンツを受信する。
ステップ240において、クライアント装置20の復号コンポーネント7は、図6を用いて後に詳細に説明するように、少なくとも復号鍵と、デジタルコンテンツに基づいて算出された初期化ベクトルとを用いて、デジタルコンテンツを復号する。
ステップ250において、クライアント装置20のデジタルコンテンツ再生コンポーネント8は、復号されたデジタルコンテンツを再生する。例えば、デジタルコンテンツ再生コンポーネント8は、復号された音楽ファイルを再生するための音楽再生ソフトウェアアプリケーションであってもよい。
以下、暗号化及び復号アルゴリズム処理の様々なパラメータを定義し、これらのパラメータの値を用いて、ストリーミングメディアにアルゴリズム処理を適用する様々な具体例を説明する。具体的には、以下では、ここで説明する算出された初期化ベクトル(initialization vector:以下、IVという。)値を用いた、ブロック暗号の暗号化法(block cipher cryptology)に基づいてデジタルコンテンツを暗号化及び復号する暗号化及び復号論理ユニット(例えば、アクセスユニット)について説明する。ブロック暗号は、1ビット毎ではなく、データブロック(例えば、64個の連続するビット)内の全てのビットに対して、暗号鍵(cryptographic key)(例えば、暗号鍵(encryption key))及びアルゴリズムを同時に適用して、平文を暗号化する(暗号文を生成する)方法である。なお、平文は暗号化されていないデータを表し、暗号文は暗号化されたデータを表す技術用語である。
後述するように、この方法では、デジタルコンテンツを論理ユニット(例えば、アクセスユニット)に再分割し、ブロック暗号の暗号化法を用いて、各論理ユニットを個別に暗号化する。これにより、(デジタルコンテンツの伝送中に)暗号化されたデジタルコンテンツファイルのある部分が失われても、デジタルコンテンツの残りの部分の復号を次の論理ユニットから再開することができる。
図3Aは、複数のアクセスユニットを有するデジタルコンテンツ300の具体例を示している。具体的には、デジタルコンテンツ300は、アクセスユニット310と、アクセスユニット315と、アクセスユニット320と、アクセスユニット325とを含んでいる。これらのアクセスユニットは、各アクセスユニットのコンテンツがデジタルコンテンツの論理的部分(logical subdivision)であり、データコンテンツ自体に関する情報(knowledge)がなくても定義及びアドレス指定できるように選択される。また、アクセスユニットは、例えば、デジタルコンテンツの伝送中にデジタルコンテンツの一部が失われても、再生に著しい影響がないような十分に小さなサイズに設定される。アクセスユニットは、デジタルコンテンツの固有の特性(例えば、MPEG4によって定義されたアクセスユニット)であってもよく、又は復号コンポーネント7のパラメータとして定義してもよい。各アクセスユニットは、複数のストライド(stride)を含んでいる。
図3Bは、複数のストライドを有するデジタルコンテンツ300のアクセスユニット310の具体例を示している。ストライドとは、アクセスユニット内の所定の長さのデータである。具体的には、アクセスユニット310は、ストライド340と、ストライド345と、ストライド350と、ストライド355とを含んでいる。各ストライド340、345、350、355内には、暗号化されるデータブロックが存在する。以下、1つ以上のブロック暗号モードによってストライドの一部を暗号化する手法について説明する。これらのモードとの一例としては、例えば、暗号化されるデータストリング(string of data)をブロック(例えば、16バイトブロック)に分割し、各ブロックを個別に暗号化する電子コードブロック(electronic codebook:以下、ECBという。)モード等がある。
暗号化モードのこの他の例としては、平文の各ブロックを複数のブロック(例えば、16バイトブロック)に分割し、暗号化されるブロックの前の暗号文ブロックとXOR演算を行う暗号文ブロック連鎖(cipher block chaining:以下、CBCという。)モードがある。同じ平文の暗号化を繰り返して同一の暗号文を生成してしまうことを防ぐために、CBCでは、通常、異なる初期化ベクトル(initialization vector:以下、IVという。)を用いて、各暗号化シーケンス(例えば、アクセスユニット)を開始する。
各暗号化ブロックシーケンス(又は倫理ユニット)に初期化ベクトルを含めることによって、復号コンポーネント7に配信される暗号化されたデジタルコンテンツに1つ以上の初期化ベクトルが組み込まれるため、ファイルサイズが大きくなってしまう。これは、デジタルコンテンツがデジタルファイル内の特定の位置(例えば、デジタル映画ファイル内のシーンの位置、音楽コンパクトディスク(compact disk:CD)内の特定の曲トラックの位置等)を示すインデックスを含んでいる場合に問題となる。すなわち、初期化ベクトルを含ませることにより、物理ヘッダ位置がずれてしまい、(ファイル伝送前に物理ヘッダ位置を再計算しなければ)ファイルが読み取り不可能になってしまう虞がある。
一実施例においては、デジタル権利管理コンポーネント5は、選択されるデータストリングがアクセスユニット毎に十分異なり、暗号化される各アクセスユニットついてそれぞれ異なる初期化ベクトルが生成されるとの仮定に基づき、各アクセスユニットについて暗号化されるデータの各ストライドから選択されたデータストリングからアルゴリズム的に(algorithmically)選択された初期化ベクトルを用いて、生のデジタルコンテンツを暗号化する。
図3Cは、アクセスユニット310からIV値を算出する手法の一例を示している。ここでは、各ストライドの最初の16バイトをデータストリング342、データストリング347、データストリング352、データストリング357として示している。図3Dは、図3Cに示す具体例において、IVを算出する処理フロー360を示している。
ステップ365において、デジタル権利管理コンポーネント5は、シード値328を取得する。シード値は、初期化ベクトルの初期値を定義する。
ステップ370において、デジタル権利管理コンポーネント5は、シード値328と、アクセスユニット310の第1のストライド340のデータストリング342との排他的論理和演算(exclusive disjunction function)(例えば、XOR演算)を実行する。
ステップ375において、デジタル権利管理コンポーネント5は、アクセスユニット310内に更なるストライドがあるか否かを判定する。アクセスユニット310内に更なるストライドがある場合、制御はステップ380に進む。一方、アクセスユニット310内に更なるストライドがない場合、制御はステップ385に進む。この具体例では、デジタル権利管理コンポーネント5は、次のストライドとして、ストライド345が存在すると判定する。
ステップ380において、デジタル権利管理コンポーネント5は、現在の初期IV値と、ストライド345のデータストリング347とのXOR演算を行い、更新された初期IV値を算出する。続いて、処理は、ステップ375に戻り、データストリング352、357について同様の処理が繰り返される。
ステップ385において、デジタル権利管理コンポーネント5は、算出されたIV値305を現在の初期IV値に設定する。一実施例においては、算出されたIV値は、デジタル権利管理コンポーネント5の基底にあるAES CBC暗号(AES CBC cipher)に供給され、これにより、アクセスユニット310内の特定のデータブロックが暗号化される。
なお、本発明は、各ストライドの最初の16バイトに基づいて、算出されたIV値を導出する上述の実施例に限定されるものではない。例えば、他の実施例においては、算出されたIV値は、復号ソフトウェアがその位置を検出することができる、アクセスユニットの一組の実行特定の部分(例えば、16バイトデータストリング)から導出してもよい。好ましくは、特定の部分は、各アクセスユニットに対して、合理的に固有なIV値が算出されるように、十分なランダム性を生じる高い可能性を有する必要がある。
なお、この実施例では、シード値328を用いているが、IV値を算出する際、シード値328は必要ではなく、すなわち、算出されたIV値は、シード値328を用いなくても導出することができる。例えば、IV値は、シード値328を含むことなく、アクセスユニットの各ストライドの最初の16バイトのXOR演算を行うことによって導出してもよい。
図3Eは、図3C及び図3Dを用いて説明した、算出されたIV値305を用いて、アクセスユニット310を暗号化する処理の一例を示している。図3Fは、図3Cに示すアクセスユニット310を暗号化する処理フロー390の一例を示している。以下、暗号鍵の値(Kc)及び算出されたIV値を入力パラメータとして用いる暗号化処理について説明する。
ステップ392において、デジタル権利管理コンポーネント5は、上述のようにして算出されたIV値305を受け取る。
ステップ394において、デジタル権利管理コンポーネント5は、算出されたIV値305及び暗号鍵82(Kc)を用いて、データブロック344、349、354、359を暗号化(85)する。一実施例においては、暗号鍵の値は、ランダムに生成された16バイト(128ビット)の値であり、AESアルゴリズムの暗号鍵として用いられている。データブロック344、349、354、359は、暗号文ブロック連鎖のブロック暗号モード(cipher block chaining block cipher mode)によって暗号化される。これにより、暗号化されたデータブロック344c、349c、354c、359cが生成される。
ステップ396において、データストリング342、347、352、357を暗号化する。データストリング342、347、352、357は、電子コードブロックのブロック暗号モード(electronic code book block cipher mode)によって暗号化する。これにより、暗号化されたデータストリング342c、347c、352c、357cが生成される。
処理フロー360、390は、暗号化されるデジタルコンテンツのアクセスユニット毎に繰り返し行ってもよい。ここで、このような処理では、デジタルコンテンツ300のサイズは大きくならず、ヘッダ位置がずれることもない。すなわち、暗号化されたデジタルコンテンツのサイズは、暗号化されていないデジタルコンテンツのサイズのままである。これは、暗号化されたデジタルコンテンツが、例えば先に暗号化したストライド又はタイムスタンプ等の他のソースからの初期化ベクトルを含まないためである。更に、後述するように、復号時においては、IVを再構築するために必要なデータは、暗号文ブロックから得ることができる。
一具体例においては、デジタル権利管理コンポーネント5は、一般的にAESと呼ばれる次世代暗号化規格(Advanced Encryption Standard)に基づく暗号化アルゴリズムを有する。AESは、128ビット(例えば、16バイト)のブロックサイズと128、192及び256ビットの鍵サイズを用いるブロック暗号化方式である。但し、本発明は、AESの使用に限定されるものではない。当業者に周知の他のアルゴリズムを用いてもよいが、説明を簡潔にするため、それらの全てについては説明しない。
一実施例においては、デジタル権利管理コンポーネント5及び復号コンポーネント7は、暗号鍵の値及び算出されたIV値に加えて、複数のパラメータ値を用いて、デジタルコンテンツの暗号化及び復号を行う。このようなパラメータ値としては、これらに限定されるものではないが、アクセスユニットサイズ値、暗号化ストライドサイズ値、完全暗号化値(complete encryption value)、暗号化チャンクオフセット値(encryption chunk offset value)、暗号化チャンクサイズ値(encryption chunk size value)、IVストライドカウント値等がある。
アクセスユニットサイズ値は、デジタル権利管理コンポーネント5によって処理されるアクセスユニットのサイズを示す値である。一実施例においては、各アクセスユニットのサイズが異なっていてもよく、アクセスユニットの境界は、当業者に周知のように、識別可能である。
暗号化ストライドサイズ値は、ストライドのデータ長を示す値である。一実施例においては、暗号化ストライドサイズ値の標準値は、512バイトである。アクセスユニットは、暗号化ストライドサイズ値の整数倍(even multiple)である必要はない。したがって、アクセスユニットの最後のストライドは、暗号化ストライドサイズ値より短くなる場合もある。
完全暗号化値は、デジタルコンテンツファイルに適用される暗号化のパーセンテージ又はデジタルコンテンツファイルに適用された暗号化のパーセンテージを識別するために用いられるフラグである。以下では、100%の暗号化及び25%の暗号化を行う具体例を説明する。但し、本発明は、これらの暗号化パーセンテージに限定されるものではない。これらに代えて、デジタル権利管理ソフトウェアは、他のパーセンテージによってデジタルコンテンツを暗号化してもよい。
暗号化チャンクオフセット値は、後述するように、暗号化されるデータブロックのストライドの最初からのオフセットを示す値である。
IVストライドカウント値は、算出されたIV値に貢献したストライドの数を示す値である。一実施例においては、AES CBC処理において用いられるIV値(例えば、算出されたIV値)は、暗号化されるアクセスユニットのコンテンツから算出される。アクセスユニットのサイズが(IVストライドカウント値×暗号化ストライドサイズ値)より小さい場合、デジタル権利管理コンポーネント5は、IVストライドカウント値を調整し、アクセスユニット内の同数の完全なストライドのみがIV値の算出に貢献するようにする。最後のストライドが部分的である(例えば、最後のストライドが暗号化ストライドサイズ値より短い)場合、IVストライドカウント値は、この部分的ストライドがIV値の算出に貢献するように設定される。更に、部分的ストライドは、少なくとも16バイトの長さを有している場合、IV値の算出に貢献する。この他の場合、そのストライドは、IV値の算出への貢献に関しては無視される。この実施例では、IV値の算出に貢献するブロックの数を4個に制限している。
暗号化チャンクサイズ値は、暗号化されるデータブロックのサイズを示す値である。一具体例においては、暗号化チャンクサイズ値は、(暗号化ストライドサイズ値−暗号化チャンクオフセット値)以下である必要がある。AESに準拠するためには、ブロックサイズは16バイト(鍵サイズに等しいサイズ)以上である必要があるため、暗号化チャンクサイズ値は、16バイト以上である必要がある。更に、暗号化チャンクサイズ値は、AESブロックサイズ(16バイト)の整数倍(multiple)である必要がある。例えば、一実施例においては、496バイトと128バイトの2つの暗号化チャンクサイズ値を用いる。100%の暗号化では、完全暗号化パラメータ(complete encryption parameter)は、「真(true)」に設定され、ストライド全体(512バイト)が暗号化される。このうち、496バイトは、AES CBCを用いて暗号化され、IV値の算出に貢献する16バイトのコンテンツは、AES EBCを用いて暗号化される。
図4は、デジタル権利管理コンポーネント5よって、パラメータ値に基づいて、著作権保護された生のデジタルコンテンツを暗号化する処理フロー400の一例を示している。
ステップ405において、デジタル権利管理コンポーネント5は、暗号化されるアクセスユニットのアクセスユニットサイズ値を判定する。このアクセスユニットサイズ値が32バイトより小さい場合、制御はステップ410に進む。アクセスユニットサイズ値が32バイト以上である場合、制御はステップ440に進む。
ステップ410において、デジタル権利管理コンポーネント5は、完全暗号化値を判定する。完全暗号化値が「偽(false)」に設定されている場合、制御はステップ411に進む。一方、完全暗号化値が「真(true)」に設定されている場合、制御はステップ413に進む。
ステップ411において、アクセスユニットは、暗号化されず、平文のままにされ、制御はステップ465に進む。ここでは、アクセスユニットのサイズが32バイト以下であり、デジタルコンテンツの他の部分が暗号化されているので、このアクセスユニットについては暗号化しなくても十分であるため、このアクセスユニットは暗号化しない。
ステップ413において、デジタル権利管理コンポーネント5は、アクセスユニットサイズ値が0バイトより大きく、16バイトより小さいか否かを判定し、アクセスユニットサイズ値が0バイトより大きく、16バイトより小さい場合、制御はステップ415に進み、この他の場合、制御はステップ414に進む。ステップ414において、アクセスユニットサイズ値が16バイトであると判定された場合、制御はステップ420に進む。ステップ414において、アクセスユニットサイズ値が16バイトより大きいと判定された場合、制御はステップ425に進む。
ステップ415において、デジタル権利管理コンポーネント5は、アクセスユニットを構成するデータ(例えば、n個のアクセスユニットバイト)と、E(Kc、シード値)の左側のn個のバイトとのXOR演算を行い、続いて制御はステップ465に進む。
ステップ420では、デジタル権利管理コンポーネント5は、ECBモードを用いたAESによって、アクセスユニットの16バイトを暗号化し、続いて制御はステップ465進む。
ステップ425では、デジタル権利管理コンポーネント5は、シード値とアクセスユニットの最初の16バイトとのXOR演算を行ってIV値を算出する。
次に、ステップ430において、デジタル権利管理コンポーネント5は、ECBモードを用いたAESによって、アクセスユニットの最初の16バイトを暗号化する。
ステップ435において、デジタル権利管理コンポーネント5は、残りのn−16バイトと、E(Kc、算出されたIV値)の左側のn個のバイトとのXOR演算を行い、続いて制御はステップ465に進む。
ステップ440において、デジタル権利管理コンポーネント5は、上述したパラメータ値を検査及び初期化する。デジタル権利管理コンポーネント5は、IVストライドカウント値をアクセスユニット内のストライドの個数に設定する。IVストライドカウント値は、アクセスユニットサイズ値を暗号化ストライドサイズ値によって除算することによって算出される。
カウントの余りとなるストライドは、部分的なストライドとなる。なお、(部分的ストライドとなる可能性がある)最後のストライドの長さが16バイトより短い場合であって、IVストライドカウント値がアクセスユニット内のストライドの個数に等しいために、このストライドがIV値の算出に貢献する場合、この16バイトより短いフラグメントが使用されないように、IVストライドカウント値を1デクリメントする。
デジタル権利管理コンポーネント5は、暗号化チャンクオフセット値を設定する。一実施例においては、暗号化チャンクオフセット値は、16バイトに設定する。
ステップ445において、デジタル権利管理コンポーネント5は、算出されたIV値を決定する。一実施例においては、算出されたIV値は、図3C及び図3Dを用いて上述したように、アクセスユニットの最初のIVストライドカウント値の最初の16バイトのそれぞれから導出される。
ステップ450において、デジタル権利管理コンポーネント5は、生のデジタルコンテンツ全体を暗号化するか否かを判定する。完全暗号化値が「真」に設定されている場合、制御はステップ455に進む。完全暗号化値が「偽」に設定されている場合、制御はステップ460に進む。
ステップ455において、デジタル権利管理コンポーネント5は、算出されたIV値を算出するために用いる各ストライドのデータのランダムな16バイトのストリングを暗号化する。例えば、デジタル権利管理コンポーネント5は、電子コードブック(ECB)モードのAESを用いて、各ストライドの最初の16バイトのストリングを暗号化する。一実施例においては、算出されたIV値は、この演算には用いられない。
ステップ460において、デジタル権利管理コンポーネント5は、CBCモードのAESにより、残りのデータブロックを暗号化する。例えば、デジタル権利管理コンポーネント5は、ストライドの最初からの暗号化チャンクオフセットから開始され、暗号化チャンクサイズに相当する長さを有するデータブロックを暗号化する。算出されたIV値は、(各アクセスユニットについて、図3E及び図3Fを用いて説明したように)AES暗号の初期IV値として用いられる。一実施例においては、各ストライドにおける適用な可能な各データブロックは、各アクセスユニットについて開始される同じAES暗号文ブロック連鎖の一部である。他の実施例においては、AESは、各ストライドから再開される。
ステップ465において、デジタル権利管理コンポーネント5は、暗号化したデジタルコンテンツをクライアント装置に送信する。
なお、算出されたIV値は、必ずしも、暗号化されるアクセスユニットの各ストライドの最初の16バイトから導出する必要はない。例えば、他の実施例においては、算出されたIV値は、暗号化されるアクセスユニットの各ストライドからの、いかなる任意の(但し、位置が特定された)16バイトストリングから導出してもよい。
なお、AESブロックサイズ(16バイト)の整数倍にならない残りのブロックについては、特別な処理を行う。最後のストライド以外の全てのストライドのブロックは、AESブロックサイズ(例えば、16バイト)の整数倍となる。一方、これより短いアクセスユニットでは、部分的ストライド(例えば、16バイトより小さいブロックサイズを有するストライド)が生じる場合がある。
図5は、このような部分的ストライドを暗号化する処理フロー500の一例を示している。
ステップ510において、デジタル権利管理コンポーネント5は、AES ECB(全ての暗号化が同じ、元の入力暗号鍵を用いて実行される)を用いるAES ECBによって、最後の完全なブロック(例えば、IVを算出するために用いられたブロックが先の完全なブロック)の暗号文を暗号化する。
ステップ520において、デジタル権利管理コンポーネント5は、部分的ブロック内のビット数として、部分的ビット値を算出する。
ステップ530において、デジタル権利管理コンポーネント5は、部分的ビット値に等しい最後の完全なブロックの左側のビットと、ストライドの部分的なブロックとのXOR演算を行い、対応する暗号文を生成する。
処理フロー400及び処理フロー500は、デジタルコンテンツ内の各アクセスユニットについて繰り返される。これに代えて、デジタル権利管理コンポーネント5は、例えば、デジタルコンテンツの暗号化処理を速めるために、デジタルコンテンツにおける特定のストライド又は一部のストライドを暗号化してもよい。
図6は、クライアント装置において、暗号化されたデジタルコンテンツを復号コンポーネント7によって復号する処理フロー600の一例を示している。
ステップ605において、クライアント装置は、暗号化されたデジタルコンテンツを受信する(及び、例えばコンテンツファイル内のデータから、例えば部分的又は完全な暗号化、シードIV値、ストライドサイズ等を含む復号パラメータを判定する)。
ステップ610において、復号コンポーネント7は、復号するアクセスユニットのアクセスユニットサイズを判定する。アクセスユニットサイズが32バイトより小さい場合、制御はステップ615に進む。アクセスユニットが32バイト以上の場合、制御はステップ655に進む。
ステップ615において、復号コンポーネント7は、完全暗号化値を判定する。完全暗号化値が「偽」に設定されている場合、制御はステップ620に進む。一方、完全暗号化値が「真」に設定されている場合、制御はステップ625に進む。
ステップ620において、復号コンポーネント7は、アクセスユニットが暗号化されていないと判定し、処理フロー600は終了する。
ステップ625において、復号コンポーネント7は、アクセスユニットサイズ値が0バイトより大きく、16バイトより小さいか否かを判定し、アクセスユニットサイズ値が0バイトより大きく、16バイトより小さい場合、制御はステップ630に進む。ステップ626において、アクセスユニットサイズ値が16バイトであると判定された場合、制御はステップ635に進む。アクセスユニットサイズ値が16バイトより大きく、32バイトより小さい場合、制御はステップ640に進む。
ステップ630において、復号コンポーネント7は、アクセスユニットを構成するデータ(例えば、n個のアクセスユニットバイト)と、D(Kc、シード値)の左側のn個のバイトとのXOR演算を行い、これにより処理フロー600は終了する。
ステップ635では、復号コンポーネント7は、ECBモードを用いたAESによって16バイトのアクセスユニットを復号し、これにより処理フロー600は終了する。
ステップ640では、復号コンポーネント7は、ECBモードを用いたAESによって、アクセスユニットの最初の16バイトを復号する。
ステップ645において、復号コンポーネント7は、シード値と、アクセスユニットの残りの16バイトとのXOR演算を行うことにより、算出されたIV値を算出する。
ステップ650において、復号コンポーネント7は、残りのn−16バイトと、D(Kc、算出されたIV値)の左側のn個のバイトとのXOR演算を行う。
ステップ655において、復号コンポーネント7は、パラメータ値を検査し、初期化する。復号コンポーネント7は、IVストライドカウント値をアクセスユニット内のストライドの個数に設定する。IVストライドカウント値は、アクセスユニットサイズ値を暗号化ストライドサイズ値によって除算することによって算出される。
ステップ660において、復号コンポーネント7は、受信したデジタルコンテンツの完全暗号化値を判定する。完全暗号化値が「真」である場合、制御はステップ665に進む。一方、完全暗号化値が「偽」である場合、制御はステップ675に進む。
ステップ665において、復号コンポーネント7は、算出されたIV値に貢献しているデータブロックを復号する。例えば、各IVストライドカウント値について、ストライドの最初の16バイトのデータストリング(暗号文)が復号される。復号処理では、算出されたIV値に貢献するデータブロックの位置が生来的に既知であってもよく、或いは、他の実施例として、これらの位置をパラメータとして復号処理に渡してもよい。一実施例においては、復号処理にはIVが含まれない。
ステップ675において、復号コンポーネント7は、算出されたIV値を判定する。一実施例においては、算出されたIV値は、上述のように、各ストライドからの16バイトのデータストリングと、シード値とのXOR演算を行うことによって導出することができる。シード値は、デジタルコンテンツとは別個に伝送されてもよく、デジタルコンテンツに添付してもよい。
ステップ685において、復号コンポーネント7は、AES CBC及び算出されたIV値を用いて、残りの暗号化されたデータブロックを復号する。
ステップ690において、復号コンポーネント7は、必要であれば、部分的ストライドを復号する。一実施例においては、部分的ストライドは、図7を用いて後述するような処理よって復号される。
なお、処理フロー600は、必要に応じて、デジタルコンテンツ内の各アクセスユニットについて繰り返し実行される。
図7は、部分的ブロック(鍵の長さより短い)を復号する処理フロー700の一例を示している。
ステップ720において、復号コンポーネント7は、部分的ブロック内のビット数として、部分的ビット値を算出する。
ステップ730において、復号コンポーネント7は、部分的ブロックのビットと、最後の完全なブロックの左側のnビット(nは、部分的ブロック内のビット数に等しい)とのXOR演算を行い、対応する平文を生成する。
本発明の実施例として説明した処理を実行するのに適したコンピュータシステムの構成例を図8に示す。コンピュータシステム840は、プロセッサ850と、メモリ855と、入出力装置860(input/output capability)とを備え、これらは全てシステムバス865に接続されている。このような構成を有する機器としては、個人用コンピュータシステム、ネットワークコンピュータ、ウェブテレビジョン又はセットトップボックス等のテレビジョン関連システム、及び携帯型音楽プレーヤ、デジタルビデオプレーヤ、携帯電話、情報携帯端末等の携帯型機器、並びにこれらに類する機器が含まれる。
プロセッサ850は、例えばCISC、RISC、VLIW、DSP又はハイブリッドアーキテクチャ等のあらゆる種類のアーキテクチャのいずれかを有する中央演算処理装置を表している。更に、プロセッサ850は、1個以上のチップによって実現してもよい。メモリ855は、プロセッサ850によって実行されて、上述した処理を実現する命令を保存するように構成されている。更に、メモリ855には、ユーザ情報及びコンタクト情報(contact information)を保存してもよい。
入出力装置860には、例えばキーボード、マウス、表示モニタ、マイクロフォン、スピーカ、ディスプレイ、ネットワークカード(例えば、イーサネット(登録商標)、赤外線、ケーブルモデム、ファックス/モデム等)を始めとする、ユーザがコンピュータシステム840とインタラクトするためのコンポーネントが含まれる。更に、入出力装置860には、プロセッサ850によってアクセス可能なあらゆる種類のストレージ装置を含む、マシンによって読取可能な媒体(machine-readable medium may)も含まれる。マシンによって読取可能な媒体には、例えば、読出専用メモリ(read only memory:ROM)、ランダムアクセスメモリ(random access memory:RAM)、磁気ディスクストレージ媒体、光ディスクストレージ媒体、フラッシュメモリ装置、電気、光、音響又はこの他の形式によって伝播される信号(例えば、搬送波、赤外線信号、デジタル信号)等が含まれる。すなわち、マシンによって読取可能な媒体には、マシン(例えば、コンピュータ)によって読取可能な形式で情報を提供する(すなわち、保存及び/又は伝送する)あらゆるメカニズムが含まれる。「マシンによって読取可能な媒体」という用語には、データ信号をエンコードする搬送波も含まれることは、当業者にとって明らかである。
更に、メモリ855に格納され、デジタル権利管理コンポーネント5、復号コンポーネント7、デジタルコンテンツプレーヤ8を実行するオペレーティングシステムソフトウェアによって、コンピュータシステム840を制御してもよい。このオペレーティングシステムは、PC−OS、マッキントッシュ−OS、ユニックス−OS、PalmOS等を始めとするいかなるオペレーティングシステムであってもよい。入出力装置860及びこれに関連する媒体は、オペレーティングシステム本発明に基づく処理を実現するための、マシンによって実行可能な命令を保存する。
更に、バス865は、1本以上のバス(例えば、PCI、ISA、X−Bus、EISA、VESA等)及びブリッジ(バスコントローラとも呼ばれる。)であってもよい。ここでは、本発明をシングルプロセッサコンピュータシステムに関連して説明しているが、本発明は、マルチプロセッサコンピュータシステムによって実現してもよい。
図8に示す構成は、本発明の実現に適したコンピュータハードウェア及び他の動作コンポーネントの概観を示しているが、これは、本発明の適用環境を限定するものではない。すなわち、コンピュータシステム840は、様々な異なるアーキテクチャを有する可能なコンピュータシステムの一例に過ぎない。一般的なコンピュータシステムは、少なくともプロセッサと、メモリと、及びプロセッサとメモリを接続するバスとを備えている場合が多い。なお、本発明は、マルチプロセッサシステム、ミニコンピュータ、メインフレームコンピュータ等を含む、他のコンピュータシステム構成によっても実現できることは当業者にとって明らかである。更に、本発明は、通信ネットワークを介してリンクされたリモートの処理装置によってタスクが実行される分散型コンピュータシステム環境によっても実現することができる。
なお、本発明の範囲から逸脱することなく、図2、図3D、図3F、図4、図5、図6、図7に示す処理フローに、更なるステップを追加し、又はいずれかのステップを省略することができ、また、処理の順序は、図に示し、ここで説明した順序に限定されるものではない。更に、図2、図3D、図3F、図4、図5、図6、図7を用いて説明した処理は、マシンによって実行可能な命令(例えば、ソフトウェア)によって実現してもよい。この命令を用いて、汎用プロセッサ又は専用プロセッサをプログラミングし、ここに説明したような処理を実行させることができる。これに代えて、ここに説明した処理は、この処理を実行するためのハードウェアロジックを備える特定のハードウェアコンポーネントによって実現してもよく、或いはプログラミングされたコンピュータコンポーネントと、カスタムハードウェアコンポーネントとを任意に組み合わせて実現してもよい。ここに説明した処理は、コンピュータプログラム製品として提供してもよく、このコンピュータプログラム製品は、コンピュータ(又は他の電子機器)をプログラミングして、この処理を実行させるための命令が格納されたマシンによって読取可能な媒体を備えていてもよい。この明細書では、「マシンによって読取可能な媒体」という用語は、マシンによって実行される命令のシーケンスを保存又はエンコードし、このマシンに本発明に基づく処理のいずれかを実行させることができるあらゆる媒体を包含する。したがって、「マシンによって読取可能な媒体」という用語は、以下に限定されるものではないが、固体メモリ、光ディスク及び磁気ディスク、搬送波信号等を含む。更に、当分野では、動作の実行又は生じる結果の観点から、様々な呼び方(例えば、プログラム、手続き、処理、アプリケーション、モジュール、ロジック等)で呼ぶことがある。これらの表現は、コンピュータによるソフトウェアの実行によって、コンピュータのプロセッサが動作を実行し又は結果を生じるということを単に簡略的に表現しているに過ぎない。
以上、ブロック暗号の暗号化法(block cipher cryptography)を用いたデジタルコンテンツの保護について説明した。この暗号化では、暗号化されるデータのサイズが変わらず、したがって、復号する更なるヘッダを調整する必要はない。更に、伝送中に幾つかのパケットが失われても、ストリーミングされるコンテンツの復号を再開することができる。復号処理は、十分に近い間隔で再開でき、したがって、パケット損失が生じても、データの再生に大きな影響がない。これは、復号が再開されたどの時点からでも、算出された初期化ベクトル値を導出することができ、及びコンテンツを復号しなくても既知である、よく定義された間隔(例えば、アクセスユニット)でCBCを再開できるためである。更に、CBCの安全性を向上させるために、算出された初期化ベクトル値は、同じ鍵とともに用いても、毎回異なるものとなる。本発明の目的の1つは、ファイルにデータを追加しないことであるため、算出された初期化ベクトル値は、暗号化されるサンプル自体から抽出された合理的にランダムなデータから生成される。
更に、本発明は、処理能力が低い機器のために、100%未満の暗号化を行うことが可能な、暗号化の量をパラメータ化した部分的なデータ暗号化処理を提供する。
デジタル権利管理コンポーネント5は、上述した処理以外の検査及び初期化を実行してもよい。例えば、デジタル権利管理コンポーネント5は、暗号化チャンクサイズ値が(暗号化ストライドサイズ値−暗号化チャンクオフセット値)以下であるか否かを検査してもよい。更に、暗号化チャンクサイズ値がABSブロックサイズ(16バイト)の整数倍になっていることを確認してもよい。
幾つかの実施例を用いて本発明を説明したが、本発明がここに説明した実施例に制限されないことは、当業者にとって明らかである。本発明に基づく方法及び装置は、添付の請求の範囲内において、ここに説明した実施例を様々に変更又は変形して実現することができる。すなわち、以上の説明は、本発明を制限するものではなく、例示的なものに過ぎないと解釈される。
本発明の実施例のシステムレベルの概観を示す図である。 図1に示すネットワーク環境において、デジタルコンテンツを交換する処理フローの一例を示すフローチャートである。 複数のアクセスユニットを有するデジタルコンテンツの一例を示す図である。 複数のストライドを有するデジタルコンテンツのアクセスユニットの一例を示す図である。 アクセスユニットからIV値を算出する処理を説明する図である。 図3Cに示すIV値を算出する処理フローの一例を示すフローチャートである。 アクセスユニットの暗号化を概念的に示す図である。 図3Eに示すアクセスユニットを暗号化する処理フローの一例を示すフローチャートである。 著作権保護された生のデジタルコンテンツを暗号化するデジタル権利管理ソフトウェアによる処理フローの一例を示すフローチャートである。 部分的ストライドを暗号化する処理フローの一例を示すフローチャートである。 クライアント装置において、クライアント復号ソフトウェアによって、暗号化されたデジタルコンテンツを復号する処理フローの一例を示すフローチャートである。 部分的ストライドを復号する処理フローの一例を示すフローチャートである。 本発明を実現するために適したコンピュータシステムの一例を示す図である。

Claims (44)

  1. 暗号鍵(82)と、算出された初期化ベクトル(IV)(305)とを用いてデジタルコンテンツ(300)を暗号化するステップを有し、
    上記デジタルコンテンツ(300)は、複数のストライド(340,345,350,355)を含み、各ストライド(340,345,350,355)は、暗号化されるデータストリング(342,347,352,357)と、データブロック(344,349,354,359)とを含み、上記算出された初期化ベクトル(IV)(305)は、各ストライド(340,345,350,355)の各データストリング(342,347,352,357)から導出される暗号化方法。
  2. 上記算出された初期化ベクトル(IV)(305)は、排他的論理和(XOR)演算を用いて、各データストリング(342,347,352,357)とシード値(328)とから更に導出されることを特徴とする請求項1記載の暗号化方法。
  3. 上記算出された初期化ベクトル(IV)(305)は、排他的論理和(XOR)演算を用いて、各データストリング(342,347,352,357)から更に導出されることを特徴とする請求項1記載の暗号化方法。
  4. 上記各データストリング(342,347,352,357)は、電子コードブックモードの次世代暗号化規格(Advanced Encryption Standard)暗号を用いて暗号化されることを特徴とする請求項1記載の暗号化方法。
  5. 上記データブロック(344,349,354,359)は、暗号文ブロック連鎖モードの次世代暗号化規格(Advanced Encryption Standard)暗号を用いて暗号化されることを特徴とする請求項1記載の暗号化方法。
  6. 上記各データストリング(342,347,352,357)は、アクセスユニット(310)の所定バイト数のストライド(340)を含むことを特徴とする請求項1記載の暗号化方法。
  7. 上記デジタルコンテンツ(300)は、デジタル音楽ファイル(300)又はデジタル映像ファイル(300)であることを特徴とする請求項1記載の暗号化方法。
  8. ブロック暗号を用いて、データを暗号化するための初期化ベクトル(305)を算出するステップを有し、
    上記データは、複数のストライド(340,345,350,355)を含み、各ストライド(340,345,350,355)は、暗号化されるデータストリング(342,347,352,357)と、データブロック(344,349,354,359)とを含み、上記算出された初期化ベクトル(IV)(305)は、各ストライド(340,345,350,355)の各データストリング(342,347,352,357)から導出される初期化ベクトル算出方法。
  9. 上記初期化ベクトルを算出するステップは、各データストリング(342,347,352,357)に対する排他的論理和(XOR)演算を実行するステップを更に有することを特徴とする請求項8記載の初期化ベクトル算出方法。
  10. 上記初期化ベクトルを算出するステップは、シード値(328)と各データストリング(342,347,352,357)との排他的論理和(XOR)演算を実行するステップを更に有することを特徴とする請求項8記載の初期化ベクトル算出方法。
  11. 上記データは、デジタルコンテンツファイル(300)であることを特徴とする請求項8記載の初期化ベクトル算出方法。
  12. 暗号化方法をマシンに実行させる命令を有する、マシンによって読取可能な媒体であって、該暗号化方法は、
    暗号鍵(82)と、算出された初期化ベクトル(IV)(305)とを用いてデジタルコンテンツ(300)を暗号化するステップを有し、
    上記デジタルコンテンツ(300)は、複数のストライド(340,345,350,355)を含み、各ストライド(340,345,350,355)は、暗号化されるデータストリング(342,347,352,357)と、データブロック(344,349,354,359)とを含み、上記算出された初期化ベクトル(IV)(305)は、各ストライド(340,345,350,355)の各データストリング(342,347,352,357)から導出されるマシンによって読取可能な媒体。
  13. 上記算出された初期化ベクトル(IV)(305)は、排他的論理和(XOR)演算を用いて、各データストリング(342,347,352,357)とシード値(328)とから更に導出されることを特徴とする請求項12記載のマシンによって読取可能な媒体。
  14. 上記算出された初期化ベクトル(IV)(305)は、排他的論理和(XOR)演算を用いて、各データストリング(342,347,352,357)から更に導出されることを特徴とする請求項12記載のマシンによって読取可能な媒体。
  15. 上記各データストリング(342,347,352,357)は、電子コードブックモードの次世代暗号化規格(Advanced Encryption Standard)暗号を用いて暗号化されることを特徴とする請求項12記載のマシンによって読取可能な媒体。
  16. 上記データブロック(344,349,354,359)は、暗号文ブロック連鎖モードの次世代暗号化規格(Advanced Encryption Standard)暗号を用いて暗号化されることを特徴とする請求項12記載のマシンによって読取可能な媒体。
  17. 上記各データストリング(342,347,352,357)は、アクセスユニット(310)の所定バイト数のストライド(340)を含むことを特徴とする請求項12記載のマシンによって読取可能な媒体。
  18. 上記デジタルコンテンツ(300)は、デジタル音楽ファイル(300)又はデジタル映像ファイル(300)であることを特徴とする請求項12記載のマシンによって読取可能な媒体。
  19. 初期化ベクトル算出方法をマシンに実行させる命令を有する、マシンによって読取可能な媒体であって、該初期化ベクトル算出方法は、
    ブロック暗号を用いて、データを暗号化するための初期化ベクトル(305)を算出するステップを有し、
    上記データは、複数のストライド(340,345,350,355)を含み、各ストライド(340,345,350,355)は、暗号化されるデータストリング(342,347,352,357)と、データブロック(344,349,354,359)とを含み、上記算出された初期化ベクトル(IV)(305)は、各ストライド(340,345,350,355)の各データストリング(342,347,352,357)から導出されるマシンによって読取可能な媒体。
  20. 上記初期化ベクトルを算出するステップは、各データストリング(342,347,352,357)に対する排他的論理和(XOR)演算を実行するステップを更に有することを特徴とする請求項19記載のマシンによって読取可能な媒体。
  21. 上記初期化ベクトルを算出するステップは、シード値(328)と各データストリング(342,347,352,357)との排他的論理和(XOR)演算を実行するステップを更に有することを特徴とする請求項19記載のマシンによって読取可能な媒体。
  22. 上記データは、デジタルコンテンツファイル(300)であることを特徴とする請求項19記載のマシンによって読取可能な媒体。
  23. バス(865)を介してメモリ(855)に接続されたプロセッサ(859)と、
    上記メモリ(855)から読み出され、上記プロセッサ(850)によって実行され、該プロセッサ(859)に、暗号鍵(82)と、算出された初期化ベクトル(IV)(305)とを用いてデジタルコンテンツ(300)を暗号化させ、上記デジタルコンテンツ(300)は、複数のストライド(340,345,350,355)を含み、各ストライド(340,345,350,355)は、暗号化されるデータストリング(342,347,352,357)と、データブロック(344,349,354,359)とを含み、上記算出された初期化ベクトル(IV)(305)は、各ストライド(340,345,350,355)の各データストリング(342,347,352,357)から導出される暗号化プログラム(400)とを備える暗号化システム。
  24. 上記算出された初期化ベクトル(IV)(305)は、排他的論理和(XOR)演算を用いて、各データストリング(342,347,352,357)から更に導出されることを特徴とする請求項23記載の暗号化システム。
  25. 上記算出された初期化ベクトル(IV)(305)は、排他的論理和(XOR)演算を用いて、各データストリング(342,347,352,357)とシード値(328)とから更に導出されることを特徴とする請求項23記載の暗号化システム。
  26. 上記各データストリング(342,347,352,357)は、電子コードブックモードの次世代暗号化規格(Advanced Encryption Standard)暗号を用いて暗号化されることを特徴とする請求項23記載の暗号化システム。
  27. 上記データブロック(344,349,354,359)は、暗号文ブロック連鎖モードの次世代暗号化規格(Advanced Encryption Standard)暗号を用いて暗号化されることを特徴とする請求項23記載の暗号化システム。
  28. 上記各データストリング(342,347,352,357)は、アクセスユニット(310)の所定バイト数のストライド(340)を含むことを特徴とする請求項23記載の暗号化システム。
  29. 上記デジタルコンテンツ(300)は、デジタル音楽ファイル(300)又はデジタル映像ファイル(300)であることを特徴とする請求項23記載の暗号化システム。
  30. バス(865)を介してメモリ(855)に接続されたプロセッサ(859)と、
    上記メモリ(855)から読み出され、上記プロセッサ(850)によって実行され、該プロセッサ(859)に、ブロック暗号を用いて、データを暗号化するための初期化ベクトル(305)を算出させ、上記データは、複数のストライド(340,345,350,355)を含み、各ストライド(340,345,350,355)は、暗号化されるデータストリング(342,347,352,357)と、データブロック(344,349,354,359)とを含み、上記算出された初期化ベクトル(IV)(305)は、各ストライド(340,345,350,355)の各データストリング(342,347,352,357)から導出される暗号化プログラム(400)とを備える暗号化システム。
  31. 上記暗号化プログラム(400)により、上記プロセッサは、上記初期化ベクトルを算出する際、各データストリング(342,347,352,357)に対する排他的論理和(XOR)演算を実行することを特徴とする請求項30記載の暗号化システム。
  32. 上記暗号化プログラム(400)により、上記プロセッサは、上記初期化ベクトルを算出する際、シード値(328)と各データストリング(342,347,352,357)との排他的論理和(XOR)演算を実行することを特徴とする請求項30記載の暗号化システム。
  33. 上記データは、デジタルコンテンツファイル(300)であることを特徴とする請求項30記載の暗号化システム。
  34. デジタルコンテンツ(300)を受け取る受信手段と、
    暗号鍵(82)と、算出された初期化ベクトル(IV)(305)とを用いて上記デジタルコンテンツ(300)を暗号化する暗号化手段とを備え、
    上記デジタルコンテンツ(300)は、複数のストライド(340,345,350,355)を含み、各ストライド(340,345,350,355)は、暗号化されるデータストリング(342,347,352,357)と、データブロック(344,349,354,359)とを含み、上記算出された初期化ベクトル(IV)(305)は、各ストライド(340,345,350,355)の各データストリング(342,347,352,357)から導出される暗号化装置。
  35. 上記算出された初期化ベクトル(IV)(305)は、排他的論理和(XOR)演算を用いて、各データストリング(342,347,352,357)から更に導出されることを特徴とする請求項34記載の暗号化装置。
  36. 上記算出された初期化ベクトル(IV)(305)は、排他的論理和(XOR)演算を用いて、各データストリング(342,347,352,357)とシード値(328)とから更に導出されることを特徴とする請求項34記載の暗号化装置。
  37. 上記各データストリング(342,347,352,357)は、電子コードブックモードの次世代暗号化規格(Advanced Encryption Standard)暗号を用いて暗号化されることを特徴とする請求項34記載の暗号化装置。
  38. 上記データブロック(344,349,354,359)は、暗号文ブロック連鎖モードの次世代暗号化規格(Advanced Encryption Standard)暗号を用いて暗号化されることを特徴とする請求項34記載の暗号化装置。
  39. 上記各データストリング(342,347,352,357)は、アクセスユニット(310)の所定バイト数のストライド(340)を含むことを特徴とする請求項34記載の暗号化装置。
  40. 上記デジタルコンテンツ(300)は、デジタル音楽ファイル(300)又はデジタル映像ファイル(300)であることを特徴とする請求項34記載の暗号化装置。
  41. データを受信する受信手段と、
    ブロック暗号を用いて、上記データを暗号化するための初期化ベクトル(305)を算出する初期化ベクトル算出手段とを備え、
    上記データは、複数のストライド(340,345,350,355)を含み、各ストライド(340,345,350,355)は、暗号化されるデータストリング(342,347,352,357)と、データブロック(344,349,354,359)とを含み、上記算出された初期化ベクトル(IV)(305)は、各ストライド(340,345,350,355)の各データストリング(342,347,352,357)から導出される暗号化装置。
  42. 上記初期化ベクトル算出手段は、
    各データストリング(342,347,352,357)に対する排他的論理和(XOR)演算を実行する演算手段を更に備えることを特徴とする請求項41記載の暗号化装置。
  43. 上記初期化ベクトル算出手段は、
    上記初期化ベクトルを算出するステップは、シード値(328)と各データストリング(342,347,352,357)との排他的論理和(XOR)演算を実行する演算手段を更に備えることを特徴とする請求項41記載の暗号化装置。
  44. 上記データは、デジタルコンテンツファイル(300)であることを特徴とする請求項41記載の暗号化装置。
JP2004119465A 2003-04-14 2004-04-14 ブロック暗号の暗号化法を用いたデジタルコンテンツの保護関連出願本出願は、2003年4月14日に出願された米国仮特許出願番号60/462,987号についての優先権を主張する。著作権表示/許諾この明細書の開示内容の一部は、著作権保護の対象となるマテリアルを含む。著作権者は、この明細書が特許商標庁への特許出願又は記録であると認められるファックスコピー又は特許開示に対しては異議を唱えないが、それ以外のあらゆる全ての著作権の権利を保有する。以下の表示は、後述するソフトウェア及びデータ、並びに添付の図面に適用される。著作権(c)2003:全ての著作権はソニーエレクトロニクスインク社に帰属する(Copyright(c)2003,SonyElectronics,Inc.,AllRightsReserved)。 Pending JP2004318154A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US46298703P 2003-04-14 2003-04-14
US10/675,430 US7055039B2 (en) 2003-04-14 2003-09-29 Protection of digital content using block cipher crytography

Publications (1)

Publication Number Publication Date
JP2004318154A true JP2004318154A (ja) 2004-11-11

Family

ID=33135320

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004119465A Pending JP2004318154A (ja) 2003-04-14 2004-04-14 ブロック暗号の暗号化法を用いたデジタルコンテンツの保護関連出願本出願は、2003年4月14日に出願された米国仮特許出願番号60/462,987号についての優先権を主張する。著作権表示/許諾この明細書の開示内容の一部は、著作権保護の対象となるマテリアルを含む。著作権者は、この明細書が特許商標庁への特許出願又は記録であると認められるファックスコピー又は特許開示に対しては異議を唱えないが、それ以外のあらゆる全ての著作権の権利を保有する。以下の表示は、後述するソフトウェア及びデータ、並びに添付の図面に適用される。著作権(c)2003:全ての著作権はソニーエレクトロニクスインク社に帰属する(Copyright(c)2003,SonyElectronics,Inc.,AllRightsReserved)。

Country Status (3)

Country Link
US (2) US7055039B2 (ja)
JP (1) JP2004318154A (ja)
WO (1) WO2004093372A2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007183514A (ja) * 2006-01-10 2007-07-19 Fuji Xerox Co Ltd 情報処理装置及びプログラム
JP2007274715A (ja) * 2006-02-15 2007-10-18 Samsung Electronics Co Ltd コンテンツの使用方法及び使用装置
US7492894B2 (en) 2003-11-04 2009-02-17 Sony Corporation Information-processing apparatus, control method, program and recording medium
WO2010055658A1 (ja) * 2008-11-13 2010-05-20 パナソニック株式会社 コンテンツ復号処理装置、コンテンツ復号処理方法及び集積回路
KR101070117B1 (ko) 2009-05-27 2011-10-05 아바야 인코포레이티드 보안 심볼 스트링의 단계적 수립 방법
JP2012059350A (ja) * 2005-05-23 2012-03-22 Panasonic Corp 再生装置、データ処理方法、データ処理プログラム及び集積回路
JP2012155323A (ja) * 2011-01-21 2012-08-16 Symantec Corp 高遅延、低帯域幅環境におけるnetbackupデータ復号のためのシステムおよび方法
JP2014224925A (ja) * 2013-05-16 2014-12-04 凸版印刷株式会社 暗号化装置、復号装置、暗号化方法、復号方法及びプログラム
JP2015022269A (ja) * 2013-07-23 2015-02-02 凸版印刷株式会社 暗号化装置、復号装置、暗号化方法、復号方法及びプログラム
JP2016189626A (ja) * 2011-08-05 2016-11-04 アップル インコーポレイテッド ワイヤレスデータ保護のためのシステム及び方法

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030172295A1 (en) * 2002-03-01 2003-09-11 Onspec Electronics, Inc. Device and system for allowing secure identification of an individual when accessing information and a method of use
US7826614B1 (en) * 2003-11-05 2010-11-02 Globalfoundries Inc. Methods and apparatus for passing initialization vector information from software to hardware to perform IPsec encryption operation
US7734932B2 (en) * 2003-11-10 2010-06-08 Broadcom Corporation System and method for securing executable code
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US20060129496A1 (en) * 2004-12-14 2006-06-15 Motorola, Inc. Method and apparatus for providing digital rights management
NO322321B1 (no) * 2005-02-07 2006-09-18 Igor Aleksandrovich Semaev Fremgangsmate ved kryptering og dekryptering
KR100768509B1 (ko) * 2005-03-10 2007-10-18 한국전자통신연구원 무선 휴대 인터넷 시스템의 암호화 및 복호화 장치, 그리고그 방법
US8081755B2 (en) * 2005-05-20 2011-12-20 Microsoft Corporation JPEG2000 syntax-compliant encryption with full scalability
US7646867B2 (en) * 2005-09-09 2010-01-12 Netapp, Inc. System and/or method for encrypting data
US20070162626A1 (en) * 2005-11-02 2007-07-12 Iyer Sree M System and method for enhancing external storage
US20070122735A1 (en) * 2005-11-30 2007-05-31 Wisnudel Marc B Optical storage device having limited-use content and method for making same
US9059866B2 (en) * 2005-12-30 2015-06-16 Remec Broadband Wireless Holdings, Inc. Digital microwave radio system and method with encryption
US8711888B2 (en) * 2005-12-30 2014-04-29 Remec Broadband Wireless Llc Digital microwave radio link with adaptive data rate
US8731007B2 (en) 2005-12-30 2014-05-20 Remec Broadband Wireless, Llc Digital microwave radio link with a variety of ports
US7886146B2 (en) 2006-03-15 2011-02-08 Koolspan, Inc. Network cryptography system and method
WO2007106548A2 (en) * 2006-03-15 2007-09-20 Koolspan, Inc. System and method of network cryptography
WO2007121035A2 (en) 2006-03-23 2007-10-25 Exegy Incorporated Method and system for high throughput blockwise independent encryption/decryption
US7428306B2 (en) * 2006-04-18 2008-09-23 International Business Machines Corporation Encryption apparatus and method for providing an encrypted file system
US7660793B2 (en) 2006-11-13 2010-02-09 Exegy Incorporated Method and system for high performance integration, processing and searching of structured and unstructured data using coprocessors
US7876894B2 (en) * 2006-11-14 2011-01-25 Mcm Portfolio Llc Method and system to provide security implementation for storage devices
US7949130B2 (en) 2006-12-28 2011-05-24 Intel Corporation Architecture and instruction set for implementing advanced encryption standard (AES)
FI20070029L (fi) * 2007-01-12 2008-07-13 Valtion Teknillinen Anonyymit tietoliikenteen mittausdataan liittyvät käyttäjätunnistukset
US20090046858A1 (en) * 2007-03-21 2009-02-19 Technology Properties Limited System and Method of Data Encryption and Data Access of a Set of Storage Devices via a Hardware Key
US20080181406A1 (en) * 2007-01-30 2008-07-31 Technology Properties Limited System and Method of Storage Device Data Encryption and Data Access Via a Hardware Key
US20080288782A1 (en) * 2007-05-18 2008-11-20 Technology Properties Limited Method and Apparatus of Providing Security to an External Attachment Device
US20080184035A1 (en) * 2007-01-30 2008-07-31 Technology Properties Limited System and Method of Storage Device Data Encryption and Data Access
US20080288703A1 (en) * 2007-05-18 2008-11-20 Technology Properties Limited Method and Apparatus of Providing Power to an External Attachment Device via a Computing Device
US8361587B2 (en) 2007-07-31 2013-01-29 Nbcuniversal Media, Llc Enhanced security of optical article
WO2009029842A1 (en) 2007-08-31 2009-03-05 Exegy Incorporated Method and apparatus for hardware-accelerated encryption/decryption
US8229276B2 (en) * 2007-09-28 2012-07-24 Nbcuniversal Media, Llc Limited play optical article
US8646106B2 (en) * 2007-09-28 2014-02-04 Nbcuniversal Media, Llc Limited play optical article
KR20100106327A (ko) 2007-11-16 2010-10-01 디브이엑스, 인크. 멀티미디어 파일을 위한 계층적 및 감소된 인덱스 구조
US8051441B2 (en) * 2008-03-31 2011-11-01 Nbcuniversal Media, Llc Player-readable code on optical media
US9514782B2 (en) * 2008-05-13 2016-12-06 Nbcuniversal Media, Llc Method and system for activation of an optical article
US8488428B2 (en) 2008-05-14 2013-07-16 Nbcuniversal Media, Llc Enhanced security of optical article
US8097324B2 (en) * 2008-05-14 2012-01-17 Nbcuniversal Media, Llc Enhanced security of optical article
US20100303229A1 (en) * 2009-05-27 2010-12-02 Unruh Gregory Modified counter mode encryption
US8638929B2 (en) * 2009-11-30 2014-01-28 Motorola Mobility Llc System and method for encrypting and decrypting data
US8930446B2 (en) 2011-01-05 2015-01-06 Motorola Mobility Llc Altering transcoding priority
WO2012125824A2 (en) * 2011-03-16 2012-09-20 Zte (Usa) Inc. Methods and apparatus for independent decryption of encrypted video frames
TWI459230B (zh) 2011-08-08 2014-11-01 Ind Tech Res Inst 數位版權管理裝置及數位版權管理方法
IL214743A0 (en) * 2011-08-18 2012-02-29 Nds Ltd Block cipher modes of operation
TWI475879B (zh) * 2011-12-06 2015-03-01 Ind Tech Res Inst 數位版權管理物件之加密/解密方法、數位版權管理物件加密/解密裝置
US20160358163A1 (en) * 2014-12-29 2016-12-08 Ca, Inc. Payment tokenization using format preserving encryption for secure transactions
US9516359B2 (en) 2015-04-07 2016-12-06 Divx, Llc Session based watermarking of media content using encrypted content streams
US9825931B2 (en) 2016-01-26 2017-11-21 Bank Of America Corporation System for tracking and validation of an entity in a process data network
US10116667B2 (en) 2016-01-26 2018-10-30 Bank Of America Corporation System for conversion of an instrument from a non-secured instrument to a secured instrument in a process data network
US10142347B2 (en) 2016-02-10 2018-11-27 Bank Of America Corporation System for centralized control of secure access to process data network
US10438209B2 (en) 2016-02-10 2019-10-08 Bank Of America Corporation System for secure routing of data to various networks from a process data network
US10129238B2 (en) 2016-02-10 2018-11-13 Bank Of America Corporation System for control of secure access and communication with different process data networks with separate security features
US11374935B2 (en) 2016-02-11 2022-06-28 Bank Of America Corporation Block chain alias person-to-person resource allocation
US10135870B2 (en) 2016-02-22 2018-11-20 Bank Of America Corporation System for external validation of secure process transactions
US10318938B2 (en) 2016-02-22 2019-06-11 Bank Of America Corporation System for routing of process authorization and settlement to a user in process data network based on specified parameters
US10762504B2 (en) 2016-02-22 2020-09-01 Bank Of America Corporation System for external secure access to process data network
US10607285B2 (en) 2016-02-22 2020-03-31 Bank Of America Corporation System for managing serializability of resource transfers in a process data network
US10440101B2 (en) 2016-02-22 2019-10-08 Bank Of America Corporation System for external validation of private-to-public transition protocols
US10140470B2 (en) 2016-02-22 2018-11-27 Bank Of America Corporation System for external validation of distributed resource status
US10679215B2 (en) 2016-02-22 2020-06-09 Bank Of America Corporation System for control of device identity and usage in a process data network
US10496989B2 (en) 2016-02-22 2019-12-03 Bank Of America Corporation System to enable contactless access to a transaction terminal using a process data network
US10178105B2 (en) 2016-02-22 2019-01-08 Bank Of America Corporation System for providing levels of security access to a process data network
US10387878B2 (en) 2016-02-22 2019-08-20 Bank Of America Corporation System for tracking transfer of resources in a process data network
US10142312B2 (en) 2016-02-22 2018-11-27 Bank Of America Corporation System for establishing secure access for users in a process data network
US10475030B2 (en) 2016-02-22 2019-11-12 Bank Of America Corporation System for implementing a distributed ledger across multiple network nodes
US10636033B2 (en) 2016-02-22 2020-04-28 Bank Of America Corporation System for routing of process authorizations and settlement to a user in a process data network
US10026118B2 (en) 2016-02-22 2018-07-17 Bank Of America Corporation System for allowing external validation of data in a process data network
US9853813B2 (en) 2016-03-17 2017-12-26 Crater Dog Technologies, LLC Method for securing a private key
US10157078B2 (en) 2016-04-10 2018-12-18 Bank Of America Corporation System for transforming large scale electronic processing using application block chain
US9979718B2 (en) 2016-05-11 2018-05-22 Bank Of America Corporation System for managing security and access to resource sub-components
US10402796B2 (en) 2016-08-29 2019-09-03 Bank Of America Corporation Application life-cycle transition record recreation system
US10158737B2 (en) 2016-10-07 2018-12-18 Bank Of America Corporation Real time event capture and analysis of transient data for an information network
US10067994B2 (en) 2016-10-07 2018-09-04 Bank Of America Corporation Real time event capture and transformation of transient data for an information network
US10069672B2 (en) 2016-10-07 2018-09-04 Bank Of America Corporation Real time event capture, analysis and reporting system
US11631077B2 (en) 2017-01-17 2023-04-18 HashLynx Inc. System for facilitating secure electronic communications between entities and processing resource transfers
US11838034B2 (en) 2017-10-30 2023-12-05 AtomBeam Technologies Inc. System and method for blockchain data compaction
US10929545B2 (en) 2018-07-31 2021-02-23 Bank Of America Corporation System for providing access to data stored in a distributed trust computing network
US20230244389A1 (en) * 2022-01-30 2023-08-03 Zoom Video Communications, Inc. File Encryption Layer

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001285281A (ja) * 2000-04-03 2001-10-12 Nec Mobile Commun Ltd 暗号方式
JP2002108205A (ja) * 2000-09-28 2002-04-10 Hitachi Software Eng Co Ltd ブロック暗号方法及び復号方法
JP2002202719A (ja) * 2000-11-06 2002-07-19 Sony Corp 暗号化装置及び方法、復号装置及び方法、並びに記憶媒体

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5091936A (en) * 1991-01-30 1992-02-25 General Instrument Corporation System for communicating television signals or a plurality of digital audio signals in a standard television line allocation
US5195136A (en) * 1991-09-30 1993-03-16 Motorola, Inc. Method and apparatus for data encryption or decryption
US5454039A (en) * 1993-12-06 1995-09-26 International Business Machines Corporation Software-efficient pseudorandom function and the use thereof for encryption
US5673319A (en) * 1995-02-06 1997-09-30 International Business Machines Corporation Block cipher mode of operation for secure, length-preserving encryption
US5949884A (en) * 1996-11-07 1999-09-07 Entrust Technologies, Ltd. Design principles of the shade cipher
US6249582B1 (en) * 1997-12-31 2001-06-19 Transcrypt International, Inc. Apparatus for and method of overhead reduction in a block cipher
US6185684B1 (en) * 1998-08-28 2001-02-06 Adobe Systems, Inc. Secured document access control using recipient lists
US6618789B1 (en) * 1999-04-07 2003-09-09 Sony Corporation Security memory card compatible with secure and non-secure data processing systems
US20010031050A1 (en) * 2000-02-14 2001-10-18 Lateca Computer Inc. N.V. Key generator
US7660902B2 (en) * 2000-11-20 2010-02-09 Rsa Security, Inc. Dynamic file access control and management
KR100927322B1 (ko) * 2001-12-19 2009-11-19 이르데토 액세스 비.브이. 디지털 콘텐트 분배 시스템
US20060233361A1 (en) * 2003-03-25 2006-10-19 Akio Hasegawa Device, method, and program for encrypton and decryption and recording medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001285281A (ja) * 2000-04-03 2001-10-12 Nec Mobile Commun Ltd 暗号方式
JP2002108205A (ja) * 2000-09-28 2002-04-10 Hitachi Software Eng Co Ltd ブロック暗号方法及び復号方法
JP2002202719A (ja) * 2000-11-06 2002-07-19 Sony Corp 暗号化装置及び方法、復号装置及び方法、並びに記憶媒体

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7492894B2 (en) 2003-11-04 2009-02-17 Sony Corporation Information-processing apparatus, control method, program and recording medium
JP2012059350A (ja) * 2005-05-23 2012-03-22 Panasonic Corp 再生装置、データ処理方法、データ処理プログラム及び集積回路
JP2007183514A (ja) * 2006-01-10 2007-07-19 Fuji Xerox Co Ltd 情報処理装置及びプログラム
JP2007274715A (ja) * 2006-02-15 2007-10-18 Samsung Electronics Co Ltd コンテンツの使用方法及び使用装置
US8510568B2 (en) 2006-02-15 2013-08-13 Samsung Electronics Co., Ltd. Method and apparatus for importing a transport stream
WO2010055658A1 (ja) * 2008-11-13 2010-05-20 パナソニック株式会社 コンテンツ復号処理装置、コンテンツ復号処理方法及び集積回路
KR101070117B1 (ko) 2009-05-27 2011-10-05 아바야 인코포레이티드 보안 심볼 스트링의 단계적 수립 방법
JP2012155323A (ja) * 2011-01-21 2012-08-16 Symantec Corp 高遅延、低帯域幅環境におけるnetbackupデータ復号のためのシステムおよび方法
JP2016189626A (ja) * 2011-08-05 2016-11-04 アップル インコーポレイテッド ワイヤレスデータ保護のためのシステム及び方法
JP2014224925A (ja) * 2013-05-16 2014-12-04 凸版印刷株式会社 暗号化装置、復号装置、暗号化方法、復号方法及びプログラム
JP2015022269A (ja) * 2013-07-23 2015-02-02 凸版印刷株式会社 暗号化装置、復号装置、暗号化方法、復号方法及びプログラム

Also Published As

Publication number Publication date
US20040202322A1 (en) 2004-10-14
US20060159266A1 (en) 2006-07-20
WO2004093372A3 (en) 2005-03-10
US7055039B2 (en) 2006-05-30
WO2004093372A2 (en) 2004-10-28

Similar Documents

Publication Publication Date Title
JP2004318154A (ja) ブロック暗号の暗号化法を用いたデジタルコンテンツの保護関連出願本出願は、2003年4月14日に出願された米国仮特許出願番号60/462,987号についての優先権を主張する。著作権表示/許諾この明細書の開示内容の一部は、著作権保護の対象となるマテリアルを含む。著作権者は、この明細書が特許商標庁への特許出願又は記録であると認められるファックスコピー又は特許開示に対しては異議を唱えないが、それ以外のあらゆる全ての著作権の権利を保有する。以下の表示は、後述するソフトウェア及びデータ、並びに添付の図面に適用される。著作権(c)2003:全ての著作権はソニーエレクトロニクスインク社に帰属する(Copyright(c)2003,SonyElectronics,Inc.,AllRightsReserved)。
JP3901909B2 (ja) 暗号化装置およびプログラムを記録した記録媒体
JP5646612B2 (ja) 中間データ変更を使用する構成可能な鍵を用いるホワイトボックス暗号システム
JP6017501B2 (ja) 暗号システム
KR101715027B1 (ko) 입력 의존형 인코딩들을 이용한 화이트-박스 암호화 시스템
JP3864675B2 (ja) 共通鍵暗号装置
JP5355554B2 (ja) 暗号用鍵データの更新
JP5026275B2 (ja) 暗号化関数を難読化するための方法及びシステム
KR101079565B1 (ko) 각각의 암호화 라운드의 코어 암호화 함수를 숨기기 위해 치환들을 사용하는 블록 암호화 시스템
JP5184489B2 (ja) 命令レベルのソフトウェア暗号化のための方法及び装置
US20120269340A1 (en) Hierarchical encryption/decryption device and method thereof
JP2005505069A (ja) メモリ暗号化
TW200828938A (en) Method for securely extending key stream to encrypt high-entropy data
US9450748B2 (en) Decryption of content including partial-block discard
KR20170047853A (ko) Drm 서비스 제공 장치 및 방법, drm 서비스를 이용한 콘텐츠 재생 장치 및 방법
US9621345B2 (en) Countering server-based attacks on encrypted content
Wu et al. A flexible and lightweight user‐demand DRM system for multimedia contents over multiple portable device platforms
WO2007031894A2 (en) Improved cryptographic method and system
JP4752239B2 (ja) 共通鍵暗号方法及び装置
JP3864798B2 (ja) 共通鍵暗号の復号装置
JP3846148B2 (ja) コンテンツ情報復号化方法、コンテンツ情報復号化装置
US20110116630A1 (en) Traceable Method and System for Broadcasting Digital Data
Thiruvengadam Hybrid Encryption Technology for Secure File Storage in Cloud Computing
KR20080016298A (ko) 데이터 송신방법 및 수신방법, 데이터 전송시스템과 데이터재생장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070202

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080529

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20080529

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100531

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101025