(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6071520
(24)【登録日】2017年1月13日
(45)【発行日】2017年2月1日
(54)【発明の名称】署名検証のための装置および方法
(51)【国際特許分類】
H04L 9/32 20060101AFI20170123BHJP
G09C 1/00 20060101ALI20170123BHJP
H04L 9/10 20060101ALI20170123BHJP
【FI】
H04L9/00 675B
G09C1/00 640D
H04L9/00 621A
【請求項の数】12
【外国語出願】
【全頁数】10
(21)【出願番号】特願2012-274587(P2012-274587)
(22)【出願日】2012年12月17日
(65)【公開番号】特開2013-128280(P2013-128280A)
(43)【公開日】2013年6月27日
【審査請求日】2015年12月16日
(31)【優先権主張番号】11306683.1
(32)【優先日】2011年12月16日
(33)【優先権主張国】EP
(73)【特許権者】
【識別番号】501263810
【氏名又は名称】トムソン ライセンシング
【氏名又は名称原語表記】Thomson Licensing
(74)【代理人】
【識別番号】100079108
【弁理士】
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【弁理士】
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【弁理士】
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【弁理士】
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【弁理士】
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】ジャン−マリー シュタイヤー
(72)【発明者】
【氏名】ディディエ ルースタイド
【審査官】
脇岡 剛
(56)【参考文献】
【文献】
特開2008−175648(JP,A)
【文献】
特表2001−516532(JP,A)
【文献】
特開平09−121340(JP,A)
【文献】
米国特許第05625693(US,A)
【文献】
特開2009−267605(JP,A)
【文献】
特開2004−343272(JP,A)
【文献】
特開2005−136470(JP,A)
【文献】
特開2001−084145(JP,A)
【文献】
米国特許出願公開第2008/0189539(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/32
G09C 1/00
H04L 9/10
(57)【特許請求の範囲】
【請求項1】
デジタルデータのデジタル署名を検証するための装置であって、
複数の異なる署名エンティティの各々の署名鍵に対応する複数の異なる検証鍵を格納するように構成された第1のメモリと、
前記デジタルデータ及び前記デジタル署名を格納するように構成された第2のメモリであって、前記デジタルデータは、前記装置のブートコードまたは別のデジタルデータを認証するために使用されることになる第2段階の認証鍵を含み、前記デジタル署名は、任意の署名エンティティの署名鍵を用いて提供される、第2のメモリと、
前記装置の電源を入れた、または前記装置をリセットしたとき、前記デジタルデータおよび前記デジタル署名を受信し、前記複数の異なる検証鍵のうちの第1の検証鍵を用いて前記デジタル署名を検証するように構成された処理手段と
を備え、
前記処理手段がさらに、前記第1の検証鍵を用いた検証が不成功である場合、前記複数の異なる検証鍵のうちの第2の検証鍵を用いて前記デジタル署名を検証するように構成される、前記装置。
【請求項2】
前記処理手段は、前記デジタル署名の検証に成功するまで、または前記デジタル署名の検証がすべての格納された検証鍵を使用して不成功になるまで、前記デジタル署名および前記格納された検証鍵のそれぞれを使用して、前記デジタル署名を検証するように構成される、請求項1に記載の装置。
【請求項3】
前記処理手段は、前記第1の検証鍵を用いて前記デジタル署名の検証に成功しない場合、前記第2の検証鍵を用いて前記デジタル署名を処理することによって前記デジタル署名を検証するように構成される、請求項1に記載の装置。
【請求項4】
前記処理手段は、前記第1の検証鍵および前記第2の検証鍵を並行して使用して前記デジタル署名を検証するように構成される、請求項1に記載の装置。
【請求項5】
前記ブートコードが組み込まれる、請求項1に記載の装置。
【請求項6】
前記デジタル署名の検証に成功した場合に前記ブートコードを実行するように構成された第2の処理手段をさらに備える、請求項5に記載の装置。
【請求項7】
前記処理手段はさらに、前記デジタル署名の検証に成功すると、現在の限定受信システムを識別し、限定受信特定機能を起動するように構成される、請求項1に記載の装置。
【請求項8】
前記第1のメモリは書込み不可能である、請求項1に記載の装置。
【請求項9】
前記装置は、限定受信の受信機であり、前記署名エンティティは、限定受信プロバイダである、請求項1に記載の装置。
【請求項10】
装置のブートコードまたは別のデジタルデータを認証するために使用されることになる第2段階の認証鍵を含むデジタルデータのデジタル署名を検証するための方法であって、処理手段において、前記装置に電源を入れた、または前記装置をリセットしたとき、
前記装置の第1のメモリから前記デジタルデータおよび前記デジタル署名を受信するステップであって、前記デジタル署名は、任意の署名エンティティの署名鍵を用いて提供される、ステップと、
複数の異なる署名エンティティの各々の署名鍵に対応する複数の異なる検証鍵を格納するように構成された、前記装置の第2のメモリから、前記複数の異なる検証鍵のうちの第1の検証鍵を取得することと、
前記取得した第1の検証鍵を用いて前記デジタル署名を検証することと、
前記検証が不成功であって、前記複数の異なる検証鍵のうちで試していない検証鍵がある場合、前記検証が成功するまで異なる検証鍵を用いて前記デジタル署名を検証することと、
によって前記デジタル署名を検証するステップと
を含む、前記方法。
【請求項11】
前記取得することおよび前記検証することは、並行して行われる、請求項10に記載の方法。
【請求項12】
前記取得することおよび前記検証することは、前記デジタル署名の検証に成功するまで、または前記デジタル署名の検証が利用可能なすべての検証鍵を使用して不成功になるまで、繰り返して行われる、請求項10に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般にセキュリティに関し、詳細にはデジタル署名の検証に関する。
【背景技術】
【0002】
この節は、以下に説明するおよび/または特許請求されている本発明の様々な態様に関連する可能性がある当技術分野の様々な態様を読者に紹介することを目的としている。この説明は、本発明の様々な態様をより良く理解する助けとなるように、読者に背景情報を提供するのに役立つと考えられる。したがって、これらの記述は、従来の技術の承認としてではなく、このような観点で読まれるべきであることを理解されたい。
【0003】
例えば高い価値のあるテレビ番組などの、デジタルコンテンツを保護するために、いわゆる限定受信(Conditional Access、CA)技術を使用することが、当技術分野ではよく知られている。このような技術は、様々な暗号プロトコルを使用してデジタルコンテンツを暗号化し、後に復号化し、さらに無許可の使用から端末を守る。
【0004】
CA技術は、CAプロバイダによってユーザに直接または間接的に提供された何らかの(通常、取り外し可能な)セキュリティ要素を使用して、例えばテレビおよびいわゆるセットトップボックス(STB)などの受信機に実装される。このようなセキュリティ要素の好ましい実装がスマートカードであり、これは当技術分野でよく知られているものである。
【0005】
CA保護されたデジタルコンテンツを受信するためには一般に料金を支払う必要があること、および代金を支払わずにCA保護されたデジタルコンテンツを受信するために、著作権侵害者がCAシステムを「ハッキング」しようとすることは非常によく起こることであると理解されるであろう。スマートカードがますます安全になる、すなわちますますハッキングしづらくなるにつれて、著作権侵害者は受信機を直接攻撃する傾向にある。
【0006】
当然ながら、受信機製造業者は、サポートするCAプロバイダによって要求され、指定される一定のセキュリティ機能を実装すること、および特に以下を実装するメインICのCA専用版を使用することによって、その受信機のセキュリティを向上させることに取り組んできた。すなわち、
・ 128ビットの対称鍵として実装することができる、秘密ルート鍵(SRK)。
・ 有利には非対称の1024または2048ビットRSA鍵として実装することができる、公開認証鍵(PUAK)。
【0007】
チッププロバイダによって実装することができるこうしたセキュリティ機能は、提供される特定のCAのセキュリティ要件を満たさなければならない。第1のCAプロバイダAが第2のCAプロバイダBとは異なるセキュリティ要件を有する可能性は非常に高い。これは、Aのためにカスタマイズされたコンポーネントが、Bには役に立たない、またはBには受け入れられない可能性があることを意味する可能性があり、さらに、CAプロバイダは通常その解決策を他のCAプロバイダに伝えない。
【0008】
さらに、CAプロバイダは商業上の競争相手であることが多いので、CAプロバイダが共通のセキュリティ要件のセットに同意することは難しい可能性がある。この商業上の対抗意識にこのように後押しされてCAプロバイダはそのセキュリティ要件を向上させ、それを非公開にしている。
【0009】
このために、あるCAプロバイダは、チッププロバイダの「標準的」セキュリティ機能の代わりに使用するようにチッププロバイダに独自のセキュリティブロックを提供する。
【0010】
このように様々なCAプロバイダが様々なセキュリティ機能を提供することがわかる。
【0011】
またペイTVオペレータのようなCAプロバイダの顧客は、複数のCAプロバイダからの製品を利用できることに関心があることが理解されるであろう。しかしながらこれまでのところ、オペレータがCAプロバイダを選択すると、次の理由により新しいCAプロバイダに切り替えることは困難である。すなわち、
・ 導入した受信機を交換するには費用がかかる。古い受信機と新しい受信機の両方が同じように機能できることを保証するようにこれを行うべきである。
・ セキュリティを低下させる危険を冒すことなく、要求されるセキュリティ機能を有効にするプラットフォームを新しいCAプロバイダに提供することは困難である。
【0012】
このために、ペイTVオペレータは、同じ受信機ハードウェアが異なるCAシステムで使用できるように、CAプロバイダからできるだけ独立していることができることを希望し、したがって、様々なセキュリティ要件が個々にサポートされる。
【0013】
各CAプロバイダのセキュリティ機能、すなわちセキュリティブロックが、チップ製造業者によって提供されるチップに統合される場合、受信機が複数のCAプロバイダに対応しているという要件を満たすことができる。
【0014】
SW認証チェーン
例えば受信機に組み込まれたソフトウェア(または第2段階の認証鍵)が有効であることを、電源を入れたときに検証することによって、許可されたソフトウェアのみが受信機にインストールされることを保証するために、有利にはCAプロバイダによって保持されるプライベート非対称鍵(PRAK)を使用してソフトウェア(または第2段階の認証鍵)をデジタル署名することが知られている。電源を入れると、受信機は、当技術分野でよく知られているように、PRAKに対応するその公開認証鍵(PUAK)を使用して、受信機に組み込まれたソフトウェア(または第2段階の認証鍵)の署名を確認する。
【0015】
CAプロバイダにとってのPUAKは、CAプロバイダのセキュリティ要件を満たすためのチップのカスタマイズの一部である。
【発明の概要】
【発明が解決しようとする課題】
【0016】
これまでのところ、単一CAプロバイダのPUAKはチップに格納される。これは、別のCAプロバイダの他のすべてのセキュリティ機能がチップに実装されても、チップが複数のCAシステムに対応することはできないことを意味する。
【0017】
したがって、受信機が複数のPUAKを格納および使用できるようにする解決策の必要がある。本発明は、このような解決策を提供する。
【課題を解決するための手段】
【0018】
第1の態様では、本発明は、デジタルデータのデジタル署名を検証するための装置を対象とする。この装置は、第1の検証鍵を格納するように構成された第1のメモリと、デジタルデータを格納するように構成された第2のメモリであって、デジタルデータは、装置のブートコードまたは別のデジタルデータを認証するために使用されることになる第2段階の認証鍵を含む、第2のメモリと、装置の電源を入れた、または装置をリセットしたとき、デジタルデータおよびデジタル署名を受信して、第1の検証鍵を用いてデジタル署名を処理することによってデジタル署名を検証するように構成された処理手段とを備える。さらに第1のメモリは、第2の検証鍵もまた格納するように構成され、第1の検証鍵および第2の検証鍵は、それぞれ第1の署名エンティティおよび第2の署名エンティティの署名鍵に対応し、さらに処理手段は、第2の検証鍵を用いてデジタルデータを処理することによってデジタル署名を検証するように構成される。
【0019】
第1の好ましい実施形態では、第1のメモリは、複数の検証鍵を格納するように構成される。処理手段は、デジタル署名が検証に成功するまで、またはデジタル署名が格納されたすべての検証鍵を使用して不成功になるまで、デジタル署名および格納された検証鍵のそれぞれを使用してデジタル署名を検証するように構成されることが有利である。
【0020】
第2の好ましい実施形態では、処理手段は、第1の検証鍵を使用してデジタル署名が検証に成功しない場合、第2の検証鍵を用いてデジタル署名を処理することによって、デジタル署名を検証するように構成される。
【0021】
第3の好ましい実施形態では、処理手段は、第1の検証鍵および第2の検証鍵を並行して使用して署名を検証するように構成される。
【0022】
第4の好ましい実施形態では、ブートコードが組み込まれる。装置はさらに、デジタル署名が認証に成功した場合にブートコードを実行するように構成された第2のプロセッサを備えることが有利である。
【0023】
第5の好ましい実施形態では、プロセッサはさらに、デジタルデータの検証に成功すると、現在のCAシステムを識別して、CA特定機能を起動するように構成される。
【0024】
第6の好ましい実施形態では、第1のメモリは書込み不可能である。
【0025】
第2の態様では、本発明は、装置のブートコードを含むデジタルデータのデジタル署名、または別のデジタルデータを認証するために使用される第2段階の認証鍵を検証するための方法を対象とする。装置の電源を入れた、または装置をリセットしたとき、処理手段がデジタルデータおよびデジタル署名を受信し、検証鍵を取得すること、および取得した検証鍵を用いてデジタル署名を処理することによりデジタル署名を検証することによって、複数回、デジタル署名を検証する。複数回のそれぞれには、異なる検証鍵が取得され、使用される。
【0026】
第1の好ましい実施形態では、取得するステップおよび検証するステップは、並行して行われる。
【0027】
第2の好ましい実施形態では、取得するステップおよび検証するステップは、デジタル署名の検証に成功するまで、またはプロセッサが利用可能なすべての検証鍵を試して失敗するまで、繰り返して行われる。
【0028】
次に、本発明の好ましい特徴について、非限定的な例として、添付の図面を参照して説明する。
【図面の簡単な説明】
【0029】
【
図1】本発明の好ましい実施形態に係る受信機を示す図である。
【
図2】本発明の好ましい実施形態により、ソフトウェアまたは第2段階の認証鍵の署名の検証のための方法を示す図である。
【発明を実施するための形態】
【0030】
本発明の主要な発明の概念は、複数の限定受信(CA)プロバイダから発信される署名を検証することができるように複数の認証鍵(PUAK)を格納するCAシステムの受信機を提供することである。この受信機は、好ましくはセットトップボックス(STB)であるが、テレビなど、他のいかなる好適な装置であることも可能である。
【0031】
図1は、本発明の好ましい実施形態による受信機を示している。受信機100は、セキュアチップ(secured chip)102と、第1の(好ましくは不揮発性)メモリ106とを備えている。図には本発明に必要とされる特徴のみを示していることを理解されたい。
【0032】
第1のメモリ106は、好ましい実施形態ではソフトウェア(以下、一例として使用する)であり、有利には受信機がオンにされるときに、または受信機がリセットされるときに使用されるいわゆるブートコードである、デジタルデータ107と、ソフトウェアのデジタル署名108とを格納する。ソフトウェア107および署名108は、単一ファイルの一部であることが好ましい。またデジタルデータ107は、第2段階の認証鍵である場合もある。
【0033】
効率の理由から、セキュアチップ102は、セキュリティプロセッサ103と、メインプロセッサ104とを備えることが好ましい。セキュリティプロセッサ103は、以下に説明するように、ソフトウェアの署名108を検証するように構成される。セキュアチップ102はさらに、第2のメモリ105、好ましくは複数の認証鍵(PUAK)を保持する書込み不可能な、すなわちリードオンリメモリ(ROM)を備える。
図1では、2つのPUAK、すなわちPUAK AおよびPUAK Bのみがある。しかしながら、少なくともセキュアチップを使用することができるCAプロバイダと同数のPUAKを格納することが有利であることは理解されるであろう。一部のCAプロバイダは、そのソフトウェアに複数の署名を提供するために、複数の鍵を使用することができる。
【0034】
セキュリティプロセッサ103には、署名108の検証にどのPUAKを使用すべきかがわからないので、これまでの説明の受信機100は、複数のCAプロバイダに対応するには十分ではない。
【0035】
図2は、本発明の好ましい実施形態によるソフトウェアの署名108の検証の方法を示している。
【0036】
ステップS21では、受信機は、オンにされ、またはリセットされ、受信機は、第1のメモリ106に格納された、認証されることになるソフトウェア107に注意を向けることを要求される。この時点の受信機は、どのエンティティがソフトウェアの署名108を提供したかがわからず、そのためどのPUAKを使用すべきかがわからないことを理解されるであろう。
【0037】
セキュリティプロセッサ103は、セキュアチップ102の制御を行う(ステップS22)。ソフトウェア107および署名108は、次に第1のメモリ106からセキュアチップ102へロードされる(ステップS23)。
【0038】
セキュリティプロセッサ103は次に、第2のメモリ105からPUAKをロードし(ステップS24)、これを使用して署名108を検証する(ステップS25)。
【0039】
ステップS26において検証が成功する、すなわち「Y」の場合、次にソフトウェアコードはステップS27において使用され、検証方法は終了する。
【0040】
一方、ステップS26において検証が成功しない、すなわち「N」の場合、さらなるPUAK、すなわち署名108の検証に使用されていないPUAKがあるかどうかが検証される。
【0041】
ステップS28においてそれ以上署名がない、すなわち「N」の場合、検証は失敗し(ステップS29)、このソフトウェアを検証することができないのでこれを使用すべきではなく、検証方法は終了する。ステップS28において試されていない署名がある、すなわち「Y」の場合、ステップS25において第2のメモリから次のPUAKがロードされる。
【0042】
検証方法が終了すると、セキュリティプロセッサ103は、セキュアチップの制御をメインプロセッサ104に戻すことができる。データが第2段階の認証鍵である場合、セキュアチップは、認証された第2段階の認証鍵を使用して、第2段階の認証を行うことができる。
【0043】
言い換えれば、この方法は、格納されたPUAK鍵を続けて(繰り返して)試して、ソフトウェアの署名を検証する。PUAKが署名を検証する場合、ソフトウェアは検証に成功し、署名を検証するPUAKがない場合、ソフトウェアは検証に成功しない。
【0044】
当業者は理解するであろうが、少なくとも2つのPUAKを並行して試すことも可能であり、重要な点は、1つのPUAKがソフトウェアの署名を検証する場合、ソフトウェアは検証に成功するということである。
【0045】
したがって、本発明は、ソフトウェアの署名が複数の署名者のいずれかによって提供された可能性があるとき、受信機がソフトウェアの署名を検証する方法を提供することができるということが理解されるであろう。どの鍵を使用すべきかを知る方法はないと考えられていたので、これまでのシステムではこれは可能ではなかったこともまた理解されるであろう。したがって本発明は、これまで未解決の重要な技術的問題に斬新で驚くべき解決策を提供する。さらに、本発明は、使用されるCAシステムを識別できるようにすることもでき、次に受信機100においてCA特定機能の起動を可能にする。
【0046】
この方法は、ソフトウェアコードの検証、または実際には内部メモリからダウンロードされるデジタルデータに、決して限定されないことを理解されるであろう。
【0047】
この説明および(必要に応じて)特許請求の範囲および図面に開示する各特徴は、個々に、または任意の適切な組合せで提供されることが可能である。ハードウェアに実装されるように記載した特徴は、ソフトウェアに実装されることも可能であり、逆もまた同様である。特許請求の範囲に表示する参照符号は、説明のためにすぎず、特許請求の範囲への制限的効果はないものとする。
<付記1>
デジタルデータのデジタル署名を検証するための装置であって、
第1の検証鍵を格納するように構成された第1のメモリと、
デジタルデータを格納するように構成された第2のメモリであって、前記デジタルデータは、装置のブートコードまたは別のデジタルデータを認証するために使用されることになる第2段階の認証鍵を含む、第2のメモリと、
装置の電源を入れた、または装置をリセットしたとき、前記デジタルデータおよび前記デジタル署名を受信し、前記第1の検証鍵を用いて前記デジタル署名を処理することによって、前記デジタル署名を検証するように構成された処理手段と
を備え、
前記第1のメモリがさらに、第2の検証鍵も格納するように構成され、前記第1の検証鍵および前記第2の検証鍵はそれぞれ第1の署名エンティティの署名鍵および第2の署名エンティティの署名鍵に対応し、
前記処理手段がさらに、前記第2の検証鍵を用いて前記デジタルデータを処理することによって前記デジタル署名を検証するように構成される
ことを特徴とする装置。
<付記2>
前記第1のメモリは、複数の検証鍵を格納するように構成されることを特徴とする付記1に記載の装置。
<付記3>
前記処理手段は、前記デジタル署名が検証に成功するまで、またはデジタル署名が格納されたすべての検証鍵を使用して不成功になるまで、前記デジタル署名および前記格納された検証鍵のそれぞれを使用して、前記デジタル署名を検証するように構成されることを特徴とする付記2に記載の装置。
<付記4>
前記処理手段は、前記第1の検証鍵を用いて前記デジタル署名が検証に成功しない場合、前記第2の検証鍵を用いて前記デジタル署名を処理することによって前記デジタル署名を検証するように構成されることを特徴とする付記1に記載の装置。
<付記5>
前記処理手段は、前記第1の検証鍵および前記第2の検証鍵を並行して使用して前記署名を検証するように構成されることを特徴とする付記1に記載の装置。
<付記6>
前記ブートコードが組み込まれることを特徴とする付記1に記載の装置。
<付記7>
前記デジタル署名が認証に成功した場合に前記ブートコードを実行するように構成された第2の処理手段をさらに備えることを特徴とする付記6に記載の装置。
<付記8>
前記処理手段はさらに、前記デジタルデータの検証に成功すると、現在のCAシステムを識別し、CA特定機能を起動するように構成されることを特徴とする付記1に記載の装置。
<付記9>
前記第1のメモリは書込み不可能であることを特徴とする付記1に記載の装置。
<付記10>
装置のブートコードまたは別のデジタルデータを認証するために使用されることになる第2段階の認証鍵を含むデジタルデータのデジタル署名を検証するための方法であって、処理手段において、前記装置に電源を入れた、または前記装置をリセットしたとき、
前記デジタルデータおよび前記デジタル署名を受信するステップと、
検証鍵を取得し、
前記取得した検証鍵を用いて前記デジタル署名を処理することによって前記デジタル署名を検証すること
によって前記デジタル署名を複数回検証するステップと
を含み、
前記複数回のそれぞれに、異なる検証鍵が取得され、使用されることを特徴とする方法。
<付記11>
前記取得するステップおよび前記検証するステップは、並行して行われることを特徴とする付記10に記載の方法。
<付記12>
前記取得するステップおよび前記検証するステップは、前記デジタル署名が検証に成功するまで、または前記プロセッサが利用可能なすべての検証鍵を試して不成功になるまで、繰り返して行われることを特徴とする付記10に記載の方法。