はじめての仮想通貨
TOP 新着一覧 チャート 取引所 WebX

スマートコントラクトとは?【図解】仕組みをわかりやすく解説|EVM・ガス・用途

画像はShutterstockのライセンス許諾により使用

この記事でわかること

スマートコントラクトとは、ブロックチェーン上で「条件が満たされたら自動で実行される契約プログラム」のことです。イーサリアムがビットコインと根本的に異なる点であり、DeFi・NFT・DAOといった新しい金融・経済の仕組みを支える基盤技術です。本記事では仕組みを図解で解説し、ビットコインとの違いや実際の用途、リスクまでを網羅します。

STEP 1 スマートコントラクトとは何か|自動販売機アナロジーで理解する

スマートコントラクト(Smart Contract)とは、あらかじめ定めた条件が満たされると自動的に実行される、ブロックチェーン上のプログラムです。1994年に法学者・暗号研究者のニック・サボが提唱した概念で、イーサリアムが2015年に実装したことで広く普及しました。

最もわかりやすい例えは自動販売機です。「100円を入れてボタンを押す」という条件が満たされると、仲介者なしにジュースが出てきます。スマートコントラクトはこれと同じ論理をデジタル契約に応用したものです。


左:仲介者(弁護士・銀行)を経由する従来型。右:コードが条件を自動判定して実行する SC型。
キャプション:仲介者なしで「if 条件 → then 自動実行」が完結する
従来の契約 当事者が合意した条件を文書に記す。履行されない場合は弁護士や裁判所などの仲介機関に頼る必要がある。信頼コスト・手数料・時間がかかる。
スマートコントラクト 条件をコードに書き込む。条件を満たした瞬間に自動実行される。仲介者が不要で、改ざんもできない。24時間365日稼働する。
スマートコントラクトの3つの特徴 自動執行:条件が満たされれば第三者の承認なしに即時実行される。
改ざん不可:ブロックチェーンに記録されたコードは事後的に書き換えられない。
透明性:コードは誰でも検証でき、実行結果はすべて公開記録に残る。

なお、スマートコントラクトは「仮想通貨を送る」だけにとどまらず、複雑な金融ロジック(利率計算・流動性プール管理・投票集計など)をコードで表現できます。これがビットコインとイーサリアムの根本的な違いであり、イーサリアムが「世界のコンピュータ」と呼ばれる理由です。

詳しいイーサリアムの概要についてはイーサリアム(ETH)とは?仕組みと基礎知識を解説もあわせてご確認ください。

STEP 2 イーサリアム上での動作の仕組み EVM・ガス・ステート変更

スマートコントラクトがイーサリアム上でどのように動作するかを理解するには、EVM(イーサリアム仮想マシン)とガス(Gas)という2つの概念が鍵になります。

「ユーザーがトランザクション送信」→「EVMがコード実行」→「ブロックチェーンにステート記録」
キャプション:すべての実行結果は世界中のノードで検証・記録される
1 トランザクション送信 ユーザーがウォレットからSCアドレスへトランザクションを送る。コントラクトを「呼び出す」行為
2 EVMがコードを実行 世界中の全ノードが搭載するEVM(仮想マシン)が同一コードを実行し、結果を検証し合う
3 ステート変更・記録 実行結果(残高・データ)がブロックチェーンに書き込まれ、全ノードが同じ状態を保持する

EVM(Ethereum Virtual Machine)とは、スマートコントラクトのコードを解釈・実行するための仮想的なコンピュータです。世界中すべてのイーサリアムノードに搭載されており、同一のコードを実行することで全員が同じ結果を得る仕組みになっています。これにより「誰かが都合よく結果を書き換える」ことが構造的に不可能になります。

ガス(Gas)は、EVMがコードを実行するために必要な計算資源の単位です。コードの処理量に比例して消費され、利用者がETHで支払います。ガス代が存在する理由は、無限ループなどの悪意あるコードでネットワークが停止するのを防ぐためです。処理が複雑なほどガス代が高くなります。

ガス代が高い理由 イーサリアムへのアクセスが集中するとガス代が急騰する。これを解決するために開発されたのがLayer2(Arbitrum・Base・OP Mainnetなど)であり、メインチェーン上で処理せず費用を大幅に抑えられる。
STEP 3 スマートコントラクトの主な用途|DeFi・NFT・DAOへの応用

スマートコントラクトはイーサリアムエコシステムの中核として、金融・アート・組織運営など多様な分野に活用されています。代表的な3つの用途を解説します。

用途 具体例 スマートコントラクトが担う役割
DeFi(分散型金融) Uniswap・Aave・Compound 流動性プールの管理、利率の自動計算、担保清算の自動執行
NFT OpenSea・Blur NFTの発行・移転・ロイヤリティ自動分配。ERC-721規格で標準化
DAO Uniswap DAO・Compound DAO トークン保有量に応じた投票権の付与、可決された提案の自動実行
GameFi(ゲーム×DeFi) Axie Infinity・The Sandbox・STEPN ゲーム内アイテムのNFT化、プレイ報酬の自動分配。スマートコントラクトがゲーム経済圏のルールを執行する

DeFi(Decentralized Finance)は、銀行や証券会社などの仲介機関を介さずに金融サービスを提供する仕組みです。Uniswapのような分散型取引所(DEX)では、スマートコントラクトが流動性プールを管理し、ユーザー同士が24時間自動的にトークンを交換できます。詳しくはDeFi(分散型金融)とは?仕組みと始め方をご覧ください。

NFT(非代替性トークン)は、ERC-721というスマートコントラクト規格によって発行されます。デジタルアートや音楽の所有権をブロックチェーン上で証明し、売買のたびにアーティストへ自動的にロイヤリティが支払われる仕組みも、スマートコントラクトが実現しています。

DAO(分散型自律組織)は、スマートコントラクトによって運営ルールがコード化された組織です。トークン保有者が提案を作成・投票し、可決された場合は自動的に執行されます。人間の判断を介さず透明に運営される点が従来の企業組織との大きな違いです。

STEP 4 スマートコントラクトのリスクと限界|コードバグ・オラクル問題

スマートコントラクトは強力な技術ですが、固有のリスクも存在します。投資や利用前に把握しておくべき主なリスクを解説します。

リスク 内容 対策
コードのバグ 一度デプロイされたコードは基本的に変更不可。バグがあれば資金が永久にロックされたり、攻撃者に抜き取られたりする。2016年のTheDAOハックでは約60億円相当が流出した 第三者によるセキュリティ監査(オーディット)の確認。監査済みプロトコルのみ利用する
オラクル問題 ブロックチェーンはオンチェーンのデータしか参照できない。価格データ・天気・スポーツ結果など外部情報を取り込む「オラクル」が単一障害点になる Chainlinkなど分散型オラクルを採用しているプロトコルを選ぶ
アップグレード不可 不変性はメリットでもあるが、脆弱性が発見された場合に修正できない。プロキシパターンなどで対応するプロジェクトもあるが、中央集権リスクとのトレードオフになる プロジェクトのアップグレード設計を確認する
注意:監査済みでも100%安全とは限らない セキュリティ監査はリスクを低減するが、すべての脆弱性を発見できるとは限らない。TVL(総預け入れ額)が大きいほど攻撃対象として狙われやすい。自己責任の原則のもと少額から利用を開始することが推奨される。
STEP 5 ビットコインとイーサリアムの仕組みの違い【比較表】

ビットコインとイーサリアムはどちらも主要な仮想通貨ですが、設計思想と仕組みが根本的に異なります。スマートコントラクトの有無がその核心です。


左:BTC(送金・価値保存特化のシンプルな設計)/ 右:ETH(チューリング完全なEVMを搭載した汎用プラットフォーム)
キャプション:BTCはデジタルゴールド、ETHは世界のコンピュータとして位置づけられる
項目 ビットコイン(BTC) イーサリアム(ETH)
コンセンサス PoW(プルーフ・オブ・ワーク) PoS(プルーフ・オブ・ステーク、2022年移行)
スクリプト能力 限定的。送金・マルチシグなど基本的な操作のみ チューリング完全。任意の複雑なプログラムを実行可能
発行上限 2,100万BTC(固定) 上限なし(ただしバーン機構で供給を抑制)
ブロック生成 約10分 約12秒
主な用途 価値保存・送金・デジタルゴールド DeFi・NFT・DAO・スマートコントラクト全般
ETF 米国で現物ETF承認済み(2024年) 米国で現物ETF承認済み(2024年)

ビットコインは「デジタルゴールド」として価値保存に特化した設計です。スクリプト機能は意図的に限定されており、シンプルゆえの堅牢性を持ちます。一方イーサリアムは、スマートコントラクトによって「世界のコンピュータ」として機能することを目指した設計です。この違いが、両者の市場における役割分担を生んでいます。

FAQ よくある質問|スマートコントラクト・イーサリアムの仕組み
  • Q スマートコントラクトはどのプログラミング言語で書かれていますか? +
    イーサリアムのスマートコントラクトは主にSolidity(ソリディティ)というプログラミング言語で記述されます。JavaScriptに近い文法を持ち、イーサリアム専用に設計されています。他にVyper(Python系)も使われますが、主流はSolidityです。コードはEVM(イーサリアム仮想マシン)のバイトコードにコンパイルされ、ブロックチェーン上にデプロイされます。
  • Q スマートコントラクトは一度デプロイしたら変更できませんか? +
    基本的にはブロックチェーンの不変性により変更できません。ただし「プロキシパターン」と呼ばれる設計を採用することで、ロジックコントラクトを差し替える形でアップグレードできる場合があります。ただしその場合、管理者がコードを書き換えられるという中央集権的なリスクも生じます。DeFiプロジェクトでは「アップグレード可能かどうか」がリスク評価の重要な指標の一つです。
  • Q スマートコントラクトを使うのに特別なウォレットが必要ですか? +
    MetaMask(メタマスク)などのWeb3対応ウォレットがあれば、ほとんどのスマートコントラクトサービスを利用できます。ウォレットをDeFiサイトや取引所のインターフェースに「接続」することでコントラクトを呼び出せます。ただし、コントラクトとやり取りするたびにガス代(ETH)が必要になるため、ウォレットにある程度のETHを保有しておく必要があります。
  • Q ビットコインにもスマートコントラクトはありますか? +
    ビットコインは限定的なスクリプト機能を持ちますが、イーサリアムのように汎用的なスマートコントラクトには対応していません。ただし近年、Ordinals(オーディナルズ)やBitcoin Layer2(ライトニングネットワーク・Stacks等)の登場により、ビットコイン上でより複雑な処理を実現しようとする動きが活発化しています。それでもイーサリアムのEVMと同等の機能には至っていません。
  • Q スマートコントラクトで詐欺に遭うリスクはありますか? +
    あります。主なリスクは3種類です。(1)ラグプル:開発者が流動性を引き出して逃げる。(2)フィッシング:偽サイトから悪意あるコントラクトへの署名を誘導される。(3)バグ悪用:コードの脆弱性を突かれて資金を抜き取られる。対策として、知名度の高いプロトコル・監査済みコントラクト・公式URLのみを利用する、署名前に内容を必ず確認するという習慣が重要です。

まとめ

スマートコントラクトは「条件が満たされれば自動実行されるプログラム」であり、仲介者なしで契約を履行できるイーサリアムの核心技術です。DeFi・NFT・DAOのすべてがスマートコントラクト上に構築されており、イーサリアムが単なる仮想通貨を超えた「世界のコンピュータ」として機能する理由でもあります。一方でコードのバグや詐欺リスクも存在するため、利用する際は監査済みプロトコルかどうかを確認し、少額から始めることが重要です。

CoinPost App DL