JP2006041570A - 情報処理システム、情報処理装置、情報処理方法、並びにプログラム - Google Patents

情報処理システム、情報処理装置、情報処理方法、並びにプログラム Download PDF

Info

Publication number
JP2006041570A
JP2006041570A JP2004213882A JP2004213882A JP2006041570A JP 2006041570 A JP2006041570 A JP 2006041570A JP 2004213882 A JP2004213882 A JP 2004213882A JP 2004213882 A JP2004213882 A JP 2004213882A JP 2006041570 A JP2006041570 A JP 2006041570A
Authority
JP
Japan
Prior art keywords
unit
key
information
encryption
unit information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
JP2004213882A
Other languages
English (en)
Inventor
Keiko Saeki
恵子 佐伯
Munetake Ebihara
宗毅 海老原
Kazuhide Adachi
一秀 足立
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 Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2004213882A priority Critical patent/JP2006041570A/ja
Priority to US11/185,601 priority patent/US20060018465A1/en
Priority to EP05254544A priority patent/EP1619896A2/en
Publication of JP2006041570A publication Critical patent/JP2006041570A/ja
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4143Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a Personal Computer [PC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates

Landscapes

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

Abstract

【課題】 情報を保護できるようにする。
【解決手段】 ブロック分割部252は、コンテンツを複数のブロックに分割する。コンテンツ鍵生成部281は、コンテンツに共通して使用されるコンテンツ鍵Kcを生成し、Seed生成部282は、所定の数のブロックごとにSeedを生成する。暗号化部283は、Seedをコンテンツ鍵Kcで暗号化し、所定の数のブロックごとにブロック鍵Kbを生成する。暗号化部254は、ブロック分割部252から供給されたブロックを、所定の数のブロックごとに生成されたブロック鍵Kbで暗号化する。ライセンス処理部211は、Seed生成部282により生成されたSeedに基づいて、ライセンスが有効なSeedの範囲と、コンテンツ鍵Kcを少なくとも含むライセンスを生成し、コンテンツに付加する。本発明は、情報を暗号化する情報処理装置に適用することができる。
【選択図】図7

Description

本発明は、情報処理システム、情報処理装置、情報処理方法、並びにプログラムに関し、特に、情報を保護できるようにした情報処理システム、情報処理装置、情報処理方法、並びにプログラムに関する。
情報を安全に転送するために、例えば、転送側の装置は情報(平文)を暗号化して転送し、受信側の装置は、暗号化された情報(平文)を復号して、暗号化する前の情報(平文)を得るようにしている。
例えば、非特許文献1には、暗号化方式として、ISMA Crypとして標準化されているストリーム暗号方式が記載されている。この方式は、ストリームと暗号ストリームの排他的論理和を演算することにより平文を守っている。
Internet Streaming Media Alliance Encryption and Authentication Specification Version 1.0 February 2004
しかしながら、ISMA Crypとして標準化されているストリーム暗号方式では、情報(平文)が分かってしまうと、暗号ストリームを割り出すことが可能となり、割り出された暗号ストリームが利用されて、コンテンツの入れ替えが可能になってしまい、コンテンツを安全に転送することができないという課題があった。
また、1つのコンテンツを2つに分割したり、分割された複数のコンテンツを1つに結合する技術と、上述した方式とをあわせた場合、分割されたコンテンツはそれぞれ同じ鍵(1つの鍵)で暗号化する。そのため、悪意のあるユーザが、あるコンテンツの後ろに、そのコンテンツと同じコンテンツをコピーして付加し、その後、コンテンツを分割して1つずつのコンテンツとした場合、コンテンツのコピーを生成することができ、コンテンツを確実に保護するのは困難であるという課題があった。
本発明はこのような状況に鑑みてなされたものであり、情報を、確実に保護できるようにするものである。
本発明の情報処理システムは、情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割手段と、複数の第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成手段と、数生成手段により生成されたそれぞれの数を暗号化するための鍵である第1の鍵を生成する鍵生成手段と、数生成手段により第2の単位情報ごとに生成された数を、鍵生成手段により生成された第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する第1の暗号化手段と、第2の単位情報に含まれる複数の第1の単位情報を、第1の暗号化手段により生成された第2の鍵でそれぞれ暗号化する第2の暗号化手段と、第2の暗号化手段により暗号化された複数の第1の単位情報、数、および第1の鍵を記憶する記憶手段と、記憶手段に記憶されている数を、第1の鍵で暗号化し、第2の単位情報ごとに第2の鍵を生成する第3の暗号化手段と、記憶手段に記憶されている、暗号化されている複数の第1の単位情報を、第3の暗号化手段により生成された第2の鍵でそれぞれ復号する復号手段とを備えることを特徴とする。
本発明の第1のプログラムは、情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割ステップと、複数の第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成ステップと、数生成ステップの処理により生成されたそれぞれの数を暗号化するための鍵である第1の鍵を生成する鍵生成ステップと、数生成ステップの処理により第2の単位情報ごとに生成された数を、鍵生成ステップの処理により生成された第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する第1の暗号化ステップと、第2の単位情報に含まれる複数の第1の単位情報を、第1の暗号化ステップの処理により生成された第2の鍵でそれぞれ暗号化する第2の暗号化ステップと、第2の暗号化ステップの処理により暗号化された複数の第1の単位情報、数、および第1の鍵の記憶を制御する記憶制御ステップと、記憶制御ステップの処理により記憶が制御された数を、第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する第3の暗号化ステップと、記憶制御ステップの処理により記憶が制御された、暗号化されている複数の第1の単位情報を、第3の暗号化ステップの処理により生成された第2の鍵でそれぞれ復号する復号ステップとを含む処理をコンピュータに実行させることを特徴とする。
第1の本発明においては、情報が、所定の単位の情報である第1の単位情報ごとに分割され、複数の第1の単位情報からなる第2の単位情報ごとに、1つの数が生成され、生成されたそれぞれの数を暗号化するための鍵である第1の鍵が生成され、第2の単位情報ごとに生成された数が、第1の鍵で暗号化されることによって、第2の単位情報ごとに第2の鍵が生成され、第2の単位情報に含まれる複数の第1の単位情報が、第2の鍵でそれぞれ暗号化され、暗号化された複数の第1の単位情報、数、および第1の鍵が記憶される。また、記憶された数が、第1の鍵で暗号化されることによって、第2の単位情報ごとに第2の鍵が生成され、記憶された、暗号化されている複数の第1の単位情報が、生成された第2の鍵でそれぞれ復号される。
本発明の第1の情報処理装置は、情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割手段と、複数の第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成手段と、数生成手段により生成されたそれぞれの数を暗号化するための鍵である第1の鍵を生成する鍵生成手段と、数生成手段により第2の単位情報ごとに生成された数を、鍵生成手段により生成された第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する第1の暗号化手段と、第2の単位情報に含まれる複数の第1の単位情報を、第1の暗号化手段により生成された第2の鍵でそれぞれ暗号化する第2の暗号化手段とを備えることを特徴とする。
第2の暗号化手段により暗号化された複数の第1の単位情報からなる第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶するとともに、第1の鍵を記憶する記憶手段をさらに備えるものとすることができる。
第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、第2の単位情報は、複数のピクチャからなる1GOP(Group of Pictures)であり、単位分割手段は、情報をピクチャごとに分割し、数生成手段は、GOPごとに、1つの数を生成し、第1の暗号化手段は、数を第1の鍵で暗号化することによって、GOPごとに第2の鍵を生成し、第2の暗号化手段は、GOPに含まれる複数のピクチャを、第2の鍵でそれぞれ暗号化するものとすることができる。
第2の単位情報に対応する数であって、対応する第2の単位情報を復号するために暗号化を許可する数と、第1の鍵とを少なくとも含む、情報に関するライセンスを生成するライセンス生成手段をさらに備え、記憶手段は、第2の暗号化手段により暗号化された複数の第1の単位情報からなる第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶するとともに、ライセンス生成手段により生成された、第1の鍵を少なくとも含むライセンスを記憶するものとすることができる。
ユーザからの指令に基づいて、暗号化されている情報を分割する情報分割手段をさらに備え、ライセンス生成手段は、情報分割手段により分割された情報と、記憶手段に記憶されたライセンスに基づいて、分割された情報のそれぞれに対応するライセンスを生成するものとすることができる。
本発明の第1の情報処理方法は、情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割ステップと、複数の第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成ステップと、数生成ステップの処理により生成されたそれぞれの数を暗号化するための鍵である第1の鍵を生成する鍵生成ステップと、数生成ステップの処理により第2の単位情報ごとに生成された数を、鍵生成ステップの処理により生成された第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する第1の暗号化ステップと、第2の単位情報に含まれる複数の第1の単位情報を、第1の暗号化ステップの処理により生成された第2の鍵でそれぞれ暗号化する第2の暗号化ステップとを含むことを特徴とする。
本発明の第2のプログラムは、情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割ステップと、複数の第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成ステップと、数生成ステップの処理により生成されたそれぞれの数を暗号化するための鍵である第1の鍵を生成する鍵生成ステップと、数生成ステップの処理により第2の単位情報ごとに生成された数を、鍵生成ステップの処理により生成された第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する第1の暗号化ステップと、第2の単位情報に含まれる複数の第1の単位情報を、第1の暗号化ステップの処理により生成された第2の鍵でそれぞれ暗号化する第2の暗号化ステップとを含む処理をコンピュータに実行させることを特徴とする。
第2の暗号化ステップの処理により暗号化された複数の第1の単位情報からなる第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶部に記憶するよう制御するとともに、第1の鍵を記憶部に記憶するよう制御する記憶制御ステップをさらに含むものとすることができる。
第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、第2の単位情報は、複数のピクチャからなる1GOPであり、単位分割ステップの処理では、情報をピクチャごとに分割し、数生成ステップの処理では、GOPごとに、1つの数を生成し、第1の暗号化ステップの処理では、数を第1の鍵で暗号化することによって、GOPごとに第2の鍵を生成し、第2の暗号化ステップの処理では、GOPに含まれる複数のピクチャを、第2の鍵でそれぞれ暗号化するものとすることができる。
第2の単位情報に対応する数であって、対応する第2の単位情報を復号するために暗号化を許可する数と、第1の鍵とを少なくとも含む、情報に関するライセンスを生成するライセンス生成ステップをさらに含み、記憶制御ステップの処理では、第2の暗号化ステップの処理により暗号化された複数の第1の単位情報からなる第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶部への記憶を制御するとともに、ライセンス生成ステップの処理により生成された、第1の鍵を少なくとも含むライセンスの記憶部への記憶を制御するものとすることができる。
ユーザからの指令に基づいて、暗号化されている情報を分割する情報分割ステップをさらに含み、ライセンス生成ステップの処理では、情報分割ステップの処理により分割された情報と、記憶制御ステップの処理により記憶が制御されたライセンスに基づいて、分割された情報のそれぞれに対応するライセンスを生成するものとすることができる。
第2の本発明においては、情報が、所定の単位の情報である第1の単位情報ごとに分割され、複数の第1の単位情報からなる第2の単位情報ごとに、1つの数が生成され、生成されたそれぞれの数を暗号化するための鍵である第1の鍵が生成され、第2の単位情報ごとに生成された数が、第1の鍵で暗号化されることによって、第2の単位情報ごとに第2の鍵が生成され、第2の単位情報に含まれる複数の第1の単位情報が、第2の鍵でそれぞれ暗号化される。
本発明の第2の情報処理装置は、所定の単位の情報である第1の単位情報ごとに情報が分割され、複数の第1の単位情報からなる第2の単位情報ごとに生成された1つの数が、それぞれの数を暗号化するために生成された第1の鍵で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵でそれぞれ暗号化された複数の第1の情報を復号する情報処理装置であって、第2の単位情報ごとに生成された数をそれぞれ取得する数取得手段と、数取得手段により取得されたそれぞれの数を暗号化するための第1の鍵を取得する鍵取得手段と、数取得手段により取得された数を、鍵取得手段により取得された第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する暗号化手段と、第2の単位情報に含まれる複数の暗号化されている第1の単位情報を、暗号化手段により生成された第2の鍵でそれぞれ復号する復号手段とを備えることを特徴とする。
第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、第2の単位情報は、複数のピクチャからなる1GOPであり、復号手段は、GOPに含まれる複数のピクチャを、第2の鍵でそれぞれ復号するものとすることができる。
情報には、第2の単位情報に対応する数であって、対応する第2の単位情報を復号するために暗号化を許可する数と、第1の鍵とを少なくとも含む、情報に関するライセンスがさらに含まれるものとすることができる。
本発明の第2の情報処理方法は、所定の単位の情報である第1の単位情報ごとに情報が分割され、複数の第1の単位情報からなる第2の単位情報ごとに生成された1つの数が、それぞれの数を暗号化するために生成された第1の鍵で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵でそれぞれ暗号化された複数の第1の情報を復号する情報処理装置の情報処理方法であって、第2の単位情報ごとに生成された数をそれぞれ取得する数取得ステップと、数取得ステップの処理により取得されたそれぞれの数を暗号化するための第1の鍵を取得する鍵取得ステップと、数取得ステップの処理により取得された数を、鍵取得ステップの処理により取得された第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する暗号化ステップと、第2の単位情報に含まれる複数の暗号化されている第1の単位情報を、暗号化ステップの処理により生成された第2の鍵でそれぞれ復号する復号ステップとを含むことを特徴とする。
本発明の第3のプログラムは、所定の単位の情報である第1の単位情報ごとに情報が分割され、複数の第1の単位情報からなる第2の単位情報ごとに生成された1つの数が、それぞれの数を暗号化するために生成された第1の鍵で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵でそれぞれ暗号化された複数の第1の情報を復号するプログラムであって、第2の単位情報ごとに生成された数をそれぞれ取得する数取得ステップと、数取得ステップの処理により取得されたそれぞれの数を暗号化するための第1の鍵を取得する鍵取得ステップと、数取得ステップの処理により取得された数を、鍵取得ステップの処理により取得された第1の鍵で暗号化することによって、第2の単位情報ごとに第2の鍵を生成する暗号化ステップと、第2の単位情報に含まれる複数の暗号化されている第1の単位情報を、暗号化ステップの処理により生成された第2の鍵でそれぞれ復号する復号ステップとを含む処理をコンピュータに実行させることを特徴とする。
第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、第2の単位情報は、複数のピクチャからなる1GOPであり、復号ステップの処理では、GOPに含まれる複数のピクチャを、第2の鍵でそれぞれ復号するものとすることができる。
情報には、第2の単位情報に対応する数であって、対応する第2の単位情報を復号するために暗号化を許可する数と、第1の鍵とを少なくとも含む、情報に関するライセンスがさらに含まれるものとすることができる。
第3の本発明においては、第2の単位情報ごとに生成された数がそれぞれ取得され、取得されたそれぞれの数を暗号化するための第1の鍵が取得され、取得された数が、第1の鍵で暗号化されることによって、第2の単位情報ごとに第2の鍵が生成され、第2の単位情報に含まれる複数の暗号化されている第1の単位情報が、第2の鍵でそれぞれ復号される。
本発明によれば、情報を、より確実に保護することができる。特に、本発明によれば、情報の不正な利用を防ぐことができる。また、情報を安全に転送することができる。
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が、本明細書に記載されていることを確認するためのものである。したがって、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
更に、この記載は、本明細書に記載されている発明の全てを意味するものでもない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。
請求項1に記載の情報処理システムは、
情報を処理する情報処理システム(例えば、図3の暗号化処理部207と復号処理部208を有するパーソナルコンピュータ11)であって、
前記情報(例えば、コンテンツ)を、所定の単位の情報である第1の単位情報(例えば、Iピクチャ、Pピクチャ、またはBピクチャ)ごとに分割する単位分割手段(例えば、図10のステップS32の処理を実行する図7のブロック分割部252)と、
複数の前記第1の単位情報からなる第2の単位情報(例えば、1GOP)ごとに、1つの数(例えば、Seed)を生成する数生成手段(例えば、図10のステップS34、またはステップS43の処理を実行する図7のSeed生成部282)と、
前記数生成手段により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵(例えば、コンテンツ鍵Kc)を生成する鍵生成手段(例えば、図10のステップS33の処理を実行する図7のコンテンツ鍵生成部281)と、
前記数生成手段により前記第2の単位情報ごとに生成された前記数を、前記鍵生成手段により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵(例えば、ブロック鍵Kb)を生成する第1の暗号化手段(例えば、図10のステップS35の処理を実行する図7の暗号化部283)と、
前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化手段により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化手段(例えば、図10のステップS37の処理を実行する図7の暗号化部254)と、
前記第2の暗号化手段により暗号化された複数の前記第1の単位情報、前記数、および前記第1の鍵を記憶する記憶手段(例えば、図9のステップS15の処理を実行する図3の記憶部204)と、
前記記憶手段に記憶されている前記数を、前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する第3の暗号化手段(例えば、図15のステップS66の処理を実行する図8の暗号化部333)と、
前記記憶手段に記憶されている、暗号化されている複数の前記第1の単位情報を、前記第3の暗号化手段により生成された前記第2の鍵でそれぞれ復号する復号手段(例えば、図15のステップS68の処理を実行する図8の復号部303)と
を備えることを特徴とする。
請求項2に記載のプログラムは、
情報を処理するプログラムであって、
前記情報(例えば、コンテンツ)を、所定の単位の情報である第1の単位情報(例えば、Iピクチャ、Pピクチャ、またはBピクチャ)ごとに分割する単位分割ステップ(例えば、図10のステップS32)と、
複数の前記第1の単位情報からなる第2の単位情報(例えば、1GOP)ごとに、1つの数(例えば、Seed)を生成する数生成ステップ(例えば、図10のステップS34、またはステップS43)と、
前記数生成ステップの処理により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵(例えば、コンテンツ鍵Kc)を生成する鍵生成ステップ(例えば、図10のステップS33)と、
前記数生成ステップの処理により前記第2の単位情報ごとに生成された前記数を、前記鍵生成ステップの処理により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵(例えば、ブロック鍵Kb)を生成する第1の暗号化ステップ(例えば、図10のステップS35)と、
前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化ステップの処理により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化ステップ(例えば、図10のステップS37)と、
前記第2の暗号化ステップの処理により暗号化された複数の前記第1の単位情報、前記数、および前記第1の鍵の記憶を制御する記憶制御ステップ(例えば、図9のステップS15)と、
前記記憶制御ステップの処理により記憶が制御された前記数を、前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する第3の暗号化ステップ(例えば、図15のステップS66)と、
前記記憶制御ステップの処理により記憶が制御された、暗号化されている複数の前記第1の単位情報を、前記第3の暗号化ステップの処理により生成された前記第2の鍵でそれぞれ復号する復号ステップ(例えば、図15のステップS68)と
を含む処理をコンピュータに実行させることを特徴とする。
請求項3に記載の情報処理装置は、
情報を暗号化する情報処理装置(例えば、図3の暗号化処理部207を有するパーソナルコンピュータ11)であって、
前記情報(例えば、コンテンツ)を、所定の単位の情報である第1の単位情報(例えば、Iピクチャ、Pピクチャ、またはBピクチャ)ごとに分割する単位分割手段(例えば、図10のステップS32の処理を実行する図7のブロック分割部252)と、
複数の前記第1の単位情報からなる第2の単位情報(例えば、1GOP)ごとに、1つの数を生成する数生成手段(例えば、図10のステップS34、またはステップS43の処理を実行する図7のSeed生成部282)と、
前記数生成手段により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵(例えば、コンテンツ鍵Kc)を生成する鍵生成手段(例えば、図10のステップS33の処理を実行する図7のコンテンツ鍵生成部281)と、
前記数生成手段により前記第2の単位情報ごとに生成された前記数を、前記鍵生成手段により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵(例えば、ブロック鍵Kb)を生成する第1の暗号化手段(例えば、図10のステップS35の処理を実行する図7の暗号化部283)と、
前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化手段により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化手段(例えば、図10のステップS37の処理を実行する図7の暗号化部254)と
を備えることを特徴とする。
請求項4に記載の情報処理装置は、
前記第2の暗号化手段により暗号化された複数の前記第1の単位情報からなる前記第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶する(例えば、図13のブロック351、ブロック352−1乃至352−14からなるブロック群のように記憶する)とともに、前記第1の鍵を記憶する(例えば、図13のライセンス341のように記憶する)記憶手段(例えば、図9のステップS15の処理を実行する図3の記憶部204)をさらに備える
ことを特徴とする。
請求項5に記載の情報処理装置の前記第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、
前記第2の単位情報は、複数の前記ピクチャからなる1GOP(Group of Pictures)であり、
前記単位分割手段は、前記情報を前記ピクチャごとに分割し(例えば、図10のステップS32)、
前記数生成手段は、前記GOPごとに、1つの前記数を生成し(例えば、図10のステップS34またはステップS43)、
前記第1の暗号化手段は、前記数を前記第1の鍵で暗号化することによって、前記GOPごとに前記第2の鍵を生成し(例えば、図10のステップS35)、
前記第2の暗号化手段は、前記GOPに含まれる複数の前記ピクチャを、前記第2の鍵でそれぞれ暗号化する(例えば、図10のステップS37)
ことを特徴とする。
請求項6に記載の情報処理装置は、
前記第2の単位情報に対応する前記数であって、対応する前記第2の単位情報を復号するために暗号化を許可する前記数と、前記第1の鍵とを少なくとも含む、前記情報に関するライセンスを生成するライセンス生成手段(例えば、図9のステップS14の処理を実行する図3のライセンス処理部211)をさらに備え、
前記記憶手段は、前記第2の暗号化手段により暗号化された複数の前記第1の単位情報からなる前記第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶するとともに、前記ライセンス生成手段により生成された、前記第1の鍵を少なくとも含む前記ライセンス(例えば、図13のライセンス341)を記憶する
ことを特徴とする。
請求項7に記載の情報処理装置は、
ユーザからの指令に基づいて、暗号化されている前記情報を分割する情報分割手段(例えば、図17のステップS112の処理を実行する図3の分割処理部209)をさらに備え、
前記ライセンス生成手段は、前記情報分割手段により分割された前記情報と、前記記憶手段に記憶された前記ライセンスに基づいて、分割された前記情報のそれぞれに対応するライセンスを生成する(例えば、図17のステップS113乃至ステップS115)
ことを特徴とする。
請求項8に記載の情報処理方法は、
情報を暗号化する情報処理装置(例えば、図3の暗号化処理部207を有するパーソナルコンピュータ11)の情報処理方法であって、
前記情報(例えば、コンテンツ)を、所定の単位の情報である第1の単位情報(例えば、Iピクチャ、Pピクチャ、またはBピクチャ)ごとに分割する単位分割ステップ(例えば、図10のステップS32)と、
複数の前記第1の単位情報からなる第2の単位情報(例えば、1GOP)ごとに、1つの数を生成する数生成ステップ(例えば、図10のステップS34、またはステップS43)と、
前記数生成ステップの処理により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵(例えば、コンテンツ鍵Kc)を生成する鍵生成ステップ(例えば、図10のステップS33)と、
前記数生成ステップの処理により前記第2の単位情報ごとに生成された前記数を、前記鍵生成ステップの処理により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵(例えば、ブロック鍵Kb)を生成する第1の暗号化ステップ(例えば、図10のステップS35)と、
前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化ステップの処理により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化ステップ(例えば、図10のステップS37)と
を含むことを特徴とする。
請求項9に記載のプログラムは、
情報を暗号化するプログラムであって、
前記情報(例えば、コンテンツ)を、所定の単位の情報である第1の単位情報(例えば、Iピクチャ、Pピクチャ、またはBピクチャ)ごとに分割する単位分割ステップ(例えば、図10のステップS32)と、
複数の前記第1の単位情報からなる第2の単位情報(例えば、1GOP)ごとに、1つの数を生成する数生成ステップ(例えば、図10のステップS34、またはステップS43)と、
前記数生成ステップの処理により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵(例えば、コンテンツ鍵Kc)を生成する鍵生成ステップ(例えば、図10のステップS33)と、
前記数生成ステップの処理により前記第2の単位情報ごとに生成された前記数を、前記鍵生成ステップの処理により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵(例えば、ブロック鍵Kb)を生成する第1の暗号化ステップ(例えば、図10のステップS35)と、
前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化ステップの処理により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化ステップ(例えば、図10のステップS37)と
を含む処理をコンピュータに実行させることを特徴とする。
請求項10に記載のプログラムは、
前記第2の暗号化ステップの処理により暗号化された複数の前記第1の単位情報からなる前記第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶部に記憶する(例えば、図13のブロック351、ブロック352−1乃至352−14からなるブロック群のように記憶する)よう制御するとともに、前記第1の鍵を前記記憶部に記憶する(例えば、図13のライセンス341のように記憶する)よう制御する記憶制御ステップ(例えば、図9のステップS15)をさらに含む
ことを特徴とする。
請求項11に記載のプログラムの前記第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、
前記第2の単位情報は、複数の前記ピクチャからなる1GOP(Group of Pictures)であり、
前記単位分割ステップの処理では、前記情報を前記ピクチャごとに分割し(例えば、図10のステップS32)、
前記数生成ステップの処理では、前記GOPごとに、1つの前記数を生成し(例えば、図10のステップS34またはステップS43)、
前記第1の暗号化ステップの処理では、前記数を前記第1の鍵で暗号化することによって、前記GOPごとに前記第2の鍵を生成し(例えば、図10のステップS35)、
前記第2の暗号化ステップの処理では、前記GOPに含まれる複数の前記ピクチャを、前記第2の鍵でそれぞれ暗号化する(例えば、図10のステップS37)
ことを特徴とする。
請求項12に記載のプログラムは、
前記第2の単位情報に対応する前記数であって、対応する前記第2の単位情報を復号するために暗号化を許可する前記数と、前記第1の鍵とを少なくとも含む、前記情報に関するライセンスを生成するライセンス生成ステップ(例えば、図9のステップS14)をさらに含み、
前記記憶制御ステップの処理では、前記第2の暗号化ステップの処理により暗号化された複数の前記第1の単位情報からなる前記第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて前記記憶部への記憶を制御するとともに、前記ライセンス生成ステップの処理により生成された、前記第1の鍵を少なくとも含む前記ライセンス(例えば、図13のライセンス341)の前記記憶部への記憶を制御する
ことを特徴とする。
請求項13に記載のプログラムは、
ユーザからの指令に基づいて、暗号化されている前記情報を分割する情報分割ステップ(例えば、図17のステップS112)をさらに含み、
前記ライセンス生成ステップの処理では、前記情報分割ステップの処理により分割された前記情報と、前記記憶制御ステップの処理により記憶が制御された前記ライセンスに基づいて、分割された前記情報のそれぞれに対応するライセンスを生成する(例えば、図17のステップS113乃至ステップS115)
ことを特徴とする。
請求項14に記載の情報処理装置は、
所定の単位の情報である第1の単位情報(例えば、Iピクチャ、Pピクチャ、またはBピクチャ)ごとに情報が分割され、複数の前記第1の単位情報からなる第2の単位情報(例えば、1GOP)ごとに生成された1つの数(例えば、Seed)が、それぞれの前記数を暗号化するために生成された第1の鍵(例えば、コンテンツ鍵Kc)で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵(例えば、ブロック鍵Kb)でそれぞれ暗号化された複数の前記第1の情報を復号する情報処理装置(例えば、図3の復号処理部208を有するパーソナルコンピュータ11)であって、
前記第2の単位情報ごとに生成された前記数をそれぞれ取得する数取得手段(例えば、図15のステップS64の処理を実行する図8のSeed取得部332)と、
前記数取得手段により取得されたそれぞれの前記数を暗号化するための前記第1の鍵を取得する鍵取得手段(例えば、図15のステップS62の処理を実行する図8のコンテンツ鍵取得部331)と、
前記数取得手段により取得された前記数を、前記鍵取得手段により取得された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する暗号化手段(例えば、図15のステップS66の処理を実行する図8の暗号化部333)と、
前記第2の単位情報に含まれる複数の暗号化されている前記第1の単位情報を、前記暗号化手段により生成された前記第2の鍵でそれぞれ復号する復号手段(例えば、図15のステップS68の処理を実行する図8の復号部303)と
を備えることを特徴とする。
請求項15に記載の情報処理装置の前記第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、
前記第2の単位情報は、複数の前記ピクチャからなる1GOPであり、
前記復号手段は、前記GOPに含まれる複数の前記ピクチャを、前記第2の鍵でそれぞれ復号する(例えば、図15のステップS68)
ことを特徴とする。
請求項16に記載の情報処理装置の前記情報には、前記第2の単位情報に対応する前記数であって、対応する前記第2の単位情報を復号するために暗号化を許可する前記数と、前記第1の鍵とを少なくとも含む、前記情報に関するライセンス(例えば、図13のライセンス341)がさらに含まれる
ことを特徴とする。
請求項17に記載の情報処理方法は、
所定の単位の情報である第1の単位情報(例えば、Iピクチャ、Pピクチャ、またはBピクチャ)ごとに情報が分割され、複数の前記第1の単位情報からなる第2の単位情報(例えば、1GOP)ごとに生成された1つの数(例えば、Seed)が、それぞれの前記数を暗号化するために生成された第1の鍵(例えば、コンテンツ鍵Kc)で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵(例えば、ブロック鍵Kb)でそれぞれ暗号化された複数の前記第1の情報を復号する情報処理装置(例えば、図3の復号処理部208を有するパーソナルコンピュータ11)の情報処理方法であって、
前記第2の単位情報ごとに生成された前記数をそれぞれ取得する数取得ステップ(例えば、図15のステップS64)と、
前記数取得ステップの処理により取得されたそれぞれの前記数を暗号化するための前記第1の鍵を取得する鍵取得ステップ(例えば、図15のステップS62)と、
前記数取得ステップの処理により取得された前記数を、前記鍵取得ステップの処理により取得された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する暗号化ステップ(例えば、図15のステップS66)と、
前記第2の単位情報に含まれる複数の暗号化されている前記第1の単位情報を、前記暗号化ステップの処理により生成された前記第2の鍵でそれぞれ復号する復号ステップ(例えば、図15のステップS68)と
を含むことを特徴とする。
請求項18に記載のプログラムは、
所定の単位の情報である第1の単位情報(例えば、Iピクチャ、Pピクチャ、またはBピクチャ)ごとに情報が分割され、複数の前記第1の単位情報からなる第2の単位情報(例えば、1GOP)ごとに生成された1つの数(例えば、Seed)が、それぞれの前記数を暗号化するために生成された第1の鍵(例えば、コンテンツ鍵Kc)で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵(例えば、ブロック鍵Kb)でそれぞれ暗号化された複数の前記第1の情報を復号するプログラムであって、
前記第2の単位情報ごとに生成された前記数をそれぞれ取得する数取得ステップ(例えば、図15のステップS64)と、
前記数取得ステップの処理により取得されたそれぞれの前記数を暗号化するための前記第1の鍵を取得する鍵取得ステップ(例えば、図15のステップS62)と、
前記数取得ステップの処理により取得された前記数を、前記鍵取得ステップの処理により取得された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する暗号化ステップ(例えば、図15のステップS66)と、
前記第2の単位情報に含まれる複数の暗号化されている前記第1の単位情報を、前記暗号化ステップの処理により生成された前記第2の鍵でそれぞれ復号する復号ステップ(例えば、図15のステップS68)と
を含む処理をコンピュータに実行させることを特徴とする。
請求項19に記載のプログラムの前記第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、
前記第2の単位情報は、複数の前記ピクチャからなる1GOPであり、
前記復号ステップの処理では、前記GOPに含まれる複数の前記ピクチャを、前記第2の鍵でそれぞれ復号する(例えば、図15のステップS68)
ことを特徴とする。
請求項20に記載のプログラムの前記情報には、前記第2の単位情報に対応する前記数であって、対応する前記第2の単位情報を復号するために暗号化を許可する前記数と、前記第1の鍵とを少なくとも含む、前記情報に関するライセンス(例えば、図13のライセンス341)がさらに含まれる
ことを特徴とする。
以下、図を参照して、本発明の実施の形態について説明する。
図1は、本発明を適用した情報処理システムの全体の構成例を示す図である。
パーソナルコンピュータ11は、配信サーバ12とネットワーク21を介して接続されており、配信サーバ12から供給されるコンテンツ(コンテンツデータ)を受け付ける。パーソナルコンピュータ11はまた、DVDを再生するDVD(Digital Versatile Disc)プレーヤ13から供給されるコンテンツを受け付ける。さらにパーソナルコンピュータ11は、デジタルテレビジョンチューナを有するデジタルテレビジョン受像機14と、DTCP/IP (Digital Transmission Content Protection Internet Protocol)プロトコルを用いて通信を行なうホームネットワーク22を介して接続されており、デジタルテレビジョン受像機14から供給されるコンテンツを受け付ける。
すなわち、パーソナルコンピュータ11は、配信サーバ12、DVDプレーヤ13またはデジタルテレビジョン受像機14から供給されるコンテンツを受け付ける。
パーソナルコンピュータ11にはまた、コンテンツ用リムーバブルメディア15が接続(装着)されており、例えば、パーソナルコンピュータ11は、配信サーバ12、DVDプレーヤ13またはデジタルテレビジョン受像機14から供給されてきたコンテンツを、コンテンツ用リムーバブルメディア15に記憶させる。このとき、パーソナルコンピュータ11は、コンテンツを、コンテンツ用リムーバブルメディア15に記憶させるのに適した形式で暗号化し、記憶させる。例えば、配信サーバ12から配信されてきたコンテンツが暗号化されていた場合、パーソナルコンピュータ11は、最初に、暗号化されているコンテンツを復号して平文を取得し、次に、取得した平文を、コンテンツ用リムーバブルメディア15に記憶させるのに適した形式で暗号化し、コンテンツ用リムーバブルメディア15に記憶させる。
コンテンツ用リムーバブルメディア15は、例えば、Hi-MD(商標)、MS(メモリスティック)(商標)などの記録メディアであり、Hi-MDプレーヤ、MSプレーヤ、またはパーソナルコンピュータ11などにより再生される。このHi-MDやMSプレーヤなどの専用機器は、小型であり、低消費電力を維持するために、パーソナルコンピュータ11の処理能力より低い処理能力となるように設定してある。本実施の形態では、比較的処理能力が低い機器(パーソナルコンピュータ11と比較して処理能力が低い機器)であっても、コンテンツ用リムーバブルメディア15に記憶されている暗号化されたコンテンツを容易に復号でき、かつ、コンテンツを安全に配信する暗号化方法について、以下に説明していく。
図2は、図1のパーソナルコンピュータ11のハードウエアの構成例を示すブロック図である。
CPU(Central Processing Unit)51、ROM(Read Only Memory)52、およびRAM(Random Access Memory)53は、内部バス54を介して相互に接続されている。この内部バス54にはまた、入出力インターフェース55も接続されている。
CPU51は、ROM52に記憶されているプログラム、または、記憶部59からRAM53にロードされたプログラムに従って各種の処理を実行する。RAM53にはまた、CPU51が各種の処理を実行する上で必要なデータなどが適宜記憶される。
入出力インターフェース55には、キーボード、マウスなどよりなる入力部56、LCD(Liquid Crystal Display)、CRT(Cathode Ray Tube)などよりなる表示部57、スピーカ58、ハードディスクなどより構成される記憶部59、モデム、ターミナルアダプタなどより構成される通信部60、およびドライブ71が接続されている。通信部60は、電話回線またはCATVを含む各種のネットワークを介しての通信処理を行なう。ドライブ71には、図1のコンテンツ用リムーバブルメディア15が装着され、コンテンツ用リムーバブルメディア15に記憶されているコンテンツが読み出されたり、コンテンツがコンテンツ用リムーバブルメディア15に記憶される。
入出力インターフェース55にはまた、必要に応じてドライブ81が接続され、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア91が適宜装着され、それから読み出されたコンピュータプログラムが、必要に応じて記憶部59にインストールされる。
図3は、図2のパーソナルコンピュータ11の機能的構成例を説明するブロック図である。図3のパーソナルコンピュータ11の機能的構成は、図2のパーソナルコンピュータ11のCPU51が、記憶部59に記憶された各種のプログラムを実行することで実現される。
図3において、パーソナルコンピュータ11には、データ入力部201、操作入力部202、主制御部203、記憶部204、エンコード処理部205、デコード処理部206、暗号化処理部207、復号処理部208、分割処理部209、結合処理部210、ライセンス処理部211、およびデータ出力部212が設けられている。
データ入力部201は、データの入力を受け付け、受け付けたデータを主制御部203に供給する。例えば、データ入力部201は、配信サーバ12から供給されてきたコンテンツ(コンテンツデータ)を受け付け、これを主制御部203に供給する。
操作入力部202は、ユーザからの操作入力を受け付け、ユーザの操作入力に基づく制御信号(ユーザの指令に基づく信号)を、主制御部203に供給する。
主制御部203は、各部を制御する。記憶部204は、各種のデータを記憶する。記憶部204は、例えば図3のコンテンツ用リムーバブルメディア15であり、コンテンツを記憶する。
エンコード処理部205は、コンテンツを、所定の形式でエンコードする。例えば、エンコード処理部205は、コンテンツに含まれる画像データを、MPEG(Moving Picture Experts Group)の規格に基づいてエンコードする。また、エンコード処理部205は、コンテンツに含まれる音声データを、内蔵するオーディオエンコーダに基づいてエンコードする。
デコード処理部206は、エンコードされているコンテンツを、エンコードの形式に対応する形式でデコードする。例えば、デコード処理部205は、コンテンツに含まれる画像データがMPEGの規格に基づいてエンコードされていた場合、これをMPEGの規格に基づく形式でデコードする。また、デコード処理部206は、コンテンツに含まれる音声データを、内蔵するオーディオデコーダに基づいてデコードする。図3の例の場合、エンコード処理部205とデコード処理部206は、対応しており、エンコード処理部205によりエンコードされたコンテンツは、デコード処理部206によりデコードされる。
暗号化処理部207は、コンテンツを暗号化する。暗号化処理部207は、例えば、AES(Advanced Encryption Standard)やDES(Data Encryption Standard)の暗号方式でコンテンツを暗号化する。暗号化処理部207の詳細は、図7を用いて後述する。
復号処理部208は、暗号化されているコンテンツを復号する。復号処理部208は、例えば、AESやDESの暗号方式でコンテンツを復号する。復号処理部208の詳細は、図8を用いて後述する。
分割処理部209は、コンテンツを分割する。例えば、暗号化処理部207により暗号化されたコンテンツを分割する。
結合処理部210は、分割されているコンテンツを結合する。例えば、結合処理部210は、分割処理部209により分割されたコンテンツを結合する。
ライセンス処理部211は、コンテンツのライセンスに関する処理を実行する。例えば、コンテンツのライセンスを生成したり、コンテンツに付加されているライセンスを読み出して各種の処理を実行する。
データ出力部212は、主制御部203からの制御に基づいて、データを出力する。例えば、データ出力部212は、コンテンツデータを出力し、図2の表示部57に画像を表示させたり、スピーカ58に音声を出力させる。
次に、図4を参照して、図3のデータ入力部201にコンテンツ(コンテンツデータ)が供給されてきた場合、そのコンテンツを記憶部204に記憶させるまでの処理の概略的な流れを説明する。
データ入力部201に、デジタルビデオ信号とデジタルオーディオ信号(コンテンツ)が供給されると、データ入力部201は、これを受け付け、デジタルビデオ信号とデジタルオーディオ信号をエンコード処理部205に供給する。エンコード処理部205は、MPEGエンコーダ221とオーディオエンコーダ222により構成されており、MPEGエンコーダ221は、デジタルビデオ信号をMPEG(例えば、MPEG2またはMPEG4)の規格に基づいてエンコードし、オーディオエンコーダ222は、デジタルオーディオ信号をエンコードする。
エンコード処理部205のMPEGエンコーダ221とオーディオエンコーダ222によりエンコードされたデータ(エンコードされたコンテンツデータ)は、暗号化処理部207に供給される。暗号化処理部207は、エンコードされたコンテンツデータを、本発明を適用した方式で暗号化し、これを記憶部204に供給し、記憶させる。
このように、入力されたコンテンツデータは、エンコードされ、暗号化されてから記憶部204に記憶される。
次に、図5を参照して、記憶部204に記憶されているコンテンツ(エンコードされ、暗号化されたコンテンツ)を、再生する処理の概略的な流れを説明する。なお、この処理は、図4の処理に対応する処理である。
記憶部204からエンコードされ、暗号化されたコンテンツが読み出され、復号処理部208に供給される。復号処理部208は、暗号化されたコンテンツを復号し、平文(エンコードされたコンテンツ)を取得する。そして、復号処理部208は、エンコードされているコンテンツを、デコード処理部206に供給する。デコード処理部206は、MPEGデコーダ231とオーディオデコーダ232により構成されており、MPEGデコーダ231は、MPEG(例えば、MPEG2またはMPEG4)の規格に基づいてエンコードされているデジタルビデオ信号をデコードし、オーディオデコーダ232は、エンコードされているデジタルオーディオ信号をデコードする。
デコード処理部206のMPEGデコーダ231とオーディオデコーダ232によりデコードされたデータ(デコードされたコンテンツデータ)は、データ出力部212に供給される。データ出力部212は、デジタルビデオ信号とデジタルオーディオ信号を出力し、再生する。
このように、記憶部204に記憶されたコンテンツデータは、復号され、デコードされてから再生される。
なお、デジタルビデオ信号とデジタルオーディオ信号に限らず、アナログビデオ信号とアナログオーディオ信号とするようにしてもよい。
次に、コンテンツの分割と結合について、図6を参照して説明する。
記憶部204に記憶されているコンテンツは、上述したように、エンコードされ、暗号化されている(図4)。分割処理部209は、記憶部204に記憶されているコンテンツを読み出し、分割を行なう。分割処理部209は、例えば、ユーザからの指令(操作入力部202への指令)に基づいて、コンテンツを記憶部204から読み出し、読み出したコンテンツを2つに分割する。そして、分割処理部209は、分割したコンテンツを、記憶部204に記憶させる。
このようにして、記憶部204には、分割されたコンテンツ(エンコードされ、暗号化されたコンテンツ)が記憶されることもある。結合処理部210は、図6に示されるように、記憶部204に記憶されている、分割されているコンテンツを読み出す。例えば、結合処理部210は、ユーザからの指令(操作入力部202への指令)に基づいて、分割処理部209により2つに分割されたコンテンツを記憶部204から読み出し、これを結合して1つのコンテンツとする。そして、結合処理部210は、結合した1つのコンテンツを記憶部204に記憶させる。
なお、以下においては、コンテンツにデジタルビデオ信号が含まれるものとして説明するが、勿論デジタルオーディオ信号の場合についてもデジタルビデオ信号と同様に扱うことができる。
図7は、図3の暗号化処理部207の詳細な機能的構成例を示すブロック図である。
暗号化処理部207には、コンテンツ入力部251、ブロック分割部252、ブロック鍵生成部253、暗号化部254、データ付加処理部255、およびコンテンツ出力部256が設けられている。ブロック鍵生成部253には、コンテンツ鍵生成部281、Seed生成部282、および暗号化部283が設けられている。
コンテンツ入力部251は、コンテンツの入力を受け付ける。例えば、コンテンツ入力部251は、コンテンツとして、デジタルビデオ信号の入力を受け付ける。図4に示されるように、暗号化処理部207に入力されるコンテンツは、エンコードされているので、例えば、MPEG2の規格に基づく複数のGOP(Group of Pictures)の入力が受け付けられる。
ブロック分割部252は、コンテンツをブロック分割する。例えば、デジタルビデオ信号からなるコンテンツを、複数のピクチャに分割する。より具体的には、コンテンツがMPEG2の規格に基づいてエンコードされていた場合、コンテンツに含まれるGOP(Group of Picture)を、I(Intra Picture)ピクチャ、P(Predictive Picture)ピクチャ、またはB(Bidirectionally Predictive Picture)ピクチャなどのブロックに分割する。すなわち、ここでは、1枚のピクチャを1ブロックと称する。ブロック分割部252は、分割したブロック(Iピクチャ、Pピクチャ、またはBピクチャ)を、ブロック鍵生成部253のコンテンツ鍵生成部281、およびSeed生成部282、並びに暗号化部254に供給する。
ブロック鍵生成部253は、ブロックを暗号化するためのブロック鍵を生成する。例えば、ブロック鍵生成部253は、コンテンツを構成する1GOPごと(所定の数のブロックごと)に利用されるブロック鍵を生成する。すなわち、ブロック鍵生成部253は、複数のブロックごと(GOPごと)に、ブロック鍵を生成する。
コンテンツ鍵生成部281は、コンテンツ入力部251に供給されるコンテンツ1つについて利用するコンテンツ鍵Kcを、内蔵する乱数発生器を用いて生成する。換言すれば、コンテンツ鍵生成部281は、1つのコンテンツに共通して使用されるコンテンツ鍵Kcを生成する。コンテンツ鍵生成部281は、例えば、乱数発生器を用いて、1つの映画について共通して利用される1つのコンテンツ鍵Kcを生成する。例えば、コンテンツ鍵生成部281は、ブロック分割部252からコンテンツの最初の1ブロックが供給された場合に、内蔵する乱数発生器を用いてコンテンツ鍵Kcを生成する。コンテンツ鍵生成部281は、生成したコンテンツ鍵Kcを、暗号化部283とライセンス処理部211に供給する。
Seed生成部282は、ブロック分割部252から供給されたブロック(例えば、Iピクチャ)に基づいてSeed(ブロック鍵Kbの種となる数)を生成する。具体的には、Seed生成部282は、所定の数のブロックごとにSeedを生成する。例えば、Seed生成部282は、ブロック分割部252から供給されたブロックが15個になるたびに、Seedを生成する。換言すれば、Seed生成部282に供給されたブロックがIピクチャであった場合、Seed生成部282はSeedを生成し、供給されたブロックがPピクチャまたはBピクチャである場合には、Seedを生成しない。
すなわち、Seed生成部282は、GOP(所定の数のブロック)ごとにSeedを生成し、暗号化部283に供給する。Seed生成部282の内部には、カウンタが設けられており、Seed生成部282は、複数のブロックごとに、そのカウンタの値を1インクリメントして、その値(カウント値)を、暗号化部283に供給する。なお、オーディオ信号を処理する場合には、Seed生成部282は、所定の数のサウンドユニットごと(例えば、0.5秒以上の時間に対応する個数(例えば、10個)のサウンドユニットごと)にSeedを生成する。Seed生成部282は、生成したSeedを、暗号化部283、データ付加処理部255、およびライセンス処理部211に供給する。
なお、本実施の形態では、Seed生成部282がカウンタを有し、所定の数のブロックごとに、1ずつカウントアップするようにしたが、Seed生成部282が1ずつカウントアップする代わりに、ランダムに乱数を発生するようにしてもよい。これは、Seed生成部282により生成されたSeedは、暗号化されたコンテンツに付加されるため、Seedの値に規則が必要ないからである(後述する図10のステップS39の処理)。
暗号化部283は、コンテンツ鍵生成部281により生成されたコンテンツ鍵Kcで、Seed生成部282から供給されたSeedを暗号化することによって、ブロック鍵Kbを生成する。すなわち、暗号化部283は、コンテンツ鍵KcとSeedを用いて、ブロック鍵Kbを生成する。暗号化部283は、AESやDESの方式を用いて、Seedをコンテンツ鍵Kcで暗号化する。このように、Seedはブロック鍵Kbを生成するための種となる。また、コンテンツ鍵Kcは、Seedを暗号化するための鍵となる。Seed生成部282は、1GOPごとにSeedを生成するので、ブロック鍵生成部253は、1GOPごとにブロック鍵Kbを生成する。暗号化部283は、暗号化し、生成したブロック鍵Kbを、暗号化部254に供給する。
暗号化部254は、ブロック分割部252から供給されるブロック(コンテンツに含まれるブロック)を、ブロック鍵生成部253の暗号化部283から供給されるブロック鍵Kbで暗号化し、暗号化したブロックを、データ付加処理部255に供給する。例えば、暗号化部254は、供給されてきたブロックを、ブロック鍵Kbで暗号化する。暗号化部254による暗号化は、AESやDESの方式による暗号化である。ブロック鍵生成部253は、1GOPごとにブロック鍵Kbを生成するので、暗号化部254は、1GOPごとにブロックを暗号化する鍵を変更する。例えば、ブロック分割部252からIピクチャ(ブロック)が供給されると、暗号化部254は、このIピクチャを、暗号化部283から供給されるブロック鍵Kbで暗号化する。次に、ブロック分割部252からBピクチャ(ブロック)が供給されると、暗号化部254は、このBピクチャを、Iピクチャを暗号化したときと同じブロック鍵Kbで暗号化する。このブロック鍵Kbは、次にIピクチャが供給されるまで変更されない。例えば、1GOPが15枚のピクチャにより構成される場合には、15枚のピクチャごとにブロック鍵Kbが変更される。
データ付加処理部255は、暗号化部254から供給された、暗号化されたブロックと、Seed生成部282から供給されたSeedとに基づいて、データ付加処理を実行する。例えば、データ付加処理部255は、暗号化されたブロック(コンテンツ)に、フラグとSeedを付加する。具体的には、データ付加処理部255は、暗号化されたブロックにSeedを付加しない場合(暗号化されたブロックがIピクチャではない場合)、80のフラグを付加し、Seedを付加する場合(暗号化されたブロックがIピクチャである場合)、81のフラグを付加する。
コンテンツ出力部256は、データ付加処理部255によりフラグとSeedが付加されたコンテンツを出力する。
ライセンス処理部211は、コンテンツ鍵生成部281とSeed生成部282から供給されたコンテンツ鍵KcとSeedに基づいて、ライセンス処理を実行する。例えば、ライセンス処理部211には、再生回数、利用条件、および分割の可否が供給されるので(例えば、配信サーバ12からライセンスが供給されるので)、ライセンス処理部211は、これらのデータ(以下においては、再生回数、利用条件、および分割の可否を少なくとも含むデータをライセンスデータと称する)と、コンテンツ鍵KcおよびSeedとに基づいて、ライセンスを生成する。すなわち、ライセンスには、コンテンツ鍵Kc、ライセンスが有効なSeedの範囲、およびライセンスデータが少なくとも含まれる。生成されたライセンスは、コンテンツ出力部256から出力されたコンテンツ(フラグとSeedが付加され、ブロックごとにブロック鍵Kbで暗号化されたコンテンツ)に付加されて、記憶される。
なお、本実施の形態では、ライセンスに、コンテンツ鍵Kc、ライセンスが有効なSeedの範囲、およびライセンスデータが含まれるものとして説明するが、コンテンツ鍵Kcやライセンスが有効なSeedの範囲は、適宜、暗号化されたブロック(コンテンツ)のヘッダに付加されるようにしてもよい。
このように、図7の暗号化処理部207では、コンテンツがブロックごとに分割され、分割された複数のブロックごとにSeedが生成され、Seedが、コンテンツ鍵Kcで暗号化されてブロック鍵Kbとされ、ブロックがブロック鍵Kbで暗号化される。そして、ブロック鍵Kbで暗号化されたコンテンツ(ブロック)に、適宜フラグとSeedが付加され、出力される。すなわち、フラグとSeedが付加され、ブロックごとにブロック鍵Kbで暗号化されたコンテンツが、出力される。また、ライセンス処理部211により、ブロックに対応するライセンスが生成される。
図8は、図3の復号処理部208の詳細な機能的構成例を示すブロック図である。
復号処理部208には、コンテンツ入力部301、ブロック鍵演算部302、復号部303、コンテンツ出力部304が設けられている。ブロック鍵演算部302には、コンテンツ鍵取得部331、Seed取得部332、および暗号化部333が設けられている。
コンテンツ入力部301は、コンテンツの入力を受け付ける。例えば、コンテンツ入力部301は、記憶部204に記憶された、ブロックごとに暗号化されたコンテンツの入力を受け付ける。コンテンツ入力部301は、複数のブロックからなるコンテンツを、ブロックごとに、ブロック鍵演算部302のコンテンツ鍵取得部331およびSeed取得部332、並びに、ライセンス処理部211に供給する。
コンテンツ鍵取得部331は、コンテンツ入力部301から供給されたブロック(実際にはコンテンツに含まれるライセンス)からコンテンツ鍵Kcを取得する。上述したように、図7の暗号化部207とライセンス処理部211によりコンテンツのライセンスの中には、コンテンツ鍵Kcが付加されているので、コンテンツ鍵取得部331は、コンテンツからコンテンツ鍵Kcを取得する。コンテンツ鍵取得部331は、取得したコンテンツ鍵Kcを暗号化部333に供給する。
Seed取得部332は、コンテンツ入力部301から供給されたブロック(コンテンツ)からSeedを取得する。Seedは、上述したように、所定の数のブロックごと(GOPごと)に付加されている。Seed取得部332は、取得したSeedを、暗号化部333とライセンス処理部211に供給する。
暗号化部333は、コンテンツ鍵取得部331から供給されたコンテンツ鍵Kcで、Seed取得部332から供給されたSeedを暗号化する。具体的には、暗号化部333は、コンテンツ鍵KcでSeedを暗号化することで、ブロック鍵Kbを演算する。Seedは、ブロック鍵Kbを演算するための種である。暗号化部333は、生成した(演算した)ブロック鍵Kbを、復号部303に供給する。
図7のブロック鍵生成部253が生成するブロック鍵Kbと、図8のブロック鍵演算部302が演算するブロック鍵Kbは、同一のコンテンツであって、同一のGOP内のブロックであれば、同じとなる。
復号部303は、暗号化部333から供給されたブロック鍵Kbを用いて、コンテンツ入力部301から供給されたコンテンツ(ブロック)を復号する。これにより、暗号化されていたコンテンツが復号され、平文(実際にはまだエンコードされている)が取得される。コンテンツ出力部304は、復号されたコンテンツを出力する。
ライセンス処理部211は、コンテンツ入力部301から供給されたライセンス(コンテンツ付加されているライセンス)と、Seed取得部332から供給された、処理対象のブロックのSeedなどに基づいて、ライセンス処理を実行する。例えば、ライセンス処理部211は、コンテンツ入力部301から供給されたライセンス(コンテンツ付加されているライセンス)と、Seed取得部332から供給された、処理対象のブロックのSeedなどに基づいて、処理対象のブロックがライセンスの範囲に含まれるか否かを判定する。
このように、図8の復号処理部208では、ブロックごとに分割されて暗号化されているコンテンツが入力され、ブロックから取得されたSeedがコンテンツ鍵Kcで暗号化されてブロック鍵Kbとされる。また、このSeedに対応するブロックが、そのSeedに基づいて演算されたブロック鍵Kbで復号される。また、ライセンス処理部211により、ブロックに対応するライセンスに基づいて、再生の可否が判定される。
次に、図9のフローチャートを参照して、図3のパーソナルコンピュータ11におけるコンテンツ記憶処理を説明する。なお、この処理は、ユーザにより操作入力部202に対して、コンテンツの記憶部204への記憶が指令されたとき開始される。
ステップS11において、データ入力部201は、ユーザからの操作入力部202への指令に基づいて、暗号化するコンテンツを読み込み、主制御部203に供給する。例えば、データ入力部201は、ユーザからの指令に基づいて、配信サーバ12、DVDプレーヤ13、またはデジタルテレビジョン受像機14から暗号化するコンテンツの入力を受け付け、これを主制御部203に供給する。
ステップS12において、エンコード処理部205は、主制御部203からの制御に基づいて、コンテンツをエンコードする。例えば、エンコード処理部205は、MPEG2の規格に準拠してコンテンツをエンコードする。これにより、コンテンツは、複数のGOPにより構成されるものとなる。なお1GOPには、例えば、Iピクチャ、Pピクチャ、およびBピクチャに種類が分けられる15枚のピクチャが含まれる。
ステップS13において、暗号化処理部207は、主制御部203からの制御に基づいて、コンテンツを暗号化する処理を実行する。なお、この処理の詳細は、図10を参照して後述する。
ステップS14において、ライセンス処理部211は、主制御部203からの制御に基づいて、ライセンス付加処理を実行する。具体的には、ライセンス処理部211は、1つのコンテンツを暗号化する場合に利用されるコンテンツ鍵Kc、有効なライセンスの範囲(Seedの番号の範囲)、およびライセンスデータ(再生回数、利用条件、分割の可否を少なくとも含むライセンスデータ)を生成し、これを、暗号化されたコンテンツに付加する。なお、Seed生成部282が、ランダムな値(乱数)をSeedとして生成する場合には、Seedの番号の範囲が連続ではなく、ランダムな値が順次コンテンツに付加される。
ステップS15において、主制御部203は、暗号化され、ライセンスが付加されたコンテンツを、記憶部204に記憶させる。その後、処理は終了される。
図9の処理により、コンテンツがエンコードされ、暗号化されるとともに、暗号化されたコンテンツにライセンスが付加され、記憶部204に記憶される。
次に、図10のフローチャートを参照して、図9のステップS13の処理の詳細である、コンテンツを暗号化する処理について説明する。なお、この処理は、図3の主制御部203からの制御に基づいて、図7の暗号化処理部207が実行する処理である。
ステップS31において、コンテンツ入力部251(図7)は、コンテンツの入力を受け付ける。このコンテンツは、図9のステップS11で読み込まれ、ステップS12の処理でエンコードされたものである。例えば、ここで読み込まれるコンテンツは、MPEGの規格に基づいてエンコードされている。
ステップS32において、ブロック分割部252は、コンテンツをブロックに分割する。例えば、コンテンツがMPEG2の規格に基づいてエンコードされている場合、ブロック分割部252は、コンテンツを、Iピクチャ、Pピクチャ、またはBピクチャのいずれかのピクチャなどのブロックに分割する。すなわち、ブロック分割部252は、ピクチャを1つの単位として、分割する。ブロック分割部252は、分割したブロック(ピクチャ)を、1ブロックずつコンテンツ鍵生成部281、Seed生成部282、および暗号化部254に供給する。
ステップS33において、コンテンツ鍵生成部281は、コンテンツ鍵Kcを生成する。例えば、コンテンツ鍵生成部281は、内部に乱数発生器を有しており、この乱数発生器を用いて、ランダムにコンテンツ鍵Kcを生成する。このコンテンツ鍵Kcは、1つのコンテンツで共有される鍵であって、Seedを暗号化するための鍵である。コンテンツ鍵生成部281は、例えば、コンテンツの最初の1ブロック(例えば、最初のIピクチャやライセンス)がコンテンツ入力部251から供給されてきたとき、コンテンツ鍵Kcを生成し、これを、暗号化部283とライセンス処理部211に供給する。
ステップS34において、Seed生成部282は、Seed=0をセットする。すなわちSeed生成部282は、Seedの値を初期化する。Seed生成部282は、セットしたSeedの値を、暗号化部283とライセンス処理部211に供給する。
ステップS35において、暗号化部283は、コンテンツ鍵KcでSeedの値を暗号化し、暗号化した結果をブロック鍵Kbとする。すなわち、暗号化部254は、コンテンツ鍵KcでSeedの値を暗号化することで、ブロック鍵Kbを生成する。具体的には、暗号化部283は、E(Kc,Seed)を演算する。ここで、E(Kc,Seed)は、SeedをKcで暗号化することを意味する。すなわち、Kb=E(Kc,Seed)とされる。
ステップS36において、暗号化部283は、生成したブロック鍵Kbを暗号化部254に供給する。
ステップS37において、暗号化部254は、ブロック鍵Kbで、1ブロックのコンテンツを暗号化する。具体的には、暗号化部254は、ブロック分割部252から供給された1ブロック(いまの例の場合、Iピクチャ)を、ブロック鍵Kbで暗号化する。暗号化部254は、暗号化した結果(1ブロックをブロック鍵Kbで暗号化した結果)を、データ付加処理部255に供給する。
ステップS38において、データ付加処理部255は、Seedを付けるか否かを判定する。具体的には、データ付加処理部255は、ステップS34の処理でSeedがセットされた場合、または後述するステップS43の処理でSeedがセットされた場合に、Seedを付けると判定する。例えば、データ付加処理部255は、ステップS37の処理で暗号化したブロックが、Iピクチャであった場合に、Seedを付けると判定する。
ステップS38において、Seedを付けると判定された場合(例えば、ステップS37の処理で暗号化されたブロックがIピクチャであった場合)、ステップS39において、データ付加処理部255は、フラグを81とし、フラグとSeedを付加する。具体的には、データ付加処理部255は、図11に示されるように、暗号化されたデータ(Encrypted Data)の前に、Flag(フラグ)として「81」を付し、さらにSeedの値として、「0000000000000001」を付す。ここで、フラグ「81」は、Seedを付加することを示す。このフラグが「80」である場合、Seedを付加しないことを示す(図12を参照して後述する)。図11において、暗号化されたデータは、「86 63 a2・・・」である。
一方、ステップS38において、Seedを付けないと判定された場合(例えば、ステップS37の処理で暗号化されたブロックがPピクチャまたはBピクチャであった場合)、ステップS40において、データ付加処理部255は、フラグを80とし、フラグを付加する。具体的には、データ付加処理部255は、図12に示されるように、暗号化されたデータの前に、フラグとして「90」を付す。図12において、暗号化されたデータは、「86 63 a2・・・」である。
ステップS39、ステップS40の処理により、暗号化されたブロックには、適宜Seedが付加されるとともに、Seedの有無を示すフラグが付加される。
ステップS39の処理の後、またはステップS40の処理の後、ステップS41において、ブロック分割部252は、次のブロックがあるか否かを判定する。例えば、ブロック分割部252は、コンテンツに含まれる全てのブロックの暗号化が終了したか否かを判定する。まだコンテンツに含まれる全てのブロックの暗号化が終了していない場合、次のブロックがあると判定される。
ステップS41において、次のブロックがあると判定された場合、ブロック分割部252は、次のブロック(例えば、Bピクチャ)を、Seed生成部282と暗号化部254に供給する。
ステップS42において、Seed生成部282は、次のブロック(直前のステップS37の処理で暗号化されたブロックの次のブロック)は、Seedのカウントアップが必要か否かを判定する。この例の場合、IピクチャがSeed生成部282に供給されてきた場合に、カウントアップが必要である(すなわち、Seedの値を1インクリメントする必要がある)ので、Seed生成部282は、次のブロックがIピクチャであるか否かを判定する。
ステップS42において、次のブロックは、Seedのカウントアップが必要であると判定された場合、すなわち、次のブロックがIピクチャである場合、Seed生成部282は、Seed=Seed+1を演算し(現在のSeedの値を1インクリメントし)、セットする。いまの例の場合、現在のSeedの値は0であるので、Seed生成部282は、Seed=0+1=1を演算し、Seed=1を暗号化部283とライセンス処理部211に供給する。
ステップS42において、次のブロックはSeedのカウントアップが必要でないと判定された場合、処理はステップS35に戻り、それ以降の処理が繰り返される。すなわち、ステップS43の処理で新たにセットされたSeedがコンテンツ鍵Kcで暗号化され、新たなブロック鍵Kbが生成される。そして、新たなブロック鍵Kbでブロックが暗号化され、フラグが付される。なお、ステップS43の処理でSeedがセットされているので、この後に実行されるステップS38の処理では、Seedを付けると判定される。すなわち、Seedの値が変更され、暗号化部283により新たなブロック鍵Kbが生成されたときのブロックには、フラグ「81」とSeedが付加される。
一方、ステップS42において、次のブロックはSeedのカウントアップが必要でないと判定された場合、処理はステップS37に戻り、それ以降の処理が繰り返される。すなわち、Seedがカウントアップされない場合には、前回利用されたブロック鍵Kbでブロックが暗号化される。具体的な例としては、次のブロックがBピクチャである場合、ステップS42の処理では、Seedのカウントアップが必要でないと判定され、ステップS37の処理で、前回Iピクチャを暗号化する場合に利用されたブロック鍵Kbで1ブロックのコンテンツ(Bピクチャ)が暗号化される。
このように、ステップS35乃至ステップS43の処理は、コンテンツに含まれるブロックを全て暗号化し終えるまで繰り返される。
ステップS41において、次のブロックがないと判定された場合、すなわち、コンテンツに含まれるブロックを全て暗号化し終えたと判定された場合、ステップS44において、コンテンツ出力部256は、暗号化され、データ(フラグとSeed)が付加されたコンテンツを出力する。その後、処理は図9のステップS13に戻る。
上述したように、図9では、ステップS13の処理の後、ステップS14において、ライセンス付加処理が実行される。具体的には、ライセンス処理部211は、ステップS34またはステップS43の処理で供給されたSeedの値と、ステップS33の処理で供給されたコンテンツ鍵Kcの値を、生成するライセンスに格納し、ライセンスを生成する。ライセンス処理部211には、再生回数、利用条件、および分割の可否を示すデータが、コンテンツの配信元(例えば、配信サーバ12)から供給されてくるので、これらのデータをライセンスデータとし、ライセンスデータに、ライセンスを与えるSeedの範囲(例えば、Seed Number=0乃至9)とコンテンツ鍵Kcとを付加することで、ライセンスを生成する。これにより、例えば、図13に示されるような、ライセンス341が生成される。
図13は、上述した図9のステップS15の処理で、記憶部204に記憶されるコンテンツの例を説明する図である。
このコンテンツには、ライセンス341、ブロック351、ブロック352−1乃至352−14、ブロック353、ブロック354−1乃至354−14、ブロック355、ブロック356−1および356−2、・・・、ブロック367、ブロック368−1乃至368−14が含まれている。
ライセンス341は、図9のステップS14で生成され、付加されたライセンスである。すなわち、ライセンス341には、ライセンスの範囲であるSeed Number=0乃至9、コンテンツ鍵Kc、およびライセンスデータが含まれている。なお、Seed生成部282がランダムに乱数を生成する場合には、Seed Numberに、生成された乱数が順次格納されることになる。
ブロック351は、例えば、Iピクチャであり、暗号化されたデータに、フラグ「81」と「Seed=0」とが付加されている。ブロック352−1乃至352−14は、例えば、PピクチャやBピクチャであり、暗号化されたデータに、フラグ「80」が付加されている。また、ブロック353は、例えば、Iピクチャであり、暗号化されたデータに、フラグ「81」と「Seed=1」とが付加されている。ブロック354−1乃至354−14は、例えば、PピクチャやBピクチャであり、暗号化されたデータに、フラグ「80」が付加されている。ブロック355は、例えば、Iピクチャであり、暗号化されたデータに、フラグ「81」と「Seed=2」とが付加されている。ブロック356−1および356−2は、例えば、PピクチャやBピクチャであり、暗号化されたデータに、フラグ「80」が付加されている。ブロック367は、例えば、Iピクチャであり、暗号化されたデータに、フラグ「81」と「Seed=9」とが付加されている。ブロック368−1乃至368−14は、例えば、PピクチャやBピクチャであり、暗号化されたデータに、フラグ「80」が付加されている。
上述した図9、図10の処理と対応付けると、ライセンス341は、図9のステップS14の処理で生成される。また、ブロック351は、1回目の図10のステップS31乃至ステップS41までの処理で生成される。具体的には、図10の1回目のステップS34の処理でSeed=0がセットされ、ステップS35の処理で、コンテンツ鍵KcでSeed=0が暗号化され、ブロック鍵Kbが生成される。そして、ステップS37でブロック351のデータ部(例えばIピクチャ)がブロック鍵Kbで暗号化され、ステップS38でYESと判定されて、ステップS39において、フラグ「81」とSeed「Seed=0」が付加される。さらに、ブロック352−1乃至352−14は、2回目乃至15回目の図10のステップS37乃至ステップS42までの処理の繰り返しで生成される。具体的には、図10の2回目のステップS37でブロック(例えば、Bピクチャ)がブロック鍵Kbで暗号化される。このとき利用されるブロック鍵Kbは、1回目のステップS35の処理で生成されたブロック鍵Kbと同じである。すなわち、所定の数のブロックについては(この例の場合、15個のブロックについては)、同じブロック鍵Kbが用いられる。その後、2回目乃至15回目のステップS38の処理では、Seedを付けないと判定され、ステップS40において、フラグ「80」が付加される。また、1回目乃至14回目のステップS42では、次のブロックはSeedのカウントアップが必要ではないと判定される。
すなわち、ステップS42の処理で、次のブロックはSeedのカウントアップが必要であると判定されるのは、次のブロックが、ブロック353に対応するブロック(Iピクチャ)である場合となる。
なお、図13のブロック351、並びにブロック352−1乃至352−14を、以下においては、適宜、ブロック群と称する。同様に、図13のブロック353、並びにブロック354−1乃至354−14や、ブロック367、並びにブロック368−1乃至368−14についても、適宜ブロック群と称する。MPEG2の規格によりエンコードされた画像データに対応付けると、1つのブロック群は1GOPに対応する。
このように、MPEG2の規格に基づいてエンコードされたコンテンツを処理する場合には、1GOPごとにブロック鍵Kbが生成され、ブロックごとに暗号化が行なわれる。すなわち、ブロック分割部252は、ピクチャをブロック単位として分割し、Seed生成部282は、1GOPを単位としてSeedを生成し、暗号化部283は、Seedをコンテンツ鍵Kcで暗号化することで、ブロック鍵Kbを生成する。そして、この1GOPに含まれるブロックにおいては、同じブロック鍵Kbで暗号化される。換言すれば、所定の数のブロックごとに、Seedが生成され、Seedがコンテンツ鍵Kcで暗号化されることで、ブロック鍵Kbが生成され、このブロック鍵Kbで、生成されたSeedに対応する所定の数のブロックが暗号化される。
なお、オーディオのコンテンツを暗号化する場合には、エンコードされたコンテンツが複数のサウンドユニットとして、暗号化処理部207(図7)に供給されるので、ブロック分割部252は、コンテンツをサウンドユニットに分割し、Seed生成部282は、あらかじめ定められた数(例えば、0.5秒以上に対応する個数)のサウンドユニットごとにSeedを1ずつインクリメントし、暗号化部283に供給する。
次に、図14のフローチャートを参照して、図3のパーソナルコンピュータ11におけるコンテンツ再生処理を説明する。なお、この処理は、ユーザにより操作入力部202に対して、コンテンツの再生が指令されたとき開始される。
ステップS51において、データ入力部201は、ユーザからの操作入力部202への指令に基づいて、復号するコンテンツを読み込み、主制御部203に供給する。例えば、データ入力部201は、ユーザからの指令に基づいて、記憶部204に記憶されている、復号するコンテンツを読み込む。この例の場合、復号するコンテンツは、上述した図9の処理で記憶部204に記憶されたものである。なお、これに限らず、データ入力部201は、配信サーバ12、DVDプレーヤ13、またはデジタルテレビジョン受像機14から、復号するコンテンツを読み込むようにしてもよい。この例の場合、図9の処理が、配信サーバ12、DVDプレーヤ13、またはテレビジョン受像機14により実行されたものとされる。
ステップS52において、復号処理部208は、主制御部203からの制御に基づいて、コンテンツを復号する処理を実行する。なお、この処理の詳細は、図15を参照して後述する。
ステップS53において、デコード処理部206は、主制御部203からの制御に基づいて、復号されたコンテンツをデコードする。図9のステップS12で上述したように、コンテンツはエンコードされているので、デコード処理部206は、エンコードされた規格に対応する規格(例えば、MPEG2の規格)でデコードする。
ステップS54において、データ出力部212は、主制御部203からの制御に基づいて、コンテンツを再生する。例えば、データ出力部212は、主制御部203からの制御に基づいて、表示部57に、コンテンツのデータに対応する画像を表示させる。その後、処理は終了される。
図14の処理により、コンテンツが復号され、デコードされるとともに、再生される。
次に、図15のフローチャートを参照して、図14のステップS52の処理の詳細である、コンテンツを復号する処理について説明する。なお、この処理は、図3の主制御部203からの制御に基づいて、図8の復号処理部208とライセンス処理部211が実行する処理である。
ステップS61において、コンテンツ入力部301(図8)は、コンテンツの入力を受け付ける。このコンテンツは、図14のステップS51で読み込まれたものである。例えば、ここで読み込まれるコンテンツは、図9の処理によりMPEGの規格でエンコードされ、暗号化されたコンテンツ(記憶部204に記憶されているコンテンツ)である。コンテンツ入力部301は、複数のブロックからなるコンテンツ(例えば、図13に示されるようなコンテンツ)を受け付けると、ブロック鍵演算部302にライセンス(図13のライセンス341)を供給するとともに、ブロックの先頭に付加されているフラグとSeedをSeed取得部332に供給する。また、コンテンツ入力部301は、コンテンツ(ブロック)を復号部303に供給するとともに、ライセンス(図13のライセンス341)をライセンス処理部211に供給する。
ステップS62において、コンテンツ鍵取得部331は、コンテンツ入力部301から供給されてきたライセンス(図13のライセンス341)から、コンテンツ鍵Kcを取得する。このコンテンツ鍵Kcは、対応する図10のステップS33で生成されたものであり、1つのコンテンツにつき、同じコンテンツ鍵Kcが利用される。
ステップS63において、Seed取得部332は、ステップS61の処理で取得したフラグが81であるか否かを判定する。すなわち、Seed取得部332は、現在処理するブロックにフラグとSeedが付加されているか否かが判定される。フラグ「81」とSeedは、図10を参照して上述したように、MPEG2の規格に基づいてエンコードされていた場合には、Iピクチャであるときに付加されるので、ここでは、現在処理するブロックがIピクチャであるか否かが判定されていることにもなる。フラグ「81」とSeedは上述したように、全てのブロックに付加されているわけではなく、所定の数のブロックごと(例えば、15ピクチャごと(1GOPごと))に付加されているので、この判定が行なわれる。
ステップS63において、現在処理するブロックのフラグが81(フラグとSeedが付加されている)と判定された場合、ステップS64において、Seed取得部332は、Seedを取得し、暗号化部333とライセンス処理部211にセットする。例えば、Seed取得部332は、図13のブロック351からSeed=0を取得し、これを暗号化部333とライセンス処理部211に供給する。
ステップS65において、ライセンス処理部211は、ステップS64の処理でSeed取得部332から供給されたSeed番号がライセンスの範囲内であるか否かを判定する。具体的には、ライセンス処理部211には、図13のライセンス341が供給されてきているので(ステップS61)、ライセンス処理部211は、ライセンス341の範囲内に、供給されたSeedが入っているか否かを判定する。例えば、図13の例の場合、ライセンス341の範囲が0乃至9であり、ブロック351のSeed=0であるので、範囲内に入っていると判定される。ステップS65において、Seed番号がライセンスの範囲内でないと判定された場合(例えば、Seed=11であった場合)、処理は終了される。このように、ブロック群ごと(1GOP)ごとにライセンスの判定が行なわれる、すなわち、ブロック群ごとにライセンスが付加されているので、コンテンツを分割する場合や結合する場合においても、コンテンツの不正な利用を防ぐことができる。
ステップS65において、Seed番号がライセンスの範囲内であると判定された場合(例えば、ライセンスの範囲が0乃至9であり、Seed=0である場合)、ステップS66において、暗号化部333は、コンテンツ鍵KcでSeedを暗号化し、ブロック鍵Kbとする。すなわち、暗号化部333は、ステップS62の処理で供給されたコンテンツ鍵Kcで、ステップS64の処理でセットされたSeedの値を暗号化することで、ブロック鍵Kbを生成する。具体的には、暗号化部333は、E(Kc,Seed)を演算する。すなわち、Kb=E(Kc,Seed)を演算する。
ステップS67において、暗号化部333は、生成したブロック鍵Kbを復号部303に供給する。
ステップS68において、復号部303は、ブロック鍵Kbで、暗号化されている1ブロックのコンテンツを復号する。具体的には、復号部303は、コンテンツ入力部301から供給されてきた暗号化されている1ブロック(いまの例の場合、暗号化されているIピクチャ)を、ブロック鍵Kbで復号する。
ここで、Seedの値とコンテンツ鍵Kcが同じである場合には、そのブロック鍵Kbが同じとなる。すなわち、図10のステップS33の処理で生成され、図9のステップS13の処理でライセンス341として付加されたコンテンツ鍵Kcと、図10のステップS39の処理で付加されたSeedの値が同じであれば、ステップS66の処理で生成されるブロック鍵Kbは同じ値となる。換言すれば、図9と図10の処理で、ブロック351が生成された場合、図15の処理では、ブロック351のSeedとライセンス341に含まれるコンテンツ鍵Kcとに基づいて、ブロック鍵Kbが生成され、ブロック351内の暗号化されたコンテンツデータを復号することができる。
ステップS69において、コンテンツ入力部301は、次のブロックがあるか否かを判定する。例えば、1回目の処理で図13のブロック351が復号された場合、その後にはブロック352−1(例えば、Bピクチャ)があるので、次のブロックがあると判定される。ステップS69において、次のブロックがあると判定された場合、処理はステップS63に戻り、それ以降の処理が繰り返される。
具体的な処理の例を、図13を参照して説明すると、次のブロック352−1では、フラグが「81」ではないので、ステップS63においてNOと判定され、同じブロック鍵Kbで、1ブロック(ブロック352−2の暗号化されているデータ(例えば、Bピクチャ))が復号される。この処理は、図13のブロック352−14が復号されるまで同様に繰り返され、次のブロック353では、ステップS63において、フラグが「81」であると判定され、再度、ブロック鍵(ブロック351の場合のブロック鍵Kbとは異なる、ブロック353についてのブロック鍵をブロック鍵Kb'と称する)が演算され、ブロック354−1乃至354−14までが、ブロック353について演算されたブロック鍵Kb'で復号される。このように、1GOPごとにブロック鍵Kbが生成され、暗号化されているので、これを復号する場合についても、1GOPごとにSeedとコンテンツ鍵Kcを用いてブロック鍵Kbを生成し、ブロックを復号することになる。換言すれば、所定の数のブロックごとに、コンテンツ鍵Kcと、その所定の数のブロックの数(格納されたSeed)に応じて、ブロック鍵Kbが生成され、このブロック鍵Kbで、所定の数のブロックが復号される。
そして、コンテンツを構成する全てのブロック(全てのGOP)について復号が終了した場合、ステップS69において、次のブロックがないと判定され、処理はステップS70に進む。
ステップS70において、コンテンツ出力部304は、復号されたコンテンツを出力する。その後、処理は図14のステップS52に戻る。すなわち、復号されたコンテンツが、デコードされ(ステップS53)、再生される(ステップS54)。
図15までの処理により、1つのコンテンツを暗号化する場合に、そのコンテンツで共通して利用されるコンテンツ鍵Kcではなく、コンテンツを複数のブロックに分割し、複数のブロックに対応する数をコンテンツ鍵Kcで暗号化することで、ブロック鍵Kbを生成し、そのブロックを、ブロック鍵Kbで暗号化するようにしたので、コンテンツを安全に転送することができる。
例えば、ISMA Crypのストリーム暗号化方式のように、コンテンツとコンテンツ鍵Kcの排他的論理和を演算しているわけではなく、コンテンツを、ブロック鍵Kbで暗号化しているので、例え、コンテンツがわかったとしても、ブロック鍵Kbの割り出しは困難であり、コンテンツを安全に守ることができる。また、例えば、ブロック鍵Kbが1つ分かったとしても、複数のブロックごとにブロック鍵Kbが異なるので、コンテンツ全体が盗まれる可能性が極めて低く、コンテンツを安全に守ることができる。
なお、図15において、ステップS65のライセンスの判定を、ステップS63の処理の前に行なうようにしてもよい。すなわち、先にライセンスの範囲内であるか否かを判定した後、暗号化部333にSeedをセットするようにしてもよい。
次に、図16のフローチャートを参照して、図9,図10の処理で記憶されたコンテンツを分割する場合の処理を説明する。なお、この処理は、図9と図10の処理により記憶部204にコンテンツ(エンコードされ、暗号化されたコンテンツ)が記憶されている状態で開始され、ユーザにより操作入力部202に対して、記憶部204に記憶されているコンテンツの分割が指令されたとき開始される。また、この処理は、図3のパーソナルコンピュータ11により実行される。
ステップS91において、分割処理部209とライセンス処理部211は、主制御部203からの制御に基づいて、コンテンツを分割する処理を実行する。例えば、分割処理部209は、記憶部204に記憶されているコンテンツを、ユーザの指令に基づいて分割し、ライセンス処理部211は、分割されたコンテンツに応じたライセンスを生成する。なお、この処理の詳細は、図17を参照して後述する。
ステップS92において、主制御部203は、分割したコンテンツを、記憶部204に記憶させ、処理を終了する。
この処理により、記憶部204に記憶されているコンテンツを、ライセンスを考慮して分割することができる。具体的な例としては、1つのコンテンツ(映画)を、ユーザの指令に基づいて分割(すなわち編集)することができる。
次に、図17のフローチャートを参照して、図16のステップS91の処理の詳細である、コンテンツを分割する処理について説明する。
ステップS111において、分割処理部209は、ユーザにより分割が指令されたコンテンツが分割可能なコンテンツであるか否かを判定する。具体的には、上述した図9のステップS14とステップS15の処理で、分割の可否を含むライセンス(図13のライセンス341)がコンテンツに付加され、記憶部204に記憶されるので、分割処理部209は、コンテンツに付加されているライセンス(例えば、図13のライセンス341)に基づいて、分割可能なコンテンツであるか否かを判定する。
ステップS111において、分割可能なコンテンツであると判定された場合、ステップS112において、分割処理部209は、主制御部203を介して、コンテンツを読み出し、コンテンツを分割する。この場合の例を、図18を参照して説明する。
例えば、図18Aに示されるように、分割前のコンテンツが、Seed0乃至Seed9である場合について説明する。図18Aと図13とを比較するに、例えば、図13のブロック351、並びにブロック352−1乃至352−14からなるブロック群が、図18Aのブロック群411に対応している。すなわち、図18Aのブロック群411は、共通するSeedを有するブロックのまとまり(群)である。換言すれば、ブロック群411には、1GOPのデータが含まれている。図18Aにおいては、コンテンツに含まれるライセンス401(図9の処理で付加されたらいセンス)として、Seed Number=0乃至9、コンテンツ鍵Kc、ライセンスデータが含まれている。また、コンテンツのデータ部として、Seed=0乃至9までの、ブロック群411乃至420が含まれている。分割処理部209は、図18Aに示されるようなコンテンツを、例えば、ブロック群414とブロック群415の境界で分割する。なお、コンテンツは、ブロック群の境界でのみ分割することができる。すなわち、コンテンツの分割はGOPの境界.で行なわれる(ピクチャの境界では行なわれない)。この分割により、図18Aのコンテンツは、図18Bに示されるように、ブロック群411乃至414からなるコンテンツ#1と、ブロック群415乃至419からなるコンテンツ#2に分割される。
ステップS113において、ライセンス処理部211は、分割したコンテンツに対応するライセンスを生成する。例えば、図18Aのコンテンツが分割されて、図18Bに示されるように、コンテンツ#1とコンテンツ#2とされた場合、ライセンス処理部211は、もとのライセンス401に基づいて、分割されたコンテンツに対応するライセンスを生成する。具体的には、ライセンス処理部211は、図18AのライセンスのSeed Numberの範囲を、コンテンツ#1については、Seed Number=0乃至3とし、コンテンツ#2については、Seed Number=4乃至9とする。このとき、コンテンツ鍵Kcは、図18Aのライセンス401のコンテンツ鍵Kcと同じとする。なお、この処理では、ライセンスデータを変更しないものとするが、例えば、ライセンスデータに含まれる再生条件を、コンテンツ#1とコンテンツ#2とで、半分ずつとするようにしてもよい。
このようにして、ライセンス処理部211は、分割したコンテンツ#1に対応するライセンスとして、Seed Number=0乃至3、コンテンツ鍵Kc、およびライセンスデータを含むライセンス431と、Seed Number=4乃至9、コンテンツ鍵Kc、およびライセンスデータを含むライセンス432とを生成する。
ステップS114において、ライセンス処理部211は、もとのライセンスを無効にする。例えば、ライセンス処理部211は、図18Aのライセンス401を無効にする。
ステップS115において、ライセンス処理部211は、新しい2つのライセンスを有効にする。例えば、ライセンス処理部211は、図18Bのライセンス431とライセンス432とを有効にする。その後、処理は図16のステップS91に戻り、それ以降の処理が実行される。一方、ステップS111で、分割可能なコンテンツではないと判定された場合、ステップS116において、主制御部203は、エラー処理を実行し(例えば、分割不可能なことを示すメッセージを表示部57に表示するなどの処理を実行し)、処理を終了する。
図17の処理により、ライセンスに、Seedの値(Seed Number)を格納するようにしたので、不正なライセンスの利用を防ぐことができる。また、コンテンツ鍵Kcが共通であっても、ブロックをコンテンツ鍵Kcで暗号化するわけではなく、ブロック群ごとに付加されているSeedとコンテンツ鍵Kcによって演算されるブロック鍵Kbで暗号化するため、たとえ、コンテンツ鍵Kcが盗まれたとしても、コンテンツの不正な利用を防ぐことができる。
次に、図19のフローチャートを参照して、図16と図17の処理で分割されたコンテンツを結合する場合の処理を説明する。なお、この処理は、図16と図17の処理により記憶部204に分割されたコンテンツ(エンコードされ、暗号化されたコンテンツ)が記憶されている状態で開始され、ユーザにより操作入力部202に対して、記憶部204に記憶されている、分割されているコンテンツの結合が指令されたとき開始される。また、この処理は、図3のパーソナルコンピュータ11により実行される。
ステップS131において、結合処理部210は、主制御部203からの制御に基づいて、コンテンツを結合する。例えば、結合処理部210は、記憶部204に記憶されている、2つに分割されたコンテンツを、ユーザの指令に基づいて結合する。より具体的な例としては、図18Bに示されるような分割されたコンテンツ#1とコンテンツ#2を、図18Aに示されるような1つのコンテンツに結合する。
ステップS132において、ライセンス処理部211は、結合したコンテンツに対応するライセンスを生成する。例えば、図18Bのライセンス431とライセンス432とに基づいて、ライセンス401を生成する。
ステップS133において、ライセンス処理部211は、もとのライセンスを無効にする。例えば、ライセンス処理部211は、結合前のライセンスであるライセンス431とライセンス432とを無効にする。
ステップS134において、ライセンス処理部211は、新しい1つのライセンスを有効にする。例えば、ライセンス処理部211は、ステップS132の処理で生成した新しいライセンス(結合したライセンス)401を有効にする。
なお、図19の処理の例では、ステップS132の処理で結合したコンテンツに対応するライセンスを生成するようにしているが、上述した図17のステップS114で無効にされたライセンス401が削除されていなければ、ステップS132の処理をスキップして、単に、結合前のライセンスを無効にし(ステップS133)、結合後のライセンスを有効にする(ステップS134)だけでもよい。
ステップS135において、主制御部203は、結合したコンテンツを、ライセンスとともに記憶部204に記憶させる。その後、処理は終了される。
図19の処理により、コンテンツを結合する場合に、ライセンスに含まれるSeedの範囲を考慮して、ライセンスを付加することができる。具体的な例としては、1つのコンテンツ(映画)が分割されたものを、ユーザの指令に基づいて結合(すなわち編集)することができる。
以上の処理のまとめを、図20を参照して説明する。
暗号化部451に、1つのコンテンツに共通して利用されるコンテンツ鍵Kcと、所定のブロックごとに変化する値であるSeed[i](iは任意の自然数)が供給されると、暗号化部451は、Seed[i]をコンテンツ鍵Kcで暗号化し、ブロック鍵Kb[i]を生成し、出力する。このブロック鍵Kb[i]は、暗号化部または復号部452に供給される。暗号化部または復号部452は、コンテンツを暗号化する場合には暗号化部となり、コンテンツを復号する場合には復号部となる。すなわち、コンテンツを暗号化する場合、暗号化部または復号部452は、平文を読み込み、平文をコンテンツ鍵Kb[i]で暗号化し、暗号化されているブロックを出力する(図20中右側の矢印は下から上に進む)。一方、暗号化されているコンテンツを復号する場合、暗号化部または復号部452は、暗号化されているブロックを読み込み、暗号化されているブロックをコンテンツ鍵Kb[i]で復号し、平文(復号されたブロック)を出力する(図20中右側の矢印は上から下に進む)。
このように、平文を暗号化するための鍵と、暗号化されているブロックを平文に戻すための鍵として、コンテンツ鍵Kcではなく、所定のブロックごとに変化する値をコンテンツ鍵Kcで暗号化した鍵であるブロック鍵Kb[i]を用いるようにしたので、コンテンツの入れ替えを防ぐとともに、不正なコピーを防ぐことができる。
以上のように、暗号化処理部207は、最小暗号化の単位(ブロック群)がかわるごとにSeedの値を1インクリメントし、1つのコンテンツ(Stream)に共通なコンテンツ鍵Kcを鍵にしてSeedを暗号化したものをブロック鍵Kbとする。そして、暗号化処理部207は、最小暗号化の単位(ブロック群)に含まれる複数のブロックを、このブロック鍵Kbで暗号化する。また、暗号化処理部207は、暗号単位の先頭にSeedあり/なしを示すフラグとSeed Numberを付加する。このSeedあり/なしを示すフラグとSeed Numberとは、復号するときに利用される。具体的には、復号処理部208は、最小暗号化の単位(ブロック群)がかわるごとにSeedの値を読み出し、1つのコンテンツ(Stream)に共通なコンテンツ鍵Kcを鍵にしてSeedを暗号化したものをブロック鍵Kbとする。そして、復号処理部208は、最小暗号化の単位(ブロック群)に含まれる複数のブロックを、このブロック鍵Kbで復号する。
このように、コンテンツを暗号化する場合に、コンテンツの排他的論理和ではなく、ブロック鍵Kbでコンテンツを暗号化するようにしたので、コンテンツを、より安全に保護することができる。
例えば、コンテンツを暗号化する場合に排他的論理和(XOR)を利用し、分割処理部209が分割を行なう場合、あるコンテンツの後ろに、そのコンテンツと同じコンテンツをコピーして付加し、その後、コンテンツを分割処理部が分割して2つコンテンツを生成した場合、分割前のライセンスと同じライセンスが、2つのコンテンツに付加されることになり、結果として、コンテンツのコピーが生成されてしまう。
しかしながら、本発明を適用して、所定の数のブロックごと(所定のアクセス単位ごと)に、暗号化するためのブロック鍵Kbを変更し、有効なSeed Numberをライセンス側で調整することで(例えば、図17のステップS113乃至ステップS115の処理により)、不正なコンテンツのコピーを防ぐことができる。
また、例えば、コンテンツを暗号化する場合に、排他的論理和(XOR)を利用したとき、暗号化されていないコンテンツ(平文)が割り出されると、暗号化されたコンテンツとコンテンツ(平文)に基づいて、コンテンツを暗号化するときに利用された暗号鍵(例えば、コンテンツ鍵Kc)が容易に割り出されることとなり、このコンテンツ鍵Kcが利用されて、不正にコンテンツの入れ替えが行なわれる危険も生じるが、本実施の形態では、排他的論理和ではなく、ブロック鍵Kbで暗号化を行なっているので、コンテンツを安全に保護することができる。
さらに、例えば、自分自身で録音が可能な機器においてや、使用しているコーデックのデコーダが一般に普及しているような場合、暗号化されたコンテンツと暗号化されていないコンテンツ(平文)のペアを作ることは容易であるが、本実施の形態では、排他的論理和ではなく、ブロック鍵Kbで暗号化を行なっているので、たとえ、暗号化されたコンテンツと暗号化されていないコンテンツ(平文)のペアが分かったとしても、暗号化に用いられたブロック鍵Kbを容易に割り出されないようにすることができる(暗号強度によって保護されている)。
このように、本発明は、ストリーミング用の暗号化には有効であり、最小暗号化単位分のデータがそろわない場合でも復号が可能であるため、無駄になるデータを少なくすることができる。
また、排他的論理和でなく、暗号化や復号を利用しているので、暗号化されたデータが一部盗まれたとしても、復号されず、より、安全にコンテンツを守ることができる。
さらに、コンテンツの暗号化と復号の仕組みとしては、所定の鍵(Kb)を用いて暗号化するだけであるので、比較的処理能力が低い機器(パーソナルコンピュータ11と比較して処理能力が低い、例えばHi-MDプレーヤやメモリスティックウォークマン(商標)などの機器)であっても、コンテンツ用リムーバブルメディア15に記憶されている暗号化されたコンテンツを容易に復号することができる。すなわち、暗号化や復号処理にかかるコストを低く抑えることができる。
また、1GOPごとにブロック鍵Kbを生成し、暗号化するようにしたので、1つのブロックごと(ピクチャごと)にブロック鍵Kbを生成する場合と比較して、処理の負荷を抑えることができる。
なお、以上の例では、パーソナルコンピュータ11において、コンテンツの暗号化処理と、コンテンツの復号処理が行なわれるようにして記載したが、図1の配信サーバ12、DVDプレーヤ13、またはデジタルテレビジョン受像機14などの配信側の情報処理装置で、コンテンツの暗号化が行なわれ、本発明を適用した暗号化が行なわれたコンテンツがパーソナルコンピュータ11に供給されるようにしてもよい。この場合においても、配信されるコンテンツのライセンスにコンテンツ鍵Kcとライセンスの範囲が含まれ、さらに、ブロック群の先頭(本実施の形態の例ではIピクチャ)にフラグとSeedが含まれるので、配信を受けたパーソナルコンピュータ11において復号することができる。
また、さらに、配信側で暗号化し、分割したコンテンツを、パーソナルコンピュータ11が受信して、結合したり、復号するようにしてもよい。具体的には、配信側の装置(例えば、図1の配信サーバ12)に、図3のエンコード処理部205、暗号化処理部207、および分割処理部209を設けさせるようにし、配信側の装置で、上述した図9、図10、図16、および図17の処理を実行させるようにする。そして、受信側のパーソナルコンピュータ11において、記憶部204(コンテンツ用リムーバブルメディア15)に記憶されたコンテンツ(暗号化され、分割されているコンテンツ)が受け付けられ、再生が行なわれる。
なお、以上の例では、パーソナルコンピュータ11がコンテンツの暗号化処理を行なうようにしたが、暗号化処理部207(図7)を有する情報処理装置であれば、暗号化処理を行なうことができる。また、「コンテンツ」を「情報」と読み替えるようにしてもよい。
また、以上の例では、記憶部204に記憶されたコンテンツの再生を、パーソナルコンピュータ11において実行するようにしたが、コンテンツ用リムーバブル15が装着可能であり、本発明を適用した復号処理部(図8)を有する情報処理装置であれば、どのようなものであってもコンテンツを再生することができる。
さらに、配信サーバ12、DVDプレーヤ13、またはデジタルテレビジョン受像機14などで、本発明とは異なる暗号化方式でコンテンツが暗号化されて供給されてきた場合には、パーソナルコンピュータ11は、まず、暗号化されたコンテンツを、復号して平文を取得し、その後、本発明を適用した暗号化方式でコンテンツ(平文)を暗号化して、コンテンツ用リムーバブルメディア15に記憶させればよい。このようにして、様々な暗号化方式で暗号化されたコンテンツを、本発明を適用した暗号化方式で暗号化しなおして、コンテンツ用リムーバブルメディア15に記憶させることができる。
なお、本実施の形態では、暗号化処理部207のSeed生成部282がカウンタを有し、1ずつカウントするようにしたが、Seed生成部282が1ずつカウントする代わりに、乱数を発生するようにしてもよい。この場合においても、生成されたSeedがブロックに格納される(ブロック群の先頭のブロックに格納される)ので、復号処理部208において、確実に復号することができる。
また、本実施の形態では、暗号化処理部207と復号処理部208を別々に記載しているが、暗号化と復号の処理を実行するブロックをまとめるようにしてもよい。
さらに、本実施の形態では、MPEGの規格でエンコードされたコンテンツが入力された場合、ブロック分割部252(図7)が、ピクチャごとに分割して、Seed生成部282が、GOPごとにSeed(ブロックを暗号化するための鍵に使用される数)を生成するようにしたが、ブロック分割部252が、コンテンツをGOPごとに分割するようにしてもよい。この場合、ブロック分割部252がコンテンツをGOP(コンテンツを再生する場合の所定の単位)ごとに分割し、Seed生成部282が、ブロック分割部252により分割されたGOPごとにSeedを生成し、暗号化部283が、Seedをコンテンツ鍵Kcで暗号化してブロック鍵(GOPの鍵)Kbを生成し、暗号化部254が、GOPをブロック鍵Kbで暗号化する。
また、本実施の形態では、1GOPごとにSeedを生成するようにしたが、ピクチャごとにSeedを生成するようにしてもよい。
なお、以上の例では、1つのコンテンツを2つに分割する場合の処理の例について記載したが、1つのコンテンツを複数に分割する場合についても同様の処理が実行される。また、複数に分割されたコンテンツを1つに結合する場合についても、上述した2つのコンテンツを1つに結合する場合の処理と同様の処理が実行される。
また、以上の例では、ライセンスにコンテンツ鍵Kcとライセンスに対応するSeedの範囲とを含めるようにしたが、ブロック(Seedが付加されているブロック、例えば、GOP)のそれぞれに、コンテンツ鍵Kcとライセンスの有無を示すデータを(例えば、ヘッダとして)付加するようにしてもよい。
以上において、暗号化処理部207や復号処理部208に含まれる暗号化部や復号部は、AESやDESの暗号方式でコンテンツを暗号化するものとして説明したが、本発明を適用できるような暗号方式(ブロック暗号の方式)であれば、他の暗号方式も適用することができる。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
この記録媒体は、図2に示されるように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されているリムーバブルメディア91よりなるパッケージメディアにより構成されるだけでなく、装置本体にあらかじめ組み込まれた状態でユーザに提供される、プログラムが記録されているROM52や記憶部59が含まれるハードディスクなどで構成される。
なお、本明細書において、コンピュータプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
本発明を適用した情報処理システムの全体の構成例を示す図である。 図1のパーソナルコンピュータのハードウエアの構成例を示すブロック図である。 図1のパーソナルコンピュータの機能的構成例を示すブロック図である。 コンテンツを記憶する場合の処理の流れを説明する図である。 記憶されているコンテンツを再生する場合の処理の流れを説明する図である。 コンテンツの分割と結合を説明する図である。 図3の暗号化処理部の機能的構成例を説明するブロック図である。 図3の復号処理部の機能的構成例を説明するブロック図である。 コンテンツ記憶処理を説明するフローチャートである。 コンテンツを暗号化する処理を説明するフローチャートである。 Seedを付加する場合のデータ構造を説明する図である。 Seedを付加しない場合のデータ構造を説明する図である。 記憶部に記憶されるコンテンツの例を示す図である。 コンテンツ再生処理を説明するフローチャートである。 コンテンツを復号する処理を説明するフローチャートである。 分割処理を説明するフローチャートである。 コンテンツを分割する処理を説明するフローチャートである。 コンテンツを分割する前と分割した後のデータ構造を説明する図である。 結合処理を説明するフローチャートである。 ブロック鍵の生成、暗号化、および復号を簡単に説明する図である。
符号の説明
1 情報処理システム, 11 パーソナルコンピュータ, 12 配信サーバ, 13 DVDプレーヤ, 14 デジタルテレビジョン受像機, 201 データ入力部, 202 操作入力部, 203 主制御部, 204 記憶部, 205 エンコード処理部, 06 デコード処理部, 207 暗号化処理部, 208 復号処理部, 209 分割処理部, 210 結合処理部, 211 ライセンス処理部, 212 データ出力部, 251 コンテンツ入力部, 252 ブロック分割部, 253 ブロック鍵生成部, 254 暗号化部, 255 データ付加処理部, 256 コンテンツ出力部, 281 コンテンツ鍵生成部, 282 Seed生成部, 283 暗号化部, 301 コンテンツ入力部, 302 ブロック鍵演算部, 303 復号部, 304 コンテンツ出力部, 331 コンテンツ鍵取得部, 332 Seed取得部, 333 暗号化部, 341 ライセンス, 351 ブロック, 352−1乃至352−14 ブロック

Claims (20)

  1. 情報を処理する情報処理システムにおいて、
    前記情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割手段と、
    複数の前記第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成手段と、
    前記数生成手段により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵を生成する鍵生成手段と、
    前記数生成手段により前記第2の単位情報ごとに生成された前記数を、前記鍵生成手段により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵を生成する第1の暗号化手段と、
    前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化手段により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化手段と、
    前記第2の暗号化手段により暗号化された複数の前記第1の単位情報、前記数、および前記第1の鍵を記憶する記憶手段と、
    前記記憶手段に記憶されている前記数を、前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する第3の暗号化手段と、
    前記記憶手段に記憶されている、暗号化されている複数の前記第1の単位情報を、前記第3の暗号化手段により生成された前記第2の鍵でそれぞれ復号する復号手段と
    を備えることを特徴とする情報処理システム。
  2. 情報を処理するプログラムであって、
    前記情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割ステップと、
    複数の前記第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成ステップと、
    前記数生成ステップの処理により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵を生成する鍵生成ステップと、
    前記数生成ステップの処理により前記第2の単位情報ごとに生成された前記数を、前記鍵生成ステップの処理により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵を生成する第1の暗号化ステップと、
    前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化ステップの処理により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化ステップと、
    前記第2の暗号化ステップの処理により暗号化された複数の前記第1の単位情報、前記数、および前記第1の鍵の記憶を制御する記憶制御ステップと、
    前記記憶制御ステップの処理により記憶が制御された前記数を、前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する第3の暗号化ステップと、
    前記記憶制御ステップの処理により記憶が制御された、暗号化されている複数の前記第1の単位情報を、前記第3の暗号化ステップの処理により生成された前記第2の鍵でそれぞれ復号する復号ステップと
    を含む処理をコンピュータに実行させることを特徴とするプログラム。
  3. 情報を暗号化する情報処理装置において、
    前記情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割手段と、
    複数の前記第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成手段と、
    前記数生成手段により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵を生成する鍵生成手段と、
    前記数生成手段により前記第2の単位情報ごとに生成された前記数を、前記鍵生成手段により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵を生成する第1の暗号化手段と、
    前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化手段により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化手段と
    を備えることを特徴とする情報処理装置。
  4. 前記第2の暗号化手段により暗号化された複数の前記第1の単位情報からなる前記第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶するとともに、前記第1の鍵を記憶する記憶手段をさらに備える
    ことを特徴とする請求項3に記載の情報処理装置。
  5. 前記第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、
    前記第2の単位情報は、複数の前記ピクチャからなる1GOP(Group of Pictures)であり、
    前記単位分割手段は、前記情報を前記ピクチャごとに分割し、
    前記数生成手段は、前記GOPごとに、1つの前記数を生成し、
    前記第1の暗号化手段は、前記数を前記第1の鍵で暗号化することによって、前記GOPごとに前記第2の鍵を生成し、
    前記第2の暗号化手段は、前記GOPに含まれる複数の前記ピクチャを、前記第2の鍵でそれぞれ暗号化する
    ことを特徴とする請求項3に記載の情報処理装置。
  6. 前記第2の単位情報に対応する前記数であって、対応する前記第2の単位情報を復号するために暗号化を許可する前記数と、前記第1の鍵とを少なくとも含む、前記情報に関するライセンスを生成するライセンス生成手段をさらに備え、
    前記記憶手段は、前記第2の暗号化手段により暗号化された複数の前記第1の単位情報からなる前記第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶するとともに、前記ライセンス生成手段により生成された、前記第1の鍵を少なくとも含む前記ライセンスを記憶する
    ことを特徴とする請求項4に記載の情報処理装置。
  7. ユーザからの指令に基づいて、暗号化されている前記情報を分割する情報分割手段をさらに備え、
    前記ライセンス生成手段は、前記情報分割手段により分割された前記情報と、前記記憶手段に記憶された前記ライセンスに基づいて、分割された前記情報のそれぞれに対応するライセンスを生成する
    ことを特徴とする請求項6に記載の情報処理装置。
  8. 情報を暗号化する情報処理装置の情報処理方法において、
    前記情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割ステップと、
    複数の前記第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成ステップと、
    前記数生成ステップの処理により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵を生成する鍵生成ステップと、
    前記数生成ステップの処理により前記第2の単位情報ごとに生成された前記数を、前記鍵生成ステップの処理により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵を生成する第1の暗号化ステップと、
    前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化ステップの処理により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化ステップと
    を含むことを特徴とする情報処理方法。
  9. 情報を暗号化するプログラムであって、
    前記情報を、所定の単位の情報である第1の単位情報ごとに分割する単位分割ステップと、
    複数の前記第1の単位情報からなる第2の単位情報ごとに、1つの数を生成する数生成ステップと、
    前記数生成ステップの処理により生成されたそれぞれの前記数を暗号化するための鍵である第1の鍵を生成する鍵生成ステップと、
    前記数生成ステップの処理により前記第2の単位情報ごとに生成された前記数を、前記鍵生成ステップの処理により生成された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに第2の鍵を生成する第1の暗号化ステップと、
    前記第2の単位情報に含まれる複数の前記第1の単位情報を、前記第1の暗号化ステップの処理により生成された前記第2の鍵でそれぞれ暗号化する第2の暗号化ステップと
    を含む処理をコンピュータに実行させることを特徴とするプログラム。
  10. 前記第2の暗号化ステップの処理により暗号化された複数の前記第1の単位情報からなる前記第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて記憶部に記憶するよう制御するとともに、前記第1の鍵を前記記憶部に記憶するよう制御する記憶制御ステップをさらに含む
    ことを特徴とする請求項9に記載のプログラム。
  11. 前記第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、
    前記第2の単位情報は、複数の前記ピクチャからなる1GOPであり、
    前記単位分割ステップの処理では、前記情報を前記ピクチャごとに分割し、
    前記数生成ステップの処理では、前記GOPごとに、1つの前記数を生成し、
    前記第1の暗号化ステップの処理では、前記数を前記第1の鍵で暗号化することによって、前記GOPごとに前記第2の鍵を生成し、
    前記第2の暗号化ステップの処理では、前記GOPに含まれる複数の前記ピクチャを、前記第2の鍵でそれぞれ暗号化する
    ことを特徴とする請求項9に記載のプログラム。
  12. 前記第2の単位情報に対応する前記数であって、対応する前記第2の単位情報を復号するために暗号化を許可する前記数と、前記第1の鍵とを少なくとも含む、前記情報に関するライセンスを生成するライセンス生成ステップをさらに含み、
    前記記憶制御ステップの処理では、前記第2の暗号化ステップの処理により暗号化された複数の前記第1の単位情報からなる前記第2の単位情報と、その第2の単位情報ごとに生成された数とを対応付けて前記記憶部への記憶を制御するとともに、前記ライセンス生成ステップの処理により生成された、前記第1の鍵を少なくとも含む前記ライセンスの前記記憶部への記憶を制御する
    ことを特徴とする請求項10に記載のプログラム。
  13. ユーザからの指令に基づいて、暗号化されている前記情報を分割する情報分割ステップをさらに含み、
    前記ライセンス生成ステップの処理では、前記情報分割ステップの処理により分割された前記情報と、前記記憶制御ステップの処理により記憶が制御された前記ライセンスに基づいて、分割された前記情報のそれぞれに対応するライセンスを生成する
    ことを特徴とする請求項12に記載のプログラム。
  14. 所定の単位の情報である第1の単位情報ごとに情報が分割され、複数の前記第1の単位情報からなる第2の単位情報ごとに生成された1つの数が、それぞれの前記数を暗号化するために生成された第1の鍵で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵でそれぞれ暗号化された複数の前記第1の情報を復号する情報処理装置において、
    前記第2の単位情報ごとに生成された前記数をそれぞれ取得する数取得手段と、
    前記数取得手段により取得されたそれぞれの前記数を暗号化するための前記第1の鍵を取得する鍵取得手段と、
    前記数取得手段により取得された前記数を、前記鍵取得手段により取得された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する暗号化手段と、
    前記第2の単位情報に含まれる複数の暗号化されている前記第1の単位情報を、前記暗号化手段により生成された前記第2の鍵でそれぞれ復号する復号手段と
    を備えることを特徴とする情報処理装置。
  15. 前記第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、
    前記第2の単位情報は、複数の前記ピクチャからなる1GOPであり、
    前記復号手段は、前記GOPに含まれる複数の前記ピクチャを、前記第2の鍵でそれぞれ復号する
    ことを特徴とする請求項14に記載の情報処理装置。
  16. 前記情報には、前記第2の単位情報に対応する前記数であって、対応する前記第2の単位情報を復号するために暗号化を許可する前記数と、前記第1の鍵とを少なくとも含む、前記情報に関するライセンスがさらに含まれる
    ことを特徴とする請求項14に記載の情報処理装置。
  17. 所定の単位の情報である第1の単位情報ごとに情報が分割され、複数の前記第1の単位情報からなる第2の単位情報ごとに生成された1つの数が、それぞれの前記数を暗号化するために生成された第1の鍵で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵でそれぞれ暗号化された複数の前記第1の情報を復号する情報処理装置の情報処理方法において、
    前記第2の単位情報ごとに生成された前記数をそれぞれ取得する数取得ステップと、
    前記数取得ステップの処理により取得されたそれぞれの前記数を暗号化するための前記第1の鍵を取得する鍵取得ステップと、
    前記数取得ステップの処理により取得された前記数を、前記鍵取得ステップの処理により取得された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する暗号化ステップと、
    前記第2の単位情報に含まれる複数の暗号化されている前記第1の単位情報を、前記暗号化ステップの処理により生成された前記第2の鍵でそれぞれ復号する復号ステップと
    を含むことを特徴とする情報処理方法。
  18. 所定の単位の情報である第1の単位情報ごとに情報が分割され、複数の前記第1の単位情報からなる第2の単位情報ごとに生成された1つの数が、それぞれの前記数を暗号化するために生成された第1の鍵で暗号化されることによって、第2の単位情報ごとに生成された第2の鍵でそれぞれ暗号化された複数の前記第1の情報を復号するプログラムであって、
    前記第2の単位情報ごとに生成された前記数をそれぞれ取得する数取得ステップと、
    前記数取得ステップの処理により取得されたそれぞれの前記数を暗号化するための前記第1の鍵を取得する鍵取得ステップと、
    前記数取得ステップの処理により取得された前記数を、前記鍵取得ステップの処理により取得された前記第1の鍵で暗号化することによって、前記第2の単位情報ごとに前記第2の鍵を生成する暗号化ステップと、
    前記第2の単位情報に含まれる複数の暗号化されている前記第1の単位情報を、前記暗号化ステップの処理により生成された前記第2の鍵でそれぞれ復号する復号ステップと
    を含む処理をコンピュータに実行させることを特徴とするプログラム。
  19. 前記第1の単位情報は、Iピクチャ、Bピクチャ、またはPピクチャのいずれかのピクチャであり、
    前記第2の単位情報は、複数の前記ピクチャからなる1GOPであり、
    前記復号ステップの処理では、前記GOPに含まれる複数の前記ピクチャを、前記第2の鍵でそれぞれ復号する
    ことを特徴とする請求項18に記載のプログラム。
  20. 前記情報には、前記第2の単位情報に対応する前記数であって、対応する前記第2の単位情報を復号するために暗号化を許可する前記数と、前記第1の鍵とを少なくとも含む、前記情報に関するライセンスがさらに含まれる
    ことを特徴とする請求項18に記載のプログラム。
JP2004213882A 2004-07-22 2004-07-22 情報処理システム、情報処理装置、情報処理方法、並びにプログラム Abandoned JP2006041570A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2004213882A JP2006041570A (ja) 2004-07-22 2004-07-22 情報処理システム、情報処理装置、情報処理方法、並びにプログラム
US11/185,601 US20060018465A1 (en) 2004-07-22 2005-07-20 Information-processing system, information-processing apparatus, information-processing method, and program
EP05254544A EP1619896A2 (en) 2004-07-22 2005-07-21 System and method for protecting information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004213882A JP2006041570A (ja) 2004-07-22 2004-07-22 情報処理システム、情報処理装置、情報処理方法、並びにプログラム

Publications (1)

Publication Number Publication Date
JP2006041570A true JP2006041570A (ja) 2006-02-09

Family

ID=35169635

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004213882A Abandoned JP2006041570A (ja) 2004-07-22 2004-07-22 情報処理システム、情報処理装置、情報処理方法、並びにプログラム

Country Status (3)

Country Link
US (1) US20060018465A1 (ja)
EP (1) EP1619896A2 (ja)
JP (1) JP2006041570A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007251921A (ja) * 2006-02-20 2007-09-27 Hitachi Ltd ディジタルコンテンツの暗号化,復号方法,及び,ディジタルコンテンツを利用した業務フローシステム
KR100774401B1 (ko) * 2006-06-20 2007-11-08 현대자동차주식회사 차량용 부품 이송 장치
US10303078B2 (en) 2017-09-27 2019-05-28 Fuji Xerox Co., Ltd. Image forming apparatus having two transfer units

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8190920B2 (en) * 2007-09-17 2012-05-29 Seagate Technology Llc Security features in an electronic device
WO2011066531A2 (en) * 2009-11-30 2011-06-03 General Instrument Corporation System and method for encrypting and decrypting data
US9086999B2 (en) 2011-07-05 2015-07-21 International Business Machines Corporation Data encryption management
CN103368686A (zh) * 2012-04-09 2013-10-23 联咏科技股份有限公司 用于传送及接收数据的装置和方法
GB2528959C (en) * 2014-08-07 2017-06-28 Gurulogic Microsystems Oy Encoder, decoder and methods
US10887080B2 (en) * 2017-03-16 2021-01-05 King Fahd University Of Petroleum And Minerals Double-hashing operation mode for encryption
US10798103B2 (en) 2017-11-21 2020-10-06 VWware, Inc. Adaptive device enrollment

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970003054A (ko) 1995-06-29 1997-01-28 구자홍 콤팩트 디스크의 기록 밀도 판별 방법
EP1653463A1 (en) * 1997-05-13 2006-05-03 Kabushiki Kaisha Toshiba License information copying method and apparatus, license information moving method
JP4427693B2 (ja) * 1998-10-02 2010-03-10 ソニー株式会社 データ処理装置および方法、並びにデータ復号処理装置および方法
DE60227220D1 (de) * 2001-03-29 2008-08-07 Sony Corp Vorrichtung zur informationsverarbeitung
JP4545994B2 (ja) * 2001-07-02 2010-09-15 三洋電機株式会社 データ再生装置それに用いるデータ再生回路、およびデータ記録装置
US7281273B2 (en) * 2002-06-28 2007-10-09 Microsoft Corporation Protecting content on medium from unfettered distribution
US20050195975A1 (en) * 2003-01-21 2005-09-08 Kevin Kawakita Digital media distribution cryptography using media ticket smart cards

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007251921A (ja) * 2006-02-20 2007-09-27 Hitachi Ltd ディジタルコンテンツの暗号化,復号方法,及び,ディジタルコンテンツを利用した業務フローシステム
KR100774401B1 (ko) * 2006-06-20 2007-11-08 현대자동차주식회사 차량용 부품 이송 장치
US10303078B2 (en) 2017-09-27 2019-05-28 Fuji Xerox Co., Ltd. Image forming apparatus having two transfer units

Also Published As

Publication number Publication date
US20060018465A1 (en) 2006-01-26
EP1619896A2 (en) 2006-01-25

Similar Documents

Publication Publication Date Title
US8818896B2 (en) Selective encryption with coverage encryption
US6985591B2 (en) Method and apparatus for distributing keys for decrypting and re-encrypting publicly distributed media
JP4861258B2 (ja) 後に購入し観察するためメディアプログラムを暗号化する方法および装置
KR100523054B1 (ko) 디지털 방송 컨텐츠 저장 및 재생을 위한 제어 장치
WO2013031124A1 (ja) 端末装置、検証装置、鍵配信装置、コンテンツ再生方法、鍵配信方法及びコンピュータプログラム
US20130283051A1 (en) Persistent License for Stored Content
US20070294170A1 (en) Systems and methods for conditional access and digital rights management
US20080292103A1 (en) Method and apparatus for encrypting and transmitting contents, and method and apparatus for decrypting encrypted contents
JP4585460B2 (ja) 同一コンテンツから派生した形式の異なるコンテンツを複数個所で同時に利用することを防ぐ記憶装置、システム及び方法
JP2010259057A (ja) デジタルコンテンツの配布方法
JP2004048687A (ja) ネットワークを介するディジタル・コンテンツのセキュア配信システムおよび方法
US7298849B2 (en) Method and apparatus for simultaneous encryption and decryption of publicly distributed media
JP2002244929A (ja) ディジタルコピー方法及びディジタルコンテンツの記録装置
US20060018465A1 (en) Information-processing system, information-processing apparatus, information-processing method, and program
US20080250251A1 (en) Systems and Methods for Hardware Driven Program Execution
JP2005151529A (ja) データ伝送方法、データ伝送装置及びデータ受信装置
JP2001211442A (ja) コンテンツ情報伝送方法、コンテンツ情報記録方法、コンテンツ情報伝送装置、コンテンツ情報記録装置、伝送媒体、及び記録媒体
KR20090002660A (ko) 암호화된 컨텐츠를 재생하는 방법 및 재생을 인가하는방법과 그 장치
US7433488B2 (en) Information recording medium drive device, information processing apparatus, data replay control system, data replay control method, and computer program
US20120148048A1 (en) Method for encrypting content, method for decrypting content and electronic apparatus applying the same
US20050259966A1 (en) Information record apparatus and method, information reproduction apparatus and method, and computer program product
JP3861790B2 (ja) データ管理システム、データ管理方法、クライアント端末、及びサーバ装置
JPWO2010110105A1 (ja) 画質制御用コンテンツ生成装置、画質制御装置、コピー画質制御システム、コピー画質制御方法、画質制御用コンテンツ生成プログラム、画質制御プログラム
JP2006345234A (ja) 暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム
JP2002034018A (ja) パケット処理装置、パケット処理方法及びその記憶媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090507

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090702

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20090828