(57)【要約】  方法およびデバイスは、時間ベースライセンスを用いてゲーム、媒体、データ、または他のソフトウェアを保護するためにフレキシブルなデジタル著作権管理ライセンスポリシーを生成、管理、変更、および／または執行することを提供する。実施形態は、特に、時間ソースが入手できないか、信用できないか、または信頼できない状況に向けられる。ライセンスは、少数のパラメータによって定義される。パラメータ値は、保護コンテンツまたはアプリケーションによって定義され、それとともに含められることができる。パラメータ値は、使いやすさとセキュリティ特性との間の所望の妥協レベルを定義し、執行するように選択されることができる。
2011508351.tif 000002
【特許請求の範囲】
【請求項１】
モバイルデバイス上で保護コンテンツへのアクセスを制限するための方法であって、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する第１のポリシー条件を表す第１のパラメータ値を前記モバイルデバイス上に記憶することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有するかどうかを判断することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有する場合、前記保護コンテンツへのアクセスを許可することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを融資ない場合、前記第１のポリシー条件が満たされるかどうかを判断することと、
前記第１のポリシー条件が満たされる限り、前記保護コンテンツへのアクセスを与えることと、
を備える方法。
【請求項２】
前記第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項１に記載の方法。
【請求項３】
前記第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項１に記載の方法。
【請求項４】
前記第１のパラメータ値は、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項１に記載の方法。
【請求項５】
前記第１のパラメータ値は、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項１に記載の方法。
【請求項６】
前記第１のパラメータ値は、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項１に記載の方法。
【請求項７】
前記第１のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせることと、
前記更新が存在する場合、前記第１のパラメータ値に対する前記更新をダウンロードすることと、
前記第１のパラメータ値に対する前記更新を前記モバイルデバイス上に記憶することと、
をさらに備える、請求項１に記載の方法。
【請求項８】
前記第１のパラメータに対する前記更新は、暗号化され認証されたファイル中でダウンロードされる、請求項７に記載の方法。
【請求項９】
前記第１のパラメータに対する前記更新は、ＳＭＳメッセージ中で受信される、請求項７に記載の方法。
【請求項１０】
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す複数のパラメータ値を記憶することをさらに備える、請求項１に記載の方法。
【請求項１１】
前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数であり、前記複数のパラメータ値のうちの別の１つは、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項１０に記載の方法。
【請求項１２】
前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項１０に記載の方法。
【請求項１３】
前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがローミング中であるときに前記モバイルデバイスがどのようにアクセス試行を扱うべきかを示す、請求項１０に記載の方法。
【請求項１４】
前記複数のパラメータ値のうちの１つは、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項１０に記載の方法。
【請求項１５】
前記複数のパラメータ値のうちの１つは、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項１０に記載の方法。
【請求項１６】
前記複数のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせることと、
前記更新が存在する場合、前記複数のパラメータ値に対する前記更新をダウンロードすることと、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す、前記複数のパラメータ値に対する前記更新を前記モバイルデバイスの前記メモリに記憶することと、
をさらに備える、請求項１０に記載の方法。
【請求項１７】
前記複数のパラメータに対する前記更新は、暗号化され認証されたファイル中でダウンロードされる、請求項１６に記載の方法。
【請求項１８】
前記複数のパラメータに対する前記更新は、ＳＭＳメッセージ中であるとして受信される、請求項１６に記載の方法。
【請求項１９】
新しい保護コンテンツの購入とともに前記複数のパラメータ値に対する更新をダウンロードする、請求項１０に記載の方法。
【請求項２０】
モバイルデバイス上で保護コンテンツの個々のファイルへのアクセスを制限するための方法であって、
少なくとも、前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに保護コンテンツの個々の各ファイルへのアクセスを制御する第１のポリシー条件を表す第１のパラメータ値を前記モバイルデバイス上に記憶することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有するかどうかを判断することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有する場合、保護コンテンツの個々の各ファイルへのアクセスを許可することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有しない場合、保護コンテンツの個々の各ファイルについて前記第１のポリシー条件が満たされるかどうかを判断することと、
前記第１のポリシー条件が満たされる限り、保護コンテンツの個々の各ファイルへのアクセスを与えることと、
を備える方法。
【請求項２１】
前記第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項２０に記載の方法。
【請求項２２】
前記第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項２０に記載の方法。
【請求項２３】
前記第１のパラメータ値は、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項２０に記載の方法。
【請求項２４】
前記第１のパラメータ値は、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項２０に記載の方法。
【請求項２５】
前記第１のパラメータ値は、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項２０に記載の方法。
【請求項２６】
前記第１のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせることと、
前記更新が存在する場合、前記第１のパラメータ値に対する前記更新をダウンロードすることと、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに保護コンテンツの個々の各ファイルへのアクセスを制御する第１のポリシー条件を表す前記第１のパラメータ値に対する前記更新を前記モバイルデバイスの前記メモリに記憶することと、
をさらに備える、請求項２０に記載の方法。
【請求項２７】
前記第１のパラメータに対する前記更新は、暗号化され認証されたファイルにダウンロードされる、請求項２６に記載の方法。
【請求項２８】
前記第１のパラメータに対する前記更新は、ＳＭＳメッセージ中で受信される、請求項２６に記載の方法。
【請求項２９】
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す複数のパラメータ値を記憶することをさらに備える、請求項２０に記載の方法。
【請求項３０】
前記モバイルデバイスの前記メモリに記憶された前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項２９に記載の方法。
【請求項３１】
前記モバイルデバイスの前記メモリに記憶された前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項２９に記載の方法。
【請求項３２】
前記モバイルデバイスの前記メモリに記憶された前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項２９に記載の方法。
【請求項３３】
前記モバイルデバイスの前記メモリに記憶された前記複数のパラメータ値のうちの１つは、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項２９に記載の方法。
【請求項３４】
前記モバイルデバイスの前記メモリに記憶された前記複数のパラメータ値のうちの１つは、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項２９に記載の方法。
【請求項３５】
前記複数のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせることと、
前記更新が存在する場合、前記複数のパラメータ値に対する前記更新をダウンロードすることと、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す前記複数のパラメータ値に対する前記更新を前記モバイルデバイスの前記メモリに記憶することと、
をさらに備える、請求項２９に記載の方法。
【請求項３６】
前記複数のパラメータに対する前記更新は、暗号化されたファイル中でダウンロードされる、請求項３５に記載の方法。
【請求項３７】
前記複数のパラメータに対する前記更新は、ＳＭＳメッセージ中で受信される、請求項３５に記載の方法。
【請求項３８】
前記記憶された複数のパラメータ値のいずれかが、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示しているかどうかを判断するために、前記モバイルデバイスが電源投入されるたびに前記複数のポリシー条件を表す前記記憶された複数のパラメータ値の各々を問い合わせることをさらに備える、請求項２９に記載の方法。
【請求項３９】
新しい保護コンテンツの購入とともに前記複数のパラメータ値に対する更新をダウンロードする、請求項２９に記載の方法。
【請求項４０】
モバイルデバイスであって、
プロセッサと、
前記プロセッサに結合され、ワイヤレスネットワークに接続するように構成されたワイヤレストランシーバと、
前記プロセッサに結合されたメモリであって、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する第１のポリシー条件を表す第１のパラメータ値を前記モバイルデバイス上に記憶することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有するかどうかを判断することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有する場合、前記保護コンテンツへのアクセスを許可することと、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有しない場合、前記第１のポリシー条件が満たされるかどうかを判断することと、
前記第１のポリシー条件が満たされる限り、前記保護コンテンツへのアクセスを与えることと、
を備えるステップを前記プロセッサに実行させるように構成されたソフトウェア命令を記憶したメモリと
を備えるモバイルデバイス。
【請求項４１】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である第１のパラメータ値を利用する、請求項４０に記載のモバイルデバイス。
【請求項４２】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である第１のパラメータ値を利用する、請求項４０に記載のモバイルデバイス。
【請求項４３】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である第１のパラメータ値を利用する、請求項４０に記載のモバイルデバイス。
【請求項４４】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す第１のパラメータ値を利用する、請求項４０に記載のモバイルデバイス。
【請求項４５】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す第１のパラメータ値を利用する、請求項４０に記載のモバイルデバイス。
【請求項４６】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、
前記第１のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせるステップと、
前記更新が存在する場合、前記第１のパラメータ値に対する前記更新をダウンロードするステップと、
前記第１のパラメータ値に対する前記更新を前記モバイルデバイスの前記メモリに記憶するステップと、
を前記プロセッサに実行させるようにさらに構成される、請求項４０に記載のモバイルデバイス。
【請求項４７】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記第１のパラメータに対する前記ダウンロードされた更新を解析し、解読するステップを前記プロセッサに実行させるようにさらに構成される、請求項４６に記載のモバイルデバイス。
【請求項４８】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記第１のパラメータに対する前記更新をＳＭＳメッセージ中で受信するステップを前記プロセッサに実行させるようにさらに構成される、請求項４７に記載のモバイルデバイス。
【請求項４９】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す複数のパラメータ値を記憶するステップを前記プロセッサに実行させるようにさらに構成される、請求項４０に記載のモバイルデバイス。
【請求項５０】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令によって利用される前記複数のパラメータ値のうちの少なくとも１つは、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項４９に記載のモバイルデバイス。
【請求項５１】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令によって利用される前記複数のパラメータ値のうちの少なくとも１つは、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項４９に記載のモバイルデバイス。
【請求項５２】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令によって利用される前記複数のパラメータ値のうちの少なくとも１つは、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項４９に記載のモバイルデバイス。
【請求項５３】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令によって利用される前記複数のパラメータ値のうちの少なくとも１つは、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項４９に記載のモバイルデバイス。
【請求項５４】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令によって利用される前記複数のパラメータ値のうちの少なくとも１つは、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項４９に記載のモバイルデバイス。
【請求項５５】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、
前記複数のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせるステップと、
前記更新が存在する場合、前記複数のパラメータ値に対する前記更新をダウンロードするステップと、
前記複数のパラメータ値に対する前記更新を前記モバイルデバイスの前記メモリに記憶するステップと、
を前記プロセッサに実行させるようにさらに構成される、請求項４９に記載のモバイルデバイス。
【請求項５６】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記第１のパラメータに対する前記ダウンロードされた更新を解析し、解読するステップを前記プロセッサに実行させるようにさらに構成される、請求項５５に記載のモバイルデバイス。
【請求項５７】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、前記第１のパラメータに対する前記更新をＳＭＳメッセージ中で受信するステップを前記プロセッサに実行させるようにさらに構成される、請求項５６に記載のモバイルデバイス。
【請求項５８】
前記モバイルデバイスの前記メモリ中の前記ソフトウェア命令は、新しい保護コンテンツの購入とともに前記複数のパラメータ値に対する更新をダウンロードするステップを前記プロセッサに実行させるようにさらに構成される、請求項４９に記載のモバイルデバイス。
【請求項５９】
モバイルデバイスであって、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する第１のポリシー条件を表す第１のパラメータ値を前記モバイルデバイス上に記憶するための手段と、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有するかどうかを判断するための手段と、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有する場合、前記保護コンテンツへのアクセスを許可するための手段と、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有しない場合、前記第１のポリシー条件が満たされるかどうかを判断するための手段と、
前記第１のポリシー条件が満たされる限り、前記保護コンテンツへのアクセスを与えるための手段と、
を備えるモバイルデバイス。
【請求項６０】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項５９に記載のモバイルデバイス。
【請求項６１】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項５９に記載のモバイルデバイス。
【請求項６２】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項５９に記載のモバイルデバイス。
【請求項６３】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項５９に記載のモバイルデバイス。
【請求項６４】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項５９に記載のモバイルデバイス。
【請求項６５】
前記第１のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせるための手段と、
前記更新が存在する場合、前記第１のパラメータ値に対する前記更新をダウンロードするための手段と、
前記第１のパラメータ値に対する前記更新を前記モバイルデバイス上に記憶するための手段と、
をさらに備える、請求項５９に記載のモバイルデバイス。
【請求項６６】
前記第１のパラメータに対する前記ダウンロードされた更新を解読するための手段をさらに備える、請求項６５に記載のモバイルデバイス。
【請求項６７】
前記第１のパラメータに対する前記更新をＳＭＳメッセージ中で受信し、解析するための手段をさらに備える、請求項６５に記載のモバイルデバイス。
【請求項６８】
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す複数のパラメータ値を記憶するための手段をさらに備える、請求項５９に記載のモバイルデバイス。
【請求項６９】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの少なくとも１つは、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項６８に記載のモバイルデバイス。
【請求項７０】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの少なくとも１つは、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項６８に記載のモバイルデバイス。
【請求項７１】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの少なくとも１つは、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項６８に記載のモバイルデバイス。
【請求項７２】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの少なくとも１つは、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項６８に記載のモバイルデバイス。
【請求項７３】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの少なくとも１つは、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項６８に記載のモバイルデバイス。
【請求項７４】
前記複数のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせるための手段と、
前記更新が存在する場合、前記複数のパラメータ値に対する前記更新をダウンロードするための手段と、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す前記複数のパラメータ値に対する前記更新を前記モバイルデバイス上に記憶するための手段と、
をさらに備える、請求項５９に記載のモバイルデバイス。
【請求項７５】
前記複数のパラメータに対する前記ダウンロードされた更新を解読するための手段をさらに備える、請求項７４に記載のモバイルデバイス。
【請求項７６】
前記複数のパラメータに対する前記更新をＳＭＳメッセージ中で受信し、解析するための手段をさらに備える、請求項７４に記載のモバイルデバイス。
【請求項７７】
新しい保護コンテンツの購入とともに前記複数のパラメータ値に対する更新をダウンロードするための手段をさらに備える、請求項６８に記載のモバイルデバイス。
【請求項７８】
モバイルデバイスであって、
少なくとも、前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに保護コンテンツの個々の各ファイルへのアクセスを制御する第１のポリシー条件を表す第１のパラメータ値を前記モバイルデバイス上に記憶するための手段と、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有するかどうかを判断するための手段と、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有する場合、保護コンテンツの個々の各ファイルへのアクセスを許可するための手段と、
前記モバイルデバイスが前記セキュア時間ソースへのアクセスを有しない場合、保護コンテンツの個々の各ファイルについて前記第１のポリシー条件が満たされるかどうかを判断するための手段と、
前記第１のポリシー条件が満たされる限り、保護コンテンツの個々の各ファイルへのアクセスを与えるための手段と、
を備えるモバイルデバイス。
【請求項７９】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項７８に記載のモバイルデバイス。
【請求項８０】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項７８に記載のモバイルデバイス。
【請求項８１】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項７８に記載のモバイルデバイス。
【請求項８２】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項７８に記載のモバイルデバイス。
【請求項８３】
前記モバイルデバイス上に記憶される前記第１のパラメータ値は、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項７８に記載のモバイルデバイス。
【請求項８４】
前記第１のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせるための手段と、
前記更新が存在する場合、前記第１のパラメータ値に対する前記更新をダウンロードするための手段と、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに保護コンテンツの個々の各ファイルへのアクセスを制御する第１のポリシー条件を表す前記第１のパラメータ値に対する前記更新を、前記モバイルデバイスの記憶するための前記手段に記憶するための手段と、
をさらに備える、請求項７８に記載のモバイルデバイス。
【請求項８５】
前記第１のパラメータに対する前記ダウンロードされた更新を解読するための手段をさらに備える、請求項８４に記載のモバイルデバイス。
【請求項８６】
前記第１のパラメータに対する前記更新をＳＭＳメッセージ中で受信し、解析するための手段をさらに備える、請求項８４に記載のモバイルデバイス。
【請求項８７】
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す複数のパラメータ値を記憶するための手段をさらに備える、請求項７８に記載のモバイルデバイス。
【請求項８８】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項８７に記載のモバイルデバイス。
【請求項８９】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項８７に記載のモバイルデバイス。
【請求項９０】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項８７に記載のモバイルデバイス。
【請求項９１】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの１つは、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項８７に記載のモバイルデバイス。
【請求項９２】
前記モバイルデバイス上に記憶される前記複数のパラメータ値のうちの１つは、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項８７に記載のモバイルデバイス。
【請求項９３】
前記複数のパラメータ値に対する更新が存在するかどうかを判断するために周期的に保護コンテンツプロバイダサーバに問い合わせるための手段と、
前記更新が存在する場合、前記複数のパラメータ値に対する前記更新をダウンロードするための手段と、
前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す前記複数のパラメータ値に対する前記更新を前記モバイルデバイス上に記憶するための手段と、
をさらに備える、請求項８７に記載のモバイルデバイス。
【請求項９４】
前記第１のパラメータに対する前記ダウンロードされた更新を解読するための手段をさらに備える、請求項９３に記載のモバイルデバイス。
【請求項９５】
前記第１のパラメータに対する前記更新をＳＭＳメッセージ中で受信し、解析するための手段をさらに備える、請求項９３に記載のモバイルデバイス。
【請求項９６】
前記記憶された複数のパラメータ値のいずれかが、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示しているかどうかを判断するために、前記モバイルデバイスが電源投入されるたびに前記複数のポリシー条件を表す前記記憶された複数のパラメータ値の各々を問い合わせるための手段をさらに備える、請求項８７に記載のモバイルデバイス。
【請求項９７】
新しい保護コンテンツの購入とともに前記複数のパラメータ値に対する更新をダウンロードするための手段をさらに備える、請求項８７に記載のモバイルデバイス。
【請求項９８】
保護コンテンツをモバイルデバイスに提供するためのサーバであって、
保護コンテンツの個々のファイルと、少なくとも、前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する第１のポリシー条件を表す第１のパラメータ値を含むデータベースと、を記憶した大容量記憶メモリと、
前記大容量記憶メモリに結合され、ワイヤレスネットワークに接続するように構成されたプロセッサであって、
前記モバイルデバイスによる保護コンテンツをダウンロードする要求を受信するステップと、
前記要求に応答して前記保護コンテンツを前記モバイルデバイスに送信するステップと、
少なくとも、前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する第１のポリシー条件を表す第１のパラメータ値を前記モバイルデバイスに送信するステップと、
をプロセッサ実行可能ソフトウェア命令によって実行するように構成されたプロセッサと、
を備えるサーバ。
【請求項９９】
前記少なくとも第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項９８に記載のサーバ。
【請求項１００】
前記少なくとも第１のパラメータ値は、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項９８に記載のサーバ。
【請求項１０１】
前記少なくとも第１のパラメータ値は、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項９８に記載のサーバ。
【請求項１０２】
前記少なくとも第１のパラメータ値は、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項９８に記載のサーバ。
【請求項１０３】
前記少なくとも第１のパラメータ値は、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項９８に記載のサーバ。
【請求項１０４】
前記プロセッサは、前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する第１のポリシー条件を表す前記少なくとも第１のパラメータ値を更新するために前記大容量記憶メモリにアクセスするようにプロセッサ実行可能ソフトウェア命令によって構成される、請求項９８に記載のサーバ。
【請求項１０５】
前記プロセッサは、
前記少なくとも第１のパラメータ値に対する更新が前記大容量記憶メモリ中に存在するかどうかを判断する問合せ要求を前記モバイルデバイスから受信するステップと、
前記更新が存在する場合、前記少なくとも第１のパラメータ値に対する前記更新を行う前記モバイルデバイスに送信するステップと、
をプロセッサ実行可能ソフトウェア命令によって実行するようにさらに構成される、請求項１０４に記載のサーバ。
【請求項１０６】
前記プロセッサは、暗号化され認証されたファイルとして前記少なくとも第１のパラメータに対する前記更新を送信するようにプロセッサ実行可能ソフトウェア命令によって構成される、請求項１０５に記載のサーバ。
【請求項１０７】
前記プロセッサは、ＳＭＳメッセージを生成し、前記少なくとも第１のパラメータに対する前記更新をＳＭＳメッセージとして送信するようにプロセッサ実行可能ソフトウェア命令によって構成される、請求項１０５に記載のサーバ。
【請求項１０８】
前記プロセッサは、前記更新が存在する場合、前記更新が前記モバイルデバイスに対して行われるとすぐに、前記少なくとも第１のパラメータ値に対する前記更新を送信するステップを実行するようにプロセッサ実行可能ソフトウェア命令によってさらに構成される、請求項１０４に記載のサーバ。
【請求項１０９】
前記大容量記憶メモリは、前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す複数のパラメータ値を含む、請求項９８に記載のサーバ。
【請求項１１０】
前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがサービスネットワークカバレージ外であるときの許可された猶予期間アクセス試行の回数である、請求項１０９に記載のサーバ。
【請求項１１１】
前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがサービスネットワークカバレージ内であるときの許可された猶予期間アクセス試行の回数である、請求項１０９に記載のサーバ。
【請求項１１２】
前記複数のパラメータ値のうちの１つは、前記モバイルデバイスがローミング中であるときの許可された猶予期間アクセス試行の回数である、請求項１０９に記載のサーバ。
【請求項１１３】
前記複数のパラメータ値のうちの１つは、前記保護コンテンツへのアクセスが許可されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項１０９に記載のサーバ。
【請求項１１４】
前記複数のパラメータ値のうちの１つは、前記モバイルデバイスが電源投入されるたびに前記モバイルデバイスがリモートセキュア時間ソースにアクセスしなければならないかどうかを示す、請求項１０９に記載のサーバ。
【請求項１１５】
前記プロセッサは、前記モバイルデバイスがセキュア時間ソースへのアクセスを有しないときに前記保護コンテンツへのアクセスを制御する複数のポリシー条件を表す前記複数のパラメータ値の前記各々を更新するために前記大容量記憶メモリにアクセスするようにプロセッサ実行可能ソフトウェア命令によって構成される、請求項１０９に記載のサーバ。
【請求項１１６】
前記プロセッサは、
前記複数のパラメータ値のいずれかに対する更新が前記大容量記憶メモリ中に存在するかどうかを判断する問合せ要求を前記モバイルデバイスから受信するステップと、
前記更新が存在する場合、前記複数のパラメータ値に対する前記問合せ要求前記更新を行う前記モバイルデバイスに送信するステップと、
をプロセッサ実行可能ソフトウェア命令によって実行するようにさらに構成される、請求項１１５に記載のサーバ。
【請求項１１７】
前記プロセッサは、暗号化されたファイル中で前記複数のパラメータ値に対する前記更新を送信するようにプロセッサ実行可能ソフトウェア命令によって構成される、請求項１１６に記載のサーバ。
【請求項１１８】
前記プロセッサは、ＳＭＳメッセージを生成し、前記複数のパラメータ値に対する前記更新をＳＭＳメッセージとして送信するようにプロセッサ実行可能ソフトウェア命令によって構成される、請求項１１６に記載のサーバ。
【請求項１１９】
前記プロセッサは、新しい保護コンテンツの購入とともに前記複数のパラメータ値に対する更新をダウンロードするステップを実行するようにプロセッサ実行可能ソフトウェア命令によってさらに構成される、請求項１０９に記載のサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアアプリケーション、データ、または他のデジタルコンテンツのための時間ベースデジタル著作権管理を生成、管理、変更、および／または執行するための方法およびシステムに関する。
【背景技術】
【０００２】
デジタル著作権管理（ＤＲＭ）は、デジタルコンテンツへのアクセスまたはその使用、ならびにデジタルワークまたはデバイスの特定のインスタンスに関連する制限を制御するためにソフトウェア開発者、出版者または著作権保持者によって使用される技術を指す包括的用語である。時間ベースＤＲＭポリシーは、クライアントに、制限された時間期間だけ保護デジタルコンテンツへの無制限アクセスを許可する。効果的であるためには、時間ベースＤＲＭポリシーを実装するプロセッサは信用できるセキュア（secure）時間ソースにアクセスできなければならない。時間ベースＤＲＭポリシーの完全性を維持するためには、信用できるセキュア時間ソースが利用できない場合は、保護コンテンツへのアクセスは許可されるべきではない。しかしながら、そのような限定的なポリシーは、保護デジタルコンテンツへのアクセス権を適切に購入しており、したがって、信用できるセキュア時間ソースが利用できるかどうかにかかわらず、ライセンスが与えられた「制限された時間期間」が経過しない限り、アクセスが許可されるべきであると考えるクライアントに、フラストレーションを起こさせることがある。
【０００３】
そのようなクライアントの懸念を緩和するために、時間ベースＤＲＭポリシーの下に保護されたデジタルコンテンツのいくつかのプロバイダは、信用できるセキュア時間ソースが利用できないときでも保護デジタルコンテンツへの継続的アクセスをクライアントに許可することを選ぶことがある。たいていのそのようなプロバイダは、ライセンス期間が満了する前に信用できるセキュア時間ソースが利用できるようになるという仮定の下にそのようにする。そのような代替の時間ベースＤＲＭポリシーは、重大な不正行為を受けやすい。これは、不正なユーザが、「制限された時間期間」のライセンスが永久に通用するようにセキュアでない時間ソースを操作または変更することによって、「制限された時間期間」ライセンスを不適切に延長しようと試みることができるからである。さらに、いくつかの不正なユーザは、ライセンスが満了すべきだったにもかかわらず、保護デジタルコンテンツへの継続的アクセスが許可されるように、信用できるセキュア時間ソースを故意に利用不可能またはアクセス不可能にすることがある。
【０００４】
モバイルデバイスの内部クロックは正確でないか、変更からセキュアでないか、または存在しないことさえあるので、モバイルデバイスは、特に、この脆弱性によって損害を被る。セルラー電話、個人情報端末（ＰＤＡ）、ワイヤレスモデム、および同様のハンドヘルド通信デバイスは、内蔵式の正確でセキュアなクロックを有しないことがあるモバイルデバイスの例である。さらに、そのようなモバイルデバイスは、すべての状況下でセキュア時間を取り出す信頼できるおよび／またはセキュアな手段を有しないことがある。
【０００５】
これらの理由により、時間以外の基準に基づいて、保護デジタルコンテンツの使用またはそれへのアクセスを制限するための代替ＤＲＭポリシーが考案されている。そのような代替ＤＲＭポリシーの例は、実行の回数、消費のインスタンス、または保護コンテンツへのアクセスを追跡し、制限することを含む。そのような代替ＤＲＭポリシーは、時間ベースＤＲＭポリシーの効果的な代替案を保護コンテンツプロバイダに与えるが、潜在的なクライアントは、そのようなＤＲＭポリシーは限定的すぎると結論付けて保護デジタルコンテンツの購入を思いとどまることがある。その結果、デジタルコンテンツの売上げが少なくなる。したがって、保護デジタルコンテンツプロバイダは、信用できるセキュア時間ソースが利用できない場合にクライアントアクセスを許可するが、不正なクライアントによる過大な不正行為を防止する、時間ベースＤＲＭライセンスポリシーのためのより信頼できる方法またはシステムを望むことがある。
【発明の概要】
【０００６】
本明細書で提示する方法およびシステムの実施形態は、時間ベースライセンスを用いてデジタルコンテンツ（たとえば、媒体、データ、ゲーム、または他のソフトウェア）を保護するためのフレキシブルなライセンスポリシーを生成、管理、変更、および／または執行する問題の解決策を提供する。実施形態は、信用できるセキュア時間ソースが利用できず、コンテンツを含んでいるモバイルデバイス上に時間クロックが、あったとしても、信用できない、または信頼できない状況を扱う。
【０００７】
少数のパラメータによって十分に特徴付けられる多種多様なポリシーを可能にする実施形態が説明される。パラメータの値、したがって選択されるポリシーは、最初に設定され、後で任意の時間において新しいパラメータ値のリモートダウンロードなどによって動的に変更されることができる。パラメータ値は、使いやすさとセキュリティ特性との間の所望の妥協レベルを定義し、執行するように選択されることができる。
【０００８】
本明細書に組み込まれ、本明細書の一部をなす添付の図面は、好ましい本実施形態を示し、上記の概略的な説明および下記の詳細な説明とともに、実施形態の特徴を説明するのに役立つ。
【図面の簡単な説明】
【０００９】
【図１Ａ】図１Ａは、セキュア時間ソースにアクセスできる多数のモバイルデバイスを含むシステムのシステム図である。
【図１Ｂ】図１Ｂは、あるタイプのモバイルデバイスの要素の回路ブロック図である。
【図１Ｃ】図１Ｃは、別のタイプのモバイルデバイスの要素の回路ブロック図である。
【図２】図２は、潜在的なライセンスポリシーパラメータ、それらの考えられる値、および意味の表である。
【図３】図３は、潜在的なパラメータ値のための様々な組合せによって定義される例示的なポリシーを示す表である。
【図４】図４は、パラメータ化時間ベースライセンスポリシーを執行するために執行エージェントによって実行されることができる手順の一実施形態のプロセス流れ図である。
【図４ａ】図４ａは、図４に示されたプロセスを実装する手順のための代替の例示的な可能な擬似コードのリストである。
【図４ｂ】図４ｂは、パラメータ化時間ベースライセンスポリシーを執行する代替手順のための例示的な可能な擬似コードのリストである。
【図５】図５は、執行エージェントによって実行されることができる手順の代替実施形態のプロセス流れ図である。
【図５ａ】図５ａは、パラメータ化時間ベースライセンスポリシーを執行する手順のための例示的な可能な代替の擬似コードのリストである。
【図６】図６は、ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐパラメータを採用する実施形態方法によって実行されるステップのプロセス流れ図である。
【図６ａ】図６ａは、セキュアな時間をセキュア時間ソースから得る必要があるかどうかを検査する手順のための例示的な可能な代替の擬似コードのリストである。
【図７】図７は、更新されたライセンスパラメータをチェックし、ダウンロードするための実施形態方法によって実行されるステップのプロセス流れ図である。
【図７ａ】図７ａは、更新されたライセンスパラメータを検査し、ダウンロードする手順のための可能な代替の擬似コードリストの一例を提供する。
【発明を実施するための形態】
【００１０】
本発明の様々な実施形態が添付の図を参照しながら詳細に説明されるだろう。可能な場合はいつでも、同じまたは同様の部分を指すために図面全体にわたって同じ参照番号が使用されるだろう。
【００１１】
ライセンスを与えられた保護コンテンツ、または単に「保護コンテンツ」は、様々な種類の媒体、エンターテインメントレンタル、文書、ソフトウェア、データ、トライアルまたはデモコンテンツなどを含むことができるが、これに限定されない。コピープロテクションおよび保護コンテンツのためのＤＲＭの様々な手法がある。
【００１２】
最も一般的なＤＲＭポリシーの１つは、時間ベースライセンスである。そのような時間ベースライセンスの下で、クライアントは、有効期限までなど、制限された時間期間の間、保護コンテンツへの無制限アクセスを許可される。本明細書では、「保護コンテンツにアクセスする」というフレーズおよび同様のフレーズは、コンテンツを閲覧、読み取り、再生、実行、編集、または変更することを包含する。制限された時間期間が経過すると、クライアントはもはや、既存のライセンスの下で保護されたコンテンツへのアクセスを許可されない。
【００１３】
代替ＤＲＭポリシーは「無限の」ライセンスを備えることができる。保護コンテンツプロバイダは、ライセンス有効日／時を常に監視することを望まない場合、保護コンテンツに対して割増金を課金し、クライアントが保護コンテンツに無期限にアクセスできるようにすることがある。本質的に、クライアントは、制限された時間期間の間のライセンスではなく、所有するために保護コンテンツを購入する。しかしながら、多くの潜在的なクライアントは、意図された使用が制限されるとき、割増価格を支払うことを望まであろうから、そのような保護ポリシーは最適ではないことがある。したがって、保護コンテンツが時間ベースライセンスの下で利用可能である場合よりも、実際に保護コンテンツにアクセスする代金を支払うクライアントとなる潜在的なクライアントは少ないだろう。
【００１４】
音楽セレクションへのアクセスをクライアントに与えるコンテンツプロバイダの例を考える。様々なＤＲＭポリシーがコンテンツプロバイダにとって利用可能である。コンテンツプロバイダは、使用規則に基づくポリシーの下で音楽セレクションをクライアントにとって利用可能にすることができる。そのような使用規則は、クライアントがＮ回、音楽セレクションを再生するか、または音楽セレクションにアクセスできるようにするアクセスカウント制限を備えることができる。あるいは、コンテンツプロバイダは、特定の日付または時間まで音楽セレクションを再生することをクライアントに許すようにする時間ベースの使用制限の下で、音楽セレクションをクライアントにとって利用可能にすることができる。保護コンテンツ（すなわち、音楽セレクション）の性質と、大部分のクライアントがそのような保護コンテンツへのアクセスを選好する方法とのために、クライアントは、音楽セレクションを再生する回数によって制限されることを望まないが、むしろ、セレクションが再生される日数または時間によって制限されるだろう。したがって、そのような状況では、なぜ時間ベースライセンスが選好されるのかがわかる。ユーザが保護コンテンツへの無制限アクセスを望むが、時間とともにその保護コンテンツに飽きると予想することができる、ゲームやビデオなどの保護コンテンツの場合も、同様の状況が生じることがある。
【００１５】
保護コンテンツのための従来の時間ベースライセンスポリシーは、ライセンス有効日／時を、内部クロックによって与えられた時刻や日付の値と比較する。有効日／時とクロックとの比較により、ライセンス有効日／時がまだ経過していないことがわかる限り、プロセッサは保護コンテンツへの無制限アクセスを許可する。比較により、ライセンス有効日／時が経過したことがわかった場合、プロセッサは保護コンテンツへのさらなるアクセスを拒否する。形式は単純であるが、そのようなＤＲＭポリシーおよび保護は、制限された時間期間が事実上無限になるように、不正なクライアントがデバイスクロックを操作することは比較的容易であるので、容易に回避される。ＰＣ（または他のデバイス）のクライアントは、制限された時間期間が決して経過しないように、ＰＣ（または他のデバイス）の内部クロックを繰り返し「ロールバックする」能力を有することができる。そのような「ロールバック」操作を検出するためのソフトウェアが存在するが、現在まで、そのようなソフトウェアが効果的であるとは判明していない。
【００１６】
よりロバストな時間ベースライセンスポリシーでは、時間ベースライセンス有効日／時に対して比較するために使用されるクロックが、正確で確実な改ざん防止時間を何らかの形態で与える信用できるセキュア時間ソースであることを必要とすることがある。そのようなセキュア時間ソースは、モバイルデバイス自体内に配置されることができる。他の場合は、リモートでアクセス可能なセキュア時間ソースが利用されることができる。たとえば、インターネット上のウェブサイトｗｗｗ．ｔｉｍｅ．ｇｏｖは、クライアントが変更することができない、リモートアクセス可能な、正確で確実な時間ソースである。モバイルデバイスが、ローカルまたはネットワーク上で、信用できるセキュア時間ソースを参照させられる限り、よりロバストな時間ベースライセンスが効果的に動作することができる。時間ベース。
【００１７】
モバイル、セルホン、ＰＤＡ、ワイヤレスモデム、および他のモバイル通信デバイスであることは、一般に、セキュア時間ソースを参照するために必要ではない。ＣＤＭＡデバイスは、時間保持を厳密に相関させるために使用される時間ソースを有するが、その時間は、クライアントによって変更または改ざんされることができるので、セキュアではないことがある。ＧＳＭデバイス中の時間は独立して提供または制御されるので、ＧＳＭデバイスは、時間の概念を有しないことがある。したがって、時間ベースＤＲＭポリシーは、そのようなデバイス上で事実上執行することが困難であることがある。
【００１８】
一実施形態は、保護コンテンツへのアクセスが許可される前に、セキュア時間がライセンス有効日／時に対する比較のために利用可能であることを強要することができる、限定的なＤＲＭポリシーを備えることができる。そのような強要は、クライアント／ユーザにフラストレーションを与えることがある。第１に、セキュア時間ソースがローカルで利用可能でない場合、外部のセキュア時間ソースを得るためにデータ呼が必要になることがある。このデータ呼は、保護コンテンツへのアクセスを遅延させ、データ呼が成功しない場合、クライアント／ユーザにフラストレーションを与えることがある。第２に、クライアントが、適切にライセンスを与えられた保護コンテンツにアクセスすることを望んでいるが、クライアント／ユーザの制御を超えるという理由のために、セキュア時間ソースが利用できない多くの状況があることがある。そのような状況の例は、モバイルデバイスが、内部のセキュアなクロックなしに、そのサービスプロバイダネットワークの外側に地理的に配置される場合である。クライアント／ユーザが移動しており、そのサービスプロバイダネットワーク外に出ることがあると、そのような状況が生じることがある。この状況は「ネットワーク外（out of network）」と呼ばれる。モバイルデバイスがネットワーク外であるので、モバイルデバイスは、少なくともローミングなしに、モバイルデバイスがセキュア時間ソースとのデータリンクを生成できるようにする信号を得ることができないだろう。
【００１９】
そのような状況の別の例は、モバイルデバイスが、内部のセキュアなクロックなしに、そのサービスプロバイダネットワーク内に地理的に配置されるが、クライアントがモバイルデバイスのトランシーバ機能を使用不能にしたときである。クライアント／ユーザが、モバイルデバイスのトランシーバ機能を使用不能にする必要がある位置に入ったとき、そのような状況が生じることがある。たとえば、クライアント／ユーザが飛行機上または病院内にいるときである。この状況は「ネットワーク内（in network）」と呼ばれる。モバイルデバイスのトランシーバ機能が使用不能になったので、モバイルデバイスは、モバイルデバイスがセキュア時間ソースとのデータリンクを生成できるようにする信号を得ることができないだろう。
【００２０】
そのような状況の別の例は、モバイルデバイスが「ローミングモード」にあるときである。クライアント／ユーザがその特定のサービスプロバイダネットワークの外側を移動しているが、依然として別のサービスプロバイダネットワーク内にあるとき、そのような状況が生じることがある。モバイルデバイスは、ローミングモードにあるとき、電話通話を行い、受信することができるが、セキュア時間ソースとのデータリンクを確立することができない。
【００２１】
クライアント／ユーザは、保護コンテンツが適切にライセンスを与えられ、有効日／時が経過していないにもかかわらず、これらの状況で保護コンテンツへのアクセスが許可されないことにフラストレーションを感じることがある。そのようなフラストレーションは、クライアント／ユーザが、否定的な経験のために将来の時間ベースライセンスを実行するのを思いとどまらせることがある。
【００２２】
代替実施形態は、上述の状況が本質的に一時的なものであり、延長された時間期間の間、またはライセンス有効日／時を超える時間期間の間に生じる可能性がないという仮定の下で、セキュア時間が利用できないにもかかわらず、クライアント／ユーザに保護コンテンツにアクセスすることを許すことができる。しかしながら、そのような代替実施形態は、ライセンスを与えられる時間期間が事実上無限になるように、引き延ばされた時間期間の間、上記の状況のいずれかを意図的に生成する不正なクライアントによって利用されることがある。
【００２３】
したがって、特にマルチモードデバイス（たとえば、ＣＤＭＡおよび／またはＧＳＭ環境のいずれかにおいて動作することができるデバイス）およびマルチモード市場において使用するための、クライアント／ユーザ経験を保持しながら保護コンテンツへの限定的なアクセスを与えるライセンスポリシーの柔軟な選択肢が望まれる。コンテンツプロバイダも、時間ベースライセンスを延長または変更することを含む、販売後に保護ポリシーを動的に変更する能力を望んでいる。さらに、ワイヤレスデバイス製造業者およびサービスプロバイダには、工業の現場で、または販売時に、デフォルトのポリシーまたは調整されたポリシーを構成することが可能であることが望ましい。したがって、時間ベースＤＲＭポリシーを生成、管理、変更、および／または執行するための代替方法およびシステムが必要である。
【００２４】
代替実施形態は、信用できるセキュア時間ソースが利用できず、コンテンツを含んでいるモバイルデバイス上に時間クロックが、あったとしても、信用できない、または信頼できない状況を扱う。様々な実施形態は、比較的少ない数のパラメータの構成値に基づく改善された時間ベースライセンスおよびＤＲＭポリシーを与える。そのような実施形態は、特に、正確で信用できる時間を与えるセキュア時間ソースが常に利用可能ではない時間ベースポリシーを対象とする。実施形態は、セキュア時間が利用可能であるか利用可能でないかに基づいて時間ベースポリシーを執行する適応型執行エージェントを含むことができる。
【００２５】
数個の精選されたパラメータが、広範囲の柔軟なＤＲＭポリシーを生成し、制御するために使用されることができる。広範囲の柔軟なＤＲＭポリシーは、変動するセキュリティレベルと、逆に関係することがあるクライアント／ユーザ経験の変動する程度とを与えることができる。たとえば、非常に強いセキュリティレベルを有するポリシーは、クライアント／ユーザ経験に対して極めて悪いレーティングを有することがある。反対に、「可（okay）」セキュリティレベルを有するポリシーは、クライアント／ユーザ経験に対して「極良（very good）」レーティングを有することがある。ライセンスパラメータの様々な置換は、ポリシーのスペクトルを生成することができる。ほんの数個のパラメータを使用することは、保護コンテンツの多数のアイテムに対するライセンスが、モバイルデバイスのメモリ中にコンパクトに含められることができるということを意味する。これは、モバイルデバイス上の単一の比較的単純でセキュアな執行エージェントが、ＤＲＭの多くまたはすべての要求を処理することを可能にする。
【００２６】
一般に、ロバストなＤＲＭ保護は、クライアントの経験に影響を及ぼすことができる遅延、使用制限、または他の不便を生じることがある。たとえば、セキュア時間を得るためにサービスプロバイダネットワークへのワイヤレスデータ呼が必要になることは、ＤＲＭ保護方式を改善するだろうが、クライアントの保護コンテンツへのアクセスを遅延させることになるだろう。また、セキュア時間を取り出すために必要とされるワイヤレスエアタイムは、クライアントが諒解しないであろう追加コストを必要とすることがあり、特に保護コンテンツへの各アクセスがそのような通話を必要とする場合、アクセスが頻繁になり、クライアントは各時間取り出し呼を承認しなければならない。クライアントの経験を改善するために、たとえば、モバイルデバイスが最初に電源投入されたときのみ、異なるパラメータによって生成されたポリシーがセキュア時間へのアクセスを必要とすることができる。
【００２７】
以下のパラグラフは、特定のパラメータを用いた実施形態、パラメータ値の組合せに基づくポリシーの例、およびパラメータ値の特定の組合せによって特徴付けられたポリシーを執行するための手順を説明する。論じられる特定のパラメータは、説明のためにのみ与えられるものであり、本発明の範囲または特許請求の範囲を限定するものではない。
【００２８】
図１Ａは、時間ベースライセンスが動作することができるシステムの一実施形態を示す。サービスプロバイダネットワーク２０１は、ワイヤレスボイスおよび／またはデータ通信をサポートする。サービスプロバイダネットワーク２０１は、ＣＤＭＡ（符号分割多元接続（Code Division Multiple Access））、ＧＳＭ（モバイル通信のためのグローバルシステム（Global System for Mobile Communications））、ユニバーサルモバイル通信システム（Universal Mobile Telecommunications System）（ＵＭＴＳ）、または他のワイヤレス技術を採用することができる。モバイルデバイス１００、２００とサービスプロバイダネットワーク２０１との間の双方向無線通信は、基地局２０５を介して行われる。サービスプロバイダネットワーク２０１は、当該サービスプロバイダネットワーク２０１を介してモバイルデバイス１００、２００に対してアクセス可能な、確実で正確なセキュア時間ソース２０２にアクセスすることができる。
【００２９】
例示的なモバイルデバイス１００が図１Ｂに、より詳細に示されている。モバイルデバイス１００は、エアインターフェース１０１と、セキュアクロック１０２と、命令プロセッサ１１０と、メモリ１１１と、を含むことができ、それらはハードウェア、ソフトウェア、またはそれらの組合せで実装できる要素である。エアインターフェース１０１は、ＣＤＭＡ（符号分割多元接続（Code Division Multiple Access））インターフェース、ＧＳＭ（モバイル通信のためのグローバルシステム（Global System for Mobile Communications））インターフェース、ＣＤＭＡとＧＳＭとをサポートするマルチモードインターフェース、またはこれらのワイヤレスインターフェースのうちの１つの後続派生物とすることができる。セキュアクロック１０２は、ローカルセキュア時間ソースを与えることができる。モバイルデバイス１００は、サービスプロバイダネットワーク２０１を介してアクセス可能なシステムセキュア時間ソース２０２を使用して、時々ローカルセキュアクロック１０２をセキュアに更新することができる。命令プロセッサ１１０は、１つまたは複数のマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、またはそれらの任意の組合せとすることができる。メモリ１１１は、プロセッサ命令および／またはデータのソースとして命令プロセッサ１１０によってアクセス可能である。メモリ１１１は、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、フラッシュメモリ、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、消去可能電気的プログラマブルメモリ（ＥＥＰＲＯＭ）、消去可能読み取り専用メモリ（ＥＰＲＯＭ）、ディスクドライブメモリ、などの任意の組合せを含むことができる。命令プロセッサ１１０は、エアインターフェース１０１への、セキュアクロック１０２への、メモリ１１１の１つまたは複数の部分への、および／または入力／出力ユニットなどのモバイルデバイス１００の他のリソースへの、アクセスを制御することができるハードウェアを含むことができる。
【００３０】
メモリ１１１に記憶されるのは、命令プロセッサ１１０によって実行されるべき命令、および／または命令プロセッサ１１０によって実行される命令によってアクセスされるべきデジタルデータであることができる。命令およびデータは、オペレーティングシステム（ＯＳ）１０３と、ライセンス執行エージェント１０４と、ライセンスパラメータ１０５と、１つまたは複数のアプリケーションプログラム１０６と、保護コンテンツ１０７、１０８のアイテムと、を含むことができる。オペレーティングシステム１０３は、モバイルデバイス１００の基本動作を制御する命令のセットである。オペレーティングシステム１０３は、ライセンスパラメータ値１０５を含むメモリ１１１のいくつかのセキュアな部分、および／またはメモリ１１１に記憶された保護コンテンツ１０７、１０８の１つまたは複数のインスタンスへのクライアントアクセスを制御することができる。オペレーティングシステム１０３自体は、保護コンテンツ１０７、１０８のセキュリティを執行するためにクライアントからセキュアでなければならない（すなわち、改ざん防止されていなければならない）。保護コンテンツ１０７、１０８のアイテムごとにライセンスパラメータ値の別々のセットがあることができる。代替実施形態では、パラメータ値の１つのセットは、保護コンテンツ１０７、１０８の２つ以上のアイテムに適用することができる。オペレーティングシステム１１０は、ライセンスパラメータ１０５への特権的なアクセスなど、メモリ１１１のいくつかのセキュアな部分への特権的なアクセスをライセンス執行エージェント１０４に許可することができる。１つまたは複数のアプリケーションプログラム１０６の実行は、該アプリケーションプログラム１０６が実行することができるかどうかを含めて、オペレーティングシステム１０３の制御下で行われることができる。オペレーティングシステム１０３はまた、アプリケーション１０６がハードウェアリソースおよびメモリ１１１にアクセスすることができるかどうかを制御することができる。たとえば、オペレーティングシステム１０３は、メモリ１１１の連続するアドレスの様々なブロックを、実行可能、読み書き、読取り専用、またはアクセス不可能であるとして動的に制限する、プロセッサ１１０中のハードウェアを制御することができる。
【００３１】
セキュアなローカルクロックを含まない別の例示的なモバイルデバイス２００が、図１Ｃに示される。図１Ｂに示されるモバイルデバイス２００は、図１Ｂに示されるモバイルデバイス１００の要素の機能と同様の機能をもつ要素を含む。ローカルセキュアクロックまたは均等物のないモバイルデバイス２００は、ローカルセキュア時間ソースを有しない。しかしながら、モバイルデバイス２００は、命令プロセッサ１１０中で実行される、メモリ１１１に記憶されたソフトウェア命令によって制御されるように、エアインターフェース１０１を介してサービスプロバイダネットワーク２０１にデータ呼を発することによってセキュア時間を得ることが可能であるだろう。
【００３２】
このデータ呼は、様々な方法で達成されることができる。モバイルデバイス２００は、ワイヤレスデータパケットとしてセキュア時間データを受信するためにソースセキュア時間とのデータ通信リンクを確立することができる特定の番号に、セルラー電話呼を発することができる。あるいは、モバイルデバイス２００は、ブラウザを開き、セキュア時間ソースのＩＰアドレスにアクセスすることによってセキュア時間ソースに接続する、インターネットへのワイヤレス接続を介したセキュア時間ソースへの接続を確立することができる。第３の代替案として、セキュア時間を帰すことができるアドレスに特別ＳＭＳメッセージを送信し、それに応じたＳＭＳメッセージを待つことによって、データ呼が達成されることができる。セキュア時間ソースを呼び出すためのこれらの代替方法の各々は、命令プロセッサ１１０中で実行される、メモリ１１１に記憶されたソフトウェア命令によって制御されるエアインターフェース１０１によって管理されることができる。本明細書における「データ呼」への言及は、これらの代替案の各々、およびモバイルデバイスが確立することができるセキュア時間ソースとの任意の他のワイヤレスデータ通信リンクを包含するものとする。
【００３３】
サービスプロバイダネットワーク２０１がデータ呼の一部として帰すセキュア時間も、クライアントが受信された時間を改ざんすることができないようにするためにセキュアでなければならない。オペレーティングシステム１０３は、データ呼のセキュリティ、またはデータ呼中にデータとして帰されるセキュア時間のセキュリティを守らせることができる。たとえば、セキュア時間のセキュリティは、データ呼中のデータを認証することによって与えられることができる。時間データの認証は、時間データのデジタル署名またはハッシュ関数ベースのメッセージ認証コード（ＨＭＡＣ）を含むことによって、これらのよく知られている認証方法を使用して達成されることができる。さらに、時間データは、よく知られている暗号化方法を使用して暗号化されることができる。あるいは、オペレーティングシステム１０３は、クライアントが、データ呼中に帰されるセキュア時間を傍受または改ざんする方法がないようにすることができる。たとえば、オペレーティングシステム１０３は、直接的または間接的に、任意のアプリケーションプログラム１０６へのコマンドまたは入力を介した、あるいはクライアントにとって利用可能なモバイルデバイス２００の通常の機能を介した、データ呼へのクライアントアクセスを防ぐことができる。
【００３４】
任意の数のモバイルデバイスが、１つまたは複数の基地局２０５を介してサービスプロバイダネットワーク２０１と通信することができる。様々な実施形態の説明を簡単にするために、参照は、モバイルデバイスの２つのクラス、すなわちセキュアクロックを有する１つのクラス（モバイルデバイス１００）と、セキュアクロックがない１つのクラス（モバイルデバイス２００）とを表すモバイルデバイス１００およびモバイルデバイス２００になされるだろう。
【００３５】
保護コンテンツ１０７、１０８のアイテムは、ライセンスパラメータ値１０５の記憶されたセットによって特徴付けられたライセンスポリシーによって保護される。パラメータ値１０５は、モバイルデバイスのメニューオプションまたは通常の機能を介してクライアントアクセス可能ではない、メモリ１１１のセキュアな部分に記憶されることができる。その方法では、クライアントは、パラメータ値１０５によって特徴付けられたライセンスポリシーの設定を無効にするようにパラメータ値１０５を変更することはできない。したがって、ライセンスパラメータ１０５は、クライアントの改ざんからセキュアであると考えられる。
【００３６】
保護コンテンツ１０７、１０８へのアクセスは、ハードウェア、ファームウェア、ソフトウェア、および／またはそれらの組合せで実施されることができる、執行エージェント１０４によって管理されることができる。サービスプロバイダネットワーク２０１は、データが、オペレーティングシステム１０３に、または、モバイルデバイス１００、２００上で実行中のライセンス執行エージェント１０４に送信される、モバイルデバイス１００、２００とサービスプロバイダネットワーク２０１との間のセキュアなデータ呼などを介して、パラメータ値を変更することができる。執行エージェント１０４はまた、不正なユーザによる改ざんに対してセキュアでなければならない。たとえば、執行エージェント１０４は、メモリ１１１のセキュアな部分に記憶された、プロセッサ１１０のための命令とすることができる。
【００３７】
執行エージェント１０４の主要な義務は、保護コンテンツ１０７、１０８のアイテムへのアクセスが、ライセンスパラメータ値が表すライセンスポリシーの下で許可されることを検証することである。執行エージェント１０４は、一般に、特権的でセキュアなプロセッサ状態で動作し、特に保護コンテンツ１０７、１０８のためのライセンスパラメータ値１０５を含んでいる、メモリ１１１の少なくともいくつかのセキュアな部分にアクセスできる。ライセンスパラメータ値をメモリ１０５のセキュアな部分中に保持することは、不正なユーザが、保護コンテンツ１０７、１０８の１つまたは複数のアイテムの保護を回避するようにライセンスパラメータ値を変更することを防止するのに必要である。執行エージェント１０４は、保護コンテンツ１０７、１０８自体へのアクセスを必要としないことができる。
【００３８】
一方、アプリケーションプログラムは、通常、オペレーティングシステム１０３によって割り当てられる特権の制限されたセットの下で動作し、したがって、メモリ１１１のセキュアな部分中のライセンスパラメータ値１０５にアクセスすることができない。アプリケーションプログラムは、保護コンテンツ１０７、１０８にアクセスすることはできるだろうが、保護コンテンツ１０７、１０８へのアクセスが許可されることを確認するために、保護コンテンツ１０７、１０８に関連するライセンスパラメータ値１０５が執行エージェント１０４によって最初に使用された後のみである。ライセンスパラメータ値１０５がもはや有効ではないライセンスを表すと執行エージェント１０４が判断した場合、保護コンテンツ１０７、１０８へのアクセスは阻止される。執行エージェント１０４が保護コンテンツ１０７、１０８へのアクセスを許す場合、執行エージェント１０４は、アプリケーションプログラム１０６に一時的に保護コンテンツ１０７、１０８へアクセスを許すことを、オペレーティングシステムに通知することができる。
【００３９】
執行エージェント１０４の例は、ＱｕａｌｃｏｍｍのＢＲＥＷシステムである。ＢＲＥＷベースのアプリケーションは、たとえば、必要とされるリソースにアクセスするために必要な特権を用いて、（Ｑｕａｌｃｏｍｍまたはコンテンツプロバイダによって）デジタル署名されることができる。したがって、アプリケーションは、それらの特権の下でアクセス可能なリソースにしかアクセスすることがない。したがって、ＢＲＥＷは、少なくとも最初に、ポリシーパラメータのメモリへの書込みアクセスからアプリケーションを除外し、保護コンテンツを含むメモリへのすべてのアプリケーションアクセスを除外することができる。
【００４０】
執行エージェント１０４は、セキュアクロック１０２が存在する場合、セキュアクロック１０２へのアクセスを必要とすることがある。セキュア時間は、好ましくはデバイス上で維持されるが、ネットワーク接続が確立されることができ、セキュア時間ソース２０２からのセキュア時間が利用可能であるときはいつでも、デバイスは、少なくとも、要求に応じて時間を取り出すまたは更新することが可能であるだろう。執行エージェント１０４によって執行されるライセンスポリシーは、セキュア時間が利用可能でない場合、およびデバイスのネットワーク接続がカバレージ内（in-coverage）、カバレージ外（outside-coverage）、またはローミング中であるとき、どのように反応すべきかなど、様々な場合を記述することができる。
【００４１】
図２の表は、ライセンスパラメータの例、それらの取り得る値、およびそれらの意味の簡単な説明を列記している。図２は、網羅的なものではないが、ライセンス方式を定義または説明するために使用されることができる潜在的なパラメータを示すための例示的なものにすぎない。図２で識別される第１のパラメータは、ライセンスが通常の時間ベースＤＲＭポリシーの下で期限切れになる日の日付および／または時間とすることができるＥｘｐｉｒａｔｉｏｎＤａｔｅである。この値は、従来の時間ベースライセンスＤＲＭデータファイル中の有効日付または有効時間と同様である。
【００４２】
図２で識別される第２のパラメータは、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓである。このパラメータは、保護コンテンツ（たとえば、１０７、１０８）にアクセスする前に、ライセンス執行エージェント１０４が最初にデータ呼などを介して、セキュア時間ソース２０２からセキュア時間を正常に取り出さなければならないかどうかを規定することができる。当然、内部セキュアクロック１０２はセキュア時間ソースを構成するので、セキュアクロックが利用可能であり、正しく維持される（これらの更新がまれな場合でも、さらにセキュアクロックはどこかからの入力を必要とする）場合、そのようなデータ呼は不要になるだろう。モバイルデバイス２００がセキュア時間を取り出すためにデータ呼を行う必要がある（たとえば、デバイスが内部セキュアクロック１０２を有さず、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓ＝「１」である）場合、クライアントは、モバイルデバイス２００がリモートセキュア時間ソース２０２と交信するためにデータ呼を発することによって生じた、保護コンテンツへのアクセスの遅延によって不便を感じることがある。そのような遅延がクライアントにとって不便であり、ユーザ／クライアント経験を劣化させることがあるが、そのような基準は、不正使用からの保護コンテンツのロバストな保護を保証するのに必要であるだろう。時間ベースライセンスに従って、意図された動作が進行する前にアクセスが許可されたかどうかを判断するために、有効日／時ＥｘｐｉｒａｔｉｏｎＤａｔｅが、セキュア時間ソースから取り出されたセキュア時間と比較される。
【００４３】
サービスプロバイダは、セキュア時間がモバイルデバイス２００にとって一時的に利用できなくても、制限的に使用保護コンテンツにアクセスし続ける能力をクライアントに与えることを望むことがある。クライアントのモバイルデバイス２００が、サービスプロバイダネットワークカバレージエリア２０１内であるが、セキュア時間ソース２０２からのセキュア時間にアクセスすることができない（すなわち、カバレージ内の）場合、クライアントは、保護コンテンツへの制限された数の「猶予期間（grace period）」アクセスを許可されることができる。たとえば、訪問客は、病院内にいる間、セルラー電話の電源をオフにするようにしばしば要求される。別の例として、航空機が飛んでいる間、航空機の乗客はモバイルデバイス２００の送信機部分を使用不能にすることを要求される。また、何らかの建築物または地下鉄システムの中にあるときに、モバイルデバイス２００は、サービスプロバイダネットワーク２０１から信号を受信することができないことがある。さらなる一例として、「猶予期間」ライセンスを用いて、これらの状況の各々におけるクライアントは、ワイヤレス機能がオフにされてもモバイルデバイス２００上で動作する、ライセンスを与えられたゲーム、音楽、ビデオ、アプリケーションなどを依然として使用することができる。これらの例では、モバイルデバイス２００は、サービスプロバイダネットワーク２０１のカバレージ内であることができるが、ワイヤレス機能が使用不能にされるか、または信号が構造によって阻止されるので、セキュア時間ソース２０２からのセキュア時間にアクセスすることができない。あるいは、ワイヤレスデバイスがサービスプロバイダネットワーク２０１のカバレージの外側である場合、ワイヤレス機能が使用不能であるかどうかにかかわらず、セキュア時間ソースからのセキュア時間は利用できないことがある。どちらの場合にも、クライアントは、保護コンテンツへの制限されたアクセスを許可されることができる。
【００４４】
図２に示されるＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔパラメータは、モバイルデバイス２００がサービスカバレージエリア内である状況に対して、「猶予期間」使用の数（または時間）における制限を規定するパラメータである。このカバレージ内猶予期間パラメータは、モバイルデバイス２００がサービスプロバイダネットワーク２０１カバレージの内側であるが、モバイルデバイス２００がセキュア時間ソースからの時間を正常に取り出すまたは検証することができない間、保護コンテンツがアクセスされることができる最大回数を表すための非負整数値Ｍを有する。
【００４５】
図２に示されるＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔパラメータは、モバイルデバイス２００がサービスカバレージエリアの外側（すなわち、カバレージ外）である状況に対して、「猶予期間」使用の数（または時間）における制限を規定する、同様のパラメータである。このカバレージ外猶予期間パラメータは、モバイルデバイス２００がサービスプロバイダネットワーク２０１カバレージエリアの外側であり、モバイルデバイス２００がセキュア時間ソースからの時間を正常に取り出すまたは検証することができないとき、保護コンテンツがアクセスされることができる最大回数を表すための非負値Ｎを有する。
【００４６】
ＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔおよびＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔパラメータによって特徴付けられる時間ベースライセンスでは、執行エージェント１０４内の猶予期間アクセスカウンタは、セキュア時間が利用できない間、保護コンテンツがアクセスされる回数を追跡する。カバレージエリア中、およびカバレージエリアの外側である間、利用可能なセキュア時間なしに行われるアクセス数をカウントするための別々のカウンタがあることができる。セキュア時間が利用できない間、保護コンテンツがアクセスされるたびに、アクセスが許可されるだろうかどうかを判断するために、適宜にＭまたはＮの値が、関連する猶予期間カウンタと比較されることができる。また、保護コンテンツの個々のアイテムごとに、別個の猶予期間カバレージ内アクセスカウンタおよびカバレージ外アクセスカウンタがあることができる。言い換えれば、別々の猶予期間カウンタは、セキュア時間が利用できないときにアクセスされる曲、ゲーム、ビデオ、またはアプリケーションプログラムごとに増分されることができる。あるいは、クライアントが任意のタイプの保護コンテンツにアクセスした回数をカウントするために単一のカウンタが実装されることができる。
【００４７】
保護コンテンツ（たとえば、１０７、１０８）にアクセスしたいというクライアントの要求時に、執行エージェント１０４は、適切な猶予期間カウンタのカウントを、対応する限界値ＭまたはＮと比較する。カウントが限界値（すなわち、ＭまたはＮ）以上である場合、執行エージェント１０４は、保護コンテンツへのアクセスを禁止する。さもなければ、執行エージェントは、適切な猶予期間カウンタを増分し、保護コンテンツにアクセスし続けることができるようにする。このようにして、セキュア時間が利用できないとき、クライアントは保護コンテンツへの制限されたアクセス数を許可される。アクセス試行の数が所定の制限を超えると、セキュア時間がセキュア時間ソースから利用可能になるまで、さらなるアクセスは拒否される。
【００４８】
カバレージ内およびカバレージ外アクセス状況に対して、別々の制限（ＭおよびＮ）およびカウンタを設けることによって、ライセンサーは、１つの制限および１つのカウンタしかない場合に考えられるＤＲＭポリシーよりも柔軟なＤＲＭポリシーを提供することができる。たとえば、ライセンサーは、セキュア時間がなぜアクセス可能でないかについて仮定し、アクセスできないことについての考えられる理由を区別するように時間ベースライセンスポリシーを巧みに作る（craft）ことができる。たとえば、ライセンスポリシーの作成者が、ライセンスの有効期限の後にモバイルデバイス２００がサービスプロバイダネットワーク２０１カバレージの外側にあるように見えるように、クライアントがモバイルデバイス２００を意図的に遮蔽することができると推定する場合、ＤＲＭポリシーは、ライセンスによって対象とされる保護コンテンツへのアクセス数を制限するように巧みに作られることができる。ポリシーの作成者が、カバレージ内のモバイルデバイス２００がリモートセキュア時間ソース２０２に確実にアクセスすることができないことを懸念する場合、ポリシーは、使用保護コンテンツへのアクセス数をより大きくできるように設定されることができる。
【００４９】
代替実施形態は、クライアントのモバイルデバイス２００がカバレージ内かまたはカバレージ外かにかかわらず、セキュア時間が利用できないときはいつでも採用される、単一の猶予期間制限および関連するアクセスカウントカウンタを設けることができる。
【００５０】
一実施形態では、セキュア時間が利用可能ではなかった間の期間（保護コンテンツへのアクセス数）の後、セキュア時間が再び利用可能になるときはいつでも、様々な猶予期間カウンタがリセットされることができる。セキュア時間が利用可能になると、執行エージェント１０４、２０４は、対応するライセンスの期間が依然として有効か、まだ期限切れになっていないかどうかを判断することができる。ライセンスが期限切れになっていない場合、執行エージェント１０４、２０４は、それに応じて猶予期間カウンタをリセットすることができる。
【００５１】
セキュア時間が利用可能になる場合、および執行エージェント１０４、２０４が現在の時間が有効期限を過ぎている、すなわち、ライセンスが期限切れになったと判断した場合、執行エージェント１０４は、使用保護コンテンツ（たとえば１０７、１０８）および／またはライセンスパラメータ（たとえば、１０５、２０５）を明示的に非活動状態にするか、またはさらにメモリ１１０から削除することができる。あるいは、執行エージェント１０４は、関連するコンテンツ（１０７、１０８）が、カバレージ内またはカバレージ外にかかわらず、いかなる状態の下でもアクセスされることができないように、期限切れになったことを発見されたライセンスのポリシーパラメータ（１０５、２０５）を変更することができる。たとえば、すべてのさらなるアクセスを防止することは、ＭおよびＮを０に設定することによって達成されることができる。クライアントが保護コンテンツ（１０７、１０８）にアクセスしようとするときはいつでも、モバイルデバイス１００、２００は、クライアントにその状況について通知し、また、ライセンスを更新するようにクライアントに奨励することができる。サービスプロバイダは、ライセンスを更新し、更新されたライセンスパラメータ値をダウンロードするクライアントフレンドリな方法をさらに与えることができる。
【００５２】
図２に列記された別のパラメータは、モバイルデバイスがローミングモードであり、セキュア時間が利用可能ではない状況を別々に扱うようにＴＲＵＥまたはＦＡＬＳＥの値を有することができるＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇである。別々のローミングライセンスパラメータを設けることは、ライセンサーに、ライセンシーが移動しており、したがって、データ呼をセキュア時間ソースに発することからのより高いエアタイム料金に直面することになるだろう一般的な状況を扱うことを許す。ライセンシーに対してより高いコストを課するよりはむしろ、カバレージ外またはカバレージ内の状況としてその状況を扱うように、ＤＲＭライセンスが巧みに作られることができる。このパラメータが採用されると、パラメータの値がＴＲＵＥである場合、モバイルデバイスがローミングモードであり、セキュア時間が利用可能ではないときに、ポリシーのカバレージ内部分が適用される。したがって、モバイルデバイスがローミングモードであるとき、執行エージェント１０４は、使用を制限するためのＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔパラメータＭを使用して、モバイルデバイスがカバレージ内であるが、セキュア時間が利用可能ではない（たとえば、ワイヤレス機能が使用不能にされた）かのように、使用ポリシーを執行するだろう。あるいは、パラメータの値がＦＡＬＳＥに設定された場合、モバイルデバイスがローミングモードであり、セキュア時間が利用可能でないとき、カバレージ外ポリシーが適用され、したがって、ＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔパラメータＮの使用を実施する。または、第３の猶予期間制限（たとえば、ＲｏａｍＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ）および関連するアクセスカウントカウンタ（たとえば、ＲｏａｍＵｓｅｓＲｅｍａｉｎｉｎｇ）は、モバイルデバイス２００がローミング中である状況に固有のライセンス期間を与えるように実装されることができる。さらなる実施形態では、ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータの代わりに、ＲｏａｍＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔが使用されることができる。
【００５３】
ＴＲＵＥまたはＦＡＬＳＥとすることができる、図２に列記された最後のパラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐは、モバイルデバイスの電源がオンにされたとき、モバイルデバイスがセキュア時間を取り出そうとすべきかどうか特定するために設けられることができる。このパラメータがＴＲＵＥである場合、執行エージェント１０４は、保護コンテンツへのアクセスが湯ねされることができる前、起動時にセキュア時間を取り出さなければならない。モバイルデバイス１００の起動時のデータ呼は、電源がオフの間、モバイルデバイス１００上のセキュアクロック１０２が時間を見失うことがあるので、または電源がオフの間、セキュア時間が信頼できなくなることがあるので、要求されることができる。
【００５４】
執行エージェント１０４は、ネットワーク２０１を介して、オペレーティングシステム１０３、プロセッサ１１０およびエアインターフェース１０１によってＳＭＳテキストメッセージなどの特別データメッセージを送信することによって、セキュア時間を取り出すためのデータ呼を開始することができる。特別データメッセージは、セキュア時間ソース２０２に宛てられることができ、セキュア時間ソース２０２がセキュア時間の要求として認識する特定のフォーマットを有することができる。執行エージェント１０４からのメッセージに応答して、セキュア時間ソース２０２は、ＳＭＳメッセージデータペイロード中にセキュア時間を含む応答ＳＭＳメッセージを執行エージェント１０４に送信することができる。応答メッセージ自体は、セキュア時間のセキュリティを維持するために、何らかの形式のセキュリティを採用しなければならない。応答メッセージは、応答メッセージ中に含まれるデータを暗号化し、認証することによって保全されることができる。執行エージェント１０４がセキュア時間を受信すると、そのセキュア時間がセキュアクロック１０２を更新するために使用されることができる。
【００５５】
ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐパラメータは、「要求に応じて」（すなわち、保護コンテンツへのアクセスが要求された時点で）適用される他のライセンスパラメータとは異なる。ライセンスパラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐが、任意の、またはメモリ１１１中のすべてのライセンスパラメータ１０５によって表されるライセンスポリシーに対して真の場合、執行エージェント１０４は、モバイルデバイス１００、２００が起動または電源投入された直後に、セキュア時間を収集しなければならない。ライセンスパラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐの使用は、他のライセンスパラメータと相互に排他的でなく、ＤＲＭライセンスのロバストネス（robustness）を向上させるために、他のパラメータとともに使用されることができる。ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐは、いくつかの保護コンテンツライセンスポリシーに対して真であることができるが、すべてに対して真というわけではないので、モバイルデバイス１００、２００が起動した直後、執行エージェント１０４は、メモリ１１１中のすべてのライセンスパラメータ１０５を走査することが必要であることがある。ライセンスパラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐが少なくとも１つのライセンスポリシーに対して真の場合、執行エージェント１０４は、内部セキュア時間ソースについて確認しなければならず、それが存在しない場合、セキュア時間ソース２０２からセキュア時間を収集しようとしてデータ呼を発する。ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐの真値をテストするためにライセンスパラメータ１０５を走査するための手順は、図６および図６ａを参照しながら後述される。
【００５６】
パラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐの実装は、内部セキュア時間ソースなしのモバイルデバイス２００がセキュア時間を取り出すためにデータ呼を行う要件により、クライアントに起動時に遅延を経験させることによって、ユーザ／クライアント経験を劣化させることがある。さらに、クライアント／ユーザは、保護コンテンツへのアクセス要求が行われなかったときにデータ呼がなぜ必要であるかについて混乱させられることがある。とはいえ、そのような手段は、不正な使用から保護コンテンツの保護のロバストネスを保証するために、いくつかのライセンスプロバイダによっては必要であると考えられることができる。起動時のデータ呼は、ユーザ／クライアントにとって邪魔で面倒であると考えられることができるが、保護コンテンツへのアクセスが要求されるたびにデータ呼が行われることを必要とするよりも、起動時の単一のデータ呼のほうが邪魔ではなく、または面倒ではないだろう。起動時のデータ呼と、各アクセス要求時のデータ呼の両方を必要とすることによって、保護機構は補強されるが、ユーザの経験が犠牲になる。
【００５７】
図２に列記されたパラメータなどの少数のパラメータに値を割り当てることだけによって、ユーザの経験への邪魔に対してセキュリティをバランスさせるために使用されることができる、柔軟な時間ベースライセンスが特徴付けられることができる。図３は、図２の潜在的なパラメータのための値の様々な組合せが様々なポリシーをどのように特徴付けることができるかを示す。次に、選択された例示的なポリシーが、説明のために論じられるだろう。
【００５８】
図３に示されるポリシー１は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓの値がＴＲＵＥであり、したがって、保護コンテンツへのアクセスが要求されるときはいつでも、セキュア時間を取り出すことを執行エージェント１０４に要求するイセンスポリシーの例である。さらに、ポリシー１は、モバイルデバイス２００がサービスプロバイダネットワーク２０１カバレージ内、またはサービスプロバイダネットワーク２０１カバレージ外であるとき、０回の猶予期間アクセス試行を可能にする。したがって、いずれの場合も０回の猶予期間アクセスが可能にされるので、ローミングがカバレージ内の場合をエミュレートするかどうかは重要ではない。すなわち、ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇは、ＴＲＵＥまたはＦＡＬＳＥのいずれかとすることができる。また、ポリシー１は、モバイルデバイス１００、２００の起動時にセキュア時間を取り出すことを執行エージェント１０４に要求するＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐ値ＴＲＵＥを含む。これらのＤＲＭライセンスパラメータ設定を用いれば、セキュア時間が利用可能であるとき、クライアントはライセンスに関連する保護コンテンツにアクセスすることができるのみである。したがって、悪用からの保護または制約レベルは、ポリシーの最も強いものの１つであると考えられる。しかしながら、この保護は、ユーザの経験を犠牲にする。モバイルデバイス２００がセキュア時間ソースを含まない場合、ポリシーは、セキュア時間を取り出すために頻繁なデータ呼を要求し、トランシーバが使用不能にされたか、またはモバイルデバイスがカバレージエリア外であるときはいつでも、コンテンツへのアクセスが拒否されることになるだろう。
【００５９】
図３に示されるポリシー２は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓの値がＴＲＵＥであるライセンスポリシーの例であり、したがって、保護コンテンツへのアクセスが必要とされるときはいつでも、セキュア時間を取り出すことを執行エージェント１０４に要求する。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア内である場合、ポリシー２は、０回の猶予期間アクセス試行を可能にする。しかしながら、セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア外である場合、ポリシー２は、Ｎ回の猶予期間アクセス試行を可能にする。このポリシーは、ＴＲＵＥであるＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータをも含むので、モバイルデバイス２００がローミングモードであるとき、該ポリシーはカバレージ内状況に従う、すなわち猶予期間アクセスを可能にしない。モバイルデバイス１００、２００が起動されたとき、ポリシー２は、セキュア時間を取り出すことを執行エージェント１０４に要求しない。これらのパラメータ設定が適切であれば、悪用に対する保護は、ポリシー１よりもわずかに耐悪用性が低い「強（strong）」と考えられる。有効性レーティングが格下げされるのは、セキュア時間が利用できなくても、クライアントが数回の保護コンテンツへのアクセスを許可されるためである。さらに、ポリシー２は、起動時に追加されるデータ呼を必要としない。とはいえ、Ｎが小さいので、保護レベルは強いと考えられ、したがって、可能な猶予期間アクセス試行数は小さい。同じ理由から、ユーザ経験は、「極不良（very poor）」から「不良（poor）」に格上げされる。
【００６０】
図３に示されるポリシー３は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓの値がＴＲＵＥであるライセンスポリシーの例であり、したがって、保護コンテンツへのアクセスが要求されるときはいつでも、セキュア時間を取り出すことを執行エージェント１０４に要求する。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア内である場合、ポリシー３は、０回の猶予期間アクセス試行を可能にする。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア外である場合、ポリシー３は、最大Ｎ回の猶予期間アクセス試行を可能にする。しかしながら、ポリシー２とは対照的に、Ｎは大きく、それによって多数のカバレージ外猶予期間使用を与える。ポリシー３は、モバイルデバイス１００、２００の起動時にセキュア時間を取り出すことを執行エージェント１０４に要求する。ポリシー３では、多数の許可された猶予期間試行を利用するためにクライアントがカバレージの外側に意図的に残る場合、ポリシー３が悪用される危険があるので、保護レベルは「可」と考えられる。これらのライセンスパラメータを用いると、モバイルデバイス２００の起動時にデータ呼と、保護コンテンツへのアクセスが内部セキュア時間ソースを含まないモバイルデバイスに要求されたときのデータ呼とのために、ユーザ経験は「極不良」と考えられる。
【００６１】
ポリシー４は、ポリシー３とほぼ同じであるが、起動時にセキュア時間のためのデータ呼を必要としない。したがって、ポリシー４の保護レベルは「可」（であるが、ポリシー３よりも非常にわずかに小さい）と考えられる。しかしながら、ユーザ／クライアント経験は、主に起動時にデータ呼がないために、「極不良」から「不良」に格上げされる。
【００６２】
ポリシー５は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓがＴＲＵＥであるライセンスポリシーの例であり、したがって、保護コンテンツへのアクセスが必要とされるときはいつでも、セキュア時間を取り出すことを執行エージェント１０４に要求する。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア内である場合、ポリシー５は、Ｍ回の猶予期間アクセス試行を可能にする。セキュア時間が利用できず、モバイルデバイス１００、２００がカバレージエリア外である場合、ポリシー５は、Ｎ回の猶予期間アクセス試行を可能にする。ポリシー５では、Ｍは小さい値に設定され、Ｎは大きい値に設定される。ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータがＴＲＵＥであるので、モバイルデバイス１００、２００がローミングモードであるとき、該ポリシーは、カバレージ内の場合をエミュレートする、すなわちＭ回の猶予期間アクセスを可能にする。モバイルデバイス２００がカバレージの外側にある場合、Ｎが大きいので、コンテンツはほとんど無期限にアクセスされることができる。ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐパラメータがＴＲＵＥであるので、ポリシー５は、モバイルデバイス１００、２００の起動時にセキュア時間を取り出すことを執行エージェント１０４に要求する。これらのパラメータ設定が適切であれば、ポリシー５の保護は「可」と考えられる。ポリシー５は、セキュア時間のためのデータ呼が、起動時に、および要求の各インスタンスにおいて行われるという要件から利益を得る一方、クライアントは、モバイルデバイス１００、２００がネットワーク内またはネットワーク外のいずれかにあるとき、数回の猶予期間アクセス試行を許可される。これらの許可された猶予期間試行のために、保護レベルは「可」に格下げされる。モバイルデバイス２００が内部セキュア時間ソースのない場合、ポリシー５は依然として複数のデータ呼を必要とするので、ポリシー５のユーザ経験は「極不良」と考えられる。その上、モバイルデバイス１００、２００がネットワーク中にあるときの、猶予期間試行の数は小さい。Ｍの小さい値は、カバレージ内であるとき、ユーザをほんの数回の保護コンテンツへのアクセスに過度に拘束する。
【００６３】
ポリシー６は、ポリシー５と同様のライセンスポリシーの例であるが、起動時にセキュア時間のためのデータ呼を必要としない。したがって、ポリシー６の保護レベルは「可」（であるが、ポリシー５よりも非常にわずかに小さい）と考えられる。しかしながら、ユーザ／クライアント経験は、主に起動時にデータ呼がないために、「極不良」から「可」に格上げされる。
【００６４】
ポリシー７は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓがＴＲＵＥであるライセンスポリシーの例であり、したがって、保護コンテンツへのアクセスが必要とされるときはいつでも、セキュア時間を取り出すことを執行エージェント１０４に要求する。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア内である場合、ポリシー７は、最大Ｍ回の猶予期間アクセス試行を可能にする。セキュア時間が利用できず、モバイルデバイス１００、２００がカバレージエリア外である場合、ポリシー７は、最大Ｎ回の猶予期間アクセス試行を可能にする。ポリシー７では、ＭおよびＮは大きい値に設定される。ＭとＮの両方が大きいので、モバイルデバイス１００、２００がローミング中であるかどうかは特に関係しない。ポリシー７はまた、ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐをＦＡＬＳＥに設定し、したがって起動時にデータ呼は必要ではなくなる。これらのパラメータ設定の場合、保護レベルは「可」と考えられるが、該ポリシーは、ユーザがデータ呼を機能させなかった場合、長期間悪用される危険がある。ＭおよびＮが大きいので、ユーザ経験は「可」と考えられる。
【００６５】
ポリシー８は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓがＦＡＬＳＥであるライセンスポリシーの例であるので、執行エージェント１０４は、保護コンテンツへのアクセスが必要とされるときはいつでも、セキュア時間を取り出すことを必要としない。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア内である場合、ポリシー８は、０回の猶予期間アクセス試行を可能にする。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア外である場合、ポリシー８は、最大Ｎ回の猶予期間アクセス試行を可能にし、Ｎは小さい。ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇは真（true）に設定されるので、モバイルデバイス１００、２００がローミングモードであるとき、該ポリシーはカバレージ内の状況をエミュレートする。ポリシー８は、モバイルデバイス１００、２００の起動時にのみセキュア時間を取り出すことを執行エージェント１０４に要求する。これらのパラメータ設定が適切であれば、Ｎが小さいので、ポリシー８における保護は「強」と考えられ、制限された期間中にのみ悪用される危険がある。ポリシー８は、モバイルデバイス１００、２００がネットワークの外にあるとき、依然として起動時にデータ呼を必要とし、制限された数の猶予期間アクセス試行のみを許可するので、ユーザ経験は「極不良」と考えられる。
【００６６】
ポリシー９は、ポリシー８と同様のライセンスポリシーの例であるが、もはや起動時にデータ呼を必要としない。したがって、保護レベルは「強」から「極良」に格下げされるが、予想されるユーザ経験は「極不良」から「不良」に格上げされる。これは、主にデータ呼がないためである。
【００６７】
ポリシー１０は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓがＦＡＬＳＥであるライセンスポリシーの例であるので、執行エージェント１０４は、保護コンテンツへのアクセスが必要とされるときはいつでも、セキュア時間を取り出すことを必要としない。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア内である場合、ポリシー１０は、最大Ｍ回の猶予期間アクセス試行を可能にする。セキュア時間が利用できず、モバイルデバイス２００がカバレージエリア外である場合、ポリシー１０は、最大Ｎ回の猶予期間アクセス試行を可能にする。ＭとＮの両方は小さいので、ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇの設定は特に関係しない。ポリシー１０は、モバイルデバイス１００、２００の起動時にのみセキュア時間を取り出すことを執行エージェント１０４に要求する。ＭおよびＮが適度に小さいので、ポリシー１０は、カバレージ内か、カバレージエリア外か、またはローミング中であるかどうかにかかわらず、セキュア時間が利用可能ではないとき、保護コンテンツへの制限されたアクセスのみを可能にする。これらのパラメータ設定が適切であれば、ポリシーは制限された時間の間のみ悪用される危険があるので、保護コンテンツの保護は「良（good）」と考えられる。また、内部セキュア時間ソースがないモバイルデバイスに対して必要とされる起動時のデータ呼のために、ポリシー１０の下での保護は「良」である。ＭおよびＮが小さいので、また、モバイルデバイス２００の起動時のデータ呼がユーザにとって邪魔で混乱を招くものなので、ポリシー１０のユーザ経験は「不良」と考えられる。とはいえ、モバイルデバイス１００、２００がカバレージ内であるか、カバレージエリア外であるか、またはローミングモードであるかどうかにかかわらず、モバイルデバイス２００がセキュア時間を頻繁に与えることができず、クライアントが制限された猶予期間を変更できない場合、ユーザ経験は「極不良」である。起動時の呼は、検証されているライセンスに関連する保護コンテンツにアクセスする試行に明らかに関係しないので、起動時の呼は、混乱を招くことがある。
【００６８】
ポリシー１１は、ポリシー１０と同様のライセンスポリシーの例であるが、起動時にセキュア時間のためのデータ呼をもはや必要としない。セキュア時間のためのデータ呼がもはや必要とされないので、コンテンツを保護するポリシー１１の有効性は「良」から「可」に格下げされる。しかしながら、予想されるユーザ経験は、「良」に改善することができるが、いくつかの状況下では「極不良」であることができる。データ呼が常に必要ではなく、そのため邪魔にならないので、ポリシー１１のユーザ経験は「良」と考えられる。とはいえ、モバイルデバイス１００、２００がカバレージ内であるか、カバレージエリア外であるか、またはローミング中であるかどうかにかかわらず、モバイルデバイス１００、２００がセキュア時間を頻繁に与えることができず、クライアントが制限された猶予期間を変更できない場合、ユーザ経験は「極不良」であるだろう。
【００６９】
ポリシー１２は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓの値を偽（false）に設定するライセンスポリシーの例であるので、保護コンテンツへのアクセスが必要とされるときはいつでも、セキュア時間を取り出すことを執行エージェント１０４に要求しない。セキュア時間が利用できず、モバイルデバイス１００、２００がカバレージエリア内である場合、ポリシー１２は、最大Ｍ回の猶予期間アクセス試行を可能にする。セキュア時間が利用できず、モバイルデバイス１００、２００がカバレージエリア外である場合、ポリシー１２は、最大Ｎ回の猶予期間アクセス試行を可能にする。ＭとＮの両方は大きいので、ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇの設定は特に関係しない。ポリシー１２は、モバイルデバイス１００、２００の起動時にのみセキュア時間を取り出すことを執行エージェント１０４に要求する。ＭおよびＮの値は、ポリシー１０とは対照的に大きく、したがって、モバイルデバイス１００、２００がカバレージ外であるとき、ポリシー１２の保護を弱める。これらのパラメータ設定が適切であれば、該ポリシーは、より多くの回数の猶予期間アクセス試行を利用することによって、より長い時間期間の間悪用されることがあるので、保護は「弱い（weak）」と考えられる。モバイルデバイス１００、２００の起動時のデータ呼が邪魔でユーザに混乱を招くので、ポリシー１２のユーザ経験は「不良」と考えられる。起動時の呼は、検証されているライセンスに関連する保護コンテンツにアクセスする試行に明らかに関係しないので、混乱を招くことがある。
【００７０】
ポリシー１３は、ポリシー１２と同様のライセンスポリシーの例であるが、起動時にデータ呼は必要ではなくなる。ＭおよびＮの値は、ポリシー１１とは対照的に大きく、モバイルデバイス１００、２００がカバレージ外であるとき、ポリシー１３の保護を弱める。したがって、このポリシーは、より長い猶予期間を利用することによってポリシー１１の場合よりも長い期間の間悪用されることができる。さらに、データ呼がないことによって、ポリシー１３はポリシー１２よりも弱くなる。これらのパラメータ設定が適切であれば、保護は「極弱（very weak）」と考えられる。データ呼が常に必要ではなく、そのため邪魔にならないので、ポリシー１３のユーザ経験は「良」と考えられる。
【００７１】
ポリシー１４は、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓの値を偽に設定するライセンスポリシーの例であるので、保護コンテンツへのアクセスが必要とされるときはいつでも、セキュア時間を取り出すことを執行エージェント１０４に要求としない。セキュア時間が利用できず、モバイルデバイス１００、２００がカバレージエリア内である場合、ポリシー１４は、最大Ｍ回の猶予期間アクセス試行を可能にする。セキュア時間が利用できず、モバイルデバイス１００、２００がカバレージエリア外である場合、ポリシー１４は、最大Ｎ回の猶予期間アクセス試行を可能にする。ＭとＮの両方は大きいので、ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇの設定は特に関係しない。これらのパラメータ設定が適切であれば、図３のポリシー１４は、クライアントによる悪用からの最小のセキュアＤＲＭ保護およびコンテンツプロバイダのための最小保護を与える。ポリシー１４は、悪用するまでのユーザによる骨折りをほとんどなしに、長い期間の間、使用保護コンテンツへのアクセスを可能にするので、ポリシー１４は「極弱」と考えられる。しかしながら、ポリシー１４は、ユーザにとって完全に邪魔にならないので、「極良」と考えられる。
【００７２】
図４は、執行エージェント１０４によって実行される手順の一実施形態のプロセス流れ図である。図４ａは、図４に示されるステップを実装するために当業者によって利用できる例示的な可能な擬似コードのリストである。保護コンテンツがクライアントによって最初にダウンロードされるとき、ライセンスが実行され、ライセンスの期間を管理するパラメータが、メモリ１１１のセキュアな部分に記憶されることができる。メモリパラメータがメモリ１１１のセキュアな部分に記憶されると、ライセンスパラメータカウンタ（ＬＰ）が、記憶されたパラメータごとに増分されることができる。図４に示すステップ３０１において、実施形態方法は、保護コンテンツに関連するライセンスが適切であるかどうかを判断する。ライセンスパラメータがメモリ１１１のセキュアな部分に記憶されていない場合、ＬＰの値は０であるだろう。ＬＰの値が０である場合、ステップ３１６において、メモリ１１１に記憶されたすべてのデジタルコンテンツへのアクセスは許可される。しかしながら、ＬＰの値が０でない場合、少なくとも１つの時間ベースライセンスが施行されることができる。
【００７３】
ステップ３０２において、プロセッサ１１０を介して執行エージェント１０４は、ローカルセキュア時間ソース１０２が存在するかどうかを判断することができる。セキュア時間ソースが利用可能な場合、ステップ３０４において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、クライアントが保護コンテンツへのアクセスを許可された制限された時間期間が経過したかどうかを確かめるために検査することができる。制限された時間期間が経過されていない場合、ステップ３０７において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔをＭに、ＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔをＮに、および猶予期間カウンタを０に設定することができる。次いで、ステップ３１９において、クライアントは保護コンテンツへのアクセスを与えられる。
【００７４】
ステップ３０４において、制限された時間期間が経過したと判断された場合、ステップ３０５において、ライセンスが期限切れになったものとされることができ、ステップ３０８において、クライアントは、ライセンスが期限切れになったことを通知される。クライアントがライセンスの期限切れについて通知された後、ステップ３１８において、保護コンテンツへのアクセスが拒否される。
【００７５】
ステップ３０２において、ローカルセキュア時間ソース１０２が利用可能でない場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ３０３において、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓパラメータがＴＲＵＥまたはＦＡＬＳＥに設定されたかを判断するために、保護コンテンツに関連するライセンスパラメータ１０５を調べるだろう。ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓパラメータがＦＡＬＳＥに設定されていた場合、該実施形態方法は、モバイルデバイス２００がカバレージ内であるか、カバレージ外であるか、またはローミング中であるとき、モバイルデバイス２００が猶予期間アクセス試行を許可されるかどうかを判断する（以下のステップ３１０〜３１９参照）。
【００７６】
ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓパラメータがＴＲＵＥに設定されていた場合、ステップ３０６において、セキュア時間を取り出すためにセキュア時間ソース２０２に対して呼が行われる。ステップ３０９において、セキュア時間ソースを取り出すためのデータ呼が成功した場合、該実施形態方法は、ステップ３０２において、ローカルセキュア時間ソースが利用可能であるかのように動作することができ、ステップ３０４、３０５、３０７、および３０８に続く。しかしながら、セキュア時間ソースを取り出すための呼が失敗した場合、該実施形態方法は、モバイルデバイス２００がカバレージ内であるか、カバレージ外であるか、またはローミング中であるとき、クライアント／ユーザが猶予期間アクセス試行を許可されているかどうかを判断するだろう（以下のステップ３１０〜３１９参照）。
【００７７】
モバイルデバイス１００、２００がカバレージ内であるか、カバレージ外であるか、またはローミング中のいずれかであるとき、クライアント／ユーザが猶予期間アクセス試行を行うのを許可されているかどうかを判断するために、該実施形態方法は、モバイルデバイス２００がどの状態（すなわち、カバレージ内、カバレージ外、またはローミング中）であるかを最初に判断しなければならない。この判断を行うために、ステップ３１０において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、モバイルデバイスの２００のトランシーバ機能が使用可能かどうかを判断する。
【００７８】
トランシーバ機能が使用不能であるか、またはデータ呼が失敗した場合、モバイルデバイス２００がカバレージ内であると仮定することができる。トランシーバ機能が使用不能であった場合、使用不能なトランシーバ機能がなければ、モバイルデバイス２００がセキュア時間を取り出すためのデータ呼を正常に完了することが可能であると仮定する。モバイルデバイス２００がカバレージ内であるので、ステップ３１２において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ライセンスポリシーが、クライアント／ユーザがカバレージ内猶予期間アクセス試行をＭ回行うことを可能にするかどうかを判断する。ステップ３１２において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、猶予期間カウンタを検査し、クライアントにとって依然として利用可能である猶予期間アクセス試行があるかどうかを判断するために、それをＩｎｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ値Ｍと比較するだろう。ステップ３１２において、猶予期間カウンタとＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ値Ｍとの比較が、さらなる猶予期間アクセス試行が利用可能であると判断した場合、ステップ３１５において、猶予期間試行カウンタが増分され、ステップ３１９において、保護コンテンツへのアクセスが許可される。ステップ３１２において、猶予期間カウンタとＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ値Ｍとの比較が、さらなる猶予期間アクセス試行が利用可能ではないと判断した場合、ステップ３１８において、保護コンテンツへのアクセスが阻止される。
【００７９】
ステップ３１０において、トランシーバ機能が使用可能であるが、モバイルデバイス２００が、セキュア時間ソース２０２からセキュア時間を取り出すためのデータ呼を完了することに失敗したと判断した場合、モバイルデバイス２００がカバレージ外であるか、またはローミングモードであるかのいずれかであると仮定することができる。したがって、該実施形態方法は、どの条件を適用するかを判断しなければならない。ステップ３１１において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、モバイルデバイスがローミングモードである（すなわち、音声呼出しが利用可能であるが、データ呼が利用可能ではない）かどうかを判断する。大部分のモバイルデバイス２００では、音声呼出しのための追加料金が適用すべきかどうかを判断するために、この判断は事前に行われる。モバイルデバイス２００がローミングモードである場合、ステップ３１３において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ライセンスポリシーが、クライアント／ユーザにローミング猶予期間アクセス試行をＲ回行うことを可能にするかどうかを判断する。ステップ３１３において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、猶予期間カウンタを検査し、クライアントにとって依然として利用可能である猶予期間アクセス試行があるかどうかを判断するために、それをＲｏａｍＵｓｅＬｉｍｉｔ値Ｒと比較するだろう。ステップ３１３において、猶予期間カウンタとＲｏａｍＵｓｅＬｉｍｉｔ値Ｒとの比較が、さらなる猶予期間アクセス試行が利用可能であると判断した場合、ステップ３１６において、猶予期間試行カウンタが増分され、ステップ３１９において、保護コンテンツへのアクセスが許可される。ステップ３１３において、猶予期間カウンタとＲｏａｍＵｓｅＬｉｍｉｔ値Ｒとの比較が、さらなる猶予期間アクセス試行が利用可能ではないと判断した場合、ステップ３１８において、保護コンテンツへのアクセスが阻止される。
【００８０】
ステップ３１１において、モバイルデバイス２００がローミングモードではないと判断された場合、モバイルデバイス２００がカバレージ外であると仮定されることができる。ステップ３１１において、モバイルデバイス２００がカバレージ外である場合、ステップ３１４において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ライセンスポリシーが、クライアント／ユーザにカバレージ外猶予期間アクセス試行をＮ回行うことを可能にするかどうかを判断する。ステップ３１４において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、猶予期間カウンタを検査し、クライアントにとって依然として利用可能である猶予期間アクセス試行があるかどうかを判断するために、それをＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ値Ｎと比較するだろう。ステップ３１４において、猶予期間カウンタとＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ値Ｎとの比較が、さらなる猶予期間アクセス試行が利用可能であると判断した場合、ステップ３１７において、猶予期間試行カウンタが増分され、ステップ３１９において、保護コンテンツへのアクセスが許可される。ステップ３１４において、猶予期間カウンタとＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ値Ｎとの比較が、さらなる猶予期間アクセス試行が利用可能ではないと判断した場合、ステップ３１８において、保護コンテンツへのアクセスが阻止される。
【００８１】
代替実施形態（図示せず）は、ＲｏａｍＵｓｅＬｉｍｉｔパラメータ値Ｒをなくすことによって、本方法を簡単にすることができる。代わりに、ＴＲＵＥまたはＦＡＬＳＥのいずれかに設定されることができる、ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータ値などのパラメータが利用されることができる。それがＴＲＵＥに設定され、モバイルデバイス２００がローミングモードであると判断された場合には、オペレーティングシステム１０２およびプロセッサ１１０を介して執行エージェント１０４は、ローミングモードのモバイルデバイス２００を、モバイルデバイス２００がカバレージ内（すなわち、トランシーバ機能が使用不能にされたカバレージ内）であるかのように扱う。したがって、ローミングモードである間の猶予期間アクセス試行は、ＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｍに対して課金される。ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータがＦＡＬＳＥに設定され、モバイルデバイス２００がローミングモードであると判断された場合には、オペレーティングシステム１０２およびプロセッサ１１０を介して執行エージェント１０４は、ローミングモードであるモバイルデバイス２００を、モバイルデバイス２００がカバレージ外であるかのように扱う。したがって、ローミングモードである間の猶予期間アクセス試行は、ＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｎに対して課金される。
【００８２】
図４ａは、図４に示され上述されたステップを実行するように実装されることができるサンプル擬似コードを列記する。図４ａに示すように、ライン４０１において、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇが命名される。ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓは、ライセンスポリシーのライセンスパラメータ１０５、２０５を保持するデータ構造を参照する。ライン４０２は、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇの本体を開始する。ライン４０３は、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇに渡される引数がヌルであるかどうかを検査する（図４のステップ３０１参照）。ヌル引数は、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇがライセンスがないコンテンツに対して呼び出されたとき、偶然に、または意図的に生じることがある。ライセンスがない場合、プロシージャは、コンテンツがアクセスされることができると仮定するので、ライン４０４は、ＡｌｌｏｗＡｃｃｅｓｓ（図４のステップ３１９）と標示されたステートメントにおいて実行が継続することを指示する。
【００８３】
ライン４１０のアサーション（assertion）は、単にコメントとして扱われるか、あるいはライン４１０は、手動または自動デバッギングまたはプロシージャの正当性の検証を指示するために使用される。ライン４１１は、モバイルデバイス１００上のセキュアクロック１０２などのローカルセキュア時間ソースがあるかどうかを判断する（ステップ３０２）。一実施形態では、セキュアクロック１０２は、モバイルデバイス１００の残部が電源切断された後も動作し続けることができる。ローカル時間ソース１０２がセキュアな場合、ライン４１３は実行をＴｅｓｔＦｏｒＥｘｐｉｒａｔｉｏｎと標示されたステートメントで続行することに向ける（図４のステップ３０４）。さもなければ、実行は、ライン４１３の後に続く。ライン４２０は、コメントとして考えられるか、またはプロシージャの正当性の検証のために使用される。ライン４２１は、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造中の、ＴｉｍｅＣａｌｌＡｔＡｃｃｅｓｓパラメータの値を判断する（図４のステップ３０３）。値がＴｒｕｅに設定された場合、ライン４２２は、サービスプロバイダネットワーク２０１上のセキュア時間ソース２０２からセキュア時間を取り出すために、呼を開始する（図４のステップ３０６）。ライン４２２において呼がセキュア時間を正常に取り出した場合、セキュア時間は局所変数ＳＴｉｍｅに記憶され、ライン４２４は、実行をＴｅｓｔＦｏｒＥｘｐｉｒａｔｉｏｎと標示されたステートメントで続行することに向ける（図４のステップ３０４）。
【００８４】
図４ａにおいては、ライン４３０は、セキュア時間が利用できないことをアサートする。ライン４３１は、モバイルデバイス２００の動作モードを判断する一連の場合を開始する。ライン４３１は、モバイルデバイス２００がカバレージ内であるか、カバレージ外であるか、またはローミングモードで動作しているかどうかを判断する（図４のステップ３１０および３１１）。すなわち、モバイルデバイス１００、２００の動作モードがカバレージ内である場合、ライン４３２は、実行をＣｏｖｅｒａｇｅＩｎと標示されたステートメントで続行することに向ける（図４のステップ３１２、３１５）。モバイルデバイス２００の動作モードがローミング中である場合、ライン４３４は、実行をＲｏａｍｉｎｇと標示されたステートメントで続行することに向ける。モバイルデバイス２００の動作モードがカバレージ外である場合、ライン４３６は、実行をＣｏｖｅｒａｇｅＯｕｔと標示されたステートメントで続行することに向ける。（ステップ（ステップ（ステップ。
【００８５】
図４ａにおいては、ライン４４０は、ラベルＣｏｖｅｒａｇｅＩｎを用いて一連のステートメントを標示する。ライン４４０で開始するラインは、カバレージ内モードであるモバイルデバイスの場合に応じる（図４のステップ３１２）。ライン４４１は、モバイルデバイス２００がカバレージ内モードで動作している間、保護コンテンツへのより多くの猶予期間アクセスが残っているかどうかを確かめるために、ＩｎＵｓｅｓＡｔｔｅｍｐｔｓアクセスカウンタの変数値を調査する（図４のステップ３１２）。もはやカバレージ内猶予期間アクセスが残っていない場合、ライン４４２は、実行をＢｌｏｃｋＡｃｃｅｓｓと標示されたステートメントで続行することに向ける（図４のステップ３１８）。さもなければ、実行は、ＩｎＵｓｅｓＡｔｔｅｍｐｔｅｄと呼ばれるカウンタを増分するライン４４３に続く（図４のステップ３１５）。プログラミングを簡単にするために、カウンタＩｎＵｓｅｓＡｔｔｅｍｐｔｅｄは、ライセンスパラメータをも含む、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照される同じデータ構造で位置付けられる整数変数フィールドとすることができる。ライン４４４は、実行をＡｌｌｏｗＡｃｃｅｓｓと標示されたステートメントで続行することに向ける（図４のステップ３１９）。
【００８６】
図４ａにおいては、ライン４５０は、ラベルＲｏａｍｉｎｇを用いて一連のステートメントを標示する。ライン４５０で開始するラインは、ローミングモードであるモバイルデバイスの場合に応じる（図４のステップ３１３）。ライン４５１は、モバイルデバイス２００がローミングモードで動作している間、保護コンテンツへのより多くの猶予期間アクセスが残っているかどうかを確かめるために、ＲｏａｍＵｓｅｓＡｔｔｅｍｐｔｓアクセスカウンタの変数値を調査する（図４のステップ３１３）。もはやローミング猶予期間アクセスが残っていない場合、ライン４５２は、実行をＢｌｏｃｋＡｃｃｅｓｓと標示されたステートメントで続行することに向ける（図４のステップ３１８）。さもなければ、実行は、ＲｏａｍＵｓｅｓＡｔｔｅｍｐｔｅｄと呼ばれるカウンタを増分するライン４５３に続く（図４のステップ３１６）。プログラミングを簡単にするために、カウンタＲｏａｍＵｓｅｓＡｔｔｅｍｐｔｅｄは、ライセンスパラメータをも含む、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照される同じデータ構造で位置付けられる整数変数フィールドとすることができる。ライン４５４は、実行をＡｌｌｏｗＡｃｃｅｓｓと標示されたステートメントで続行することに向ける（図４のステップ３１９）。
【００８７】
（図４ａにおいては、ライン４６０は、ラベルＣｏｖｅｒａｇｅＯｕｔを用いて一連のステートメントを標示する。ライン４６０で開始するラインは、カバレージ外モードであるモバイルデバイスの場合に応じる。ライン４６１は、モバイルデバイス２００がカバレージ外モードで動作している間、保護コンテンツへのより多くの猶予期間アクセスが残っているかどうかを確かめるために、ＯｕｔＵｓｅｓＡｔｔｅｍｐｔｓの値を調査する（図４のステップ３１４）。もはやカバレージ外猶予期間アクセスが残っていない場合、ライン４６２は、実行をＢｌｏｃｋＡｃｃｅｓｓと標示されたステートメントで続行することに向ける（図４のステップ３１８）。さもなければ、実行は、ＯｕｔＵｓｅｓＡｔｔｅｍｐｔｅｄと呼ばれるカウンタを増分するライン４６３に続く（図４のステップ３１７）。プログラミングを簡単にするために、ＯｕｔＵｓｅｓＡｔｔｅｍｐｔｅｄは、ライセンスパラメータをも含む、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照される同じデータ構造で位置付けられる整数変数フィールドとすることができる。ライン４６４は、実行をＡｌｌｏｗＡｃｃｅｓｓと標示されたステートメントで続行することに向ける（図４のステップ３１９）。
【００８８】
図４ａにおいては、ライン４７０は、ラベルＴｅｓｔＦｏｒＥｘｐｉｒａｔｉｏｎを用いて一連のステートメントを標示し、ライン４７１でアサートされるように、時間ＳＴｉｍｅがセキュアであると知られているときはいつでも、ライセンスを検証する（図４のステップ３０２）。ライン４７２は、現在のセキュア時間ＳＴｉｍｅをＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造のＥｘｐｉｒａｔｉｏｎＤａｔｅパラメータと比較する（図４のステップ３０７）。ＳＴｉｍｅがＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓのパラメータＥｘｐｉｒａｔｉｏｎＤａｔｅの有効日／時値より大きい、すなわち、有効日／時より後の場合、ライセンスは期限切れになる。ライン４７３は、ライセンスが期限切れになったことを明解に示すためにいくつかの動作を実行する（図４のステップ３０５）。動作は、ライセンスパラメータデータ構造および保護コンテンツを削除することがあるが、これは、アクセス権利の次の更新を複雑にする。ライン４７３の代替動作は、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造内で期限切れになったものとしてライセンスを示すことである（図４のステップ３０５）。たとえば、データ構造は、Ｔｒｕｅに設定されているＥｘｐｉｒｅｄと呼ばれる、ブーリアンフィールドを有することができる。いずれの場合も、ライン４７４は、ＩｎＵｓｅＡｔｔｅｍｐｔｓの値をＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｍよりも大きい値に設定する。ライン４７５は、ＲｏａｍＵｓｅＡｔｔｅｍｐｔｓの値をＲｏａｍＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｒよりも大きい値に設定する。ライン４７６は、ＯｕｔＵｓｅＡｔｔｅｍｐｔｓの値をＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｎよりも大きい値に設定する。ライン４７７〜４７９で、ＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ、ＲｏａｍＵｓｅＬｉｍｉｔおよびＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔの値はそれぞれ、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造で０に設定される。０値は、カバレージからモバイルデバイス２００を意図的に遮蔽することによって、クライアントが不正をして、任意の残りの未使用のカバレージ外猶予期間アクセスを使用することを防止する。ライン４８０は、クライアントにライセンスが期限切れになったことを通知し、クライアントにライセンスを更新するように勧誘することができる（図４のステップ３０８）。ライン４７９は、保護コンテンツをアクセスされることから防止するだろうＢｌｏｃｋＡｃｃｅｓｓと標示されたステートメントに、実行を向ける（図４のステップ３１８）。
【００８９】
ライン４７２での比較により、ライセンスがＳＴｉｍｅに基づいて依然として有効であることがわかった場合（図４のステップ３０４）、ライン４８３〜４８５は、ライセンスポリシーのライセンスパラメータを含む、同じデータ構造ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓ中に位置付けられる、整数猶予期間アクセスカウンタＩｎＵｓｅｓＡｔｔｅｍｐｔｓ、ＲｏａｍＵｓｅＡｔｔｅｍｐｔｓおよびＯｕｔＵｓｅＡｔｔｅｍｐｔｓを０にリセットする（図４のステップ３０７）。ライセンスが期限切れになったと判断され、時間がセキュアであったので、猶予期間アクセスカウンタ、ＩｎＵｓｅｓＡｔｔｅｍｐｔｓ、ＲｏａｍＵｓｅＡｔｔｅｍｐｔｓおよびＯｕｔＵｓｅｓＡｔｔｅｍｐｔｓは０にリセットされる。
【００９０】
図４ａにおいては、ライン４９０は、ラベルＡｌｌｏｗＡｃｃｅｓｓをライン４９１のステートメントに添付し、プロシージャを抜けて、セキュア時間が利用可能ではなかったとしても、ライセンスが期限切れになっていないものとして扱われるべきであることを示すために、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇの呼出し側に値Ｔｒｕｅを帰す（図４のステップ３１９）。ライン４９５は、ラベルＢｌｏｃｋＡｃｃｅｓｓをライン４９６のステートメントに添付し、プロシージャを抜けて、ライセンスが期限切れになったものとして扱われるべきでであることを示すために、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇの呼出し側に値Ｆａｌｓｅを帰す（図４のステップ３１８）。ライン４９９は、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇの終了を示す。
【００９１】
図４ｂは、ＲｏａｍＵｓｅＬｉｍｉｔの値が利用されないとき、代替プロシージャを実施するために実装されるサンプル擬似コードを列記するが、むしろ、本方法は、ローミングモードであるときに、いずれかのＩｎＵｓｅＬｉｍｉｔにデフォルト設定される。サンプル擬似コードは、図４ａのサンプル擬似コードと実質的に同様であるが、ＲｏａｍＵｓｅＡｔｔｅｍｐｔｓおよびＲｏａｍＵｓｅＬｉｍｉｔｓを参照するコードのラインはない。代わりに、新しいコードライン４３５〜４３９が追加されている。当業者は、必要な場合、ＯｕｔＵｓｅＬｉｍｉｔにデフォルト設定されるサンプル擬似コードを容易に生成することができる。ライン４３５で、モバイルデバイス２００がカバレージ内でもカバレージ外でもないと考えられる場合、モバイルデバイス２００は、ローミングモードであると考えられることができる。ライン４３６で、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造のＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータから、カバレージ内の場合またはカバレージ外の場合と同様にローミングモードを扱うべきかどうかを判断する。ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータの値がＴｒｕｅである場合、ローミングモードは、カバレージ内モードの場合と同じポリシーパラメータを使用し、ライン４３７は、実行をＣｏｖｅｒａｇｅＩｎと標示されたステートメントで続行することに向ける。ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータの値がＦａｌｓｅである場合、ローミングモードは、カバレージ外モードの場合と同じポリシーパラメータを使用し、ライン４３９は、実行をＣｏｖｅｒａｇｅＯｕｔと標示されたステートメントで続行することに向ける。図４ａおよび図４ｂに示すサンプル擬似コードリストは、様々な実施形態のステップを実装するために使用されることができる可能な擬似コードの例を意味するにすぎない。それらは、いかなる形でも実施形態を制限することを意味するものではない。
【００９２】
いくつかの実施形態の場合、サービスプロバイダは、フィールドにおいてリモートでおよび／またはオンザフライでライセンスパラメータを構成するかまたは変更することが可能であることができる。たとえば、サービスプロバイダは、誤用で特定されることがあるライセンスを終了することができ、または、サービスプロバイダは、既存のライセンスを与えられたユーザからの支払い時に、ライセンスをリモートでアップグレードするかまたは更新することができる。リモートアップグレードまたは更新は、新しいライセンスパラメータ値をセキュアに無線で送信するための標準の方法を使用することによって達成されることができる。パラメータに対する更新は、デジタル署名を用いてＳＭＳなどのいくつか手段を使用してデバイスにプッシュされることができる。
【００９３】
図５は、執行エージェント１０４によって実行できる手順の代替実施形態の流れ図である。代替実施形態は、図１に示すステップのすべてを含むが、リモートで、または、フィールドにおいてライセンスパラメータを構成するかまたは変更する能力をもつサービスプロバイダを許可するためのステップをも含む。図５ａは、図５で示されるステップを実装するために当業者によって利用される擬似コードを列記しているサンプルを与える。
【００９４】
図５に示される代替実施形態は、図４に示され上述されたステップ３０１〜３１９を実装し続ける。しかしながら、図５の代替実施形態において、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４が、ステップ３０２においてローカルセキュア時間が利用可能であると判断した場合、または、ステップ３０９においてセキュア時間を取り出すための呼が成功した場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ３２０において、メモリ１１１のセキュアな部分に記憶されたライセンスポリシーおよび／またはパラメータを更新すべき時間かどうかを判断する。更新間の時間は、任意の時間期間Ｔとすることができる。時間Ｔは、サービスプロバイダによって予め設定されることができ、または、時間ごとに、日ごとに、月ごとになどに基づいて行われることができる。予め設定された時間期間Ｔが経過した場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ３２１において、ライセンスパラメータ（ＬＰ）の更新が利用可能であるかどうかを判断するために、サービスプロバイダサーバ（図示せず）と交信するだろう。ライセンスパラメータの更新が利用可能である場合、ライセンスパラメータは、ステップ３２２において、メモリ１１１のセキュアな部分にダウンロードされるだろう。更新されたライセンスパラメータがダウンロードされた後は、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ３０４において、クライアント／ユーザの時間ベースライセンスが期限切れになったかどうかを判断し続けるだろう。ライセンスが期限切れになっていない場合、ステップ３０７において、新しいライセンスパラメータが設定されるだろう。新しいライセンスパラメータは、モバイルデバイスがカバレージ内であるか、カバレージ外であるか、またはローミング中である場合に、クライアント／ユーザにとって利用可能な猶予期間アクセス試行を改変することができる。
【００９５】
図５ａは、図５に示す追加のステップを実行するように実装されることができるサンプル擬似コードを示す。さらなる擬似コードライン５００〜５１１が追加されている。図５ａによって、ライン４１１はローカルセキュア時間ソースが利用可能であるかどうかを検査する。ローカルセキュア時間ソースが利用可能である場合、Ｃｈｅｃｋ  Ｕｐｄａｔｅｓと標示されたステップのシーケンスを実行する（図５のステップ３２０）。さらに、ライン４２０において、ローカルセキュア時間が利用可能でない場合、ライン４２１〜４２４において、セキュア時間を取り出す一連のステップが行なわれる（図５のステップ３０３、３０６、３０９参照）。セキュア時間を取り出すための呼が成功した場合（図５のステップ３０９）、Ｃｈｅｃｋ  Ｕｐｄａｔｅｓと標示されたステップのシーケンスが実行される（図５のステップ３２０）。Ｃｈｅｃｋ  Ｕｐｄａｔｅｓシーケンス、ライン５００〜５１０においては、ライン５０１で、予め設定された時間Ｔが経過したかどうかを確かめるために検査が行われる（図５のステップ３２０）。予め設定された時間期間Ｔが経過した場合、ライン５０２で、更新がサービスプロバイダから利用可能であるかどうかを判断するために検査が行われる（図５のステップ３２１）。更新が利用可能である場合、ライン５０４で、セキュアなデータチャネルを開く命令が実行され、ライン５０５で、アクセス統計がサービスプロバイダに送信される。ライン５０６および５０７で、新しいライセンスパラメータがサービスプロバイダから受信されて、記憶される（ステップ３２２。新しいライセンスパラメータが記憶されると、ライン５０８で、セキュアなデータチャネルが閉じせれる。ライン５０８でセキュアなデータチャネルが閉じられると、サンプル擬似コードは、図４ａに対して上記で概説したＴｅｓｔＦｏｒＥｘｐｉｒａｔｉｏｎプロシージャに移動する。ライン５０１で、予め設定された時間期間Ｔが経過していない場合、図４ａに対して上記で概説したようにＴｅｓｔＦｏｒＥｘｐｉｒａｔｉｏｎプロシージャが実行される。
【００９６】
ライセンスパラメータに対する更新は、クライアント／ユーザが新しいライセンスおよびコンテンツを購入するか、あるいは現在のライセンスを更新するかまたはアップグレードすることの結果であることがある。新しいライセンスまたはコンテンツが購入されたとき、新しいライセンスまたはコンテンツをアップロードするプロセスは、猶予期間カウンタをリセットすることを含む、新しいライセンスパラメータ値を記憶することを含む。本方法では、更新されたライセンスパラメータは、基本的に新しいコンテンツおよびライセンスのダウンロードの一部として搬送される。ユーザが、新しい１つのコンテンツを購入／アップグレードするためにサーバと交信するとき、コンテンツ自体を制御するコンテンツおよびライセンス規則（２００８年８月１５日まで再生）に伴うのは、ライセンスパラメータ（起動時の呼、カバレージ外猶予期間など）に対する更新である。これらの更新されたライセンスパラメータは、グローバルである、すなわち、すべてのコンテンツ／データに適用されることができか、または、新たにダウンロードされたコンテンツ自体にのみ適用されることができる。新しいコンテンツの購入がセキュアなデータ接続の確立を必要とするので、ライセンスパラメータは、コンテンツデータと同様の方法で認証され、暗号化され、保全されることができる。本方法は、ユーザが新しいコンテンツダウンロードを購入するときライセンスパラメータ更新を実装し、またある時にはサーバとの明示的データ接続の必要をなくし、それによってユーザの経験を改善することを許す。より多くのコンテンツを買うことの報酬がより良いユーザ経験になるように、本方法を使用してコンテンツプロバイダは、より良い／より親しみやすいライセンスパラメータ（たとえば、より長いライセンス、より多くの猶予期間使用など）で、コンテンツの頻繁な購入者に報いることができる。したがって、新しい購入ごとに、コンテンツプロバイダは、同じダウンロードトランザクション中でそのコンテンツのすべてのライセンスパラメータを変更することができる。
【００９７】
保護コンテンツへの更新の場合、ライセンスパラメータの更新は、図５に図示されないステップでの更新が伴われることができる。ライン５０３が、更新が利用可能であると判断した場合、ライン５０４はセキュアなデータ接続を開く。データ接続は、モバイルデバイス１００、２００が、その接続へのクライアント／ユーザアクセスおよびその接続を介した伝送を防止するという意味では、セキュアであることができる。パラメータ値を保全して、値の考えられる改ざんを妨害するために、パラメータを暗号化するか、または小さい１つの実行コード中にパラメータ値を埋め込み、デジタル署名またはＨＭＡＣ認証を含むことは有利であることができる。ライン５０５は、現在のライセンスパラメータおよび／または保護コンテンツのためのアクセスアクティビティに関する統計をサービスプロバイダネットワークに送信させる。たとえば、保護コンテンツへのアクセス総数は、ＡｃｃｅｓｓＳｔａｔｉｓｔｉｃｓと呼ばれるデータ構造中に保持された統計値とすることができる。他の統計値は、猶予期間カウンタＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓ．ＩｎＵｓｅＡｔｔｅｍｐｔｓおよび、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓ．ＯｕｔＵｓｅＡｔｔｅｍｐｔｓがそれぞれ、制限ＭおよびＮを上回って増分した回数とすることができる。サービスプロバイダは、サービスプロバイダネットワーク２０１がモバイルデバイス１００、２００に送信するライセンスパラメータの更新のための値を判断するために、これらの統計値を使用することができる。ライン５０６は、更新の新しいライセンスパラメータを一時的データ構造ＮｅｗＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓに保存する。次いで、ライン５０７は、ライセンスパラメータの新しい値をＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造に複製する。ライン５０８は、セキュアなデータ接続を閉じる。
【００９８】
上述のように、実施形態によって採用される可能な使用ライセンスパラメータの１つは、ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐである。任意の保護ポリシーがこのライセンスパラメータをＴＲＵＥに設定した場合、セキュア時間は、モバイルデバイス１００中の内部セキュア時間ソースから、またはモバイルデバイス２００が電源投入されたときのデータ呼によって、アクセスされなければならない。図６は、ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐパラメータを採用する実施形態方法によって実行されるステップを示す。
【００９９】
図６に示されるように、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ９００において、モバイルデバイス１００、２００がローカルセキュア時間ソースを含むかどうかを判断する。モバイルデバイス１００がローカルセキュア時間ソースを含む場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ９０３において、セキュア時間がモバイルデバイス１００上にローカルにすでに存在するので、データ呼が必要ではないことを示すＦＡＬＳＥの値を帰すだろう。しかしながら、ステップ９００において、モバイルデバイス２００がローカルセキュア時間ソースを含まない場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ９０２において、メモリ１１１のセキュアな部分に記憶されたライセンスポリシーのライセンスパラメータが、ＴＲＵＥに設定されたＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐを有するかどうかを判断する。そうであれば、ステップ９０４において、保護コンテンツへのアクセスの許可の前にデータ呼が必要であるだろう。
【０１００】
第１のライセンスポリシーがＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐに対してＴＲＵＥを示すライセンスパラメータを含まない場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ９０２において、メモリ１１１のセキュアな部分に記憶された各ライセンスポリシーを検査し続けるだろう。メモリ１１１のセキュアな部分内に記憶された任意の他のライセンスポリシーが、パラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐに対してＴＲＵＥの値を帰す場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ９０４において、保護コンテンツへのアクセスの許可より前にセキュア時間ソースへのデータ呼を必要とするだろう。ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐに対してＴｒｕｅの値を帰すメモリ１１１のセキュアな部分に記憶されたライセンスポリシーがない場合、ステップ９０５において、データ呼は行われないだろう。
【０１０１】
図６ａは、図６に示されたステップを実行するように実装されることができるサンプル擬似コードを示す。図６ａに示されるように、擬似コードループは、モバイルデバイスが電源投入されたときに開始されるソフトウェアの一部として呼び出されることができるＩｓＳｔａｒｔｕｐＴｉｍｅＦｅｔｃｈＮｅｅｄｅｄと呼ばれることができる。ライン６０１、６０２は、プロシージャ本体を開始する。ライン６０３は、モバイルデバイス１００、２００が電源切断されている間に時間を維持する、モバイルデバイス１００、２００上にセキュアクロックがあるかどうかなど、セキュア時間１０２がローカルで利用可能かどうかを判断する。ローカルセキュア時間ソース１０２がある場合、プロシージャは、ライン６０４において抜けて、データ呼が必要ではないことを示す結果（ＦＡＬＳＥ）を帰す。ローカルセキュア時間ソース１０２がないか、あるいはセキュアクロックが初期化、検証、または同期を必要とする場合、プロシージャの実行はライン６１０に続く。ライン６１０のアサーションは、コメントとして扱われることができ、またはプロシージャの正当性を手動または自動的に検証することに役立つことができる。ライン６１１は、モバイルデバイス２００上で発見されたライセンスＬごとに循環するループの始端である。ライン６１３は、ループのラインのインデントによって示されるようにループの最後のラインである。ライン６１２は、パラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐが任意のライセンスＬに対してＴＲＵＥに設定されているかどうかを検査する。ライセンスＬが、ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐがＴＲＵＥであるとわかった場合、プロシージャは、ライン６１３で抜け、モバイルデバイス２００が起動したときにサービスプロバイダのネットワークからセキュア時間にアクセスしなければならないことのインジケータとしてＴＲＵＥを帰す。ライセンスＬがＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐをＴｒｕｅに設定したことがわからなかった場合、ループは最終的に停止し、ライン６２０において実行を続ける。ライン６２０のアサーションは、コメントとして扱われることができ、またはプロシージャの正当性を手動または自動的に検証することに役立つことができる。ライン６２１は、プロシージャを抜け、ライセンスには、サービス加入者ネットワーク２０１上のセキュア時間ソース３０２からセキュア時間をアクセスする必要がないという指示、すなわちＦＡＬＳＥを帰すことを実行させる。ライン６２２は、プロシージャＩｓＳｔａｒｔｕｐＴｉｍｅＦｅｔｃｈＮｅｅｄｅｄ本体の終了を示す。プロシージャがＴＲＵＥを帰した場合、モバイルデバイス２００は、サービスプロバイダネットワーク２０１上のセキュア時間ソース３０２からセキュア時間を取り出すためにデータ呼を発する。
【０１０２】
別の実施形態では、単一のライセンスポリシーよりも多く、すなわち、ポリシーパラメータの２つ以上のセットが採用されることができる。デフォルトポリシー（ライセンスパラメータのデフォルトセット）は、相手先ブランドによる製造（ＯＥＭ）によって、モバイルデバイス１００、２００中で構成されることができる。モバイルデバイスを購入し、次いでその後再販するサービスプロバイダは、他のポリシーパラメータを規定することができる。包括的アップグレードまたは拡大ポリシーは、サービスプロバイダからユーザへの追加料金のために利用可能であることができる。あるいは、サービスプロバイダは、いくつかのデフォルトポリシーパラメータをさらに制限することができる。さらに、特定の使用保護コンテンツを対象としている個々のライセンスの取引条件は、モバイルデバイスおよび／またはサービスプロバイダライセンスパラメータを無効にする、すなわち、モバイルデバイスおよび／またはサービスプロバイダポリシーを延長するか、またはさらに制限するかのいずれかを行うことができる。
【０１０３】
代替実施形態では、ポリシーパラメータまたはコンテンツ使用統計は、場合によってはセキュアなチャネルを介して、ユーザのワイヤレスデバイスがコンテンツサーバと交信するときなどに、コンテンツサーバに報告して返されることがある。特に重要なのは、セキュア時間が利用可能ではなかったとき、アプリケーション／コンテンツが起動された、または起動しようと試みられた回数を示すデータであることがある。あるいは、一実施形態は、（図２および図３の）カバレージ内猶予期間制限Ｍおよびカバレージ外猶予期間制限Ｎが超えられたかどうか、または猶予期間が制限する回数が超えられ、その後、最後の報告以降にリセットしたかどうかを報告することができる。そのような統計値は、悪用しようとする潜在的な試行を知らせることができ、その特定のユーザがさらに使用したり、またはさらにコンテンツを購入したりすることができないように使用されることができる。一実施形態では、アップグレードの購入または悪用の疑いに応じて、プロバイダネットワークがパラメータを動的に変更できるようにすることができる。使用統計値は、また、コンテンツの人気についてのフィードバックを与えることもできる。一実施形態は、猶予期間またはローミング期間中に残っているアクセス試行のカウントなど、現在の使用保護コンテンツの使いやすさのステータスについての指示をもユーザに与えることができる。
【０１０４】
別の実施形態では、特定のライセンスを与えられたコンテンツに関連するライセンスパラメータおよび／または使用統計は、モバイルデバイス１００、２００上の執行エージェントがアプリケーションサーバからＳＭＳメッセージを受信したとき、サービスプロバイダのネットワーク２０１上のアプリケーションサーバに送信されることができる。次いで、サーバは、ライセンスを与えられたコンテンツまたは補足コンテンツを拒否するかまたはそれらにアクセスできるようにするために、パラメータ値および／または統計値を使用する。
【０１０５】
図７は、モバイルデバイス１００、２００がＳＭＳメッセージを受信し、ＳＭＳメッセージ中で送信された統計に基づいてライセンスポリシーを変更することを可能にする一実施形態方法によって実行されるステップを示す。図７に示されるように、モバイルデバイス１００、２００によってＳＭＳメッセージが受信されるとき、ステップ８０１において、そのＳＭＳメッセージが、サービスプロバイダからの正規のＳＭＳメッセージであり、偽メッセージではないことを検証されなければならない。ステップ８０１においてＳＭＳメッセージが有効ではない場合、そのＳＭＳメッセージは無視され、モバイルデバイス１００、２００は、ステップ８０５において、次のメッセージを待つことに戻る。ＳＭＳメッセージが正規のＳＭＳメッセージであると検証された場合、テキストフィールドを新規のライセンスポリシーパラメータ値に変換するために、ＳＭＳメッセージはステップ８０２において解析される。ステップ８０３において、これらのデータフィールドに含められるのは、どのライセンスポリシーが新規のライセンスパラメータ値を適用すべきかを識別するための識別子であることができる。変更用に適切なライセンスポリシーが、ステップ８０３において識別されると、ステップ８０４において、新規のライセンスパラメータ値がメモリ１１１のセキュアな部分の中に設定される。ステップ８０４において新規のライセンスパラメータ値が識別されたライセンスポリシー用に設定されたた後）、モバイルデバイス１００、２００は、ステップ８０５において次のＳＭＳメッセージを待つ状態に戻る。
【０１０６】
図７ａは、図７に示すステップを実行するように実装されることができるサンプル擬似コードを示す。列記されたサンプル擬似コードは、ＳＭＳメッセージがモバイルデバイス１００、２００によって受信され、ライセンスを更新するためのＳＭＳメッセージとして識別されたときに呼び出すことができる、プロシージャＤｏＬｉｃｅｎｓｅＵｐｄａｔｅＦｒｏｍＳＭＳを実装することができる。ライン７０１では、ＳＭＳメッセージは、プロシージャＤｏＬｉｃｅｎｓｅＵｐｄａｔｅＦｒｏｍＳＭＳに渡されるＳＭＳメッセージへの参照である。ライン７０２は、プロシージャの本体を開始する。ライン７０３は、ＳＭＳメッセージが合法的にサービスプロバイダから来ており偽メッセージでないかどうかを判断する（図７のステップ８０１）。ライン７０４は、メッセージコンテンツを解析し、必要に応じてテキストフィールドをライセンスパラメータ値に変換する（図７のステップ８０２）。ＳＭＳメッセージは、少なくとも１つのライセンスまたはライセンスポリシーのためのライセンスパラメータのうちの１つ、一部、または全部の値を含むことができる。ＳＭＳメッセージは、ＳＭＳメッセージによってターゲットにされた個々の保護コンテンツライセンスＬを識別することができる（図７のステップ８０３）。ＤｏＬｉｃｅｎｓｅＵｐｄａｔｅＦｒｏｍＳＭＳは、典型的なケースであることができる、ＳＭＳメッセージによって１つのライセンスが更新されるのを仮定している。しかしながら、ＳＭＳメッセージを用いて２つ以上のライセンスが更新されることができる。ライン７０５は、ＳＭＳメッセージコンテンツが、ライセンスＬのライセンスパラメータを識別し、配置することを決定する。ライン７０６は、ライセンスＬのライセンスパラメータ（LicenseParameters）を、ＳＭＳメッセージＳＭＳＭｅｓｓａｇｅのユーザデータ部分を解析することによって決定された新規の値に設定する（図７のステップ８０４）。ライン７０７は、プロシージャＤｏＬｉｃｅｎｓｅＵｐｄａｔｅＦｒｏｍＳＭＳの呼出し元に実行を戻す（図７のステップ８０５）。ライン７１０は、ＳＭＳＭｅｓｓａｇｅがフェイクであるとのコメントとして扱われることができる。ライン７１１は、プロシージャＤｏＬｉｃｅｎｓｅＵｐｄａｔｅＦｒｏｍＳＭＳの呼出し元に実行を戻す。ライン７１２は、プロシージャ本体の終了を示す。
【０１０７】
図４、図４ａ、図４ｂ、図５、図５ａ、図６、図６ａ、図７、図７ａの方法ステップと図３に示すポリシーとを実装するために使用されるハードウェアは、上記のポリシーに対応する方法ステップを実行するための命令のセットを実行するように構成された処理要素およびメモリ要素とすることができる。あるいは、いくつかのポリシーは、所与の機能に固有である回路によって実施されることができる。
【０１０８】
電力管理集積回路（ＷＭＩＣ）を有する一実施形態では、主電池が取り外されてもクロックへの電力が維持される。これは、ローカルのセキュアクロック１０２が、少なくともいくつかの特定の時間期間、たとえば数日間、の電力サイクル間でその状態を維持することができることを意味する。これは、クライアントは、保護コンテンツにアクセスできるようになる前に、リモートソースからの時間を取り出すかまたは更新するために生じる遅延をクライアントは経験しないので、よりユーザフレンドリな経験を与える。それはまた、ローミング中であるかまたは任意のサービスプロバイダネットワーク２０１エリアの外側におり、ネットワークから外部のセキュア時間を入手することができない間、クライアントは、時間ベースライセンスポリシーの下にライセンスを与えられた保護コンテンツに依然としてアクセスできるということを意味する。
【０１０９】
当業者は、本明細書で開示された実施形態に関連して説明された様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両者の組合せとして実装されることができることを諒解するだろう。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的なコンポーネント、ブロック、モジュール、回路、およびステップが、上記では概してそれらの機能に関して説明された。そのような機能がハードウェアで実装されるかソフトウェアで実装されるかは、システム全体に課せられた特定の適用および設計上の制約に依存する。当業者は、説明された機能を特定の適用例ごとに様々な方法で実装することができるが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈されるべきではない。
【０１１０】
本明細書で開示された実施形態に関して説明された様々な例示的な論理ブロック、モジュール、および回路は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラマブル論理デバイス、個別ゲートまたはトランジスタロジック、個別ハードウェアコンポーネント、あるいは本明細書で説明された機能を実行するように設計されたそれらの任意の組合せを用いて実装または実行されることができる。汎用プロセッサは、マイクロプロセッサとされることができるが、代替として、プロセッサは、従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械とすることができる。プロセッサは、コンピューティングデバイスの組合せ、たとえば、ＤＳＰとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成としても実装されることができる。
【０１１１】
本明細書で開示された実施形態に関連して説明された方法またはアルゴリズムのステップは、直接ハードウェアで実施されるか、プロセッサによって実行されるソフトウェアモジュールで実施されるか、またはその２つの組合せで実施されることができる。ソフトウェアモジュールは、ＲＡＭメモリ、フラッシュメモリ、ＲＯＭメモリ、ＥＰＲＯＭメモリ、ＥＥＰＲＯＭメモリ、レジスタ、ハードディスク、リムーバブルディスク、ＣＤ−ＲＯＭ、ＤＶＤディスク、または当技術分野で知られている任意の他の形態の記憶媒体中に常駐することができる。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体は、プロセッサに一体化されることができる。プロセッサおよび記憶媒体は、ＡＳＩＣ内に常駐することができる。ＡＳＩＣは、ユーザ端末内に常駐することができる。代替として、プロセッサおよび記憶媒体は、ユーザ端末内に個別コンポーネントとして常駐することもできる。
【０１１２】
本発明が特定の例実施形態を参照しながら開示されたが、添付の特許請求の範囲において定義された本発明の領域および範囲から逸脱しなければ、説明された実施形態に対して多数の修正、改変および変更が可能である。したがって、本発明は、説明された実施形態に限定されるものではなく、以下の特許請求の範囲およびその均等物の言い回しによって定義された最大限の範囲を有するものである。
【図１Ａ】
2011508351.tif 000003
【図１Ｂ】
2011508351.tif 000004
【図１Ｃ】
2011508351.tif 000005
【図２】
2011508351.tif 000006
【図３】
2011508351.tif 000007
【図４】
2011508351.tif 000008
【図４ａ】
2011508351.tif 000009
【図４ｂ】
2011508351.tif 000010
【図５】
2011508351.tif 000011
【図５ａ】
2011508351.tif 000012
【図６】
2011508351.tif 000013
【図６ａ】
2011508351.tif 000014
【図７】
2011508351.tif 000015
【図７ａ】
2011508351.tif 000016
【手続補正書】
【提出日】平成22年10月4日(2010.10.4)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
よりロバストな時間ベースライセンスポリシーでは、時間ベースライセンス有効日／時に対して比較するために使用されるクロックが、正確で確実な改ざん防止時間を何らかの形態で与える信用できるセキュア時間ソースであることを必要とすることがある。そのようなセキュア時間ソースは、モバイルデバイス自体内に配置されることができる。他の場合は、リモートでアクセス可能なセキュア時間ソースが利用されることができる。たとえば、インターネット上のウェブサイトｗｗｗ．ｔｉｍｅ．ｇｏｖは、クライアントが変更することができない、リモートアクセス可能な、正確で確実な時間ソースである。モバイルデバイスが、ローカルまたはネットワーク上で、信用できるセキュア時間ソースを参照させられる限り、よりロバストな時間ベースライセンスが効果的に動作することができる。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
メモリ１１１に記憶されるのは、命令プロセッサ１１０によって実行されるべき命令、および／または命令プロセッサ１１０によって実行される命令によってアクセスされるべきデジタルデータであることができる。命令およびデータは、オペレーティングシステム（ＯＳ）１０３と、ライセンス執行エージェント１０４と、ライセンスパラメータ１０５と、１つまたは複数のアプリケーションプログラム１０６と、保護コンテンツ１０７、１０８のアイテムと、を含むことができる。オペレーティングシステム１０３は、モバイルデバイス１００の基本動作を制御する命令のセットである。オペレーティングシステム１０３は、ライセンスパラメータ値１０５を含むメモリ１１１のいくつかのセキュアな部分、および／またはメモリ１１１に記憶された保護コンテンツ１０７、１０８の１つまたは複数のインスタンスへのクライアントアクセスを制御することができる。オペレーティングシステム１０３自体は、保護コンテンツ１０７、１０８のセキュリティを執行するためにクライアントからセキュアでなければならない（すなわち、改ざん防止されていなければならない）。保護コンテンツ１０７、１０８のアイテムごとにライセンスパラメータ値の別々のセットがあることができる。代替実施形態では、パラメータ値の１つのセットは、保護コンテンツ１０７、１０８の２つ以上のアイテムに適用することができる。オペレーティングシステム１０３は、ライセンスパラメータ１０５への特権的なアクセスなど、メモリ１１１のいくつかのセキュアな部分への特権的なアクセスをライセンス執行エージェント１０４に許可することができる。１つまたは複数のアプリケーションプログラム１０６の実行は、該アプリケーションプログラム１０６が実行することができるかどうかを含めて、オペレーティングシステム１０３の制御下で行われることができる。オペレーティングシステム１０３はまた、アプリケーション１０６がハードウェアリソースおよびメモリ１１１にアクセスすることができるかどうかを制御することができる。たとえば、オペレーティングシステム１０３は、メモリ１１１の連続するアドレスの様々なブロックを、実行可能、読み書き、読取り専用、またはアクセス不可能であるとして動的に制限する、プロセッサ１１０中のハードウェアを制御することができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００３１
【補正方法】変更
【補正の内容】
【００３１】
セキュアなローカルクロックを含まない別の例示的なモバイルデバイス２００が、図１Ｃに示される。図１Ｃに示されるモバイルデバイス２００は、図１Ｂに示されるモバイルデバイス１００の要素の機能と同様の機能をもつ要素を含む。ローカルセキュアクロックまたは均等物のないモバイルデバイス２００は、ローカルセキュア時間ソースを有しない。しかしながら、モバイルデバイス２００は、命令プロセッサ１１０中で実行される、メモリ１１１に記憶されたソフトウェア命令によって制御されるように、エアインターフェース１０１を介してサービスプロバイダネットワーク２０１にデータ呼を発することによってセキュア時間を得ることが可能であるだろう。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００５０
【補正方法】変更
【補正の内容】
【００５０】
一実施形態では、セキュア時間が利用可能ではなかった間の期間（保護コンテンツへのアクセス数）の後、セキュア時間が再び利用可能になるときはいつでも、様々な猶予期間カウンタがリセットされることができる。セキュア時間が利用可能になると、執行エージェント１０４は、対応するライセンスの期間が依然として有効か、まだ期限切れになっていないかどうかを判断することができる。ライセンスが期限切れになっていない場合、執行エージェント１０４は、それに応じて猶予期間カウンタをリセットすることができる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００５１
【補正方法】変更
【補正の内容】
【００５１】
セキュア時間が利用可能になる場合、および執行エージェント１０４が現在の時間が有効期限を過ぎている、すなわち、ライセンスが期限切れになったと判断した場合、執行エージェント１０４は、使用保護コンテンツ（たとえば１０７、１０８）および／またはライセンスパラメータ（たとえば、１０５）を明示的に非活動状態にするか、またはさらにメモリ１１０から削除することができる。あるいは、執行エージェント１０４は、関連するコンテンツ（１０７、１０８）が、カバレージ内またはカバレージ外にかかわらず、いかなる状態の下でもアクセスされることができないように、期限切れになったことを発見されたライセンスのポリシーパラメータ（１０５）を変更することができる。たとえば、すべてのさらなるアクセスを防止することは、ＭおよびＮを０に設定することによって達成されることができる。クライアントが保護コンテンツ（１０７、１０８）にアクセスしようとするときはいつでも、モバイルデバイス１００、２００は、クライアントにその状況について通知し、また、ライセンスを更新するようにクライアントに奨励することができる。サービスプロバイダは、ライセンスを更新し、更新されたライセンスパラメータ値をダウンロードするクライアントフレンドリな方法をさらに与えることができる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００５５
【補正方法】変更
【補正の内容】
【００５５】
ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐパラメータは、「要求に応じて」（すなわち、保護コンテンツへのアクセスが要求された時点で）適用される他のライセンスパラメータとは異なる。ライセンスパラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐが、メモリ１１１中のすべてのライセンスパラメータ１０５によって表されるライセンスポリシーのいずれかに対して真の場合、執行エージェント１０４は、モバイルデバイス１００、２００が起動または電源投入された直後に、セキュア時間を収集しなければならない。ライセンスパラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐの使用は、他のライセンスパラメータと相互に排他的でなく、ＤＲＭライセンスのロバストネス（robustness）を向上させるために、他のパラメータとともに使用されることができる。ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐは、いくつかの保護コンテンツライセンスポリシーに対して真であることができるが、すべてに対して真というわけではないので、モバイルデバイス１００、２００が起動した直後、執行エージェント１０４は、メモリ１１１中のすべてのライセンスパラメータ１０５を走査することが必要であることがある。ライセンスパラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐが少なくとも１つのライセンスポリシーに対して真の場合、執行エージェント１０４は、内部セキュア時間ソースについて確認しなければならず、それが存在しない場合、セキュア時間ソース２０２からセキュア時間を収集しようとしてデータ呼を発する。ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐの真値をテストするためにライセンスパラメータ１０５を走査するための手順は、図６および図６ａを参照しながら後述される。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００８１
【補正方法】変更
【補正の内容】
【００８１】
代替実施形態（図示せず）は、ＲｏａｍＵｓｅＬｉｍｉｔパラメータ値Ｒをなくすことによって、本方法を簡単にすることができる。代わりに、ＴＲＵＥまたはＦＡＬＳＥのいずれかに設定されることができる、ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータ値などのパラメータが利用されることができる。それがＴＲＵＥに設定され、モバイルデバイス２００がローミングモードであると判断された場合には、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ローミングモードのモバイルデバイス２００を、モバイルデバイス２００がカバレージ内（すなわち、トランシーバ機能が使用不能にされたカバレージ内）であるかのように扱う。したがって、ローミングモードである間の猶予期間アクセス試行は、ＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｍに対して課金される。ＵｓｅＩｎＣｏｖｅｒａｇｅＦｏｒＲｏａｍｉｎｇパラメータがＦＡＬＳＥに設定され、モバイルデバイス２００がローミングモードであると判断された場合には、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ローミングモードであるモバイルデバイス２００を、モバイルデバイス２００がカバレージ外であるかのように扱う。したがって、ローミングモードである間の猶予期間アクセス試行は、ＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｎに対して課金される。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００８２
【補正方法】変更
【補正の内容】
【００８２】
図４ａは、図４に示され上述されたステップを実行するように実装されることができるサンプル擬似コードを列記する。図４ａに示すように、ライン４０１において、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇが命名される。ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓは、ライセンスポリシーのライセンスパラメータ１０５を保持するデータ構造を参照する。ライン４０２は、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇの本体を開始する。ライン４０３は、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇに渡される引数がヌルであるかどうかを検査する（図４のステップ３０１参照）。ヌル引数は、プロシージャＴｅｓｔＣｏｎｔｅｎｔＬｉｃｅｎｓｉｎｇがライセンスがないコンテンツに対して呼び出されたとき、偶然に、または意図的に生じることがある。ライセンスがない場合、プロシージャは、コンテンツがアクセスされることができると仮定するので、ライン４０４は、ＡｌｌｏｗＡｃｃｅｓｓ（図４のステップ３１９）と標示されたステートメントにおいて実行が継続することを指示する。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００８４
【補正方法】変更
【補正の内容】
【００８４】
図４ａにおいては、ライン４３０は、セキュア時間が利用できないことをアサートする。ライン４３１は、モバイルデバイス２００の動作モードを判断する一連の場合を開始する。ライン４３１は、モバイルデバイス２００がカバレージ内であるか、カバレージ外であるか、またはローミングモードで動作しているかどうかを判断する（図４のステップ３１０および３１１）。すなわち、モバイルデバイス１００、２００の動作モードがカバレージ内である場合、ライン４３２は、実行をＣｏｖｅｒａｇｅＩｎと標示されたステートメントで続行することに向ける（図４のステップ３１２、３１５）。モバイルデバイス２００の動作モードがローミング中である場合、ライン４３４は、実行をＲｏａｍｉｎｇと標示されたステートメントで続行することに向ける。モバイルデバイス２００の動作モードがカバレージ外である場合、ライン４３６は、実行をＣｏｖｅｒａｇｅＯｕｔと標示されたステートメントで続行することに向ける。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００８７
【補正方法】変更
【補正の内容】
【００８７】
図４ａにおいては、ライン４６０は、ラベルＣｏｖｅｒａｇｅＯｕｔを用いて一連のステートメントを標示する。ライン４６０で開始するラインは、カバレージ外モードであるモバイルデバイスの場合に応じる。ライン４６１は、モバイルデバイス２００がカバレージ外モードで動作している間、保護コンテンツへのより多くの猶予期間アクセスが残っているかどうかを確かめるために、ＯｕｔＵｓｅｓＡｔｔｅｍｐｔｓの値を調査する（図４のステップ３１４）。もはやカバレージ外猶予期間アクセスが残っていない場合、ライン４６２は、実行をＢｌｏｃｋＡｃｃｅｓｓと標示されたステートメントで続行することに向ける（図４のステップ３１８）。さもなければ、実行は、ＯｕｔＵｓｅｓＡｔｔｅｍｐｔｅｄと呼ばれるカウンタを増分するライン４６３に続く（図４のステップ３１７）。プログラミングを簡単にするために、ＯｕｔＵｓｅｓＡｔｔｅｍｐｔｅｄは、ライセンスパラメータをも含む、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照される同じデータ構造で位置付けられる整数変数フィールドとすることができる。ライン４６４は、実行をＡｌｌｏｗＡｃｃｅｓｓと標示されたステートメントで続行することに向ける（図４のステップ３１９）。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００８８
【補正方法】変更
【補正の内容】
【００８８】
図４ａにおいては、ライン４７０は、ラベルＴｅｓｔＦｏｒＥｘｐｉｒａｔｉｏｎを用いて一連のステートメントを標示し、ライン４７１でアサートされるように、時間ＳＴｉｍｅがセキュアであると知られているときはいつでも、ライセンスを検証する（図４のステップ３０２）。ライン４７２は、現在のセキュア時間ＳＴｉｍｅをＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造のＥｘｐｉｒａｔｉｏｎＤａｔｅパラメータと比較する（図４のステップ３０７）。ＳＴｉｍｅがＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓのパラメータＥｘｐｉｒａｔｉｏｎＤａｔｅの有効日／時値より大きい、すなわち、有効日／時より後の場合、ライセンスは期限切れになる。ライン４７３は、ライセンスが期限切れになったことを明解に示すためにいくつかの動作を実行する（図４のステップ３０５）。動作は、ライセンスパラメータデータ構造および保護コンテンツを削除することがあるが、これは、アクセス権利の次の更新を複雑にする。ライン４７３の代替動作は、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造内で期限切れになったものとしてライセンスを示すことである（図４のステップ３０５）。たとえば、データ構造は、Ｔｒｕｅに設定されているＥｘｐｉｒｅｄと呼ばれる、ブーリアンフィールドを有することができる。いずれの場合も、ライン４７４は、ＩｎＵｓｅＡｔｔｅｍｐｔｓの値をＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｍよりも大きい値に設定する。ライン４７５は、ＲｏａｍＵｓｅＡｔｔｅｍｐｔｓの値をＲｏａｍＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｒよりも大きい値に設定する。ライン４７６は、ＯｕｔＵｓｅＡｔｔｅｍｐｔｓの値をＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ  Ｎよりも大きい値に設定する。ライン４７７〜４７９で、ＩｎＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔ、ＲｏａｍＵｓｅＬｉｍｉｔおよびＯｕｔＣｏｖｅｒａｇｅＵｓｅＬｉｍｉｔの値はそれぞれ、ＬｉｃｅｎｓｅＰａｒａｍｅｔｅｒｓによって参照されるデータ構造で０に設定される。０値は、カバレージからモバイルデバイス２００を意図的に遮蔽することによって、クライアントが不正をして、任意の残りの未使用のカバレージ外猶予期間アクセスを使用することを防止する。ライン４８０は、クライアントにライセンスが期限切れになったことを通知し、クライアントにライセンスを更新するように勧誘することができる（図４のステップ３０８）。ライン４８１は、保護コンテンツをアクセスされることから防止するだろうＢｌｏｃｋＡｃｃｅｓｓと標示されたステートメントに、実行を向ける（図４のステップ３１８）。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００９５
【補正方法】変更
【補正の内容】
【００９５】
図５ａは、図５に示す追加のステップを実行するように実装されることができるサンプル擬似コードを示す。さらなる擬似コードライン５００〜５１１が追加されている。図５ａによって、ライン４１１はローカルセキュア時間ソースが利用可能であるかどうかを検査する。ローカルセキュア時間ソースが利用可能である場合、Ｃｈｅｃｋ  Ｕｐｄａｔｅｓと標示されたステップのシーケンスを実行する（図５のステップ３２０）。さらに、ライン４２０において、ローカルセキュア時間が利用可能でない場合、ライン４２１〜４２４において、セキュア時間を取り出す一連のステップが行なわれる（図５のステップ３０３、３０６、３０９参照）。セキュア時間を取り出すための呼が成功した場合（図５のステップ３０９）、Ｃｈｅｃｋ  Ｕｐｄａｔｅｓと標示されたステップのシーケンスが実行される（図５のステップ３２０）。Ｃｈｅｃｋ  Ｕｐｄａｔｅｓシーケンス、ライン５００〜５１０においては、ライン５０１で、予め設定された時間Ｔが経過したかどうかを確かめるために検査が行われる（図５のステップ３２０）。予め設定された時間期間Ｔが経過した場合、ライン５０２で、更新がサービスプロバイダから利用可能であるかどうかを判断するために検査が行われる（図５のステップ３２１）。更新が利用可能である場合、ライン５０４で、セキュアなデータチャネルを開く命令が実行され、ライン５０５で、アクセス統計がサービスプロバイダに送信される。ライン５０６および５０７で、新しいライセンスパラメータがサービスプロバイダから受信されて、記憶される（図５のステップ３２２）。新しいライセンスパラメータが記憶されると、ライン５０８で、セキュアなデータチャネルが閉じせれる。ライン５０８でセキュアなデータチャネルが閉じられると、サンプル擬似コードは、図４ａに対して上記で概説したＴｅｓｔＦｏｒＥｘｐｉｒａｔｉｏｎプロシージャに移動する。ライン５０１で、予め設定された時間期間Ｔが経過していない場合、図４ａに対して上記で概説したようにＴｅｓｔＦｏｒＥｘｐｉｒａｔｉｏｎプロシージャが実行される。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００９９
【補正方法】変更
【補正の内容】
【００９９】
図６に示されるように、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ９００において、モバイルデバイス１００、２００がローカルセキュア時間ソースを含むかどうかを判断する。モバイルデバイス１００がローカルセキュア時間ソースを含む場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ９０３において、セキュア時間がモバイルデバイス１００上にローカルにすでに存在するので、データ呼が必要ではないことを示すＦＡＬＳＥの値を帰すだろう。しかしながら、ステップ９００において、モバイルデバイス２００がローカルセキュア時間ソースを含まない場合、オペレーティングシステム１０３およびプロセッサ１１０を介して執行エージェント１０４は、ステップ９０１において、メモリ１１１のセキュアな部分に記憶されたライセンスポリシーのライセンスパラメータが、ＴＲＵＥに設定されたＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐを有するかどうかを判断する。そうであれば、ステップ９０４において、保護コンテンツへのアクセスの許可の前にデータ呼が必要であるだろう。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】０１０１
【補正方法】変更
【補正の内容】
【０１０１】
図６ａは、図６に示されたステップを実行するように実装されることができるサンプル擬似コードを示す。図６ａに示されるように、擬似コードループは、モバイルデバイスが電源投入されたときに開始されるソフトウェアの一部として呼び出されることができるＩｓＳｔａｒｔｕｐＴｉｍｅＦｅｔｃｈＮｅｅｄｅｄと呼ばれることができる。ライン６０１、６０２は、プロシージャ本体を開始する。ライン６０３は、モバイルデバイス１００、２００が電源切断されている間に時間を維持する、モバイルデバイス１００、２００上にセキュアクロックがあるかどうかなど、セキュア時間１０２がローカルで利用可能かどうかを判断する。ローカルセキュア時間ソース１０２がある場合、プロシージャは、ライン６０４において抜けて、データ呼が必要ではないことを示す結果（ＦＡＬＳＥ）を帰す。ローカルセキュア時間ソース１０２がないか、あるいはセキュアクロックが初期化、検証、または同期を必要とする場合、プロシージャの実行はライン６１０に続く。ライン６１０のアサーションは、コメントとして扱われることができ、またはプロシージャの正当性を手動または自動的に検証することに役立つことができる。ライン６１１は、モバイルデバイス２００上で発見されたライセンスＬごとに循環するループの始端である。ライン６１３は、ループのラインのインデントによって示されるようにループの最後のラインである。ライン６１２は、パラメータＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐが任意のライセンスＬに対してＴＲＵＥに設定されているかどうかを検査する。ライセンスＬが、ＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐがＴＲＵＥであるとわかった場合、プロシージャは、ライン６１３で抜け、モバイルデバイス２００が起動したときにサービスプロバイダのネットワークからセキュア時間にアクセスしなければならないことのインジケータとしてＴＲＵＥを帰す。ライセンスＬがＴｉｍｅＣａｌｌＡｔＳｔａｒｔｕｐをＴｒｕｅに設定したことがわからなかった場合、ループは最終的に停止し、ライン６２０において実行を続ける。ライン６２０のアサーションは、コメントとして扱われることができ、またはプロシージャの正当性を手動または自動的に検証することに役立つことができる。ライン６２１は、プロシージャを抜け、ライセンスには、サービス加入者ネットワーク２０１上のセキュア時間ソース２０２からセキュア時間をアクセスする必要がないという指示、すなわちＦＡＬＳＥを帰すことを実行させる。ライン６２２は、プロシージャＩｓＳｔａｒｔｕｐＴｉｍｅＦｅｔｃｈＮｅｅｄｅｄ本体の終了を示す。プロシージャがＴＲＵＥを帰した場合、モバイルデバイス２００は、サービスプロバイダネットワーク２０１上のセキュア時間ソース２０２からセキュア時間を取り出すためにデータ呼を発する。
【手続補正１５】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１８
【補正方法】変更
【補正の内容】
【請求項１８】
前記複数のパラメータに対する前記更新は、ＳＭＳメッセージ中で受信される、請求項１６に記載の方法。
【手続補正１６】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１１６
【補正方法】変更
【補正の内容】
【請求項１１６】
前記プロセッサは、
前記複数のパラメータ値のいずれかに対する更新が前記大容量記憶メモリ中に存在するかどうかを判断する問合せ要求を前記モバイルデバイスから受信するステップと、
前記更新が存在する場合、前記複数のパラメータ値に対する前記更新を行う前記モバイルデバイスに送信するステップと、
をプロセッサ実行可能ソフトウェア命令によって実行するようにさらに構成される、請求項１１５に記載のサーバ。
【手続補正１７】
【補正対象書類名】図面
【補正対象項目名】図４
【補正方法】変更
【補正の内容】
【図４】
2011508351.tif 000017
【手続補正１８】
【補正対象書類名】図面
【補正対象項目名】図５
【補正方法】変更
【補正の内容】
【図５】
2011508351.tif 000018
【手続補正１９】
【補正対象書類名】図面
【補正対象項目名】図６
【補正方法】変更
【補正の内容】
【図６】
2011508351.tif 000019
【国際調査報告】
2011508351.tif 000020
2011508351.tif 000021
2011508351.tif 000022