(57)【特許請求の範囲】
【請求項１】
データ受信装置との間で秘密に共有されている第１の情報と、データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いてデータを暗号化し、暗号化したデータに上記複製制御情報及び時変情報に基づく制御情報を付加した送信データを送信するデータ送信装置と、
上記データ送信装置から送られてくる制御情報が付加され暗号化されたデータを受信し、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いて上記受信データを復号するデータ受信装置とからなるデータ伝送システム。
【請求項２】
上記データ受信装置は、上記受信データに付加された制御情報に基づいて上記時変情報である第３の情報の変化を検出し、上記第３の情報を更新する請求の範囲第１項記載のデータ伝送システム。
【請求項３】
上記データ受信装置は、上記受信データに付加された制御情報に基づいて上記時変情報である第３の情報の変化を検出し、更新前の上記第３の情報に対してインクリメント処理を施した値に基づいて更新された第３の情報を算出する請求の範囲第２項記載のデータ伝送システム。
【請求項４】
上記データ送信装置及びデータ受信装置は、それぞれ一方向関数を用いて、上記第１の情報と第２の情報と第３の情報から上記暗号鍵を生成する請求の範囲第１項記載のデータ伝送システム。
【請求項５】
データ送信装置とデータ受信装置の間で秘密に共有されている第１の情報と、送信データの複製制御情報から導かれる第２の情報と、データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報によって生成された暗号鍵を用いてデータを暗号化して伝送するデータ伝送方法。
【請求項６】
一方向関数を用いて、上記第１の情報と第２の情報と第３の情報から上記暗号鍵を生成する請求の範囲第５項記載のデータ伝送方法。
【請求項７】
データ送信装置において、データ受信装置との間で秘密に共有されている第１の情報と、データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いてデータを暗号化し、暗号化したデータに上記複製制御情報及び時変情報に基づく制御情報を付加した送信データを送信し、
データ受信装置において、上記データ送信装置から送られてくる制御情報が付加され暗号化されたデータを受信し、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いて上記受信データを復号するデータ伝送方法。
【請求項８】
上記データ受信装置において、上記受信データに付加された制御情報に基づいて上記時変情報である第３の情報の変化を検出し、上記第３の情報を更新する請求の範囲第７項記載のデータ伝送方法。
【請求項９】
上記データ受信装置において、上記受信データに付加された制御情報に基づいて上記時変情報である第３の情報の変化を検出し、更新前の上記第３の情報に対してインクリメント処理を施した値に基づいて更新された第３の情報を算出する請求の範囲第８項記載のデータ伝送方法。
【請求項１０】
上記データ送信装置及びデータ受信装置において、それぞれ一方向関数を用いて、上記第１の情報と第２の情報と第３の情報から上記暗号鍵を生成する請求の範囲第７項記載のデータ伝送方法。
【請求項１１】
データ受信装置との間で秘密に共有されている第１の情報と、データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、この暗号鍵を用いてデータを暗号化する暗号化処理手段と、
この暗号化処理手段により暗号化したデータに上記複製制御情報及び時変情報に基づく制御情報を付加した送信データを送信する送信手段と
を備えるデータ送信装置。
【請求項１２】
上記暗号化処理手段は、上記第１の情報と第２の情報と第３の情報から一方向関数を用いて生成した暗号鍵により、データを暗号化する請求の範囲第１１項記載のデータ送信装置。
【請求項１３】
データ受信装置との間で秘密に共有されている第１の情報と、データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、
この暗号鍵を用いてデータを暗号化し、
暗号化したデータに上記複製制御情報及び時変情報に基づく制御情報を付加した送信データを送信するデータ送信方法。
【請求項１４】
上記第１の情報と第２の情報と第３の情報から一方向関数を用いて生成した暗号鍵により、データを暗号化する請求の範囲第１３項記載のデータ送信方法。
【請求項１５】
データ送信装置から送られてくる複製制御情報及び時変情報に基づく制御情報が付加され暗号化されたデータを受信する受信手段と、
この受信手段により受信された受信データについて、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いて上記受信データを復号する復号処理手段と
を備えるデータ受信装置。
【請求項１６】
上記復号処理手段は、上記受信データに付加された制御情報に基づいて上記時変情報である第３の情報の変化を検出し、上記第３の情報を更新する請求の範囲第１５項記載のデータ受信装置。
【請求項１７】
上記復号処理手段は、上記受信データに付加された制御情報に基づいて上記時変情報である第３の情報の変化を検出し、更新前の上記第３の情報に対してインクリメント処理を施した値に基づいて更新された第３の情報を算出する請求の範囲第１６項記載のデータ受信装置。
【請求項１８】
上記暗号化処理手段は、上記第１の情報と第２の情報と第３の情報から一方向関数を用いて生成した暗号鍵により、上記受信データを復号することを特徴とする請求の範囲第１５項記載のデータ受信装置。
【請求項１９】
データ送信装置から送られてくる複製制御情報及び時変情報に基づく制御情報が付加され暗号化されたデータを受信し、 この受信データについて、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いて上記受信データを復号するデータ受信方法。
【請求項２０】
上記受信データに付加された制御情報に基づいて上記時変情報である第３の情報の変化を検出し、上記第３の情報を更新する請求の範囲第１９項記載のデータ受信方法。
【請求項２１】
上記受信データに付加された制御情報に基づいて上記時変情報である第３の情報の変化を検出し、更新前の上記第３の情報に対してインクリメント処理を施した値に基づいて更新された第３の情報を算出する請求の範囲第２０項記載のデータ受信方法。
【請求項２２】
上記第１の情報と第２の情報と第３の情報から一方向関数を用いて生成した暗号鍵により、上記受信データを復号することを特徴とする請求の範囲第１９項記載のデータ受信方法。
【発明の詳細な説明】
【０００１】
【技術分野】
本発明は、データ送信装置からデータ受信装置にデータを伝送するデータ伝送システム、データ伝送方法、データ送信装置、データ送信方法、データ受信装置及びデータ受信方法に関する。
【０００２】
【背景技術】
近年、例えば家庭内において、複数のＡＶ機器をデジタルインターフェースを介して接続し、音楽情報や映像情報などのデジタルデータを伝送したり記録したりするようにしたシステムが普及しつつある。例えば、デジタルバスであるＩＥＥＥ（Ｔｈｅ Ｉｎｔｅｒｎａｔｉｏｎａｌ ｏｆ Ｅｌｅｃｔｒｉｃａｌ ａｎｄ Ｅｌｅｃｔｒｏｎｉｃｓ Ｅｎｇｉｎｅｅｒｓ，Ｉｎｃ．）１３９４ハイ・パフォーマンス・シリアル・バス規格（以下、単にＩＥＥＥ１３９４シリアルバスという）のインターフェースを持つビデオカメラやＤｉｇｉｔａｌ Ｖｅｒｓａｔｉｌｅ Ｄｉｓｋ（ＤＶＤ）（商標）プレーヤなどのＡＶ機器が開発されている。
【０００３】
ところで、通常、映画データ等は著作権のある情報であり、不正なユーザによるコピー等を防ぐ必要がある。
【０００４】
不正なユーザによるコピー等を防ぐために、例えば、ミニディスク（ＭＤ）（商標）システムにおいては、ＳＣＭＳ（Ｓｅｒｉａｌ Ｃｏｐｙ Ｍａｎａｇｅｍｅｎｔ Ｓｙｓｔｅｍ）と呼ばれる方法が用いられている。これは、デジタルインタフェースによって、音楽データとともに伝送される情報のことである。この情報は、音楽データが、ｃｏｐｙ ｆｒｅｅ、ｃｏｐｙ ｏｎｃｅ ａｌｌｏｗｅｄ、又はｃｏｐｙ ｐｒｏｈｉｂｉｔｅｄのうちのいずれのデータであるのかを表す。ミニディスクレコーダは、デジタルインタフェースから音楽データを受信した場合、ＳＣＭＳを検出し、これが、ｃｏｐｙ ｐｒｏｈｉｂｉｔｅｄであれば、音楽データをミニディスクに記録せず、ｃｏｐｙ ｏｎｃｅ ａｌｌｏｗｅｄであれば、ＳＣＭＳ情報をｃｏｐｙ ｐｒｏｈｉｂｉｔｅｄに変更すると共に、受信した音楽データとともに記録し、ｃｏｐｙ ｆｒｅｅであれば、ＳＣＭＳ情報はそのままで受信した音楽データとともに記録する。
【０００５】
このようにして、ミニディスクシステムにおいては、ＳＣＭＳを用いて、著作権を有するデータが不正にコピーされるのを防いでいる。
【０００６】
また、デジタルインタフェースを介して音楽情報や映像情報などのデジタルデータを伝送したり記録したりするようにしたデータ伝送システムでは、伝送路上のデータパケットのパケットヘッダに、複製制御情報を格納して送る方式が考えられている。
【０００７】
この複製制御情報は、例えば次のように
００：コピー制限なし
１０：１回のみコピー可
０１：これ以上のコピー禁止
１１：もともとコピー禁止２ビットで定義されている。
【０００８】
データパケットを受信した記録機器は、データを記録する際に、複製制御情報を検査し、複製制御情報が「０１」又は「１１」すなわちコピー禁止を表していれば受信したデータの記録を行わない。また、複製制御情報が「１０」すなわち１回のみコピー可を表していれば、複製制御情報を「０１」すなわちこれ以上のコピー禁止に変更してから受信データを記録メディアに記録する。
【０００９】
このようにして、もとのデータから生じるコピーの世代を制限するようにしている。
【００１０】
さらに、このコピー世代の制限方式に強制力を持たせるために、データを暗号化して伝送し、コピー世代制限方式を遵守する機器のみを製造するという契約を交わしたメーカーにのみ、暗号化及び復号に必要な情報をライセンスするなどの方法も用いられている。
【００１１】
【発明が解決しようとする課題】
ところで、伝送路上のデータパケットのパケットヘッダに複製制御情報を格納して送る方式では、パケットが送信機器から受信機器に伝送される過程で、複製制御情報が他の機器により改竄される可能性がある。
【００１２】
例えば、図１に示すように、データ送信装置１側からデータパケットのパケットヘッダの複製制御情報をコピー禁止の意味を表す「１１」で送信しても、伝送中に複製制御情報改竄攻撃があり、複製制御情報が１回コピー可を表す「１０」に改竄されてしまうと、このパケットを受信したデータ受信装置２側では、このデータが本来コピー禁止であることを知ることができず、パケットヘッダの複製制御情報が１度の記録を許しているのでデータを記録してしまう。
【００１３】
このように、従来のデータ伝送方法では、コピー世代管理ができなくなってしまう恐れがある。
【００１４】
そこで、本発明の目的は、上述の如き従来の問題点に鑑み、コピー世代管理を確実に行うことができるデータ伝送システム、データ伝送方法、データ送信装置、データ送信方法、データ受信装置及びデータ受信方法を提供することにある。
【００１５】
【課題を解決するための手段】
本発明に係るデータ伝送システムは、データ受信装置との間で秘密に共有されている第１の情報と、データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いてデータを暗号化し、暗号化したデータに上記複製制御情報及び時変情報に基づく制御情報を付加した送信データを送信するデータ送信装置と、上記データ送信装置から送られてくる制御情報が付加され暗号化されたデータを受信し、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いて上記受信データを復号するデータ受信装置とからなる。
【００１６】
また、本発明に係るデータ伝送方法では、データ送信装置とデータ受信装置の間で秘密に共有されている第１の情報と、送信データの複製制御情報から導かれる第２の情報と、データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報によって生成された暗号鍵を用いてデータを暗号化して伝送する。
【００１７】
また、本発明に係るデータ伝送方法では、データ送信装置において、データ受信装置との間で秘密に共有されている第１の情報と、データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いてデータを暗号化し、暗号化したデータに上記複製制御情報及び時変情報に基づく制御情報を付加した送信データを送信し、データ受信装置において、上記データ送信装置から送られてくる制御情報が付加され暗号化されたデータを受信し、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いて上記受信データを復号する。
【００１８】
また、本発明に係るデータ送信装置は、データ受信装置との間で秘密に共有されている第１の情報と、データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、この暗号鍵を用いてデータを暗号化する暗号化処理手段と、この暗号化処理手段により暗号化したデータに上記複製制御情報及び時変情報に基づく制御情報を付加した送信データを送信する送信手段とを備える。
【００１９】
また、本発明に係るデータ送信方法では、データ受信装置との間で秘密に共有されている第１の情報と、データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、この暗号鍵を用いてデータを暗号化し、暗号化したデータに上記複製制御情報及び時変情報に基づく制御情報を付加した送信データを送信する。
【００２０】
また、本発明に係るデータ受信装置は、データ送信装置から送られてくる複製制御情報及び時変情報に基づく制御情報が付加され暗号化されたデータを受信する受信手段と、この受信手段により受信された受信データについて、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いて上記受信データを復号する復号処理手段とを備える。
【００２１】
さらに、本発明に係るデータ受信方法では、データ送信装置から送られてくる複製制御情報及び時変情報に基づく制御情報が付加され暗号化されたデータを受信し、この受信データについて、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報に基づいて暗号鍵を生成し、上記暗号鍵を用いて上記受信データを復号する。
【００２２】
【発明を実施するための最良の形態】
以下、本発明を実施するための最良の形態について図面を参照しながら詳細に説明する。
【００２３】
本発明は、例えば図２に示すような構成のデータ伝送システムに適用される。
【００２４】
このデータ伝送システムは、データ送信装置１０とデータ受信装置２０を備え、データ送信装置１０とデータ受信装置２０が伝送路３０を介して接続された構成となっている。
【００２５】
この実施の形態のデータ伝送システムにおいて、データ送信装置１０は、例えば、通信衛星から送られてくる衛星デジタル多チャネル放送番組を受信するセットトップボックスであって、内部バス１１に接続された中央演算処理ユニット（ＣＰＵ：Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）１２、メモリ１３、入力インターフェース１４、ユーザインターフェース１５、入出力インターフェース１６等により構成されている。入力インターフェース１４には衛星アンテナ１８が接続されている。また、入出力インターフェース１６は、デジタルインターフェースであるＩＥＥＥ（Ｔｈｅ Ｉｎｔｅｒｎａｔｉｏｎａｌ ｏｆ Ｅｌｅｃｔｒｉｃａｌ ａｎｄ Ｅｌｅｃｔｒｏｎｉｃｓ Ｅｎｇｉｎｅｅｒｓ，Ｉｎｃ．）１３９４ハイ・パフォーマンス・シリアル・バス・インターフェース（以下、単にＩＥＥＥ１３９４インターフェースという）であって、上記伝送路３０に接続されている。伝送路３０は、ＩＥＥＥ１３９４シリアルバスで構成される伝送路である。
【００２６】
このデータ送信装置１０において、ＣＰＵ１２は、メモリ１３に記憶されている制御プログラムにしたがって動作して、ユーザインターフェース１５を介して入力される操作情報に応じて番組の選局動作等の各種制御動作を行うようになっている。
【００２７】
そして、このデータ送信装置１０は、上記受信アンテナ１８が接続された入力インターフェース１４により衛星デジタル多チャネル放送信号の所望のチャンネルを選局して所望のチャンネルの映像データや音楽データを受信し、受信した映像データや音楽データをコンテンツデータとして入出力インターフェース１６から上記伝送路３０に送信する。
【００２８】
また、データ受信装置２０は、データ送信装置１０により受信したコンテンツデータ、すなわち映像データや音楽データを磁気テープや光磁気ディスクなどの記録媒体に記録する記録装置であって、内部バス２１に接続された中央演算処理ユニット（ＣＰＵ：Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）２２、メモリ２３、入出力インターフェース２４、ユーザインターフェース２５、メディアアクセス部２６等により構成されている。入出力インターフェース２４は、デジタルインターフェースであるＩＥＥＥ１３９４インターフェースであって、伝送路３０が接続されている。
【００２９】
ＩＥＥＥ１３９４規格では、ネットワーク内で行われる伝送動作をサブアクションと呼び、次の２種類のサブアクションが規定されている。すなわち、２つのサブアクションとして、「アシンクロナス（Ａｓｙｎｃｈｒｏｎｏｕｓ）データ転送」と呼ばれる通常のデータ伝送を行う非同期伝送モード及び、「アイソクロナス（Ｉｓｏｃｈｒｏｎｏｕｓ）データ転送」と呼ばれる伝送帯域を保証した同期伝送モードが定義されている。
【００３０】
このデータ伝送システムでは、伝送帯域を確保できるＩｓｏｃｈｒｏｎｏｕｓデータ転送を用いて音楽データをデータ送信装置１０とデータ受信装置２０との間で伝送する。
【００３１】
ここで、伝送路３０であるＩＥＥＥ１３９４シリアルバス上をＩｓｏｃｈｒｏｎｏｕｓ転送で伝送されるパケット（アイソクロナス・パケット）の構成を図３に示す。
【００３２】
すなわち、アイソクロナス・パケットは、図３に示すように、ヘッダ、ヘッダＣＲＣ、データフィールド及びデータＣＲＣで構成される。
【００３３】
ヘッダは、データ長（ｄａｔａ＿ｌｅｎｇｔｈ）、タグ（ｔａｇ）、チャンネル（ｃｈａｎｎｅｌ）、ｔコード（ｔｃｏｄｅ）、複製制御情報、Ｏｄｄ／Ｅｖｅｎビット及び同期コードｓｙを含んでいる。
データ長（ｄａｔａ＿ｌｅｎｇｔｈ）は、データフィールドの長さを示す。タグ（ｔａｇ）は、アイソクロナス・パケットが伝送するデータのフォーマットを示す。チャンネル（ｃｈａｎｎｅｌ）は、ＩＥＥＥ１３９４シリアルバス上で伝送される複数のアイソクロナス・パケットから所定の所望のパケットの識別を行い、受信するために用いられる。ｔコード（ｔｃｏｄｅ）は、トランザクション・コードであり、アイソクロナス転送であることを示す値が入る。Ｏｄｄ／Ｅｖｅｎビットは、コンテンツキーをＫｃを計算する元ととなる情報の一つである時変情報を与える。複製制御情報は、コンテンツデータの複製の可否を示す。同期コードｓｙは、送信側と受信側で同期情報をやり取りするのに用いられ、映像データ及び音声データなどのデータフィールドに格納されたコンテンツデータの同期を取るのに使用される。
【００３４】
ヘッダＣＲＣは、ヘッダに格納されたデータに対するＣＲＣ（Ｃｙｃｌｉｃ Ｒｅｄｕｎｄａｎｃｙ Ｃｏｄｅ）の格納される領域である。これに基づいてヘッダの伝送エラーのチェックが行われる。
データフィールドは、映像データや音声データ等のコンテンツデータが格納されるフィールドである。
データＣＲＣは、データフィールドに格納されたデータに対するＣＲＣ（Ｃｙｃｌｉｃ Ｒｅｄｕｎｄａｎｃｙ Ｃｏｄｅ）の格納される領域である。これに基づいてデータの伝送エラーのチェックが行われる。
【００３５】
そして、データ受信装置２０は、入出力インターフェース２４を介してコンテンツデータを受信し、それが記録可能であれば、メディアアクセス部２６により磁気テープや光磁気ディスクなどの記録媒体に記録する。
【００３６】
また、データ受信装置２０は、記録禁止のコンテンツデータを受信した場合には、メディアアクセス部２６により記録媒体に記録することなく、単に、音楽データを音声出力端子２６Ａから出力し、また映像データを映像出力端子２６Ｂから出力する。
【００３７】
このデータ受信装置２０において、ＣＰＵ２２は、メモリ２３に記憶されている制御プログラムにしたがって動作して、ユーザインターフェース２５を介して入力される操作情報に応じて、記録媒体に対してメディアアクセス部２６による記録する動作及び再生する動作等の各種制御動作を行うようになっている。
【００３８】
このデータ伝送システムおいて、コンテンツデータは、次のようにして、暗号鍵（コンテンツキーＫｃ）により暗号化されてアイソクロナス・パケットのデータフィールドに格納され、そのアイソクロナス・パケットのヘッダに格納される時変情報（時変値Ｎｃ）を与えるＯｄｄ／Ｅｖｅｎビットとコンテンツデータの複製の可否を示す複製制御情報とともに伝送される。
【００３９】
すなわち、データ伝送システムを構成するデータ送信装置１０及びデータ受信装置２０は、それぞれ固有又は共通の秘密情報を予め持っている。すなわち、公開鍵方式の場合には固有の秘密情報を持ち、共通鍵方式の場合は共通の秘密情報を持つ。例えば、各機器が製造される際に鍵管理機関から与えられる機器用の鍵を機器内にもっている。ここでは、機器用の鍵として共通の秘密情報を持っているものとする。また、各機器は、鍵管理機関から与えられる複製制御情報のそれぞれのステートに対応するｎ（例えばｎ＝６４）ビットの定数を機器内に保存している。すなわち、各機器は、もともとコピー禁止を表す複製制御情報「１１」（Ｃｏｐｙ−ｎｅｖｅｒ）に対応する定数Ｃａ、一世代のみコピー可を表す複製制御情報「１０」（Ｃｏｐｙ−ｏｎｅ−ｇｅｎｅｒａｔｉｏｎ）に対応する定数Ｃｂ、“Ｃｏｐｙ−ｏｎｅ−ｇｅｎｅｒａｔｉｏｎ”だったコンテンツが一度記録されたコンテンツであることを表し、これ以上のコピー禁止を表す複製制御情報「０１」（Ｎｏ−ｍｏｒｅ−ｃｏｐｉｅｓ）に対応する定数Ｃｃ、及び、コピー制限なしを表す複製制御情報「００」（Ｃｏｐｙ−ｆｒｅｅｌｙ）に対応する定数Ｃｄをもっている。
【００４０】
データ送信装置１０は、データを送信するに当たり、例えばｍビットの乱数を２つ生成し、一方を認証・鍵共有プロトコルの実行の際にデータ受信装置２０に送られるエクスチェンジキーＫｘとし、他方をデータ伝送の際に使用する時変値Ｎｃの初期値とする。エクスチェンジキーＫｘは、コンテンツキーＫｃを計算する元となる情報の一つであって、認証・鍵共有プロトコルにより共有された鍵を用いてデータ送信装置１０からデータ受信装置２０に送られる。そして、データを送信する際に、そのデータに応じて複製制御情報をパケットヘッダに書き込む。次に、エクスチェンジキーＫｘと時変値Ｎｃ（アイソクロナス・パケットのヘッダに格納される時変情報）と複製制御情報を用いて、コンテンツキーＫｃを計算し、コンテンツキーＫｃを用いてデータを暗号化して、アイソクロナス・パケットのデータフィールドに格納して、パケットヘッダと共に伝送路に送信する。
【００４１】
コンテンツキーＫｃは、例えば複製制御情報が「１０」であるとき、例えば次のように、
Ｋｃ＝Ｊ［Ｋｘ，Ｎｃ，Ｃｂ］
にて計算する。
【００４２】
ここで、関数Ｊは、出力から入力を求めることが困難な関数（一方向関数）である。関数Ｊの具体例としては、例えばＦＩＰＳ（Ｆｅｄｅｒａｌ Ｉｎｆｏｒｍａｔｉｏｎ Ｐｒｏｃｅｓｓｉｎｇ Ｓｔａｎｄａｒｄ）１８０−１のＳＨＡ（Ｓｅｃｕｒｅ Ｈａｓｈ Ａｌｇｏｒｉｔｈｍ）−１を用いることができ、また、ＤＢＳ（Ｄａｔａ Ｅｎｃｒｙｐｔｉｏｎ Ｓｔａｎｄａｒｄ）等のブロック暗号を用いて構成することも可能である。
【００４３】
ＳＨＡ−１を用いた場合、ＳＨＡ−１にＫｘ，Ｎｃ，Ｃｂのビット連結（Ｋｘ‖Ｎｃ‖Ｃｂ）を入力する。なお、必要に応じて関数Ｊの出力（例えばＳＨＡ−１を用いた場合には１６０ビット）を、暗号アルゴリズムの鍵ビット数（例えばＤＥＳの場合には５６ビット）に拡大、縮小してコンテンツキーＫｃとするようにしてもよい。拡大する場合には、例えば出力を複数回繰り返し並べれば良く、縮小するには、上位あるいは下位の必要ビット数だけを使用する。
【００４４】
ＤＥＳやＳＨＡ−１などの暗号技術については、Ｂｒｕｃｅ Ｓｃｈｎｅｉｅｒ著「Ａｐｐｌｉｅｄ Ｃｒｙｐｔｏｇｒａｐｈｙ（Ｓｅｃｏｎｄ Ｅｄｉｔｉｏｎ），Ｗｉｌｅｙ」に詳しく解説されている。
【００４５】
さらに、データ送信装置１０は、時変値Ｎｃに応じて、データパケットのＯｄｄ／Ｅｖｅｎビットの値をセットする。例えば時変値Ｎｃの最下位ビットとＯｄｄ／Ｅｖｅｎビットの値が一致するようにセットする。ここで、データ送信装置１０は、例えば３０秒以上２分以内など時間条件により、あるいは、伝送開始又は前回の更新から送信したデータのパケット数やバイト数等のデータ量の条件により、時変値Ｎｃを更新する。時変値Ｎｃの更新は、所定の時間間隔もしくは送信量をタイミングとしてインクリメントすることにより行う。そして、時変値Ｎｃの更新に応じて新たにコンテンツキーＫｃを計算し、このコンテンツキーＫｃでコンテンツを暗号化してパケットに格納する。また、データパケットのＯｄｄ／Ｅｖｅｎビットの値を変化させる。
【００４６】
このデータ伝送システムでは、上記データ伝送に先立って、データ送信装置１０とデータ受信装置２０の間で互いの機器の認証と暗号鍵を共有するためのプロトコルを実行する。具体的には、図４のフローチャートに示すような認証・鍵共有プロトコルを実行してから、データ伝送を行う。なお、このデータ伝送システムにおけるデータ送信装置１０側の処理手順を図５のフローチャートに示すとともに、データ受信装置２０側の処理手順を図６のフローチャートに示す。
【００４７】
ここで、この認証・鍵共有プロトコルを示す図４では、データ送信装置１０をＳｏｕｒｃｅ ＤｅｖｉｃｅＡで表し、データ受信装置２０をＳｉｎｋ ＤｅｖｉｃｅＢで表す。
【００４８】
そして、このデータ伝送システムおいて、データ送信装置１０のＣＰＵ１２は、先ず、データの伝送を開始するためのスタートコマンドを上記入出力インターフェース１６から伝送路３０を介してデータ受信装置２０に送信する（ステップＳ１０）。
【００４９】
データ受信装置２０のＣＰＵ２２は、入出力インターフェース２４に接続された上記伝送路３０を介して上記データ送信装置１０から送られてくるスタートコマンド（ＳＴＡＲＴ ｃｏｍｍａｎｄ）を受信したら（ステップＳ２０）、ｍ（例えばｍ＝６４）ビットの乱数ＲＢを生成し、この乱数ＲＢとデータ受信装置２０の識別子ＩＤＢのビット連結（ＲＢ‖ＩＤＢ）を認証・鍵共有プロトコルの開始要求（Ｒｅｑｕｅｓｔ ａｕｔｈｅｎｔｉｃａｔｉｏｎ）共にデータ送信装置１０に入出力インターフェース２４を介して送信する（ステップＳ２１）。
【００５０】
データ送信装置１０のＣＰＵ１２は、入出力インターフェース１６に接続された伝送路３０を介してデータ受信装置２０から送られてくる認証・鍵共有プロトコルの開始要求（Ｒｅｑｕｅｓｔ ａｕｔｈｅｎｔｉｃａｔｉｏｎ）とビット連結（ＲＢ‖ＩＤＢ）を受信したら（ステップＳ１１）、ｍビットの乱数ＲＡを生成し、
ＴｏｋｅｎＡＢ＝ＲＡ‖ＭＡＣ（ＫＡＢ，ＲＡ‖ＲＢ‖ＩＤＢ）
なる演算処理により、第１の認証情報ＴｏｋｅｎＡＢを求め、この第１の認証情報ＴｏｋｅｎＡＢをデータ受信装置２０に入出力インターフェース１６を介して送信する（ステップＳ１２）。ここで、ＭＡＣは、ＩＳＯ／ＩＥＣ ９７９７に記載されている方式で作成されたメッセージ認証コード（Ｍｅｓｓａｇｅ Ａｕｔｈｅｎｔｉｃａｔｉｏｎ Ｃｏｄｅ）である。暗号関数としてはＤＥＳを使用する。また、ＫＡＢは、データ送信装置１０とデータ受信装置２０の間で共有されている秘密情報である。すなわち、ＫＡＢは、上述のように鍵管理機関から与えられた機器用の鍵である。
【００５１】
データ受信装置２０のＣＰＵ２２は、データ送信装置１０から第１の認証情報ＴｏｋｅｎＡＢを受け取ったら（ステップＳ２２）、ＫＡＢ，ＲＡ，ＲＢ，ＩＤＢを用いて独自にＭＡＣを計算し（ステップＳ２３）、受信したものと一致することを確認する（ステップＳ２４）。このステップＳ２４において一致しなければ、データ受信装置２０のＣＰＵ２２は、データ送信装置１０が不正な機器であると判断して、この認証・鍵共有プロトコルを終了する。
【００５２】
次に、データ受信装置２０のＣＰＵ２２は、ｍビットの乱数Ｓを生成し、
ＴｏｋｅｎＢＡ＝Ｓ‖ＭＡＣ（ＫＡＢ，ＲＢ‖ＲＡ）
なる演算処理により、第２の認証情報ＴｏｋｅｎＢＡを求め、この第２の認証情報ＴｏｋｅｎＢＡをデータ送信装置１０に入出力インターフェース２４を介して送る（ステップＳ２５）。なお、上記乱数Ｓは、上記乱数ＲＢと同じｍビットででなくてもよい。ここで、データ受信装置２０のＣＰＵ２２は、ＭＡＣ（ＫＡＢ，Ｓ）の上位ｍビットを後述する一時キーとして使用する。
【００５３】
データ送信装置１０のＣＰＵ１２は、データ受信装置２０から第２の認証情報ＴｏｋｅｎＢＡを受け取ったら（ステップＳ１３）、ＫＡＢ，ＲＡ，ＲＢを用いて独自にＭＡＣを計算し（ステップＳ１４）、受信したものと一致することを確認する（ステップＳ１５）。このステップＳ１５において、一致しなければ、データ送信装置１０のＣＰＵ１２は、データ受信装置２０が不正な機器であると判断して、この認証・鍵共有プロトコルを終了する。そして、このステップＳ４において、一致したら、データ送信装置１０のＣＰＵ１２は、データ受信装置２０を正当な機器であると認証し、ＭＡＣ（ＫＡＢ，Ｓ）の上位ｍビットを後述する一時キーとして使用する。
【００５４】
なお、ＭＡＣ（ＫＡＢ，Ｓ）の上位ｍビットを一時キーとして使用するが、そのビット数は、乱数Ｓと同じのビット数ｍと同じである必要はない。
【００５５】
次に、データ送信装置１０のＣＰＵ１２は、エクスチェンジキーＫｘを例えばＤＥＳ暗号関数を用いて一時キーで暗号化し、暗号化したエクスチェンジキーＫｘをデータ受信装置２０に入出力インターフェース１６を介して送信する（ステップＳ１６）。
【００５６】
そして、データ受信装置２０は、データ送信装置１０から送られてきた暗号化されたエクスチェンジキーＫｘをＤＥＳ復号関数を用いて一時キーで復号して、エクスチェンジキーＫｘを得る（ステップＳ２６）。
【００５７】
このデータ伝送システムにおけるデータ受信装置２０は、データ送信装置１０との間で認証・鍵共有プロトコルを実行することにより得たエクスチェンジキーＫｘ及び時変値Ｎｃ、データパケットの複製制御情報に対応した定数（この例ではＣｂ）から、コンテンツキーＫｃをデータ送信装置１０と同様に計算することができ、このコンテンツキーＫｃを用いてデータを復号することができるようになる。
【００５８】
このデータ伝送システムでは、上記認証・鍵共有プロトコルを実行してから、図７のフローチャートに示すような手順に従ってデータ伝送を行う。このデータ伝送システムにおけるデータ受信装置２０側の処理手順を図８のフローチャートに示すとともに、データ送信装置１０側の処理手順を図９のフローチャートに示す。
【００５９】
すなわち、上記認証・鍵共有プロトコルによりエクスチェンジキーＫｘを得たデータ受信装置２０のＣＰＵ２２は、次に、データ送信装置１０に対し、現在の時変値Ｎｃを送るように要求する（ステップＳ３０）。
【００６０】
データ送信装置１０のＣＰＵ１２は、このＮｃ要求を受信すると（Ｓ４０）、この要求に応じて現在の時変値Ｎｃを上記データ受信装置２０に送信し（ステップＳ４１）、この時変値Ｎｃをデータ受信装置２０が受信する（ステップＳ３１）。
【００６１】
データ受信装置２０は、データ送信装置１０から送られてきた時変値Ｎｃの最下位ビットとデータパケット中のＯｄｄ／Ｅｖｅｎビットが等しいことを確認し、等しい場合に、時変値ＮｃとエクスチェンジキーＫｘ、定数ＣｂからコンテンツキーＫｃを計算する（ステップＳ３２）。時変値Ｎｃの最下位ビットとデータパケット中のＯｄｄ／Ｅｖｅｎビットが等しくない場合には、データ受信装置２０は、コンテンツキーＫｃが既に更新されたと判断し、送られた時変値Ｎｃをインクリメントした値を新たな時変値Ｎｃとして、コンテンツキーＫｃを計算する。
【００６２】
なお、上記Ｎｃ要求に応じてデータ送信装置１０から時変値Ｎｃをデータ受信装置２０に送った後では、データ送信装置１０及びデータ受信装置２０は、共に、次の時変値Ｎｃの更新後の値が現在の値をインクリメントしたものであることが判っているので、予め次に使われるコンテンツキーＫｃを計算しておくことができる。
【００６３】
次に、データ送信装置１０は、映像データや音声データなどのコンテンツデータを暗号鍵（コンテンツキーＫｃ）で暗号化し、暗号化したコンテンツデータをアイソクロナス・パケットのデータフィールドに格納し、そのアイソクロナス・パケットのヘッダに格納される時変情報を与えるＯｄｄ／Ｅｖｅｎビット及びコンテンツデータの複製制御情報とともに順次送信する（ステップＳ４２，Ｓ４３）。
【００６４】
すなわち、データ送信装置１０では、例えば時変値Ｎｃに応じたＯｄｄ／Ｅｖｅｎビットの設定状態を判定して（ステップＳ４１Ａ）、Ｏｄｄ／Ｅｖｅｎビット＝０であれば、Ｏｄｄ／Ｅｖｅｎビット＝０に対応するコンテンツキーＫｃ（Ｏｄｄキー）でコンテンツデータを暗号化した暗号化データを送信し（ステップＳ４２）、また、Ｏｄｄ／Ｅｖｅｎビット＝１であれば、Ｏｄｄ／Ｅｖｅｎビット＝１に対応するコンテンツキーＫｃ（Ｅｖｅｎキー）でコンテンツデータを暗号化した暗号化データを送信する処理を行う（ステップＳ４３）。そして、送信終了か否かを判定し（ステップＳ４４）、その判定結果がＮＯすなわち送信終了でなければ、時変値Ｎｃの更新タイミングになったか否かを判定し（ステップＳ４５）、更新タイミングでなければ時変値Ｎｃを更新することなく上記Ｏｄｄ／Ｅｖｅｎビットの設定状態の判定処理（ステップＳ４１Ａ）に戻り、更新タイミングになったら時変値Ｎｃをインクリメントすることにより更新するとともにＯｄｄ／Ｅｖｅｎビットを更新し（ステップＳ４６）、上記Ｏｄｄ／Ｅｖｅｎビットの設定状態の判定処理（ステップＳ４１Ａ）に戻ることにより、上記Ｏｄｄ／Ｅｖｅｎビット＝０に対応するコンテンツキーＫｃ（Ｏｄｄキー）でコンテンツデータを暗号化した暗号化データの送信処理（ステップＳ４２）と、Ｏｄｄ／Ｅｖｅｎビット＝１に対応するコンテンツキーＫｃ（Ｅｖｅｎキー）でコンテンツデータを暗号化した暗号化データの送信処理（ステップＳ４３）を繰り返し行う。
【００６５】
そして、上記送信終了か否かの判定処理（ステップＳ４４）のＹＥＳすなわち送信終了であれば、データ伝送モードの処理を終了する。
【００６６】
データ受信装置２０は、このようにしてデータ送信装置１０から送られてくる暗号化データを受信すると、計算したコンテンツキーＫｃを用いてデータを復号する（ステップＳ３３，Ｓ３４）。
【００６７】
すなわち、データ受信装置２０では、暗号化データの受信受信復号処理（ステップＳ３３，Ｓ３４）を行う毎に、受信終了か否かを判定し（ステップＳ３５）、その判定結果がＮＯすなわち受信終了でなければ、時変値Ｎｃの更新タイミングになったか否かを判定し（ステップＳ３６）、更新タイミングでなければ時変値Ｎｃを更新することなく上記コンテンツキーＫｃの計算処理（ステップＳ３２）に戻り、更新タイミングになったら時変値Ｎｃをインクリメントすることにより更新して（ステップＳ３７）、上記コンテンツキーＫｃの計算処理（ステップＳ３２）に戻ることにより、上記Ｏｄｄ／Ｅｖｅｎビット＝０に対応する暗号化データの受信復号処理（ステップＳ３３）と、上記Ｏｄｄ／Ｅｖｅｎビット＝１に対応する暗号化データの受信送信処理（ステップＳ３４）を繰り返し行う。
【００６８】
データ受信装置２０は、計算したコンテンツキーＫｃを用いてデータを復号することにより、このデータパケットに格納されていた複製制御情報に応じて、データの記録を可能にしたり禁止したりする制御を行うことができる。
【００６９】
なお、上述の実施の形態では、データ受信装置１０が１台のデータ伝送システムについて説明したが、複数台のデータ受信装置がある場合にも、本発明は、そのまま適用することができる。
【００７０】
このような構成のデータ伝送システムにおいて、例えば、データ送信装置１０側からデータパケットのパケットヘッダの複製制御情報をコピー禁止の意味表す「１１」で送信した場合に、伝送中に複製制御情報改竄攻撃があり、複製制御情報が１回コピー可を表す「１０」に改竄されてしまうと、このパケットを受信したデータ受信装置２０側では、このデータの複製制御情報「１０」に対応した定数Ｃｂを用いてコンテンツキーＫｃを計算し、このコンテンツキーＫｃを用いてコンテンツデータを復号することになる。
【００７１】
データ送信装置１０側におけるコンテンツデータの暗号化は、複製制御情報「１１」に対応した定数Ｃａを用いて計算したコンテンツキーＫｃにより行われているので、データ受信装置２０側において復号の結果として得られるデータは無意味なデータとなる。すなわち、データ受信装置２０で現れるデータは、元のコンテンツデータではないので記録しても意味がなく、コピーの世代管理が崩れることはない。
【００７２】
また、このデータ伝送システムでは、コンテンツキーＫｃに時変値Ｎｃを作用させているので、この時変値Ｎｃを頻繁に変えることにより、同一の暗号鍵を用いて暗号化されるデータの量を制限することができ、暗号解析のおそれを少なくすることができる。
【００７３】
さらに、時変値Ｎｃの更新をインクリメントにより行い、現在使われている時変値に対応した値をデータパケットに格納して伝送することにより、データ受信装置２０側で時変値Ｎｃの更新を簡単に知ることができ、また、正しいコンテンツキーＫｃをデータ送信装置１０及びデータ受信装置２０が共に予め計算しておくことができる。これにより、時変値Ｎｃの更新がある毎に、データ受信装置２０がデータ送信装置１０対して時変値Ｎｃを問い合わせる必要もなく、システム全体としての通信量の抑制、制御ソフトウエアの簡略化を図ることができる。
【００７４】
また、コンテンツキーＫｃを計算する際に、出力から入力を求めることが困難な一方向性関数を用いているので、仮に上記コンテンツキーＫｃが露見したとしても、エクスチェンジキーＫｘや複製制御情報に対応する定数が不正に求められてしまうことがない。したがって、あるコンテンツキーＫｃが露見したとしても、別のコンテンツキーＫｃを用いて暗号化されたコンテンツデータが解読されてしまうことはない。
【００７５】
【発明の効果】
以上のように本発明の実施の形態においては、データ送信装置からデータ受信装置にデータを一方伝送するに当たり、データ受信装置との間で秘密に共有されている第１の情報と、送信データの複製制御情報から導かれる第２の情報と、上記データ受信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報によって暗号鍵を生成し、この暗号鍵を用いてデータを暗号化し、暗号化したデータに上記複製制御情報及び時変情報を付加した送信データをデータ送信装置から送信することにより、データ受信装置側では、上記データ送信装置から送られてくる複製制御情報及び時変情報が付加され暗号化されたデータを受信し、受信された受信データについて、上記データ送信装置との間で秘密に共有されている第１の情報と、上記受信データの複製制御情報から導かれる第２の情報と、上記データ送信装置との間で共有する予め定められたデータ量の条件により変動する時変情報である第３の情報によって暗号鍵を生成し、この暗号鍵を用いて上記受信データを復号することができる。
【００７６】
このように送信データの暗号鍵に上記送信データの複製制御情報から導かれる第２の情報を暗号鍵に作用させておくことにより、伝送中に複製制御情報改竄攻撃によって複製制御情報が改竄されてしまった場合には、データ再生装置側で受信したデータの複製制御情報に応じた第２の情報に基づいて計算される暗号鍵はデータ送信装置側で使用した暗号鍵とは異なるものとなるので、受信データを正常に復号することができず、コピーの世代管理が崩れることはない。
【００７７】
また、暗号鍵に時変情報を作用させているので、この時変情報を頻繁に変えることにより、同一の暗号鍵を用いて暗号化されるデータの量を制限することができ、暗号解析のおそれを少なくすることができる。
【００７８】
さらに、時変情報の更新をインクリメントにより行い、現在使われている時変情報に対応した値をデータパケットに格納して伝送することにより、データ受信装置側で時変情報の更新を簡単に知ることができ、また、正しい暗号鍵をデータ送信装置及びデータ受信装置が共に予め計算しておくことができる。これにより、時変情報の更新がある毎に、データ受信装置がデータ送信装置１０対して時変値Ｎｃを問い合わせる必要もなく、システム全体としての通信量の抑制、制御ソフトウエアの簡略化を図ることができる。
【００７９】
また、上記暗号鍵を計算する際に、出力から入力を求めることが困難な一方向性関数を用いることにより、仮に上記暗号鍵が露見したとしても、データ受信装置との間で秘密に共有されている第１の情報や複製制御情報に対応する第２の情報が不正に求められてしまうことがない。したがって、ある暗号鍵が露見したとしても、別の暗号鍵を用いて暗号化されたデータが解読されてしまうことはない。
【図面の簡単な説明】
【図１】複製制御情報改竄攻撃による影響を説明するための図である。
【図２】本発明を適用したデータ伝送システムの構成を示すブロック図である。
【図３】ＩＥＥＥ１３９４シリアルバス上を伝送される伝送フレーム（アイソクロナス・パケット）の構成を示す図である。
【図４】上記データ伝送システムにおける認証・鍵共有プロトコルの実行手順を示すフローチャートである。
【図５】上記認証・鍵共有プロトコルにおけるデータ送信装置側の処理手順を示すフローチャートである。
【図６】上記認証・鍵共有プロトコルにおけるデータ受信装置側の処理手順を示すフローチャートである。
【図７】上記データ伝送システムにおけるデータ伝送処理の手順を示すフローチャートである。
【図８】上記データ伝送処理におけるデータ受信装置側の処理手順を示すフローチャートである。
【図９】上記データ伝送処理におけるデータ受信装置側の処理手順を示すフローチャートである。
【符号の説明】
１０  データ送信装置、２０  データ受信装置、３０  伝送路、１１，２１  内部バス、１２，２２  ＣＰＵ、１３，２３  メモリ、１４，２４  入力インターフェース、１５，２５  ユーザインターフェース、１６  入出力インターフェース、１８  衛星アンテナ、２６  メディアアクセス部
【図１】
0004543555.tif 000002
【図２】
0004543555.tif 000003
【図３】
0004543555.tif 000004
【図４】
0004543555.tif 000005
【図５】
0004543555.tif 000006
【図６】
0004543555.tif 000007
【図７】
0004543555.tif 000008
【図８】
0004543555.tif 000009
【図９】
0004543555.tif 000010