(57)【要約】      （修正有）【課題】ソースシンク間での安全なコンテンツ送受信を実現する。【解決手段】コンテンツ出力装置であるソース１１０と、コンテンツ入力装置であるシンク２１０を有し、ソースシンク間で、第１段認証処理Ｓ１０１を実行して第１暗号鍵１２１および２２１を共有し、さらに、第１段認証処理Ｓ１０１と異なる方式の第２段認証処理Ｓ１０２を実行して第２暗号鍵１２２および２２２を共有する。ソースは、出力コンテンツに対して、第１暗号鍵１２１および第２暗号鍵１２２を用いて暗号化コンテンツを生成し、生成した暗号化コンテンツをシンクに出力する。シンクは、ソースから受信した暗号化コンテンツに対して第２暗号鍵２２２および第１暗号鍵２２１を用いて復号処理を実行してコンテンツを取得する。【選択図】図３
2014072704.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する情報処理装置。
【請求項２】
前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、
前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、該第２段認証処理において前記シンクとともに共有する前記第２暗号鍵は、ＨＤＣＰ１．４に従った認証処理において生成するセッションキーを適用して生成する暗号鍵である請求項１に記載の情報処理装置。
【請求項３】
前記データ処理部は、前記シンクに対する前記二重暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する請求項１に記載の情報処理装置。
【請求項４】
コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理装置。
【請求項５】
前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、
前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、該第２段認証処理において前記ソースとともに共有する前記第２暗号鍵は、ＨＤＣＰ１．４に従った認証処理において生成するセッションキーを適用して生成する暗号鍵である請求項４に記載の情報処理装置。
【請求項６】
コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する情報処理装置。
【請求項７】
前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、
前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、
前記データ処理部は、
前記第２段認証処理において、前記シンクへの送信データを、前記認証キーで暗号化し、前記シンクからの受信データを前記認証キーで復号して前記第２段認証処理を実行する請求項６に記載の情報処理装置。
【請求項８】
前記データ処理部は、前記シンクに対する前記暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する請求項６に記載の情報処理装置。
【請求項９】
コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理装置。
【請求項１０】
前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、
前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、
前記データ処理部は、
前記第２段認証処理において、前記ソースへの送信データを、前記認証キーで暗号化し、前記ソースからの受信データを前記認証キーで復号して前記第２段認証処理を実行する請求項９に記載の情報処理装置。
【請求項１１】
コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理装置。
【請求項１２】
前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、
前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、
前記データ処理部は、
前記第１段認証処理において生成した認証キーの構成データを、前記第２段認証処理において生成する暗号鍵の生成情報としての乱数として利用する請求項１１に記載の情報処理装置。
【請求項１３】
前記データ処理部は、前記シンクに対する前記暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する請求項１０に記載の情報処理装置。
【請求項１４】
コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理装置。
【請求項１５】
前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、
前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、
前記データ処理部は、
前記第２暗号鍵の生成情報として適用する乱数を前記認証キーの構成データを利用して生成する請求項１４に記載の情報処理装置。
【請求項１６】
コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースは、出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記二重暗号化コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システム。
【請求項１７】
コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で前記第１暗号鍵を適用した暗号化データの送受信により、第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースは、出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理により暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システム。
【請求項１８】
コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が、前記第１暗号鍵の構成データを利用して、前記第１暗号鍵と異なる第２暗号鍵を生成して共有し、
前記ソースは、出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システム。
【請求項１９】
コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する処理を実行する情報処理方法。
【請求項２０】
コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行する情報処理方法。
【請求項２１】
コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行する情報処理方法。
【請求項２２】
コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行する情報処理方法。
【請求項２３】
コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理方法。
【請求項２４】
コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理方法。
【請求項２５】
コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する処理を実行させるプログラム。
【請求項２６】
コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させるプログラム。
【請求項２７】
コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行させるプログラム。
【請求項２８】
コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させるプログラム。
【請求項２９】
コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行させ、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成させるプログラム。
【請求項３０】
コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させ、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理システム、および情報処理方法、並びにプログラムに関する。特に、装置間でコンテンツ等の情報を漏洩させることなく安全に送受信する情報処理装置、情報処理システム、および情報処理方法、並びにプログラムに関する。
【背景技術】
【０００２】
昨今、例えばＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）プレーヤ、ＢＤ（Ｂｌｕ−Ｒａｙ（登録商標）  Ｄｉｓｃ）プレーヤ、ＴＶ、ゲーム機器、カメラなどの様々なデジタル機器が普及している。これらのデジタル機器相互のデータ伝送についてもデジタルデータとすることで品質を低下させることのないデータ伝送および再生を行なうことが可能となる。
この品質を低下させることのないデータ伝送能力は、品質の劣化の無い無許諾の複製に利用される可能性につながるので、著作権保護技術の使用が求められることが多い。
【０００３】
映像や音声信号をデジタルデータで伝送する通信インタフェースとの規格としてＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）規格がある。
例えばＤＶＤプレーヤなどのように、映像および音声などからなるコンテンツを出力するＨＤＭＩ機器をソース（Ｓｏｕｒｃｅ）またはソース機器と呼ぶ。
一方、ＴＶ（テレビ）のように、ソースから供給されたコンテンツを入力するＨＤＭＩ機器をシンク（Ｓｉｎｋ）またはシンク機器と呼ぶ。
【０００４】
ソースとシンクとの間では、機器間の認証処理や各種の設定などを行うための制御信号が送受信される。例えば、シンク機器からソース機器に対して、ディスプレイの最大解像度やカラー特性などの情報を含むＥＤＩＤ（Ｅｘｔｅｎｄｅｄ  Ｄｉｓｐｌａｙ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｄａｔａ）の読み取りが可能であることや、著作権保護技術の一つであるＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）の対応機器であることなどが通知される。
【０００５】
ＨＤＣＰ対応機器としてのソースシンク間でコンテンツ送受信を実行する場合、ソースとシンク間で、まず認証処理およびセッションキーの共有処理を実行する。さらに、この認証成立を条件として、ソースがコンテンツをセッションキーで暗号化し、暗号化コンテンツをシンクに送信する。
シンクは受信した暗号化コンテンツをセッションキーで復号し、再生する。
【０００６】
なお、ＨＤＣＰに従った認証処理や、暗号化コンテンツの送受信処理については、例えば、特許文献１（再公表特許ＷＯ２００２／０３７２８５）や、特許文献２（特開２００４−３３６１７８号公報）等に記載されている。
【０００７】
しかし、上記のようなソースシンク間の通信データが第三者に取得されると、セッションキーが不正に取得される可能性がある。セッションキーが不正に取得されてしまうと、その後、ソースから送信される暗号化コンテンツを不正受信して復号することが可能となり、不正なコンテンツ利用がなされることになる。
このような不正コンテンツの利用が行われる可能性が指摘され、なんらかの対策を講じることが求められている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】再公表特許ＷＯ２００２／０３７２８５）
【特許文献２】特開２００４−３３６１７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本開示は、例えば上記問題点に鑑みてなされたものであり、第三者による通信データの傍受等の不正によるコンテンツの不正利用を防止する情報処理装置、情報処理システム、および情報処理方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本開示の第１の側面は、
コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する情報処理装置にある。
【００１１】
さらに、本開示の情報処理装置の一実施態様において、前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、該第２段認証処理において前記シンクとともに共有する前記第２暗号鍵は、ＨＤＣＰ１．４に従った認証処理において生成するセッションキーを適用して生成する暗号鍵である。
【００１２】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記シンクに対する前記二重暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行す。
【００１３】
さらに、本開示の第２の側面は、
コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理装置にある。
【００１４】
さらに、本開示の情報処理装置の一実施態様において、前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、該第２段認証処理において前記ソースとともに共有する前記第２暗号鍵は、ＨＤＣＰ１．４に従った認証処理において生成するセッションキーを適用して生成する暗号鍵である。
【００１５】
さらに、本開示の第３の側面は、
コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する情報処理装置にある。
【００１６】
さらに、本開示の情報処理装置の一実施態様において、前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、前記データ処理部は、前記第２段認証処理において、前記シンクへの送信データを、前記認証キーで暗号化し、前記シンクからの受信データを前記認証キーで復号して前記第２段認証処理を実行する。
【００１７】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記シンクに対する前記暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する。
【００１８】
さらに、本開示の第４の側面は、
コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理装置にある。
【００１９】
さらに、本開示の情報処理装置の一実施態様において、前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、前記データ処理部は、前記第２段認証処理において、前記ソースへの送信データを、前記認証キーで暗号化し、前記ソースからの受信データを前記認証キーで復号して前記第２段認証処理を実行する。
【００２０】
さらに、本開示の第５の側面は、
コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理装置にある。
【００２１】
さらに、本開示の情報処理装置の一実施態様において、前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、前記データ処理部は、前記第１段認証処理において生成した認証キーの構成データを、前記第２段認証処理において生成する暗号鍵の生成情報としての乱数として利用する。
【００２２】
さらに、本開示の情報処理装置の一実施態様において、前記データ処理部は、前記シンクに対する前記暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する。
【００２３】
さらに、本開示の第６の側面は、
コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理装置にある。
【００２４】
さらに、本開示の情報処理装置の一実施態様において、前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、前記データ処理部は、前記第２暗号鍵の生成情報として適用する乱数を前記認証キーの構成データを利用して生成する。
【００２５】
さらに、本開示の第７の側面は、
コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースは、出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記二重暗号化コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システムにある。
【００２６】
さらに、本開示の第８の側面は、
コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で前記第１暗号鍵を適用した暗号化データの送受信により、第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースは、出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理により暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システムにある。
【００２７】
さらに、本開示の第９の側面は、
コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が、前記第１暗号鍵の構成データを利用して、前記第１暗号鍵と異なる第２暗号鍵を生成して共有し、
前記ソースは、出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システムにある。
【００２８】
さらに、本開示の第１０の側面は、
コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する処理を実行する情報処理方法にある。
【００２９】
さらに、本開示の第１１の側面は、
コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行する情報処理方法にある。
【００３０】
さらに、本開示の第１２の側面は、
コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行する情報処理方法にある。
【００３１】
さらに、本開示の第１３の側面は、
コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行する情報処理方法にある。
【００３２】
さらに、本開示の第１４の側面は、
コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理方法にある。
【００３３】
さらに、本開示の第１５の側面は、
コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理方法にある。
【００３４】
さらに、本開示の第１６の側面は、
コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する処理を実行させるプログラムにある。
【００３５】
さらに、本開示の第１７の側面は、
コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させるプログラムにある。
【００３６】
さらに、本開示の第１８の側面は、
コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行させるプログラムにある。
【００３７】
さらに、本開示の第１９の側面は、
コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させるプログラムにある。
【００３８】
さらに、本開示の第２０の側面は、
コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行させ、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成させるプログラムにある。
【００３９】
さらに、本開示の第２１の側面は、
コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させ、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成させるプログラムにある。
【００４０】
なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
【００４１】
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【発明の効果】
【００４２】
本開示の一実施例の構成によれば、ソースシンク間での安全なコンテンツ送受信を実現する。
具体的には、コンテンツ出力装置であるソースと、コンテンツ入力装置であるシンクを有し、ソースシンク間で、第１段認証処理を実行して第１暗号鍵を共有し、さらに、第１段認証処理と異なる方式の第２段認証処理を実行して第２暗号鍵を共有する。ソースは、出力コンテンツに対して、第１暗号鍵および第２暗号鍵を順次適用した二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツをシンクに出力する。シンクは、ソースから受信した二重暗号化コンテンツに対して、第１暗号鍵および第２暗号鍵を適用した復号処理を実行してコンテンツを取得する。
あるいは、第１段認証処理において生成した第１暗号鍵を適用して第２段認証処理における送受信データを暗号化して第２段認証処理を実行する。
あるいは第１段認証処理において生成した第１暗号鍵を、第２暗号鍵の生成情報として用いる。
これらの構成により、ソースシンク間で送受信される暗号化コンテンツの不正な復号処理や利用処理を効果的に防止することが可能となる。
【図面の簡単な説明】
【００４３】
【図１】ＨＤＣＰ１．４に従った認証処理と暗号化コンテンツの送受信処理シーケンスについて説明する図である。
【図２】ＨＤＣＰ１．４規格に従った認証処理におけるセッションキー（Ｋｍ）の共有処理の詳細シーケンスについて説明する図である。
【図３】本開示の第１実施例の認証処理およびコンテンツ送受信シーケンスについて説明する図である。
【図４】図３のステップＳ１０１の第１段認証処理の詳細シーケンスについて説明する図である。
【図５】図３のステップＳ１０２の第２段認証処理の詳細シーケンスについて説明する図である。
【図６】本開示の第２実施例の認証処理およびコンテンツ送受信シーケンスについて説明する図である。
【図７】図６に示すステップＳ３０２の第２段認証処理の詳細シーケンスについて説明する図である。
【図８】本開示の第３実施例の認証処理およびコンテンツ送受信シーケンスについて説明する図である。
【図９】図８に示すステップＳ４０２の第２段認証処理の詳細シーケンスについて説明する図である。
【図１０】図３に示す第１実施例のシーケンスにステップＳ５０１〜Ｓ５０２の継続的シンク確認処理を追加したシーケンス図である。
【図１１】図６に示す第２実施例のシーケンスにステップＳ５０１〜Ｓ５０２の継続的シンク確認処理を追加したシーケンス図である。
【図１２】図８に示す第３実施例のシーケンスにステップＳ５０１〜Ｓ５０２の継続的シンク確認処理を追加したシーケンス図である。
【図１３】処理機能に応じたソースとシンクとの組み合わせ設定例について説明する図である。
【図１４】コンテンツの利用制御例について説明する図である。
【図１５】情報処理装置のハードウェア構成例について説明する図である。
【発明を実施するための形態】
【００４４】
以下、図面を参照しながら本開示の情報処理装置、情報処理システム、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行う。
１．ＨＤＣＰ１．４に従った認証処理と暗号化コンテンツの送受信処理シーケンスについて
２．本開示の第１実施例の認証処理およびコンテンツ送受信シーケンスについて
３．本開示の第２実施例の認証処理およびコンテンツ送受信シーケンスについて
４．本開示の第３実施例の認証処理およびコンテンツ送受信シーケンスについて
５．暗号化コンテンツの送信処理に併せてシンクの継続的確認処理を実行する実施例
６．様々なソースとシンクの組み合わせに応じた処理について
７．デジタルコピー制御記述子やコンテンツ利用記述子による制御処理例
８．各装置のハードウェア構成例について
９．本開示の構成のまとめ
【００４５】
［１．ＨＤＣＰ１．４に従った認証処理と暗号化コンテンツの送受信処理シーケンスについて］
まず、本開示の処理の適用可能な１つの処理シーケンスの例として、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）規定の１つであるＨＤＣＰ１．４に従った認証処理と暗号化コンテンツの送受信処理シーケンスについて図１以下を参照して説明する。
図１には、コンテンツを送信するソース１０と、コンテンツを受信するシンク２０を示している。
【００４６】
ＨＤＣＰ１．４に従った認証処理と暗号化コンテンツの送受信処理を行なう場合、まず、ステップＳ１１において、ソース１０とシンク２０間で認証処理を実行する。この認証処理において、相互に相手機器が信頼できるか否かを確認するとともに、暗号鍵としてのセッションキー（Ｋｍ）が共有される。
【００４７】
さらに、この認証処理において、ソース１０およびシンク２０は、各々、コンテンツ１１の暗号化処理および復号処理に適用する暗号鍵を生成する。図に示すステップＳ１１ａ，１１ｂの処理である。
この暗号鍵の生成には、認証処理においてソースシンクの双方が共有したセッションキー（Ｋｍ）１２や、認証処理においてソース１０が生成し、シンク２０に適用した乱数（Ａｍ）等のデータが用いられる。
【００４８】
次に、ステップＳ１２において、ソース１０は、ステップＳ１１ａの暗号鍵生成処理において生成した暗号鍵を適用してコンテンツ１１の暗号化処理を実行して暗号化コンテンツ１３を生成する。
【００４９】
ソース１０は、次に、ステップＳ１３において、生成した暗号化コンテンツ１３をシンク２０に送信する。
シンク２０は、暗号化コンテンツをソース１０から受信する。図１では、シンク２０の受信した暗号化コンテンツを暗号化コンテンツ２１として示している。
【００５０】
シンク２０は、ステップＳ１４において、ソース１０から受信した暗号化コンテンツ２１の復号処理を実行する。
この復号処理によってコンテンツ２３を生成して再生する。
【００５１】
なお、この復号処理には、先のステップＳ１１ｂの復号鍵生成処理、すなわち、ステップＳ１１の認証処理に際して生成した復号鍵を適用する。
この復号鍵は、ステップＳ１１の認証処理において生成したセッションキー（Ｋｍ）２２や、乱数（Ａｍ）等のデータに基づいて生成される鍵である。
【００５２】
次に、ステップＳ１１の認証処理、すなわちＨＤＣＰ１．４規格に従った認証処理におけるセッションキー（Ｋｍ）の共有処理の詳細シーケンスについて図２を参照して説明する。
【００５３】
図２に示すように、ＨＤＣＰ対応機器であるソース１０、シンク２０は、それぞれ、以下のデータをメモリに保持している。
（１）デバイスキー（Ｄｋｅｙｓ）、
（２）キーセレクションベクタ（ｋｓｖ）、
【００５４】
デバイスキー（Ｄｋｅｙｓ）は、複数の鍵からなるキーセットである。これは、ＨＤＣＰのライセンサーの管理する鍵生成システムが非公開のデバイスキー生成アルゴリズムによって、各機器毎に割り当てられるキーセレクションベクタ（ｋｓｖ）とともに生成したｍ個の鍵からなるキーセットである。このキーセットがデバイスキー（Ｄｋｅｙ）として各ＨＤＣＰ対応機器のメモリに外部から読み出せない形で格納される。
なお、デバイスキー（Ｄｋｅｙｓ）はシンク、ソースに毎に異なる。
【００５５】
図２に示す例では、
ソース１０は、デバイスキー（ＡＤｋｅｙｓ）１５を、ソース１０内のメモリに保持し、
シンク２０は、デバイスキー（ＢＤｋｅｙｓ）２５を、シンク２０内のメモリに保持している。
【００５６】
キーセレクションベクタ（ｋｓｖ）は、各ＨＤＣＰ対応機器に格納されたデバイスキー（Ｄｋｅｙｓ）を適用してセッションキーを算出するために適用するデータである。
このキーセレクションベクタ（ｋｓｖ）も、各ＨＤＣＰ機器に対応するデータとして予め各機器のメモリに格納される。
図２に示す例では、
ソース１０は、キーセレクションベクタ（Ａｋｓｖ）１６を、ソース１０内のメモリに保持し、
シンク２０は、キーセレクションベクタ（Ｂｋｓｖ）２６を、シンク２０内のメモリに保持している。
【００５７】
図２の認証処理におけるセッションキー共有シーケンスに示す各ステップの処理について説明する。
まず、ステップＳ３１において、ソース１０は、乱数（Ａｍ）を生成する。
次に、ステップＳ３２において、ソース１０は、生成した乱数（Ａｍ）と、ソース１０のメモリに格納されているソース１０のキーセレクションベクタ（Ａｋｓｖ）１６をシンク２０に送信する。
【００５８】
次に、ステップＳ３３において、シンク２０は、ソース１０から受信したキーセレクションベクタ（Ａｋｓｖ）１６と、シンク２０のメモリに格納されたデバイスキー（ＢＤｋｅｙｓ）２５を適用して、予め規定されたセッションキー生成アルゴリズムを実行して、セッションキー（Ｋｍ）を算出する。
すなわち、セッションキー（Ｋｍ）を、以下の式に従って算出する。
Ｋｍ＝ｆ（ＢＤｋｅｙｓ，Ａｋｓｖ）
なお、ｆ（ａ，ｂ）はデータａ，ｂを適用したセッションキー生成アルゴリズムの実行を示すものとする。
なお、このセッションキー生成アルゴリズムについてはＨＤＣＰにおいて規定され、公開されている。
【００５９】
さらに、ステップＳ３４において、シンク２０は、シンク２０のメモリに格納されているシンク２０のキーセレクションベクタ（Ｂｋｓｖ）２６と、シンク２０の装置情報データ（ＲＥＰＥＡＴＥＲ）をソース１０に送信する。
なお、装置情報データ（ＲＥＰＥＡＴＥＲ）とは、例えばシンク２０がソース１０からの受信コンテンツをさらに外部機器に転送可能な装置であるか否か等の装置情報を示すデータである。
【００６０】
次に、ステップＳ３５において、ソース１０は、シンク２０から受信したキーセレクションベクタ（Ｂｋｓｖ）２６と、ソース１０のメモリに格納されたデバイスキー（ＡＤｋｅｙｓ）１５を適用して、予め規定されたセッションキー生成アルゴリズムを実行して、セッションキー（Ｋｍ）を算出する。
すなわち、セッションキー（Ｋｍ）を、以下の式に従って算出する。
Ｋｍ＝ｆ（ＡＤｋｅｙｓ，Ｂｋｓｖ）
なお、ｆ（ａ，ｂ）は、先にステップＳ３２の処理として説明したと同様、データａ，ｂを適用したセッションキー生成アルゴリズムの実行を示すものであり、ＨＤＣＰにおいて規定され、公開されたアルゴリズムの実行を示す。
【００６１】
なお、図２に示す認証処理の後に、図１に示すステップＳ１２〜Ｓ１６の一連のシーケンス、すなわち、
ソース１０における暗号鍵の生成処理、
ソース１０における暗号鍵を適用したコンテンツの暗号化処理、
ソース１０からシンク２０に対する暗号化コンテンツの送信、
シンク２０における復号鍵の生成処理、
シンク２０における復号鍵を適用した暗号化コンテンツの復号処理、
これらの一連の処理が実行される。
【００６２】
図２には、上記の一連の処理をソース１０のステップＳ５１の処理と、シンク２０のステップＳ５２の処理として示している。
なお、暗号鍵、復号鍵はいずれも共通の鍵であり、認証処理においてソースシンク間で共有したセッションキー（Ｋｍ）や乱数（Ａｍ）等を用いて生成する。
この暗号鍵（＝復号鍵）は、ＨＤＣＰ１．４に規定されたアルゴリズムを適用して生成可能である。
【００６３】
ＨＤＣＰ１．４に規定された暗号鍵生成アルゴリズムは、例えば以下の演算式に従った処理である。
（Ｋｓ，Ｍ０，Ｒ０）＝ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）
上記式において、
ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）は、
装置情報データ（ＲＥＰＥＡＴＥＲ）と乱数（Ａｍ）の連結データに対するセッションキー（Ｋｍ）を適用したＨＤＣＰ１．４に規定された暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）の実行を意味する。
この暗号処理アルゴリズムを実行して、複数のデータ（Ｋｓ，Ｍ０，Ｒ０）を生成する。
このデータ中、Ｋｓ，Ｍ０は、コンテンツの暗号化、および復号処理に適用される暗号鍵となる。
Ｒ０は、認証処理に適用する検証用データとして利用される。
【００６４】
ＨＤＣＰ１．４規格に従った認証処理におけるセッションキー（Ｋｍ）の共有処理は、この図２に示すーケンスに従って実行される。
しかし、このシーケンスにおけるソースシンク間の送信データが外部から盗聴され、通信データが第三者に取得された場合、この取得データに基づいて不正にセッションキー（Ｋｍ）が生成されるという可能性が指摘されている。
【００６５】
セッションキー（Ｋｍ）に適用するデータは、各ＨＤＣＰ対応機器に格納されているデバイスキー（Ｄｋｅｙｓ）と各ＨＤＣＰ機器間で送受信されるキーセレクションベクタ（ｋｓｖ）である。
本来、デバイスキー（Ｄｋｅｙｓ）は、各ＨＤＣＰ対応機器に、複数の鍵からなるセットとして外部から読み出しできない形で格納される。しかし、何らかの不正な手段で様々なＨＤＣＰ機器に格納された鍵を集める等の処理を行うことにより、任意の機器のデバイスキー（Ｄｋｅｙｓ）が算出されてしまう可能性がある。
【００６６】
このように不正にデバイスキー（Ｄｋｅｙｓ）を算出し、さらに、図２を参照して説明したシーケンスにおいて実行されるキーセレクションベクタ（ｋｓｖ）を盗聴することにより、セッションキー（Ｋｍ）の算出に必要なデータが揃うことになる。この場合、不正な第三者によってセッションキー（Ｋｍ）が生成されてしまう可能性がある。
【００６７】
セッションキーが取得されると、その後、ソースから送信される暗号化コンテンツを不正受信して復号することが可能となり、不正なコンテンツ利用がなされることになる。
このような不正コンテンツの利用が行われる可能性が指摘され、なんらかの対策を講じることが求められている。
【００６８】
［２．本開示の第１実施例の認証処理およびコンテンツ送受信シーケンスについて］
以下、図面を参照しながら本開示の構成について説明する。
図３以下を参照して、本開示の第１実施例の認証処理およびコンテンツ送受信シーケンスについて説明する。
【００６９】
図３には、先に説明した図１と同様、コンテンツを送信するソース（Ｓｏｕｒｃｅ）１１０と、コンテンツを受信するシンク（Ｓｉｎｋ）１２０を示している。具体的には、例えばソース１１０は、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）プレーヤ、ＢＤ（Ｂｌｕ−Ｒａｙ（登録商標）  Ｄｉｓｃ）プレーヤなどの情報処理装置であり、シンク２１０はテレビ等の情報処理装置などによって構成される。
【００７０】
これらの機器は、例えばＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）に規定される処理を実行可能なＨＤＣＰ対応機器である。
【００７１】
ソース１１０と、シンク２１０は、有線または無線ネットワークを介して相互に通信可能である。有線通信ケーブルとしては、例えばＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ケーブルなどのデジタルデータ伝送ケーブルが利用可能である。
【００７２】
ソース１１０、シンク２１０とも、公開鍵暗号方式に従った秘密鍵（ｐｒｉｖ）と公開鍵を格納した公開鍵証明書（Ｃｅｒｔ）のペアをメモリに格納している。
図３に示すソース１１０内のソース秘密鍵（Ａｐｒｉｖ）１１１とソース公開鍵証明書（ＡＣｅｒｔ）１１２、シンク２１０内のシンク秘密鍵（Ｂｐｒｉｖ）２１１とシンク公開鍵証明書（ＢＣｅｒｔ）２１２である。
なお、公開鍵証明書は、公開鍵と、その発行機関の署名を含む証明書（Ｃｅｒｔｉｆｉｃａｔｅ）である。
【００７３】
さらに、ソース１１０、シンク２１０とも、以下のデータをメモリに格納している。
（１）デバイスキー（Ｄｋｅｙｓ）、
（２）キーセレクションベクタ（ｋｓｖ）、
【００７４】
デバイスキー（Ｄｋｅｙｓ）は、複数の鍵からなるキーセットである。これは、ＨＤＣＰのライセンサーの管理する鍵生成システムが非公開のデバイスキー生成アルゴリズムによって、各機器毎に割り当てられるキーセレクションベクタ（ｋｓｖ）とともに生成したｍ個の鍵からなるキーセットである。このキーセットがデバイスキー（Ｄｋｅｙ）として各ＨＤＣＰ対応機器のメモリに外部から読み出せない形で格納される。
なお、デバイスキー（Ｄｋｅｙｓ）はシンク、ソースに毎に異なる。
図３に示す例では、
ソース１１０は、デバイスキー（ＡＤｋｅｙｓ）１１３を、ソース１００内のメモリに保持し、
シンク２１０は、デバイスキー（ＢＤｋｅｙｓ）２１３を、シンク２１０内のメモリに保持している。
【００７５】
キーセレクションベクタ（ｋｓｖ）は、各ＨＤＣＰ対応機器に格納されたデバイスキー（Ｄｋｅｙｓ）を適用してセッションキーを算出するために適用するデータである。
このキーセレクションベクタ（ｋｓｖ）も、各ＨＤＣＰ機器に対応するデータとして予め各機器のメモリに格納される。
図３に示す例では、
ソース１１０は、キーセレクションベクタ（Ａｋｓｖ）１１４を、ソース１１０内のメモリに保持し、
シンク２１０は、キーセレクションベクタ（Ｂｋｓｖ）２１４を、シンク２１０内のメモリに保持している。
【００７６】
図３に示すソース１１０からシンク２１０に対して暗号化コンテンツを送信し、シンク２１０においてコンテンツを復号、利用する際に、図３に示すステップＳ１０１〜Ｓ１０７の処理を順次、実行する。
以下、各処理ステップについて、説明する。
【００７７】
（ステップＳ１０１）
まず、ステップＳ１０１において、ソース１１０とシンク２１０間で第１段認証処理を実行する。この第１段認証処理は、相互に相手機器が信頼できるか否かを確認するとともに、ソース１１０とシンク２１０間で、暗号鍵としての認証キー（Ｋａｕｔｈ）を共有する処理として実行される。
【００７８】
この第１実施例の処理では、ステップＳ１０１において第１段認証処理を実行し、さらに、その後、ステップＳ１０２において第２段認証処理を実行する。
すなわち、２回の認証処理を実行する。
【００７９】
ステップＳ１０２において実行する認証処理は、先に図２を参照して説明したキーセレクションベクタ（ｋｓｖ）の送受信を伴うセッションキー（Ｋｍ）の算出を実行するＨＤＣＰ１．４規格に従った認証処理である。
本実施例では、このステップＳ１０２において実行するＨＤＣＰ１．４規格に従った認証処理に先行して、第１段認証処理を実行する。
なお、本実施例では、ステップＳ１０１の第１段認証処理と、ステップＳ１０２の第２段認証処理は、いずれを先行して実行してもよく、順番は任意である。
【００８０】
ステップＳ１０１の第１段認証処理では、ステップＳ１０２の第２段認証処理においてソースとシンク間で共有するセッションキー（Ｋｍ）とは異なる鍵を、ソースとシンク間で共有する。
すなわち、ステップＳ１０１の第１段認証処理では、認証キー（Ｋａｕｔｈ）生成し、ソース１１０とシンク２１０で共有する。
【００８１】
このステップＳ１０１の第１段認証処理の詳細シーケンスについては、後段で図４を参照して説明する。
なお、ステップＳ１０１の第１段認証処理に失敗した場合、ステップＳ１０２以下の処理は実行されない。すなわち、コンテンツの送受信処理も実行されないことになる。
【００８２】
（ステップＳ１０２）
ステップＳ１０１の第１段認証処理が成立すると、ソース１１０とシンク２１０間でステップＳ１０２の第２段認証処理を実行する。
ステップＳ１０２の第２段認証処理は、先に図２を参照して説明したキーセレクションベクタ（ｋｓｖ）の送受信を伴うセッションキー（Ｋｍ）の算出を実行するＨＤＣＰ１．４規格に従った認証処理である。
【００８３】
なお、このステップＳ１０２の第２段認証処理において、図３のソース１１０のステップＳ１０２ａの暗号鍵生成処理、およびシンク２１０のステップＳ１０２ｂの復号鍵の生成処理が実行される。この鍵生成処理は、先に図２を参照して説明したＨＤＣＰ１．４に規定された暗号鍵生成アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）に従って行われる。
このステップＳ１０２の第２段認証処理シーケンスの詳細については、後段で図５を参照して説明する。
なお、ステップＳ１０２の第２段認証処理に失敗した場合、ステップＳ１０３以下の処理は実行されない。すなわち、コンテンツの送受信処理も実行されないことになる。
【００８４】
（ステップＳ１０３）
ステップＳ１０２の第２段認証処理が成立すると、ソース１１０は、ステップＳ１０３において、コンテンツ１１５の初期暗号化処理を実行する。
この初期暗号化処理は、ステップＳ１０１の第１段認証処理において生成した共有鍵である認証キー（Ｋａｕｔｈ）を適用して実行する。すなわち、初期暗号化コンテンツ（Ｃｏｎ＿ｅｎ１）を、以下の暗号化処理に従って生成する。
Ｃｏｎ＿ｅｎ１＝Ｅｎｃ（Ｋａｕｔｈ，Ｃｏｎ）
なお、Ｃｏｎは暗号化前のコンテンツを示す。
Ｅｎｃ（ａ，ｂ）は、鍵ａを適用したデータｂに対する暗号化処理を示す。
【００８５】
（ステップＳ１０４）
次に、ソース１１０は、ステップＳ１０４において、コンテンツの最終暗号化処理を実行する。
すなわち、ステップＳ１０３において生成した初期暗号化コンテンツを、ステップＳ１０２ａで生成した暗号鍵を適用して、再度、暗号化を行い、二重暗号化コンテンツ１１６（Ｃｏｎ＿ｅｎ２）を生成する。
【００８６】
この最終暗号化に適用する暗号鍵は、ステップＳ１０２の第２段認証処理において、ソースシンク間で共有したセッションキー（Ｋｍ）１２２や、乱数（Ａｍ）を適用して生成される暗号鍵である。
【００８７】
（ステップＳ１０５）
ソース１１０は、ステップＳ１０６において、ステップＳ１０５で生成した二重暗号化コンテンツ１１６（Ｃｏｎ＿ｅｎ２）をシンク２１０に送信する。
【００８８】
（ステップＳ１０６）
シンク２１０は、ステップＳ１０６において、ソース１１０から受信した二重暗号化コンテンツ１１６（Ｃｏｎ＿ｅｎ２）の初期復号処理を実行する。
この初期復号処理に適用する復号鍵は、ステップＳ１０２の第２段認証処理に際して生成した復号鍵、すなわち、図に示すステップＳ１０２ｂの復号鍵生成処理において生成した鍵である。
【００８９】
この復号鍵は、ソース１１０がステップＳ１０２ａで生成した暗号鍵と同様の鍵である。すなわち、ステップＳ１０２の第２段認証処理において、ソースシンク間で共有したセッションキー（Ｋｍ）１２２や、乱数（Ａｍ）を適用して生成された鍵である。
【００９０】
ステップＳ１０６の初期復号処理、すなわちソース１１０から受信した二重暗号化コンテンツ１１６（Ｃｏｎ＿ｅｎ２）の初期復号処理によって、初期暗号化コンテンツ（Ｃｏｎ＿ｅｎ１）を取得する。
【００９１】
（ステップＳ１０７）
さらに、シンク２１０は、ステップＳ１０７において、ステップＳ１０６の初期復号処理によって取得した初期暗号化コンテンツ（Ｃｏｎ＿ｅｎ１）に対して、ステップＳ１０１の第１段認証処理に際してソースシンク間で共有した認証キー（Ｋａｕｔｈ）を適用して最終復号処理を実行する。すなわち、以下の式に従った復号処理によって、コンテンツ（Ｃｏｎ）１１７を取得する。
Ｃｏｎ＝Ｄｅｃ（Ｋａｕｔｈ，Ｃｏｎ＿ｅｎ１）
【００９２】
図３に示すシーケンスにおいて、ステップＳ１０５でソース１１０からシンク２１０に対して送信されるコンテンツは二重暗号化の施された二重暗号化コンテンツである。すなわち、第１段認証処理において生成した認証キー（Ｋａｕｔｈ）で暗号化がなされ、さらに、第２段認証処理において生成した暗号暗鍵、すなわち、セッションキー（Ｋｍ）や乱数（Ａｍ）を適用して生成した暗号鍵で再暗号化した二重暗号化コンテンツである。
【００９３】
従って、例えば、図３におけるステップＳ１０２の第２段認証処理においてソース１１０とシンク２１０間で送受信されるキーセレクションベクタ（ｋｓｖ）や乱数（Ａｍ）が盗聴され、認証キー（Ｋｍ）が不正に生成された場合でも、二重暗号化されたコンテンツを平文に戻す復号処理は不可能であり、コンテンツの不正利用を防止することが可能となる。
【００９４】
次に、図４と図５を参照して、図３に示すステップＳ１０１の第１段認証処理と、ステップＳ１０２の第２段認証処理の詳細シーケンスについて説明する。
【００９５】
まず、ステップＳ１０１の第１段認証処理の詳細シーケンスについて、図４に示すシーケンス図を参照して説明する。
図４に示す認証シーケンスは、公開鍵暗号方式に従った楕円曲線暗号（ＥＣＣ）を用いた認証処理である。以下、各ステップの処理に従って順次、説明する。
【００９６】
（ステップＳ２０１〜Ｓ２０２）
まず、ステップＳ２０１において、シンク２１０が、乱数（Ｂｎ）を生成し、ステップＳ２０２において、生成した乱数（Ｂｎ）と、シンク２１０の公開鍵証明書（ＢＣｅｒｔ）２１２をソース１１０に送信する。
【００９７】
（ステップＳ２０３）
これを受信したソース１１０は、ステップＳ２０３において受信したシンク２１０の公開鍵証明書（ＢＣｅｒｔ）２１２の検証を実行する。
具体的には、シンク２１０の公開鍵証明書（ＢＣｅｒｔ）２１２の署名検証を実行し、公開鍵証明書の正当性を確認する。さらに、予め公開鍵証明書発行期間から受領している無効化された公開鍵のリストであるリボケーションリスト（ブラックリスト）と照合して、シンク２１０の公開鍵証明書（ＢＣｅｒｔ）２１２が無効化されていないかを確認する。
【００９８】
署名検証に失敗した場合、あるいはシンク２１０の公開鍵証明書（ＢＣｅｒｔ）２１２がリボケーションリストに登録され、無効化されていることが判明した場合は、以降の処理は実行することなく、処理を中止する。
【００９９】
署名検証に成功し、シンク２１０の公開鍵証明書（ＢＣｅｒｔ）２１２がリボケーションリストに登録されておらず、有効であることが判明した場合は、次のステップに進む。
【０１００】
（ステップＳ２０４〜Ｓ２０５）
ステップＳ２０４において、ソース１１０は、乱数（Ａｎ）を生成する。
さらに、ステップＳ２０５において、ソース１１０は、生成した乱数（Ａｎ）と、ソース１１０の公開鍵証明書（ＡＣｅｒｔ）１１２をシンク２１０に送信する。
【０１０１】
（ステップＳ２０６）
これを受信したシンク２１０は、ステップＳ２０６において受信したソース１１０の公開鍵証明書（ＡＣｅｒｔ）１１２の検証を実行する。検証に失敗した場合は、以下の処理は中止される。検証に成功し、ソース１１０の公開鍵証明書（ＡＣｅｒｔ）１１２の正当性が確認された場合は、処理を続行する。
【０１０２】
（ステップＳ２０７）
次に、ステップＳ２０７において、ソース１１０は、乱数（Ａｋ）を生成し、本認証処理に適用する楕円曲線（ＥＣＣ）の固定パラメータであるベースポイントＧをＡｋ倍した点、
Ａｖ＝Ａｋ×Ｇ
を求める。
【０１０３】
さらに、シンクからの受信データである乱数（Ｂｎ）と、生成データ（Ａｖ）との連結データ（Ｂｎ||Ａｖ）に対するソース秘密鍵（Ａｐｒｉｖ）を適用した署名データ、すなわち、
Ａｓｉｇ＝Ｓｉｇｎ（Ａｐｒｉｖ，Ｂｎ||Ａｖ）
上記の署名データ（Ａｓｉｇ）を生成する。
なお、Ｓｉｇｎ（ａ，ｂ）は、データｂに対する鍵ａを適用した署名データの生成処理を示す。
【０１０４】
（ステップＳ２０８）
次に、ステップＳ２０８において、ソース１１０は生成したデータ（Ａｖ）と、署名データ（Ａｓｉｇ）をシンク２１０に送信する。
【０１０５】
（ステップＳ２０９）
次に、ステップＳ２０９において、シンク２１０は、ソース１１０から受信した署名データ（Ａｓｉｇ）に対する署名検証処理を実行する。
署名検証処理は、ソース１１０の公開鍵証明書（ＡＣｅｒｔ）から取り出したソース公開鍵（Ａｐｕｂ）を適用した署名データ（Ａｓｉｇ）に対する暗号処理によって取得したデータ（Ｂｎ||Ａｖ）が、ステップＳ２０１でシンク２１０が生成した乱数（Ｂｎ）とステップＳ２０８でソース１１０から受信したデータ（Ａｖ）との連結データ（Ｂｎ||Ａｖ）に一致するか否かの判定処理として実行する。すなわち、
Ｖｅｒｉｆｙ（Ａｐｕｂ，Ａｓｉｇ，Ｂｎ||ＡＶ）
上記式に従った検証処理を実行する。
なお、Ｖｅｒｉｆｙ（Ａ，Ｂ，Ｃ）は、Ｂに対するＡを適用した暗号処理の結果として得られるＣの照合による検証処理を意味する。
検証に失敗した場合は、以降の処理は中止する。検証に成功した場合にのみ、以降の処理を実行する。
【０１０６】
さらに、シンク２１０は、乱数（Ｂｋ）を生成し、本認証処理に適用する楕円曲線（ＥＣＣ）の固定パラメータであるベースポイントＧをＢｋ倍した点、
Ｂｖ＝Ｂｋ×Ｇ
を求める。
【０１０７】
さらに、ソースからの受信データである乱数（Ａｎ）と、生成データ（Ｂｖ）との連結データ（Ａｎ||Ｂｖ）に対するシンク秘密鍵（Ｂｐｒｉｖ）を適用した署名データ、すなわち、
ＢＳｉｇ＝Ｓｉｇｎ（Ｂｐｒｉｖ，Ａｎ||Ｂｖ）
上記の署名データ（Ｂｓｉｇ）を生成する。
【０１０８】
（ステップＳ２１０）
さらに、シンク２１０は、ステップＳ２１０において、生成した乱数（Ｂｋ）と、ソース１１０からの受信データ（Ａｖ）を用いて以下の式に従って、認証キー（Ｋａｕｔｈ）を生成する。
Ｋａｕｔｈ＝Ｂｋ・Ａｖ
シンク２１０は、上記式に従って認証キー（Ｋａｕｔｈ）を生成する。
【０１０９】
（ステップＳ２１１）
次に、ステップＳ２１１において、シンク２１０は生成したデータ（Ｂｖ）と、署名データ（Ｂｓｉｇ）をソース１１０に送信する。
【０１１０】
（ステップＳ２１２）
次に、ステップＳ２１２において、ソース１１０は、シンク２１０から受信した署名データ（Ｂｓｉｇ）に対する署名検証処理を実行する。
署名検証処理は、シンク２１０の公開鍵証明書（ＢＣｅｒｔ）から取り出したシンク公開鍵（Ｂｐｕｂ）を適用した署名データ（Ｂｓｉｇ）に対する暗号処理によって取得したデータ（Ａｎ||Ｂｖ）が、ステップＳ２０４でソース１１０が生成した乱数（Ａｎ）とステップＳ２１１でシンク２１０から受信したデータ（Ｂｖ）との連結データ（Ａｎ||Ｂｖ）に一致するか否かの判定処理として実行する。すなわち、
Ｖｅｒｉｆｙ（Ｂｐｕｂ，Ｂｓｉｇ，Ａｎ||ＢＶ）
上記式に従った検証処理を実行する。
検証に失敗した場合は、以降の処理は中止する。検証に成功した場合にのみ、以降の処理を実行する。
【０１１１】
（ステップＳ２１３）
ステップＳ２１３において、ソース１１０は、ステップＳ２０７で生成した乱数（Ａｋ）と、シンク２１０からの受信データ（Ｂｖ）を用いて以下の式に従って、認証キー（Ｋａｕｔｈ）を生成する。
Ｋａｕｔｈ＝Ａｋ・Ｂｖ
ソース１１０は、上記式に従って認証キー（Ｋａｕｔｈ）を生成する。
【０１１２】
これらの処理において、
（１）ステップＳ２１０においてシンク２１０の生成する認証キー（Ｋａｕｔｈ＝Ｂｋ・Ａｖ）と、
（２）ステップＳ２１３においてソース１１０の生成する認証キー（Ｋａｕｔｈ＝Ａｋ・Ｂｖ）、
これら、ソース１１０とシンク２１０が各々生成する認証キー（Ｋａｕｔｈ）は同一の認証キー（Ｋａｕｔｈ）となる。
すなわち、ソース１１０と、シンク２１０は、図４に示すシーケンスに従った認証処理を実行することで、双方が有効な公開鍵証明書を持つ正当な機器であることを確認するとともに、共通の認証キー（Ｋａｕｔｈ）を共有する。
【０１１３】
この図４に示す処理シーケンスに従った認証処理が、図３に示すシーケンス図のステップＳ１０１の第１段認証処理として実行される。
この認証処理に成功すると、次のステップＳ１０２の第２段認証処理を実行する。
【０１１４】
次に、図３のシーケンスにおけるステップＳ１０２の第２段認証処理の詳細について、図５を参照して説明する。
ステップＳ１０２において、ソース１１０とシンク２１０間で実行する第２段認証処理は、ＨＤＣＰ１．４規格に従った認証処理である。
この認証処理では、先に図２を参照して説明したように、ソース１１０とシンク２１０間でキーセレクションベクタ（ｋｓｖ）の送受信を実行し、セッションキー（Ｋｍ）の算出処理などを実行する。
【０１１５】
このステップＳ１０２の第２段認証処理の詳細シーケンスについて、図５に示すシーケンス図を参照して説明する。
図５に示す認証シーケンスは、ＨＤＣＰ１．４規格に従った認証処理を簡略化して示している。この第２段認証処理においては、ソース１１０、およびシンク２１０は、以下のデータを利用して、認証、およびセッションキー（Ｋｍ）の生成および共有処理を行なう。
（１）デバイスキー（Ｄｋｅｙｓ）、
（２）キーセレクションベクタ（ｋｓｖ）、
【０１１６】
前述のように、デバイスキー（Ｄｋｅｙｓ）は、ＨＤＣＰのライセンサーの管理する鍵生成システムの非公開のデバイスキー生成アルゴリズムによって、各機器毎に割り当てられるキーセレクションベクタ（ｋｓｖ）とともに生成されたｍ個の鍵からなるキーセットであり、各ＨＤＣＰ対応機器のメモリに外部から読み出せない形で格納される。
キーセレクションベクタ（ｋｓｖ）は、各ＨＤＣＰ対応機器に格納されたデバイスキー（Ｄｋｅｙｓ）を適用してセッションキーを算出するために適用するデータである。このキーセレクションベクタ（ｋｓｖ）も、各ＨＤＣＰ機器に対応するデータとして予め各機器のメモリに格納される。
【０１１７】
図５に示す例では、
ソース１１０は、デバイスキー（ＡＤｋｅｙｓ）１１３と、キーセレクションベクタ（Ａｋｓｖ）１１４を、ソース１１０内のメモリに保持し、
シンク２１０は、デバイスキー（ＢＤｋｅｙｓ）２１３と、キーセレクションベクタ（Ｂｋｓｖ）２１４を、シンク２１０内のメモリに保持している。
以下、図５に示す認証シーケンスの各ステップの処理に従って順次、説明する。
【０１１８】
（ステップＳ２５１〜Ｓ２５２）
まず、ステップＳ２５１において、ソース１１０は、乱数（Ａｍ）を生成する。
次に、ステップＳ２５２において、ソース１１０は、生成した乱数（Ａｍ）と、ソース１１０がメモリに保持しているキーセレクションベクタ（Ａｋｓｖ）１１４をシンク２１０に送信する。
【０１１９】
（ステップＳ２５３）
次に、ステップＳ２５３において、シンク２１０は、ソース１１０に対して、シンク２１０がメモリに保持しているキーセレクションベクタ（Ｂｋｓｖ）２１４と、シンク２１０の装置情報データ（ＲＥＰＥＡＴＥＲ）をソース１１０に送信する。
なお、装置情報データ（ＲＥＰＥＡＴＥＲ）とは、例えばシンク２１０がソース１１０からの受信コンテンツをさらに外部機器に転送可能な装置であるか否か等の装置情報を示すデータである。
【０１２０】
（ステップＳ２５４）
次に、ステップＳ２５４において、ソース１１０は、シンク２１０から受信したキーセレクションベクタ（Ｂｋｓｖ）２１４と、ソース１１０のメモリに格納されたデバイスキー（ＡＤｋｅｙｓ）１１３を適用して、予め規定されたセッションキー生成アルゴリズムを実行して、セッションキー（Ｋｍ）を算出する。
すなわち、セッションキー（Ｋｍ）を、以下の式に従って算出する。
Ｋｍ＝ｆ（ＡＤｋｅｙｓ，Ｂｋｓｖ）
なお、ｆ（ａ，ｂ）は、データａ，ｂを適用したセッションキー生成アルゴリズムの実行を示すものであり、ＨＤＣＰにおいて規定され、公開されたアルゴリズムの実行を示す。
【０１２１】
（ステップＳ２５５）
一方、シンク２１０も、ステップＳ２５５において、ソース１１０から受信したキーセレクションベクタ（Ａｋｓｖ）１１４と、シンク２１０のメモリに格納されたデバイスキー（ＢＤｋｅｙｓ）２１３を適用して、予め規定されたセッションキー生成アルゴリズムを実行して、セッションキー（Ｋｍ）を算出する。
すなわち、セッションキー（Ｋｍ）を、以下の式に従って算出する。
Ｋｍ＝ｆ（ＢＤｋｅｙｓ，Ａｋｓｖ）
なお、ｆ（ａ，ｂ）は、前述したようにデータａ，ｂを適用したセッションキー生成アルゴリズムの実行を示すものとする。
【０１２２】
（ステップＳ２５６）
さらに、シンク２１０は、ステップＳ２５６において、ステップＳ２５５で生成したセッションキー（Ｋｍ）を適用してソース１１０から受信した乱数（Ａｍ）や、自装置の装置情報データ（ＲＥＰＥＡＴＥＲ）に対する規定の暗号処理アルゴリズムを適用してコンテンツの暗号化および復号処理に適用する暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
【０１２３】
ここで利用する暗号処理アルゴリズムは、先に図２を参照して説明したＨＤＣＰ１．４に規定されたアルゴリズムである。
ＨＤＣＰ１．４に規定された暗号鍵生成アルゴリズムは、例えば以下の演算式に従った処理である。
（Ｋｓ，Ｍ０，Ｒ０）＝ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）
上記式において、
ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）は、
装置情報データ（ＲＥＰＥＡＴＥＲ）と乱数（Ａｍ）の連結データに対するセッションキー（Ｋｍ）を適用したＨＤＣＰ１．４に規定された暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）の実行を意味する。
この暗号処理アルゴリズムを実行して、複数のデータ（Ｋｓ，Ｍ０，Ｒ０）を生成する。
このデータ中、Ｋｓ，Ｍ０は、コンテンツの暗号化、および復号処理に適用される暗号鍵となる。
Ｒ０は、認証処理に適用する検証用データとして利用される。
【０１２４】
（ステップＳ２５７）
次にシンク２１０は、ステップＳ２５７において、生成した検証用データＲ０をソース１１０に送信する。
【０１２５】
（ステップＳ２５８）
ソース１１０は、ステップＳ２５８において、先に説明したシンク２１０のステップＳ２５６の処理と同様の処理を実行してコンテンツの暗号化および復号処理に適用する暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
すなわち、ステップＳ２５４で生成したセッションキー（Ｋｍ）を適用してＨＤＣＰ１．４に規定されたアルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）を適用した以下の処理によって、暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
（Ｋｓ，Ｍ０，Ｒ０）＝ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）
上記式によって生成されるデータ中、Ｋｓ，Ｍ０は、コンテンツの暗号化、および復号処理に適用される暗号鍵となる。
Ｒ０は、認証処理に適用する検証用データとして利用される。
【０１２６】
（ステップＳ２５９）
さらに、ソース１１０は、ステップＳ２５９において、ステップＳ２５８で生成した検証用データＲ０と、ステップＳ２５７でシンク２１０から受信したデータＲ０が一致するか否かを確認する。すなわち、
生成Ｒ０＝受信Ｒ０
上記式が成立するか否かを判定する。
成立した場合、ソースシンク間の認証処理が成立したと判定する。
【０１２７】
このように、図３に示すシーケンス中のステップＳ１０２の認証処理は、図５に示すシーケンスに従って実行され、ソース１１０とシンク２１０の双方がセッションキー（Ｋｍ）を共有し、さらに、コンテンツの暗号化、復号処理に適用する暗号鍵を共有する処理として行われる。
【０１２８】
図３のシーケンス図を参照して説明したように、ソース１１０とシンク２１０は、
（１）ステップＳ１０１の第１段認証処理で認証キー（Ｋａｕｔｈ）を共有する。
（２）ステップＳ１０２の第２段認証処理でセッションキー（Ｋｍ）を共有し、さらに、セッションキー（Ｋｍ）を適用して生成する暗号鍵（Ｋｓ，Ｍ０）を共有する。
【０１２９】
図３を参照して説明したように、ソース１１０は、ステップＳ１０３〜Ｓ１０４において、
（ａ）認証キー（Ｋａｕｔｈ）と、
（ｂ）セッションキー（Ｋｍ）を適用して生成する暗号鍵（Ｋｓ，Ｍ０）、
これらの異なる暗号鍵を順次、適用して、コンテンツ１１５を暗号化して二重暗号化コンテンツ１１６を生成し、図３に示すステップＳ１０５において、二重暗号化コンテンツ１１６をシンク２１０に送信する。
【０１３０】
シンク２１０は、二重暗号化コンテンツ１１６をソース１１０から受信すると、ステップＳ１０６〜Ｓ１０７において、順次、
（ｂ）セッションキー（Ｋｍ）を適用して生成する暗号鍵（Ｋｓ，Ｍ０）、
（ａ）認証キー（Ｋａｕｔｈ）、
これらの異なる暗号鍵を適用した復号処理を実行して、コンテンツ１１７を得る。
【０１３１】
このような処理において、ステップＳ１０５においてソース１１０からシンク２１０に送信されるコンテンツは、認証キー（Ｋａｕｔｈ）によって暗号化され、さらに、セッションキー（Ｋｍ）に基づいて生成される暗号鍵（Ｋｓ，Ｍ０）よって暗号化された二重暗号化コンテンツである。
【０１３２】
図３に示すシーケンスにおいても、ステップＳ１０２の第２段認証処理は、先に図２を参照して説明したと同様の処理であり、ソースシンク間で送受信されるキーセレクションベクタ（ｋｓｖ）が盗み取られ、セッションキー（Ｋｍ）が不正に生成される可能性は否定できない。
しかし、図３に示すシーケンスにおいては、ステップＳ１０５においてソース１１０からシンク２１０に送信されるコンテンツは二重暗号化コンテンツである。
【０１３３】
第三者が不正に生成したセッジョンキー（Ｋｍ）から生成される暗号鍵を適用して、ステップＳ１０５において送信される二重暗号化コンテンツを復号しても、認証キー（Ｋａｕｔｈ）によって暗号化されたコンテンツが得られるのみであり、平文コンテンツを取得することはできない。
このように、図３〜図５を参照して説明したシーケンスに従った処理を実行することで、安全なコンテンツ送受信が可能となり、不正なコンテンツ利用を防止することが可能となる。
【０１３４】
なお、上述の実施例では、図３に示すステップＳ１０１の認証処理について、図４を参照して説明したように、公開鍵暗号方式の楕円曲線暗号（ＥＣＣ）を適用した処理として説明したが、第１段認証処理は、この公開鍵暗号方式の楕円曲線暗号（ＥＣＣ）を適用した処理に限定されるものではない。
すなわち、その他のアルゴリズムに従った認証処理を実行してもよい。ただし、第２段認証処理において生成し共有するセッションキー（Ｋｍ）と異なる暗号鍵を生成して共有する処理とすることが必要である。
【０１３５】
すなわち、ソースとシンクは、２つの認証処理において、２つの異なる鍵を共有する。ソースは、生成した異なる暗号鍵を適用してコンテンツの二重暗号化を実行してシンクに送信し、シンクは二重暗号化コンテンツをソースから受信して、２つの暗号鍵を順次、適用して復号された平文コンテンツを生成する。
【０１３６】
このような処理を実行することで、ソースシンク間で送受信されるキーセレクションベクタの盗聴が行われた場合でも、暗号化コンテンツの不正な復号、利用を防止することが可能となる。
【０１３７】
なお、上述の実施例における二重暗号化コンテンツの生成手順は、図３を参照して説明したように、ソース１１０は、
（１）ステップＳ１０３において、認証キー（Ｋａｕｔｈ）を適用した初期暗号化処理、
（２）ステップＳ１０４において、セッションキー（Ｋｍ）を利用して生成した暗号鍵（Ｋｓ，Ｍ０）を適用した最終暗号化処理、
この順番での二重暗号化を実行した例を説明した。
【０１３８】
しかし、この初期暗号化に適用する鍵と最終暗号化に適用する鍵は入れ替えてもよい。すなわち、
（１）ステップＳ１０３において、セッションキー（Ｋｍ）を利用して生成した暗号鍵（Ｋｓ，Ｍ０）を適用した初期暗号化処理、
（２）ステップＳ１０４において、認証キー（Ｋａｕｔｈ）を適用した最終暗号化処理、
この順番での二重暗号化を実行して二重暗号化コンテンツを生成する構成としてもよい。
なお、シンク２１０は、上記の最終暗号化に適用した鍵を適用して、図３に示すステップＳ１０６の初期復号処理を実行し、上記の初期暗号化に適用した鍵を適用してステップＳ１０７の最終復号処理を実行することになる。
【０１３９】
［３．本開示の第２実施例の認証処理およびコンテンツ送受信シーケンスについて］
次に、図６以下を参照して、本開示の第２実施例の認証処理およびコンテンツ送受信シーケンスについて説明する。
【０１４０】
図６には、先の第１実施例において説明した図３と同様、コンテンツを送信するソース（Ｓｏｕｒｃｅ）１１０と、コンテンツを受信するシンク（Ｓｉｎｋ）１２０を示している。
ソース１１０とシンク２１０は、先に図３〜図５を参照して説明したと同様の機器である。具体的には、例えばソース１１０は、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）プレーヤ、ＢＤ（Ｂｌｕ−Ｒａｙ（登録商標）  Ｄｉｓｃ）プレーヤなどの情報処理装置であり、シンク２１０はテレビ等の情報処理装置などによって構成される。
これらは、例えばＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）に規定する処理を実行可能なＨＤＣＰ対応機器である。
【０１４１】
ソース１１０と、シンク２１０は、有線または無線ネットワークを介して相互に通信可能である。有線通信ケーブルとしては、例えばＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ケーブルなどのデジタルデータ伝送ケーブルが利用可能である。
【０１４２】
ソース１１０、シンク２１０とも、公開鍵暗号方式に従った秘密鍵（ｐｒｉｖ）と公開鍵を格納した公開鍵証明書（Ｃｅｒｔ）のペアをメモリに格納している。
図６に示すソース１１０内のソース秘密鍵（Ａｐｒｉｖ）１１１とソース公開鍵証明書（ＡＣｅｒｔ）１１２、シンク２１０内のシンク秘密鍵（Ｂｐｒｉｖ）２１１とシンク公開鍵証明書（ＢＣｅｒｔ）２１２である。
なお、公開鍵証明書は、公開鍵と、その発行機関の署名を含む証明書（Ｃｅｒｔｉｆｉｃａｔｅ）である。
【０１４３】
さらに、ソース１１０、シンク２１０とも、以下のデータをメモリに格納している。
（１）デバイスキー（Ｄｋｅｙｓ）、
（２）キーセレクションベクタ（ｋｓｖ）、
【０１４４】
デバイスキー（Ｄｋｅｙｓ）は、複数の鍵からなるキーセットである。これは、ＨＤＣＰのライセンサーの管理する鍵生成システムが非公開のデバイスキー生成アルゴリズムによって、各機器毎に割り当てられるキーセレクションベクタ（ｋｓｖ）とともに生成したｍ個の鍵からなるキーセットである。このキーセットがデバイスキー（Ｄｋｅｙ）として各ＨＤＣＰ対応機器のメモリに外部から読み出せない形で格納される。
なお、デバイスキー（Ｄｋｅｙｓ）はシンク、ソースに毎に異なる。
【０１４５】
図６に示す例では、
ソース１１０は、デバイスキー（ＡＤｋｅｙｓ）１１３を、ソース１１０内のメモリに保持し、
シンク２１０は、デバイスキー（ＢＤｋｅｙｓ）２１３を、シンク２１０内のメモリに保持している。
【０１４６】
キーセレクションベクタ（ｋｓｖ）は、各ＨＤＣＰ対応機器に格納されたデバイスキー（Ｄｋｅｙｓ）を適用してセッションキーを算出するために適用するデータである。
このキーセレクションベクタ（ｋｓｖ）も、各ＨＤＣＰ機器に対応するデータとして予め各機器のメモリに格納される。
図６に示す例では、
ソース１１０は、キーセレクションベクタ（Ａｋｓｖ）１１４を、ソース１１０内のメモリに保持し、
シンク２１０は、キーセレクションベクタ（Ｂｋｓｖ）２１４を、シンク２１０内のメモリに保持している。
【０１４７】
図６に示すソース１１０からシンク２１０に対して暗号化コンテンツを送信し、シンク２１０においてコンテンツを復号、利用する際に、図６に示すステップＳ３０１〜Ｓ３０５の処理を順次、実行する。
各処理ステップについて、説明する。
【０１４８】
（ステップＳ３０１）
まず、ステップＳ３０１において、ソース１１０とシンク２１０間で第１段認証処理を実行する。この第１段認証処理は、相互に相手機器が信頼できるか否かを確認するとともに、暗号鍵としての認証キー（Ｋａｕｔｈ）を共有する処理として実行される。
【０１４９】
この第２実施例も、先に図３を参照して説明した第１実施例と同様、ステップＳ３０１において第１段認証処理を実行し、さらに、その後、ステップＳ３０２において第２段認証処理を実行する。
すなわち、２段階の認証処理を実行する。
【０１５０】
ステップＳ３０１において実行する第１段認証処理は、先に図３を参照して説明した実施例１のステップＳ１０１の第１段認証処理と同様の処理であり、例えば、図４を参照して説明した公開鍵暗号方式に従った認証処理である。
ステップＳ３０１の第１段認証処理では、先に図４を参照して説明したように、認証キー（Ｋａｕｔｈ）生成し、ソース１１０とシンク２１０で共有する。
なお、ステップＳ３０１の第１段認証処理に失敗した場合、ステップＳ３０２以下の処理は実行されない。すなわち、コンテンツの送受信処理も実行されないことになる。
【０１５１】
（ステップＳ３０２）
ステップＳ３０１の第１段認証処理が成立すると、ソース１１０とシンク２１０間でステップＳ３０２の第２段認証処理を実行する。
ステップＳ３０２の第２段認証処理は、先に図２を参照して説明したキーセレクションベクタ（ｋｓｖ）の送受信を伴うセッションキー（Ｋｍ）の算出等を実行するＨＤＣＰ１．４規格に従った認証処理である。
【０１５２】
本実施例では、この第２段認証処理において、ソース１１０とシンク２１０間で送受信するデータを、ステップＳ３０１の第１段認証処理においてソースシンク間で共有した暗号鍵である認証キー（Ｋａｕｔｈ）を適用して暗号化して送受信する。
【０１５３】
図６に示すソース１１０側のステップＳ３０２ａは、第２段認証処理におけるソース１１０の送信データの暗号化処理と、シンク２１０からの受信データの復号処理を実行するステップである。
また、図６に示すシンク２１０側のステップＳ３０２ｂは、第２段認証処理におけるシンク２１０の送信データの暗号化処理と、ソース１１０からの受信データの復号処理を実行するステップである。
【０１５４】
さらに、図６に示すソース１１０側のステップＳ３０２ｃは、ステップＳ３０２における第２段認証処理において実行される暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｅｒ）に従って算出する暗号鍵等の生成処理を実行するステップである。
同様に、図６に示すシンク２１０側のステップＳ３０２ｄは、ステップＳ３０２における第２段認証処理において実行される暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｅｒ）に従って算出する暗号鍵等の生成処理を実行するステップである。
【０１５５】
この第２段認証処理シーケンスの詳細については、後段で図７を参照して説明する。
なお、ステップＳ３０２の第２段認証処理に失敗した場合、ステップＳ３０３以下の処理は実行されない。すなわち、コンテンツの送受信処理も実行されないことになる。
【０１５６】
（ステップＳ３０３）
ステップＳ３０２の第２段認証処理が成立すると、ソース１１０は、ステップＳ３０３において、コンテンツ１１５の暗号化処理を実行する。
この暗号化処理は、ステップＳ３０２の第２段認証処理において生成した共有鍵であるセッションキー（Ｋｍ）を適用した暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｅｒ）に従って算出した暗号鍵（Ｋｓ，Ｍ０）を適用して実行する。
すなわち、図６のソース１１０側の処理として示すステップＳ３０２ｃにおいて算出した暗号鍵（Ｋｓ，Ｍ０）を適用して実行する。
【０１５７】
（ステップＳ３０４）
ソース１１０は、ステップＳ３０４において、生成した暗号化コンテンツ１１８をシンク２１０に送信する。
【０１５８】
（ステップＳ３０５）
シンク２１０は、ステップＳ３０５において、ソース１１０から受信した暗号化コンテンツ１１８に対して、ステップＳ３０２の第２段認証処理に際してソースシンク間で共有したセッションキー（Ｋｍ）を適用した暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｅｒ）に従って算出した暗号鍵（Ｋｓ，Ｍ０）を適用して実行する。
すなわち、図６のシンク２１０側の処理として示すステップＳ３０２ｄにおいて算出した暗号鍵（Ｋｓ，Ｍ０）を適用して実行する。
【０１５９】
図６に示すシーケンスのステップＳ３０２の第２段認証処理において、ソース１１０とシンク２１０間で送受信されるデータは暗号化の施されたデータとなる。
すなわち、先に図２を参照して説明したキーセレクションベクタ（ｋｓｖ）等、ソースシンク間の送受信データが、第１段認証処理において生成した認証キー（Ｋａｕｔｈ）で暗号化がなされて送受信される。
【０１６０】
従って、このステップＳ３０２の第２段認証処理においてソース１１０とシンク２１０間で送受信されるデータが盗聴されても、盗聴データは暗号化データであり、盗聴者がキーセレクションベクタ（ｋｓｖ）や乱数（Ａｍ）等を取得することはできない。従って、セッションキー（Ｋｍ）の生成や、セッションキー（Ｋｍ）を適用した暗号鍵（Ｋｓ，Ｍ０）等の生成が不可能となり、その後のステップＳ３０４で送受信される暗号化コンテンツの復号を行なうことはできず、コンテンツの不正利用を防止することが可能となる。
【０１６１】
次に、図７を参照して、図６に示すステップＳ３０２の第２段認証処理の詳細シーケンスについて説明する。
図６に示すステップＳ３０２において、ソース１１０とシンク２１０間で実行する第２段認証処理は、ＨＤＣＰ１．４規格に従った認証処理であり、本実施例では、この認証処理においてソース１１０とシンク２１０間で送受信するデータをステップＳ３０１の第１段認証処理においてソースシンク間で共有した暗号鍵である認証キー（Ｋａｕｔｈ）で暗号化して送受信する。
なお、この第２段認証処理では、先に図２を参照して説明したように、キーセレクションベクタ（ｋｓｖ）の送受信を実行し、セッションキー（Ｋｍ）の算出等を実行する。
【０１６２】
このステップＳ３０２の第２段認証処理の詳細シーケンスについて、図７に示すシーケンス図を参照して説明する。
この第２段認証処理においては、ソース１１０、およびシンク２１０は、以下のデータを利用して、認証、およびセッションキー（Ｋｍ）の生成および共有処理等を行なう。
（１）デバイスキー（Ｄｋｅｙｓ）、
（２）キーセレクションベクタ（ｋｓｖ）、
【０１６３】
前述のように、デバイスキー（Ｄｋｅｙｓ）は、ＨＤＣＰのライセンサーの管理する鍵生成システムの非公開のデバイスキー生成アルゴリズムによって、各機器毎に割り当てられるキーセレクションベクタ（ｋｓｖ）とともに生成されたｍ個の鍵からなるキーセットであり、各ＨＤＣＰ対応機器のメモリに外部から読み出せない形で格納される。
キーセレクションベクタ（ｋｓｖ）は、各ＨＤＣＰ対応機器に格納されたデバイスキー（Ｄｋｅｙｓ）を適用してセッションキーを算出するために適用するデータである。このキーセレクションベクタ（ｋｓｖ）も、各ＨＤＣＰ機器に対応するデータとして予め各機器のメモリに格納される。
【０１６４】
図７に示す例では、
ソース１１０は、デバイスキー（ＡＤｋｅｙｓ）１１３と、キーセレクションベクタ（Ａｋｓｖ）１１４を、ソース１１０内のメモリに保持し、
シンク２１０は、デバイスキー（ＢＤｋｅｙｓ）２１３と、キーセレクションベクタ（Ｂｋｓｖ）２１４を、シンク２１０内のメモリに保持している。
以下、図７に示す認証シーケンスの各ステップの処理について、順次、説明する。
【０１６５】
（ステップＳ３５１）
まず、ステップＳ３５１において、ソース１１０は、乱数（Ａｍ）を生成する。
【０１６６】
（ステップＳ３５２）
次に、ステップＳ３５２において、ソース１１０は、シンク２１０に対して送信するデータの暗号化処理を実行する。
すなわち、生成乱数（Ａｍ）と、ソース１１０がメモリに保持しているキーセレクションベクタ（Ａｋｓｖ）１１４を、図６を参照して説明したステップＳ３０１において生成した認証キー（Ｋａｕｔｈ）を適用して暗号化する。具体的には、以下の暗号化処理を実行する。
Ｅｎｃ（Ｋａｕｔｈ，Ａｍ||Ａｋｓｖ）
【０１６７】
（ステップＳ３５３）
次に、ソース１１０は、ステップＳ３５３において、上記のステップＳ３５２において生成した暗号化データ、すなわち、
Ｅｎｃ（Ｋａｕｔｈ，Ａｍ||Ａｋｓｖ）
上記の暗号化データをシンク２１０に対して送信する。
【０１６８】
（ステップＳ３５４）
次に、ステップＳ３５４において、シンク２１０は、ソース１１０に対して送信するデータの暗号化処理を実行する。
すなわち、シンク２１０がメモリに保持しているキーセレクションベクタ（Ｂｋｓｖ）２１４と、シンク２１０の装置情報データ（ＲＥＰＥＡＴＥＲ）を、図６を参照して説明したステップＳ３０１において生成した認証キー（Ｋａｕｔｈ）を適用して暗号化する。具体的には、以下の暗号化処理を実行する。
Ｅｎｃ（Ｋａｕｔｈ，Ｂｋｓｖ||ＲＥＰＥＡＴＥＲ）
なお、装置情報データ（ＲＥＰＥＡＴＥＲ）とは、例えばシンク２１０がソース１１０からの受信コンテンツをさらに外部機器に転送可能な装置であるか否か等の装置情報を示すデータである。
【０１６９】
（ステップＳ３５５）
次に、シンク２１０は、ステップＳ３５５において、上記のステップＳ３５４において生成した暗号化データ、すなわち、
Ｅｎｃ（Ｋａｕｔｈ，Ｂｋｓｖ||ＲＥＰＥＡＴＥＲ）
上記の暗号化データをソース１１０に対して送信する。
【０１７０】
（ステップＳ３５６）
次に、ステップＳ３５６において、ソース１１０は、シンク２１０から受信したデ゛―タ［Ｅｎｃ（Ｋａｕｔｈ，Ｂｋｓｖ||ＲＥＰＥＡＴＥＲ）］を、認証キー（Ｋａｕｔｈ）を適用して復号する。
この復号処理の結果として、キーセレクションベクタ（Ｂｋｓｖ）を取得する。
【０１７１】
さらに、ソース１１０は、受信データの復号処理によって取得したキーセレクションベクタ（Ｂｋｓｖ）と、ソース１１０のメモリに格納されたデバイスキー（ＡＤｋｅｙｓ）１１３を適用して、予め規定されたセッションキー生成アルゴリズムを実行して、セッションキー（Ｋｍ）を算出する。
すなわち、セッションキー（Ｋｍ）を、以下の式に従って算出する。
Ｋｍ＝ｆ（ＡＤｋｅｙｓ，Ｂｋｓｖ）
なお、ｆ（ａ，ｂ）は、データａ，ｂを適用したセッションキー生成アルゴリズムの実行を示すものであり、ＨＤＣＰにおいて規定され、公開されたアルゴリズムの実行を示す。
【０１７２】
（ステップＳ３５７）
一方、シンク２１０も、ステップＳ３５７において、ソース１１０から受信したデータ［Ｅｎｃ（Ｋａｕｔｈ，Ａｍ||Ａｋｓｖ）］を、認証キー（Ｋａｕｔｈ）を適用して復号する。
この復号処理の結果として、取得したキーセレクションベクタ（Ａｋｓｖ）と、シンク２１０のメモリに格納されたデバイスキー（ＢＤｋｅｙｓ）２１３を適用して、予め規定されたセッションキー生成アルゴリズムを実行して、セッションキー（Ｋｍ）を算出する。
すなわち、セッションキー（Ｋｍ）を、以下の式に従って算出する。
Ｋｍ＝ｆ（ＢＤｋｅｙｓ，Ａｋｓｖ）
【０１７３】
（ステップＳ３５８）
さらに、シンク２１０は、ステップＳ３５８において、ステップＳ３５７で生成したセッションキー（Ｋｍ）を適用してソース１１０から受信した乱数（Ａｍ）や、自装置の装置情報データ（ＲＥＰＥＡＴＥＲ）に対する規定の暗号処理アルゴリズムを適用してコンテンツの暗号化および復号処理に適用する暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
【０１７４】
ここで利用する暗号処理アルゴリズムは、先に説明したＨＤＣＰ１．４に規定されたアルゴリズムである。
ＨＤＣＰ１．４に規定された暗号鍵生成アルゴリズムは、例えば以下の演算式に従った処理である。
（Ｋｓ，Ｍ０，Ｒ０）＝ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）
上記式において、
ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）は、
装置情報データ（ＲＥＰＥＡＴＥＲ）と乱数（Ａｍ）の連結データに対するセッションキー（Ｋｍ）を適用したＨＤＣＰ１．４に規定された暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）の実行を意味する。
この暗号処理アルゴリズムを実行して、複数のデータ（Ｋｓ，Ｍ０，Ｒ０）を生成する。
このデータ中、Ｋｓ，Ｍ０は、コンテンツの暗号化、および復号処理に適用される暗号鍵となる。
Ｒ０は、認証処理に適用する検証用データとして利用される。
【０１７５】
さらに、シンク２１０は、生成した検証用データＲ０を、認証キー（Ｋａｕｔｈ）を適用して暗号化する。すなわち、以下の暗号化データを生成する。
Ｅｎｃ（Ｋａｕｔｈ，Ｒ０）
【０１７６】
（ステップＳ３５９）
次に、シンク２１０は、ステップＳ３５９において、ステップＳ３５８で生成した検証用データ（Ｒ０）の暗号化データ、すなわち、
Ｅｎｃ（Ｋａｕｔｈ，Ｒ０）
上記の暗号化データをソース１１０に送信する。
【０１７７】
（ステップＳ３６０）
ソース１１０は、ステップＳ３６０において、先に説明したシンク２１０のステップＳ３５８の処理と同様の処理を実行してコンテンツの暗号化および復号処理に適用する暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
すなわち、ステップＳ３５６で生成したセッションキー（Ｋｍ）を適用してＨＤＣＰ１．４に規定されたアルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）を適用した以下の処理によって、暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
（Ｋｓ，Ｍ０，Ｒ０）＝ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）
上記式によって生成されるデータ中、Ｋｓ，Ｍ０は、コンテンツの暗号化、および復号処理に適用される暗号鍵となる。
Ｒ０は、認証処理に適用する検証用データとして利用される。
【０１７８】
（ステップＳ３６１）
さらに、ソース１１０は、ステップＳ３６１において、ステップＳ３６０で生成した検証用データＲ０と、ステップＳ３５９でシンク２１０から受信したデータＲ０が一致するか否かを確認する。すなわち、
生成Ｒ０＝受信Ｒ０
上記式が成立するか否かを判定する。
成立した場合、ソースシンク間の認証処理が成立したと判定する。
【０１７９】
このように、図６に示すシーケンス中のステップＳ３０２の第２段認証処理は、図７に示すシーケンスに従って実行され、ソース１１０とシンク２１０間で送受信されるデータは、図６に示すステップＳ３０１の第１段認証処理においてソースシンク間で共有した認証キー（Ｋａｕｔｈ）によって暗号化されて送受信される。
このステップＳ３０２の第２段認証処理によって、ソース１１０とシンク２１０の双方がセッションキー（Ｋｍ）を共有し、さらに、コンテンツの暗号化、復号処理に適用する暗号鍵を共有する。
【０１８０】
図６、図７を参照して説明したように、ステップＳ３０２の第２段認証処理において、ソースシンク間で送受信されるデータは、ステップＳ３０１の第１段認証処理において生成した認証キー（Ｋａｕｔｈ）によって暗号化されたデータとなる。
【０１８１】
すなわち、ステップＳ３０２の第２段認証処理においてソースシンク間で送受信されるキーセレクションベクタ（ｋｓｖ）も暗号化データとして送受信される。従って、ステップＳ３０２の第２段認証処理におけるソースシンク間の送受信データが盗聴された場合でも、盗聴者が取得できるのはキーセレクションベクタ（ｋｓｖ）の暗号化データに過ぎず、キーセレクションベクタ（ｋｓｖ）を取得することはできない。
従って、セッションキー（Ｋｍ）の不正生成を防止可能となり、結果として、不正なコンテンツ利用を防止することが可能となる。
【０１８２】
［４．本開示の第３実施例の認証処理およびコンテンツ送受信シーケンスについて］
次に、図８以下を参照して、本開示の第３実施例の認証処理およびコンテンツ送受信シーケンスについて説明する。
【０１８３】
図８には、先の第１実施例において説明した図３や、第２実施例において説明した図６と同様、コンテンツを送信するソース（Ｓｏｕｒｃｅ）１１０と、コンテンツを受信するシンク（Ｓｉｎｋ）１２０を示している。
ソース１１０とシンク２１０は、先に説明した実施例と同様の機器である。具体的には、例えばソース１１０は、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）プレーヤ、ＢＤ（Ｂｌｕ−Ｒａｙ（登録商標）  Ｄｉｓｃ）プレーヤなどの情報処理装置であり、シンク２１０はテレビ等の情報処理装置などによって構成される。
これらは、例えばＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）に規定する処理を実行可能なＨＤＣＰ対応機器である。
【０１８４】
ソース１１０と、シンク２１０は、有線または無線ネットワークを介して相互に通信可能である。有線通信ケーブルとしては、例えばＨＤＭＩ（Ｈｉｇｈ−Ｄｅｆｉｎｉｔｉｏｎ  Ｍｕｌｔｉｍｅｄｉａ  Ｉｎｔｅｒｆａｃｅ）ケーブルなどのデジタルデータ伝送ケーブルが利用可能である。
【０１８５】
ソース１１０、シンク２１０とも、公開鍵暗号方式に従った秘密鍵（ｐｒｉｖ）と公開鍵を格納した公開鍵証明書（Ｃｅｒｔ）のペアをメモリに格納している。
図６に示すソース１１０内のソース秘密鍵（Ａｐｒｉｖ）１１１とソース公開鍵証明書（ＡＣｅｒｔ）１１２、シンク２１０内のシンク秘密鍵（Ｂｐｒｉｖ）２１１とシンク公開鍵証明書（ＢＣｅｒｔ）２１２である。
なお、公開鍵証明書は、公開鍵と、その発行機関の署名を含む証明書（Ｃｅｒｔｉｆｉｃａｔｅ）である。
【０１８６】
さらに、ソース１１０、シンク２１０とも、以下のデータをメモリに格納している。
（１）デバイスキー（Ｄｋｅｙｓ）、
（２）キーセレクションベクタ（ｋｓｖ）、
【０１８７】
デバイスキー（Ｄｋｅｙｓ）は、複数の鍵からなるキーセットである。これは、ＨＤＣＰのライセンサーの管理する鍵生成システムが非公開のデバイスキー生成アルゴリズムによって、各機器毎に割り当てられるキーセレクションベクタ（ｋｓｖ）とともに生成したｍ個の鍵からなるキーセットである。このキーセットがデバイスキー（Ｄｋｅｙ）として各ＨＤＣＰ対応機器のメモリに外部から読み出せない形で格納される。
なお、デバイスキー（Ｄｋｅｙｓ）はシンク、ソースに毎に異なる。
【０１８８】
図６に示す例では、
ソース１１０は、デバイスキー（ＡＤｋｅｙｓ）１１３を、ソース１１０内のメモリに保持し、
シンク２１０は、デバイスキー（ＢＤｋｅｙｓ）２１３を、シンク２１０内のメモリに保持している。
【０１８９】
キーセレクションベクタ（ｋｓｖ）は、各ＨＤＣＰ対応機器に格納されたデバイスキー（Ｄｋｅｙｓ）を適用してセッションキーを算出するために適用するデータである。
このキーセレクションベクタ（ｋｓｖ）も、各ＨＤＣＰ機器に対応するデータとして予め各機器のメモリに格納される。
図８に示す例では、
ソース１１０は、キーセレクションベクタ（Ａｋｓｖ）１１４を、ソース１１０内のメモリに保持し、
シンク２１０は、キーセレクションベクタ（Ｂｋｓｖ）２１４を、シンク２１０内のメモリに保持している。
【０１９０】
図８に示すソース１１０からシンク２１０に対して暗号化コンテンツを送信し、シンク２１０においてコンテンツを復号、利用する際に、図８に示すステップＳ４０１〜Ｓ４０５の処理を順次、実行する。
各処理ステップについて、説明する。
【０１９１】
（ステップＳ４０１）
まず、ステップＳ４０１において、ソース１１０とシンク２１０間で第１段認証処理を実行する。この第１段認証処理は、相互に相手機器が信頼できるか否かを確認するとともに、暗号鍵としての認証キー（Ｋａｕｔｈ）を共有する処理として実行される。
【０１９２】
この第３実施例も、先に説明した第１、第２実施例と同様、ステップＳ４０１において第１段認証処理を実行し、さらに、その後、ステップＳ４０２において第２段認証処理を実行する。
すなわち、２段階の認証処理を実行する。
【０１９３】
ステップＳ４０１において実行する第１段認証処理は、先に説明した実施例１、実施例２の第１段認証処理と同様の処理であり、例えば、図４を参照して説明した公開鍵暗号方式に従った認証処理である。
ステップＳ４０１の第１段認証処理では、先に図４を参照して説明したように、認証キー（Ｋａｕｔｈ）生成し、ソース１１０とシンク２１０で共有する。
なお、ステップＳ４０１の第１段認証処理に失敗した場合、ステップＳ４０２以下の処理は実行されない。すなわち、コンテンツの送受信処理も実行されないことになる。
【０１９４】
（ステップＳ４０２）
ステップＳ４０１の第１段認証処理が成立すると、ソース１１０とシンク２１０間でステップＳ４０２の第２段認証処理を実行する。
ステップＳ４０２の第２段認証処理は、先に図２を参照して説明したキーセレクションベクタ（ｋｓｖ）の送受信を伴うセッションキー（Ｋｍ）の算出等を実行するＨＤＣＰ１．４規格に従った認証処理である。
【０１９５】
本実施例では、この第２段認証処理において、ソース１１０が生成し、シンク２１０へ送信する乱数（Ａｍ）を、ステップＳ４０１の第１段認証処理においてソースシンク間で共有した暗号鍵である認証キー（Ｋａｕｔｈ）を適用して生成する。
例えば、認証キー（Ｋａｕｔｈ）の下位６４ビットを選択して乱数（Ａｍ）とする。
【０１９６】
なお、このような取り決めを予めソースシンク間で定義しておけば、ステップＳ４０２の第２段認証処理において、ソース１１０は、シンク２１０に対して、乱数（Ａｍ）を送信しない設定、あるいは、ダミーデータとしての乱数（Ａｍ）を送信してもよい。
ステップＳ４０１の第１段認証処理において、ソースシンクの双方は、認証キー（Ｋａｕｔｈ）を共有しているので、ソースシンクとも認証キー（Ｋａｕｔｈ）から、正しい乱数（Ａｍ）、すなわちコンテンツの暗号化や復号に適用する暗号鍵の生成処理に適用する乱数（Ａｍ）を生成することができるからである。
なお、この処理の詳細については、後段で図９を参照して説明する。
【０１９７】
図８に示すソース１１０側のステップＳ４０２ａは、ステップＳ４０２の第２段認証処理における乱数（Ａｍ）生成処理を示している。
すなわち、ソース１１０は、ステップＳ４０１の第１段認証処理においてソースシンク間で共有した認証キー（Ｋａｕｔｈ）から乱数（Ａｍ）を生成する。例えば認証キー（Ｋａｕｔｈ）の下位６４ビットを乱数（Ａｍ）として設定する。
【０１９８】
また、図８に示すシンク２１０側のステップＳ４０２ｂは、シンク２１０側における乱数（Ａｍ）生成処理を示している。
シンク２１０も、ステップＳ４０１の第１段認証処理においてソースシンク間で共有した認証キー（Ｋａｕｔｈ）から乱数（Ａｍ）を生成する。例えば認証キー（Ｋａｕｔｈ）の下位６４ビットを乱数（Ａｍ）として設定する。
【０１９９】
このような設定とすることで、ステップＳ４０２の第２段認証処理において、ソース１１０からシンク２１０に対して乱数（Ａｍ）の送信を行わない設定や、てたらめのダミーデータからなる乱数を送信するといった処理が可能となり、盗聴による正しい乱数（Ａｍ）の不正取得を防止することが可能となる。
【０２００】
さらに、図８に示すソース１１０側のステップＳ４０２ｃは、ステップＳ４０２における第２段認証処理において実行される暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｅｒ）に従って算出する暗号鍵等の生成処理を実行するステップである。
同様に、図８に示すシンク２１０側のステップＳ４０２ｄは、ステップＳ３０２における第２段認証処理において実行される暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｅｒ）に従って算出する暗号鍵等の生成処理を実行するステップである。
【０２０１】
この第２段認証処理シーケンスの詳細については、後段で図９を参照して説明する。
なお、ステップＳ４０２の第２段認証処理に失敗した場合、ステップＳ４０３以下の処理は実行されない。すなわち、コンテンツの送受信処理も実行されないことになる。
【０２０２】
（ステップＳ４０３）
ステップＳ４０２の第２段認証処理が成立すると、ソース１１０は、ステップＳ４０３において、コンテンツ１１５の暗号化処理を実行する。
この暗号化処理は、ステップＳ４０２の第２段認証処理において生成した共有鍵であるセッションキー（Ｋｍ）を適用した暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｅｒ）に従って算出した暗号鍵（Ｋｓ，Ｍ０）を適用して実行する。
すなわち、図８のソース１１０側の処理として示すステップＳ４０２ｃにおいて算出した暗号鍵（Ｋｓ，Ｍ０）を適用して実行する。
【０２０３】
（ステップＳ４０４）
ソース１１０は、ステップＳ４０４において、生成した暗号化コンテンツ１１８をシンク２１０に送信する。
【０２０４】
（ステップＳ４０５）
シンク２１０は、ステップＳ４０５において、ソース１１０から受信した暗号化コンテンツ１１８に対して、ステップＳ４０２の第２段認証処理に際してソースシンク間で共有したセッションキー（Ｋｍ）を適用した暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｅｒ）に従って算出した暗号鍵（Ｋｓ，Ｍ０）を適用して実行する。
すなわち、図８のシンク２１０側の処理として示すステップＳ４０２ｄにおいて算出した暗号鍵（Ｋｓ，Ｍ０）を適用して実行する。
【０２０５】
次に、図９を参照して、図８に示すステップＳ４０２の第２段認証処理の詳細シーケンスについて説明する。
図８に示すステップＳ４０２において、ソース１１０とシンク２１０間で実行する第２段認証処理は、ＨＤＣＰ１．４規格に従った認証処理であり、本実施例では、この認証処理においてソース１１０からシンク２１０へ乱数（Ａｍ）を送信しない設定、あるいはダミーデータとして送信する設定とすることが可能となる。
なお、この第２段認証処理では、先に図２を参照して説明したように、キーセレクションベクタ（ｋｓｖ）の送受信を実行し、セッションキー（Ｋｍ）の算出等を実行する。
【０２０６】
このステップＳ４０２の第２段認証処理の詳細シーケンスについて、図９に示すシーケンス図を参照して説明する。
【０２０７】
この第２段認証処理においては、ソース１１０、およびシンク２１０は、以下のデータを利用して、認証、およびセッションキー（Ｋｍ）の生成および共有処理等を行なう。
（１）デバイスキー（Ｄｋｅｙｓ）、
（２）キーセレクションベクタ（ｋｓｖ）、
【０２０８】
前述のように、デバイスキー（Ｄｋｅｙｓ）は、ＨＤＣＰのライセンサーの管理する鍵生成システムの非公開のデバイスキー生成アルゴリズムによって、各機器毎に割り当てられるキーセレクションベクタ（ｋｓｖ）とともに生成されたｍ個の鍵からなるキーセットであり、各ＨＤＣＰ対応機器のメモリに外部から読み出せない形で格納される。
キーセレクションベクタ（ｋｓｖ）は、各ＨＤＣＰ対応機器に格納されたデバイスキー（Ｄｋｅｙｓ）を適用してセッションキーを算出するために適用するデータである。このキーセレクションベクタ（ｋｓｖ）も、各ＨＤＣＰ機器に対応するデータとして予め各機器のメモリに格納される。
【０２０９】
図９に示す例では、
ソース１１０は、デバイスキー（ＡＤｋｅｙｓ）１１３と、キーセレクションベクタ（Ａｋｓｖ）１１４を、ソース１１０内のメモリに保持し、
シンク２１０は、デバイスキー（ＢＤｋｅｙｓ）２１３と、キーセレクションベクタ（Ｂｋｓｖ）２１４を、シンク２１０内のメモリに保持している。
以下、図９に示す認証シーケンスの各ステップの処理について、順次、説明する。
【０２１０】
（ステップＳ４５１）
まず、ステップＳ４５１において、ソース１１０は、ダミーデータとしての乱数（Ａｍｘ）を生成する。
このダミーデータとしての乱数（Ａｍｘ）は、コンテンツの暗号鍵の生成に適用する正しい乱数（Ａｍ）とは異なるでたらめの値を持つ乱数（Ａｍｘ）である。
【０２１１】
（ステップＳ４５２）
次に、ステップＳ４５２において、ソース１１０は、シンク２１０に対して、ステップＳ４５１で生成したダミーデータとしての乱数（Ａｍｘ）と、ソース１１０がメモリに保持しているキーセレクションベクタ（Ａｋｓｖ）１１４をシンク２１０に対して送信する。
【０２１２】
なお、この実施例の説明では、ダミーデータとしての乱数（Ａｍｘ）を送信する設定としているが、ダミーデータとしての乱数（Ａｍｘ）を送信しない設定としてもよい。
前述したように、コンテンツの暗号化や復号に適用するための乱数（Ａｍ）は、ステップＳ４０１の第１段認証処理においてソースとシンクが共有した認証キー（Ｋａｕｔｈ）から生成可能だからである。
【０２１３】
（ステップＳ４５３）
次に、ステップＳ４５３において、シンク２１０は、シンク２１０がメモリに保持しているキーセレクションベクタ（Ｂｋｓｖ）２１４と、シンク２１０の装置情報データ（ＲＥＰＥＡＴＥＲ）をソース１１０に対して送信する。
なお、装置情報データ（ＲＥＰＥＡＴＥＲ）とは、例えばシンク２１０がソース１１０からの受信コンテンツをさらに外部機器に転送可能な装置であるか否か等の装置情報を示すデータである。
【０２１４】
（ステップＳ４５４）
次に、ステップＳ４５４において、ソース１１０は、シンク２１０から受信したキーセレクションベクタ（Ｂｋｓｖ）と、ソース１１０のメモリに格納されたデバイスキー（ＡＤｋｅｙｓ）１１３を適用して、予め規定されたセッションキー生成アルゴリズムを実行して、セッションキー（Ｋｍ）を算出する。
すなわち、セッションキー（Ｋｍ）を、以下の式に従って算出する。
Ｋｍ＝ｆ（ＡＤｋｅｙｓ，Ｂｋｓｖ）
なお、ｆ（ａ，ｂ）は、データａ，ｂを適用したセッションキー生成アルゴリズムの実行を示すものであり、ＨＤＣＰにおいて規定され、公開されたアルゴリズムの実行を示す。
【０２１５】
（ステップＳ４５５）
一方、シンク２１０も、ステップＳ４５５において、ソース１１０から受信したキーセレクションベクタ（Ａｋｓｖ）と、シンク２１０のメモリに格納されたデバイスキー（ＢＤｋｅｙｓ）２１３を適用して、予め規定されたセッションキー生成アルゴリズムを実行して、セッションキー（Ｋｍ）を算出する。
すなわち、セッションキー（Ｋｍ）を、以下の式に従って算出する。
Ｋｍ＝ｆ（ＢＤｋｅｙｓ，Ａｋｓｖ）
【０２１６】
（ステップＳ４５６）
さらに、シンク２１０は、ステップＳ４５６において、ステップＳ４５５で生成したセッションキー（Ｋｍ）を適用した暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）を実行して、コンテンツの暗号化および復号処理に適用する暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
【０２１７】
ここで利用する暗号処理アルゴリズムは、先に説明したＨＤＣＰ１．４に規定されたアルゴリズムである。
ＨＤＣＰ１．４に規定された暗号鍵生成アルゴリズムは、例えば以下の演算式に従った処理である。
（Ｋｓ，Ｍ０，Ｒ０）＝ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）
上記式において、
ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）は、
装置情報データ（ＲＥＰＥＡＴＥＲ）と乱数（Ａｍ）の連結データに対するセッションキー（Ｋｍ）を適用したＨＤＣＰ１．４に規定された暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）の実行を意味する。
【０２１８】
なお、乱数（Ａｍ）は、図８に示すステップＳ４０１の第１段認証処理において、ソース１１０とシンク２１０が共有した認証キー（Ｋａｕｔｈ）から生成する。例えば認証キー（Ｋａｕｔｈ）の下位６４ビットを乱数（Ａｍ）として設定する。
このように認証キー（Ｋａｕｔｈ）から生成した乱数（Ａｍ）を利用して、以下の式、すなわち、
（Ｋｓ，Ｍ０，Ｒ０）＝ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）
上記式に従って、コンテンツの暗号化および復号処理に適用する暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
【０２１９】
（ステップＳ４５７）
次に、シンク２１０は、ステップＳ４５７において、ステップＳ４５６で生成した検証用データ（Ｒ０）をソース１１０に送信する。
【０２２０】
（ステップＳ４５８）
ソース１１０は、ステップＳ４５８において、先に説明したシンク２１０のステップＳ４５６の処理と同様の処理を実行してコンテンツの暗号化および復号処理に適用する暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
すなわち、ステップＳ４５４で生成したセッションキー（Ｋｍ）を適用してＨＤＣＰ１．４に規定されたアルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）を適用した以下の処理によって、暗号鍵（Ｋｓ，Ｍ０）と検証用データ（Ｒ０）を生成する。
（Ｋｓ，Ｍ０，Ｒ０）＝ｈｄｃｐＢｌｋＣｉｐｈｅｒ（Ｋｍ，ＲＥＰＥＡＴＥＲ｜｜Ａｍ）
【０２２１】
なお、上記式に適用する乱数（Ａｍ）は、図８に示すステップＳ４０１の第１段認証処理において、ソース１１０とシンク２１０が共有した認証キー（Ｋａｕｔｈ）から生成する。例えば認証キー（Ｋａｕｔｈ）の下位６４ビットを乱数（Ａｍ）として設定する。
【０２２２】
上記式によって生成されるデータ中、Ｋｓ，Ｍ０は、コンテンツの暗号化、および復号処理に適用される暗号鍵となる。
Ｒ０は、認証処理に適用する検証用データとして利用される。
【０２２３】
（ステップＳ４５９）
さらに、ソース１１０は、ステップＳ４５９において、ステップＳ４５８で生成した検証用データＲ０と、ステップＳ４５７でシンク２１０から受信したデータＲ０が一致するか否かを確認する。すなわち、
生成Ｒ０＝受信Ｒ０
上記式が成立するか否かを判定する。
成立した場合、ソースシンク間の認証処理が成立したと判定する。
【０２２４】
このように、図８に示すシーケンス中のステップＳ４０２の第２段認証処理は、図９に示すシーケンスに従って実行され、ソース１１０は、シンク２１０に対して、ダミーデータとしての乱数（Ａｍｘ）を送信する。あるいは乱数送信を行わない。
【０２２５】
従って、第２段認証処理においてソースシンク間で送受信されるデータが、不正な第三者によって盗聴され取得されても、正しい乱数（Ａｍ）は取得できない。
結果として、正しい乱数を適用した暗号処理アルゴリズム（ｈｄｃｐＢｌｋＣｉｐｈｅｒ）の実行による暗号鍵（Ｋｓ，Ｍ０）の取得処理を実行することができず、不正な暗号化コンテンツの復号、利用を防止することができる。
【０２２６】
［５．暗号化コンテンツの送信処理に併せてシンクの継続的確認処理を実行する実施例］
次に、ソースからシンクに対する暗号化コンテンツの送信に併せて、ソースがコンテンツ送信先としてのシンクが変更されていないことを継続的に確認する処理を追加した実施例について説明する。
【０２２７】
以下、図８、図９を参照して以下の実施例４ａ〜４ｃについて、順次、説明する。
（実施例４ａ）実施例１の構成に継続的シンク確認処理を追加した実施例
（実施例４ｂ）実施例２の構成に継続的シンク確認処理を追加した実施例
（実施例４ｃ）実施例２の構成に継続的シンク確認処理を追加した実施例
【０２２８】
（実施例４ａ）実施例１の構成に継続的シンク確認処理を追加した実施例
まず、図１０を参照して、先に説明した実施例１の構成に継続的シンク確認処理を追加した実施例
について説明する。
【０２２９】
図１０は、先に図３を参照して説明した第１実施例のシーケンス図に、ステップＳ５０１〜Ｓ５０２の継続的シンク確認処理を追加したシーケンス図である。
ステップＳ１０１〜Ｓ１０７の処理は、先に図３を参照して説明した処理と同様の処理である。
【０２３０】
本実施例４ａでは、ステップＳ１０５の暗号化コンテンツの送信処理に並行して、ステップＳ５０１〜Ｓ５０２の処理を繰り返し実行する。
ステップＳ５０１は、ソース１１０が乱数（ｍｄ）を生成してシンク２１０に送信する処理ステップである。
ステップＳ５０２は、シンク２１０が、ソース１１０から受信した乱数（ｍｄ）に対して、ステップＳ１０１の第１段認証処理においてソースシンク間で共有した認証キー（ｋａｕｔｈ）を適用した暗号化処理を実行して生成したでーたのもソース１１０に対する送信処理である。
【０２３１】
すなわち、ステップＳ５０２において、シンク２１０は、ソース１１０から受信した乱数（ｍｄ）に対して、以下の式に従った暗号化処理を実行する。
Ｅｎｃ（Ｋａｕｔｈ，ｍｄ）
シンク２１０は、上記式に従った暗号化処理を実行し、生成した暗号化データ［Ｅｎｃ（Ｋａｕｔｈ，ｍｄ）］をソース１１０に送信する。
【０２３２】
なお、ソース１１０は、ステップＳ５０２においてシンク２１０から受信するデータの復号処理を実行し、復号結果と、送信乱数（ｍｄ）が一致するか否かを確認する。
【０２３３】
一致している場合は、シンク２１０は第１段認証処理を実行した相手に間違いないと判断して、ステップＳ１０５の暗号化コンテンツの送信を継続する。
しかし、一致しない場合は、シンク２１０は第１段認証処理を実行した相手と異なると判断して、ステップＳ１０５の暗号化コンテンツの送信を中止する。
【０２３４】
なお、ステップＳ５０１〜Ｓ５０２の処理は、ステップＳ１０５の暗号化コンテンツの送信に並行して、継続的に繰り返し実行する。
例えば２秒に１回のペースで、ソース１１０は、順次、異なる乱数を生成して、シンク２１０に送信し、シンク２１０から受信するデータの復号、照合処理を繰り返し実行する。
【０２３５】
このステップＳ５０１〜Ｓ５０２の処理を、ステップＳ１０５の暗号化コンテンツの送信時に継続的に繰り返し実行することで、暗号化コンテンツ送信途中で、シンク２１０が変更されるといった事象を検出可能となり、シンク２１０の変更が確認された場合はコンテンツの送信を中止するといった対応をとることが可能となる。
【０２３６】
（実施例４ｂ）実施例２の構成に継続的シンク確認処理を追加した実施例
次に、図１１を参照して、先に説明した実施例２の構成に継続的シンク確認処理を追加した実施例について説明する。
【０２３７】
図１１は、先に図６を参照して説明した第２実施例のシーケンス図に、ステップＳ５０１〜Ｓ５０２の継続的シンク確認処理を追加したシーケンス図である。
ステップＳ３０１〜Ｓ３０５の処理は、先に図６を参照して説明した処理と同様の処理である。
【０２３８】
本実施例では、ステップＳ３０４の暗号化コンテンツの送信処理に並行して、ステップＳ５０１〜Ｓ５０２の処理を繰り返し実行する。
ステップＳ５０１は、ソース１１０が乱数（ｍｄ）を生成してシンク２１０に送信する処理ステップである。
ステップＳ５０２は、シンク２１０が、ソース１１０から受信した乱数（ｍｄ）に対して、ステップＳ１０１の第１段認証処理においてソースシンク間で共有した認証キー（ｋａｕｔｈ）を適用した暗号化処理を実行し、生成した暗号化データ［Ｅｎｃ（Ｋａｕｔｈ，ｍｄ）］をソース１１０に送信する処理である。
【０２３９】
なお、ソース１１０は、ステップＳ５０２においてシンク２１０から受信するデータの復号処理を実行し、復号結果と、送信乱数（ｍｄ）が一致するか否かを確認する。
一致している場合は、シンク２１０は第１段認証処理を実行した相手に間違いないと判断して、ステップＳ３０４の暗号化コンテンツの送信を継続する。
しかし、一致しない場合は、シンク２１０は第１段認証処理を実行した相手と異なると判断して、ステップＳ３０４の暗号化コンテンツの送信を中止する。
【０２４０】
なお、ステップＳ５０１〜Ｓ５０２の処理は、ステップＳ３０４の暗号化コンテンツの送信に並行して、継続的に繰り返し実行する。
例えば２秒に１回のペースで、ソース１１０は、順次、異なる乱数を生成して、シンク２１０に送信し、シンク２１０から受信するデータの復号、照合処理を繰り返し実行する。
【０２４１】
このステップＳ５０１〜Ｓ５０２の処理を、ステップＳ３０４の暗号化コンテンツの送信時に継続的に繰り返し実行することで、暗号化コンテンツ送信途中で、シンク２１０が変更されるといった事象を検出可能となり、シンク２１０の変更が確認された場合はコンテンツの送信を中止するといった対応をとることが可能となる。
【０２４２】
（実施例４ｃ）実施例３の構成に継続的シンク確認処理を追加した実施例
次に、図１２を参照して、先に説明した実施例３の構成に継続的シンク確認処理を追加した実施例について説明する。
【０２４３】
図１２は、先に図８を参照して説明した第３実施例のシーケンス図に、ステップＳ５０１〜Ｓ５０２の継続的シンク確認処理を追加したシーケンス図である。
ステップＳ４０１〜Ｓ４０５の処理は、先に図８を参照して説明した処理と同様の処理である。
【０２４４】
本実施例では、ステップＳ４０４の暗号化コンテンツの送信処理に並行して、ステップＳ５０１〜Ｓ５０２の処理を繰り返し実行する。
ステップＳ５０１は、ソース１１０が乱数（ｍｄ）を生成してシンク２１０に送信する処理ステップである。
ステップＳ５０２は、シンク２１０が、ソース１１０から受信した乱数（ｍｄ）に対して、ステップＳ１０１の第１段認証処理においてソースシンク間で共有した認証キー（ｋａｕｔｈ）を適用した暗号化処理を実行し、生成した暗号化データ［Ｅｎｃ（Ｋａｕｔｈ，ｍｄ）］をソース１１０に送信する処理である。
【０２４５】
なお、ソース１１０は、ステップＳ５０２においてシンク２１０から受信するデータの復号処理を実行し、復号結果と、送信乱数（ｍｄ）が一致するか否かを確認する。
一致している場合は、シンク２１０は第１段認証処理を実行した相手に間違いないと判断して、ステップＳ４０４の暗号化コンテンツの送信を継続する。
しかし、一致しない場合は、シンク２１０は第１段認証処理を実行した相手と異なると判断して、ステップＳ４０４の暗号化コンテンツの送信を中止する。
【０２４６】
なお、ステップＳ５０１〜Ｓ５０２の処理は、ステップＳ４０４の暗号化コンテンツの送信に並行して、継続的に繰り返し実行する。
例えば２秒に１回のペースで、ソース１１０は、順次、異なる乱数を生成して、シンク２１０に送信し、シンク２１０から受信するデータの復号、照合処理を繰り返し実行する。
【０２４７】
このステップＳ５０１〜Ｓ５０２の処理を、ステップＳ４０４の暗号化コンテンツの送信時に継続的に繰り返し実行することで、暗号化コンテンツ送信途中で、シンク２１０が変更されるといった事象を検出可能となり、シンク２１０の変更が確認された場合はコンテンツの送信を中止するといった対応をとることが可能となる。
【０２４８】
［６．様々なソースとシンクの組み合わせに応じた処理について］
上述した実施例において説明した処理、すなわち２段階の認証処理を伴う処理を実行するためには、ソース、およびシンクが上述の各実施例に従ったシーケンスを実行する機能、例えば処理プログラムをメモリに保持し、さらに各処理に適用するための情報を有していることが前提となる。
【０２４９】
例えば、第１段認証処理を行うためには、公開鍵と秘密鍵のペアを保持していることが必要である。また、第２段認証処理を実行するためには、デバイスキーとキーセレクションベクタを有していることが必要である。
【０２５０】
しかし、旧型機器は、先に図１、図２を参照して説明した処理、すなわち、ＨＤＣＰ１．４規格に従った認証処理のみを実行する構成を有している場合がある。
すなわち、実施例１〜４において説明した２段階の認証処理を実行する仕様とはなっていない場合も想定される。
【０２５１】
実施例１〜４において説明した２段階の認証処理を実行可能な最新機器を［最新処理対応機器］とし、実施例１〜４において説明した２段階の認証処理を実行する機能を持たず、ＨＤＣＰ１．４規格に従った認証処理のみの実行機能を持つ機器を［最新処理非対応機器］とする。
【０２５２】
ソースとシンクが、各々これらの２種類の機器のいずれかであるとすると、ソースとシンクとの組み合わせは、図１３に示す４通りの組み合わせが想定される。
すなわち、以下の４通りである。
（１）ソースが［最新処理対応機器］であり、シンクも［最新処理対応機器］である。
（２）ソースが［最新処理対応機器］であり、シンクは［最新処理非対応機器］である。
（３）ソースが［最新処理非対応機器］であり、シンクは［最新処理対応機器］である。
（４）ソースが［最新処理非対応機器］であり、シンクも［最新処理非対応機器］である。
ソースとシンクの組み合わせ構成には、これら４通りの組み合わせがある。
【０２５３】
このようにソースとシンクとの組み合わせには様々なパターンがあるが、［最新処理対応機器］は、先に説明した実施例１〜３の処理における最初の第１段認証処理を実行する前に、相手機器が［最新処理対応機器］であるか、［最新処理非対応機器］であるかを確認する処理を行なうことが好ましい。
【０２５４】
この確認処理において、相手機器が［最新処理対応機器］であることが確認された場合には、上述の実施例１〜４のいずれかに従った２段階認証処理を実行する。
一方、相手機器が［最新処理非対応機器］であることが確認された場合には、上述の実施例に従った２段階認証処理は実行せず、１段階の認証処理、すなわち、ＨＤＣＰ１．４規格に従った認証処理のみを実行するといった選択的な処理を実行する。
【０２５５】
例えば、上記の（２）の組み合わせ、すなわち、
ソースが［最新処理対応機器］であり、シンクは［最新処理非対応機器］である組み合わせである場合、ソースは、シンクに対して送信するコンテンツの画質を低下、例えば解像度を低下させて［最新処理非対応機器］であるシンクに送信するといった対応を行なう構成としてもよい。
【０２５６】
また、ソース、シンクとも［最新処理対応機器］であり、上記の実施例において説明した２段階認証処理を実行可能な機器である場合にも、以下の２つの処理を、ソースシンク間の送受信コンテンツに応じて切り替える構成としてもよい。
（ａ）上記実施例に従った２段階認証処理を実行、
（ｂ）ＨＤＣＰ１．４規格に従った認証処理のみを実行、
【０２５７】
例えば、発売後、間もないコンテンツであるような付加価値の高いコンテンツ、すなわち「プレミアムコンテンツ」の送受信を行なう場合には、
（ａ）上記実施例に従った２段階認証処理を実行する。
「プレミアムコンテンツ」に該当しない、例えば通常のデジタル放送コンテンツや、ディスク格納コンテンツ等の通常コンテンツを送受信する場合は、
（ｂ）ＨＤＣＰ１．４規格に従った認証処理のみを実行する、
このようなコンテンツに応じた処理の切り替えを行なう構成としてもよい。
【０２５８】
［７．デジタルコピー制御記述子やコンテンツ利用記述子による制御処理例］
上述の実施例において説明した二段階の認証処理を伴うコンテンツ送受信処理は、例えば、デジタルコピー制御記述子や、コンテント利用記述子によって保護が指定されたコンテンツに対して実行する。
【０２５９】
社団法人電波産業会（ＡＲＩＢ：Ａｓｓｏｃｉａｔｉｏｎ  ｏｆ  Ｒａｄｉｏ  Ｉｎｄｕｓｔｒｉｅｓ  ａｎｄ  Ｂｒｏａｄｃａｓｔ）では、地上デジタル放送等のコンテンツに対する利用制御記述子として、デジタルコピー制御記述子（Ｄｉｇｉｔａｌ  Ｃｏｐｙ  Ｃｏｎｔｒｏｌ  Ｄｅｓｃｒｉｐｔｏｒ）や、コンテント利用記述子（Ｃｏｎｔｅｎｔ  Ａｖａｉｌａｂｉｌｉｔｙ  ＤＥｓｃｒｉｐｔｏｒ）を規定している。これらは、いずれもデジタルコンテンツのコピー制御情報として規定されている。
【０２６０】
具体的には、デジタルコピー制御記述子は、デジタル記録機器におけるコピー世代を制御する情報および最大伝送レート情報についての記述子である。
また、コンテンツ利用記述子は、コンテンツの記録および出力を制御する情報の記述子である。
【０２６１】
ＡＲＩＢの規定するデジタルコピー制御記述子とコンテンツの保護指定との対応関係は、例えば図１４に示す対応関係にある。
デジタルコピー制御記述子（Ｄｉｇｉｔａｌ  Ｃｏｐｙ  Ｃｏｎｔｒｏｌ  Ｄｅｓｃｒｉｐｔｏｒ）として設定されるデジタル記録制御データ（ｄｉｇｉｔａｌ  ｒｅｃｏｒｄｉｎｇ  ｃｏｎｔｒｏｌ  ｄａｔａ）は、図１４に示すように、２ビットデータからなり、それぞれ以下の意味を有する。
００：制約条件なしにコピー可
０１：事業者の定義に従う
１０：  １世代のみコピー可
１１：  コピー禁止
【０２６２】
また、デジタルコピー制御記述子（Ｄｉｇｉｔａｌ  Ｃｏｐｙ  Ｃｏｎｔｒｏｌ  Ｄｅｓｃｒｉｐｔｏｒ）として設定される暗号化モード（ｅｎｃｒｙｐｔｉｏｎ  ｍｏｄｅ）の１ビットは、高速デジタルインタフェース出力の出力保護の有無を示す。
［０］の場合、高速デジタルインタフェース出力においては保護の処理を行なう。［１］の場合、保護を行わなくてもよい。
記述子の設定に応じて、このような設定の保護が要求される。
なお、図１４の対応関係は、ＡＲＩＢで規定されるｃｏｐｙ＿ｃｏｎｔｒｏｌ＿ｔｙｐｅが、ｃｏｐｙ＿ｃｏｎｔｒｏｌ＿ｔｙｐｅ＝０１の場合の例である。
【０２６３】
上述した実施例に従った処理は、ＡＲＩＢの規定するデジタルコピー制御記述子、およびコンテント利用記述子の設定されたコンテンツに対して適用する。
【０２６４】
例えば、ＡＲＩＢの規定するデジタル制御記述子やコンテント利用記述子で保護指定されたコンテンツ（映像、音声）を、ソース機器である次世代光ディスク再生装置や地上デジタル放送受信装置から、例えばシンクであるテレビにデジタル映像出力を行なう場合には、本技術に従って保護することが望ましい。
【０２６５】
［８．各装置のハードウェア構成例について］
最後に、図１２を参照して、上述した処理を実行する各装置のハードウェア構成例について説明する。
図１２は、上述した実施例においてコンテンツの送信または受信をほ実行するソースやシンクとなる情報処理装置のハードウェア構成例を示している。
【０２６６】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７０１は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）７０２、または記憶部７０８に記憶されているプログラムに従って各種の処理を実行するデータ処理部として機能する。例えば、上述したシーケンスに従った処理を実行する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）７０３には、ＣＰＵ７０１が実行するプログラムやデータなどが記憶される。これらのＣＰＵ７０１、ＲＯＭ７０２、およびＲＡＭ７０３は、バス７０４により相互に接続されている。
【０２６７】
ＣＰＵ７０１はバス７０４を介して入出力インタフェース７０５に接続され、入出力インタフェース７０５には、各種スイッチ、キーボード、マウス、マイクロホンなどよりなる入力部７０６、ディスプレイ、スピーカなどよりなる出力部７０７が接続されている。ＣＰＵ７０１は、入力部７０６から入力される指令に対応して各種の処理を実行し、処理結果を例えば出力部７０７に出力する。
【０２６８】
入出力インタフェース７０５に接続されている記憶部７０８は、例えばハードディスク等からなり、ＣＰＵ７０１が実行するプログラムや各種のデータを記憶する。通信部７０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０２６９】
入出力インタフェース７０５に接続されているドライブ７１０は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア７１１を駆動し、記録されているコンテンツや鍵情報等の各種データを取得する。例えば、取得されたコンテンツや鍵データを用いて、ＣＰＵによって実行するプログラムに従ってコンテンツの暗号化、復号、再生処理などが行われる。
【０２７０】
［９．本開示の構成のまとめ］
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
【０２７１】
なお、本明細書において開示した技術は、以下のような構成をとることができる。
（１）コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する情報処理装置。
【０２７２】
（２）前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、該第２段認証処理において前記シンクとともに共有する前記第２暗号鍵は、ＨＤＣＰ１．４に従った認証処理において生成するセッションキーを適用して生成する暗号鍵である前記（１）に記載の情報処理装置。
【０２７３】
（３）前記データ処理部は、前記シンクに対する前記二重暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する前記（１）または（２）に記載の情報処理装置。
【０２７４】
（４）前記データ処理部は、デジタルコピー制御記述子またはコンテンツ利用記述子の設定されたコンテンツに対して、前記二重暗号化処理を実行する前記（１）〜（３）いずれかに記載の情報処理装置。
【０２７５】
（５）コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理装置。
【０２７６】
（６）前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、該第２段認証処理において前記ソースとともに共有する前記第２暗号鍵は、ＨＤＣＰ１．４に従った認証処理において生成するセッションキーを適用して生成する暗号鍵である前記（５）に記載の情報処理装置。
【０２７７】
（７）コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する情報処理装置。
【０２７８】
（８）前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、前記データ処理部は、前記第２段認証処理において、前記シンクへの送信データを、前記認証キーで暗号化し、前記シンクからの受信データを前記認証キーで復号して前記第２段認証処理を実行する前記（７）に記載の情報処理装置。
【０２７９】
（９）前記データ処理部は、前記シンクに対する前記暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する前記（７）または（８）に記載の情報処理装置。
【０２８０】
（１０）前記データ処理部は、デジタルコピー制御記述子またはコンテンツ利用記述子の設定されたコンテンツに対して、前記暗号化処理を実行する前記（７）〜（９）いずれかに記載の情報処理装置。
【０２８１】
（１１）コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理装置。
【０２８２】
（１２）前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、前記データ処理部は、前記第２段認証処理において、前記ソースへの送信データを、前記認証キーで暗号化し、前記ソースからの受信データを前記認証キーで復号して前記第２段認証処理を実行する前記（１１）に記載の情報処理装置。
【０２８３】
（１３）コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有し、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理装置。
【０２８４】
（１４）前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記シンクとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、前記データ処理部は、前記第１段認証処理において生成した認証キーの構成データを、前記第２段認証処理において生成する暗号鍵の生成情報としての乱数として利用する前記（１３）に記載の情報処理装置。
【０２８５】
（１５）前記データ処理部は、前記シンクに対する前記暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する前記（１３）または（１４）に記載の情報処理装置。
【０２８６】
（１６）前記データ処理部は、デジタルコピー制御記述子またはコンテンツ利用記述子の設定されたコンテンツに対して、前記暗号化処理を実行する前記（１３）〜（１５）いずれかに記載の情報処理装置。
【０２８７】
（１７）コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有し、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理装置。
【０２８８】
（１８）前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において、前記ソースとともに共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーであり、前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、前記データ処理部は、前記第２暗号鍵の生成情報として適用する乱数を前記認証キーの構成データを利用して生成する前記（１７）に記載の情報処理装置。
【０２８９】
（１９）コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースは、出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記二重暗号化コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システム。
【０２９０】
（２０）コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で前記第１暗号鍵を適用した暗号化データの送受信により、第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が前記第１暗号鍵と異なる第２暗号鍵を共有し、
前記ソースは、出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理により暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システム。
【０２９１】
（２１）コンテンツを出力する情報処理装置であるソースと、前記ソースの出力コンテンツを入力する情報処理装置であるシンクを有する情報処理システムであり、
前記ソースとシンク間で第１段認証処理を実行し、該第１段認証処理において前記ソースとシンクの双方が第１暗号鍵を共有し、
前記ソースとシンク間で第２段認証処理を実行し、該第２段認証処理において前記ソースとシンクの双方が、前記第１暗号鍵の構成データを利用して、前記第１暗号鍵と異なる第２暗号鍵を生成して共有し、
前記ソースは、出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力し、
前記シンクは、前記ソースから受信した前記暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する情報処理システム。
【０２９２】
（２２）前記第１段認証処理は、公開鍵暗号方式に従った認証処理であり、該第１段認証処理において前記ソースとシンクの双方が共有する前記第１暗号鍵は、公開鍵暗号方式に従った認証処理において生成する認証キーである前記（１９）〜（２１）いずれかに記載の情報処理システム。
【０２９３】
（２３）前記第２段認証処理は、ＨＤＣＰ（Ｈｉｇｈ−ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ）１．４に従った認証処理であり、該第２段認証処理において前記ソースとシンクの双方が共有する前記第２暗号鍵は、ＨＤＣＰ１．４に従った認証処理において生成するセッションキーを適用して生成する暗号鍵である前記（１９）〜（２２）いずれかに記載の情報処理システム。
【０２９４】
（２４）前記ソースは、前記シンクに対する暗号化コンテンツの送信処理に併せて、
（ａ）乱数の送信処理、
（ｂ）該乱数に対する前記第１暗号鍵を適用した暗号化データの前記シンクからの受信処理と、
（ｃ）送信乱数と受信データから復号した乱数との照合処理、
上記（ａ）〜（ｃ）の処理を繰り返し実行する前記（１９）〜（２３）いずれかに記載の情報処理システム。
【０２９５】
（２５）前記ソースは、デジタルコピー制御記述子またはコンテンツ利用記述子の設定されたコンテンツに対して暗号化処理を実行する前記（１９）〜（２４）いずれかに記載の情報処理システム。
【０２９６】
（２６）コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する処理を実行する情報処理方法。
【０２９７】
（２７）コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行する情報処理方法。
【０２９８】
（２８）コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行する情報処理方法。
【０２９９】
（２９）コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行する情報処理方法。
【０３００】
（３０）コンテンツ出力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理方法。
【０３０１】
（３１）コンテンツ入力処理を実行する情報処理装置において実行する情報処理方法であり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記データ処理部は、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行し、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成する情報処理方法。
【０３０２】
（３２）コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を順次適用した二重暗号化処理により二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツを前記シンクに出力する処理を実行させるプログラム。
【０３０３】
（３３）コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースとの第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースからの入力コンテンツに対して、前記第１暗号鍵および前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させるプログラム。
【０３０４】
（３４）コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行させるプログラム。
【０３０５】
（３５）コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させるプログラム。
【０３０６】
（３６）コンテンツ出力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力先であるシンクとの認証処理、および前記シンクに対するコンテンツ出力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記シンクとの第１段認証処理を実行し、該第１段認証処理において前記シンクとともに第１暗号鍵を共有する処理と、
前記シンクとの第２段認証処理を実行し、該第２段認証処理において前記シンクとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
出力コンテンツに対して、前記第２暗号鍵を適用した暗号化処理を実行して暗号化コンテンツを生成し、生成した暗号化コンテンツを前記シンクに出力する処理を実行させ、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成させるプログラム。
【０３０７】
（３７）コンテンツ入力処理を実行する情報処理装置において情報処理を実行させるプログラムであり、
前記情報処理装置は、コンテンツ出力元であるソースとの認証処理、および前記ソースからのコンテンツ入力処理を実行するデータ処理部を有し、
前記プログラムは、前記データ処理部に、
前記ソースとの第１段認証処理を実行し、該第１段認証処理において前記ソースとともに第１暗号鍵を共有する処理と、
前記ソースと、前記第１暗号鍵を適用した暗号化データの送受信により第２段認証処理を実行し、該第２段認証処理において前記ソースとともに前記第１暗号鍵と異なる第２暗号鍵を共有する処理と、
前記ソースから入力する暗号化コンテンツに対して、前記第２暗号鍵を適用した復号処理を実行してコンテンツを取得する処理を実行させ、
前記第２暗号鍵の生成情報として適用する乱数を前記第１暗号鍵の構成データを利用して生成させるプログラム。
【０３０８】
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【０３０９】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【産業上の利用可能性】
【０３１０】
以上、説明したように、本開示の一実施例の構成によれば、ソースシンク間での安全なコンテンツ送受信を実現する。
具体的には、コンテンツ出力装置であるソースと、コンテンツ入力装置であるシンクを有し、ソースシンク間で、第１段認証処理を実行して第１暗号鍵を共有し、さらに、第１段認証処理と異なる方式の第２段認証処理を実行して第２暗号鍵を共有する。ソースは、出力コンテンツに対して、第１暗号鍵および第２暗号鍵を順次適用した二重暗号化コンテンツを生成し、生成した二重暗号化コンテンツをシンクに出力する。シンクは、ソースから受信した二重暗号化コンテンツに対して、第１暗号鍵および第２暗号鍵を適用した復号処理を実行してコンテンツを取得する。
あるいは、第１段認証処理において生成した第１暗号鍵を適用して第２段認証処理における送受信データを暗号化して第２段認証処理を実行する。
あるいは第１段認証処理において生成した第１暗号鍵を、第２暗号鍵の生成情報として用いる。
これらの構成により、ソースシンク間で送受信される暗号化コンテンツの不正な復号処理や利用処理を効果的に防止することが可能となる。
【符号の説明】
【０３１１】
１０  ソース
１１  コンテンツ
１２  セッションキー（Ｋｍ）
１３  暗号化コンテンツ
１５  デバイスキー
１６  キーセレクションベクタ
２０  シンク
２１  暗号化コンテンツ
２２  セッションキー（Ｋｍ）
２３  コンテンツ
２５  デバイスキー
２６  キーセレクションベクタ
１１０  ソース
１１１  秘密鍵（Ａｐｒｉｖ）
１１２  公開鍵証明書（ＡＣｅｒｔ）
１１３  デバイスキー（ＡＤｋｅｙｓ）
１１４  キーセレクションベクタ（Ａｋｓｖ）
１１５  コンテンツ
１１６  二重暗号化コンテンツ
１１７  コンテンツ
１１８  暗号化コンテンツ
１１９  コンテンツ
１２１  認証キー（Ｋａｕｔｈ）
１２２  セッションキー（Ｋｍ）
２１０  シンク
２１１  秘密鍵（Ｂｐｒｉｖ）
２１２  公開鍵証明書（ＢＣｅｒｔ）
２１３  デバイスキー（ＢＤｋｅｙｓ）
２１４  キーセレクションベクタ（Ｂｋｓｖ）
２２１  認証キー（Ｋａｕｔｈ）
２２２  セッションキー（Ｋｍ）
７０１  ＣＰＵ
７０２  ＲＯＭ
７０３  ＲＡＭ
７０４  バス
７０５  入出力インタフェース
７０６  入力部
７０７  出力部
７０８  記憶部
７０９  通信部
７１０  ドライブ
７１１  リムーバブルメディア
【図１】
2014072704.tif 000003
【図２】
2014072704.tif 000004
【図３】
2014072704.tif 000005
【図４】
2014072704.tif 000006
【図５】
2014072704.tif 000007
【図６】
2014072704.tif 000008
【図７】
2014072704.tif 000009
【図８】
2014072704.tif 000010
【図９】
2014072704.tif 000011
【図１０】
2014072704.tif 000012
【図１１】
2014072704.tif 000013
【図１２】
2014072704.tif 000014
【図１３】
2014072704.tif 000015
【図１４】
2014072704.tif 000016
【図１５】
2014072704.tif 000017