【誤訳訂正書】
【提出日】平成26年2月3日(2014.2.3)
【誤訳訂正１】
【訂正対象書類名】特許請求の範囲
【訂正対象項目名】全文
【訂正方法】変更
【訂正の内容】
【特許請求の範囲】
【請求項１】
別個のプログラムコードまたはデータの複数のインスタンスのためのセキュアな実行環境を提供するための方法であって、
セキュアな資産管理ユニット（ＳＡＭＵ）が、別個のコードまたはデータの複数のインスタンスを、ホストプロセッサから前記ＳＡＭＵへ暗号化フォーマットでオフロードして、前記別個のコードまたはデータの複数のインスタンスの機密性を認証および維持するステップであって、前記複数のインスタンスは複数のアプリケーションに関連し、前記ＳＡＭＵは、前記複数のアプリケーションを同時に管理し、且つ、前記暗号化フォーマットの復号化フォーマットを提供し、前記ホストプロセッサは、暗号化フォーマットの前記データまたはコードを、外部デバイスと接続したインタフェースを介して、コンテンツソースから最初に取り出すステップと、
前記ＳＡＭＵが、前記データの保護が必要な場合には、前記データを再暗号化フォーマットで前記ＳＡＭＵから前記ホストプロセッサへ返送し、前記データの保護が必要でない場合には、前記データを復号化フォーマットで前記ＳＡＭＵから前記ホストプロセッサへ返送するステップであって、前記データの各々に関連する所与のフィールドが保護要求を示すステップと、
を含む、方法。
【請求項２】
前記オフロードするステップは、前記別個のコードまたはデータの複数のインスタンスの各インスタンスについて、署名ツール内で生成されたランダム鍵によって暗号化２値ブートイメージを生成するステップを含む、請求項１に記載の方法。
【請求項３】
前記暗号化２値ブートイメージは、前記ＳＡＭＵのために暗号化され、前記ＳＡＭＵ用のセキュアなカーネルおよびセキュアなアプリケーションとして提供される、請求項２に記載の方法。
【請求項４】
ユーザは、前記暗号化２値ブートイメージを前記ホストプロセッサにインストールし、前記暗号化２値ブートイメージをオンデマンドで前記ＳＡＭＵに提供する、請求項３に記載の方法。
【請求項５】
前記暗号化２値ブートイメージをインテグリティについて検証した後に、前記ＳＡＭＵと共に用いられる復号化鍵を、ブートリードオンリーメモリ（ＲＯＭ）を用いて構成するステップ、
をさらに含む、請求項４に記載の方法。
【請求項６】
前記ＳＡＭＵと共に用いられる復号化鍵を、前記ブートＲＯＭによって生成するステップと、
前記ブートＲＯＭが、前記暗号化２値ブートイメージのインテグリティの検証に成功したという肯定的な検証に応じて、前記暗号化２値ブートイメージに制御を送るステップと、
をさらに含む、請求項５に記載の方法。
【請求項７】
肯定的な有効化および前記セキュアなカーネルの実行に応じて、コンテンツへのアクセスを提供するためのアプリケーションは、前記ＳＡＭＵハードウェアの利用可能性を検出し、前記セキュアなカーネルは、前記アプリケーションについてのコンテクストを生成して、前記アプリケーションのインテグリティを検証する、請求項６に記載の方法。
【請求項８】
前記アプリケーション用の前記別個のコードまたはデータの複数のインスタンスの各々のコード復号化鍵は、カーネルイメージと共に生成された前記コンテクストと共に用いられるための肯定的な検証に応じて、前記セキュアなカーネルによって復元される、請求項７に記載の方法。
【請求項９】
前記別個のコードまたはデータの複数のインスタンスの各々の前記セキュアなカーネルにおいて、前記カーネルイメージの肯定的な検証に応じて、前記アプリケーション用のデータ暗号鍵をランダムに生成するステップ、
をさらに含む、請求項８に記載の方法。
【請求項１０】
前記暗号化２値ブートイメージのインテグリティの検証に失敗したという否定的な検証に応じて、前記ブートＲＯＭによってＳＡＭＵサービスがさらされず、前記アプリケーションは、ＳＡＭＵハードウェアベースの保護された実行環境の代わりに、ソフトウェアベースの保護スキームに移行する、請求項５に記載の方法。
【請求項１１】
別個のプログラムコードまたはデータの複数のインスタンスのためのセキュアな実行ユニットを提供するためのシステムであって、
コードまたはデータを含む複数のアプリケーションを実行し、かつ暗号化フォーマットのコードまたはデータを、外部デバイスと接続したインタフェースを介して、コンテンツソースから取り出すように構成されたホストプロセッサと、
プログラムコードを実行するように構成されたセキュアな資産管理ユニット（ＳＡＭＵ）であって、前記ホストプロセッサに接続されており、別個のコードまたはデータの複数のインスタンスを、前記ホストプロセッサから暗号化フォーマットでオフロードして、前記別個のコードまたはデータの複数のインスタンスの機密性を認証および維持するように構成されている、セキュアな資産管理ユニット（ＳＡＭＵ）とを含み、
前記複数のインスタンスは複数のアプリケーションに関連し、前記ＳＡＭＵは、前記複数のアプリケーションを同時に管理し、且つ、前記暗号化フォーマットの復号化フォーマットを提供し、前記ＳＡＭＵは、前記データの保護が必要な場合には、前記データを再暗号化フォーマットで前記ホストプロセッサへ返送し、前記データの保護が必要でない場合には、前記データを復号化フォーマットで前記ホストプロセッサへ返送し、前記データの各々に関連する所与のフィールドが保護要求を示す、
システム。
【請求項１２】
前記ＳＡＭＵは、前記別個のコードまたはデータの複数のインスタンスをオフロードすることの一部として、署名ツール内で生成されたランダム鍵によって暗号化２値ブートイメージを生成するように構成されている、請求項１１に記載のシステム。
【請求項１３】
前記暗号化２値ブートイメージは、前記ＳＡＭＵのために暗号化され、ＳＡＭＵのためのセキュアなカーネルおよびセキュアなアプリケーションとして提供される、請求項１２に記載のシステム。
【請求項１４】
ユーザは、前記暗号化２値ブートイメージを前記ホストプロセッサにインストールし、前記暗号化２値ブートイメージを前記ＳＡＭＵへオンデマンドで提供する、請求項１２に記載のシステム。
【請求項１５】
前記ＳＡＭＵは、前記暗号化２値ブートイメージをインテグリティについて検証した後、前記ＳＡＭＵと共に用いられる復号化鍵をブートリードオンリーメモリ（ＲＯＭ）を用いて構成するようにさらに構成されている、請求項１４に記載のシステム。
【請求項１６】
前記ブートＲＯＭは、前記ＳＡＭＵと共に用いられる復号化鍵の生成と、前記暗号化２値ブートイメージのインテグリティの検証に成功したという肯定的な検証に応じて前記暗号化２値ブートイメージへの制御送りとを行うようにさらに構成されている、請求項１５に記載のシステム。
【請求項１７】
前記セキュアなカーネルの肯定的な検証および実行に応じて、コンテンツへのアクセスを提供するためのアプリケーションは、前記ＳＡＭＵハードウェアの利用可能性を検出し、前記セキュアなカーネルは、前記アプリケーションのためのコンテクストを生成して、前記アプリケーションのインテグリティを検証する、請求項１６に記載のシステム。
【請求項１８】
前記アプリケーションのための前記別個のコードまたはデータの複数のインスタンスの各々に対するコード復号化鍵は、カーネルイメージと共に生成された前記コンテクストと共に用いられるための肯定的な検証に応じて、前記セキュアなカーネルによって回復される、請求項１７に記載のシステム。
【請求項１９】
前記カーネルイメージの肯定的な検証に応じて、前記別個のコードまたはデータの複数のインスタンスの各々の前記セキュアなカーネルにおいて、前記アプリケーション用のデータ暗号鍵をランダムに生成するように構成されている、請求項１８に記載のシステム。
【請求項２０】
前記暗号化２値ブートイメージのインテグリティの検証に失敗したという否定的な検証に応じて、ＳＡＭＵサービスはさらされず、前記アプリケーションは認証のためにソフトウェアベースの保護スキームに移行する、請求項１５に記載のシステム。
【請求項２１】
１つ以上のプロセッサによって実行される１組の命令を記憶する、コンピュータで読み出し可能な非一時的な記憶媒体であって、前記１組の命令は、セキュアな資産管理ユニット（ＳＡＭＵ）の製造を容易にするためのものであり、前記ＳＡＭＵは、
プログラムコードを実行することと、
別個のコードまたはデータの複数のインスタンスを、暗号化フォーマットでプロセッサからオフロードして、前記別個のコードまたはデータの複数のインスタンスの機密性を認証および維持することであって、前記複数のインスタンスは複数のアプリケーションに関連し、前記ＳＡＭＵは、前記複数のアプリケーションを同時に管理し、且つ、前記暗号化フォーマットの復号化フォーマットを提供し、前記ＳＡＭＵは、前記データの保護が必要な場合には、前記データを再暗号化フォーマットで前記ホストプロセッサへ返送し、前記データの保護が必要でない場合には、前記データを復号化フォーマットで前記ホストプロセッサへ返送し、前記データの各々に関連する所与のフィールドが保護要求を示すことと、
を行うように構成されている、
コンピュータで読み出し可能な非一時的な記憶媒体。
【請求項２２】
前記命令はハードウェア記述言語（ＨＤＬ）命令であり、デバイスの製造に用いられる、請求項２１に記載のコンピュータで読み出し可能な記憶媒体。
【誤訳訂正２】
【訂正対象書類名】明細書
【訂正対象項目名】００２１
【訂正方法】変更
【訂正の内容】
【００２１】
ブートＲＯＭ１１０は、シリコン形態においてブートコードを実行して、デバッグ管理の実行と、所与のカーネルのインテグリティの確認と、メモリＡＥＳの設定とを実行した後、（インテグリティ確認を通過した）カーネルへ制御を送るように構成される。ここで、埋設プロセッサは、リセット状態から起動して、ブートコードを実行するように構成される。上記ブートコードは、ｅフューズ技術に基づいてデバッギング機能を構成または再構成するようにさらに構成される（例えば、全デバッグ機能の生成側へのアクセスを無効にするか、またはｅフューズパターンへのアクセスを無効にする。上記ｅフューズパターンは、製造時においてチップ上へのエッチングまたはハードコーディングコンピュータ論理を用いて注入されるため、チップ製造後は変更不可能となる）。上記ブートコードはまた、ＳＡＭＵ１０４カーネルの初期化を待機するようにさらに構成される。ここで、ＳＡＭＵドライバは、セキュアなカーネル１８５をロード対象として提示する。上記ブートコードはまた、インテグリティ照合器（ＩＶ）ハードウェア１６０を用いて、所与のイメージのインテグリティを検証するようにさらに構成される。ＩＶハードウェア１６０は、所与のイメージからのハッシュコードを生成し、上記ハッシュコードと、上記イメージに取り付けられたハッシュコードとを比較するように構成され得る。上記生成されたハッシュコードと、上記取り付けられたハッシュコードとが整合した場合、ＩＶハードウェア１６０はＰＡＳＳレポートを提供し、そうではない場合、失敗を報告する。
【誤訳訂正３】
【訂正対象書類名】明細書
【訂正対象項目名】００２２
【訂正方法】変更
【訂正の内容】
【００２２】
ブートＲＯＭ１１０は、インテグリティ確認成功の後にセキュアなカーネル１８５のための環境を準備し、セキュアなカーネル１８５へ制御を送るようにさらに構成される。セキュアなカーネル１８５は、同一のＩＶハードウェア１６０を用いて定期的に再検証することができる。
【誤訳訂正４】
【訂正対象書類名】明細書
【訂正対象項目名】００２４
【訂正方法】変更
【訂正の内容】
【００２４】
コード保護を最大化するために、異なるアプリケーションからの異なるＳＡＭＵコードを異なるコンテクストで実行する。各コードイメージは、署名ツールによって異なる態様で暗号化およびハッシュされる。署名時において、暗号鍵はランダムに生成される。さらに、インテグリティ確認を暗号化イメージに適用した後、イメージを実行対象として受容する。
【誤訳訂正５】
【訂正対象書類名】明細書
【訂正対象項目名】００２８
【訂正方法】変更
【訂正の内容】
【００２８】
さらなるセキュリティを提供するための別の実施形態において、署名ツールによって各コードイメージを暗号化およびハッシュする。署名時において、暗号鍵をランダム生成する（プロセスのこの部分は、ベンダーまたはサードパーティソフトウェアプロバイダにおいて行われる）。セキュアなカーネル１８５のための復号化鍵をブートＲＯＭ１１０中のブートコードによって計算および回復し、ＳＡＭＵアプリケーションのための復号化鍵をカーネルによって計算および回復する。さらに、インテグリティ確認を、ＩＶ１６０によって（暗号化バージョンで）適用し、その後実行対象のイメージが受容される。
【誤訳訂正６】
【訂正対象書類名】明細書
【訂正対象項目名】００３５
【訂正方法】変更
【訂正の内容】
【００３５】
ＳＡＭＵ１０４のアーキテクチャは、暗号化要求に基づいて何百万個の命令を１秒あたりに（ＭＩＰＳ）行うことが可能であり、暗号化加速（例えば、ＡＥＳ、ＤＥＳ、ＳＨＡｌ、および他のアルゴリズム）をサポートし得る。ＳＡＭＵ１０４アーキテクチャは、以下のうち全てまたは一部をサポートし得る：真の乱数生成器および疑似乱数生成器、セキュアなタイマー、メモリ管理を用いた命令／データキャッシュ、複数の実行モード（または保護レベル）、（カーネルによって構成された）アドレス範囲実行、ブート−ストラップコード検証、およびさらなる開発ツール。
【誤訳訂正７】
【訂正対象書類名】明細書
【訂正対象項目名】００４５
【訂正方法】変更
【訂正の内容】
【００４５】
図２は、ＳＡＭＵアーキテクチャを用いた場合の単一のアプリケーションのフロー図である。ＳＡＭＵのためのバイナリを生成する（ステップ２１０）。署名ツール内においてランダム鍵が生成される（ステップ２１５）。上記バイナリは、上記ＳＡＭＵのために再暗号化され（ステップ２２０）、セキュアなカーネルを例えばＧＰＵの表示ドライバの一部として発送することを含む。ユーザは、セキュアなカーネル（表示ドライバ）およびセキュアなアプリケーションを共に搬送するユーザのコンピュータ／システム上にドライバおよび上記アプリケーションをインストールし得る（ステップ２２５）。ブート時間において、セキュアなカーネル１８５がＳＡＭＵハードウェアへと提示される（ステップ２３０）。上記セキュアなカーネルは、ブートＲＯＭ１１０によってインテグリティについて照合および検証される（ステップ２３５）。ブートＲＯＭ１１０は、セキュアなカーネル１８５のインテグリティを検証（ステップ２４０）した後、（暗号化コードのオンデマンド復号化を行うための）メモリＡＥＳ内の復号化鍵を構成し、制御をセキュアなカーネル１８５へと送る。上記セキュアなカーネルが検証に失敗した場合（ステップ２４５）、ＳＡＭＵサービスはさらされず、上記アプリケーションはソフトウェアベースの保護スキームに後退する。検証が成功した場合、上記セキュアなカーネルのための復号化鍵がブートＲＯＭ１１０によって構成される（ステップ２５０）。
【誤訳訂正８】
【訂正対象書類名】明細書
【訂正対象項目名】００４６
【訂正方法】変更
【訂正の内容】
【００４６】
アプリケーションがユーザによって起動される（ステップ２５５）。アプリケーションが起動すると、アプリケーションは、ＳＡＭＵサービスの存在を検出し（ステップ２６０）、ＳＡＭＵから提供された保護された実行環境を利用する準備をする。アプリケーションは、セキュアなＳＡＭＵアプリケーションを、コンテクスト生成のためのセキュアなカーネルへ提供する（ステップ２６５）。ＳＡＭＵアプリケーションは、セキュアなカーネル１８５によってインテグリティについて検証される（ステップ２７０）。セキュアなカーネル１８５は、ＳＡＭＵアプリケーションのインテグリティについて確認するように、ＩＶハードウェア１６０を構成する（ステップ２７５）。インテグリティ検証の成功後、ＳＡＭＵアプリケーションのための復号化鍵が、セキュアなカーネル１８５によって構成される（ステップ２８０）。ＩＶハードウェア１６０がＳＡＭＵアプリケーションを検証できない場合（ステップ２７５）、ＳＡＭＵアプリケーションは実行を許可されず、対応する失敗メッセージがアプリケーションへ返送される（ステップ２８５）。この場合、アプリケーションは、ソフトウェアベースの保護技術に後退することを選択することができる。
【誤訳訂正９】
【訂正対象書類名】明細書
【訂正対象項目名】００４９
【訂正方法】変更
【訂正の内容】
【００４９】
上記ブートストラップコードは、セキュアな保存部中に暗号化された態様で保存され、最終チップと共に発送される。上記ブートストラップコードは、ブート時において主に以下の３つのサービスを提供する：チップ製造のためのデバッギングの無効、ＳＡＭＵドライバから提供されたカーネルイメージのインテグリティの確認、および所与のカーネルのために復号化鍵のコンピューティングを行った後、上記カーネルへ制御を送ること。
【誤訳訂正１０】
【訂正対象書類名】明細書
【訂正対象項目名】００５０
【訂正方法】変更
【訂正の内容】
【００５０】
復号化鍵は、ブートプロセスの一部として計算され、カーネルイメージのインテグリティの照合が成功した後のみに用いられる。上記復号化鍵は、以下の複数の入力の関数である：（例えば、チップ製造後に変更ができないように、チップへのエッチングまたはコンピュータ論理のハードコーディングを含む）製造時において注入されたｅフューズパターン、（署名されたカーネルイメージの一部として保存された）カーネル２値署名において生成されたランダムパターン、およびブート時において上記ＳＡＭＵドライバから提供されたソフトウェアパラメータ。カーネル復号化鍵のコンピューティングにおいては、シリコン（例えば、秘密乗算器、ＤＳＰブロック、プロセッサ、高速ＩＯ論理、および埋設メモリ）に埋設された秘密機能へのアクセスも行われる。