本稿について
本稿では、The Golem ProjectのCroudfunding Whitepaper final versionのうち「Overview of the Golem Project」の「Application Registry」の日本語訳を掲載します。
原文はこちらになります。
アプリケーションレジストリ
アプリケーションレジストリはEthereumのスマートコントラクトで、誰でもGolemネットワークで稼働させる準備の整ったアプリケーションを公開することができます。アプリケーションレジストリの目標は次の通りです。
- 開発者に対して、完成品を公開するとともに分散型のやり方でユーザに手を差し伸べる方法を提供すること。
- リクエスタに対して、ニーズに合致する特定のツールを探す場所を提供すること。
- プロバイダに対して、セキュリティ上の理由から走らせるコードに対する完全な制御を提供すること。
Golemネットワークは完全に分散型なので、私たちはアプリケーションレジストリをコミュニティ駆動にしたいとも思っています。
Golemにより、リクエスタはアプリケーションのコードを他者のコンピュータ上で実行することができます。このコードはサンドボックス化され、最低限必要な特権で実行されます。しかし、バグはどこにでも存在しますし、時には人間がサンドボックスを破ったり、何とかしてホストコンピュータ上で悪意あるコードを実行しようとしたり、乗っ取ってしまうことさえあります。これが、サンドボックス化にのみに頼ることができない理由です。コードが安全か否かを自動的に評価できるようにしたいところですが、これは文字通り不可能です(停止性問題を参照)。コード確認と検証のプロセスは完全に自動化することはできず、自律ネットワークに放置しておくこともできません。一方で、誰も悪意あるソフトウェアを公開してGolemネットワーク上で動かすことがないと仮定するのも無理な話です。
私たちは、アプリケーションレジストリの利用者を3つのカテゴリ、すなわち、作者、検証者、プロバイダに分けることによってこの問題を解決します。作者はアプリケーションを公開し、検証者は自身のホワイトリストにアプリケーションを追加することでアプリケーションが安全かつ信頼できることを認証します。また、検証者はアプリケーションをブラックリストに追加することにより悪意があるものとしてマークする可能性があります。プロバイダは、ノード上で動作しているGolemの特定のインスタンスによってリストを所有する検証者を選択することにより、信頼する人を選ぶ権利が与えられています。それとは別に、プロバイダは彼ら独自のホワイトリストやブラックリストを整備します。これにより、各プロバイダは動かすソフトウェアとソフトウェアキュレーションに費やす労力について厳密に決定するかなりの柔軟性を手に入れます。そのうえ、このシステムは誰も除外することがなく、いつでも新たな検証者が生まれる余地があるのです。
通常、Golemは信頼されたアプリケーションのホワイトリストを使って動作します。空のホワイトリストは初めてGolemを試してみようとする人にとって問題であるため、初期配布の一部としてたくさんの検証されたエントリをホワイトリストに追加するつもりです。プロバイダはこのメカニズムを利用して、ホワイトリストを管理したり、単純に信頼する検証者のホワイトリストを利用することができます。
一方、コンピューティングファームを運営するプロバイダは完全にブラックリストに頼りたいと思うかもしれません。これは、利益を最大化したい、進んで試作段階の技術を試してみたいと思う専用マシンの管理者に向けたオプションです。この場合、ブラックリストは既知のトラブルを引き起こすあらゆるアプリケーションを追放するために利用されます。さらに、プロバイダは自分自身のブラックリストを整備したり、信頼する検証者のブラックリストを利用したりすることができます。
(次稿に進む)
(前稿に戻る)
スポンサードサーチ
免責
邦訳には誤りがある場合がございます。予めご承知おき下さい。
確実な情報を知るためには冒頭に示した原文をご参照くださいますようお願いいたします。