DeFiで署名されたトランザクションはスマートコントラクトによって自動実行されます。ブロックに取り込まれた後は、送金を取り消したり巻き戻したりすることはできません。この不可逆性が、利回りより先に確認すべき最初の条件です。
DeFiは自己管理を与える一方で、取消しや返金の手順をなくします
DeFi(decentralized finance、分散型金融)は、ウォレットからのトランザクションによってスワップ、預入、借入が実行されるスマートコントラクト上のオンチェーンサービスです。運営者による取消し手続きはありません。宛先ミス、余分なapprove、誤った取引パラメータは、署名後にブロックチェーンへ記録され、サポートが修正することはできません。つまり、DeFiでは「誰に何を許可し、どの条件で実行するか」を署名前に自分で確認する必要があります。
スマートコントラクトとは、ブロックチェーン上で事前に決められたルールを自動実行するプログラムです。トランザクションを受け取り、条件を確認し、コードどおりにトークンを移動します。そのため、署名されブロックに入った操作は最終的なものとみなされ、ネットワーク内部に「取消し」は存在しません。
この記事の目的: DeFiのリスクを種類ごとに分け、DEXスワップ、担保付きレンディング、報酬トークン型ファーミング、クロスチェーンブリッジ、オンチェーン・デリバティブという具体的な操作に結び付けて理解することです。
中央集権型サービスでは、手動停止、返金規定、不審な出金チェック、サポート対応によって、誤った操作が最終的に引き落とされる前に止まる場合があります。DeFiではスマートコントラクトが署名済みトランザクションをコードどおりに実行し、ユーザーの意図までは確認しません。
資金に部分的な損失も許されない場合、オンチェーン取引の不可逆性は大きな追加リスクになります。たった一度の署名ミスで、トークン残高全体が移動したり、approveによって引き落とし権限を渡したりすることがあります。
DeFiの技術的損失は、コードとインフラに起因します。スマートコントラクトのバグ、オラクル障害、管理キーの侵害、ブリッジ攻撃などです。
DeFiの技術リスク:スマートコントラクト、アップグレード、オラクル、ブリッジ、フロントエンド、RPC
DeFiの技術リスクとは、市場価格の変動ではなく、スマートコントラクトのロジック、コードアップグレード、オラクル(価格ソース)、ブリッジ、アクセスインフラ(WebインターフェースやRPCプロバイダー)の問題によって資金を失うリスクです。スマートコントラクトのエクスプロイト(コードの欠陥を悪用すること)は、攻撃者が同じ操作を繰り返し、コントラクトが受け付ける限り連続したトランザクションで流動性を抜けるため、被害が拡大しやすくなります。利用者側から見ると、監査済みかどうかだけでなく、実装変更の権限、依存先、緊急停止の設計まで確認する必要があります。
1) スマートコントラクトの脆弱性
スマートコントラクトのバグは、ポジション状態や残高の記録順序がトークン移動とずれたときに表面化します。その結果、コントラクトが誤った状態をもとに資産を送ってしまいます。
- Reentrancy(リエントランシー)は、残高更新前にコントラクトが再度呼び出され、払い出しが連続して複数回発生する不具合です。
- 算術や丸め処理の誤りは、連続した呼び出しで繰り返され、差分が積み上がります。
- 権限チェックが欠けていると、管理機能を誰でも呼び出せたり、公開関数から資金を引き出せたりします。
- 転送や差し引きに特殊ルールを持つトークンは通常と異なる挙動をするため、プロトコルが残高や制限を誤って計算することがあります。
このような処理順序では、残高が更新される前に資金が何度も引き落とされる可能性があります。
2) アップグレード、管理キー、ガバナンスの中央集権化
アップグレード可能なプロトコルでは、預入後にロジックやパラメータを変更できます。そのためリスクは元のコードだけでなく、管理キーと更新手順にも依存します。
- multisig(複数署名)のない単独管理キーは、キー漏えいや盗難などのガバナンス侵害リスクを高めます。侵害されると、プロトコルのルールを単独で変更できます。
- timelock(実行遅延)がない場合、パラメータ変更はポジション保有者にとって即時に反映されます。
- 担保係数、手数料、オラクル価格ソースの変更は、ユーザーが何もしなくても清算しきい値を変えます。
- すでに流動性が入った稼働中のプロトコルでコードを変えるため、リリースやアップグレードにはミスが入り込みやすくなります。
預入資金はアップグレード可能なコントラクトに残ります。管理キーの所有者がプロトコルの動作ロジックを変更できる場合、旧バージョンの監査(コードチェック)は更新後のミスを防げません。
3) コンポーザビリティと依存関係の連鎖
DeFi戦略は複数のコントラクトやサービスを呼び出すことが多く、一つの操作の中で複数のスマートコントラクトに順番に処理を行います。そのため外部コンポーネントのrevert(エラーによるトランザクション取消し)やpause(停止)が、ストレス時に出金やポジション管理を止めることがあります。
- エラーは、プロトコルのトランザクション内部で呼び出される外部コントラクトに存在する場合があります。
- ライブラリや統合が増えるほど、一つの預入や一つの出金が依存するアドレスの数も増えます。
- 共通コンポーネント(ライブラリ、ルーター、オラクル)は、複数プロトコルに同時に影響します。
- 多段階の戦略では、一つの障害がトランザクション全体を巻き戻すため、失敗確率が高まります。
一つのトランザクションが複数の外部コントラクトを呼び出す場合、どれか一つの外部コントラクトがrevertすると全体が取り消され、その外部コントラクトが復旧するまで出金が止まります。
4) オラクルと価格の歪み
オラクルはスマートコントラクトへ価格を渡します。価格が歪むと、マージン計算、清算しきい値、ポジションの最終的な支払いが変わります。
- 薄いプールでは、少額の取引でもスポット価格が大きく動くため、価格操作が容易になります。
- TWAP(time-weighted average price、時間加重平均価格)がないと、短時間のスポット価格急騰が更新窓の計算に使われます。
- 価格ソース側で異常取引のフィルタが弱いと、「ノイズ」が担保や債務の計算に持ち込まれます。
- レンディング(担保を入れて借りる仕組み)やデリバティブでは、オラクル価格が低すぎるとコントラクトが担保を自動売却します。そのため価格エラーだけで、市場が実際には下落していなくても担保が売られることがあります。
オラクルが高すぎる価格や低すぎる価格を渡すと、レンディングまたはデリバティブのコントラクトはマージンを再計算し、誤ったしきい値で担保を清算することがあります。
5) クロスチェーンブリッジ
ブリッジは一方のネットワークで資産をロックし、別のネットワークでラップ資産を発行します。そのためリスクは、ネットワーク間の移転を承認するバリデータ、管理キー、補助コントラクトに集中します。
- バリデータやマルチシグの仕組みが複雑になるほど、発行や出金を壊す可能性のあるコンポーネントが増えます。
- ブリッジには流動性が集中するため、ひとつのインシデントで大きな資金量に影響する攻撃対象になりやすいです。
- 新しいブリッジは異常時の実利用検証が少なく、想定外の障害が後から出ることがあります。
- ブリッジ障害は出金を止め、ネットワーク間の一連の操作を分断します。
バリデータ障害や管理キー漏えいが起きると、ラップトークンは裏付けを失い、元のネットワークへ戻せなくなる場合があります。
6) フロントエンドとRPCインフラ
ユーザーはWebインターフェースでトランザクションに署名し、送信や状態読み取りはRPCプロバイダー(ウォレットやdAppサイトがブロックチェーンへ接続するサービス)を通じて行います。そのためインターフェースの差し替えやRPC障害は、署名内容やポジション管理を変えてしまいます。
- 偽のインターフェースは、署名前に別のコントラクトアドレスや別の呼び出しパラメータを差し込みます。
- RPC障害はトランザクション状態や残高を誤表示し、ユーザーが同じ操作を繰り返してgasを二重に払う原因になります。
- dAppサイトへのアクセス制限は、コントラクトがネットワーク上で動き続けていても、通常の管理チャネルを奪います。
- 署名前にウォレット内でコントラクトアドレスと呼び出しパラメータを照合することで、差し替えリスクを抑えられます。
インターフェースがコントラクトアドレスを差し替えると、ウォレットは別コントラクトの呼び出しに署名します。スマートコントラクトはその署名データを実行し、トークンを引き落とします。
DeFiの損失は、ポジションから出る瞬間に確定することがよくあります。gas代、slippage、price impact、報酬トークンの下落が、クローズ後に残る基準資産の量を減らします。
DeFi取引が出口で赤字になる理由
DeFiの損失の多くは入口ではなく出口で確定します。ネットワーク手数料(gas)、price impact(プールの深さ不足による価格悪化)、報酬トークン価格の下落、流動性の悪化は署名後に取り消せません。
DeFi操作は運営者なしでスマートコントラクトが実行するため、署名やパラメータのミスはサポートで修正されません。中央集権型サービスでは、上限、遅延、手動チェック、返金手順が一部の運用リスクを吸収します。DeFiでは、結果はプロトコルのコード、市場流動性、ユーザーが署名したパラメータに依存します。
ハッキングがなくても損失は起きます。入口のトランザクションが承認されポジションが開かれた後、クローズには高いgasが必要になり、流動性低下によって悪い価格でしか出られない場合です。
- ネットワーク手数料と出口のslippageを計算せず、高APY(annual percentage yield、年率利回り)のプールへ入ること。
- インセンティブ終了後にAPYが下がり、手数料収入ではなく報酬として配られていたトークンの価格も下落すること。
- 出口時にgas代が上がり、戦略終了後もアクティブなapprovalsが残ること。
シナリオ:ファームに預けると報酬トークンが得られる。その後、報酬トークン価格が下がり、プール流動性も減る。報酬トークンを基準資産へスワップするとprice impactが大きく、さらに二段階の退出でgasを二回払う。
出口の損失は具体的な項目で構成されます。出金gas、薄いプールでのスワップslippage、報酬発生から売却までの報酬トークン価格下落です。
self-custodyとは、鍵をユーザー自身が持つことです。したがって結果は署名済みトランザクションや署名済みメッセージで決まり、ブロックに入った後は取り消せません。
資金損失は、アクティブなapproveが残り、悪意あるコントラクトや差し替えられたインターフェースが、新しいapproveトランザクションなしにトークン引き落とし権限を使うときに発生します。詳しくは DeFiのapproval phishingを参照してください。
監査は現在のコードバージョンを確認します。しかしアップグレード、オラクル変更、ブリッジ依存は、預入後に清算しきい値や出金ルールを変えることがあります。
監査済みプロトコルでも損失が出る理由
監査はコード上の明白なミスの可能性を下げますが、ガバナンスリスク(アップグレードとキー)、外部依存リスク、流動性流出後の出口リスクまでは消しません。さらに、監査対象は特定時点のコードであり、その後に追加された統合やパラメータ変更が同じ安全性を持つとは限りません。
発行(emission)とは、事前に決められたルール(スケジュール、量、受取先)に従って新しいトークンを発行することです。流動性インセンティブや報酬に使われますが、需要が変わらないまま供給が増えると、報酬トークン価格に下押し圧力がかかります。
- アップグレードとガバナンスは、入った後のポジション条件を変える
- 担保係数や手数料の変更は、ユーザーが何もしなくてもポジションの耐久性を変えます。
- Timelockとmultisigは即時のパラメータ変更リスクを下げますが、更新ミスやキー侵害を完全には防ぎません。
- オラクル価格ソースの差し替えや担保上限の変更は、清算しきい値と安全余裕を変えます。
- 統合はリスクの連鎖に外部コントラクトを加える
- プロトコルは、別の検証レベルや故障モデルを持つブリッジ、ライブラリ、外部流動性ソースに依存する場合があります。
- 外部コンポーネントの障害は、メインプロトコルの機能が正しく動いていても戦略を止めます。
- 操作の連鎖にある外部コントラクトが増えるほど、出金トランザクションがその外部コントラクトのrevertで失敗する可能性が高まります。
- 流動性流出は出口価格を悪化させ、清算を強める
- プールの深さが落ちると、大きな出金ほど価格を強く動かし、出口は期待より安い価格、つまりディスカウントで実行されます。
- レンディングでは、オラクル価格が下がり、担保売却の流動性が薄くなると清算が強まります。
- 発行に依存した利回りは、報酬トークン価格の下落と流動性流出とともに低下します。
脅威マップ、典型的な攻撃、インシデントの確認ポイント: 「DeFiセキュリティ:脅威マップ、事例、防御、チェックリスト」。
コードにバグがなくても経済的損失は起きます。報酬トークンの発行が報酬価格を下げ、impermanent loss(単純保有と比べてプール内資産の価格変化で生じる損失)がLP構成を変え、清算の連鎖が担保を売却するためです。
DeFiの経済リスク:利回り、流動性、ストレスシナリオ
スマートコントラクトが正しく動いていても、利回りが下がり、報酬トークンが安くなり、同じ期間に出口流動性が減ると経済的損失が発生します。
DeFiの経済リスクとは、コードが正しく動いている状態で資本を失うリスクです。損失の源泉は、インセンティブ設計(報酬発行)、流動性の深さ、オラクル価格に基づく清算メカニズムにあります。画面上の利回りだけではなく、出口で基準資産に戻した後にいくら残るかを見なければ、実際の収益性は判断できません。
- 報酬トークン発行による利回り
- 高いAPYは、プロトコルの手数料収入ではなく、新しい報酬トークンの発行によって作られていることがよくあります。
- 発行は報酬トークンの供給を増やします。需要が変わらなければ、報酬トークン価格は下がります。
- 報酬発生より速く報酬トークン価格が下がると、基準資産ベースの最終結果はマイナスになります。
- 手数料収入による利回りは、プロトコル内の取引量に依存するため、より持続的です。
- AMMプールのimpermanent loss
- AMM(automated market maker)では、値上がりした資産の一部が売られ、値下がりした資産が買い増されます。そのため価格差が広がると、単純に保有していた場合より結果が悪くなることがあります。
- impermanent lossは、ペアの一方の資産価格がもう一方から離れ、ポジションが値下がりした資産を多く持つ形で終わると発生します。
- ペアのボラティリティはプール内の比率再配分を速め、パッシブ保有との差を広げます。
- 低流動性ペアでは、各取引の価格変動が大きくなり、出口での損失も強まります。
- 薄い流動性でポジションから出る
- インセンティブ終了後はプールの深さが減り、出口の執行価格が悪化します。
- インターフェース上の価格は実際の執行価格ではありません。執行はブロックに入る瞬間のプールの深さと取引サイズに依存します。
- 薄いプールで大きな数量を動かすとprice impactが目立ち、受け取る基準資産の量が減ります。
- ネットワーク混雑時はgas代が上がり、ポジションを閉じるコストが増えます。
- レンディングの清算と連鎖
- 担保付き借入は、オラクル価格がリスクしきい値に達すると自動的に清算されます。
- 急激な価格変動は多くのポジションのリスクしきい値を同時に越え、大量清算を起こします。
- 担保売却は価格に下押し圧力をかけ、次の清算波を作ります。
- 薄い流動性と不安定なオラクル価格は、清算の連鎖を加速させます。
- ステーブルコインとdepeg
- ステーブルコインのペッグは、準備金、担保、または需給の偏りを吸収するアルゴリズムによって支えられます。
- Depeg(ステーブルコインが目標価格、たとえば1ドルへの連動を失うこと)は、売りが安定化メカニズムと買い戻し市場の深さを上回ると発生します。
- ステーブルコインの高APYは、実収益ではなく補助金(準備金からの支払い、または流動性を集めるためのトークン発行)で作られることが多く、そのためプールから出るリスクと同時に存在します。
- 資本の安全性は、裏付けモデルと出口市場の深さに依存します。
ステーブルコインがペッグを失い、薄いプールでディスカウント売却される場合、ステーブルコインのAPYはdepegを補えません。
- 小さな資金に対するネットワーク手数料
- ネットワーク混雑時はgas代が上がり、入口と出口のコストが増えます。
- 少額資金では、二つのgas代(入口と出口)だけで戦略の利益全体を消すことがあります。
- 頻繁なclaim、swap、rebalanceは総手数料を増やします。
- 高頻度で操作する戦略は、積み上がった手数料によって効率が落ちます。
規制リスクはアクセス経路から来ます。dAppサイトのブロックやRPCプロバイダー停止が、スマートコントラクトが清算を続けている間にポジションのクローズを妨げることがあります。
規制リスク:操作の法的扱いとインターフェースアクセス制限
DeFiの規制リスクはプロトコルコードの外側で発生します。ポジションを閉じる、または追加担保を入れる必要があるタイミングで、dAppサイト、APIプロバイダー、アクセスインフラが制限される場合です。コントラクト自体は動いていても、通常使っている画面や接続経路が使えないだけで、ユーザーにとっては実質的に操作不能になることがあります。
スマートコントラクトはネットワーク上で操作を実行し続けますが、ポジション管理は通常dAppサイトとRPCプロバイダー経由で行います。これらの経路がブロックされると、慣れた画面からトランザクション送信やポジション状態の読み取りができなくなります。
1) オンチェーン操作の法的扱いが不明確
同じオンチェーン操作でも、交換、貸付、デリバティブ発行、金融サービスとして扱われる可能性があります。国や地域ごとに分類が違えば、アクセスや報告の要件も変わります。そのため法的不確実性はポジションの運用リスクになります。
2) インターフェースとアクセスインフラの制限
スマートコントラクトへのアクセスは通常、Webサイト、API、RPCプロバイダーを通じて行われます。これらの入口が制限されると、コントラクトが動き続けていてもポジション管理の方法が変わります。
シナリオ:レンディングポジションを事前に開いていた。その後、Webインターフェースが地域制限される、またはRPCプロバイダーがエラーを返す。スマートコントラクトはオラクル価格を計算し清算を実行し続けるが、慣れた画面からポジションを閉じられなくなる。
3) 税務、報告、運用負荷
DeFi戦略は、スワップ、報酬発生、claim、rebalance、清算などの操作列を作ります。トランザクション数が多いほど、手数料と執行価格の記録が複雑になり、報告ミスのリスクも増えます。
ユーザー起因の損失は署名から生まれます。間違ったネットワーク、誤ったアドレス、unlimited approve、広すぎるslippage(許容する価格悪化幅)は、一つのトランザクションを不可逆なトークン引き落としに変えます。
ユーザーリスク:アドレス、ネットワーク、approve、メッセージ署名、スワップパラメータ
DeFiにおける不可逆な損失の多くは署名に関係します。間違ったネットワーク、誤ったアドレス、余分なapprove、広いslippageは、取消し手続きのないブロックチェーン操作として確定します。
DeFiのウォレットは暗号署名の道具です。トランザクション署名は送金、スワップ、預入、出金を実行します。メッセージ署名は、別のapproveトランザクションなしにトークン引き落とし権限を与えたり、許可を変更したりすることがあります。
1) ネットワーク、アドレス、コントラクトのミス
トランザクション送信前の確認
- 🌐 ネットワーク確認:別ネットワークで署名すると、トークンは別台帳に送られます。別ネットワークの受取アドレスは送信者のものではない可能性があります。
- 🏷️ アドレス確認:受取アドレスを間違えると、資産は他人のアドレスへ送られます。スマートコントラクトには誤送金を返す手順がありません。
- 🧾 コントラクト確認:コントラクトアドレスの差し替えは、approveの相手やスワップロジックを署名前に変えます。
- 🧪 テスト操作:少額トランザクションで、ネットワーク、コントラクトアドレス、スワップ経路を大きな金額の前に確認します。
2) Approveと引き落とし許可
トークンアクセス権限の管理
- 🎚️ 制限付き上限:unlimited approveはトークン残高全体を引き落とす権利を与えます。コントラクトやインターフェースが侵害されると、その権利が実際の引き落としになります。
- 👤 spender確認:許可を受けるアドレス(spender)はプロトコルのコントラクトと一致している必要があります。違う場合、許可は別アドレスへ渡ります。
- 🧰 ウォレット分離:保管用アドレスを分けると、approvalsを出す作業用アドレス上のトークン量を減らせます。
- 🧹 Revoke:古いapprovalsを取り消すことで、操作終了後の引き落とし権限を閉じます。
3) メッセージ署名と隠れた権限
署名前のフィルタ
- ✍️ 意識した署名:プロトコルがメッセージを許可として使う場合、メッセージ署名は別のapproveなしに後から引き落とし権限を作ることがあります。
- 🎁 「claim」への注意:フィッシングページは、トークン引き落とし権限を与えるメッセージ署名を提示することがよくあります。
- 📩 個別連絡を無視:DMの「サポート」アカウントは、署名させるための偽dAppドメインへ誘導することがよくあります。
- 🔗 固定した入口:保存済みアドレスからdAppへ入ることで、ドメインとコントラクトアドレスの差し替えリスクを下げられます。
4) MEV、サンドイッチ攻撃、スワップ執行
取引パラメータの管理
- 📏 厳しめのslippage:大きなslippageは執行価格の幅を広げ、サンドイッチ攻撃を受けやすくします。
- 🧱 数量分割:薄いプールでの大きなスワップはprice impactを増やします。分割すれば各スワップのprice impactを下げられます。
- ⏳ メンプールを考慮:MEV(maximal extractable value、ブロック内のトランザクション順序を変えて利益を得ること)は、ボットが順序を変えて執行価格差を取るときに発生します。
- 🧾 Minimum received:このパラメータはスワップの最低受取量を固定し、執行悪化を制限します。
サンドイッチ攻撃は広いslippageを利用します。ボットがスワップ前に買って価格を上げ、スワップ後に売って基準資産の差額を取ります。
5) 悪意あるトークンとインターフェースの罠
資産購入前のフィルタ
- 🧬 コントラクト照合:同じトークン名でも同じコントラクトとは限りません。スワップで別アドレスのトークンを買ってしまう場合があります。
- 📉 流動性評価:プールの深さが低いと売却価格が悪化し、出口のprice impactが増えます。
- 🧾 売却条件確認:売却税や売却禁止ルールは実際の出口価格を変え、売却を止めることもあります。
- 🚪 出口確認:少額のテスト売却で、トークンが売れること、コントラクトに出口を赤字化するロックや税がないことを確認します。
繰り返されるミスは、ハッキングなしでも損失につながります。unlimited approve、保管と操作を同じアドレスで行うこと、発行ベースのAPYに飛びつくこと、薄いプールでスワップすることです。
DeFiで最も頻繁に繰り返される典型ミス
DeFiの損失が繰り返される原因は主に三つです。アドレスを確認せずWebインターフェースを信用すること、unlimited approveを出すこと、手数料とprice impactを引いた出口を計算せず戦略へ入ることです。
- 便利さのためのunlimited approve
- 無制限の引き落とし許可は、操作終了後もアクティブなまま残ります。
- コントラクトやインターフェースが侵害されると、アクティブなapproveを使って新しい署名なしにトークンを引き落とせます。
- 操作分の上限設定と後のrevokeにより、戦略終了後の引き落とし権限を閉じられます。
- 収益源を確認せず高APYに入る
- APYはプロトコル手数料ではなく、報酬トークンの発行で作られていることがあります。
- 報酬トークン価格は、報酬が発生する速度より速く下落することがあります。
- gasとprice impactを差し引いた後の基準資産ベースで結果を計算すると、表面上のAPYでは見えない戦略の実績が分かります。
- 保管と操作に同じウォレットを使う
- フィッシングや悪意ある署名は、作業用アドレスの全残高へアクセスを開く可能性があります。
- ウォレット分離がないと、approvalsを通じて引き落とせる金額が増えます。
- 保管用アドレスを分けることで、操作に署名しapprovalsを出すアドレス上の金額を減らせます。
- 広いslippageで薄いプールをスワップする
- 広いslippageは、指定した割合だけ悪化した価格でスワップを成立させることを許し、サンドイッチ攻撃を容易にします。
- ネットワーク混雑と流動性低下は、トランザクション取り込みの遅れと執行価格の悪化を引き起こします。
- 数量分割とslippage制限により、price impactとMEVによる損失を抑えられます。
行動面の損失は一連の署名で確定します。FOMOは入口を急がせ、繰り返しのスワップは総gasを増やし、ナンピンは流動性低下時のエクスポージャーを強めます。
行動リスク:FOMO、連続トランザクション、手数料増加
FOMOと過熱した利回りへの参入
FOMOは、価格上昇とAPY急騰の後、すでに出口条件が悪化している段階で戦略に入らせます。
- FOMO(fear of missing out、機会を逃す恐怖)は、価格上昇と見せかけの利回りの後に参入を引き起こします。
- APYは、報酬トークンの発行と流動性流入が続いている間だけ高く保たれます。
- インセンティブが下がると流動性が抜け、出口のprice impactが増えます。
- gasと価格悪化が報酬を食い尽くすと、出口で損失が確定します。
FOMOによる参入は、出口リスクが潜在利回りをすでに上回っているタイミングで起きがちです。
署名時のコントロール錯覚
署名はコントロールしている感覚を与えますが、スマートコントラクトはユーザーの意図を確認せず、パラメータを文字どおり実行します。
- インターフェースは署名前にコントラクトアドレスや操作パラメータを差し替えることがあります。
- Approveとslippageは、spenderやminimum receivedを照合しないまま承認されがちです。
- スマートコントラクトは、取消しなしで署名されたパラメータを実行します。
- 署名ミスは、トークン引き落としや不利な価格での交換になります。
署名は判断を最終確定します。誤ったパラメータはすぐに金融結果になります。
赤字戦略のナンピン
ナンピンは、基本条件がすでに悪化している戦略へ資金を増やします。
- ナンピンは、報酬トークン発行による収益戦略へのエクスポージャー(特定シナリオに依存する資本比率)を高めます。
- 報酬トークン価格の下落は、発生した報酬の最終価値を下げます。
- 操作回数の増加は総gasを増やします。
- 薄い流動性の条件では、新しいトランザクションごとに損失が固定されます。
戦略の基礎経済がすでに合わない場合、一連の操作は損失を拡大します。
署名ミスに対する許容度がゼロなら、DeFiは適しません。間違ったネットワークや上限なしapproveは、返金なしにトークン残高全体を失わせる可能性があります。
DeFiと取消し・サポート付きインフラを選ぶ基準
DeFiでは、ネットワーク、コントラクトアドレス、approve、slippageの一つのミスが署名によって確定し、プロトコル側では取り消せません。そのためミスのコストは、逃したAPYより大きくなることがよくあります。
停止要因
- 🧨 目的上、資本の部分損失も許されない。
- 🧾 取消し規定と返金手順が必要である。
- ⏱️ approvals、コントラクトアドレス、署名パラメータを定期的に確認する時間がない。
- 🎯 正確な執行価格が必要で、price impactやMEVが取引結果を変える。
- 🔐 ウォレット分離がなく、フィッシングや悪意ある署名のリスクが高い。
- ⛽ 資金量がgasに対して小さく、手数料が結果を食い尽くす。
DeFiが通常許容される条件
- 📏 ポジション上限と最大許容損失が決まっている。
- 🧰 保管用アドレスが、残高を限定した作業用アドレスと分かれている。
- 🎚️ Approveは上限付きで出し、終了後に取り消す。
- 🚪 流動性と利回りが低下したときの出口条件がある。
サポート付きインフラは、上限、出金遅延、返金規定によって運用ミスの損害を小さくします。DeFiは運用ミスを不可逆なオンチェーントランザクションへ変えます。
DeFiは、取消しと復旧が必須のシナリオに向きません。seedフレーズ喪失、インターフェース差し替え、ネットワークミスは、サポート規定で補償されません。
DeFiが運用リスクを高めるシナリオ
DeFiは、操作取消し、アクセス復旧、署名パラメータの手動確認なしで予測可能な執行が必要な場合に、運用リスクを高めます。特に大きな資金、短い判断時間、慣れていないネットワーク、初めて使うプロトコルが重なると、利回りより先に運用ミスのコストを考えるべきです。
リスク許容度が低い大きな資本
資本が大きい場合、取消しや返金がないことにより、一度の署名ミスが全体結果に対して致命的になります。
- 一つのプロトコルやネットワークに資金を集中させると、潜在損害額が大きくなります。
- キー、端末、インターフェースの侵害は、作業用アドレスの全残高に影響します。
- 一つの誤ったトランザクションが、返金メカニズムなしに資産を他人のアドレスへ移動します。
大きな金額では、受取アドレスの一つのミスやunlimited approveだけで、作業用アドレス全体に近い資金を失う可能性があります。
執行速度と正確性が重要
DeFiでは結果がメンプール、プールの深さ、MEV活動に依存するため、執行価格がインターフェース表示と違うことがあります。
- slippageとネットワーク混雑は執行価格を悪化させます。
- 薄いプールでの大きな数量はprice impactを強めます。
- トランザクションがブロックに入る遅れは、署名から実行までの間にプール状態を変えます。
取引に固定価格と最小遅延が必要な場合、メンプール、price impact、MEVが画面上の価格から執行価格を変えることがあります。
シンプルな記録と透明な報告が必要
DeFiのアクティブ戦略は、数十件のトランザクションと各操作ごとのネットワーク手数料を生みます。そのため、各トランザクションの内訳を確認しなければ記録できません。
- Claim、rebalance、部分執行は、取得単価や結果の計算を複雑にします。
- 複数ネットワークやブリッジは、別々の手数料と別々の記録イベントを追加します。
- gas手数料や執行価格の記録ミスは、税務や報告上の結果を歪めます。
戦略が数十件のトランザクションを生む場合、報告は各gas手数料と各執行価格をトランザクションハッシュごとに追う作業になります。
運用セキュリティが足りない
DeFiの安全性はユーザーの鍵と署名に依存します。端末やブラウザの保護が弱いと、直接的な資金損失につながります。
- 公共端末や拡張機能は、インターフェース差し替えやウォレットセッション盗難のリスクを高めます。
- seedフレーズをオンライン保存すると、キー侵害が容易になります。
- ウォレット分離がないと、approvalsを通じて引き落とせる金額が増えます。
端末やブラウザが侵害されている場合、攻撃者はウォレットにapproveや送金へ署名させ、作業用アドレスからトークンを引き落とせます。
サポートとアクセス復旧が必要
self-custodyでは、seedフレーズの喪失はアドレス支配の喪失を意味します。プロトコルは鍵を復元できず、所有状態を取り消せません。
- 鍵保管ミスはサービスによって補償されません。
- バックアップ設計がない場合、アクセスを完全に失うことがあります。
- アクセスの引き継ぎや相続には、別の法的・技術的設計が必要です。
seedフレーズを失うと、ブロックチェーンには鍵復旧手順がないため、そのアドレスへのアクセスは永久に失われます。
資金量がネットワーク手数料に見合わない
gasが高いと、少額資金では入口、管理、出口の手数料が金額の大きな割合を占め、戦略の意味が薄れます。
- 頻繁な操作では手数料が結果を上回ります。
- 一度の署名ミスで戦略効果はゼロになります。
- 操作回数が増えるほど相対コストも増えます。
預入額が小さい場合、二つのgas代(入口と出口)だけで、画面上のAPYが高く見えても収益全体を食い尽くすことがあります。
DeFiの損失は操作に紐づきます。AMMスワップはMEVとprice impact、レンディングはオラクルと清算、ブリッジはバリデータの影響を受けます。
DeFiが損失源になりやすい操作と停止要因
DeFiリスクは具体的な操作で表面化します。AMMスワップは薄い流動性で執行価格を悪化させ、レンディングはオラクル価格で清算を起こし、ファームは報酬発行と出口流動性に依存し、ブリッジはバリデータ障害で出金を止めます。
AMMプールでのDEX交換
AMMはプール内資産の比率から価格を作るため、スワップサイズがプールの深さに対して大きいほどprice impactが増え、執行価格が悪化します。
✅ メリット
- self-custodyで資産をカストディに預けない。
- アカウントやKYCなしで交換できる。
- 取引所に上場していないトークンへアクセスできる。
❌ デメリット
- 中規模から大規模の数量ではMEVやサンドイッチ攻撃を受けやすい。
- 浅いプールでは執行価格が悪化する。
- 偽トークンコントラクトや偽プールアドレスのリスクがある。
レンディングと担保付き借入
レンディングには清算リスクがあります。オラクル上の担保価格が下がると、ストレス時の市場流動性で担保が強制売却されます。
✅ メリット
- 流動性の高い資産で利息収入を得られる。
- 基準資産を売らずに担保付きで借りられる。
- 金利は借入需要に応じて変わる。
❌ デメリット
- 価格急変時に自動清算される。
- オラクル価格の正確性に依存する。
- ガバナンスパラメータ(手数料、しきい値、上限)の変更リスクがある。
過剰担保は、オラクル価格上のリスクしきい値までの距離を広げるため、清算確率を下げます。
Yield farmingと高APY戦略
Yield farmingは手数料収入とトークンインセンティブを組み合わせます。そのため最終結果は報酬トークン価格、発行速度、出口流動性の深さに依存します。
✅ メリット
- 手数料とトークンインセンティブから収益を得られる。
- 取引所に預けずに入口と出口を管理できる。
- プロトコル初期の新しい収益モデルへアクセスできる。
❌ デメリット
- インセンティブ終了後にAPYが下がる。
- ボラティリティの高いペアではimpermanent lossが起きる。
- 若いプロジェクトでは、運営側の流動性引き抜きによるrug pullリスクがある。
ファームの収益モデルを壊すもの
- LP(流動性提供者)の流出とプールの深さ低下。
- 報酬トークン価格が報酬発生より速く下落すること。
- 基準資産ベースの最終結果を減らすgasとrebalance。
- 戦略の連鎖にある外部コントラクトのバグや停止。
ブリッジとクロスチェーン操作
クロスチェーンブリッジはリスクをバリデータと管理キーに集中させます。ブリッジの侵害や障害は資産の出金を止め、ネットワーク間の操作列を分断します。
✅ メリット
- 複数ネットワークの流動性へアクセスできる。
- 手数料と速度に応じてネットワークを選べる。
- 資本を複数エコシステムへ分散できる。
❌ デメリット
- 流動性が一か所に集中する。
- セキュリティモデルが複雑で、バリデータに依存する。
- ネットワーク間移動では運用ミスのリスクが増える。
オンチェーン・デリバティブとレバレッジ取引
オンチェーン・デリバティブでは、ポジションはオラクル価格で計算されます。レバレッジを使うと安全余裕が小さくなるため、価格、流動性、執行のどれかの誤差が強制決済に早くつながります。
✅ メリット
- カストディに預けずにヘッジできる。
- スマートコントラクト経由でデリバティブへアクセスできる。
- オンチェーン戦略と組み合わせやすい。
❌ デメリット
- 急なボラティリティで清算が連鎖する。
- 結果がオラクル価格に依存する。
- 市場リスクとプロトコルリスクが重なる。
DeFiから出るべきシグナルは、プールの深さ低下、gas上昇、APY低下、報酬トークン下落、コントラクトアップグレード、インターフェース障害といったパラメータで測れます。
DeFiポジションから出るべきシグナル
- 手数料や取引量が伸びないのにAPYだけ上がる
- プロトコル手数料や取引量が伸びていないのにAPYが上がっている。
- APYの源泉が発行や一時的インセンティブへ移っている。
- 報酬トークン価格が、得られる報酬より速く下落している。
- スワップ量と手数料収入が増えていないなら、APYは発行に依存しています。
- 流動性低下で出口価格が悪化している
- プールの深さが入口時より低い。
- 出金には期待価格に対してprice impactによるディスカウントが必要になる。
- ストレス時にはgasが上がり、出口コストが増える。
- 同じ出金量で、入口時より受け取る基準資産が少ないなら、price impactは増えています。
- アップグレードがプロトコルのパラメータを変える
- 新条件を確認する十分な時間なしにアップグレードが出る。
- 手数料、担保係数、清算パラメータが変わる。
- 新しい統合、ブリッジ、外部依存が追加される。
- timelockなしの管理キーでコントラクト実装が変わる場合、アップグレードリスクは高まります。
- ポジション管理へのアクセスが不安定になる
- インターフェースがエラーを出し、RPCがトランザクション状態を誤表示する。
- 地域制限やネットワーク混雑がポジションのクローズを妨げる。
- 時間不足によって署名時の運用ミスが起きやすくなる。
- 新しいドメインや不安定なRPC経由でポジションを閉じる必要がある場合、署名ミスのリスクが上がります。
プール流動性が落ち、利回りが下がり、インターフェースへのアクセスも悪化しているなら、ポジションのクローズはgas面でも執行価格面でも不利になります。
DeFiはスマートコントラクトとウォレット署名で操作を実行します。CEXは取引所の口座上で操作を処理し、上限、出金遅延、返金規定を適用できる場合があります。
DeFi vs CEX:リスクが低い場所と再配分される場所
DeFiでは取引結果が署名したパラメータで完全に決まり、取消しはできません。一方CEXでは、プラットフォームが介入して誤った出金を止められる場合があります。つまり両者の違いは「どちらが常に安全か」ではなく、リスクがユーザーの署名管理へ寄るのか、プラットフォームの運用と規約へ寄るのかという違いです。
DeFiはウォレット署名のパラメータどおりに取引を実行し、CEXは内部オーダーブックと残高管理で処理します。DeFiでは誤ったトランザクションはブロックに入ると不可逆ですが、CEXでは最終的な引き落とし前に出金停止や返金ができることがあります。
| 基準 | CEX | DeFi |
|---|---|---|
| 資産保管 | キーはプラットフォームが管理する(custodial) | キーはユーザーが持つ(self-custody) |
| ミス修正 | 規定に基づく返金手順が可能な場合がある | トランザクションはブロックに入ると不可逆 |
| ハッキングリスク | 頻度は低いが大規模になり得る中央集権型インシデント | 個別プロトコルやインターフェース単位のインシデント |
| 取引執行 | 価格は板と取引所ルールに依存する | 価格はプールの深さ、price impact、MEVに依存する |
| アクセスとコンプライアンス | KYC/AMLと規制手続き | アカウント不要だが、インターフェースやRPCのブロックリスクがある |
| 透明性 | プラットフォーム規約と運営者の報告 | 公開トランザクションと、アドレス検証時に確認できるコード |
✅ DeFiが優れる場面
- カストディなしで資産を管理できる。
- 取引所上場なしにオンチェーンツールへアクセスできる。
- アドレスと署名パラメータを確認したうえで、スマートコントラクトにより戦略を自動化できる。
❌ CEXの方が通常強い場面
- 遅延が少なく正確な価格が必要な大口操作。
- サポート、アクセス復旧、規定が重要なシナリオ。
- 最終的な引き落とし前に誤った出金を止めたいシナリオ。
アクセスモデルと執行リスクの比較: DEX vs CEX:保管、執行、アクセスの違い。
署名前の確認は、誤ったアドレスへのトークン送付や誤ったspenderへのapproveを減らします。ネットワークとコントラクトアドレスの照合、approve内のspender確認、slippageとminimum receivedの制限が重要です。
DeFiに入る前の確認項目:署名パラメータと執行制限
署名前の確認は、間違ったネットワーク、コントラクトアドレスの差し替え、余分なapprove、悪い執行価格を固定する広すぎるslippageの可能性を下げます。この確認は一度だけの作業ではなく、新しいルート、新しいプール、新しいコントラクト、または大きな金額を扱うたびに繰り返すべき安全手順です。
署名パラメータの基本確認
- コントラクトアドレスと操作ネットワークの一致を確認する。
- 流動性の深さを評価する。薄いプールで大きな数量を動かすとprice impactが増える。
- slippageを制限し、minimum receivedを照合する。
- アクティブなapprovalsと引き落とし上限を確認する。
- 新しいルートでは最小数量でテスト操作を行う。
預入とファーム向けの追加確認
- 利回りの源泉を特定する。手数料、借入金利、報酬発行のどれか。
- アップグレード、管理キー、multisig、timelockを確認する。
- 報酬トークンの配分と大口保有者への集中リスクを評価する。
- クロスチェーン戦略では、ブリッジとステーブルコインのリスクを評価する。ブリッジ障害やステーブルコインのペッグ喪失は出口を止めることがあります。
- gasとprice impactを、基準資産ベースの期待利益と比較する。
高リスクの兆候
- 運用履歴がない新プロトコルが「保証」を約束している。
- 手数料収入や借入金利の説明なしに、ステーブルコインで二桁利回りを示している。
- 報酬トークンの発行が多く、持続的な需要がない。
- timelock、multisig、オラクル、アクセスモデルを示さず、安全性をスローガンで説明している。
- 操作内容と合わないアクセスを求める署名(たとえば報酬claimの代わりにトークン引き落としを求める署名)。
DeFiの損失を下げるには制限が必要です。作業用アドレスの資金を少なくし、approveは操作金額だけにし、ブリッジやルート上の外部コントラクトを減らします。
DeFi利用時のリスク低減方法
1) 役割ごとにウォレットを分ける
- 保管用アドレス。 保管用アドレスにはアクティブなapprovalsを残さず、dAppとの通常操作も行いません。
- 作業用アドレス。 作業用アドレスにはリスク許容額だけを置き、操作署名を行います。
- テスト用アドレス。 テスト用アドレスでは、新しいプロトコルやルートを最小額で確認します。
2) 引き落とし権限の管理
- Approveは操作に必要な具体的数量に限定し、コントラクトが全残高を引き落とす権利を持たないようにします。
- 使わないapprovalsは戦略終了後に取り消し、引き落とし権限を閉じます。
- 未検証コントラクトへのapproveは、コントラクトやインターフェースが侵害されたときの損失規模を大きくします。
approval phishingのシナリオとアクティブなapprovalsの悪用方法: 「DeFiのApproval phishing:トークンを盗める隠れた許可」。
3) MEVと流動性を考えた取引執行
- Slippageは執行価格の範囲を制限し、サンドイッチ攻撃の影響を小さくします。
- 数量分割は薄いプールでのprice impactを下げます。
- 複数プールを通るスワップルートは、関与するスマートコントラクト数を増やします。一つのコントラクトがrevertするとトランザクションは取り消され、gasは消費されます。
4) 集中と複雑さを制限する
- 一つのプロトコルへ資本を集中させると、一つの脆弱性やアップグレードに依存する金額が大きくなります。
- ペッグ喪失やブリッジ障害が出口を止めるなら、一つのブリッジや一つのステーブルコインを戦略の唯一の支点にすべきではありません。
- 経路の構成要素を減らすほど、出金が依存する外部コントラクトの数も減ります。
DeFiは、署名と許可を管理できる場合に向いています。ネットワークとコントラクトアドレスの確認、上限付きapprove、分離した保管アドレス、流動性低下時の出口条件が必要です。
署名を意識して管理できる人にDeFiが向く理由
DeFiは、トランザクションの不可逆性を受け入れ、コントラクトアドレス、approvals、スワップパラメータ、出口条件を管理できる人に向いています。これがないと、self-custodyは署名ミスを直接的な資金損失に変えます。逆に、手順を分け、上限を決め、退出条件を先に置けるユーザーにとっては、DeFiは柔軟なオンチェーン実行環境になります。
運用セキュリティを整えているユーザー
アドレス分離、approvals管理、署名パラメータ確認により、一つのインシデントで失う可能性のある金額を制限できます。
- 保管用アドレスは、署名を行う作業用アドレスから分離されている。
- Approvalsは上限付きで出し、操作後に取り消す。
- 流動性の深さが下がり出口価格が悪化したら、ポジションを縮小する。
アドレス分離と上限付きapproveは、誤署名やコントラクト侵害によって引き落とされる可能性のあるトークン量を減らします。
self-custodyとオンチェーン市場への直接アクセスが必要なトレーダー
オンチェーン取引はプールへ直接アクセスできますが、結果はプールの深さとトランザクション執行パラメータで決まります。
- 中程度の数量ならAMMプールでのprice impactを抑えられます。
- 出口条件により、APYと流動性が下がったときに閉じるタイミングを固定できます。
- Slippageとminimum receivedは執行価格の範囲を制限します。
スワップの執行価格はプールの深さとslippageに依存します。流動性が薄い場合、同じスワップ数量でもブロック内で実行された後に受け取る基準資産が少なくなります。
プロトコルの依存関係マップを確認するユーザー
収益源とリスク点(オラクル、ブリッジ、アップグレード、インターフェース)を確認すると、外部コントラクトやアクセスインフラによって出金が止まる戦略へ入る可能性を下げられます。
- 収益を手数料と発行に分けることで、手数料収入と報酬トークンによる補助を区別できます。
- オラクルと担保係数の確認により、オラクル価格による清算リスクが見えます。
- ブリッジと統合の確認により、どの外部コントラクトが出金を止め得るか分かります。
オラクル、ブリッジ、アップグレードを確認すると、出金と清算しきい値計算がどの外部アドレスやキーに依存しているかを把握できます。
FAQでは、DeFi vs CEX、approve、slippage、impermanent loss、ブリッジ、少額利用、レンディング、初心者の典型ミスという八つの質問に答えます。
DeFiのリスクと制約に関するFAQ
DeFiは中央集権型取引所より安全ですか?
多くの場合、そうではありません。ほとんどのユーザーにとって、DeFiは署名やトランザクションパラメータのミスが不可逆であるため、より高い運用リスクを伴います。
DeFiの損失は、スマートコントラクトのバグ、インターフェース差し替え、ユーザーの署名ミスで発生します。CEXの損失は取引所ハッキング、プラットフォーム規約による出金停止、運営側のミスに関係しますが、上限、遅延、出金停止手順によって損害を下げられる場合があります。
approve権限が重要リスクとされる理由は?
どの程度のslippageなら許容できますか?
市場が上がっていても流動性プールで損失は出ますか?
なぜブリッジはクロスチェーンで最も脆弱な要素と見なされるのですか?
ブリッジには、バリデータ、管理キー、コントラクトロジック、ラップ資産発行メカニズムという複数の故障点が同時に集まるためです。
バリデータが停止する、管理キーが漏れる、コントラクトが正しく動かないなど、どれか一つが壊れるだけで、ラップトークンは元資産へ交換できなくなり、資金の出金が止まることがあります。
少額でDeFiを使う意味はありますか?
レンディングは安定して見えるのに、なぜ損失につながりやすいのですか?
DeFi初心者の損失は何から始まりますか?
DeFiには取消しも返金もありません。署名は送金を確定し、コード、オラクル、ブリッジ、流動性のリスクが重なると損失はさらに大きくなります。
DeFiが本当に適さない場面
DeFiは、操作取消し、正確な執行価格、一度の署名ミスによる損害最小化が必要な場合に悪い選択になります。
DeFiは鍵の管理をユーザーに残しますが、取消し規定、手動確認、返金手順をなくします。鍵、署名、approvals、アドレス検証が、資産と不可逆なミスの間にある唯一の防壁になります。そのため「使えるか」よりも先に、「間違えたときにどこまで失ってよいか」「どうやって出口を確認するか」を決めてから入る必要があります。
プロトコルアップグレード、歪んだオラクル価格、プール流動性の低下、高いgasが同じ時期に重なると、ハッキングなしでも出口価格とポジション管理能力が悪化して損失が発生します。
ポジションが大きい、署名前にネットワークやアドレスを確認しない、またはネットワーク混雑と薄い流動性の中で正確な執行価格が必要な戦略では、DeFiを避けることで不可逆な損失リスクを下げられます。
- 依存関係を減らす。 プロトコルやブリッジの数を減らすほど、出金が依存する外部コントラクトの数も減ります。
- 役割ごとにアドレスを分ける。 保管用アドレスは、作業用アドレスのapprovalsで引き落とされ得る金額を減らします。
- 基準資産ベースで結果を評価する。 画面上のAPYが高く見えても、gasとprice impactは基準資産ベースの最終結果を減らします。
- 担保バッファを持つ。 担保バッファは、オラクル価格上の清算しきい値までの距離を広げます。
DeFiではスマートコントラクトが取消しなしに署名を実行します。返金規定と手動確認を持つインフラは、出金や送金時の運用ミスによる損害を小さくします。