【誤訳訂正書】
【提出日】平成22年2月25日(2010.2.25)
【誤訳訂正１】
【訂正対象書類名】明細書
【訂正対象項目名】特許請求の範囲
【訂正方法】変更
【訂正の内容】
【特許請求の範囲】
【請求項１】
構築環境（１１０）、サーバ（２００）、および実行環境（１５０）を有するシステム（１００）において、前記実行環境（１５０）が、Ｊａｖａ（登録商標）の実行時セキュリティ制約事項を満たすコンピュータ読取可能な命令ストリームを実行する際に、時間と電力要求量を低減する時間低減方法であって、
前記構築環境（１１０）は、コンパイラ（１２０）と非信認記憶装置（２１０）を有し、
前記サーバ（２００）は、セキュリティ制約事項検証部（１３０）と、Ｊａｖａ（登録商標）のアーカイブファイル（１４０）とを有し、
前記実行環境（１５０）は、送受信部（２２０）、完全性検証部（１６０）、およびＣＰＵ（１７０）を有し、
前記実行時セキュリティ制約事項を満たす前記命令ストリームは、クラス・ファイルの基本的構造の完全性を有し；無効のコンスタントプール項目を有さず；正しくないオブジェクト・インヘリタンスの問題を有さず；データ・フロー分析による制約を維持し；前記実行環境（１５０）内のメモリ領域に正しくないアクセスはせず；前記実行環境（１５０）内のファイルにアクセスせず；資源要求が前記実行環境（１５０）の利用可能メモリの限界を超えず、
前記コンパイラ（１２０）は、Ｊａｖａ（登録商標）のソースコードをコンパイルすることによって前記命令ストリームを生成し（４００）、
前記非信認記憶装置（２１０）は、前記命令ストリームを格納し、 
前記セキュリティ制約事項検証部（１３０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していないことを検証し（４１０，４２０）、
前記アーカイブファイル（１４０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していない場合に、ディジタル署名またはメッセージ・ダイジェストが添付された状態で前記命令ストリームを格納し（４３０）、
前記時間低減方法は、
前記送受信部（２２０）によって前記アーカイブファイル（１４０）から、前記命令ストリームを読出すことと（５００）；
前記完全性検証部（１６０）によって前記ディジタル署名または前記メッセージ・ダイジェストをチェックすることによって、前記命令ストリームが変更されていないことを検証することと（５１０，５２０）；
前記命令ストリームが変更されていないことが検証された場合、前記アーカイブファイル（１４０）から前記命令ストリームを読出す毎に、前記ＣＰＵ（１７０）によって前記実行セキュリティ制約事項の検証を迂回して前記命令ストリームを実行することと（５３０）
を備えることを特徴とする、時間低減方法。
【請求項２】
構築環境（１１０）、サーバ（２００）、および実行環境（１５０）を有するシステム（１００）において、前記実行環境（１５０）が、Ｊａｖａ（登録商標）の実行時セキュリティ制約事項を満たすコンピュータ読取可能な命令ストリームを実行する際に、時間と電力要求量を低減する時間低減方法であって、
前記構築環境（１１０）は、コンパイラ（１２０）と非信認記憶装置（２１０）を有し、
前記サーバ（２００）は、セキュリティ制約事項検証部（１３０）とＲＯＭ（１４０）を有し、
前記実行環境（１５０）は、送受信部（２２０）、完全性検証部（１６０）、およびＣＰＵ（１７０）を有し、
前記実行時セキュリティ制約事項を満たす前記命令ストリームは、クラス・ファイルの基本的構造の完全性を有し；無効のコンスタントプール項目を有さず；正しくないオブジェクト・インヘリタンスの問題を有さず；データ・フロー分析による制約を維持し；前記実行環境（１５０）内のメモリ領域に正しくないアクセスはせず；前記実行環境（１５０）内のファイルにアクセスせず；資源要求が前記実行環境（１５０）の限界を超えず、
前記コンパイラ（１２０）は、Ｊａｖａ（登録商標）のソースコードをコンパイルすることによって前記命令ストリームを生成し（４００）、
前記非信認記憶装置（２１０）は、前記命令ストリームを格納し、 
前記セキュリティ制約事項検証部（１３０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していないことを検証し（４１０，４２０）、
前記ＲＯＭ（１４０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していない場合に前記命令ストリームを格納し（４３０）、
前記時間低減方法は、
前記送受信部（２２０）によって前記ＲＯＭ（１４０）から、前記命令ストリームを読出すことと（５００）；
前記命令ストリームが変更されていないことを、前記完全性検証部（１６０）によって検証することと（５１０，５２０）；
前記命令ストリームが変更されていないことが検証された場合、前記ＲＯＭ（１４０）から前記命令ストリームを読出す毎に、前記ＣＰＵ（１７０）によって前記実行セキュリティ制約事項の検証を迂回して前記命令ストリームを実行することと（５３０）
を備えることを特徴とする、時間低減方法。
【請求項３】
構築環境（１１０）、サーバ（２００）、および実行環境（１５０）を有するシステム（１００）において、前記実行環境（１５０）が、Ｊａｖａ（登録商標）の実行時セキュリティ制約事項を満たすコンピュータ読取可能な命令ストリームを実行する際に、時間と電力要求量を低減する時間低減方法であって、
前記構築環境（１１０）は、コンパイラ（１２０）と非信認記憶装置（２１０）を有し、
前記サーバ（２００）は、セキュリティ制約事項検証部（１３０）と信認記憶装置（１４０）を有し、
前記実行環境（１５０）は、送受信部（２２０）とＣＰＵ（１７０）を有し、
前記実行時セキュリティ制約事項を満たす前記命令ストリームは、クラス・ファイルの基本的構造の完全性を有し；無効のコンスタントプール項目を有さず；正しくないオブジェクト・インヘリタンスの問題を有さず；データ・フロー分析による制約を維持し；前記実行環境（１５０）内のメモリ領域に正しくないアクセスはせず；前記実行環境（１５０）内のファイルにアクセスせず；資源要求が前記実行環境（１５０）の限界を超えず、
前記コンパイラ（１２０）は、Ｊａｖａ（登録商標）のソースコードをコンパイルすることによって前記命令ストリームを生成し（４００）、
前記非信認記憶装置（２１０）は、前記命令ストリームを格納し、 
前記時間低減方法は、
前記送受信部（２２０）が前記サーバ（２００）に、前記命令ストリームの読出を要求することと；
前記要求を受信したなら、前記セキュリティ制約事項検証部（１３０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していないことを検証することと（４１０，４２０）；
前記命令ストリームが前記実行時セキュリティ制約事項に違反していない場合に、前記セキュリティ制約事項検証部（１３０）は前記命令ストリームを前記送受信部に送信し、且つ前記信認記憶装置（１４０）は前記命令ストリームを格納することと（４３０）；
これ以降、前記送受信部（２２０）から前記要求を受信する毎に、前記信認記憶装置（１４０）が格納している前記命令ストリームを前記送受信部（２２０）に送信することと；
前記ＣＰＵ（１７０）は、前記実行セキュリティ制約事項の検証を迂回して前記命令ストリームを実行することと
を備えることを特徴とする、時間低減方法。
【請求項４】
構築環境（１１０）、サーバ（２００）、および実行環境（１５０）を有するシステム（１００）において、前記実行環境（１５０）が、Ｊａｖａ（登録商標）の実行時セキュリティ制約事項を満たすコンピュータ読取可能な命令ストリームを実行する際に、時間と電力要求量を低減する時間低減方法であって、
前記構築環境（１１０）は、コンパイラ（１２０）と非信認記憶装置（２１０）を有し、
前記サーバ（２００）は、セキュリティ制約事項検証部（１３０）を有し、
前記実行環境（１５０）は、ＣＰＵ（１７０）を有し、
前記実行時セキュリティ制約事項を満たす前記命令ストリームは、クラス・ファイルの基本的構造の完全性を有し；無効のコンスタントプール項目を有さず；正しくないオブジェクト・インヘリタンスの問題を有さず；データ・フロー分析による制約を維持し；前記実行環境（１５０）内のメモリ領域に正しくないアクセスはせず；前記実行環境（１５０）内のファイルにアクセスせず；資源要求が前記実行環境（１５０）の利用可能メモリの限界を超えず、
前記コンパイラ（１２０）は、Ｊａｖａ（登録商標）のソースコードをコンパイルすることによって前記命令ストリームを生成し（４００）、
前記非信認記憶装置（２１０）は、前記命令ストリームを格納し、 
前記セキュリティ制約事項検証部（１３０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していないことを検証し（４１０，４２０）、
前記時間低減方法は、
前記命令ストリームが前記実行時セキュリティ制約事項に違反していない場合に、前記サーバによって前記命令ストリームを、安全通信チャネル（３００）を通じて前記実行環境（１５０）に送信することと；
前記命令ストリームが変更されていないことを、前記安全チャネル（３００）によって検証することと；
前記命令ストリームが変更されていないことが検証された場合、前記ＣＰＵ（１７０）によって前記実行セキュリティ制約事項の検証を迂回して前記命令ストリームを実行することと（５３０）
を備えることを特徴とする、時間低減方法。
【請求項５】
前記ＣＰＵ（１７０）の換わりに、バイトコード解釈環境が用いられる、請求項１〜４何れか一項記載の時間低減方法。
【請求項６】
構築環境（１１０）、サーバ（２００）、および実行環境（１５０）を有するシステム（１００）において、前記実行環境（１５０）は、Ｊａｖａ（登録商標）の実行時セキュリティ制約事項を満たすコンピュータ読取可能な命令ストリームを実行する際に時間と電力要求量を低減するように構成され、
前記構築環境（１１０）は、コンパイラ（１２０）と非信認記憶装置（２１０）を有し、
前記サーバ（２００）は、セキュリティ制約事項検証部（１３０）と、Ｊａｖａ（登録商標）のアーカイブファイル（１４０）とを有し、
前記実行時セキュリティ制約事項を満たす前記命令ストリームは、クラス・ファイルの基本的構造の完全性を有し；無効のコンスタントプール項目を有さず；正しくないオブジェクト・インヘリタンスの問題を有さず；データ・フロー分析による制約を維持し；前記実行環境（１５０）内のメモリ領域に正しくないアクセスはせず；前記実行環境（１５０）内のファイルにアクセスせず；資源要求が前記実行環境（１５０）の利用可能メモリの限界を超えず、
前記コンパイラ（１２０）は、Ｊａｖａ（登録商標）のソースコードをコンパイルすることによって前記命令ストリームを生成し、
前記非信認記憶装置（２１０）は、前記命令ストリームを格納し、 
前記セキュリティ制約事項検証部（１３０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していないことを検証し、
前記アーカイブファイル（１４０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していない場合に、ディジタル署名またはメッセージ・ダイジェストが添付された状態で前記命令ストリームを格納し、
前記実行環境（１５０）は、
前記アーカイブファイル（１４０）から、前記命令ストリームを読出す送受信部（２２０）と；
前記ディジタル署名または前記メッセージ・ダイジェストをチェックすることによって、前記命令ストリームが変更されていないことを検証する完全性検証部（１６０）と；
前記命令ストリームが変更されていないことが検証された場合、前記アーカイブファイル（１４０）から前記命令ストリームを読出す毎に、前記実行セキュリティ制約事項の検証を迂回して前記命令ストリームを実行するＣＰＵ（１７０）と
を備えることを特徴とする、実行環境（１５０）。
【請求項７】
構築環境（１１０）、サーバ（２００）、および実行環境（１５０）を有するシステム（１００）において、前記実行環境（１５０）は、Ｊａｖａ（登録商標）の実行時セキュリティ制約事項を満たすコンピュータ読取可能な命令ストリームを実行する際に時間と電力要求量を低減するように構成され、
前記構築環境（１１０）は、コンパイラ（１２０）と非信認記憶装置（２１０）を有し、
前記サーバ（２００）は、セキュリティ制約事項検証部（１３０）とＲＯＭ（１４０）を有し、
前記実行時セキュリティ制約事項を満たす前記命令ストリームは、クラス・ファイルの基本的構造の完全性を有し；無効のコンスタントプール項目を有さず；正しくないオブジェクト・インヘリタンスの問題を有さず；データ・フロー分析による制約を維持し；前記実行環境（１５０）内のメモリ領域に正しくないアクセスはせず；前記実行環境（１５０）内のファイルにアクセスせず；資源要求が前記実行環境（１５０）の限界を超えず、
前記コンパイラ（１２０）は、Ｊａｖａ（登録商標）のソースコードをコンパイルすることによって前記命令ストリームを生成し、
前記非信認記憶装置（２１０）は、前記命令ストリームを格納し、 
前記セキュリティ制約事項検証部（１３０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していないことを検証し、
前記ＲＯＭ（１４０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していない場合に前記命令ストリームを格納し、
前記実行環境（１５０）は、
前記ＲＯＭ（１４０）から前記命令ストリームを読出す送受信部（２２０）と；
前記命令ストリームが変更されていないことを検証する完全性検証部（１６０）と；
前記命令ストリームが変更されていないことが検証された場合、前記ＲＯＭ（１４０）から前記命令ストリームを読出す毎に、前記実行セキュリティ制約事項の検証を迂回して前記命令ストリームを実行するＣＰＵ（１７０）と
を備えることを特徴とする、実行環境（１５０）。
【請求項８】
構築環境（１１０）、サーバ（２００）、および実行環境（１５０）を有するシステム（１００）において、前記実行環境（１５０）は、Ｊａｖａ（登録商標）の実行時セキュリティ制約事項を満たすコンピュータ読取可能な命令ストリームを実行する際に時間と電力要求量を低減するように構成され、
前記構築環境（１１０）は、コンパイラ（１２０）と非信認記憶装置（２１０）を有し、
前記サーバ（２００）は、セキュリティ制約事項検証部（１３０）と信認記憶装置（１４０）を有し、
前記実行時セキュリティ制約事項を満たす前記命令ストリームは、クラス・ファイルの基本的構造の完全性を有し；無効のコンスタントプール項目を有さず；正しくないオブジェクト・インヘリタンスの問題を有さず；データ・フロー分析による制約を維持し；前記実行環境（１５０）内のメモリ領域に正しくないアクセスはせず；前記実行環境（１５０）内のファイルにアクセスせず；資源要求が前記実行環境（１５０）の限界を超えず、
前記コンパイラ（１２０）は、Ｊａｖａ（登録商標）のソースコードをコンパイルすることによって前記命令ストリームを生成し、
前記非信認記憶装置（２１０）は、前記命令ストリームを格納し、 
前記実行環境（１５０）は、
前記サーバ（２００）に、前記命令ストリームの読出を要求する送受信部（２２０）であって、前記要求を受信したなら前記セキュリティ制約事項検証部（１３０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していないことを検証し、前記命令ストリームが前記実行時セキュリティ制約事項に違反していない場合に、前記セキュリティ制約事項検証部（１３０）は前記命令ストリームを前記送受信部に送信し、且つ前記信認記憶装置（１４０）は前記命令ストリームを格納し、これ以降、前記送受信部（２２０）から前記要求を受信する毎に、前記信認記憶装置（１４０）が格納している前記命令ストリームが前記送受信部（２２０）に送信されることと；
前記実行セキュリティ制約事項の検証を迂回して前記命令ストリームを実行するＣＰＵ（１７０）と
を備えることを特徴とする、実行環境（１５０）。
【請求項９】
構築環境（１１０）、サーバ（２００）、および実行環境（１５０）を有するシステム（１００）において、前記実行環境（１５０）は、Ｊａｖａ（登録商標）の実行時セキュリティ制約事項を満たすコンピュータ読取可能な命令ストリームを実行する際に時間と電力要求量を低減するように構成され、
前記構築環境（１１０）は、コンパイラ（１２０）と非信認記憶装置（２１０）を有し、
前記サーバ（２００）は、セキュリティ制約事項検証部（１３０）を有し、
前記実行時セキュリティ制約事項を満たす前記命令ストリームは、クラス・ファイルの基本的構造の完全性を有し；無効のコンスタントプール項目を有さず；正しくないオブジェクト・インヘリタンスの問題を有さず；データ・フロー分析による制約を維持し；前記実行環境（１５０）内のメモリ領域に正しくないアクセスはせず；前記実行環境（１５０）内のファイルにアクセスせず；資源要求が前記実行環境（１５０）の利用可能メモリの限界を超えず、
前記コンパイラ（１２０）は、Ｊａｖａ（登録商標）のソースコードをコンパイルすることによって前記命令ストリームを生成し、
前記非信認記憶装置（２１０）は、前記命令ストリームを格納し、 
前記セキュリティ制約事項検証部（１３０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していないことを検証し、
前記実行環境（１５０）は、前記命令ストリームが前記実行時セキュリティ制約事項に違反していない場合に、前記命令ストリームを、前記サーバから安全通信チャネル（３００）を通じて受信するように構成され、前記安全チャネル（３００）は、前記命令ストリームが変更されていないことを検証するように構成され、
前記実行環境（１５０）は、前記命令ストリームが変更されていないことが検証された場合、前記実行セキュリティ制約事項の検証を迂回して前記命令ストリームを実行するように構成されたＣＰＵ（１７０）を有することを特徴とする、実行環境（１５０）。
【請求項１０】
前記ＣＰＵ（１７０）の換わりに、バイトコード解釈環境が用いられる、請求項６〜９何れか一項記載の実行環境（１５０）。
【誤訳訂正２】
【訂正対象書類名】明細書
【訂正対象項目名】発明の名称
【訂正方法】変更
【訂正の内容】
【発明の名称】実行時セキュリティ環境下における命令ストリーム実行時間の時間低減方法と実行環境
【誤訳訂正３】
【訂正対象書類名】明細書
【訂正対象項目名】０００４
【訂正方法】変更
【訂正の内容】
【０００４】
システム１００の構築環境１１０は、コンパイラ１２０，およびセキュリティ制約事項検証部１３０を備えている。コンパイラ１２０は、コンピュータ読み取り可能命令ストリームを作成する。セキュリティ制約事項検証部１３０は、コンパイラ１２０に結合され、コンピュータ読み取り可能命令ストリームが、実行環境１５０の実行時セキュリティ制約事項に違反しないことを検証する。実行時セキュリティ制約事項は、実行環境に特有である。例えば、Java TMプログラミングの具体的な場合では、検証ツールはクラス・ファイルおよび／またはバイトコード検証プロセスを実行する。これは、マルチ・パス・プロセスであり、各パスが特定の１組のチェックを行なう。最初のパスでは、クラス・ファイルの基本的構造の完全性をチェックする。第２パスでは、無効のコンスタントプール項目または正しくないオブジェクト・インヘリタンスの問題というような、単純な問題について１組のチェックを行なう。第３パスでは、コード内の各メソッド（method）毎に、データ・フロー分析を行い、当該メソッドでどのパス(path)を通ったかには係らず、１組の制約を常に維持する。これらの制約は、システム制限を超えて増大してはならないオペランド・スタックのサイズ，およびメソッドを呼び出す引数の数およびタイプを含む。加えて、第３パスと関連付けて、またはオプションとして第４パスとして実行可能な１組のチェックがあり、これには、言語レベルのセキュリティ制約事項に対する違反，不一致のフィールド・タイプに対するオブジェクトの割り当て、およびコールされたメソッドが実際に存在することの検証が含まれる。
【誤訳訂正４】
【訂正対象書類名】明細書
【訂正対象項目名】００１３
【訂正方法】変更
【訂正の内容】
【００１３】
ステップ４００においてコンピュータ読み取り可能命令ストリームを作成した後、ステップ４１０において、検証ツールを用いて、システム１００のセキュリティ制約事項に対して必要なセキュリティ・チェックの全てを行なう。システム１００のセキュリティ制約事項に対するセキュリティ・チェックの中には、実行環境１５０内のメモリ領域に対するアクセスのチェック，実行環境１５０内のファイルに対するアクセスのチェック，および資源要求が実行環境１５０の限界を超えていないことのチェック（例えば、コンピュータ読み取り可能命令ストリームが、実行環境内で利用可能以上のメモリを割り当てない）が含まれる。
【誤訳訂正５】
【訂正対象書類名】明細書
【訂正対象項目名】００１８
【訂正方法】変更
【訂正の内容】
【００１８】
更に、検証ツールをサーバ２００内に実装し、コンピュータ読み取り可能命令ストリームを第２図に示すような実行環境１５０に転送する前に、システム１００のセキュリティ制約事項に対して必要なセキュリティ・チェックの全ての検証を実行することも可能である。例えば、構築環境１１０において、コンピュータ読み取り可能命令ストリームをコンパイルし、「非信認」記憶装置２１０に格納する。その後「非信認」記憶装置２１０の内容はサーバ２００に転送され、実行環境１５０がコンピュータ読み取り可能命令ストリームの読み出しを要求するまで、サーバ２００上に格納されている。一旦サーバ２００が、コンピュータ読み取り可能命令ストリームを読み出す要求を実行環境１５０から受信したなら、実行環境１５０に送出する前に、サーバ２００は、検証ツールを用いて、システム１００のセキュリティ制約事項に対して必要なセキュリティ・チェックの全てを、コンピュータ読み取り可能命令ストリームに実行する。コンピュータ読み取り可能命令ストリームが検証に合格した場合、これを実行環境１５０に送出し、好ましくは、後の使用のために「信認」記憶装置１４０に格納する。コンピュータ読み取り可能命令ストリームが「信認」記憶装置１４０内で無変更のままでいる限り、今後実行環境１５０によって要求されるときに、これ以降実行時セキュリティ制約事項の検証を迂回しても、コンピュータ読み取り可能命令ストリームが実行環境１５０に対して悪影響を及ぼすことはない。