(57)【要約】      （修正有）【課題】スマートカードからコンディショナルアクセスモジュールに、コントロールワードをセキュアに提供する。【解決手段】スマートカード１からコンディショナルアクセスモジュール（ＣＡＭ）２にコントロールワードをセキュアに提供するための方法、スマートカード、受信機のＣＡＭ、及び受信機、例えば、セットトップボックス、を提供する。スマートカードとＣＡＭとからの多様化データが、暗号化鍵及び復号鍵を生成するために使用され、スマートカードとＣＡＭとのそれぞれで、コントロールワードの暗号化と復号とが行われる。多様化データは、ユーザと受信機との対話、例えば、セットトップボックスでのサービスの選択などによって定まる。【選択図】図２
2010193449.tif 000002
【特許請求の範囲】
【請求項１】
スマートカードから受信機のコンディショナルアクセスモジュールにコントロールワードをセキュアに提供する方法であって、
前記スマートカードにおいて、
前記スマートカード及び前記コンディショナルアクセスモジュールのうちの少なくとも１つから多様化データを取得する段階と、
多様化関数を用いて暗号化鍵を生成する段階と、
前記暗号化鍵を用いて前記コントロールワードを暗号化し、暗号化されたコントロールワードを取得する段階と、
前記多様化データが前記スマートカードから取得したものである場合、復号鍵を生成して前記暗号化されたコントロールワードを復号するために、前記多様化データを前記コンディショナルアクセスモジュールに提供する段階と、
前記暗号化されたコントロールワードを前記コンディショナルアクセスモジュールに提供する段階と
を有し、
前記受信機は、ユーザとの対話を行うように構成され、
前記多様化データは、ユーザとの前記対話によって定まり、
前記多様化関数は、前記多様化データを入力として受け取り、前記暗号化鍵を出力する関数であることを特徴とする方法。
【請求項２】
前記スマートカードにおいて、ハッシュ化関数を用いてハッシュ値を生成する段階をさらに有し、
前記ハッシュ化関数は、前記コントロールワードと、以前のコントロールワードと、以前のハッシュ値とを入力として用い、
前記多様化関数は、前記ハッシュ値と、前記多様化データとを入力として用いることを特徴とする請求項１に記載の方法。
【請求項３】
前記暗号化鍵を生成する段階が、
前記暗号化鍵を暗号化し、暗号化された暗号化鍵を取得する段階を含み、
前記暗号化された暗号化鍵は、前記コントロールワードを暗号化するための暗号化鍵として使用されることを特徴とする請求項１又は２に記載の方法。
【請求項４】
受信機のコンディショナルアクセスモジュールがスマートカードからコントロールワードをセキュアに取得する方法であって、
前記コンディショナルアクセスモジュールにおいて、
前記コンディショナルアクセスモジュール及び前記スマートカードのうちの少なくとも１つから多様化データを取得する段階と、
前記多様化データが前記コンディショナルアクセスモジュールから取得したものである場合、暗号化されたコントロールワードを生成するために、前記多様化データを前記スマートカードに提供する段階と、
多様化関数を用いて復号鍵を生成する段階と、
前記スマートカードから前記暗号化されたコントロールワードを受信する段階と、
前記復号鍵を用いて前記暗号化されたコントロールワードを復号し、前記コントロールワードを取得する段階と
を有し、
前記受信機は、ユーザとの対話を行うように構成され、
前記多様化データは、ユーザとの前記対話によって定まり、
前記多様化関数は、前記多様化データを入力として受け取り、前記復号鍵を出力する関数であることを特徴とする方法。
【請求項５】
前記コンディショナルアクセスモジュールにおいて、ハッシュ化関数を用いてハッシュ値を生成する段階をさらに有し、
前記ハッシュ化関数は、前記コントロールワードと、以前のコントロールワードと、以前のハッシュ値とを入力として用い、
前記多様化関数は、前記ハッシュ値と、前記多様化データとを入力として用いることを特徴とする請求項４に記載の方法。
【請求項６】
前記復号鍵を生成する段階が、
前記復号鍵を暗号化し、暗号化された復号鍵を取得する段階を含み、
前記暗号化された復号鍵は、前記暗号化されたコントロールワードを復号するための復号鍵として使用されることを特徴とする請求項４又は５に記載の方法。
【請求項７】
受信機のコンディショナルアクセスモジュールにコントロールワードをセキュアに提供するスマートカードであって、
第１検出部及び第２検出部のうちの少なくとも１つと、
多様化関数を用いて暗号化鍵を生成するように構成された暗号化鍵生成部と、
前記暗号化鍵を用いて前記コントロールワードを暗号化し、暗号化されたコントロールワードを取得するように構成された暗号化部と
を具備し、
前記受信機は、ユーザとの対話を行うように構成され、
前記第１検出部は、第１ユーザ対話を検出し、該第１ユーザ対話によって定まる第１多様化データを生成するように構成され、
前記第２検出部は、第２ユーザ対話によって定まる第２多様化データを前記コンディショナルアクセスモジュールから取得するように構成され、
前記多様化関数は、前記第１多様化データ及び前記第２多様化データのうちの少なくとも１つを入力として受け取り、前記暗号化鍵を出力する関数であり、
前記暗号化されたコントロールワードを前記コンディショナルアクセスモジュールに提供することを特徴とするスマートカード。
【請求項８】
ハッシュ化関数を用いてハッシュ値を生成するように構成されたハッシュ生成部をさらに具備し、
前記ハッシュ化関数は、前記コントロールワードと、以前のコントロールワードと、以前のハッシュ値とを入力として用い、
前記多様化関数は、前記ハッシュ値と、前記第１多様化データ及び前記第２多様化データのうちの少なくとも１つとを入力として用いて、前記暗号化鍵を生成することを特徴とする請求項７に記載のスマートカード。
【請求項９】
前記暗号化鍵生成部が、前記暗号化鍵を暗号化し、暗号化された暗号化鍵を取得するようにさらに構成され、
前記暗号化された暗号化鍵は、前記コントロールワードを暗号化するための暗号化鍵として使用されることを特徴とする請求項７又は８に記載のスマートカード。
【請求項１０】
前記多様化関数が、ホワイトボックス暗号法又はソフトウェアコード難読化によって保護されたソフトウェアコード部分を有することを特徴とする請求項７ないし９のいずれか１項に記載のスマートカード。
【請求項１１】
スマートカードからコントロールワードをセキュアに取得する、受信機のコンディショナルアクセスモジュールであって、
第１検出部及び第２検出部のうちの少なくとも１つと、
多様化関数を用いて復号鍵を生成するように構成された復号鍵生成部と、
前記復号鍵を用いて暗号化されたコントロールワードを復号し、前記コントロールワードを取得するように構成された復号部と
を具備し、
前記受信機は、ユーザとの対話を行うように構成され、
前記第１検出部は、第１ユーザ対話を検出し、該第１ユーザ対話によって定まる第１多様化データを生成するように構成され、
前記第２検出部は、第２ユーザ対話によって定まる第２多様化データを前記スマートカードから取得するように構成され、
前記多様化関数は、前記第１多様化データ及び前記第２多様化データのうちの少なくとも１つを入力として受け取り、前記復号鍵を出力する関数であり、
前記スマートカードから前記暗号化されたコントロールワードを受信することを特徴とするコンディショナルアクセスモジュール。
【請求項１２】
ハッシュ化関数を用いてハッシュ値を生成するように構成されたハッシュ生成部をさらに具備し、
前記ハッシュ化関数は、前記コントロールワードと、以前のコントロールワードと、以前のハッシュ値とを入力として用い、
前記多様化関数は、前記ハッシュ値と、前記第１多様化データ及び前記第２多様化データのうちの少なくとも１つとを入力として用いて、前記復号鍵を生成することを特徴とする請求項１１に記載のコンディショナルアクセスモジュール。
【請求項１３】
前記復号鍵生成部が、前記復号鍵を暗号化し、暗号化された復号鍵を取得するようにさらに構成され、
前記暗号化された復号鍵は、前記暗号化されたコントロールワードを復号するための復号鍵として使用されることを特徴とする請求項１１又は１２に記載のコンディショナルアクセスモジュール。
【請求項１４】
前記多様化関数が、ホワイトボックス暗号法又はソフトウェアコード難読化によって保護されたソフトウェアコード部分を有することを特徴とする請求項１１ないし１３のいずれか１項に記載のコンディショナルアクセスモジュール。
【請求項１５】
スクランブルデータの逆スクランブルを行う受信機であって、
前記スクランブルデータのうちの第１部分の逆スクランブルを行うように構成された第１逆スクランブル部と、
前記スクランブルデータのうちの第２部分の逆スクランブルを行うように構成された第２逆スクランブル部と、
請求項１０ないし１２のいずれか１項に記載のコンディショナルアクセスモジュールと
を具備し、
前記第１逆スクランブル部は、前記コンディショナルアクセスモジュールによって取得された前記コントロールワードを使用して、前記スクランブルデータのうちの前記第１部分の逆スクランブルを行うように構成されていることを特徴とする受信機。
【請求項１６】
前記スクランブルデータが、デジタルビデオストリームであり、
前記第１部分が、前記デジタルビデオストリームのオーディオ成分であり、
前記第２部分が、前記デジタルビデオストリームのビデオ成分であることを特徴とする請求項１５に記載の受信機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スマートカードからコンディショナルアクセスモジュールにコントロールワードをセキュアに提供する方法、コンディショナルアクセスモジュールにおいてスマートカードからコントロールワードをセキュアに取得する方法、コンディショナルアクセスモジュールにコントロールワードをセキュアに提供するスマートカード、スマートカードからコントロールワードをセキュアに取得する受信機のコンディショナルアクセスモジュール、及びスクランブルデータの逆スクランブルを行う受信機に関する。
【背景技術】
【０００２】
コンディショナルアクセスシステム（限定受信システム）は、既知の技術であり、現在利用可能な有料ＴＶ放送と組み合わせて広く用いられている。現在のところ、そのようなシステムは、コントロールワード（サービス暗号化鍵とも称される）を用いてスクランブル化されたサービスを伝送することに基づいている。コントロールワードは、コンディショナルアクセスモジュール（ＣＡＭ）と加入契約毎のスマートカードとを保有する加入者から受信したものである。典型的に、これらのサービスは、ヘッドエンドシステムによって放送ストリームとして伝送される。その実装は、セットトップボックス、テレビ受像機、パーソナルビデオレコーダ、携帯電話、スマートフォン、又はコンピュータ機器などの受信機にＣＡＭ機能が一体化されたものであることが知られている。典型的に、スマートカードは、動作の前にＣＡＭに手動で挿入される独立したカードである。しかしながら、スマートカードは、ＣＡＭに一体化されていてもよい。特定のサービス提供者との加入契約用スマートカードは、スクランブル化されたサービスをＣＡＭ内の逆スクランブル部によって逆スクランブルし、視聴可能とする。典型的に、放送ストリームには、エンタイトルメント管理メッセージ（ＥＭＭ）がさらに含まれる。ＥＭＭは、鍵管理メッセージ（ＫＭＭ）及びエンタイトルメント制御メッセージ（ＥＣＭ）とも称され、これらは、コントロールワードを取得するためにスマートカードで必要となる。ＥＣＭは、コントロールワードを暗号化形式で伝送するために使用される。ＥＭＭは、秘密鍵を伝送するために使用される。秘密鍵は、スマートカード内のＥＣＭを復号してコントロールワードを抽出するため、視聴／使用権の付加又は剥奪に関連した他のデータを復号するため、及び／又は、その他のユーザ固有データを復号するために使用される。
【０００３】
コントロールワードの盗用は、デジタルビデオ放送（ＤＶＢ）システムにおける重大な問題である。しばしば、攻撃者は、スマートカードからＣＡＭに伝送されるコントロールワードを傍受し、それをローカル無線ネットワークやインターネットを介して配布してしまう。そして、配布されたコントロールワードは、合法的なスマートカード無しで、スクランブル化されたサービスを逆スクランブルするために使用される。
【０００４】
スマートカードからＣＡＭに伝達されるコントロールワードを保護するための既知の方法は、対称暗号化法を使用する。対称暗号化法は、スマートカードにおいて、ＣＡＭへの送信の前に、共通鍵を用いてコントロールワードの暗号化を行うとともに、ＣＡＭにおいて、上記共通鍵を用いてコントロールワードの復号を行う。この対称暗号化法の弱点は、使用した暗号化鍵の秘密を守るという、スマートカードとＣＡＭとの間の信頼関係にある。もし、ハッカーが鍵の取得又は取り出しに成功し、複数のＣＡＭに同一の鍵を提供した場合、そのようなＣＡＭのすべてにおいて、暗号化されたメッセージの復号及びスクランブル化されたサービスの逆スクランブルが可能となってしまう。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、スマートカードからＣＡＭにコントロールワードを提供するための改善された方法を提供することにある。
【課題を解決するための手段】
【０００６】
本発明の一態様によれば、スマートカードにおいて、スマートカードから受信機のコンディショナルアクセスモジュールにコントロールワードをセキュアに提供する方法が提案される。受信機は、ユーザとの対話を行うように構成され、例えば、受信機でサービスの選択などが行なわれる。本方法は、スマートカード及びコンディショナルアクセスモジュールのうちの少なくとも１つから多様化データを取得する段階を有する。多様化データは、ユーザとの対話によって定まる。本方法は、多様化関数を用いて暗号化鍵を生成する段階をさらに有する。多様化関数は、多様化データを入力として受け取り、暗号化鍵を出力する関数である。典型的に、多様化関数は、ＸＯＲ関数である。しかしながら、その他の任意の数学関数が用いられてもよい。多様化関数は、検出されたユーザ対話に従って暗号化鍵を生成する。本方法は、暗号化鍵を用いてコントロールワードを暗号化し、暗号化されたコントロールワードを取得する段階をさらに有する。多様化データがスマートカードから取得したものである場合、復号鍵を生成して暗号化されたコントロールワードを復号するために、多様化データは、コンディショナルアクセスモジュールに提供される。本方法は、暗号化されたコントロールワードをコンディショナルアクセスモジュールに提供する段階をさらに有する。
【０００７】
本発明の一態様によれば、受信機のコンディショナルアクセスモジュールにコントロールワードをセキュアに提供するためのスマートカードが提案される。受信機は、ユーザとの対話を行うように構成される。本スマートカードは、第１検出部及び第２検出部のうちの少なくとも１つを具備する。第１検出部は、第１ユーザ対話を検出するように構成され、例えば、受信機でのサービスの選択などが検出される。第１検出部は、第１ユーザ対話によって定まる第１多様化データを生成するようにさらに構成される。第２検出部は、第２ユーザ対話、例えば、受信機でのサービスの選択など、によって定まる第２多様化データをコンディショナルアクセスモジュールから取得するように構成される。本スマートカードは、多様化関数を用いて暗号化鍵を生成するように構成された暗号化鍵生成部をさらに具備する。多様化関数は、第１多様化データ及び第２多様化データのうちの少なくとも１つを入力として受け取る。多様化関数の出力は、暗号化鍵である。本スマートカードは、暗号化鍵を用いてコントロールワードを暗号化し、暗号化されたコントロールワードを取得するように構成される暗号化部をさらに具備する。本スマートカードは、暗号化されたコントロールワードをコンディショナルアクセスモジュールに提供するように構成される。
【０００８】
本発明の一態様によれば、受信機のコンディショナルアクセスモジュールがスマートカードからコントロールワードをセキュアに取得する方法が提案される。受信機は、ユーザとの対話を行うように構成され、例えば、受信機でサービスの選択などが行なわれる。本方法は、コンディショナルアクセスモジュールにおいて、コンディショナルアクセスモジュール及びスマートカードのうちの少なくとも１つから多様化データを取得する段階を有する。多様化データは、ユーザとの対話によって定まる。多様化データがコンディショナルアクセスモジュールから取得したものである場合、暗号化されたコントロールワードを生成するために、多様化データは、スマートカードに提供される。本方法は、多様化関数を用いて復号鍵を生成する段階をさらに有する。多様化関数は、多様化データを入力として受け取り、復号鍵を出力する関数である。典型的に、多様化関数は、ＸＯＲ関数である。しかしながら、その他の任意の数学関数が用いられてもよい。多様化関数は、検出されたユーザ対話に従って復号鍵を生成する。本方法は、スマートカードから暗号化されたコントロールワードを受信する段階をさらに有する。本方法は、復号鍵を用いて暗号化されたコントロールワードを復号し、コントロールワードを取得する段階をさらに有する。
【０００９】
本発明の一態様によれば、スマートカードからコントロールワードをセキュアに取得するための、受信機のコンディショナルアクセスモジュールが提案される。受信機は、ユーザとの対話を行うように構成される。本コンディショナルアクセスモジュールは、スマートカードから暗号化されたコントロールワードを受信するように構成される。本コンディショナルアクセスモジュールは、第１検出部及び第２検出部のうちの少なくとも１つを具備する。第１検出部は、第１ユーザ対話を検出するように構成され、例えば、受信機でのサービスの選択などが検出される。第１検出部は、第１ユーザ対話によって定まる第１多様化データを生成するようにさらに構成される。第２検出部は、第２ユーザ対話、例えば、受信機でのサービスの選択など、によって定まる第２多様化データをスマートカードから取得するように構成される。本コンディショナルアクセスモジュールは、多様化関数を用いて復号鍵を生成するように構成された復号鍵生成部をさらに具備する。多様化関数は、第１多様化データ及び第２多様化データのうちの少なくとも１つを入力として受け取る。多様化関数の出力は、復号鍵である。本コンディショナルアクセスモジュールは、復号鍵を用いて暗号化されたコントロールワードを復号し、コントロールワードを取得するように構成された復号部をさらに具備する。
【００１０】
ユーザと受信機との対話によって定まる多様化データを多様化関数に追加することによって、有利には、ユーザ対話が正確になぞられることを必要とすることで、別のスマートカード又はコンディショナルアクセスモジュールが多様化関数を模倣することを困難とする。その結果、スマートカード及びコンディショナルアクセスモジュールでコントロールワードを暗号化及び復号するために用いられる暗号化鍵及び復号鍵は、それぞれ、スマートカード及びコンディショナルアクセスモジュールに対して固有のものとなり、他のスマートカード及びコンディショナルアクセスモジュールとの共有が不可能となる。
【００１１】
暗号化鍵生成部及び復号鍵生成部において同一の多様化関数を用いることによって、暗号化鍵と復号鍵とがマッチすることを保証する。多様化関数の秘密が守られているので、スマートカードとコンディショナルアクセスモジュールとの間で交換される多様化データは、暗号化を行う必要がない。ハッカーが多様化データを入手できたとしても、復号鍵の生成は不可能である。
【００１２】
ユーザ対話は、例えば、ユーザによる受信機でのサービスの選択である。リモートコントロールによって、又は受信機で直接に、任意のボタン、例えば、ボリューム変更のためのボタン、が押下されるなどのその他のタイプのユーザ対話が検出されてもよい。受信機が外部センサを備えている場合、温度変化、受信機の移動、又は受信機周辺のユーザの動きを検出することもできる。
【００１３】
有利には、請求項２及び８に記載の実施態様によれば、スマートカードでコントロールワードを暗号化するために用いられる暗号化鍵は、以前のコントロールワードから定まる。その結果、有利には、コントロールワードを正確になぞることが必要となるので、他のスマートカードが多様化関数を模倣することはより困難となる。
【００１４】
有利には、請求項３及び９に記載の実施態様によれば、スマートカード内の暗号化鍵は難読化される。有利には、これは、多様化関数の出力、すなわち、暗号化されれた暗号化鍵を解析することによる多様化関数のリバースエンジニアリング成功の可能性を極めて低くする。
【００１５】
有利には、請求項１０に記載の実施態様によれば、暗号化鍵は、多様化関数から取り出すことができない。
【００１６】
有利には、請求項５及び１２に記載の実施態様によれば、コンディショナルアクセスモジュールでコントロールワードを復号するために用いられる復号鍵は、以前のコントロールワードから定まる。その結果、有利には、コントロールワードを正確になぞることが必要となるので、別のコンディショナルアクセスモジュールが多様化関数を模倣することはより困難となる。
【００１７】
有利には、請求項６及び１３に記載の実施態様によれば、コンディショナルアクセスモジュール内の復号鍵は難読化される。有利には、これは、多様化関数の出力、すなわち、暗号化されれた復号鍵を解析することによる多様化関数のリバースエンジニアリングを不可能とする。
【００１８】
有利には、請求項１４に記載の実施態様によれば、復号鍵は、多様化関数から取り出すことができない。
【００１９】
本発明の一態様によれば、スクランブルデータの逆スクランブルを行うための受信機が提案される。本受信機は、例えば、セットトップボックスである。本受信機は、スクランブルデータのうちの第１部分の逆スクランブルを行うように構成された第１逆スクランブル部を具備する。本受信機は、スクランブルデータのうちの第２部分の逆スクランブルを行うように構成された第２逆スクランブル部をさらに具備する。本受信機は、先に記載した複数の特徴のうちの１つ以上を有したコンディショナルアクセスモジュールをさらに具備する。第１逆スクランブル部は、コンディショナルアクセスモジュールによって取得されたコントロールワードを使用して、スクランブルデータのうちの第１部分の逆スクランブルを行うように構成されている。
【００２０】
有利には、スクランブルデータの逆スクランブルに複数のコントロールワードが必要となるので、受信機は、配布された海賊版のコントロールワードでは正しく動作しない。
【００２１】
有利には、請求項１６に記載の実施態様によれば、高ビットレートのスクランブル化ビデオの逆スクランブルは、より高い演算能力を第２逆スクランブル部に要求し、典型的に、ハードウェアとして実装される。低ビットレートのスクランブル化オーディオの逆スクランブルは、低い演算能力しか第１逆スクランブル部に要求せず、典型的に、ソフトウェアとして実装される。２つの逆スクランブル部は、ハードウェアとして実装されても、ソフトウェアとして実装されてもよい。
【００２２】
以下には、本発明の各実施形態がさらに詳細に記載される。しかしながら、それらの実施形態は、本発明の権利範囲の限定を意図したものではない。
【００２３】
本発明の態様は、添付の図面に示された例示的な実施形態を参照することによって、より詳細に説明される。
【図面の簡単な説明】
【００２４】
【図１】本発明の例示的な実施形態の鍵交換基盤の状態の基本概念を示す。
【図２】本発明の例示的な実施形態のスマートカード及びＣＡＭを示す。
【図３】本発明の例示的な実施形態の受信機、例えば、セットトップボックス、を示す。
【図４】本発明の例示的な実施形態のスマートカードで実行される方法の各ステップを示す。
【図５】本発明の例示的な実施形態のスマートカードで実行される方法の各ステップを示す。
【図６】本発明の例示的な実施形態のＣＡＭで実行される方法の各ステップを示す。
【図７】本発明の例示的な実施形態のＣＡＭで実行される方法の各ステップを示す。
【発明を実施するための形態】
【００２５】
本発明は、鍵交換基盤の状態を提供する。スマートカードと受信機のＣＡＭとの間でやりとりされるコントロールワードは、多様化された鍵を用いて暗号化される。典型的に、ＣＡＭは、セットトップボックスなどの受信機に一体化される。しかしながら、ＣＡＭは、テレビ受像機、パーソナルビデオレコーダ、携帯電話、スマートフォン、又はコンピュータ機器などの他のタイプの受信機として実現されてもよい。多様化は、ユーザとセットトップボックスとの対話に基づき、これは、ＣＡＭ、スマートカード、又はその両方で検出される。
【００２６】
鍵交換基盤の状態の基本概念が図１に示されており、これは、コントロールワードＣＷの対称暗号化に基づいている。スマートカード１は、それ自体は既知の方法、例えば、スマートカードに送信されるＥＣＭを介して、１つ以上のコントロールワードＣＷを受信する。スマートカード１は、暗号化鍵ｅｋを使用して、暗号化部１１において、コントロールワードを暗号化する。暗号化されたコントロールワードＥ（ＣＷ）は、ＣＡＭ ２へ送信される。ＣＡＭ ２は、復号鍵ｄｋを使用して、復号部２１において、暗号化されたコントロールワードＥ（ＣＷ）を復号し、コントロールワードを取得する。ＣＡＭで取得されたコントロールワードは、有料テレビ番組などのサービスを逆スクランブルするためにセットトップボックスで使用される。
【００２７】
図２を参照すると、対称鍵ｅｋ及び対称鍵ｄｋは、スマートカード１の暗号化鍵生成部１２内の多様化関数と、ＣＡＭ ２の復号鍵生成部２２内の多様化関数との間のサイクルを作り出す。鍵生成部１２，２２で同一の多様化関数を用いることによって、暗号化鍵ｅｋと復号鍵ｄｋとがマッチすることが保証される。多様化関数の役割は、検出されたユーザ対話に基づいて、暗号化鍵ｅｋ及び復号鍵ｄｋを生成することである。スマートカード１及び／又はＣＡＭ ２からの多様化データｄ１及び／又は多様化データｄ２を、それぞれ多様化関数に追加することによって、多様化データにユーザ対話の指示が含まれる。これは、ユーザ対話が正確になぞられることを必要とすることで、別のＣＡＭが多様化関数を模倣することを困難とする。
【００２８】
典型的に、検出されたユーザ対話は、セットトップボックスの選択されたサービスに基づく。ユーザ対話の検出は、さまざまな手法で実行されてよい。ＣＡＭ ２において、ユーザ対話は、例えば、セットトップボックスがリモートコントロールコマンドを受信したときに、又は、テレビのチャンネルを切り換えるためにセットトップボックスのボタンが押下されたときに検出される。これは、リモートコントロールによって、又はセットトップボックスで直接に、任意のボタン、例えば、ボリューム変更のためのボタン、が押下されるなどの他のタイプのユーザ対話を検出することでも行える。セットトップボックスが外部センサを備えている場合、温度変化、セットトップボックスの移動、又はセットトップボックス周辺の人物の動きを検出することもできる。スマートカード１において、ユーザ対話は、例えば、選択されたサービスの変更を示すＥＭＭ及びＥＣＭの内容の変化を監視することによって検出される。
【００２９】
選択的に、多様化関数は、暗号化鍵ｅｋ及び復号鍵ｄｋを生成するための追加的な入力として、それぞれ、スマートカード１のハッシュ生成部１３のハッシュ化関数とＣＡＭ ２のハッシュ生成部２３のハッシュ化関数との結果を用いる。一般に、ハッシュ化関数は、データを小さなデータム、通常は、一つの整数、に変換する数学関数である。ハッシュ関数によって返された値は、ハッシュ値、ハッシュコード、ハッシュ和、又は、単にハッシュと称される。本発明では、任意の既知のハッシュ化アルゴリズムが使用されてよい。ハッシュ値ｈ１は、スマートカードのハッシュ生成部１３によって生成され、かつハッシュ値ｈ２は、ＣＡＭのハッシュ生成部２３によって生成される。ハッシュ生成部１３，２３のハッシュ化関数は、コントロールワードＣＷ、以前のコントロールワード、及び以前のハッシュ値に基づく計算を実行する。したがって、ハッシュ化関数の結果、すなわち、ハッシュ値ｈ１及びハッシュ値ｈ２は、すべてのコントロールワード（すなわち、現在のコントロールワードＣＷ及び以前のコントロールワード）がハッシュ生成部１３とハッシュ生成部２３とで同一である場合のみ、等しくなることが保証される。ハッシュ値を多様化関数に追加することによって、コントロールワードを正確になぞることが必要となるので、別のＣＡＭが多様化関数を模倣することをより困難とする。
【００３０】
ハッシュ化関数（Ｈ）は、「ハッシュ値＝Ｈ（ＣＷ，以前のコントロールワード，以前のハッシュ値）」と定義される。
【００３１】
ハッシュ化関数は、ハッシュ値に固有の所定値で初期化される。その結果、ハッシュ化関数Ｈは、初期化の後にこの関数によって処理されたすべてのコントロールワードの内容に基づいた出力を生成する。スマートカード１のコントロールワードとＣＡＭ ２のコントロールワードとのわずかな違いは、スマートカード１又はＣＡＭ ２のどちらかでのユーザ対話の新たな検出と、鍵ｅｋ及び鍵ｄｋの生成との後に、鍵の不一致をもたらす。有利には、この機能は、直接応答の紛失に起因した、ハッシュ値及び多様化関数のリバースエンジニアリングを困難とする。
【００３２】
スマートカード１の多様化関数（ＤＩＶ）は、「ｅｋ＝ＤＩＶ（多様化データ，ハッシュ値ｈ１）」と定義される。
【００３３】
ＣＡＭ ２の多様化関数（ＤＩＶ）は、「ｄｋ＝ＤＩＶ（多様化データ，ハッシュ値ｈ２）」と定義される。
【００３４】
選択的に、多様化関数は、スマートカード１及びＣＡＭ ２に格納された共通多様化鍵（ＧＤｋ）を用いて、鍵ｅｋ及び鍵ｄｋの暗号化を行う。故に、多様化関数は、（対称）暗号化を使用する。（対称）暗号化法は、ハッシュ生成部１３からのハッシュ値と、多様化データｄ１及び／又はｄ２とを受け取り、このデータを、例えば、暗号ブロック連鎖（ＣＢＣ）モードで暗号化する。そして、暗号化された鍵は、それそれ、暗号化部１１／復号部１２において、コントロールワードを暗号化／復号する鍵として使用される。
【００３５】
そして、スマートカード１の多様化関数（ＤＩＶ）は、「ｅｋ＝ＥＧＤｋ（ＤＩＶ（多様化データ，ハッシュ値ｈ１））」と定義される。
【００３６】
そして、ＣＡＭ ２の多様化関数（ＤＩＶ）は、「ｄｋ＝ＥＧＤｋ（ＤＩＶ（多様化データ，ハッシュ値ｈ２））」と定義される。
【００３７】
典型的に、多様化関数は、ＸＯＲ関数である。しかしながら、他の任意の数学関数が使用されてもよい。
【００３８】
選択的に、多様化関数は、ホワイトボックス暗号法又はソフトウェアコード難読化技術によって保護されたソフトウェアモジュールとして実装される。そのような保護法は、スマートカード１内の暗号化鍵ｅｋ及びＣＡＭ ２内の復号鍵ｄｋが多様化関数から取り出せないことを保証する。さらに、多様化関数内の中間結果を取り出すこともできない。既知の任意のホワイトボックス暗号法又はソフトウェアコード難読化技術が用いられてよい。
【００３９】
コンディショナルアクセスシステムにおいて、典型的に、スクランブルデータは、多重化されたオーディオ成分及びビデオ成分から成るＤＶＢストリームとしてブロードキャストされる。オーディオ成分は、比較的低いビットレート、例えば、１２８ｋｂｉｔ／ｓ、を有し、一方、ビデオ成分は、比較的高いビットレート、例えば、２０００ｋｂｉｔ／ｓ、を有する。高ビットレートのスクランブル化ビデオを逆スクランブルするためには、ハードウェア逆スクランブラの演算能力が必要となる。低ビットレートのスクランブル化オーディオの逆スクランブルは、低い演算能力で済み、したがって、ソフトウェアによる処理が可能である。
【００４０】
図３は、ＣＡＭ ２を備えた受信機３を示す。受信機３は、例えば、セットトップボックス、又は、ＣＡＭ ２を備えたその他のデバイス、例えば、テレビ受像機、パーソナルビデオレコーダ、携帯電話、スマートフォン、又は、コンピュータ機器など、である。スクランブルデータｓｄ、例えば、ＤＶＢストリームとして受信したスクランブル化されたテレビ番組は、デマルチプレクサ部３０で逆多重化され、スクランブルデータｓｄのオーディオ成分を含んだ第１部分ｐ１と、スクランブルデータｓｄのビデオ成分を含んだ第２部分ｐ２とを得る。オーディオ成分は、比較的低いビットレート、例えば、１２８ｋｂｉｔ／ｓ、を有し、一方、ビデオ成分は、比較的高いビットレート、例えば、２０００ｋｂｉｔ／ｓ、を有する。ブロードキャストストリームには、コントロールワードを取得するためにスマートカード１で必要な１つ以上のＥＣＭがさらに含まれる。ＥＣＭは、デマルチプレクサ部３０において、ブロードキャストストリームから逆多重化され、受信機を介して、スマートカード１に送信される。図３の実施例では、オーディオ成分は、ＣＡＭ ２から取得したコントロールワードを使用して、第１逆スクランブル部３１によって逆スクランブルされる。ビデオ成分は、異なる手法によって、例えば、別のスマートカードから取得したコントロールワードを使用して、又は、スマートカード１又はＣＡＭ ２から取得した別のコントロールワードを使用して、第２逆スクランブル部３２によって逆スクランブルされる。セットトップボックスの出力は、逆スクランブルされたオーディオ成分ｄｐ１と、逆スクランブルされたビデオ成分ｄｐ２とである。
【００４１】
第１逆スクランブル部３１でビデオ成分が逆スクランブルされ、かつ第２逆スクランブル部３２でオーディオ成分が逆スクランブルされてもよい。スクランブルデータｓｄから他の複数の部分が逆多重化されてもよく、第１逆スクランブル部３１でそれらの部分のうちの１つ以上が逆スクランブルされ、かつ第２スクランブル部３２で残りの部分が逆スクランブルされてもよい。
【００４２】
高ビットレートのスクランブル化ビデオを逆スクランブルするためには、ハードウェア逆スクランブラの演算能力が必要となる。低ビットレートのスクランブル化オーディオの逆スクランブルは、低い演算能力で済み、したがって、ソフトウェアによる処理が可能である。したがって、典型的に、第１逆スクランブル部３１は、ソフトウェア逆スクランブラである。典型的に、第２逆スクランブル部３２は、ハードウェア逆スクランブラである。ソフトウェア逆スクランブル部３２を使用可能とするために、典型的に、セットトップボックス３は、ソフトウェアの読込及び実行のためのメモリ及びプロセッサを備える。セットトップボックスのソフトウェアダウンロード及び実行機能を用いて、セットトップボックスのハードウェア逆スクランブル機能にソフトウェア逆スクランブル機能が追加されてもよい。
【００４３】
図４は、本方法の例示的な実施形態の各ステップを示す。ステップ１２０において、コントロールワードＣＷが、例えばＥＣＭを介して、スマートカード１で受信される。コントロールワードＣＷは、ステップ１０３において、暗号化鍵ｅｋを用いて暗号化される。暗号化されたコントロールワードＥ（ＣＷ）は、ステップ１０５で、ＣＡＭ ２に提供される。暗号化鍵ｅｋは、ステップ１０１及びステップ１０２を経て取得される。ステップ１０１において、多様化データｄ１又は多様化データｄ２が、スマートカード１で取得される。多様化データは、ステップ１０２において、多様化関数で使用されて、暗号化鍵ｅｋを生成する。ユーザ対話がスマートカード１で検出されたならば、多様化データｄ１がスマートカードから取得され、ＣＡＭ ２に提供されることによって、ＣＡＭ ２が復号鍵ｄｋを生成可能となる。これに関係して、ステップ１１０において、ユーザ対話がスマートカード１で検出されたか否かが判断され、検出された場合、ステップ１０４で、多様化データｄ１がＣＡＭ ２に提供される。
【００４４】
図４に示されたステップに加えて、図５は、ハッシュ値を生成する選択的なステップ１０６を示す。上記ハッシュ値は、ステップ１０２において暗号化鍵ｅｋを生成するために、多様化関数で使用される。暗号化鍵ｅｋの暗号化を行う選択的なステップが、ステップ１０７として示される。暗号化された暗号化鍵は、ステップ１０３において、コントロールワードＣＷを暗号化するための暗号化鍵として使用される。
【００４５】
図６は、本方法の例示的な実施形態の各ステップを示す。ステップ２０５において、ＣＡＭ ２が、暗号化されたコントロールワードＥ（ＣＷ）をスマートカード１から受信する。暗号化されたコントロールワードＥ（ＣＷ）は、ステップ２０３で、復号鍵ｄｋを使用して復号される。復号されたコントロールワードＣＷは、ＣＡＭ ２を内蔵したセットトップボックスにおいてサービスの逆スクランブルに使用できる。復号鍵ｄｋは、ステップ２０１及びステップ２０２を経て取得される。ステップ２０１において、多様化データｄ１又は多様化データｄ２が、ＣＡＭ ２で取得される。多様化データは、ステップ２０２において、多様化関数で使用されて、復号鍵ｄｋを生成する。ユーザ対話がＣＡＭ ２で検出されたならば、多様化データｄ２がスマートカード１に提供され、スマートカード１が暗号化鍵ｅｋを生成可能となる。これに関係して、ステップ２１０において、ユーザ対話がＣＡＭ ２で検出されたか否かが判断され、検出された場合、ステップ２０４で、多様化データｄ２がスマートカード１に提供される。
【００４６】
図６に示されたステップに加えて、図７は、ハッシュ値を生成する選択的なステップ２０６を示す。上記ハッシュ値は、ステップ２０２において復号鍵ｄｋを生成するために、多様化関数で使用される。復号鍵ｄｋの暗号化の選択的なステップが、ステップ２０７として示される。暗号化された復号鍵は、ステップ２０３において、暗号化されたコントロールワードＥ（ＣＷ）を復号するための復号鍵として使用される。
【符号の説明】
【００４７】
１  スマートカード
１１  暗号化部
１２  暗号化鍵生成部
１３  ハッシュ生成部
１４  第１検出部
１５  第２検出部
２  コンディショナルアクセスモジュール（ＣＡＭ）
２１  復号部
２２  復号鍵生成部
２３  ハッシュ生成部
２４  第１検出部
２５  第２検出部
３  受信機
３０  デマルチプレクサ部
３１  第１逆スクランブル部
３２  第２逆スクランブル部
【図１】
2010193449.tif 000003
【図２】
2010193449.tif 000004
【図３】
2010193449.tif 000005
【図４】
2010193449.tif 000006
【図５】
2010193449.tif 000007
【図６】
2010193449.tif 000008
【図７】
2010193449.tif 000009
【外国語明細書】
2010193449.tif 000010
2010193449.tif 000011
2010193449.tif 000012
2010193449.tif 000013
2010193449.tif 000014
2010193449.tif 000015
2010193449.tif 000016
2010193449.tif 000017
2010193449.tif 000018
2010193449.tif 000019
2010193449.tif 000020
2010193449.tif 000021
2010193449.tif 000022
2010193449.tif 000023
2010193449.tif 000024
2010193449.tif 000025
2010193449.tif 000026
2010193449.tif 000027
2010193449.tif 000028
2010193449.tif 000029
2010193449.tif 000030
2010193449.tif 000031
2010193449.tif 000032