1994 年、弁護士であり暗号通貨の先駆者であるニック・サボは、分散型台帳が自動執行契約、ブロックチェーン契約、またはデジタル契約としても知られるスマートコントラクト技術に使用できることに気づきました。
この形式では、契約をデジタル化してシステムに保存し、ブロックチェーンを実行するコンピューターのネットワークによって制御できます。 スマート コントラクトは、送金や製品やサービスの受け取りに使用されます。
スマート コントラクトとは何ですか?
スマート コントラクトを特徴付ける最良の方法は、そのテクノロジーをすべてのユーザーがよく知っているものと比較することです。自動販売機についてです。文書について言えば、標準的な処理手順は次のとおりです。弁護士または公証人に行き、料金を支払い、専門家が文書を作成するのを待ちます。
スマート コントラクトの助けを借りて、暗号通貨を送信するだけで、見返りに必要な書類を受け取ることが保証されます。スマート コントラクトは、従来の契約と同じ方法でルールと罰則を規制し、両当事者がこれらの義務を履行することを自動的に保証します。
スマートコントラクトアルゴリズムが締結されると、条件がすべて正しければ、資産は売り手から買い手に渡される必要があります。不一致がある場合、アセットは直ちに送信者に返送されます。同時に、分散型台帳は文書を保存および複製するため、文書は安全かつ不変になります。
スマートコントラクトは、金融デリバティブから保険料、不動産、先取特権またはローン契約、金融サービス、法的手続き、クラウドファンディング契約に至るまで、ビジネス関係のあらゆる分野で使用できます。
スマート コントラクトは任意のブロックチェーン上でエンコードでき、主要な暗号通貨は明らかにスマート コントラクトの操作に重点を置いています。しかし、イーサリアムは無限の処理可能性を提供するため、最も一般的に使用されています。標準契約では関係の条件 (通常は法律で強制可能な条件) が定められていますが、スマート コントラクトでは暗号コードとの関係が強制されます。
言い換えれば、スマート コントラクトは、作成者が設定したとおりに実行されるプログラムされたアクションです。
仕組み
ネットワークがある人から別の人にデジタル資産を転送できるという意味で、ビットコインが最初に基本的なスマート コントラクトをサポートしたことは注目に値します。ノードのネットワークは、事前にプログラムされた条件が満たされた場合にのみトランザクションを検証します。しかし、ビットコインは通貨の使用例に限定されています。
対照的に、イーサリアムは、より制限的なビットコイン言語 (約 100 個のスクリプトで構成されるスクリプト言語) を、開発者が独自のプログラムを作成できる言語に置き換えます。
ホワイトペーパーで概要が説明されているように、イーサリアムを使用すると、開発者は独自のスマート コントラクトまたは「自律エージェント」を作成できます。この言語は「チューリング完全」言語であり、より広範な計算命令セットをサポートしていることを意味します。
スマート コントラクトには次の機能が実装されています。
- 「マルチ署名」アカウント。必要な割合の人々が同意した場合にのみ資金が使用されます。
- ユーザー間の契約(あるユーザーが別のユーザーから保険を購入する場合など)を管理する
- ソフトウェア ライブラリのように動作します。
- ドメイン登録情報やメンバーシップ記録など、アプリケーションに関する情報を保存します。
一方、イーサリアムを使用すると、開発者は独自の独自のスマート コントラクトを作成して命令を定義できます。これらのスマート コントラクトは、JS や Python などの既存の言語をモデルにした使いやすいプログラミング言語を使用して作成できます。
スマート コントラクトは、分散データベース内でバイトコードとして存在します。これがイーサリアムの革新性と破壊的な可能性の根源です。イーサリアムを使用してコードを実行するすべてのネットワーク ノードは、同じ結果に達し、次のブロックの状態について同意するという合意に達する必要があります。
どのユーザーも、コードを含むリポジトリのサイズに比例した料金で、分散データベースにスマート コントラクトをデプロイできます。スマート コントラクトを使用したいノードは、ネットワークの残りの部分への参加結果を何らかの方法で示す必要があります。
支払い手段としてのガソリン
このガスは、ノードがネットワークおよびコンピューティング ジョブに参加して、データベースにスマート コントラクトを展開したり、既存のコントラクトとのユーザー インタラクションに対応するジョブを実行したりするよう促すものです。
これにより、マイナーがジョブを計算するようになるだけでなく、開発者が効率的なコードをデプロイして、デプロイされたプロトコルのユーザー向けの使用を最適化することも奨励されます。ネットワークに送信されるトランザクションに対して適切な料金が設定されます。 EVM は任意の複雑さのコードを実行できるため、トランザクションの長さに基づいてフリー コードを選択することが常に正確であるとは限りません。
スマート コントラクトの書き方
Solidity は Javascript であり、スマート コントラクトを作成するために特別に設計された冗長言語です。 Solidity コンパイラーはコードを EVM バイトコードに変換し、デプロイメント トランザクションとしてイーサリアム ネットワークに送信できます。このような展開では、スマート コントラクトのやり取りよりも取引手数料が高額になるため、契約所有者が支払う必要があります。
スマートコントラクトの良い例はクラウドファンディングです。 Kickstarter や Gofundme などの人気のクラウドファンディング サイトは、新しい製品やミッションを実現することを目的としていますが、クラウドファンディング システムは、期待を下回る創設者に悩まされることがよくあります。
さらに悪いことに、詐欺師が先見的だが技術的に不可能な製品を提示して数万ドルを集め始めたものの、すぐに任務を放棄し、お金を持って姿を消してしまったという話を聞いたことがあるでしょう。この現象は、寄付者と創設者の両方に責任を負わせるために、資金に関するすべての権限が 1 人の中心人物の手に移管されたことによって引き起こされる組織的な失敗と非効率を表しています。
上記のようにイーサリアムによって適用されるスマート コントラクトは、以下のプロセスに従うことで、契約合意または取引に関与するすべての当事者に責任を負わせることができます。
- データベースは寄付者から資金を集め、所有者のいないアカウントに資金を保管します。
- 上場企業が株主に対して説明責任を負うのと同様に、十分な割合の寄付者が満足する進歩の証拠を提供するまで、資金は創設者によって保持されます。
- 投資家が進捗状況に同意すると、開発者は資金を利用できるようになります。
- 創設者が期待に応えられなかったり、製品を市場に投入できなかった場合、資金は投資家に返還されます。
最後に、4 つのステップはすべて、Kickstarter や Gofundme などの中央機関を介さずに実行されます。スマート コントラクトの技術面では、セキュリティ、分散化、評判、説明責任のシステムが保証され、これがあらゆる業界で集中型アプリケーションを拡大し、最終的には革命を起こすことになります。
仕事のコンセプトと範囲
スマートコントラクトの可能性は事実上無限です。彼らは次のことができます:
- 法的義務を自動化されたプロセスに変える
- 高レベルのセキュリティを確保する
- 信頼できる仲介者への依存を減らす
- 取引コストの削減に貢献する
スマート コントラクトは、人々、組織、およびそれらが所有する資産の間の関係を形式化できます。スマート コントラクトの取引ルール (合意) は、プロトコルまたはスマート コントラクトの当事者が同意する条件、権利、義務を定義します。
多くの場合、それは事前に決定されており、合意は簡単な行動によって達成されます。この一連のトランザクション ルールは、機械可読コードでデジタル的に形式化されています。スマート コントラクトで定められたこれらの権利と義務は、当事者が合意に達し、契約条件を履行すると、コンピューターまたはコンピューターのネットワークによって自動的に行使できるようになります。
結論
スマート コントラクトの概念は新しいものではなく、スマート コントラクトを使用するメリットはほぼ無制限です。しかし、ブロックチェーンはスマートコントラクトの実装のきっかけとなるようです。スマート コントラクトの最も原始的な形式は自動販売機です。
トランザクション ルールはマシンにプログラムされています。商品に割り当てられた番号を選択して商品を選択し、コインを入力して商品を受け取ります。入力した金額が商品の価値と一致すると、機械は商品を廃棄するようにプログラムされており、入力した金額が多すぎる場合は、お釣りも廃棄します。
十分な金額を投入しなかった場合、またはマシンの在庫がなくなった場合は、お金が返金されます。自動販売機は人間のベンダーを不要にすることで取引コストを削減しただけでなく、限られたキオスク営業時間の代わりに 24 時間 365 日の利用可能性を提供することでサービスを拡大しました。スマート コントラクトは確かに、ブロックチェーン テクノロジーとデジタル革命のおかげで利用可能になった革新的なソリューションです。
暗号通貨に関する興味深い事実
- ビットコインとイーサリアムのネットワークでは、スマート コントラクトの条件の実行はさまざまな方法で行われます。
- スマート コントラクトを使用すると、ブローカー、弁護士、その他の仲介者のサービスを必要とせずに、安全に取引を完了する機会が得られます。
- スマート コントラクトを使用すると、ドキュメントが安全に暗号化され、分散台帳に保存されます。