【手続補正書】
【提出日】令和2年5月25日(2020.5.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ブロックチェーンにインストールされたコントラクトに関連する挙動を非ブロックチェーン・アプリケーションにデリゲートするコンピュータシステムであって、 
１つまたは複数のハードウェアプロセッサと、
コンピュータ実行可能命令を格納する1つ又は複数のコンピュータ可読記憶媒体であって、 前記命令は前記１つまたは複数のハードウェアプロセッサにより実行されると、前記１つまたは複数のハードウェアプロセッサに、
仮想マシン上で実行するブロックチェーンにインストールされた前記コントラクトから、クリプトレットのアイデンティティ及び前記クリプトレットが行う要求された挙動を受信し、クリプトレット・コンテナ・サービスに、前記アイデンティティと、前記要求された挙動を提供し、前記要求された挙動を行う前記クリプトレットにより生成された応答を前記クリプトレット・コンテナ・サービスから受信し、前記応答を前記コントラクトへ送信する、クリプトデリゲートを実行させ、前記クリプトレットは、前記ブロックチェーンにインストールされた前記コントラクトの代わりに、前記要求された挙動を実行すべき暗号化アプレットであり、
登録された前記クリプトレットへの参照を含む前記登録されたクリプトレットに関する情報を格納し、前記アイデンティティ及び前記要求された挙動を前記クリプトデリゲートから受信し、前記クリプトレット・コンテナ及び前記クリプトレットを実行するホストを識別し、前記クリプトレットを認証し、前記クリプトレットに対し前記要求された挙動を提供し、前記クリプトレットにより生成された前記応答を受信し、前記ブロックチェーンに送信し、前記応答をクリプトデリゲートで検証する、前記クリプトレット・コンテナ・サービスを実行させる、1つ又は複数のコンピュータ可読記憶媒体と、
を含むコンピュータシステム。
【請求項２】
請求項１に記載のコンピュータシステムであって、前記クリプトデリゲートは、前記仮想マシンによって実行される、コンピュータシステム。 
【請求項３】
請求項１に記載のコンピュータシステムであって、前記要求された挙動は、イベントを前記コントラクトに送信することである、コンピュータシステム。 
【請求項４】
請求項１に記載のコンピュータシステムであって、
前記命令は、前記１または複数のハードウェアプロセッサに、さらに、前記コントラクトから前記クリプトレットのコードを受信し、前記クリプトレット・コンテナ・サービスに前記クリプトレットの前記コードを提供するクリプトデリゲートを実行させ、
前記命令は、前記１または複数のハードウェアプロセッサに、さらに、前記クリプトレットの前記コードのハッシュを生成し、前記クリプトレットの前記コードが、前記コントラクトが提供するハッシュと一致することを検査することによって前記クリプトレットの前記コードを検証し、前記クリプトレットのコードをクリプトレット登録ブロックチェーン内に記録し、前記クリプトレットを実行して前記要求された挙動を実行するよう認証済みホストに指示する前記クリプトレット・コンテナ・サービスを実行させる、コンピュータシステム。
【請求項５】
請求項１に記載のコンピュータシステムであって、前記命令はさらに、前記１または封数のハードゥエアプロセッサに、前記コントラクトに関連するブロックチェーン内に、前記コントラクトによる各要求と、前記コントラクトに提供される応答の指示とを記録する前記クリプトデリゲートを実行させる、コンピュータシステム。 
【請求項６】
請求項１に記載のコンピュータシステムであって、前記コントラクトは、前記前記１つまたは複数のハードウェアプロセッサに、前記クリプトレットを実行すべきホストの指示を提供する、コンピュータシステム。 
【請求項７】
請求項１に記載のコンピュータシステムであって、前記クリプトレットは、クリプトレット・コンテナが提供する環境の中で実行される、コンピュータシステム。
【請求項８】
請求項１に記載のコンピュータシステムであって、前記クリプトレット・コンテナは、安全で、改ざん防止されたオペレーションのために保護されたエンクレーブ環境内で実行する、コンピュータシステム。
【請求項９】
請求項１に記載のコンピュータシステムであって、前記コントラクトは、前記クリプトレットに関する前記設定情報を前記１つまたは複数のハードウェアプロセッサに提供する、コンピュータシステム。
【請求項１０】
請求項９に記載のコンピュータシステムであって、前記設定情報は、前記クリプトレットのインターフェイス定義、及び前記クリプトレットの属性の指定を含む、コンピュータシステム。
【請求項１１】
コンピューティングシステムによって実行される方法であって、
仮想マシンにより実行されるスマート・コントラクトから要求を受信し、前記スマート・コントラクトに代わって挙動を実行するためのコントラクト・クリプトレットと、前記コントラクト・クリプトレットのコードと、認証済みホストの指示とを登録して、前記コントラクト・クリプトレットの前記コードを実行する、ステップであって、前記コントラクト・クリプトレットは、前記スマート・コントラクトとは別であり、前記仮想マシンが実行する前記スマート・コントラクトの代わりに前記挙動を実行すべき暗号化アプレットであり、 
前記コントラクト・クリプトレットの前記コードを検証するステップと、 
前記コントラクト・クリプトレットの前記コードを、クリプトレット登録ブロックチェーン及びデータストレージに格納するステップと、
前記挙動を実行するために前記コントラクト・クリプトレットに対する要求を前記スマート・コントラクトから受信するステップと、
前記コントラクト・クリプトレットに前記認証済みホスト上で実行するよう指示するステップと、及び
前記挙動を実行するよう、前記認証済みホストで実行する前記コントラクト・クリプトレットに前記要求を送信するステップと、
を備え、前記スマート・コントラクト及び前記コントラクト・クリプトレットとの通信は安全なチャネルを介して行われる、
方法。
【請求項１２】
請求項１１に記載の方法であって、前記コードを検証するステップは、前記コントラクト・クリプトレットの前記コードのハッシュを生成するステップと、前記ハッシュを前記コントラクト・クリプトレットの前記コードに関連する公開鍵と比較するステップとを含む、方法。 
【請求項１３】
請求項１１に記載の方法であって、前記スマート・コントラクトから前記要求を受信するステップは、前記仮想マシンによって実行されるクリプトデリゲートを介して前記スマート・コントラクトから前記要求を受信するステップをさらに含む、方法。 
【請求項１４】
請求項１３に記載の方法であって、前記クリプトデリゲートは、前記スマート・コントラクトがインストールされるブロックチェーン内に、前記スマート・コントラクト及び前記クリプトデリゲートとの通信の指示を記録する、方法。 
【請求項１５】
請求項１１に記載の方法であって、前記仮想マシンは、前記スマート・コントラクトがインストールされるブロックチェーンのノード上で実行し、前記認証済みホストは、前記スマート・コントラクトがインストールされる前記ブロックチェーンのノードの外部にあるコンピュータである、方法。 
【請求項１６】
請求項１１に記載の方法であって、前記クリプトレット登録ブロックチェーンは前記スマート・コントラクトがインストールされているブロックチェーンとは別のものである、方法。 
【請求項１７】
請求項１１に記載の方法であって、前記スマート・コントラクトのコード及び前記クリプトレットはコンソーシアムのメンバによって承認される、方法。