用語集

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

中級 · 読了時間:9分
What Is a Smart Contract?

スマートコントラクトとは、ブロックチェーン上に保存されたプログラムです。 特定のコントラクトアドレスに、コード(何ができるか)と状態(いま何を保持しているか)があります。

定義

スマートコントラクトとは、ブロックチェーン上に保存されたプログラムです。特定のコントラクトアドレスに、コード(何ができるか)と状態(いま何を保持しているか)があります。

平易に言うと:

スマートコントラクトは、誰かが呼び出したときに動くオンチェーンのソフトウェアです。 同じ入力、同じルール — 実行するのはネットワークであり、係員ではありません。

トレーダーが気にするのは、ウォレット優先の市場の多くがコントラクト呼び出しだからです。スワップ、入金、そして多くの「承認」は、あるアドレス上のコードが、そのルールのもとで価値を動かしたりアローワンスを変えたりすることを、あなたが許可している行為です。

取引における意味

本当の取引の問い

「DEXはスマートコントラクトを使う」と知っているのは、ラベルにすぎません。役に立つ問いは次です:

いま呼び出しているコントラクトはどれか、署名したあとにトークンやポジションに対して何ができるか、そしてその結果を理解したうえでガス代を払う価値があるか?

少なくともおおよそ答えられないなら、会場を取引しているのではなく、ボタンを信頼しているだけです。

呼び出しが実際に走る流れ

  1. 開発者がバイトコードをデプロイします。チェーンがそのコントラクトにアドレスを与えます。
  2. あなた(または使うルーター)が、そのアドレスを対象にし、関数名と入力を指定したトランザクションを送ります。
  3. バリデータ/プローバが同じ論理を実行し、結果に合意します。
  4. 残高、プール準備金、アローワンス、またはポジションがオンチェーンで更新されます。その決済は、通常あなたにとって最終です。

簡単な心のモデルは自動販売機です。正しい支払いと選択 → 商品;誤った入力 → 商品なし。機械は「親切にしよう」と決めません。ルールを実行します。スマートコントラクトも、金融状態を伴う同じ発想です。

トレーダーが毎日コントラクトに出会う場所

UIで感じる操作裏でよく起きること
ウォレット接続アプリがあなたのアドレスを読む;通常はコントラクトへの支出許可ではない
トークン承認あとでそのトークンを引き出せるよう、spenderコントラクトへのアローワンスを設定する
スワップ/取引ルーターまたはプールコントラクトを呼び出す;その計算と権限に従いトークンを動かす
入金/出金ボルトまたは証拠金コントラクトのルールのもとで資産をロック/解放する
クレーム/ミント/「検証」プロンプトしばしばコントラクト呼び出し、または権利を与える署名 — 高い注意として扱う

ウェブサイトはリモコンです。資金に触れ得る機械はコントラクトです。

計算例:ひとつのスワップクリップ

ウォレット優先の会場で、USDCでTOKENを買いたいとします。

  1. ルーターに権限が必要なら、まずそのルーターコントラクト向けにUSDC支出を承認します(または同種の権限を与えるパーミット型の署名)。
  2. ルーターまたはプールを対象にしたスワップトランザクションに署名します。
  3. コントラクトがアローワンス、曲線またはマッチング規則に沿った価格、コードどおりの手数料を確認し、新しい残高を書き込みます。
  4. 実行のためにガス代を払います。呼び出しがリバートしても、トークンは動かないことがあります — ただしガス代は消えることがあります。

アプリの中の魔法が取引を完了したのではありません。あなたの鍵が呼び出しを許可したあと、コントラクトが完了しました。

短い取引シーンを二つ

シーンA — 同じロゴ、違うコントラクト。

フィッシングサイトが馴染みのDEXレイアウトを複製します。接続し、いつもの承認のように見えるものに署名します。spenderアドレスは本物のルーターではなく、攻撃者のコントラクトです。UIのブランドは演出でした。アローワンスは本物です。ファビコンだけでなく、トークン・spender・金額を必ず読んでください。

シーンB — 「不変」な製品、アップグレード可能な中身。

あるプロトコルが監査済みコントラクトを宣伝します。あなたが使うアドレスはプロキシです。呼び出しは安定した正面アドレスに当たりますが、管理者はあとでそのプロキシを新しい論理へ向け直せます。初日の実装バイトコードが問題なくても、アップグレード鍵という信頼面は残ります。実務の判断は「プロキシは決して使うな」ではありません。「論理が変わり得るか、誰が変えられるか」を知り、それに合わせてエクスポージャーを測ることです。深い搾取カタログは、スマートコントラクトリスクに属します。

不変性、アップグレード、ファイナリティ

  • 既定の物語: いったんデプロイされると、そのバイトコードは場所で静かに自己書き換えしません。バグは、ユーザーが移行するか呼び出しをやめるまで残ります。
  • アップグレード可能な物語: 多くの本番システムは、プロキシアドレス(呼び出す先)と実装論理(動く中身)を分けます。実装の差し替えはバグを直せます — 一方で、管理者やガバナンスの制御のもとでルールも変えられます。
  • トレーダーにとってのファイナリティ: 決済済みの悪意ある流出、誤った承認、悪いスワップ経路は、サポートチャットではほとんど取り消されません。コード実行にはチャージバック窓口が付きません。

オラクルとその他のコントラクト(軽く触れる)

コントラクトはオンチェーン状態をよく見えます。価格や外部事実のために、多くのコントラクトはオラクルや他のコントラクトを必要とします。リスクは「このSolidityファイルひとつ」だけではありません — あなたのポジションが依拠するコードとデータ依存の束です。コンポーザビリティ(コントラクトがコントラクトを呼ぶこと)は有用性を増やし、面も増やします。

署名前の設計の動き

  1. UIとアドレスを分ける。 公式ドキュメントやエクスプローラー由来の検証済みリンクと既知のコントラクトアドレスを優先する。
  2. 権限を読む。 承認とパーミットの流れは、spenderに持続する力を与えます。無制限アローワンスは便利ですが、尾が長くなります。
  3. 最初の接触のサイズを測る。 新規や未監査のコントラクトには、フルサイズの確信ではなく小さなクリップを。
  4. ガス代とリバートを予算化する。 実行コストは取引の一部です。繰り返す失敗実験も、なお有料の実験です。
  5. 論理が動けるか問う。 プロキシ+管理者は、凍結された実装とは違う信頼モデルです。
  6. 不透明な署名では止める。 ウォレットが解読不能なデータを示し、賭け金が大きければ、ブラインド署名しない — より明確な詳細を待つか、見送る。

edgeXのようなウォレット優先の会場では、習慣は具体的です。すべての取引経路はコントラクト経路です。マーケティングページではなく、コードが資金を動かす前提で署名してください。

混同しないでください

  • スマートコントラクト ≠ 従来の法的契約。 オンチェーンコードはルールを実行します。「コントラクト」という語があるだけでは、自動的に裁判所で執行可能な合意にはなりません。法的効果は管轄と事実に依存します。本ページが教えるのは、トレーダーが触る技術オブジェクトです。
  • スマートコントラクト ≠ ハック不能。 不変性は、デプロイ済み論理をその場で直しにくいという意味です。論理が正しかったという意味ではありません。バグ、悪い権限、敵対的なアップグレードがあるからこそ、スマートコントラクトリスクが独自トピックとして存在します。
  • スマートコントラクト ≠ ウェブサイト。 フロントエンドは嘘をつき、地域制限し、消えることがあります。アローワンスと残高は、コントラクトとあなたの鍵にあります。
  • スマートコントラクト ≠ トークンそのもの。 トークンコントラクトは資産のルールを定義します。ルーターやプールは、承認して呼び出す別のコントラクトです。
  • スマートコントラクト ≠ トークン承認。 承認は、spenderを名指しする権限記録です(多くの場合トークンコントラクト内)。spenderはふつう別のスマートコントラクトです。トークン承認とは を参照してください。
  • スマートコントラクト ≠ ガス代。 ガス代は、コード実行や価値移転の実行手数料です。コントラクトは、その手数料がしばしば動かす対象です。

次のステップに進みますか?

このページの公式リンクから登録または取引に進めます。

edgeXで取引を始める

免責事項

本コンテンツは学習を目的としたものであり、投資助言ではありません。デジタル資産やデリバティブの取引にはリスクが伴います。取引の前に商品内容を理解し、ご自身の状況を踏まえてご判断ください。