メインコンテンツへスキップ

ページの最終更新日時: 2024年3月1日

スマートコントラクト入門

スマートコントラクトは、イーサリアムアプリケーション の基本的な構成要素です。 これらは、従来の契約をデジタルに変換できる、ブロックチェーンに保存されたコンピュータプログラムです。 スマートコントラクトは非常に論理的で、イフト(IF This Then That:もし「これ」ならば、「あれ」をする)の構造に従っています。 また、プログラムされた通りに正確に動作し、変更できません。

Nick Szabo は「スマートコントラクト」という用語を作りました。 1994 年、彼は概念の紹介(opens in a new tab)を書き、1996 年にはスマートコントラクトの可能性の探求(opens in a new tab)を執筆しました。

Nick Szabo は、自動的で暗号的に安全なプロセスに基づいて構築されたデジタル市場を描きました。 トランザクションやビジネス機能が、仲介者なしに、管理者による承認を必要とせずに行われる世界です。 イーサリアムのスマートコントラクトは、このビジョンを実現したものです。

スマートコントラクトとは

「弁護士ではないのに、 なぜコントラクト(契約)に関心を持たないといけないのか」と思われている人もいるかもしれません。 ほとんどの人は、不必要に長い契約条件、または退屈な法的文書を念頭に置きます。

コントラクトとは、単なる合意です。 つまり、あらゆる形式の合意は、契約条件内に包含することができます。 多くの場合、口頭での合意や書面によるコントラクトは受け入れられますが、欠陥が含まれることがあります。

信頼とコントラクト

従来の契約における最大の問題の 1 つは、信頼できる個人が契約事項に遂行する必要があることです。

次に例を示します。

アリスとボブは自転車レースをしていると仮定します。 アリスは自分がレースに勝つと、10 ドル賭けるとします。 ボブは自分が勝者になると確信しており、賭けに同意します。 結果、アリスはボブよりも先にレースを終え、勝ちました。 しかし、ボブはアリスが不正をしたと主張して、賭けの支払いを拒否します。

この例は、スマートでない合意について問題を示しています。 たとえレースに勝って、契約の条件が満たされたとしても、他者が契約を履行すると(つまり、掛け金を支払う)信頼しなければなりません。

スマートコントラクト

スマートコントラクトは、契約条件が満たされたときに自動的に実行するコンピュータコードに契約をデジタル化します。

デジタル自動販売機

スマートコントラクトの単純なたとえとしては、特定の入力をすると所定の出力がされる自動販売機があり、これはスマートコントラクトと機能が多少似ています。

  • 製品を選択
  • 自動販売機は製品の購入に必要な金額を表示
  • 正しい金額を挿入
  • 自動販売機は正しい金額を挿入されたことを確認
  • 自動販売機は選択された製品を出し販売

自動販売機は、すべての要件が満たされた後にのみ、希望の製品を出します。 商品を選択しない、または十分なお金を挿入しない場合は、自動販売機は商品を出しません。

自動実行

通常の契約と比較し、スマートコントラクトの顕著なメリットの 1 つに、契約条件が満たされたときに結果が自動的に実行されることです。 誰かが実行するのを待つ必要はありません。 言い換えると、スマートコントラクトでは誰かを信頼する必要性はありません。

例えば、子どものためにエスクローで資金を保持し、所定の日付以降に子どもが資金を引き出すことができるスマートコントラクトを作成したとします。 所定の日付までに資金を引き出そうとしても、スマートコントラクトは実行されません。 または、車のディーラーの支払い完了時に、車両の所有権証明書のデジタル版を自動的に得るコントラクトを作ることもできます。

予測可能な結果

従来の契約における問題の最大のポイントの 1 つは、人的要因です。 例えば、2 人の裁判官は、従来の契約を異なって解釈する場合があります。 解釈の違いは、異なる判決を下し、結果が異なってしまう場合があります。 スマートコントラクトは、解釈が異なるという可能性を排除します。 スマートコントラクトは、コントラクトのコードに記載されている条件に基づいて正確に実行されるため、解釈の違いは生じません。 これは、同じ状況下ではスマートコントラクトは同じ結果を生み出すことを意味します。

パブリックレコード

スマートコントラクトは、監査や追跡にも役立ちます。 イーサリアムのスマートコントラクトは、パブリックブロックチェーン上にあるため、誰でも即座に資産移管やその他の関連情報を追跡することができます。 例えば、誰かがあなたのアドレスに送金したことを確認できます。

プライバシーの保護

スマートコントラクトはプライバシーも保護します。 イーサリアムは匿名のネットワークで、トランザクションは身元ではなく、一意の暗号アドレスが公開して紐づけられ、第三者からプライバシーを守ることができます。

契約条件の可視性

最後に、契約と同様、署名(またはスマートコントラクトとやり取り)する前に、スマートコントラクトの内容を確認できます。 さらに良いことに、契約条件の公の透明性により、誰でも契約条件を精査することができます。

スマートコントラクトのユースケース

スマートコントラクトはブロックチェーン上にあるコンピュータプログラムです。 自動的に実行されます。 トランザクションを追跡し、それらの動きを予測し、匿名で使用することもできます。 素晴らしいですよね。 しかし、スマートコントラクトを何に使えるのでしょうか。 スマートコントラクトは、基本的に他のコンピュータプログラムと同じように何でも実行することができます。

計算を実行し、通貨を作成し、データを保存し、NFT をミントし、通信を送信し、画像を生成することさえできます。 以下に、よく使われているスマートコントラクトの実例を示します。

映像で学びたい人向け

Finematics によるスマートコントラクトの説明:

参考文献

この記事は役に立ちましたか?