
スマートコントラクトはソフトウェアで実装される契約です。従来の契約のように当事者が法制度に頼る必要はなく、スマートコントラクトはソフトウェアが監視する特定の条件が満たされたとき、自動的に執行されます(場合によっては自己実行も可能です)。スマートコントラクトを支えるレイヤーは、既存のEthereumインフラ上に構築できます。すべてのスマートコントラクトはSolidityというプログラミング言語で作成されます。
スマートコントラクトの主な利点は以下の通りです:
スマートコントラクトの利用例:
たとえば、ローラとマイケルがじゃんけんをして、3回勝った方が1 ETHを獲得する賭けをする場合、スマートコントラクトは以下を実現できます:
これらすべてがローラやマイケルに依存せず、客観的かつ透明に実行されます。
Solidityは、JavaScriptの構文に強く影響を受けた静的型付けのプログラミング言語で、開発者はスマートコントラクトの作成が可能です。Ethereumブロックチェーン上のスマートコントラクトはバイトコード言語で記述され、EVM上で実行されます。
EthereumはBitcoinと同様に、銀行や国際送金会社などの第三者を介さずに個人間で暗号資産を送信できるブロックチェーンです。世界中の開発者が、Ethereumの分散型ネットワークの可能性を社会に広げるアプリケーションやプラットフォームの構築に取り組んでいます。ブロックチェーンエコシステムが発展し、広範な経済圏と統合されるには時間がかかりますが、すでに多くの組織がEthereumブロックチェーンと連携するアプリケーションを提供し、新しい価値創出や交換の方法を実現しています。
この分散型アプリケーション(dApps)の波は、金融、音楽、ゲーム、ソーシャルメディアなど幅広い業界のモデルを進化させ、顕著な成果を生み出しています。ブロックチェーン業界は、投機中心から成果、普及、ユーザー体験の向上へと移行しています。代表的なプロジェクトは以下の通りです:
ブロックチェーンは、新しいブロックを追加する前にネットワーク参加者の合意が必要です。コンセンサスメカニズムは、ネットワーク固有の暗号学的検証手法で特定の取引が正当かどうか判断するために不可欠です。また、複数の参加者が同じ資産に対して異なる取引を提案する場合など、同時発生的な競合の調整にも役立ちます。この仕組みは正しい取引順序を保証し、低パフォーマンスの参加者によるシステム悪用を防ぎます。コンセンサスメカニズムには複数の種類がありますが、Ethereumでは次の方式が採用されています:
Proof of Stake(PoS) - Proof of Stake方式では、コイン保有者は難解な数学的アルゴリズム(マイニング)を解くことなく、一定量のコインを保有していることを証明するだけでコインを得ることができます。
Ethereum Virtual Machine(EVM)は、安全かつ環境に配慮した実行環境であり、開発者はリモートで作業しながらEthereumブロックチェーンに段階的なアップデートをアップロードできます。これによって多くの分散型アプリケーション(dApps)が誕生しました。EVMはネットワーク全体に分散された大規模なコンピューターであり、各コントラクトのコードと状態変数はすべてのノードで共有されます。新しいEthereumブロックの検証により、すべての状態変数、つまり全アカウントの残高が更新されます。
Ethereumの基盤技術を理解することは非常に重要です。現在の主要なプロジェクトの多くはEthereumで開発された技術に着想を得ているか、Ethereumの課題解決を目的に作られています。本モジュールで得た知識は、他のプロジェクトを学ぶ際にも大いに役立つでしょう。
ハイライト
関連記事