(57)【要約】【課題】  デバイス間で送受信されるコンテンツデータの不正コピーを防止する【解決手段】  復号化装置５００は，暗号化装置５５０と相互認証して，暗号化装置５５０と共有する共有コンテンツ鍵を生成する認証部１０２と；暗号化装置５５０からストリーム送信された，複数のデータパケットを含むコンテンツデータを受信する受信部１１２と；受信部１１２により受信されたデータパケットの数に応じて，共有コンテンツ鍵から各データパケットを復号化する相違なる複数の可変コンテンツ鍵を生成するコンテンツ鍵生成部１０６と；データパケットを，データパケットに対応する可変コンテンツ鍵で復号化する復号化部１１４と；復号化部１１４により復号化されたデータパケットを検証するデータ検証部１１６と；を備える。する，請求項１に記載の復号化装置。【選択図】    図３
2007013401.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置であって：
前記暗号化装置と相互認証して，前記暗号化装置と共有する共有コンテンツ鍵を生成する認証部と；
前記暗号化装置からストリーム送信された，複数のデータパケットを含むコンテンツデータを受信する受信部と；
前記受信部により受信されたデータパケットの数に応じて，前記共有コンテンツ鍵から各データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成するコンテンツ鍵生成部と；
前記データパケットを，前記データパケットに対応する前記可変コンテンツ鍵で復号化する復号化部と；
前記復号化部により復号化された前記データパケットを検証するデータ検証部と；
を備えることを特徴とする，
【請求項２】
前記受信部により受信されたコンテンツデータに含まれるデータパケットを取得するデータパケット取得部と；
前記データパケット取得部により前記データパケットが取得されるごとに，前記データパケットの数をカウントするカウント部と；を備え，
前記コンテンツ鍵生成部は，
前記カウント部のカウント数に応じて，前記共有コンテンツ鍵から各データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成し，
前記復号化部は，
前記データパケットを，前記データパケットのカウント数に対応する前記可変コンテンツ鍵で復号化することを特徴とする，請求項１に記載の復号化装置。
【請求項３】
前記コンテンツ鍵生成部は，
所定期間ごとに，前記データパケットの数に応じて前記共有コンテンツ鍵を変化させることを特徴とする，請求項１に記載の復号化装置。
【請求項４】
前記データ検証部は，
前記データパケットが，前記復号化部により正しく復号されたか否かを検証することを特徴とする，請求項１に記載の復号化装置。
【請求項５】
前記暗号化装置は，
前記復号化装置と相互認証して，前記復号化装置と共有する共有コンテンツ鍵を生成する認証部と；
前記コンテンツデータに含まれる複数のデータパケットを取得するデータパケット取得部と；
前記データパケット取得部により取得されたデータパケットの数に応じて，前記共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成するコンテンツ鍵生成部と；
前記データパケットを，前記データパケットに対応する前記可変コンテンツ鍵で暗号化する暗号化部と；
前記暗号化部により暗号化された複数のデータパケットを含むコンテンツデータを，前記復号化装置にストリーム送信する送信部と；
を備えることを特徴とする，請求項１に記載の復号化装置。
【請求項６】
コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置において，コンテンツデータを復号化する復号化方法であって：
前記暗号化装置と相互認証して，前記暗号化装置と共有する共有コンテンツ鍵を生成するステップと；
前記暗号化装置からストリーム送信された，複数のデータパケットを含むコンテンツデータを受信するステップと；
前記データパケットの数に応じて，前記共有コンテンツ鍵から各データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成するステップと；
前記データパケットを，前記データパケットに対応する前記可変コンテンツ鍵で復号化するステップと；
前記復号化されたデータパケットを検証するステップと；
を含むことを特徴とする，復号化方法。
【請求項７】
コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置をして，
前記暗号化装置と相互認証して，前記暗号化装置と共有する共有コンテンツ鍵を生成する処理と；
前記暗号化装置からストリーム送信された，複数のデータパケットを含むコンテンツデータを受信する処理と；
前記データパケットの数に応じて，前記共有コンテンツ鍵から各データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成する処理と；
前記データパケットを，前記データパケットに対応する前記可変コンテンツ鍵で復号化する処理と；
前記復号化されたデータパケットを検証する処理と；
を実行せしめることを特徴とする，コンピュータプログラム。
【請求項８】
外部装置からストリーム送信されたコンテンツデータを暗号化して復号化装置に伝送する暗号化装置であって；
前記復号化装置と相互認証して，前記復号化装置と共有する共有コンテンツ鍵を生成する認証部と；
前記コンテンツデータに含まれる複数のデータパケットを取得するデータパケット取得部と；
前記データパケット取得部により取得されたデータパケットの数に応じて，前記共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成するコンテンツ鍵生成部と；
前記データパケットを，前記データパケットに対応する前記可変コンテンツ鍵で暗号化する暗号化部と；
前記暗号化部により暗号化された複数のデータパケットを含むコンテンツデータを，前記復号化装置にストリーム送信する送信部と；
を備えることを特徴とする暗号化装置。
【請求項９】
前記データパケット取得部により前記データパケットが取得されるごとに，前記データパケットの数をカウントするカウント部；を備え，
前記コンテンツ鍵生成部は，
前記カウント部のカウント数に応じて，前記共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成し，
前記暗号化部は，
前記データパケットを，前記データパケットのカウント数に対応する前記可変コンテンツ鍵で暗号化することを特徴とする，請求項８に記載の暗号化装置。
【請求項１０】
前記コンテンツ鍵生成部は，
所定期間ごとに，前記データパケットの数に応じて前記共有コンテンツ鍵を変化させることを特徴とする，請求項８に記載の暗号化装置。
【請求項１１】
暗号化装置において，復号化装置に伝送するコンテンツデータを暗号化する暗号化方法であって：
外部装置からストリーム送信されたコンテンツデータを受信するステップと；
前記復号化装置と相互認証して，前記復号化装置と共有する共有コンテンツ鍵を生成するステップと；
前記コンテンツデータに含まれる複数のデータパケットを取得するステップと；
前記データパケットの数に応じて，前記共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成するステップと；
前記データパケットを，前記データパケットに対応する前記可変コンテンツ鍵で暗号化するステップと；
前記暗号化された複数のデータパケットを含むコンテンツデータを，前記復号化装置にストリーム送信するステップと；
を含むことを特徴とする，暗号化方法。
【請求項１２】
復号化装置にコンテンツデータを伝送する暗号化装置をして，
外部装置からストリーム送信されたコンテンツデータを受信する処理と；
前記復号化装置と相互認証して，前記復号化装置と共有する共有コンテンツ鍵を生成する処理と；
前記コンテンツデータに含まれる複数のデータパケットを取得する処理と；
前記データパケットの数に応じて，前記共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成する処理と；
前記データパケットを，前記データパケットに対応する前記可変コンテンツ鍵で暗号化する処理と；
前記暗号化された複数のデータパケットを含むコンテンツデータを，前記復号化装置にストリーム送信する処理と；
を実行せしめることを特徴とする，コンピュータプログラム。
【請求項１３】
コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置であって：
前記暗号化装置と相互認証して，前記暗号化装置と共有する共有コンテンツ鍵を生成する認証部と；
前記暗号化装置からストリーム送信された複数のデータパケットを含むコンテンツデータを受信する受信部と；
前記データパケットを前記共有コンテンツ鍵で復号化する復号化部と；
前記復号化部により復号化されたデータパケットに付加された付加カウント値を取得する付加カウント値取得部と；
前記付加カウント値取得部により取得された前記付加カウント値を検証する付加カウント値検証部と；
を備えることを特徴とする，復号化装置。
【請求項１４】
前記受信部により受信されたコンテンツデータに含まれるデータパケットを取得するデータパケット取得部と；
前記データパケット取得部により前記データパケットが取得されるごとに，前記データパケットの数をカウントするカウント部；を備え，
前記付加カウント値検証部は，
前記カウント部によりカウントされたカウント値と前記付加カウント値とを比較して，前記付加カウント値を検証することを特徴とする，請求項１３に記載の復号化装置。
【請求項１５】
前記暗号化装置は，
前記復号化装置と相互認証して，前記復号化装置と共有する共有コンテンツ鍵を生成する認証部と；
前記コンテンツデータに含まれる複数のデータパケットを取得するデータパケット取得部と；
前記コンテンツデータに含まれるデータパケットの数に応じて，前記各データパケットにカウント値を付加するカウント値付加部と；
前記カウント値が付加されたデータパケットを前記共有コンテンツ鍵で暗号化する暗号化部と；
前記暗号化部により暗号化された複数のデータパケットを含むコンテンツデータを，前記復号化装置にストリーム送信する送信部と；
を備えることを特徴とする，請求項１３に記載の復号化装置。
【請求項１６】
コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置において，コンテンツデータを復号化する復号化方法であって：
前記暗号化装置と相互認証して，前記暗号化装置と共有する共有コンテンツ鍵を生成するステップと；
前記暗号化装置からストリーム送信された複数のデータパケットを含むコンテンツデータを受信するステップと；
前記データパケットを前記共有コンテンツ鍵で復号化するステップと；
前記復号化されたデータパケットに付加された付加カウント値を取得するステップと；
前記付加カウント値を検証するステップと；
を含むことを特徴とする，復号化方法。
【請求項１７】
コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置をして，
前記暗号化装置と相互認証して，前記暗号化装置と共有する共有コンテンツ鍵を生成する処理と；
前記暗号化装置からストリーム送信された複数のデータパケットを含むコンテンツデータを受信する処理と；
前記データパケットを前記共有コンテンツ鍵で復号化する処理と；
前記復号化されたデータパケットに付加された付加カウント値を取得する処理と；
前記付加カウント値を検証する処理と；
を実行せしめることを特徴とする，コンピュータプログラム。
【請求項１８】
コンテンツデータを暗号化して復号化装置に伝送する暗号化装置であって：
前記復号化装置と相互認証して，前記復号化装置と共有する共有コンテンツ鍵を生成する認証部と；
前記コンテンツデータに含まれる複数のデータパケットを取得するデータパケット取得部と；
前記コンテンツデータに含まれるデータパケットの数に応じて，前記各データパケットにカウント値を付加するカウント値付加部と；
前記カウント値が付加されたデータパケットを前記共有コンテンツ鍵で暗号化する暗号化部と；
前記暗号化部により暗号化された複数のデータパケットを含むコンテンツデータを，前記復号化装置にストリーム送信する送信部と；
を備えることを特徴とする，暗号化装置。
【請求項１９】
前記データパケット取得部により前記データパケットが取得されるごとに，前記データパケットの数をカウントするカウント部；を備え，
前記カウント値付加部は，
前記カウント部によりカウントされたカウント値を前記各データパケットに付加することを特徴とする，請求項１８に記載の暗号化装置。
【請求項２０】
暗号化装置において，復号化装置に伝送するコンテンツデータを暗号化する暗号化方法であって：
外部装置からストリーム送信されたコンテンツデータを受信するステップと；
前記復号化装置と相互認証して，前記復号化装置と共有する共有コンテンツ鍵を生成するステップと；
前記コンテンツデータに含まれるデータパケットの数に応じて，前記各データパケットにカウント値を付加するステップと；
前記カウント値が付加されたデータパケットを前記共有コンテンツ鍵で暗号化するステップと；
前記暗号化された複数のデータパケットを含むコンテンツデータを，前記復号化装置にストリーム送信するステップと；
を含むことを特徴とする，暗号化方法。
【請求項２１】
復号化装置にコンテンツデータを伝送する暗号化装置をして，
外部装置からストリーム送信されたコンテンツデータを受信する処理と；
前記復号化装置と相互認証して，前記復号化装置と共有する共有コンテンツ鍵を生成する処理と；
前記コンテンツデータに含まれるデータパケットの数に応じて，前記各データパケットにカウント値を付加するステップと；
前記カウント値が付加されたデータパケットを前記共有コンテンツ鍵で暗号化する処理と；
前記暗号化された複数のデータパケットを含むコンテンツデータを，前記復号化装置にストリーム送信する処理と；
を実行せしめることを特徴とする，コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，コンテンツデータの不正コピーを防止することが可能な復号化装置，暗号化装置，復号化方法，暗号化方法およびコンピュータプログラムに関し，特に，コンテンツデータを暗号化／復号化するコンテンツ鍵を時系列で変化させたり，データパケットに時系列情報を設定したりして，コンテンツデータの不正コピーを防止することが可能な復号化装置，復号化方法，暗号化装置，暗号化方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
近年，ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）の性能向上に伴い，ＰＣ上で音楽や映像コンテンツを扱うことが一般化してきた。さらに，インターネットの発展により，ネットワーク上で音楽や映像コンテンツが流通するようになり，これらデジタルコンテンツの不正コピーが問題となっている。そこで，音楽や映像コンテンツについての不正コピー防止技術や著作権保護技術が開発されている。
【０００３】
例えば，著作権保護技術のひとつであるＤＴＣＰ（Ｄｉｇｉｔａｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）は，コンテンツデータを保護する暗号プロトコルである。テレビジョン番組などの映像および音声コンテンツなどのコンテンツデータをデバイス間で送信する場合には，デバイス間の認証により生成した共有鍵でコンテンツスデータを暗号化することにより，コンテンツデータの不正コピー，不正な取り出し，不正な改ざんなどを防止している。
【０００４】
ＤＴＣＰにより暗号化されたコンテンツデータは，ＰＣ内のデバイス間でコンテンツデータを送受信する場合においても，不正コピー等を防ぐため，ＰＣ内のデバイス間で共有のコンテンツ鍵によりコンテンツデータが暗号化される。
【０００５】
上記コンテンツデータは，ＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）と呼ばれる固定長のデータパケットに分割されてストリーム送信される。ＰＣ内のデバイス間でストリーム送信される複数のデータパケットは，デバイス間で共有のコンテンツ鍵で暗号化して伝送される。ＤＴＣＰの認証プロトコルＡＫＥ（Ｄｅｖｉｃｅ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ａｎｄ  Ｋｅｙ  Ｅｘｃｈａｎｇｅ）では，例えば，「Ｆｕｌｌ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ」又は「Ｒｅｓｔｒｉｃｔｅｄ  Ａｕｔｈｅｎｔｉｃａｔｉｏｎ」と呼ばれる認証を行い，鍵交換を行っている。
【０００６】
【非特許文献１】Ｄｉｇｉｔａｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｒｅｖｉｓｉｏｎ１．４（Ｉｎｆｏｒｍａｔｉｏｎａｌ  Ｖｅｒｓｉｏｎ），２００５年２月２８日，Ｐ３５
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ここで，ＰＣ内のデバイス間でストリーム送信されたデータパケットが伝送途中でキャプチャーされて不正にコピーされることが考えられる。このとき，デバイス間で共有のコンテンツ鍵が複数のデータパケットに対して一定である場合には，正常に伝送されたコンテンツデータだけでなく，不正にコピーされたコンテンツデータも復号化されて複数のコンテンツデータが不正に作成されてしまうという問題があった。
【０００８】
そこで，本発明は，このような問題に鑑みてなされたもので，その目的とするところは，デバイス間で送受信されるコンテンツデータの不正コピーを防止することが可能な新規かつ改良された，復号化装置，復号化方法，暗号化装置，暗号化方法およびコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために，本発明のある観点によれば，コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置であって：暗号化装置と相互認証して，暗号化装置と共有する共有コンテンツ鍵を生成する認証部と；暗号化装置からストリーム送信された，複数のデータパケットを含むコンテンツデータを受信する受信部と；受信部により受信されたデータパケットの数に応じて，共有コンテンツ鍵から各データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成するコンテンツ鍵生成部と；データパケットを，データパケットに対応する可変コンテンツ鍵で復号化する復号化部と；復号化部により復号化されたデータパケットを検証するデータ検証部と；を備える復号化装置が提供される。
【００１０】
上記コンテンツデータは，固定長のデータパケットに分割されて暗号化装置から復号化装置にストリーム送信される。また，暗号化装置から送信される複数のデータパケットは，暗号化装置により，相異なる複数のコンテンツ鍵で暗号化されて復号化装置にストリーム送信される。上記復号化装置によれば，暗号化装置と共有する共有コンテンツ鍵から生成した複数の相異なる可変コンテンツ鍵で，対応するデータパケットを復号化して，データパケットが正しく復号化されたか否かを検証することができる。復号化装置は，データパケットが正しく復号化されなかった場合に，コンテンツデータの不正コピーがなされたと判断して，処理を中断したり，正常に伝送されたコンテンツデータのみを記憶したりすることができ，コンテンツデータの不正コピーを防止することが可能となる。
【００１１】
上記復号化装置は，受信部により受信されたコンテンツデータに含まれるデータパケットを取得するデータパケット取得部と；データパケット取得部によりデータパケットが取得されるごとに，データパケットの数をカウントするカウント部と；をさらに備え，上記コンテンツ鍵生成部は，カウント部のカウント数に応じて，共有コンテンツ鍵から各データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成し，上記復号化部は，データパケットを，データパケットのカウント数に対応する可変コンテンツ鍵で復号化するようにしてもよい。また，上記コンテンツ鍵生成部は，所定期間ごとに，データパケットの数に応じて共有コンテンツ鍵を変化させるようにしてもよい。上記データ検証部は，データパケットが，復号化部により正しく復号されたか否かを検証するようにしてもよい。
【００１２】
これにより，復号化装置にストリーム送信されたデータパケットの数に応じて，データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成することができる。例えば，共有コンテンツ鍵が１６バイトの値で生成された場合には，ストリーム送信されたデータパケットを取得するごとに，共有コンテンツ鍵の値を１ビットずつ変化させて相異なる可変コンテンツ鍵を生成するようにしてもよい。暗号化装置と同一の可変コンテンツ鍵生成方法に従って可変コンテンツ鍵を生成することにより，データパケットが，対応する可変コンテンツ鍵で正しく復号化されない場合に，コンテンツデータが不正にコピーされたと判断することが可能となる。
【００１３】
上記暗号化装置は，復号化装置と相互認証して，復号化装置と共有する共有コンテンツ鍵を生成する認証部と；コンテンツデータに含まれる複数のデータパケットを取得するデータパケット取得部と；データパケット取得部により取得されたデータパケットの数に応じて，共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成するコンテンツ鍵生成部と；データパケットを，データパケットに対応する可変コンテンツ鍵で暗号化する暗号化部と；暗号化部により暗号化された複数のデータパケットを含むコンテンツデータを，復号化装置にストリーム送信する送信部と；を備えてもよい。
【００１４】
このように，暗号化装置と復号化装置とが同一の可変コンテンツ鍵生成方法に従って可変コンテンツ鍵を生成することにより，データパケットが，対応する可変コンテンツ鍵で正しく復号化されない場合に，コンテンツデータが不正にコピーされたと判断することができる。
【００１５】
上記課題を解決するために，本発明の別の観点によれば，コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置において，コンテンツデータを復号化する復号化方法であって：暗号化装置と相互認証して，暗号化装置と共有する共有コンテンツ鍵を生成するステップと；暗号化装置からストリーム送信された，複数のデータパケットを含むコンテンツデータを受信するステップと；データパケットの数に応じて，共有コンテンツ鍵から各データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成するステップと；データパケットを，データパケットに対応する可変コンテンツ鍵で復号化するステップと；復号化されたデータパケットを検証するステップと；を含むことを特徴とする，復号化方法が提供される。
【００１６】
上記課題を解決するために，本発明の別の観点によれば，コンピュータに上記の復号化装置として機能させるコンピュータプログラムが提供される。コンピュータプログラムは，コンピュータが備える記憶部に格納され，コンピュータが備えるＣＰＵに読み込まれて実行されることにより，そのコンピュータを上記の復号化装置として機能させる。また，コンピュータプログラムが記録された，コンピュータで読み取り可能な記録媒体も提供される。記録媒体は，例えば，磁気ディスク，光ディスクなどである。
【００１７】
上記課題を解決するために本発明の別の観点によれば，外部装置からストリーム送信されたコンテンツデータを暗号化して復号化装置に伝送する暗号化装置であって；復号化装置と相互認証して，復号化装置と共有する共有コンテンツ鍵を生成する認証部と；コンテンツデータに含まれる複数のデータパケットを取得するデータパケット取得部と；データパケット取得部により取得されたデータパケットの数に応じて，共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成するコンテンツ鍵生成部と；データパケットを，データパケットに対応する可変コンテンツ鍵で暗号化する暗号化部と；暗号化部により暗号化された複数のデータパケットを含むコンテンツデータを，復号化装置にストリーム送信する送信部と；を備えることを特徴とする暗号化装置が提供される。
【００１８】
上記コンテンツデータは，固定長のデータパケットに分割されて，外部装置から暗号化装置にストリーム送信される。上記暗号化装置は，復号化装置と共有する共有コンテンツ鍵から生成した複数の相異なる可変コンテンツ鍵でデータパケットを暗号化して復号化装置にストリーム送信する。データパケットを可変コンテンツ鍵で暗号化することにより，復号化装置にコンテンツデータを送信する間にデータパケットがキャプチャーされてコンテンツデータが不正にコピーされることを防止することができる。
【００１９】
上記暗号化装置は，上記データパケット取得部によりデータパケットが取得されるごとに，データパケットの数をカウントするカウント部；を備え，コンテンツ鍵生成部は，カウント部のカウント数に応じて，共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成し，暗号化部は，データパケットを，データパケットのカウント数に対応する可変コンテンツ鍵で暗号化するようにしてもよい。また，コンテンツ鍵生成部は，所定期間ごとに，データパケットの数に応じて共有コンテンツ鍵を変化させるようにしてもよい。
【００２０】
これにより，取得したデータパケットの数に応じて，データパケットを復号化する相異なる複数の可変コンテンツ鍵を生成することができる。例えば，共有コンテンツ鍵が１６バイトの値で生成された場合には，ストリーム送信されたデータパケットを取得するごとに，共有コンテンツ鍵の値を１ビットずつ変化させて相異なる可変コンテンツ鍵を生成するようにしてもよい。復号化装置と同一の可変コンテンツ鍵生成方法に従って可変コンテンツ鍵を生成することにより，データパケットが，対応する可変コンテンツ鍵で正しく復号化されない場合に，コンテンツデータが不正にコピーされたと判断することができる。
【００２１】
上記課題を解決するために，本発明の別の観点によれば，暗号化装置において，復号化装置に伝送するコンテンツデータを暗号化する暗号化方法であって：外部装置からストリーム送信されたコンテンツデータを受信するステップと；復号化装置と相互認証して，復号化装置と共有する共有コンテンツ鍵を生成するステップと；コンテンツデータに含まれる複数のデータパケットを取得するステップと；データパケットの数に応じて，共有コンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成するステップと；データパケットを，データパケットに対応する可変コンテンツ鍵で暗号化するステップと；暗号化された複数のデータパケットを含むコンテンツデータを，復号化装置にストリーム送信するステップと；を含むことを特徴とする，暗号化方法が提供される。
【００２２】
上記課題を解決するために，本発明の別の観点によれば，コンピュータに上記の暗号化装置として機能させるコンピュータプログラムが提供される。コンピュータプログラムは，コンピュータが備える記憶部に格納され，コンピュータが備えるＣＰＵに読み込まれて実行されることにより，そのコンピュータを上記の暗号化装置として機能させる。また，コンピュータプログラムが記録された，コンピュータで読み取り可能な記録媒体も提供される。記録媒体は，例えば，磁気ディスク，光ディスクなどである。
【００２３】
上記課題を解決するために，本発明の別の観点によれば，コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置であって：暗号化装置と相互認証して，暗号化装置と共有する共有コンテンツ鍵を生成する認証部と；暗号化装置からストリーム送信された複数のデータパケットを含むコンテンツデータを受信する受信部と；データパケットを共有コンテンツ鍵で復号化する復号化部と；復号化部により復号化されたデータパケットに付加された付加カウント値を取得する付加カウント値取得部と；付加カウント値取得部により取得された付加カウント値を検証する付加カウント値検証部と；を備えることを特徴とする，復号化装置が提供される。
【００２４】
上記コンテンツデータは，固定長のデータパケットに分割されて暗号化装置から復号化装置にストリーム送信される。また，暗号化装置から送信される複数のデータパケットは，暗号化装置によりカウント値が付加され，共有コンテンツ鍵で暗号化されて復号化装置にストリーム送信される。上記復号化装置によれば，暗号化装置と共有する共有コンテンツ鍵でデータパケットを復号化して，データパケットに付加された付加カウント値を検証することにより，コンテンツデータの不正コピーがなされたか否かを判断して，処理を中断したり，正常なコンテンツデータのみを記憶したりすることができ，コンテンツデータの不正コピーを防止することが可能となる。
【００２５】
上記復号化装置は，受信部により受信されたコンテンツデータに含まれるデータパケットを取得するデータパケット取得部と；データパケット取得部によりデータパケットが取得されるごとに，データパケットの数をカウントするカウント部；を備え，付加カウント値検証部は，カウント部によりカウントされたカウント値と付加カウント値とを比較して，付加カウント値を検証するようにしてもよい。
【００２６】
これにより，データパケットに付加された付加カウント値とカウント部によりカウントされた値とが異なる場合に，データパケットが不正にコピーされたと判断して，不正にコピーされたデータパケットの記憶等を行なわずに処理を中断したり，正常なコンテンツデータのみを記憶したりして，コンテンツデータの不正コピーを防止することができる。
【００２７】
上記暗号化装置は，復号化装置と相互認証して，復号化装置と共有する共有コンテンツ鍵を生成する認証部と；コンテンツデータに含まれる複数のデータパケットを取得するデータパケット取得部と；コンテンツデータに含まれるデータパケットの数に応じて，各データパケットにカウント値を付加するカウント値付加部と；カウント値が付加されたデータパケットを共有コンテンツ鍵で暗号化する暗号化部と；暗号化部により暗号化された複数のデータパケットを含むコンテンツデータを，復号化装置にストリーム送信する送信部と；を備えるようにしてもよい。
【００２８】
このように，暗号化装置により，復号化装置と暗号化装置との間で伝送されるコンテンツデータに時系列情報が設定されて，復号化装置がその時系列情報の正当性を判断することにより，コンテンツデータの不正コピーを防止することが可能となる。
【００２９】
上記課題を解決するために，本発明の別の観点によれば，コンテンツデータを暗号化する暗号化装置と通信可能な復号化装置において，コンテンツデータを復号化する復号化方法であって：暗号化装置と相互認証して，暗号化装置と共有する共有コンテンツ鍵を生成するステップと；暗号化装置からストリーム送信された複数のデータパケットを含むコンテンツデータを受信するステップと；データパケットを共有コンテンツ鍵で復号化するステップと；復号化されたデータパケットに付加された付加カウント値を取得するステップと；付加カウント値を検証するステップと；を含むことを特徴とする，復号化方法が提供される。
【００３０】
上記課題を解決するために，本発明の別の観点によれば，コンピュータに上記の復号化装置として機能させるコンピュータプログラムが提供される。コンピュータプログラムは，コンピュータが備える記憶部に格納され，コンピュータが備えるＣＰＵに読み込まれて実行されることにより，そのコンピュータを上記の復号化装置として機能させる。また，コンピュータプログラムが記録された，コンピュータで読み取り可能な記録媒体も提供される。記録媒体は，例えば，磁気ディスク，光ディスクなどである。
【００３１】
上記課題を解決するために，本発明の別の観点によれば，コンテンツデータを暗号化して復号化装置に伝送する暗号化装置であって：復号化装置と相互認証して，復号化装置と共有する共有コンテンツ鍵を生成する認証部と；コンテンツデータに含まれる複数のデータパケットを取得するデータパケット取得部と；コンテンツデータに含まれるデータパケットの数に応じて，各データパケットにカウント値を付加するカウント値付加部と；カウント値が付加されたデータパケットを共有コンテンツ鍵で暗号化する暗号化部と；暗号化部により暗号化された複数のデータパケットを含むコンテンツデータを，復号化装置にストリーム送信する送信部と；を備えることを特徴とする，暗号化装置が提供される。
【００３２】
上記コンテンツデータは，固定長のデータパケットに分割されて，外部装置から暗号化装置にストリーム送信される。上記暗号化装置は，カウント値を付加したデータパケットを暗号化して，復号化装置に送信する。データパケットの数により変化するカウント値をデータパケットに付加することにより，復号化装置にコンテンツデータを送信する間にデータパケットがキャプチャーされてコンテンツデータが不正にコピーされることを防止することができる。
【００３３】
上記暗号化装置は，データパケット取得部によりデータパケットが取得されるごとに，データパケットの数をカウントするカウント部；をさらに備え，カウント値付加部は，カウント部によりカウントされたカウント値を各データパケットに付加するようにしてもよい。これにより，データパケットが取得されるごとにカウントしたデータパケットの数をデータパケットに付加することができる。例えば，データパケットを取得するごとに，データパケットに付加するカウント値をインクリメントするようにしてもよい。
【００３４】
上記課題を解決するために，本発明の別の観点によれば，暗号化装置において，復号化装置に伝送するコンテンツデータを暗号化する暗号化方法であって：外部装置からストリーム送信されたコンテンツデータを受信するステップと；復号化装置と相互認証して，復号化装置と共有する共有コンテンツ鍵を生成するステップと；コンテンツデータに含まれるデータパケットの数に応じて，各データパケットにカウント値を付加するステップと；カウント値が付加されたデータパケットを共有コンテンツ鍵で暗号化するステップと；暗号化された複数のデータパケットを含むコンテンツデータを，復号化装置にストリーム送信するステップと；を含むことを特徴とする，暗号化方法が提供される。
【００３５】
上記課題を解決するために，本発明の別の観点によれば，コンピュータに上記の暗号化装置として機能させるコンピュータプログラムが提供される。コンピュータプログラムは，コンピュータが備える記憶部に格納され，コンピュータが備えるＣＰＵに読み込まれて実行されることにより，そのコンピュータを上記の暗号化装置として機能させる。また，コンピュータプログラムが記録された，コンピュータで読み取り可能な記録媒体も提供される。記録媒体は，例えば，磁気ディスク，光ディスクなどである。
【発明の効果】
【００３６】
以上説明したように本発明によれば，暗号化装置と復号化装置との間で送受信されるコンテンツデータの不正コピーを防止することができる。
【発明を実施するための最良の形態】
【００３７】
以下に添付図面を参照しながら，本発明の好適な実施の形態について詳細に説明する。なお，本明細書及び図面において，実質的に同一の機能構成を有する構成要素については，同一の符号を付することにより重複説明を省略する。
【００３８】
まず，図１に基づいて，本実施形態の概要を説明する。以下では，本発明を，外部装置３０からストリーム送信されたコンテンツデータの不正コピーを防止することが可能なＰＣ１０に適用して説明する。
【００３９】
外部装置３０は，テレビジョン放送などの放送波を受信して，受信した電波をＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）２方式で符号化されたコンテンツストリームに変換する機能を有する。テレビジョン放送などの放送波は，例えば地上波デジタル放送，ＣＳ（Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓａｔｅｌｌｉｔｅ）デジタル放送，ＢＳ（Ｂｒｏａｄｃａｓｔ  Ｓａｔｅｌｌｉｔｅ）デジタル放送などである。外部装置３０は，ＭＰＥＧ２方式で符号化されたコンテンツデータをＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）と呼ばれるフォーマットでＰＣ１０に伝送する。
【００４０】
外部装置３０のＴＶチューナー３０ａで受信されたテレビジョン放送などの電波は，ＭＰＥＧ２方式に符号化されてＰＣ１０に伝送される。外部装置３０によりＭＰＥＧ２方式に符号化されたコンテンツデータは，ＴＳ（Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ）と呼ばれる固定長のデータパケットに分割されてＰＣ１０に伝送される。ＰＣ１０は，コンテンツデータを暗号化／復号化するコンテンツ鍵を時系列で変化させたり，データパケットに時系列情報を設定したりして，コンテンツデータの不正コピーを防止する。ＰＣ１０は正常に伝送されたコンテンツデータをハードディスクドライブに記憶したり，記憶したコンテンツデータをＰＣ２０に伝送したりする。
【００４１】
本実施形態では，装置間でコンテンツデータを伝送する際の，不正コピー，不正な取り出し，不正な改ざんを防止する暗号プロトコルによりコンテンツデータを保護している。コンテンツストリームの不正コピー等を防止する暗号プロトコルは，例えばＤＴＣＰ（Ｄｉｇｉｔａｌ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）などを例示することができる。次に，図２に基づいて，装置間のコンテンツデータの伝送方式について説明する。
【００４２】
図２は，本実施形態にかかるコンテンツデータの伝送方式を示す説明図である。図２に示したように，外部装置３０から固定長のデータパケットがＩＥＥＥ（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）１３９４などの接続インタフェースを介してＰＣ１０にストリーム送信される。
【００４３】
ＰＣ１０は，ストリーム送信されたデータパケットをハードディスクドライブ１００ｂに記憶したり，記憶したデータパケットを他のＰＣ２０にストリーム送信したりする。図２に示したように，ＰＣ１０は，ボード１５０ａ，ボード１５０ｂ，情報処理装置１００などを備えている。ボード１５０ａは，ＴＶチューナー３０からストリーム送信されたコンテンツデータをＣＰＵ１００ａに伝送する。
【００４４】
ＴＶチューナー３０ａからボード１５０ａに送信されるコンテンツデータは，ＤＴＣＰなどの暗号プロトコルにより保護されて送信される。具体的には，ＴＶチューナー３０ａとボード１５０ａは，ＤＴＣＰの認証プロトコルで相互認証を行なって生成される共有のコンテンツ鍵でコンテンツデータを暗号化することにより，コンテンツデータの不正コピー，不正な取り出し，不正な改ざんなどを防止する。ボード１５０ａは，ＴＶチューナー３０ａにより暗号化されて送信されたコンテンツデータを復号化する。
【００４５】
ボード１５０ａは，復号化したコンテンツデータを保護するため，ＣＰＵ１００ａと相互認証して生成したコンテンツ鍵によりコンテンツデータを暗号化してＣＰＵ１００ａに伝送する。ＣＰＵ１００ａは，ボード１５０ａにより伝送されたコンテンツデータを復号化してハードディスクドライブ（ＨＤＤ；Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１００ｂに記憶する。さらに，ＨＤＤ１００ｂに記憶されたコンテンツデータは，ボード１５０ｂを介して他のＰＣ２０に転送することができる。
【００４６】
ＰＣ２０は，ＰＣ１０と家庭内で接続される端末であって，ＰＣ１０のボード１５０ｂからＰＣ２０のボード２５０にコンテンツデータが転送される際にも，ＤＴＣＰなどの暗号プロトコルによりコンテンツデータが保護されている。
【００４７】
本実施形態では，装置間のコンテンツデータの伝送に関して，上記のようにコンテンツデータを保護して伝送することができる。しかし，ＰＣ内のデバイス間でストリーム送信されたデータパケットが伝送途中でキャプチャーされて不正にコピーされることが考えられる。上述したように，デバイス間で共有のコンテンツ鍵がデータパケットに対して一定である場合には，正常に伝送されたコンテンツストリームだけでなく，不正のコピーされたコンテンツストリームも復号化されて複数のコンテンツストリームが不正に作成されてしまう。
【００４８】
本実施形態では，ＰＣ内のデバイス間で，コンテンツストリームが不正にコピーされて複数のコンテンツストリームが不正に作成されてしまうことを防止するため，コンテンツデータを暗号化／復号化するコンテンツ鍵を時系列で変化させたり，データパケットに時系列情報を設定したりして，コンテンツデータの不正コピーを防止する。
【００４９】
（第１実施形態）
以上，本実施形態にかかるコンテンツデータの伝送方式について説明した。次に本発明の第１実施形態について説明する。第１実施形態では，コンテンツデータの不正コピーを防止するために，コンテンツデータを暗号化／復号化するコンテンツ鍵を時系列で変化させるＰＣ１０に本発明を適用して説明する。まず，図３に基づいて，図２のボード１５０ａに備わる暗号化装置５５０および情報処理装置１００に備わる復号化装置５００の機能構成について説明する。
【００５０】
情報処理装置１００は暗号化装置５５０を備え，ボード１５０ｂは復号化装置５００を備えるようにしてもよい。外部装置３０からストリーム送信されたコンテンツデータは，ボード１５０ａに備わる暗号化装置５００で暗号化されて，情報処理装置１００に備わる復号化装置５００に伝送される。情報処理装置１００に備わるＨＤＤ１００ｂに記憶されたコンテンツデータは，情報処理装置１００に備わる暗号化装置５５０で暗号化されてボード１５０ｂに備わる復号化装置５００に伝送される。
【００５１】
図３に示したように，暗号化装置５５０は，受信部１５２と，データパケット取得部１５４と，カウント部１５６と，暗号化部１５８と，認証部１６０と，コンテンツ鍵記憶部１６２と，コンテンツ鍵生成部１６４と，送信部１６６などを含む。
【００５２】
受信部１５２は，例えば，通信回線，通信回路，通信デバイス等で構成された通信インタフェースであって，外部装置３０により暗号化されてストリーム送信されたコンテンツデータを受信する機能を有する。外部装置３０から送信されるコンテンツデータは，ＴＳと呼ばれる固定長のデータパケットに分割されて受信部１５２にストリーム送信される。受信部１５２は，受信したコンテンツデータをデータパケット取得部１５４に提供する。
【００５３】
データパケット取得部１５４は，受信部１５２より提供されたコンテンツデータに含まれる複数のデータパケットを取得する機能を有する。また複数のデータパケットが上述したＤＴＣＰなどの暗号プロトコルにより暗号化されている場合には，データパケットを復号化する。データパケット取得部１５４により復号化されたデータパケットは，ＴＳヘッダ（４バイト）とデータ部（１８４バイト）から構成される。
【００５４】
なお，ＴＳパケットのデータ長は，基本的には１８８バイトであるが，データパケット取得部１０６により少なくとも４バイトのタイムスタンプが付加されて合計１９２バイトのＴＳパケットとなる。ＴＳヘッダは，各データパケットに付加されており，ＴＳパケットの開始を示す同期バイト（ｓｙｎｃ_ｂｙｔｅ）やパケット識別子（ＰＩＤ；Ｐａｃｋｅ  Ｉｄｅｎｔｉｆｉｅｒ）などのデータが含まれている。データ部には，映像信号や音声信号がＭＰＥＧ２方式で符号化されたコンテンツデータや，コンテンツデータの制御情報などが格納されている。データパケット取得部１５４は，復号化したデータパケットをカウント部１５６と暗号化部１５８に提供する。
【００５５】
カウント部１５６は，データパケット取得部１５４からデータパケットを提供されるごとにデータパケットの数をカウントする機能を有する。カウント部１５６は，カウントしたデータパケットの数をコンテンツ鍵生成部１６４に提供する。
【００５６】
認証部１６０は，復号化装置５００と相互認証して，共有のコンテンツ鍵を生成する機能を有する。認証部１６０は，例えば，復号化装置５００と乱数を投げ合うことにより，相互に認証し，認証に基づいて暗号化装置５００と共有のコンテンツ鍵を生成する。認証部１６０により生成されたコンテンツ鍵がコンテンツ鍵記憶部１６２に記憶される。
【００５７】
コンテンツ鍵生成部１６４は，カウント部１５６により提供されたデータパケットのカウント数に応じて，コンテンツ鍵記憶部１６２に記憶された共有のコンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成する機能を有する。例えば，共有コンテンツ鍵が１６バイトの値で生成された場合には，カウント数に応じて共有コンテンツ鍵の値を１ビットずつ変化させるようにしてもよい。
【００５８】
図４に示したように，データパケットごとに可変コンテンツ鍵が生成される。例えば，データパケット１に対して可変コンテンツ鍵Ｋｅｙ１が生成され，データパケット２に対して可変コンテンツ鍵Ｋｅｙ２が生成される。このように，データパケットが５０個ある場合には，５０個の可変コンテンツ鍵が生成される。このように，１のデータパケットに対して１の可変コンテンツ鍵が生成されるが，かかる例に限定されず，複数のデータパケットに対して１の可変コンテンツ鍵を生成するようにしてもよい。例えば，データパケット１およびデータパケット２に対してはＫｅｙ１が生成され，データパケット３およびデータパケット４に対してはＫｅｙ２が生成されるようにしてもよい。
【００５９】
図３に戻り，暗号化部１５８は，データパケット取得部１５４により提供されたデータパケットを，コンテンツ鍵生成部１６４により生成された可変コンテンツ鍵で暗号化する機能を有する。図４に示したように，複数の可変コンテンツ鍵が生成された場合には，データパケット１は可変コンテンツ鍵Ｋｅｙ１で暗号化され，データパケット２は可変コンテンツ鍵Ｋｅｙ２で暗号化される。暗号化部１５８により暗号化されたデータパケットが送信部１６６に提供される。
【００６０】
送信部１６６は，例えば，通信回線，通信回路，通信デバイス等で構成された通信インタフェースであって，暗号化部１５８により暗号化されたデータパケットを復号化装置５００にストリーム送信する機能を有する。
【００６１】
以上，暗号化装置５５０の機能構成について説明した。次に復号化装置５００の機能構成について説明する。
【００６２】
図３に示したように，復号化装置５００は，認証部１０２と，コンテンツ鍵記憶部１０４と，コンテンツ鍵生成部１０６と，カウント部１０８と，データパケット取得部１１０と，受信部１１２と，復号化部１１４と，データ検証部１１６と，コンテンツデータ記憶部１１８などを含む。
【００６３】
受信部１１２は，例えば，通信回線，通信回路，通信デバイス等で構成された通信インタフェースであって，暗号化装置５５０から暗号化されてストリーム送信されたコンテンツデータを受信する機能を有する。受信部１１２は，受信したコンテンツデータをデータパケット取得部１１０に提供する。
【００６４】
データパケット取得部１１０は，受信部１１２より提供されたコンテンツデータに含まれる複数のデータパケットを取得する機能を有する。データパケット取得部１１０は，取得したデータパケットをカウント部１０８と復号化部１１４に提供する。
【００６５】
カウント部１０８は，データパケット取得部１１０からデータパケットを提供されるごとにデータパケットの数をカウントする機能を有する。カウント部１０８は，カウントしたデータパケットの数をコンテンツ鍵生成部１０６に提供する。
【００６６】
認証部１０２は，暗号化装置５５０と相互認証して，共有のコンテンツ鍵を生成する機能を有する。認証部１０２は，例えば，暗号化装置５５０と乱数を投げ合うことにより，相互に認証し，認証に基づいて暗号化装置５５０と共有のコンテンツ鍵を生成する。認証部１０２により生成されたコンテンツ鍵がコンテンツ鍵記憶部１０４に記憶される。
【００６７】
コンテンツ鍵生成部１０６は，カウント部１０８により提供されたデータパケットのカウント数に応じて，コンテンツ鍵記憶部１０４に記憶された共有のコンテンツ鍵から各データパケットを暗号化する相異なる複数の可変コンテンツ鍵を生成する機能を有する。例えば，共有コンテンツ鍵が１６バイトの値で生成された場合には，カウント数に応じて１ビットずつ共有コンテンツ鍵の値を変化させるようにしてもよい。
【００６８】
復号化部１１４は，データパケット取得部１１０により提供されたデータパケットを，コンテンツ鍵生成部１０６により生成された可変コンテンツ鍵で復号化する機能を有する。図４に示したように，複数の可変コンテンツ鍵が生成された場合には，データパケット１は可変コンテンツ鍵Ｋｅｙ１で復号化され，データパケット２は可変コンテンツ鍵Ｋｅｙ２で復号化される。復号化部１１４は，復号化したデータパケットをデータ検証部１１６に提供する。
【００６９】
データ検証部１１６は，復号化部１１４により提供されたコンテンツデータが正しく復号化されているか否かを検証して，検証結果を復号化部１１４に通知する。復号化部１１４は，正しく復号化されたコンテンツデータをコンテンツデータ記憶部１１８に記憶する。コンテンツデータがＭＰＥＧ２により符号化されている場合には，復号化された各データパケットの所定部分を確認することにより，データが正しく復号化されているか否かを検証することができる。
【００７０】
ここで，コンテンツデータが伝送途中でキャプチャーされて不正にコピーされることが考えられる。例えば，コンテンツデータがキャプチャーされた場合，すべてのデータパケットを取得した後に，キャプチャーされたコンテンツデータを取得したコンテンツデータに付加することができる。キャプチャーされたコンテンツデータが付加されたコンテンツデータを，復号化部１１４がそれを１のコンテンツデータとして復号化してコンテンツデータ記憶部１１８に記憶すると，コンテンツデータ記憶部１１８には不正にコピーされたコンテンツデータが記憶されることとなってしまう。
【００７１】
しかし，上述したように，装置間で共有のコンテンツ鍵を，同一の鍵生成方法に従ってそれぞれ独立して時系列で変化させることにより，キャプチャーされたコンテンツデータを復号化することができなくなり，不正コピーを防止することが可能となる。
【００７２】
例えば，コンテンツデータには５０のデータパケットが含まれているとする。図５は，暗号化装置５５０から５０のデータパケットが送信され，５０のデータパケットがキャプチャーされて正常なコンテンツデータに不正コピーデータが付加されたことを示している。各データパケットが同一のコンテンツ鍵で暗号化されている場合には，不正コピーデータが付加された１００のデータパケットをすべて復号化することができることとなる。しかし，上述したコンテンツ鍵生成方法によりデータパケットごとに異なる可変コンテンツ鍵を生成することにより，不正コピーデータを正しく復号化することが不可能となる。
【００７３】
上述したように，可変コンテンツ鍵はデータパケットの数に応じて変化する。すなわち，１番目に取得したデータパケット１はＫｅｙ１で暗号化されており，Ｋｅｙ１で復号化される。５０番目に取得したデータパケット５０はＫｅｙ５０で暗号化されておりＫｅｙ５０で復号化される。
【００７４】
一方，不正にコピーされたコンテンツデータは，５０番目に取得したコンテンツデータの後に取得されることとなり，５１番目の不正コピーのデータパケット１はＫｅｙ１で暗号化されている。しかし，復号化部１１４は，不正コピーのデータパケット１は５１番目に取得したデータパケットであるため，復号化部１１４はＫｅｙ５１で不正コピーのデータパケット１を復号化する。したがって，不正コピーのデータパケットは正しく復号化されないこととなる。データ検証部１１６は，コンテンツデータが不正にコピーされていることを復号化部１１４に通知するようにしてもよいし，復号化処理を中断させるようにしてもよい。
【００７５】
以上，暗号化装置５５０と復号化装置５００の機能構成について説明した。次に，図６に基づいて暗号化装置５５０におけるコンテンツデータの暗号化処理について説明する。図６は，暗号化装置５５０におけるコンテンツデータの暗号化処理を示すフローチャートである。
【００７６】
暗号化装置５５０は，外部装置からストリーム送信されたコンテンツデータを受信する（Ｓ１０２）。そして，復号化装置５００と相互に認証することにより，共有コンテンツ鍵（Ｋｅｙ（０））を生成する（Ｓ１０４）。ステップＳ１０２において受信したコンテンツデータに含まれるデータパケット数（ｎ）をカウントする（Ｓ１０６）。
【００７７】
ステップＳ１０６においてカウントしたデータパケット数（ｎ）に応じて可変コンテンツ鍵（Ｋｅｙ（ｎ））を生成する（Ｓ１０８）。そして，各データパケットに対応する可変コンテンツ鍵でデータパケットを暗号化する（Ｓ１１０）。ステップＳ１１０で暗号化されたデータパケットを送信する（Ｓ１１２）。コンテンツデータに含まれるすべてのデータパケットを暗号化するまでステップＳ１０６からステップＳ１１２までの処理を繰り返す。コンテンツデータに含まれるすべてのデータパケットを暗号化したか否かを判定する（Ｓ１１４）。ステップＳ１１４においてすべてのデータパケットを暗号化したと判定された場合に処理を終了する。
【００７８】
以上，暗号化装置５５０におけるコンテンツデータの暗号化処理について説明した。次に，図７に基づいて，復号化装置５００におけるコンテンツデータの復号化処理について説明する。図７は，復号化装置５００におけるコンテンツデータの復号化処理を示すフローチャートである。
【００７９】
まず，暗号化装置５５０と相互に認証することにより，共有コンテンツ鍵（Ｋｅｙ（０））を生成する（Ｓ１２２）。暗号化装置５５０からストリーム送信された暗号化コンテンツデータを受信する（Ｓ１２４）。ステップＳ１２４において受信したコンテンツデータに含まれるデータパケット数（ｎ）をカウントする（Ｓ１２６）。ステップＳ１２６においてカウントしたデータパケット数（ｎ）に応じて可変コンテンツ鍵（Ｋｅｙ（ｎ））を生成する（Ｓ１２８）。
【００８０】
そして，各データパケットに対応する可変コンテンツ鍵でデータパケットを復号化する（Ｓ１３０）。ステップＳ１３０において復号化されたコンテンツデータが正しく復号化されているか否かを判定する（Ｓ１３２）。ステップＳ１３２においてコンテンツデータが正しく復号化されていないと判定された場合には，処理を終了する。ステップＳ１３２においてコンテンツデータが正しく復号化された場合には，ステップＳ１３４の処理を行なう。
【００８１】
ステップＳ１３４において，コンテンツデータに含まれるすべてのデータパケットを暗号化したか否かを判定し，すべてのデータパケットを暗号化したと判定された場合には処理を終了する。
【００８２】
上記実施形態によれば，復号化装置５００と暗号化装置５５０との間で伝送されるコンテンツデータを暗号化／復号化するコンテンツ鍵を，同一の鍵生成方法に従って時系列で変化させることにより，装置間で伝送されるコンテンツデータの不正コピーを防止することが可能となる。以上，本発明にかかる第１実施形態について説明した。次に本発明にかかる第２実施形態について説明する。
【００８３】
（第２実施形態）
第２実施形態では，コンテンツデータの不正コピーを防止するために，データパケットに時系列情報を設定するＰＣ１０に本発明を適用して説明する。まず，図８に基づいて，暗号化装置５５０’および復号化装置５００’の機能構成について説明する。
【００８４】
図８に示したように，暗号化装置５５０’は，受信部１５２と，データパケット取得部１５４と，カウント部１５６と，暗号化部１５８と，認証部１６０と，コンテンツ鍵記憶部１６２と，送信部１６６と，カウント値付加部１６８などを含む。受信部１５２と，データパケット取得部１５４と，カウント部１５６と，暗号化部１５８と，認証部１６０と，コンテンツ鍵記憶部１６２と，送信部１６６は，第１実施形態とほぼ同様の機能を備えるため説明を省略する。本実施形態の暗号化装置５５０’については，第１実施形態の暗号化装置５５０と異なる機能について主に説明する。
【００８５】
データパケット取得部１５４は，受信部１５２より提供されたコンテンツデータに含まれる複数のデータパケットを取得して，データパケットをカウント部１５６とカウント値付加部１６８に提供する。カウント部１５６は，データパケット取得部１５４からデータパケットを提供されるごとにデータパケットの数をカウントし，カウントしたデータパケットの数をカウント値付加部１６８に提供する。
【００８６】
カウント値付加部１６８は，データパケット取得部１５４により提供されたデータパケットに，カウント部１５６により提供されたカウント値を付加する。カウント値付加部１５８は，カウント値を付加したデータパケットを暗号化部１５８に提供する。例えば，５０のデータパケットを取得した場合には，データパケットを取得した順にデータパケットの数をデータパケットに付加する。図９に示したように，データパケットごとにカウント部でカウントされたデータパケットの数が付加される。例えば，データパケット１にはカウント値１が付加され，データパケット２にはカウント値２が付加される。本実施形態では，１のデータパケットに１のカウント値が付加されるが，かかる例に限定されず，複数のデータパケットごとにカウント値を付加するようにしてもよい。
【００８７】
図８に戻り，暗号化部１５８は，カウント値付加部１６８により提供されたカウント値が付加されたデータパケットをコンテンツ鍵記憶部１６２に記憶された共有コンテンツ鍵で暗号化する。本実施形態では，第１実施形態同様，認証部１６０において復号化装置５００’と相互認証して生成された共有コンテンツ鍵がコンテンツ鍵記憶部１６２に記憶されている。
【００８８】
送信部１６６は，暗号化部１５８により暗号化されたデータパケットを復号化装置５００にストリーム送信する機能を有する。以上，暗号化装置５５０’の機能構成について説明した。次に，復号化装置５００’の機能構成について説明する。
【００８９】
図８に示したように，復号化装置５００’は，認証部１０２と，コンテンツ鍵記憶部１０４と，カウント部１０８と，データパケット取得部１１０と，受信部１１２と，復号化部１１４と，付加カウント値取得部１２０と，付加カウント値検証部１２２などを含む。認証部１０２と，コンテンツ鍵記憶部１０４と，カウント部１０８と，データパケット取得部１１０と，受信部１１２と，復号化部１１４は，第１実施形態とほぼ同様の機能を備えるため説明を省略する。本実施形態の復号化装置５００’については，第１実施形態の復号化装置５００と異なる機能について主に説明する。
【００９０】
データパケット取得部１１０は，受信部１１２より提供されたコンテンツデータに含まれる複数のデータパケットを取得して，カウント部１０８と復号化部１１４に提供する。カウント部１０８は，データパケット取得部１１０からデータパケットを提供されるごとにデータパケットの数をカウントする機能を有する。カウント部１０８は，カウントしたデータパケットの数を付加カウント値検証部１２２に提供する。
【００９１】
復号化部１１４は，データパケット取得部１１０により提供されたデータパケットを，コンテンツ鍵記憶部１０４に記憶された共有コンテンツ鍵で復号化する機能を有する。付加カウント値取得部１２０は，復号化部１１４により復号化されたデータパケットに付加された付加カウント値を取得する機能を有する。図９に示したように，暗号化装置５００’により付加カウント値が付加されたデータパケットが暗号化されて送信される。付加カウント値取得部１２０は，復号化されたデータパケットから付加カウント値を取得して付加カウント値検証部１２２に提供する。
【００９２】
付加カウント値検証部１２２は，カウント部１０８により提供されたカウント値と，付加カウント値取得部１２０により提供された付加カウント値とを比較して，データパケットに付加された付加カウント値を検証する機能を有する。
【００９３】
上述したように，コンテンツデータが伝送途中でキャプチャーされて不正にコピーされた場合，すべてのデータパケットを取得した後に，キャプチャーされたコンテンツデータを取得したコンテンツデータに付加することができる。キャプチャーされたコンテンツデータが付加されたコンテンツデータを，復号化部１１４がそれを１のコンテンツデータとして復号化してコンテンツデータ記憶部１１８に記憶すると，コンテンツデータ記憶部１１８には不正にコピーされたコンテンツデータが記憶されることとなってしまう。
【００９４】
しかし，データパケットにカウント数などの時系列情報を付加して，データパケットの暗号化／復号化を行なうことにより，不正コピーがなされているか否かを判定することが可能となる。
【００９５】
例えば，コンテンツデータには５０のデータパケットが含まれているとする。図１０は，暗号化装置５５０’から５０のデータパケットが送信され，５０のデータパケットがキャプチャーされて不正コピーデータが付加されたことを示している。各データパケットには，暗号化装置５５０’により付加カウント値が付加されている。図１０に示したようにデータパケット１〜データパケット５０にそれぞれ付加カウント値１〜５０が付加されており，同様に，不正コピーデータのデータパケット１〜データパケット５０にもそれぞれ付加カウント値１〜５０が付加されている。
【００９６】
カウント部１０８は，データパケットが取得されるごとにデータパケットの数をカウントする。すなわち，データパケット１のカウント値が１，データパケット２のカウント値が２となる。そして，不正にコピーされたデータパケット１は５１番目のデータパケットとなるため，カウント値が５１となる。付加カウント値検証部１２２は，上述したように，付加カウント値とカウント値を比較する。不正にコピーされたデータパケット１の付加カウント値は１で，データパケット１のカウント値が５１となり，付加カウント値とカウント値が一致しないためコンテンツデータが不正にコピーされていると判断することができる。
【００９７】
図８に戻り，データ検証部１２０は，コンテンツデータが不正にコピーされていることを復号化部１１４に通知するようにしてもよいし，復号化処理を中断させるようにしてもよい。
【００９８】
以上，暗号化装置５５０’と復号化装置５００’の機能構成について説明した。次に，図１１に基づいて暗号化装置５５０’におけるコンテンツデータの暗号化処理について説明する。図１１は，暗号化装置５５０’におけるコンテンツデータの暗号化処理を示すフローチャートである。
【００９９】
暗号化装置５５０’は，外部装置からストリーム送信されたコンテンツデータ受信する（Ｓ２０２）。そして，復号化装置５００’と相互に認証することにより，共有コンテンツ鍵（Ｋｅｙ（０））を生成する（Ｓ２０４）。ステップＳ２０２において受信したコンテンツデータに含まれるデータパケット数（ｎ）をカウントする（Ｓ１０６）。
【０１００】
ステップＳ１０６においてカウントしたカウント値（ｎ）をデータパケットに付加する（Ｓ２０８）。ステップＳ２０４において生成した共有コンテンツ鍵（Ｋｅｙ（０））でカウント値を付加したデータパケットを暗号化する（Ｓ２１０）。コンテンツデータに含まれるすべてのデータパケットを暗号化するまでステップＳ２０２からステップＳ２１０の処理を繰り返す。コンテンツデータに含まれるすべてのデータパケットを暗号化したか否かを判定する（Ｓ２１２）。ステップＳ２１２においてすべてのデータパケットを暗号化したと判定された場合に処理を終了する。
【０１０１】
以上，暗号化装置５５０’におけるコンテンツデータの暗号化処理について説明した。次に，図１２に基づいて，復号化装置５００’におけるコンテンツデータの復号化処理について説明する。図１２は，復号化装置５００’におけるコンテンツデータの復号化処理を示すフローチャートである。
【０１０２】
まず，暗号化装置５５０’と相互に認証することにより，共有コンテンツ鍵（Ｋｅｙ（０））を生成する（Ｓ２２２）。暗号化装置５５０’からストリーム送信された暗号化コンテンツデータを受信する（Ｓ２２４）。ステップＳ２２４において受信したコンテンツデータを復号化して，コンテンツデータに含まれるデータパケット数（ｎ）をカウントする（Ｓ２２６）。ステップＳ２２４において受信したデータパケットに付加された付加カウント値を取得する（Ｓ２２８）。
【０１０３】
ステップＳ２２６においてカウントしたカウント数（ｎ）とステップＳ２２８において取得した付加カウント値とを比較して，付加カウント値を検証する（Ｓ２３０）。ステップＳ２３０において付加カウント値を検証した結果，データパケットのカウント数（ｎ）と付加カウント値が一致しているか否かを判定する（Ｓ２３２）。ステップＳ２３２においてカウント数（ｎ）と付加カウント値とが一致していると判定された場合には，ステップＳ２３４の処理を行なう。ステップＳ２３２において，カウント数（ｎ）と付加カウント値とが一致していないと判定された場合には，コンテンツデータが不正にコピーされたと判断して処理を終了する。
【０１０４】
ステップＳ２３４において，コンテンツデータに含まれるすべてのデータパケットを暗号化したか否かを判定し，すべてのデータパケットを暗号化したと判定された場合には処理を終了する。  上記実施形態によれば，復号化装置５００’と暗号化装置５５０’との間で伝送されるコンテンツデータに時系列情報を設定することにより，装置間で伝送されるコンテンツデータの不正コピーを防止することが可能となる。以上，本発明にかかる第２実施形態について説明した。
【０１０５】
上記第１実施形態および第２実施形態にかかる暗号化装置と復号化装置とは，それぞれ別のＰＣに備えられていてもよいし，１のＰＣに第１実施形態および第２実施形態の機能を備える暗号化装置と復号化装置が備えられていてもよい。例えば，コンテンツデータのデータ長や，データ種類に応じて，暗号化処理方法および復号化処理方法を選択するようにしてもよい。上述したように，ストリーム送信されたコンテンツデータがＭＰＥＧ２方式で符号化されている場合には，復号化されたコンテンツデータの所定部分を確認することにより，データが正しく復号化されているか否かを検証することができる。その場合には第１実施形態に示した可変コンテンツ鍵を用いてコンテンツデータを暗号化／復号化するようにしてもよい。また，コンテンツデータの所定部分を確認しても，データが正しく復号化されているか否かを検証することができない場合には，第２実施形態に示したようにデータパケットに付加カウント値を付加するようにしてもよい。
【０１０６】
以上，添付図面を参照しながら本発明の好適な実施形態について説明したが，本発明は係る例に限定されないことは言うまでもない。当業者であれば，特許請求の範囲に記載された範疇内において，各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【０１０７】
本実施形態では，地上波デジタル放送などの放送波をテレビジョンなどの外部装置が受信して，外部装置からＩＥＥＥ（Ｉｎｓｔｉｔｕｔｅ  ｏｆ  Ｅｌｅｃｔｒｉｃａｌ  ａｎｄ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｅｎｇｉｎｅｅｒｓ）１３９４などの接続インタフェースを介してＰＣ１０にコンテンツデータがストリーム送信されるが，かかる例に限定されない。例えば，地上波デジタル放送で行われる１セグメント放送を携帯電話などの移動端末で受信するようにしてもよい。地上波デジタル放送方式では，１つのチャンネルが１３のセグメントに分割されており，これをいくつか束ねて映像やデータ，音声などを送信している。このセグメントのうち，１つは移動体向け放送に予約されており，これを１セグメント放送と呼んでいる。図１３に示したように，１セグメント放送波を携帯電話などの移動端末で受信する場合には，移動端末と本発明にかかるＰＣとをＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格のネットワークにより接続して，コンテンツデータを転送するようにしてもよい。なお，コンテンツデータは，例えば，ＭＰＥＧ４−ＡＶＣ又はＨ．２６１−ＡＶＣなどでエンコードされている。
【図面の簡単な説明】
【０１０８】
【図１】本発明の実施形態にかかる概要を示す説明図である。
【図２】本発明の実施形態にかかるコンテンツデータの伝送方式を示す説明図である。
【図３】本発明の第１の実施形態にかかる暗号化装置および復号化装置の機能構成を示すブロック図である。
【図４】同実施の形態におけるデータパケットごとに生成される可変コンテンツ鍵について説明する説明図である。
【図５】同実施の形態におけるデータパケットの復号処理について説明する説明図である。
【図６】同実施の形態におけるコンテンツデータの暗号化処理を示すフローチャートである。
【図７】同実施の形態におけるコンテンツデータの復号化処理を示すフローチャートである。
【図８】本発明の第２の実施形態にかかる暗号化装置および復号化装置の機能構成を示すブロック図である。
【図９】同実施の形態におけるカウント値が付加されたデータパケットについて説明する説明図である。
【図１０】同実施の形態におけるデータパケットの復号処理について説明する説明図である。
【図１１】同実施の形態におけるコンテンツデータの暗号化処理を示すフローチャートである。
【図１２】同実施の形態におけるコンテンツデータの復号化処理を示すフローチャートである。
【図１３】本発明の変形例にかかるコンテンツデータの伝送方式を示す説明図である。
【符号の説明】
【０１０９】
１００      情報処理装置
１０２      認証部
１０６      コンテンツ鍵生成部
１０８      カウント部
１１０      データパケット取得部
１１２      受信部
１１４      復号化部
１１６      データ検証部
１１８      コンテンツデータ記憶部
１２０      付加カウント値取得部
１２２      付加カウント値検証部
１５２      受信部
１５４      データパケット取得部
１５６      カウント部
１５８      暗号化部
１６０      認証部
１６４      コンテンツ鍵生成部
１６６      送信部
１６８      カウント値付加部
５００，５００’      暗号化装置
５５０，５５０’      復号化装置
【図１】
2007013401.tif 000003
【図２】
2007013401.tif 000004
【図３】
2007013401.tif 000005
【図４】
2007013401.tif 000006
【図５】
2007013401.tif 000007
【図６】
2007013401.tif 000008
【図７】
2007013401.tif 000009
【図８】
2007013401.tif 000010
【図９】
2007013401.tif 000011
【図１０】
2007013401.tif 000012
【図１１】
2007013401.tif 000013
【図１２】
2007013401.tif 000014
【図１３】
2007013401.tif 000015