Web3関連プロジェクトで開発業務を行うなら「スマートコントラクト」の知識が欠かせません。DEX、DeFi、DAO、ブロックチェーンゲームなど、分散型プラットフォームはすべてスマートコントラクトをベースとしたメカニズムにより稼働します。
本記事では、スマートコントラクトの基礎知識と仕組み、使用例、メリット・デメリットについて解説します。Web3分野での仕事探し・転職を検討しているエンジニアの皆様には大変参考になる内容です。
Tech Forwardに登録されているWeb3分野の最新求人一覧を以下からご覧ください。
スマートコントラクトとは?
スマートコントラクトとは、一定の条件に対してあらかじめプログラムされた契約を自動実行する仕組みです。スマートコントラクトが初めて社会実装されたのは、イーサリアムブロックチェーン上においてです。
こちらの記事でスマートコントラクトを生み出したイーサリアムの仕組みについて詳しく解説していますので併せてご覧ください。
概念自体は決して新しいものではなく、1990年代には提唱されていました。しかし世の中に認知され始めたのは、ブロックチェーンシステムで活用されはじめた2013年頃からです。
ブロックチェーンの新たな可能性を生み出す
単純な取引情報の記録に加えて、ブロックチェーン上でアプリケーションを実行し、保存できるようにしたのがイーサリアムのスマートコントラクトです。
こちらの記事でブロックチェーンとは?活用方法は?と言った疑問の答えについて詳しく解説していますので併せてご覧ください。
世界初の仮想通貨であるビットコインは、画期的なブロックチェーンのメカニズムにより銀行やATMを介さずに送金と決済を可能にしました。ブロックチェーンの機能は取引情報の記録であり、その情報が参加するすべてのノードに分散され閲覧できる仕組みになっています。
こちらの記事でビットコインの技術と将来性について詳しく解説していますので併せてご覧ください。
従来の契約(コントラクト)との違いは?
契約を交わす過程で署名や押印といった事務手続きをともなうのが一般的です。そして従来の契約は、ベンダーとユーザーとの間や仲介業者を介して交わされます。
物品の売買、不動産取引、保険や融資サービスといった世の中の経済行為は契約によって現実的価値をもつようになります。これら一連のプロセスをすべて自動実行するのがスマートコントラクトです。
スマートコントラクトを導入すると人手が必要ないうえ取引がスピーディーに進むので、省人化、コスト削減、業務効率化が大幅に進む利点があります。しかもブロックチェーン上で実装されると、透明性や非改ざん性が担保されるためさらに活用意義が広がるといってよいでしょう。
スマートコントラクトでできること
スマートコントラクトを利用すると、例えば以下のようなことがブロックチェーン上で可能となります。
- 融資を受けた通貨を180日経過後に3%の利息を付与して返済する
- iPhoneで撮影した夕日のデジタル画像に所有権を付与する(NFT)
- 火災保険料を毎月1日に25,000円徴収し、事故発生時に保険金を自動支払いする
- 法定通貨やコモディティと価値連動したステーブルコインを発行する
こちらの記事でステーブルコインの仕組み、メリットとリスクについて詳しく解説していますので併せてご覧ください。
スマートコントラクトの仕組み
スマートコントラクトの仕組みを可能にしているのが、ERCトークン規格とSolidityです。それぞれについて説明します。
ERCトークン規格
ERCトークン名 | 共通規格の目的 |
---|---|
ERC20 | 代替性トークン(FT)を実装する |
ERC721 | 非代替性トークン(NFT)を実装する |
ERC1155 | ERC20とERC721のハイブリッド型 |
ERC3525 | ERC1155の進化系ハイブリッド型 |
スマートコントラクトをブロックチェーン上で稼働させ、ユーザー同士で何らかの取引を可能にして実効性を持たせる共通規格がERCトークンです。
もともとイーサリアム上で利用されていたトークンは仕様がまちまちでした。よって互換性をもたせるためには、毎回互換性確保用にプログラムを追加実装する必要がありました。その作業が面倒なためエンジニアの中では不評でした。
そこで開発されたのがERCトークンです。イーサリアムには、EIP(Ethereum Improvement Proposals)というイーサリアムの改善提案の場があります。有志の開発者によってイーサリアムをアップデートするための改善案が提出され、コミュニティ内で議論のうえ承認を得るとその案が採用されるのです。
このEIPで承認されたスマートコントラクト実装のための共通規格がERCトークンであり、とりわけ上記の4つの規格が多用されています。ちなみにERCに続く数字は、提案された順番を意味します。
ERC20とERC721は、1つのスマートコントラクトにつき1種類のトークンしかサポートできないのが難点でした。新規トークンをリリースするたびにスマートコントラクトを作成しなければならないのです。
マルチトークンERC1155・ERC3525で汎用性高まる
そこでマルチトークンと言われるERC1155やERC3525が追って開発され、利便性を高めました。これらを利用すると、複数のFTやNFTを使って一度に取引を済ませることができるようになったのです。
マルチトークンによりガス代(手数料)を安価に抑えると同時に、余分な開発の手間が省けるようになりました。とくに2022年9月に導入されたERC3525は、トークンの分割や統合が容易なため債権や金融商品の取引に有効活用できるのが特徴です。
開発言語はSolidity
スマートコントラクトの開発には「Solidity」というプログラム言語が使われます。Solidityはスマートコントラクトのために作成された開発言語で、JavaScriptの文法に似て比較的使いやすいのが特徴です。
オブジェクト指向の高水準言語のため、あらゆるプログラムに対応できる利点もあります。コンパイラはEVM(イーサリアム仮想マシーン)のバイトコードに翻訳するかたちになります。
スマートコントラクトの使用例
スマートコントラクトの使用例として、以下を紹介しましょう。
- NFT
- ブロックチェーンゲーム
- DeFi
- 不動産や有価証券取引
- IDOによる資金調達
それぞれの事例を説明します。
NFT
ERC721やERC1155などを使って実装できるのが、デジタルデータの唯一無二性を証明することができるNFT(非代替性トークン)です。本来コピーが無限に可能な画像や動画、SNSのつぶやきなどは、オリジナルがどれであるかを証明することが困難でした。
しかしスマートコントラクトによってトークンと紐付けすることでオリジナルを特定のうえ所有権を証明することが可能となったのです。
これにより以下のようなNFTが生成され、高値で売買されるようになりました。
- 有名アーティストやスポーツ選手のデジタルカード
- 特定のシーンを切り取った動画
- 高級ブランドのバッグや宝石といったデジタルアイテム
- 有名スポーツメーカーのデジタルスニーカー
- Twitter創業者による最初のつぶやき
ブロックチェーンゲーム
スマートコントラクトを使えば、さまざまなキャラクターをNFT化して売買したり、独自トークンをステーキングして収益を得たりできるブロックチェーンゲームが開発できます。ブロックチェーンゲームは、ゲームをしながら稼げる「GameFi」という言葉を生みます。
GameFiによって、東南アジアでは富裕層から仮想通貨を借りてゲームをプレイし、自ら教育費を稼ぐ(スカラーシップ制度)若者が多数誕生しました。
こちらの記事でGameFiの仕組み、種類について詳しく解説していますので併せてご覧ください。
DeFi
スマートコントラクトにより、以下のようなDeFI(分散型金融)のシステム実装も可能になりました。
DeFIの機能 | 概要 |
---|---|
レンディング | 仮想通貨の貸付、借入 |
DEX | 仮想通貨の分散型取引所 仮想通貨をDEXに預けて流動性を与えた見返りに報酬を得られる 仮想通貨をDEXで売買して利益を得る DEXの仕組み、CEXとの違いについてはこちら |
保険 | 仮想通貨取引で生じるハッキングやバグなどの被害を補償 自ら保険を作成して商品化できる |
DeFiは、金融機関のような中央管理者が不在のため、場所を選ばず、手数料が極めて安価で取引がスピーディーな利点があります。
こちらの記事でDeFiの仕組み、活用事例について詳しく解説していますので併せてご覧ください。
不動産や有価証券取引
スマートコントラクトを使うと、有価証券の価値をデジタル化するSTO(Security Token Offering)も可能になります。有価証券や不動産、著作権といった資産をデジタル化してトークンと紐付けし、スマートコントラクトによって資金を受け取ったり、配当を支払ったりできます。
仮想通貨は資産による裏付けがありませんが、STOは実物の有価証券や不動産といった国が認める資産による裏付けがあるのでより安全性が高いとされています。そのため、金融商品として金融機関で売り出すことも可能です。
IDOによる資金調達
IDOのプロジェクトが資金調達を行うためにスマートコントラクトを使います。まずそのプロジェクトのトークンを作成し、それを分散型取引所に供給します。
そのトークンは流動性プールと呼ばれるスマートコントラクトにデポジットされ、参加者はそのトークンを購入することでプロジェクトに資金を供給します。
こちらの記事でトークン発行によって資金調達するIDOの仕組みについて詳しく解説していますので併せてご覧ください。
Tech Forwardに登録されているWeb3分野の最新求人一覧を以下からご覧ください。
スマートコントラクトの3つのメリット
スマートコントラクトの主なメリットは以下です。
- 信頼性が高い
- 透明性が高い
- コスト削減が可能
それぞれのメリットについて説明します。
信頼性が高い
スマートコントラクトはヒューマンエラーのリスクがほとんどなく、確実に契約が履行されます。信頼性が非常に高いといえるでしょう。人を介さない契約の自動実行プロトコルだからです。
透明性が高い
スマートコントラクトは、改ざんするのはほぼ不可能で高い透明性が担保できます。実行された取引はすべてブロックチェーン上に記録されるからです。履歴は全参加者がいつでも閲覧できます。
コスト削減が可能
スマートコントラクトでは、サービス提供者に手数料を支払う必要がないのでコスト削減できるでしょう。中央管理者を介さない分散型メカニズムの上で自動的に稼働するからです。そのため銀行や証券会社、各種取引所といったプラットフォーマーや仲介機構は必要ありません。
スマートコントラクトの2つのデメリット
スマートコントラクトのデメリットは以下の2点です。
- 修正ができない
- スケーラビリティ問題がある
それぞれのデメリットを説明します。
修正ができない
スマートコントラクトは、いったん実装すると修正ができません。また、スマートコントラクトは善悪、適切・不適切といった判断はできません。
プログラム通りに実行するので、誤ってコーディングしてしまうと想定外の契約が実行されたり、脆弱性をつかれて情報漏洩したりするリスクがあります。
スケーラビリティ問題がある
イーサリアムで顕著なのがスケーラビリティ問題です。取引が混み合うとガス代が高騰し、取引が遅延することを指します。
ただし、これらを回避するためにイーサリアムのレイヤー2やイーサリアムキラーといわれるブロックチェーンが複数登場しています。これらによってスケーラビリティ問題の一部は解消しつつあるのが現状です。
こちらの記事でPolygon(ポリゴン)が導入された理由と仕組みについて詳しく解説していますので併せてご覧ください。
スマートコントラクトの今後
スマートコントラクトへの需要は今後ますます高まると考えてよいでしょう。
まず、スマートコントラクトの代表的な活用例であるブロックチェーンゲームはメタバースとの親和性が高いです。よって今後は、仮想空間でNFT化されたキャラクターやアバターのアイテム、土地やビルなどが活発に取引されると期待できます。
またスマートコントラクトを使った電力取引も模索されています。再生可能エネルギー電力の売り手と買い手をマッチングすることで、資源の有効利用や脱炭素対策が促進できるのです。
加えてブロックチェーン開発環境では、すでにスマートコントラクトが実装できるさまざまなフレームワークが存在します。一からの開発に比べて低コストかつ短期間での実装が可能になるので非常に便利です。
官民にかかわらず多方面でスマートコントラクトの有用性が今以上に認知されれば、そのニーズはこれから飛躍的に高まるでしょう。
スマートコントラクトでよくある質問まとめ
- スマートコントラクトとは?
-
スマートコントラクトとは、一定の条件に対してあらかじめプログラムされた契約を自動実行する仕組みです。単純な取引情報の記録に加えて、ブロックチェーン上でアプリケーションを実行し、保存できるようにしたのがイーサリアムのスマートコントラクトです。詳しくは「スマートコントラクトとは?」にジャンプ。
- スマートコントラクトのメリットは?
-
スマートコントラクトの主なメリットは以下です。詳しくは「スマートコントラクトのメリットは?」にジャンプ。
- 信頼性が高い
- 透明性が高い
- コスト削減が可能
- スマートコントラクトのデメリットは?
-
スマートコントラクトのデメリットは以下の2点です。詳しくは「スマートコントラクトのデメリットは?」にジャンプ。
- 修正ができない
- スケーラビリティ問題がある
まとめ
スマートコントラクトを活用すると、さまざまな契約をブロックチェーン上で自動実行できます。その仕組みや導入意義への理解が深まれば、今後もあらゆる業種、業態で利用される可能性が高まるでしょう。そうなると、業務効率化、コスト削減、安全性と透明性といったスマートコントラクトの特長により、かつてないイノベーションやDXが実現すると期待できます。
スマートコントラクトへの理解は今後Web3で仕事を得るために欠かせません。スマートコントラクト構築のスキルを持つエンジニアの需要はますます高まるでしょう。
Tech Forwardに登録されているWeb3分野の最新求人一覧を以下からご覧ください。
Tech Forward公式Discordには、AI・Web3・メタバースなど先端テクノロジーに興味のある方が集まっています。最新テクノロジー情報のキャッチアップや、同じ興味分野がある方との人脈づくり、最新技術活用の議論、お仕事情報GETが可能です。ぜひ気軽にTech Forward公式Discordにご参加ください!
Tech Forward Magazine編集局では、AIやWeb3、ブロックチェーン、メタバース等に関するお役立ち情報を発信しています。姉妹サイトのAI Market(https://ai-market.jp/)やPrompt Plus(https://prompt-plus.ai/)の案内も行います。