【文献】
中村智久,他,PC搭載セキュリティチップ(TPM)の概要と最新動向,情報処理,日本,情報処理学会,2006年 5月15日,第47巻,第5号,pp.473−478
【文献】
長谷和幸,時刻認証 認証の基準となる「時刻」と証明すべき内容をしっかり理解,日経NETWORK,日本,日経BP社,2008年 8月28日,第101号,pp.110−113
(58)【調査した分野】(Int.Cl.,DB名)
前記デバイスは、前記WTRUの前記TPMによるティック・スタンピングが生じた時の真の時刻の推定範囲を証明するために、前記精度ステートメントを使用するようにさらに構成されたことを特徴とする請求項6に記載のデバイス。
無線送受信ユニット(WTRU)および時刻標準機関(TA)を含む無線通信システムにおいて時刻値を保護する方法であって、前記方法は、前記WTRUの信頼されたプラットフォームモジュール(TPM)で、
データDについてのタイムスタンプを、前記時刻標準機関(TA)に要求するステップと、
第1の時刻t_aにおいて前記TAにより生成された、データDについてのタイムスタンプを前記TAから受信するステップと、
前記受信したタイムスタンプおよび前記TPMのティックカウンタ値(TCV)(t)に基づいてティックスタンプを生成するステップと、
前記ティックスタンプを前記TAに送信するステップと、
第2の時刻t_bにおいて前記TAにより生成され、およびt_a≦T≦t_b、ここでT:=T(TCV(t))である、の関係をアサートしている信頼された時刻ステートメントを表している、精度ステートメント(AS)(t_a、TCV(t)、t_b)を前記TAから受信するステップと
を備えたことを特徴とする方法。
前記WTRUの前記TPMによるティック・スタンピングが生じた時の真の時刻の推定範囲を証明するために、前記精度ステートメントを使用するステップをさらに備えたことを特徴とする請求項9に記載の方法。
【発明を実施するための形態】
【0015】
以下言及する際、用語「WTRU(無線送受信ユニット)」は、UE(ユーザ装置)、移動局、固定/モバイル加入者ユニット、ページャ、携帯電話、PDA(携帯情報端末)、コンピュータ、または無線環境で動作可能な他の任意のタイプのユーザデバイスを含むが、これだけに限定されない。以下言及する際、用語「基地局」は、Node−B、サイトコントローラ、AP(アクセスポイント)、または無線環境で動作可能な他の任意のタイプのインターフェイスデバイスを含むが、これだけに限定されない。以下言及する際、用語「SIM」は、SIM ICC、USIM、UICC(汎用集積回路カード)、RUIM(リムーバブルユーザ識別モジュール)、またはWTRUの識別情報を含む他の任意のリムーバブルメディアを含む。簡単にするため、以下、TPMまたはそのモバイル変形体のMTMを同義的に言及する。
【0016】
定義上、ティック・スタンプとは、TPMによってもたらされる時刻ステートメントであるのに対し、タイムスタンプとは、外部のTA(時刻標準機関)によってもたらされる時刻ステートメントである。TAは、時刻ステートメントの一定の精度を保証するために使用することができる。ティック・スタンプは、ティック・カウンタがリセットされた時刻に関連した既知の時間単位数とすることができるのに対し、タイムスタンプは実際の実時間値である。
【0017】
TPM、またはTPMのモバイル変形体のMTM(モバイルの信頼されたモジュール;Mobile Trusted Module)は、安全に保護された読出し専用のTCV(ティック・カウンタ値;Tick Counter Value)を提供し、そのティック・カウンタ値は、TPMを備えるデバイスが新たな起動サイクルを開始することなどの特定のイベント時にゼロで初期化される。このTCVは、できるだけ長く有効であり続ける。以前のTCVが(例えば電源異常が原因で)失われたために、または新たなTCV始点を余儀なくさせるサービスプロバイダとの新たな契約により、新たなTCVが必要な場合には、TPMの乱数発生器により、新たな一意のTSN(ティック・セッション・ノンス;Tick Session Nonce)値を生成する。外部エンティティと通信する際、一定のTSN値を使用するこの期間をティック・セッションと呼ぶ。このティック・セッションは、デバイスによって発行される時刻ステートメントに関する一意のセキュリティ・コンテキストを提供する。TCGの設計の根底にある前提は、ティック・セッションごとに、他のセキュアな時間スケールに対して少なくとも1つの外部接続が提供されることである。このことは、ティック・カウンタが十分正確であるという条件で、必要なだけの数のタイムスタンプをTPMに適用させるための要件を満たすのに十分である。
【0018】
TCGの標準によって提供されるセキュアタイム機能の全体の時間機能は、以下の機能的構成要素と、データ構造と、コマンドと、に依存する。タイミング・ティック(Timing Ticks)は、あらかじめ定義されたTIR(ティック・インクリメント率;Tick Increment Rate、ミリ秒単位)によりティック・カウンタ値(TCV)を維持しインクリメントするための、任意のプラットフォーム上のTPMの強制的機能(mandatory capability)を包含する。この仕様は、TPM内にティック・カウンタを実装するために必要な機構についての要件、または、TPMがプラットフォーム上のパワーサイクルにわたり、もしくは様々なパワーモードにおいてティック・カウンタをインクリメントする能力についての要件を設けない。ただし、各ティック・セッションの開始時に、TCVは0に設定する必要がある。TPMが、TIRに従ってTCVをインクリメントする能力を失う場合、そのTPMは新たなティック・セッションを開始する必要がある。これが起こる場合、そのティック・セッションは実装形態に従って決定され、プラットフォームに固有である。特に、このティック・セッションは、必ずしもTPMの初期化サイクルと同一とは限らない。
【0019】
TCGの仕様は、TPMがティックカウントの改ざん(tampering)を発見する場合、明示的プロセスを要求することに留意すべきである。この場合、TPMはこの改ざんを攻撃として処理し、あたかもセルフテストが失敗したかのように、それ以上のTPM処理をシャットダウンしなければならない。
【0020】
TSNは、個々の新たなティック・セッションの開始時にTPMの内部乱数発生器によって生成され、各ティック・セッションの終了時にすべてゼロに強制される。
【0021】
CURRENT_TICKS TPM構造は、1つの構造の中にTCVと、TSNと、TIRとを含む特性を有する。タイミング・ティックの機能で動作するすべてのTPMコマンドにおいては、この構造のみが使用される。これは、そのようなすべての動作においてティック・セッションの識別が維持されることを保証する。さらに、これは、TCV(差)とTIRとを掛けることにより実時間への関連付けを可能にし、精度(例えば、ずれ)を評価する基礎となる。TPM構造の定義上、CURRENT_TICKSは操作に対してセキュアである。ただし、TPMの外部でデータが使用される場合には、ティック・セッションおよびTIRへの、これらの関連性を維持することはCURRENT_TICKSデータ構造の責任である。
【0022】
TPM_GetTicksコマンドは、CURRENT_TICKS構造をデータ構造として返す。このコマンドは公開されており、認証を必要としないことに留意されたい。
【0023】
TPM_TickStampBlobコマンドは、データブロブ(data blob)についてのティック・スタンプを作成するために使用される。このコマンドは、例えば使用される署名鍵がロードされた認証セッション内でこのコマンドを呼び出すことによりその実行に関して認証を必要とする署名操作(signing operation)である。実際に署名されるデータは、このコマンドの鍵処理入力パラメータに含まれる署名方式によって決まる。
【0024】
次いでこの操作は、(大括弧内でさらに使用するための略称を伴う)以下のデータについてデジタル署名を作成する。特定の「固定」(fixed)データフィールド内に、TPM_SIGN_INFOデータ構造によって具体化される署名情報、ASCIIストリング「TSTP」が挿入され、この署名がティック・スタンプであることを示す。[D(blob)]は、ティック・スタンプされるブロブのハッシュ値(タイプTPM_DIGESTのdigestToStamp)である。このダイジェストを生成するのは、発呼者(caller)の責任である。外部ノンス(Ne)は、リプレイ攻撃を防ぐために使用する、外部から提供される20バイトの値である。発呼者は、この外部ノンスのために任意の値を挿入することができる。CURRENT_TICKS内のデータ、すなわちTCVと、TSNと、TIRとを使用することもできる。
【0025】
以下、表記TS[Key](D(blob),Ne,TCV,TSN,TIR)を使用するが、ときとして混乱が生じる可能性がなく、議論の進め方の中で一部のパラメータが何の役割も果たさない場合に、TS(D,TCV)、TS[Key](TCV,TSN)等の短縮した変形体で使用する。エンティティの複数のインスタンスが使用される場合には、TCV_1、TSN_a、D(blob)_1やD_1、TS_1,...,TS_n等の添え字表記を使用する。現実の物理的時刻は、t_1,...,t_nとして示す。ある実時間におけるティック・カウンタの値は、TCV(t)として記す。
【0026】
以下、TPM_TickStampBlobコマンドおよびTPM_GetTicksコマンドを単に呼び出し、実行することに関連する時間的誤差は無視する。つまり、実時間tにおいていずれかのコマンドを呼び出すとき、そのコマンドはTS(TCV(t))、TCV(t)をそれぞれ返す。このことは、TIR対TCV取出し遅延(fetching delay)の比率、すなわち、コマンドが現在のTCVを取得することができる待ち時間に依拠する、一定の確度でのみ真実であることに留意されたい。これは、プラットフォーム上でのTCVと実時間との内的関連付けが区分的に1対1であり、TCVが一定値を有する期間にわたり、次式のようにT(TCV)として表すことができることを意味する。
|T(TCV)|=TIRであれば、T(TCV):=[t:TCV(t)=TCV] 等式1
【0027】
一定のTCVの間隔は、TCVの様々な値に対して別々(disjointed)であり、TCV_1<=TCV_2のときに限り、一定のTCVの1組の間隔についての完全な順序付けを引き起こす場合にT(TCV_1)<=T(TCV_2)を定めることができる。実時間を一定のTCVの間隔に関係させるステートメントは、T(TCV)内のあるsに関し、s<=tのときかつそのときに限り、T(TCV)<=tによって定義される。つまり、T(TCV)<=tは、tが間隔T(TCV)の右または中にあることを意味する。
【0028】
TCGの仕様は、標準ではない情報を提供するコメントにおいて、TCVを実時間に関連付けるための1つの方法を提供する。その方法は、TStamp(data,t)で示す任意のデータのタイム・スタンピングを実行することができる外部の時刻標準機関(TA)を呼び出す。この仕様は以下の事項を規定する。まず、プラットフォームPが、ある任意の知られているデータについて、時間t_1においてTS(TCV(t1))を生成する。このティック・スタンプは、直ちにTAに送信される。次に、そのTAが、時間t_aにおいて、タイムスタンプTStamp(TS(TCV(t_1)),t_a)を生成し、それをPに送り返す。次いで、PはそのタイムスタンプをTAから受信し、AS(TCV(T_1),t_a,TCV(t_2)):=TS(TStamp(TS(TCV(t_1)),t_a),TCV(t_2))を直ちに生成する。これは、以下の時間的結合関係を外部の検証者に証明するために使用することができる署名されたアサーションである。
T_1<=t_a<=T_2、ただし、T_1/2:=T(TCV(t_1/2))である。 等式2
【0029】
この例では、時間t_aについての精度ステートメントを示すために表記AS(t_a)を導入する。この精度ステートメントは、デバイス上に記憶され、タイムスタンプをテストする当事者や他のプラットフォームなど、このステートメントを必要とする任意の場所に配信されることができる。T_1とT_2との差は、プラットフォームからTAへの往復時間(round trip time)に等しく、後の実時間に対する実際のTCVの最大時間差を推定するために使用することができる。この差は、次式に示すよりも大きくはない。
d(T_1,T_2):={sup|t_1−t_2|;ただし、t_1/2はT_1/2の中にある} 等式3
【0030】
TPMのプラットフォーム証明書と、(TAからの証明書を含む)他のすべての証明書との組み合わせで、このデバイスは、自らの時刻が信頼された情報源から生じること、ならびに、ASおよびプラットフォーム固有のクロックのずれに基づいて実時間に対する最大差が何かを論証することができる。プラットフォームは、ティック・スタンプと、TAからのタイムスタンプと、信頼されたコンピューティングの他の方法とを使用し、RTC(実時間クロック;Real Time Clock)値、および特定のT(TCV)に対するそれらの値の関係についての信頼できるアサーションを行うことができる。これらのアサーションは、TTS(信頼された時刻ステートメント:trusted time statement)と呼ぶ。
【0031】
図1は、信頼できるローカル時刻を確立するように構成されるWTRU100の図の一例である。このWTRU100は、拡張SIM ICC105と、プラットフォーム・プロセッサ108と、アプリケーション・プロセッサおよびSW110と、通信プロセッサ115と、データ用外部メモリ120と、を含む。アプリケーション・プロセッサ110は、DRM(デジタル著作権管理)エージェント(図示せず)を含むことができる。
【0032】
拡張SIM ICC105は、汎用SIM ICCの一般的に知られている機能を実行するように構成されるSIM機能ブロック125を含む。さらに、この拡張SIM ICC105は、STC(セキュア・タイム・コンポーネント;secure time component)130を含む。STC130は、時刻報告及び同期コントローラ135と、RTC140と、改ざん検出及び電源障害ユニット145と、を含む。この拡張SIM ICC105には、TPMユニット150も含まれる。
【0033】
拡張SIM ICC105上に位置する既存SIM機能ブロック125は、電話機を識別するために使用するマスタ・シークレットを保持し、このWTRUとネットワークとの間にセキュアなチャネルを確立することを支援するための認証サービスを提供するように構成される。このデバイスの中にルート識別がセキュアに保持され、SIMのセキュアなまたは信頼できる領域の外部には決して漏らされない。この既存SIMブロック125は、3GPP AKA(認証および鍵合意;Authentication and Key Agreement)関連手順に必要な機能およびアルゴリズムも実行する。
【0034】
時刻報告及び同期コントローラ135と、RTC140と、改ざん検出及び電源障害ユニット145とは、拡張SIM ICC105上に位置するSTC130を構成する。このSTC130は、特定のイベントまたはデータエントリの時刻についての確実な記録を、要求側エンティティに対する出力として、時刻証明書または時刻関連データの署名の形で提供するように構成される。
【0035】
時刻報告及び同期コントローラ135は、RTC140と改ざん検出及び電源障害ユニット145との機能を制御するように構成される。さらに、この時刻報告及び同期コントローラ135は、既存SIM機能ブロック125と、外部時刻標準機関165と、プラットフォーム・プロセッサ108とに結合することができる。時刻報告及び同期コントローラ135を既存SIM機能ブロック125に結合する場合、SIMブロック125は、電話帳用のデータベースなどの自らのデータベース内のセキュアな時刻測定を利用できるようになる。
【0036】
RTC140は水晶発振器を含むことができる。ただし、RTC140内で、他の正確な時間管理デバイスを使用することができることを当業者なら理解されよう。拡張SIM ICC105は、RTCの水晶振動子を物理的に除去することが拡張SIM ICC105を動作不能にするように構成することができる。この特徴は、改ざん検出及び電源障害ユニット145にも導入することができる。
【0037】
改ざん検出及び電源障害ユニット145は、電源異常が発生した場合に、STC130のセキュアな性質を維持する手段を提供するように構成される。このユニットは、TPMおよびRTCに電源を供給するための電源接続を含むことができる。このユニット145は、改ざんを検出する場合にアラームをトリガするための改ざん検出回路も含むことができる。このユニットの改ざん検出部は、ハードウェアレベルおよびソフトウェアレベルの改ざんを防ぐための改ざん防止機能を含むこともできる。このユニット145の電源異常部は、電源異常が発生した場合に、RTCコンテンツを不揮発性メモリに保存するのに必要な長さの期間にわたる保有を可能にするための十分なエネルギーを蓄積するように構成されるコンデンサまたは他の短期エネルギー蓄積コンポーネントを含むこともでき、またはこの拡張SIMは、自らの専用の、かつ取り除けないように機械的に固定されたバックアップバッテリを備えることができる。
【0038】
TPM150も拡張SIM ICC105上に位置し、既存SIM機能ブロック125およびSTC130の両方に結合される。TPM150およびSTC130の両方を拡張SIM ICC105上に配置することにより、SIM ICC105は、STC130によって作成される時刻情報に関する信頼のコアルート(core root of trust)を保護及び提供し、信頼性測定機能を提供するように構成される。TPM150があることは、RTC140と、関連する時刻報告及び再同期コントローラ135と、によって作成される時刻記録が、保護メモリに記憶されることを保証することもできる。この保護メモリは、TPM自体の中の不揮発性メモリ内にあるか、またはTPMの外部にあるが、TPMによる暗号化を用いて保護されるメモリ内に位置することができる。時刻記録のこうした保護は、電源異常の場合にも適用できる。電源異常ユニット145が、TPM150に電源異常を警告すると、TPM150は、電源異常ユニット145内のエネルギー蓄積デバイスの電源が切れる前に、時刻報告及び再同期コントローラ135から最後の記憶可能時刻記録を取得する。
【0039】
本発明の構成に関し、いくつかの機能が考えられる。例えば、本発明の拡張SIM ICC105は、直接的にまたは認証手順を介して、現時刻の測定を外部の要求側アプリケーションに提供することができる。この現時刻は、同期を行うために、外部ネットワークに対してデバイスを認証する際に、または、外部ネットワークが現時刻をセキュアに提供するのに有用である。
【0040】
この拡張SIM ICC105は、暗号を使用して時刻情報を保護し、デジタル署名を用いて時刻情報をデバイスに結合することもできる。あるいは、この拡張SIM ICC105は、時刻情報をデバイスに結合するために暗号化鍵を使用する暗号化により、時刻情報を保護し、結合することができる。この拡張SIM ICC105が制御するセキュアタイム情報の記憶域は、拡張SIM ICC105の内部に、またはSIM ICC105の外部だが電話機の外部メモリ120の内部に、あるいはその両方にあってよい。
【0041】
この拡張SIM ICC105を使用して、SIM機能ブロック125が実行する既存のアプリケーションを向上させるための機構を提供することができる。例えば、電話帳アプリケーション/データ、同期、モバイルペイメントもしくはチケット発行アプリケーション/関連データ、認証および鍵管理機能、またはモバイル通信プロトコルスタックに関係するデータに、セキュアタイムスタンプを提供することは有益である。さらに、この拡張SIM ICC105には、本出願で後に論じるDRMについての多くの実用的用途があり得る。
【0042】
オプションで、WTRU100は、拡張SIM ICC105上にはない第2のRTC155を含むことができる。この第2のRTC155は、オプションの時刻報告及び同期制御SW157を含むことができるプラットフォーム・プロセッサ108に接続する。この第2のRTC155とオプションの報告及び同期制御SW157との組合せは、WTRU100上にオプションのSTC機能を作り出す。さらに、プラットフォーム上の第2のRTC155は、拡張SIM ICC105内でより厳重に保護される第1のSTC130が必要とし得るのと同程度の安全性の高さを必要としない場合があるアプリケーションについて使用することができる。安全性が低くて済むそのようなアプリケーションの例は、OS用のティック・カウンタ、または略式のカレンダもしくはストップウォッチアプリケーションに関する使用とすることができる。
【0043】
オプションで、WTRU100は、拡張SIM ICC105上にはない第2のTPMユニット160も含むことができる。この第2のTPMユニット160は、追加のセキュリティ機能を提供するために、拡張SIM ICC105に接続する。例えば、SIM ICC105は取り出すことができるので、各デバイス(SIM ICCおよびプラットフォーム)上のTPMが、そのデバイスの信頼のルートとしての役割を果たすことができる。したがって、第2のTPM160は、SIM ICC105内のスレーブTPM150を使用して自らの機能を検証し、さらにプラットフォームとSIM ICC105との間の通信チャネル(インターフェイス)を結合するための相互認証を行うことができる。
【0044】
図2は、信頼できるローカル時刻を確立するように構成されるWTRU200の図の別の例である。このWTRU200は、汎用SIM ICC205と、プラットフォーム・プロセッサ208と、アプリケーション・プロセッサ及びSW210と、通信プロセッサ215と、データ用外部メモリ220と、RTC225と、TPM230とを含む。アプリケーション・プロセッサ210は、DRMエージェント(図示せず)を含むことができる。
【0045】
RTC225とTPM230とが、SIM ICC205上ではなくWTRUプラットフォーム上に配置されるので、
図1のWTRUは
図2のWTRUと区別される。このRTC225は、外部時刻標準機関233およびプラットフォーム・プロセッサ208に結合することができる。プラットフォーム・プロセッサ208は、RTC225を制御するための時刻報告及び同期制御ソフトウェア235を含む。したがって、このプラットフォーム・プロセッサ208とRTC225とは合わせて、WTRU200用のSTCとしての機能を果たす。
【0046】
このRTCおよびTPMを、SIM ICC205上ではなくWTRUプラットフォーム上に配置することにより、WTRU200は、汎用SIM ICCと互換性があるようになる。この実施形態は、
図1の拡張SIM ICC105についての説明の中で記載したセキュア・タイム・コンポーネントの機能を引き続き提供する。例えば、WTRUプラットフォーム上のTPM230は、RTC225と、時刻報告及び再同期アプリケーションと、作成される時刻記録出力のセキュリティとを保護し、向上させるための手順を実行することができる。代替的実施形態では、このWTRU200を、SIM ICC105なしで動作するように構成することができる。そのような実施形態の一例は、非3GPP携帯電話のWTRUである。
【0047】
オプションで、WTRU200は、SIM ICC上にオプションのSTC240を含むことにより、拡張SIM ICCとともに使用するように構成することができる。このSIM ICC205上のオプションのSTC240は、時刻報告及び再同期コントローラ245と、RTC250と、改ざん検出及び電源障害ユニット255とを含むことができる。SIM ICC205上にSTC240を含むことは、SIM ICCアプリケーション用のよりセキュアな時刻源を提供する。
【0048】
オプションで、WTRU200は、SIM ICC205上にオプションのTPM260を含むことにより、拡張SIM ICC205とともに使用するように構成することができる。このオプションのTPM260は、SIM ICCアプリケーションにさらなる信頼およびセキュリティを与えるだけでなく、SIM ICC205上に記憶されるデータに関してさらなる保護を行うことができる。
【0049】
他のいくつかの組合せおよび構成も可能であり、さらなる利点を提供し得ることを当業者なら理解されよう。例えば、SIM ICCは、STCを備え、TPMまたは改ざん検出ユニットなしで構成することもできる。SIM ICC上にSTCを組み込む他の任意の実施形態も、本発明の範囲内とみなす。
【0050】
別の実施形態(不図示)では、STCがSIM ICC上に配置され、TPMがWTRUプラットフォーム上に配置されるように、
図1のWTRU100と
図2のWTRU200とを組み合わせることができる。WTRUプラットフォーム上のTPMは、SIM ICC内のSTC、およびそのSTCが作成する任意のデータのセキュリティを保護し、向上させるために使用することができる。
【0051】
さらに別の実施形態(不図示)では、STCがWTRUプラットフォーム上に配置され、TPMがSIM ICC上に配置されるように、
図1のWTRU100と
図2のWTRU200とを組み合わせることができる。これらの追加の実施形態の両方で、WTRUは、
図1および
図2の説明の中で記載したのと同じセキュアアプリケーションおよび操作を実行するように構成される。STCをSIM ICC上に備えることは、RTC自体に対する物理的攻撃の点で、より高いレベルのセキュリティを提供できることに留意すべきである。さらに、SIM上にTPMがなければ、共有鍵、もしくは公開鍵/秘密鍵の対、または安全なチャネルのセットアップを支援するためにSIM ICC内の秘密を共有するネットワークに備えるようにSIM機能を拡張しない限り、SIMとプラットフォームとの間のチャネルを保護することも、プラットフォームとSIM ICCとの間の相互認証を行うこともできない。
【0052】
TCGの仕様は、内部のTPMティック・カウンタ値を外部の信頼できる時刻源、すなわち実時間クロック源に結合するための1つの基本プロセスについて記載する。これは、以下でより詳細に説明する。TCGの仕様は、この基本的機構以上の任意の概念は含まない。
【0053】
まれに接続される疎結合のデバイスは、これらの機能実装を使用して、信頼できる時刻ステートメント(TTS)を第三者に提供するために十分なデータを収集するということを示すことができる。外部時刻を結合することは、タイムスタンプを作成したずっと後にさえ生じることができる。特に、デバイスのほとんどが決して実時間を知る必要がない方法でこの結合を行うことができる。これらの方法の背後にある共通の考えは、ティック・カウンタ値と実時間クロック値との間の関係を得るための、プラットフォーム上またはデバイス内のTPMの内部ティック・カウンタと他のエンティティとの間の協働である。そのようなステートメントは、署名されたティック・カウンタ値(ティック・スタンプ)とタイムスタンプとを組み合わせ、適宜使用することによって実施される。
【0054】
典型的な精度ステートメント(AS)、すなわちTPM ASは、信頼およびセキュリティの観点からは十分に満足のいくものではない。検証者は、期間T_1とt_aとの間、およびt_aとT_2との間のそれぞれの実時間距離に関するASによってなされるアサーションを評価し、信頼するために、それらの期間の間、TPMティック・カウンタが精度に関して適切に機能していることを信頼する必要がある。実時間クロック値に対するT(TCV(t))の結合を強化するための1つの方法は、T(TCV(t))を2つのタイムスタンプの間に入れることである。この例では、上述した精度ステートメントに代わるものとして、TAからのタイムスタンプでPのTS(TCV)を包み、意味的に異なるTTSをもたらすことができる。
【0055】
図3は、代替精度ステートメントを生成すること(300)を明示する流れ図の一例である。ある最初の時点において、プラットフォームPが、ある任意の知られているデータDについてのタイムスタンプをTAに要求する(310)。t_aにおいて、TAがTStamp(D,t_a)を生成し(320)、それを直ちにPに送り返す(330)。Pは、時刻t≧t_aにおいてそのタイムスタンプをTAから受信し、TS(TStamp(t_a),TCV(t))を生成し(340)、それを直ちにTAに送り返す(350)。TAは、その構造TS(TStamp(t_a),TCV(t))を受信し、t_bにおいて、SA(t_a,TCV(t),t_b):=TStamp(TS(TStamp(t_a),TCV(t)),t_b)を生成し(360)、この構造を直ちにPに送り返す(370)。
【0056】
この代替精度ステートメントSA(t_a,TCV(t),t_b)は、次式の関係をアサートする信頼できる時刻ステートメントである。
t_a≦T≦t_b、ただし、T:=T(TCV(t))である。 等式4
【0057】
そのような代替精度ステートメントは、TPMのティック・スタンピングが生じた真の時刻の推定範囲を証明するために外部TAが使用することができる。
【0058】
図4は、代替精度ステートメントを生成すること(400)に関する別の改変形態を示す。ある最初の時点t_aにおいて、TAは、Pが所定の間隔I415にわたり2つの連続したティック・スタンプを発行するための命令を含むデータD(I)のタイムスタンプを発行する(410)。したがって、TStamp(D(I),t_a)が得られる。このタイムスタンプを発行した後、TAはこれを直ちにプラットフォームPに送信する。TStamp(D(I),t_a)を受信すると、Pは、D(I)||t_aをティック・スタンプすることにより、第1のティック・スタンプTS1を生成する(420)。したがって、Pは次式のティック・スタンプを得る。
TS1:=TS(D(I),t_a),TCV(t1)) 等式5
【0059】
この例では、t1は、このティック・スタンピングが行われるときの実時間であることに留意されたい。Pは、これを直ちにTAに送信する(430)。Pは間隔I415を待ち、次いで第2のティック・スタンプ、すなわち
TS2:=TS(D(I),t_a||TS1,TCV(t2)) 等式6
を生成する(440)。ただしt2は(Pにおける)t=t1+Iのローカル推定である。この場合もやはり、Pはこのティック・スタンプを直ちにTAに送信する(450)。ティック・スタンプTS1およびTS2の両方を受信すると、TAは、以下をタイムスタンプする(460)。
SA’(t_a,D(I),t_b):=TStamp(TS2||TS1,t_b) 等式7
【0060】
この代替精度ステートメントSA’は、次式の関係をアサートする信頼された時刻ステートメントである。
t_a<=t1<t1+I<=t_b 等式8
【0061】
ただし、t1:=T(TCV(t1))、およびt2:=T(TCV(t1+I))である。
【0062】
こうしたステートメントSA’は、TPMのTIRを推定するために使用することができる。
【0063】
SA(t_a,t_b)、またはSA’を生成するための複合型システムの実装において、注目に値する改変形態がある。何よりもまず、2つの時刻標準機関が同一である必要がない。Pは、第1のタイムスタンプをTAから取得し、第2のタイムスタンプを別の時刻標準機関TA’から取得することができる。
【0064】
図5は、TAおよび/またはTA’が、タイム・スタンピング機能と組み合わせられた、プラットフォームの内部エンティティ、すなわち実時間クロック(RTC)である場合の第2の主要な改変形態を示す流れ
図500の一例である。この改変形態は、以下のようにプラットフォームの信頼されたコンピューティング機能を使用する簡潔な方法で実現することができる。各起動サイクルの開始時に、信頼されたプラットフォームPが、特定のプログラム、ITA(内部時刻エージェント;Internal Time Agent)を始動する(510)。このプラットフォームは、TCGモバイルフォンワーキンググループの仕様の安全起動機能を使用し、信頼でき、障害が起きていない状態でITAが始動され、適切に構成されることを強制する。あるいは、このプラットフォームが、起動時におけるロード済みプログラムの測定しかサポートしない場合には、ITAの存在および信頼性は、遠隔証明により少なくとも外部の検証者に証明することができる。多くの専用のITAインスタンスは、P上に共存することができる。
【0065】
このITAは、以下のように、精度ステートメントを生成する際にTAに取って代わることができる。このITAとRTCとの間には、ITAが真正の実時間値をいつでも取り出すことができる(520)、安全なチャネルがある。ITAは、このRTC値をTPMの暗号機能を使用して、例えばTPM_SealコマンドおよびTPM_UnSealコマンドを使用して、それらのRTC値を暗号化することにより、保護することができる(530)。ITAは、TPMのソフトウェア暗号ライブラリまたは署名機能、例えばTPM_signコマンドを使用して、これらのRTC値からタイムスタンプを生成する(540)。ITAが使用する署名鍵は、例えば特定のITAインスタンスに関連する固有鍵とすることができる。別のオプションは、ITAが、PのAIK(証明識別鍵)に結合されるCSK(証明済み署名鍵)を使用することであり、これは、CSKを証明する証明書がAIKによって署名されることを意味する。これは、以下に記載する方法をそのまま真似て行うことができる。特定の信頼されたプラットフォームPの中にITAが存在することを証明する利点があり、ITAが存在し、かつITAの機能に障害が起きていない信頼されたプラットフォームPの状態は、遠隔証明のTC機能により、外部エンティティが検証することができる。
【0066】
RTCとTCVとの結合をより強化し、TCGの仕様をその趣旨で拡張することが一部の場合に望ましいことがある。RTCおよびITAが、TPMの内部ティック・カウンタと同等の、またはそれどころかより高いセキュリティレベルを有する(例えば、どちらも特別に保護されたハードウェアによって実装される)と仮定する。すると、このRTCは上記のように内部時刻標準機関として使用することができるだけでなく、ティック・カウンタに能動的に影響を及ぼすためにも使用することができる。例えば、このRTCとティック・カウンタとは、同じクロック源によって駆動される場合がある。このRTCは、ITAを介してまたは直接ティック・カウンタをリセットし、または、ずれを検出する場合は補正値を提供することもできる。これは、TPM_TickStampBlob出力の精度についての信頼性を潜在的に高める。ある者がRTC(またはその出力)を保護する場合、より信頼できるそのRTC(またはその出力)を使用するTPMのティック・スタンピングもまた、より信頼できるようになることにより、(RTCの出力およびTPMのティック・スタンピングを使用して時刻値をアサートする)ITAに対する信頼を改善することができる。
【0067】
TPM_SIGN_INFOデータ構造内の未使用領域に、RTCからの追加情報を組み込めることにも留意されたい。あるいは、強化されたTPM_SIGN_INFOデータ構造を規定し、TCGが義務付けるセッション値(TCVおよびTSN)だけでなく、日時の絶対的指示を提供することができる。
【0068】
大抵の場合、TAはPよりも高精度の時刻ステートメントを作成するように装備が整っているため、署名の遅延を補償するようにTAを構成することができる。TAの単純なモデルは、自らの時刻源からUTC時刻を取り出すために必要な時間d_tと、タイムスタンプを生成するために必要な時間D_tとの両方が、例えば継続的測定によりまたは定義済み機能パラメータとして、高い精度で知られていると仮定する。P上の時間に関連するTPM操作の場合のように、TAに関してもd_t=0と仮定する。以下の方法をd_t>0に一般化することは簡単である。以下では、SA(t,t’)によって示す署名遅延補償済み精度ステートメントについて記載する。
【0069】
SA(t_a,t_b)によって示す署名遅延補償済み精度ステートメントを生成する際にD_tを補償するため、TAが第1のタイムスタンプ内にD_tを含めるように(320)、
図3に示す方法を修正することができる。(D_t,可変要素a)というある代替策では、TAが、時刻t=t_aにおいて、D’によって示す署名遅延補償済みデータパッケージ用のタイムスタンプTS(D’,t_a)を生成し(ただしD’=D_t、またはD’=D||D_tである)、そのタイムスタンプを信頼できる時刻ステートメントSA(t_a,D’,t_b)内に含める。ここでは、D_tは、TAがこのデータ用のタイムスタンプを生成するための、緻密に知られている(または推定された)持続時間を示す。したがって、D’=D_tの場合、TAは、タイムスタンプを生成するために必要な遅延をタイム・スタンピングしているに過ぎず、D’=D||D_tの場合、TAはその遅延だけでなく、自らが最初にタイムスタンプしたデータD自体もタイム・スタンピングする(320)。(D_t,可変要素b)という第2の代替策では、TAは、t_aにD_tを加え、時刻t_aにおいてタイムスタンプTS(D,t_a+D_t)を生成し、そのタイムスタンプを、信頼できる時刻ステートメントSA(t_a+D_t,D,t_b)内に含め、それを直ちにPに送り返す。結果として生じる(可変要素aからの)信頼できる時刻ステートメントSA(t_a,D’=D_t,t_b)、または(可変要素bからの)SA(t_a+D_t,D,t_b)では次式が成立する。
t_a+D_t≦T≦t_b、ただし、T:=T(TCV(t)) 等式9
【0070】
SA(t_a,D,t_b)では、t_a≦T≦t_b(ただし、T:=T(TCV(t)))しか得られないため、この時刻ステートメントは、SA(t_a,D,t_b)しか使用しない場合よりも緊密な時間的結合をもたらす。
【0071】
この方法は、SAの代わりにTCGが定義する精度ステートメントASに適用する場合には、ティック値の精度を検証可能な場合にのみ、信頼できるより緊密な時間的結合を達成するが、それは通常は可能ではないことに留意されたい。つまり、TCGが定義する精度ステートメントASを使用することは、外部のTCVに関するアサーションを一切加えることなく、2つのティック値の中間にあるタイムスタンプによって示されるRTC値をシフトするだけである。このことは、TCGの精度ステートメントASの欠点を改めて際立たせる。
【0072】
ティック・インクリメント率は、プラットフォーム内のTPMの工場パラメータである。このティック・インクリメント率の初期値が、実用目的に関して十分信頼できかつ厳密でも、特定のTPMの実TIRを決定するそうしたハードウェアのプロパティが長い期間を経るうちに変化することがあるので、この初期値は時間とともに変化する可能性がある。ここでは、P内のTPMの実TIRを任意精度で測定する方法を示す。
【0073】
図6は、信頼できるTIR測定を明示する
図600の一例である。Pは、2つの精度ステートメントS_1:=SA(t_a,TCV(t_1),t_b)、およびS_2:=SA(t_c,TCV(t_2),t_d)を生成する(610)。このステートメントから、PがS_1およびS_2を送る相手の外部検証者が、次式のように、S_1とS_2とによって囲まれる期間内のTIRの平均値として、実TIRの現在の推定値を計算する(620)。
t’_1:=(t_b−t_a)/2、およびt’_2:=(t_d−t_c)/2 等式10
cTIR(S_1,S_2):=(t’_2−t’_1)/(TCV(t_2)−TCV(t_1)) 等式11
【0074】
関与する精度ステートメントが、t_1、t_2それぞれの前後の、一定のTCVの時間間隔の境界をもたらすとき、cTIRも同様に上限および下限に従う。これらの境界は次式の通りである。
(t_c−t_b)/(TCV(t_2)−TCV(t_1))≦cTIR≦(t_d−t_a)/(TCV(t_2)−TCV(t_1)) 等式12
【0075】
TIRを測定するためにタイプSAの精度ステートメントを2つ使用することは、この方法がcTIRの上限および下限を同時に提供することを必然的に伴う。これは、対立する利害のバランスを取る必要がある多くのビジネスシナリオにおいて使用することができる。例えば、DRMのシナリオでは、権利保有者は、1個のメディアの許容消費期間を制限することに関心があるのに対し、消費者はこの期間を延ばすことに関心がある。精度は、関与する第1のティック・カウンタ値と第2のティック・カウンタ値との差に伴って高まる。cTIRおよびこの境界はどちらも、S_1およびS_2を保有する者なら誰でも計算することができる。このS_1およびS_2を保有する者は、外部検証者またはP内のITAとすることができる。この例では、次いで後者がcTIRを外部エンティティに伝達し、TPMのTIRの誤差を訂正する(630)。この場合もやはり、TIR測定における時刻標準機関のそれぞれは独立に選択することができる。特に、それらの時刻標準機関の一部は内部RTCの値に関係することができる。cTIRの推定についての精度をさらに高めるために、上述した遅延を補償するための方法を使用することができる。
【0076】
いっそう多くの時刻アサーションを使用することによって、ティックだけでなく、(通信往復時間および署名生成時間が変わる場合がある)精度ステートメント生成の標本空間がより大きくなり、したがって統計誤差がより小さくなるので、境界の精度を絶えず改善できることに留意されたい。十分に長い時間間隔にわたって分散する時刻アサーションを使用し、TIRのずれ率についての推定を得ることができる。このずれ率は、TIRの一次導関数として表すこともできる。
【0077】
あるデバイス上の時間調整デバイスまたは技術の経年劣化は、徐々に増加する実TIRの工場値からのずれによって立証することができ、その経年劣化作用による偏差は貴重な情報をもたらすことができる。したがって、cTIR、およびcTIRをもたらす精度ステートメントに関連する測定を様々な状況で使用し、Pの状態、機能パラメータ、または信頼性に関する評価を導き出すことができる。特に重要な例を以下に論じる。
【0078】
改ざんの検出では、デバイスまたはデバイスのTPMもしくはMTMに対するアクティブなサイドチャネル攻撃は、その攻撃の多くがデバイスの内部プロセスの時間調整に影響するのでcTIRの偏差を引き起こすことがある。この攻撃を検出するための1つの方法は、測定したcTIRの統計的分散を調べることである。この統計的分散が、特定の設定値(これは適切に機能しているデバイスのサンプル上で実験的に決定することができる)よりも大きい場合、その統計的分散は、デバイス(プラットフォームP)、TPM、またはティック・カウンタに対する攻撃として解釈することができる。
【0079】
機能不良の検出では、cTIRが、ある期間にわたり一貫してかつ著しく低くまたは高い可能性があり、経年劣化が生じることによって引き起こされる標準偏差を上回る可能性がある。この状況は、デバイスのティック・カウンタまたはデバイス自体の機能不良の痕跡として、外部のオブザーバが解釈することができる。
【0080】
異常動作状態の検出:cTIRが、ある期間にわたりランダムにかつ著しく低くまたは高く、かつ、経年劣化、電圧変動、もしくは温度変化等によって引き起こされる標準偏差が許容するより大きい場合には、この状況もやはり、異常動作状態またはティック・カウンタもしくはデバイスの改ざんの痕跡として、外部のオブザーバが解釈することができる。
【0081】
上述した検出方法は、当分野で大量に導入される信頼できるデバイスに組み込むことができ、そのようなデバイスは、上述した方法以外に異常を検出するための他の機能(強化型センサなど)を備えなくてよい。予期される適用分野は、長期間にわたり無人でまたは人間によるサービスを受けずに導入されるM2M(機械対機械;machine-to-machine)システムにTPMを組み込むことであり得る。
【0082】
これまで記載してきた信頼された時刻ステートメントは、単独ではPの信頼性および/または識別に関するアサーションを行わない。後者は、ティック・スタンプを署名するためにPが使用する署名鍵に明らかに依拠する。このことは、その署名鍵を頼りにする精度ステートメントならびにティック・スタンプにとって、後にセキュリティ上重要な意味をもつ。つまり、TAは、それ自体ではステートメントを要求するプラットフォームの状態が分からず、さらに悪いことに、ティック・スタンプ操作ならびにティック・カウンタ自体がエミュレートできるので、TAは、TPMと通信するのかさえ全く分からない。したがって、さらなる保護なしでは、精度ステートメントは、TCV操作、ティック・スタンプの偽造、中間者攻撃等を含むあらゆる種類の攻撃を受けやすい。
図7は、これらの問題の一部を克服することができる方法の一例を示す。
【0083】
図7は、精度ステートメントを保護するための方法を明示する
図700の一例である。Pは、AIK(証明識別鍵)を生成し、TCGが定義するプロトコルに従って要求したそのAIKに関するPCA(プライバシCA;Privacy CA)からのAIK信用証明を保持すると仮定する。精度ステートメントは、以下の方法でプラットフォーム識別に結合される。Pは、AIKから証明済み署名鍵CSKを生成することができる(710)。次いで、PおよびTAは、精度ステートメントAS()およびSA()をそれぞれ生成することができ、Pによるティック・スタンピングの各インスタンスは、どちらでも任意のプロトコルでティック・スタンプが呼び出される各時刻t*において、署名鍵としてCSK、すなわちTS[CSK](TCV(t*))を使用するように指定される(720)。
【0084】
上記で使用するCSKは、この単一操作専用とし、精度ステートメントを生成した後に破棄することができ、またはこのCSKは、さらなる操作、特に、後のティック・スタンピングで使用することができる。信頼されたプラットフォームPが、データブロブDを保持することを後の時点tにおいて検証者Vに証明するために、Pは、TTS(t):=TS[CSK](D,TCV(t))を生成することができる(730)。ただし、CSKは、AIKによって証明された新たな鍵か、または精度ステートメントを生成する際に使用した元の鍵である。Pは、Vに対して、AIK信用証明と、CSKの公開部分と、精度ステートメントまたはその中に署名されたデータと、TTS(t)と、Dと、TCV(t)とを明らかにすることができる(740)。次いでVは、TCGが全般的に規定されるセキュリティ要件、特にタイミング・ティックに関して規定されるセキュリティ要件を満たすアクティブなTPMを備える信頼されたプラットフォームによってこの精度ステートメントが生成されたことを確認することができ(750)、または信頼された時刻ステートメントTTS(t)が、同じプラットフォームによって生成されたことを確認することができる(760)。
【0085】
同様に、精度ステートメントだけでなく、他の任意の信頼された時刻ステートメントもCSKを使用することができる。特に、TPMによるすべてのティック・スタンプ操作は、CSKを使用して、特定のTCVのあるデータを保持することを示すTTSを生成することができる。
【0086】
PCAは、TAの役割を果たし、AIK証明プロセスとTTS生成プロセスとを統合することにより、精度ステートメントを提供することができる。このプラットフォームPとPCAとの間のAIKを証明するプロセスは、以下のように増強する。
【0087】
Pは、AIKの証明をPCAに要求するとき、上述した方法に従い、精度ステートメントSAの要求も発行する。PCAおよびPは、SAを生成するための上記のプロトコルを実行する。署名データDは、証明が要求されるAIKの公開部分またはそのAIKに連結されるものとして指定される。このプロトコルでは、問題のAIKはPCAが証明した後に使用するために活動化されるのみなので、Pのティック・スタンプは問題のAIKに関するCSKによって署名することはできないことに留意されたい。したがって、Pによって、ティック・スタンプのために別の署名鍵が使用される必要があり、このSA生成プロトコルの中間者攻撃を軽減することはPCAおよびPの責任である。これは、AIK証明プロセス中に、暗号化およびノンスを使用することによって確実にされる。暗号化およびノンスを使用した後にのみ、PCAはAIKの証明に移る。
【0088】
このTTSは、単独でAIK証明要求を受信したことの意味をもつ。生成済みTTSおよびAIK証明書の意味は、一緒に検証者に提示される場合には、Pが特定の時刻にAIKの証明を要求した信頼されたプラットフォームであり、そのAIK証明要求の時刻がSA、すなわち上記で生成されるTTSに対するものと同じ検証可能ステートメント、の内の2つのTCVが示す2つの時刻値の範囲内にあることである。
【0089】
このTTSは、基準点によりPの特定のAIKに結合される。したがって、Pが後の時点で発行するその後のすべてのティック・スタンプ、または、Pが生成する別の精度ステートメントは、上述したようにAIKに関するCSKを使用して、時間の点で、およびTCVとのその信頼関係の点で、この基準点に結合することができる。この種のアサーションの1つの使用事例は、不正なプラットフォームのAIK信用証明の取り消し、無効化である。
【0090】
上記で述べた追加の署名鍵を必要とすることの問題は、以下の方法でPCAがAIKの証明を行うまでTTSの生成を遅らせる場合に回避することができる。Pは、AIKの証明をPCAに要求するとき、上述した方法に従い、精度ステートメントSAの要求も発行する。PCAはAIKの証明を実行し、証明書を生成する。PCAは、署名データとしてAIKの公開部分またはAIK証明書全体を含むSA生成プロトコルの第1のタイムスタンプを生成する。PCAは、AIK証明書およびこの第1のタイムスタンプをPに送信し、オプションでタイマを始動する。PとPCAとがSA生成プロセスを完了し、その中でPはAIKに関するCSKを使用する。オプションで、PCAは、タイマの値が特定の規定値より大きくない場合にのみ、最後のタイムスタンプを発行することにより生成されるTTSの新鮮さを強化することができ、その結果、TTS内に示されるTCVは、AIKを証明した後の限られた時間しか存在しない。
【0091】
TCGは、プラットフォームが、アクティブなTPMを含むだけでなく、厳密に決定された信頼できる状態にあることも検証者に証明するために、遠隔証明の概念を導入した。この概念の主な問題は、プラットフォームの状態は時間とともに通常は変化することである。
【0092】
この遠隔証明プロセスは、この遠隔証明プロセスが起こる時刻に関するステートメントを含むように拡張することができる。
図8は、遠隔証明プロセスの一例の流れ
図800である。検証者から証明要求を受信し(810)、証明クライアントとTPMとの間に認証セッションを確立した後、ティック・スタンプTS_Aを生成する(820)。この認証セッションを確立することは、後の遠隔証明で使用するAIKに関するCSKを使用して行うことができる。次いでPは、TPM_Quoteコマンドを使用し、AIKでPCR(プラットフォーム構成レジスタ;platform configuration registers)を署名することにより(830)、遠隔証明に移る。
【0093】
さらなる拡張策として、署名されたPCRによって示されるPの状態と、SML(記憶測定ログ;Stored Measurement Log)との間の時間距離を測定するために、AP(証明パッケージ;attestation package)を検証者に送信する(850)直前に、第2のティック・スタンプTS_Bを生成することができる(840)。この方法の利点は、SMLが特定の細分性でイベントを実際上記憶することであり、すなわち、プラットフォームの状態についての、物理的変化はもちろん、すべての情報的変化がSMLに記録されるとは限らない。このSMLの深さは、Pの実装形態、特に、信頼されたペレーティングシステムに依存する。したがって、PCR値を署名することとSMLを取り出すこととの間に生じる、SMLに記憶されないイベントがあり得る。この可能性は、TS_BとTS_Aとの差によって示される時間差を使用して評価することができる。
【0094】
様々な代替策を実施することができ、例えば、証明クライアントはTAにタイムスタンプを要求し、上述した方法のいずれかにより精度ステートメントを生成することができる。証明クライアントは内部ITAの機能を果たしもしくは内部ITAと協働し、RTC値に基づく単なるティック・スタンプの代わりに精度ステートメントを生成することができる。ティック・スタンプは、修正された証明パッケージデータ構造に統合されることができる。また。プラットフォームのSML(記憶測定ログ)をティック・スタンプによって拡張することができる。
【0095】
たった今説明した方法により遠隔証明に組み込まれる時刻ステートメントは、検証者が信頼できるプラットフォームの状態についての膨大なデータベースを保つ負担を部分的に軽減するために使用することができる。例えば、PCAは、(例えば、特定のマルウェアがある時点において、ある状態でプラットフォームに影響を与えている情報を使用して)不正なプラットフォームのリストを保持することができ、検証者は、AP、TS_A、TS_BをPCAに提出して、証明時にPの信頼性についての情報(「セカンドオピニオン」)を得ることができる。
【0096】
この時刻ステートメントは、Pの状態を介して、さらに以前の証明と比較することができる場合に、なおいっそう有用である。これに関して、後の証明は同じ識別、すなわちAIKを使用して実行しなければならない(もっとも、これはプラットフォームの識別を保護すると考えられているAIKの発足の背後にある趣旨にやや反するが)。次いで検証者は、そのプラットフォームの状態が、証明間でそのうち望まれないように変わったかどうかを評価することができる。
【0097】
TPMのカウンタをリセットするごとに、時刻ステートメントを外部エンティティに伝達するための、明確に定義されたセキュリティ・コンテキスト得るためにノンスが必要である。このティック・セッション・ノンス、TSNは、このリセット操作にタイムスタンプを関連付けるために後に使用する。このノンスは、このデバイスおよび各リセット操作について一意でなければならず、そのため、TPM内の乱数発生器によって生成される。実際のTSNは、TPM_GetTicksコマンドを発行することによって得ることができる。このTSN値は、その結果生じるCURRENT_TICKSデータ構造に含まれる。
【0098】
現在のTCGの仕様は、TPMがプラットフォーム上のパワーサイクルにわたり、または様々なパワーモードにおいて、ティック・カウンタをインクリメントする能力を保つための機能についての要件を設けず、これはセッションが失われることをもたらす。再起動サイクルおよび様々なパワーモードにも有効なセッションを確立するために、mTSN(メタTSN;meta TSN)を使用して様々なTSNセッションに及ぶことができるセッションを提供する、メタセッションの概念が必要である。
【0099】
図9は、メタセッションを明示する方法の一例の
図900である。mTSNは、外部の時刻プロバイダもしくはTA(時刻標準機関)が生成し、またはTPMの乱数発生器が内部的に生成することができる。第1の事例では、TAが、プラットフォームの初期化プロセス中のある時点においてデバイスからmTSN要求を受信し(910)、例えばオペレーティングシステムを起動することでmTSNを生成し(920)、そのmTSNを記憶し(930)、そのmTSNを安全に(TPMによってシールして)デバイスに伝達する(940)。第2の事例では、デバイスがmTSNを生成し、それをプラットフォーム証明に結合し、その結合済みmTSNをTAに送信して、mTSNが、障害が起きていないプラットフォーム上の、通電し変更されていないTPMによって生成されたことをアサートする。次いで、このmTSNを、TPM_TickStampBlobコマンド用のノンスとして使用する。その結果、発行される各スタンプは、そのスタンプを特定のメタセッションに割り当てるmTSNを含む。
【0100】
いずれの事例においても、このデバイスは、セッション初期化サイクル中のある時点において、mTSNの要求をTAに送信し、またはこのデバイス自体が生成したmTSNをTAに送信しなければならないことに留意されたい。
【0101】
mTSNを使用することはハードウェア手段によって保護されず、TCで定義する信頼できる操作環境を必要とする。この操作環境は、ある明確に定義されたシステム全体の状態にmTSNをシールすることを可能にする証明操作によって検証される。静的なmTSNを使用する代わりに、次のスタンプ操作用のノンスとして最後のTSNを使用することは理にかなってもいる。最後のTSNを使用することは、結果としてセッションを連鎖的に結合することになる。この連鎖の完全性を証明するには、オフライン証明データを少なくとも最初のスタンプに追加する必要がある。これは、システム状態の検証を遅らせる効果がある。
【0102】
TA(時刻プロバイダ)およびオペレータが発行する署名を広範に使用することにより、TAまたはオペレータにおけるノンスデータベースの必要性をなくし、または減らすことができる。この方式は、ネットワーク側との通信を1組の最小限のトランザクションにまで減らすので、柔軟性の点で大きな利益をもたらす。デバイス側では、このノンスはクッキーに対する等価物(セッション値)であり、通信で使用することができる様々な異なる時刻サービス、およびことによると基準枠(reference frame)を可能にする。
【0103】
単一セッション間のギャップを埋め、セッションに変化がないことを証明するための別の手法は、プラットフォーム設計に、信頼できるとみなすことができるRTC(実時間クロック)を含めることである。この信頼されたRTCは、上記に示したmTSNの方式に従ってその署名が含められる署名日を提供する。これは、少なくとも最初のノンスを用いて行う必要がある。信頼できるRTCを実装するには、保護された暗号機能および一意の識別を確立することが必要である。
【0104】
一部の使用事例では、最後の報告で報告されるTCVおよびTIRを使用することにより、将来のTCVを予測する必要がある。元のセッションが、例えば電源切断が原因で終了する場合には、このイベントを橋渡しし、前のTCV値を後続のセッションにマップすることが必要である。これは、TCVを特定の時点に結合する受信済み日時スタンプとともに、元のセッションのASを使用することによって行う。その後の各セッションもASを受け取る。2つのAS、日時情報およびTIRを使用することにより、その後のセッション内のイベントのTCVに相関する経過時間を計算することができる。さらに、このシステムのログおよび対話プロファイルを分析することにより、「セッション外」持続時間(例えば電源異常持続時間)を推定することが可能である。この基本方式は、前に示したmTSN概念の概念と組み合わせることもできる。
【0105】
信頼されたコンピューティング技術の1つの応用例は、DRMで使用することである。DRMシナリオでは、精度ステートメントを2つの段階で使用することができる。以下の例では、OMA(オープン・モバイル・アライアンス;Open Mobile Alliance)の用語法を使用する。全般的なシナリオは、デバイスがDRMエージェント、すなわち特定の権利保有者が設定する権利に従いコンテンツに関してアクセス制御を働かせるエンティティを備えると仮定する。
【0106】
図10は、DRMにおいて、信頼できるコンピューティング技術を使用することに関する流れ図および方法の一例1000である。この例では、RI(権利発行者;Rights Issuer)は、OMA DRM v2.0標準で定義されるROAP(権利オブジェクト取得プロトコル;Rights Object Acquisition Protocol)の実行中に、ASおよびティック・スタンプをDRMデバイスに要求することができる(1010)。このASは、RIがその完全性を検査できるようにする(1020)ために、プラットフォーム上で証明ステートメントに結合することができる。このようにして、RIは、このDRMエージェントがアクティブであり、障害が起きておらず、正確かつ改ざんされていない時刻にアクセスできるという保証を得る。次いで、これらすべての検査が成功する場合にのみ、RO(権利オブジェクト;rights object)を送る(1030)。次いでRIは、使用権についての時間制限を、そのROの中にTSNおよびTCVに関して直接コーディングすることができる(1040)。権利を取得するためのこの初期設定段階でROを受信すると、DRMエージェントは、そのデバイス上のITAと協働し、またはそのデバイス上のITAと統合することさえできる(1050)。次いで、そのDRMエージェントはTPMからティック・スタンプを取得し(1060)、TSNおよびTCVとRO内に表される制限とを比較し、そのコンテンツに対してアクセス制御を適宜働かせることができる。
【0107】
第2の例では、RO内の時間制限が標準時刻形式、例えばUTC値を使用し、それらの時間制限をTCVに関連付けることはDRMエージェントの役割である。DRMエージェントは、起動時に生成されたASを使用して、(ASおよびMTM不揮発性メモリ内のTSNを比較することにより)TCVが正確な外部時刻に結合されており、ティック・カウンタの同一セッションに属することを確実にすることができる。この場合もやはり、DRMエージェントはコンテンツに対するアクセス制御の基礎を置くための、有効な時間対TCVの関連を有する。このASとコンテンツがアクセスされる時間との間の期間が長い場合、TCVに著しいずれが発生する可能性があり、このずれを訂正するために上記の方法を使用することができる。
【0108】
DRMのシナリオでは、TCVの有効性を、一意のTSNによって表される単一ティック・セッションに限定することが有用である場合がある。特定のTSN値に権利を結合することができ、ティック・カウンタがリセットされ、TSNが更新されている場合には、DRMエージェントは保護コンテンツへのアクセスを許可しない。あるエンティティ、例えばMTM、DRMエージェント、またはITAが(この仕様によってまたはTCG標準に規定される機能の拡張によって義務付けられるように、ティック・カウンタ無効化し、リセットを強制する任意の手段により)ティック・カウンタをリセットすることができる場合には、これを使用してコンテンツへのアクセス権を任意のTSNセッション、所望の時間、またはTCVにおいて無効化することができる。その一方で、単一のTSNセッションを超えてアクセス権を維持することを望む場合、RI、DRMエージェントおよび/またはITAは、セッションをブリッジし、TCVおよびTSNの有効性の制限を更新するための方法を使用することができる。
【0109】
信頼された携帯電話が、外部エンティティから外部RIM証明書を受信し、その証明書を内部RIM証明書に変換し、それを内部プラットフォームの証明目的で保持し、使用することはよくある。多くの場合、この外部証明書は、日時による有効性情報を有する。しかし、現在のTCG MPWG(モバイルフォンワーキンググループ;Mobile Phone Working Group)仕様は、日時のための明確なフィールドを含まない。MPWGによるこの決定の背景には、証明書の有効性を検査するために信頼できる時刻情報を手元に有する能力を、TPMもプラットフォームも備えることが予期されなかったことがある。携帯電話用の内部RIM_Certificateは、有効性を検査する目的で、単調カウンタしか現在は使用しない。このことは、RIM_Certificatesに対して行うことができる有効性検査の種類を明らかに制限する。
【0110】
しかし、例えば本明細書の前の節に記載した方法によって提供されるセキュアな時刻源がある場合、RIM証明書の有効性は、現実の日時によって表される有効期間と突き合わせて検査することができる。
【0111】
代替的実施形態では、信頼された携帯電話の内部RIM(リファレンス完全性メトリック;reference integrity metric)証明書を、安全かつ信頼できるITA(内部時刻エージェント)を含むシステムにおいて、より安全にすることができる。このITAは、セキュアなRTCによって提供される実時間情報を安全に処理する。こうした機能を備える電話機では、内部RIM_Certificate構造の中の単調カウンタフィールドを、ITAが提供する日時フィールドで置換しまたは補足することができる。同様に、TSN値および/またはTCV値のセッションブリッジングがITAおよび電話機のTPMから利用可能である場合、そのTSNおよび/またはTCVのセッション値の連鎖記録を、内部RIM証明書上の適切な場所に含めることもできる。ハッシュ拡張を使用することは、検証者が検証できる方法でTSNおよび/またはTCVのセッション値の履歴を捕捉する、オプションである場合がある。
【0112】
こうした補足情報をTSN/TCVについての日付/時刻情報またはセッションブリッジ情報として含めるための可能なフィールドに関し、現在のRIM_Certificateフォーマットで利用可能な拡張ダイジェストフィールド(extensionDigest field)(64バイト)を使用することができる。このフィールドは、プロプラエタリデータフィールド(proprietary data field)または補助データフィールドのダイジェスト用であり、この日時データを挿入するための場所を提供できることに留意されたい。
【0113】
諸特徴および要素を上記に特定の組合せにより説明したが、各特徴または要素を、他の特徴および要素なしに単独で、または他の特徴および要素を伴うもしくは伴わない様々な組合せで使用することができる。本明細書で提供する方法または流れ図は、汎用コンピュータまたはプロセッサによって実行するためにコンピュータ可読記憶媒体中に実施されるコンピュータプログラム、ソフトウェアまたはファームウェアで実施することができる。コンピュータ可読記憶媒体の例には、ROM(読出し専用メモリ)、RAM(ランダムアクセスメモリ)、レジスタ、キャッシュメモリ、半導体記憶装置、内蔵ハードディスクやリムーバブルディスクなどの磁気媒体、光磁気媒体、およびCD−ROMディスクやDVD(デジタル多機能ディスク)などの光学媒体が含まれる。
【0114】
適切なプロセッサには、例えば汎用プロセッサ、専用プロセッサ、従来型プロセッサ、DSP(デジタル信号プロセッサ)、複数のマイクロプロセッサ、DSPコアに関連する1個または複数個のマイクロプロセッサ、コントローラ、マイクロコントローラ、特定用途向けIC(ASIC:Application Specific Integrated Circuits)、書替え可能ゲートアレイ(FPGA:Field Programmable Gate Array)回路、他の任意のタイプの集積回路(IC)および/または状態機械が含まれる。
【0115】
<実施形態>
1.無線通信において時刻値を保護するための方法であって、
タイムスタンプ要求を送信するステップと、
そのタイムスタンプ要求に応答してタイムスタンプを受信するステップと、
ティック・スタンプを生成するステップと、
そのティック・スタンプを送信するステップと、
代替精度ステートメントを受信するステップと
を含むことを特徴とする方法。
2.受信する代替精度ステートメントは、信頼された時刻ステートメントであることを特徴とする実施形態1に記載の方法。
3.無線通信において時刻値を保護するための方法であって、
第1のタイムスタンプを受信するステップと、
連続して送信するために2つのティック・スタンプを生成するステップと、
修正されたタイムスタンプを受信するステップと、
その修正されたタイムスタンプをティック・スタンプするステップと
を含むことを特徴とする方法。
4.2つのタイムスタンプは、所定の間隔にわたって連続して送信されることを特徴とする実施形態3に記載の方法。
5.第1のタイムスタンプは、データを含むことを特徴とする実施形態3または4に記載の方法。
6.そのデータは、その2つのティック・スタンプを生成するための命令を含むことを特徴とする実施形態3〜5のいずれか1つに記載の方法。
7.第1のタイムスタンプおよび修正されたタイムスタンプは、別の時刻標準機関から受信されることを特徴とする実施形態3〜6のいずれか1つに記載の方法。
8.その別の時刻標準機関のうちの少なくとも1つは、内部時刻エージェントであることを特徴とする実施形態3〜7のいずれか1つに記載の方法。
9.実時間クロック値を取り出すステップと、
その実時間クロック値を保護するステップと、
その実時間クロック値からタイムスタンプを生成するステップと
をさらに含むことを特徴とする実施形態3〜8のいずれか1つに記載の方法。
10.TPM(信頼された処理モジュール)を使用してローカルクロックを保護するステップ
をさらに含むことを特徴とする上記の実施形態のいずれか1つに記載の方法。
11.信頼されたコンピューティング方法に基づくことを特徴とする上記の実施形態のいずれか1つに記載の方法。
12.TPMは、外部クロックにセキュアに結合されることを特徴とする上記の実施形態のいずれか1つに記載の方法。
13.初期時刻を提供する時刻源が提供する監査データに対し、少なくとも1つのAS(精度ステートメント)を使用するステップ
をさらに含むことを特徴とする上記の実施形態のいずれか1つに記載の方法。
14.トラストセンタを運用するコストを減らすために、X.509証明書の応用例においてOCSP(オンライン証明書状態プロトコル;online certificate status protocol)レスポンダを省くステップ
をさらに含むことを特徴とする上記の実施形態のいずれか1つに記載の方法。
15.セキュアな時刻源を使用して証明書を検査するステップをさらに含むことを特徴とする上記の実施形態のいずれか1つに記載の方法。
16.信頼できる時刻ステートメントを、他のエンティティと協働するデバイスによって確立する実現性に基づく、モバイルデバイス用の複数の使用シナリオを可能にするステップ
をさらに含むことを特徴とする上記の実施形態のいずれか1つに記載の方法。
17.AS(精度ステートメント)は、実時間に対する、ハードウェアによって保護されるデバイス側カウンタ値間の信頼できる結合を提供することを特徴とする上記の実施形態のいずれか1つに記載の方法。
18.ASは、信頼されたコンピューティング方法によって確立、保護され、かつ、導き出される時刻ステートメントの十分な柔軟性およびスケーリングの信頼性を提供することを特徴とする実施形態17に記載の方法。
19.外部時刻は、タイムスタンプが作成された後、TPMに結合されることを特徴とする上記の実施形態のいずれか1つに記載の方法。
20.プラットフォーム上のTPMの内部ティック・カウンタと他のエンティティとの間で協働し、ティック・カウンタ値と実時間クロック値との間の関係を得ることを特徴とする上記の実施形態のいずれか1つに記載の方法。
21.署名されたティック・カウンタ値とタイムスタンプとを併せて使用することを特徴とする実施形態20に記載の方法。
22.エンティティの複数のインスタンスを使用する場合、現実の物理的時刻をt_1,...,t_nとして示すように、TCV(ティック・カウンタ値)TCV_1、TSN(ティック・セッション・ノンス)TSN_a、D(blob)_1やD_1、TS_1,...,TS_nなどの添え字表記を使用し、ある実時間におけるティック・カウンタの値はTCV(t)として記すことを特徴とする上記の実施形態のいずれか1つに記載の方法。
23.ASが信頼およびセキュリティに関して十分に満足のいくものではない場合、検証者は、T_1とt_aとの間、およびt_aとT_2との間それぞれの期間内に、TPMティック・カウンタが精度に関して適切に機能していることを信頼してそれらの期間の間の実時間距離を評価する必要があることを特徴とする実施形態21または22に記載の方法。
24.T(TCV(t))を実時間クロック値により強く結合するために、その値を2つのタイムスタンプの間に入れることを特徴とする実施形態22または23に記載の方法。
25.TAからのタイムスタンプでTS(TCV)を包み、別のTTS(信頼されたタイムスタンプ)をもたらすことを特徴とする実施形態22〜24のいずれか1つに記載の方法。
26.ある最初の時点において、プラットフォーム(P)は、ある知られているデータDについてのタイムスタンプをTAに要求することを特徴とする実施形態22〜25のいずれか1つに記載の方法。
27.t_aにおいて、TA(時刻標準機関)はTStamp(D,t_a)を作成し、それを直ちにPに送り返すことを特徴とする実施形態22〜26のいずれか1つに記載の方法。
28.Pは、時刻t>=t_aにおいてそのタイムスタンプをTAから受信し、TS(TStamp(t_a),TCV(t))を作成し、それを直ちにTAに送り返すことを特徴とする実施形態22〜27のいずれか1つに記載の方法。
29.TAは、そのTS(TStamp(t_a),TCVを受信し、t_bにおいて、SA(t_a,TCV(t),t_b):=TStamp(TS(TStamp(t_a),TCV(t)),t_b)を作成し、この構造を直ちにPに送り返すことを特徴とする実施形態22〜28のいずれか1つに記載の方法。
30.t_a<=T<=t_b、ただし、T:=T(TCV(t))であることを特徴とする実施形態22〜29のいずれか1つに記載の方法。
31.時刻t_aにおいて、TAは、Pが所定の間隔(I)にわたり2つの連続したティック・スタンプを発行するための命令を含む、データ(D)のタイムスタンプを発行することを特徴とする実施形態22〜30のいずれか1つに記載の方法。
32.TAはTStamp(D(I),t_a)を取得し、このタイムスタンプを発行した後、TAはこのタイムスタンプを直ちにプラットフォームPに送信することを特徴とする実施形態22〜31のいずれか1つに記載の方法。
33.TStamp(D(I),t_a)を受信すると、Pは、D(I)||t_aをティック・スタンプすることを特徴とする実施形態22〜32のいずれか1つに記載の方法。
34.Pは、TS1:=TS(D(I),t_a),TCV(t1))を得ることを特徴とする実施形態22〜33のいずれか1つに記載の方法。
35.t1は、このティック・スタンピングが行われるときの実時間であり、Pは、そのティック・スタンプを直ちにTAに送信することを特徴とする実施形態22〜34のいずれか1つに記載の方法。
36.Pは間隔Iを待ち、次いで第2のティック・スタンプをティック・スタンプし、そのためTS2:=TS(D((I),t_a)||TS1,TCV(t2))が生じ、ただしt2は(Pにおける)t=t1+Iのローカル推定であり、Pはこのティック・スタンプを直ちにTAに送信することを特徴とする実施形態22〜35のいずれか1つに記載の方法。
37.TAは、ティック・スタンプTS1およびTS2の両方を受信すると、SA’(t_a,D(I),t_b):=TStamp(TS2||TS1,t_b)をタイムスタンプすることを特徴とする実施形態22〜36のいずれか1つに記載の方法。
38.代替精度ステートメント(SA’)は、関係t_a<=t1<t1+I<=t_bをアサートする信頼できる時刻ステートメントであり、ただし、t1:=T(TCV(t1))、およびt2:=T(TCV(t1+I))であることを特徴とする実施形態22〜37のいずれか1つに記載の方法。
39.起動サイクルの開始時に、信頼されたプラットフォーム(P)の方法は、
ITA(内部時刻エージェント)を始動するステップと、
TCGモバイルフォンワーキンググループの仕様の安全起動機能を使用し、信頼でき、障害が起きていない状態でITAが始動され、適切に構成されることを強制するステップと
を含むことを特徴とする上記の実施形態のいずれか1つに記載の方法。
40.このプラットフォームが、起動時におけるロード済みプログラムの測定しかサポートしない場合、ITAの信頼性を、遠隔証明により外部の検証者に証明することを特徴とする実施形態39に記載の方法。
41.専用のITAインスタンスは、P上に共存することを特徴とする実施形態39または40のいずれか1つに記載の方法。
42.ITAは、精度ステートメントを作成する際にTAに取って代わることを特徴とする実施形態39〜41のいずれか1つに記載の方法。
43.ITAとRTCとの間には、ITAが真正の実時間値を任意のときに取り出す、安全なチャネルがあることを特徴とする実施形態39〜42のいずれか1つに記載の方法。
44.ITAは、TPMの暗号機能を使用して、RTC値を保護することを特徴とする実施形態39〜43のいずれか1つに記載の方法。
45.ITAは、TPMのソフトウェア暗号ライブラリまたは署名機能を使用して、RTC値からタイムスタンプを作成することを特徴とする実施形態39〜45のいずれか1つに記載の方法。
46.CSK(証明済み署名鍵)を証明する証明書がAIK(証明識別鍵)によって署名されるように、ITAは、PのAIKに結合されるCSKを使用することを特徴とする実施形態39〜46のいずれか1つに記載の方法。
47.RTCとティック・カウンタとは、同じクロック源によって駆動されることを特徴とする上記の実施形態のいずれか1つに記載の方法。
48.TPM_SIGN_INFOデータ構造内の未使用領域に、RTCからの追加情報を組み込むことを特徴とする上記の実施形態のいずれか1つに記載の方法。
49.強化されたTPM_SIGN_INFOデータ構造を規定し、日時の絶対的指示を提供することを特徴とする上記の実施形態のいずれか1つに記載の方法。
50.自らの時刻源からUTC(協定世界時;universal time clock)時刻を取り出すために必要な時間d_tと、タイムスタンプを作成するために必要な時間D_tとが、高い精度で知られていることを特徴とする上記の実施形態のいずれか1つに記載の方法。
51.P上の時間に関連するTPM操作は、d_t=0と仮定することを特徴とする実施形態50に記載の方法。
52.署名遅延補償済み精度ステートメントを、SA(t,t’)によって示すことを特徴とする実施形態50または51のいずれか1つに記載の方法。
53.SA(t_a,t_b)によって示す、署名遅延補償済み精度ステートメントを作成する際にD_tを補償するため、TAは、SAが時刻t_aにおいて(D_t,可変要素a)に修正されるように、第1のタイムスタンプ内にD_tを含め、TAは、D’=D_t、またはD’=D||D_tであるTStamp(D’,t_a)を作成し、そのTstamp(D’,t_a)およびD_tを直ちにPに送り返すことを特徴とする実施形態50〜52のいずれか1つに記載の方法。
54.TAは、t_aにD_tを加え、時刻t_aにおいて(D_t,可変要素b)を作成し、TAは、TStamp(D,t_a+D_t)を作成し、そのタイムスタンプを直ちにPに送り返すことを特徴とする実施形態50〜53のいずれか1つに記載の方法。
55.SA(t_a,D’=D_t,t_b)(可変要素2a)、またはSA(t_a+D_t,D,t_b)(可変要素2b)として表す信頼できる時刻ステートメントは、t_a+D_t<=T<=t_b、ただし、T:=T(TCV(t))であり、SA(t_a,D,t_b)では、t_a<=T<=t_b、ただし、T:=T(TCV(t))、しか得られないので、この時刻ステートメントは、SA(t_a,D,t_b)よりも厳密な時間的結合をもたらすことを特徴とする実施形態54に記載の方法。
56.ティック・インクリメント率は、プラットフォーム内のTPMの工場パラメータであることを特徴とする上記の実施形態のいずれか1つに記載の方法。
57.Pは、2つの精度ステートメントS_1:=SA(t_a,TCV(t_1),t_b)、およびS_2:=SA(t_c,TCV(t_2),t_d)を作成することを特徴とする上記の実施形態のいずれか1つに記載の方法。
58.PがS_1およびS_2を送る相手の外部検証者は、S_1とS_2とによって囲まれる期間内のTIRの平均値として、実TIRの現在の推定値を計算することを特徴とする実施形態56または57のいずれか1つに記載の方法。
59.t’_1:=(t_b−t_a)/2、およびt’_2:=(t_d−t_c)/2、およびcTIR(S_1,S_2):=(t’_2−t’_1)/(TCV(t_2)−TCV(t_1))であることを特徴とする実施形態56〜58のいずれか1つに記載の方法。
60.関与する精度ステートメントが、t_1、t_2それぞれの前後の、一定のTCVの時間間隔の境界をもたらすとき、cTIRは上限および下限に従うことを特徴とする実施形態56〜59のいずれか1つに記載の方法。
61.その境界のうちの少なくとも1つは、(t_c−t_b)/(TCV(t_2)−TCV(t_1))<=cTIR<=(t_d−t_a)/(TCV(t_2)−TCV(t_1))によって表されることを特徴とする実施形態60に記載の方法。
62.精度は、関与する第1のティック・カウンタ値と第2のティック・カウンタ値との差に伴って高まり、cTIRおよび境界はどちらも、S_1およびS_2を保有するエンティティによって計算されることを特徴とする実施形態56〜61のいずれか1つに記載の方法。
63.TIR測定における時刻標準機関のそれぞれは、独立に選択されることを特徴とする実施形態56〜62のいずれか1つに記載の方法。
64.追加の時刻アサーションを使用することにより、境界の精度を絶えず改善し、長い時間間隔にわたって分散する時刻アサーションを使用し、TIRのずれ率についての推定を得ることを特徴とする実施形態56〜63のいずれか1つに記載の方法。
65.cTIR、およびcTIRをもたらす精度ステートメントに関連する測定を様々な状況で使用し、Pの状態、機能パラメータ、または信頼性に関する評価を導き出すことを特徴とする実施形態56〜64のいずれか1つに記載の方法。
66.測定したcTIRの統計的分散が、特定の設定値よりも大きい場合、その統計的分散は、デバイス(プラットフォームP)、TPM、またはティック・カウンタに対する攻撃として解釈することを特徴とする実施形態56〜65のいずれか1つに記載の方法。
67.cTIRが、ある期間にわたり一貫してかつ著しく低くまたは高く、時間デバイスの経年劣化によって引き起こされる標準偏差を上回る場合、この状況は、デバイスのティック・カウンタの機能不良を明らかにするものとして、外部のオブザーバが解釈することを特徴とする実施形態56〜66のいずれか1つに記載の方法。
68.cTIRが、ある期間にわたりランダムにかつ著しく低くまたは高く、経年劣化、電圧変動、もしくは温度変化等によって引き起こされる標準偏差を上回る場合、この状況は、異常動作状態またはティック・カウンタもしくはデバイスの改ざんを明らかにするものとして解釈されることを特徴とする実施形態56〜67のいずれか1つに記載の方法。
69.複数の予期される適用分野は、組込みシステムにおけるTPMであることを特徴とする実施形態56〜68のいずれか1つに記載の方法。
70.TAは、ステートメントを要求するプラットフォームの状態、またはそのプラットフォームがTPMと通信するのか、分からないことを特徴とする上記の実施形態のいずれか1つに記載の方法。
71.Pは、AIK(証明識別鍵)を作成し、TCGが定義するプロトコルに従って自らが要求した、そのAIKに関するPCA(プライバシCA)からのAIK信用証明を保持することを特徴とする実施形態70に記載の方法。
72.精度ステートメントは、プラットフォーム識別に結合されることを特徴とする実施形態70または71に記載の方法。
73.Pは、AIKから証明済み署名鍵CSKを作成することを特徴とする実施形態70〜72のいずれか1つに記載の方法。
74.PおよびTAは、精度ステートメントAS()、SAをそれぞれ確立し、Pによるティック・スタンピングの各インスタンスは、署名鍵としてCSKを使用するように指定されることを特徴とする実施形態70〜73のいずれか1つに記載の方法。
75.信頼されたプラットフォームPが、データブロブDを保持することを後の時点tにおいて検証者Vに証明するために、この方法は、
Pが、TTS(t):=TS[CSK](D,TCV(t))を作成するステップであって、CSKは、AIKによって証明される新たな鍵か、または精度ステートメントを作成する際に使用した元の鍵である、TTS(t):=TS[CSK](D,TCV(t))を作成するステップと、
PがVに、AIK信用証明、CSKの公開部分、精度ステートメントおよびその中に署名されたデータ、TTS(t)、D、ならびにTCV(t)を明らかにするステップと
をさらに含むことを特徴とする実施形態70〜74のいずれか1つに記載の方法。
76.Vは、その精度ステートメントが、アクティブなTPMを備える信頼されたプラットフォームによって作成されたことを確認することを特徴とする実施形態70〜75のいずれか1つに記載の方法。
77.Vは、信頼できる時刻ステートメントTTS(t)が、同じプラットフォームによって作成されたことを確認することを特徴とする実施形態70〜76のいずれか1つに記載の方法。
78.TPMによるすべてのティック・スタンプ操作は、CSKを使用して、特定のTCVのあるデータを保持することを示すTTSを作成することを特徴とする上記の実施形態のいずれか1つに記載の方法。
79.PCAは、TAの役割を果たし、AIK証明プロセスとTTS作成プロセスとを統合することにより、精度ステートメントを提供することを特徴とする上記の実施形態のいずれか1つに記載の方法。
80.プラットフォームPとプライバシCA PCAとの間のAIKを証明するステップであって、PはAIKの証明をPCAに要求し、精度ステートメントSAを得るための要求を発行する、AIKを証明するステップ
をさらに含むことを特徴とする実施形態79に記載の方法。
81.プラットフォームPとプライバシCA PCAとの間のAIKを証明するステップは、
PCAおよびPが、SAを作成するためのプロトコルを実行するステップであって、署名データDは、証明が要求されるAIKの公開部分またはそのAIKに連結されるものとして指定される、SAを作成するためのプロトコルを実行するステップ
をさらに含むことを特徴とする実施形態79または80に記載の方法。
82.プラットフォームPとプライバシCA PCAとの間のAIKを証明するステップは、
PCAがAIKの証明に移るステップ
をさらに含むことを特徴とする実施形態79〜81のいずれかに記載の方法。
83.TTSは、AIK証明要求を受信したことの意味をもつことを特徴とする上記の実施形態のいずれか1つに記載の方法。
84.一緒に検証者に提示される場合、生成済みTTSおよびAIK証明書の意味は、Pが、特定の時刻にAIKの証明を要求した信頼されたプラットフォームであり、そのAIK証明要求の時刻が、SA内の2つのTCVが示す2つの時刻値の範囲内にあることであることを特徴とする上記の実施形態のいずれか1つに記載の方法。
85.TTSは、Pの特定のAIKに結合されることを特徴とする上記の実施形態のいずれか1つに記載の方法。
86.PCAがAIKの証明を実行し、証明書を作成するステップと、
署名データとしてAIKの公開部分またはAIK証明書全体を含む、SA作成プロトコルの第1のタイムスタンプを作成するステップと、
AIK証明書およびこの第1のタイムスタンプをPに送信し、オプションでタイマを始動するステップと、
PおよびPCAがSA作成プロセスを完了するステップであって、Pは問題のAIKに関するCSKを使用する、完了するステップと
をさらに含むことを特徴とする上記の実施形態のいずれか1つに記載の方法。
87.PCAは、タイマの値が特定の規定値より大きくない場合にのみ、最後のタイムスタンプを発行することにより作成されるTTSの新鮮さを強化し、これにより、TTS内に示されるTCVは、AIKを証明した後の限られた時間しか存在しないことを特徴とする実施形態86に記載の方法。
88.TPMが変化する時刻に関するステートメントを含むように、遠隔証明プロセスを拡張することを特徴とする上記の実施形態のいずれか1つに記載の方法。
89.検証者から証明要求を受信し、証明クライアントとTPMとの間に認証セッションを確立した後、ティック・スタンプTS_Aを作成することを特徴とする上記の実施形態のいずれか1つに記載の方法。
90.認証セッションを確立することは、後の遠隔証明で使用するAIKに関するCSKを使用してもたらされることを特徴とする実施形態89に記載の方法。
91.Pは、TPM_Quoteコマンドを使用し、AIKでPCRに署名することにより、遠隔証明に移ることを特徴とする実施形態90に記載の方法。
92.AP(証明パッケージ)を検証者に送信する直前に、第2のティック・スタンプTS_Bを作成することを特徴とする実施形態88〜91のいずれか1つに記載の方法。
93.証明クライアントはTAにタイムスタンプを要求し、上述した方法のいずれかにより精度ステートメントを作成することを特徴とする実施形態88〜92のいずれか1つに記載の方法。
94.証明クライアントは内部ITAの機能を果たし、RTCに基づく単なるティック・スタンプの代わりに精度ステートメントを作成することを特徴とする実施形態88〜93のいずれか1つに記載の方法。
95.修正された証明パッケージデータ構造にティック・スタンプを統合することを特徴とする上記の実施形態のいずれか1つに記載の方法。
96.プラットフォームのSML(記憶測定ログ)をティック・スタンプによって拡張することを特徴とする上記の実施形態のいずれか1つに記載の方法。
97.遠隔証明に導入される時刻ステートメントは、検証者が信頼できるプラットフォームの状態についての膨大なデータベースを保つ負担を部分的に軽減するために使用することを特徴とする上記の実施形態のいずれか1つに記載の方法。
98.時刻ステートメントは、さらに以前のPの状態による証明と比較されることを特徴とする上記の実施形態のいずれか1つに記載の方法。
99.TPMのカウンタをリセットするごとに、外部エンティティに時刻ステートメントを伝達するための、明確に定義されたセキュリティ・コンテキスト得るためにノンスが必要であることを特徴とする上記の実施形態のいずれか1つに記載の方法。
100.このリセット操作にタイムスタンプを関連させるために、TSN(ティック・セッション・ノンス)を後に使用することを特徴とする実施形態99に記載の方法。
101.このノンスは、このデバイスおよび各リセット操作について一意であり、そのため、TPM内の乱数発生器によって作成されることを特徴とする実施形態99または100に記載の方法。
102.実際のTSNは、TPM_GetTicksコマンドを発行することによって得られ、TSN値は、その結果生じるCURRENT_TICKSデータ構造に含まれることを特徴とする実施形態99〜101のいずれか1つに記載の方法。
103.再起動サイクルおよび様々なパワーモードにも有効なセッションを確立するために、mTSN(メタTSN)を使用して様々なTSNセッションに及ぶことができるセッションを提供する、メタセッションが必要であることを特徴とする実施形態99〜102のいずれか1つに記載の方法。
104.mTSNは、外部の時刻プロバイダもしくはTA(時刻標準機関)が生成し、またはTPMの乱数発生器が内部的に生成することを特徴とする実施形態99〜103のいずれか1つに記載の方法。
105.TAは、プラットフォームの初期化プロセス中のある時点においてデバイスからmTSN要求を受信することを特徴とする実施形態99〜104のいずれか1つに記載の方法。
106.TA(時刻プロバイダ)およびオペレータが発行する署名を広範に使用することにより、TAにおけるノンスデータベースの必要性を減らすことを特徴とする実施形態99〜105のいずれか1つに記載の方法。
107.プラットフォーム設計に、RTC(実時間クロック)を含めることを特徴とする上記の実施形態のいずれか1つに記載の方法。
108.この方法は、DRM(デジタル著作権管理)デバイスによって実行されることを特徴とする上記の実施形態のいずれか1つに記載の方法。
109.RI(権利発行者)は、ROAP(権利オブジェクトアクセスプロトコル)の実行中に、ASおよびティック・スタンプをDRMデバイスに要求することを特徴とする実施形態108に記載の方法。
110.ASは、プラットフォーム上で証明ステートメントに結合されることを特徴とする実施形態108または109のいずれか1つに記載の方法。
111.RIは、DRMエージェントがアクティブであり、障害が起きておらず、正確かつ改ざんされていない時刻にアクセスできるという保証を得ることを特徴とする実施形態108〜110のいずれか1つに記載の方法。
112.すべての検査が成功する場合にのみ、権利オブジェクトを送ることを特徴とする実施形態108〜111のいずれか1つに記載の方法。
113.RIは、使用権についての時間制限を、RO(権利オブジェクト)の中にTSNおよびTCVに関して直接コーディングすることを特徴とする実施形態108〜112のいずれか1つに記載の方法。
114.権利を取得するためのこの初期設定段階でROを受信すると、DRMエージェントは、デバイス上のITAと協働し、または統合されることを特徴とする実施形態108〜113のいずれか1つに記載の方法。
115.DRMエージェントはTPMからティック・スタンプを取得し、TSNおよびTCVとRO内に表される制限とを比較し、コンテンツに対するアクセス制御を適宜働かせることを特徴とする実施形態108〜114のいずれか1つに記載の方法。
116.RO内の時間制限は標準時刻形式を使用し、それらの時間制限をTCVに関連させることはDRMエージェントの役割であることを特徴とする実施形態108〜115のいずれか1つに記載の方法。
117.TCVの有効性を単一のティック・セッションに限定することは、一意のTSNによって表されることを特徴とする実施形態108〜116のいずれか1つに記載の方法。
118.特定のTSN値に権利を結合し、ティック・カウンタがリセットされ、TSNが更新されている場合、DRMエージェントは保護コンテンツへのアクセスを許可しないことを特徴とする実施形態108〜117のいずれか1つに記載の方法。
119.信頼できる時刻ステートメントをRIM証明書に使用することを特徴とする実施形態108〜118のいずれか1つに記載の方法。
120.RIM証明書の有効性は、現実の日時によって表される有効期間と突き合わせて検査することを特徴とする実施形態119に記載の方法。
121.信頼できるモバイルの内部RIM証明書は、信頼できるITA(内部時刻エージェント)を使用することを特徴とする実施形態119または120に記載の方法。
122.ハッシュ拡張を使用して、検証者によって検証される方法でTSNおよび/またはTCVのセッション値の履歴を捕捉することを特徴とする実施形態119〜121のいずれか1つに記載の方法。
123.上記の実施形態のうちの任意の方法を使用するように構成されることを特徴とするWTRU(無線送受信ユニット)。
124.タイムスタンプ要求を送信し、
そのタイムスタンプ要求に応答してタイムスタンプを受信し、
ティック・スタンプを生成し、
そのティック・スタンプを送信し、
代替精度ステートメントを受信する
ように構成されるTPM(信頼されたプラットフォームモジュール)
を備えることを特徴とするWTRU(無線送受信ユニット)。
125.第1のタイムスタンプを受信し、
連続して送信するために2つのティック・スタンプを生成し、
修正されたタイムスタンプを受信し、
その修正されたタイムスタンプをティック・スタンプする
ように構成されるTPM(信頼されたプラットフォームモジュール)
を備えることを特徴とするWTRU(無線送受信ユニット)。
126.TPMは、所定の間隔にわたって2つのティック・スタンプを連続して送信するように構成されることを特徴とする実施形態124または125に記載のWTRU。
127.TPMは、データを含む第1のタイムスタンプを受信するように構成されることを特徴とする実施形態124〜126のいずれかに記載のWTRU。
128.TPMは、第1のタイムスタンプ内で受信したデータに基づいて、2つのティック・スタンプを生成するように構成されることを特徴とする実施形態124〜127のいずれかに記載のWTRU。
129.TPMは、第1のタイムスタンプおよび修正されたタイムスタンプを、別の時刻標準機関から受信するように構成されることを特徴とする実施形態124〜128のいずれかに記載のWTRU。
130.TPMは、内部時刻エージェントをさらに備えることを特徴とする実施形態124〜129のいずれかに記載のWTRU。
131.内部時刻エージェントは、
実時間クロック値を取り出し、
その実時間クロック値を保護し、
その実時間クロック値に基づいてタイムスタンプを生成する
ように構成されることを特徴とする実施形態130に記載のWTRU。
132.無線通信において精度ステートメントを保護するための方法であって、
AIK(証明識別鍵)からCSK(証明済み署名鍵)を生成するステップと、
精度ステートメントを生成するステップと、
TTS(信頼できる時刻ステートメント)を生成するステップと、
AIK信用証明、CSKの一部分、精度ステートメント、または署名データを明らかにするステップと
を含むことを特徴とする方法。
133.実施形態132に記載の方法を使用するように構成されることを特徴とする無線送受信ユニット。
【0116】
ソフトウェアに関連するプロセッサを、WTRU(無線送受信ユニット)、UE(ユーザ装置)、ターミナル、基地局、RNC(無線ネットワークコントローラ)または任意のホストコンピュータで使用する無線周波数トランシーバを実装するために使用することができる。WTRUは、カメラ、ビデオカメラモジュール、テレビ電話、スピーカホン、振動装置、スピーカ、マイクロホン、テレビトランシーバ、ハンズフリーヘッドセット、キーボード、Bluetooth(登録商標)モジュール、FM(周波数変調)無線ユニット、LCD(液晶ディスプレイ)ディスプレイユニット、OLED(有機発光ダイオード)ディスプレイユニット、デジタル音楽プレイヤ、メディアプレイヤ、ビデオゲーム機モジュール、インターネットブラウザ、および/または任意のWLAN(無線LAN)もしくはUWB(超広帯域)モジュールなど、ハードウェアおよび/またはソフトウェアによって実装されるモジュールと組み合わせて使用することができる。