治療薬から毒薬へ:許可はなぜリスクの源となったか

1.パーミットとは?

まずはお金を借りる話から始めよう:

私が友人のジャック・マーから100万ドルを借りたいとする。ジャックはためらうことなく電話を取り、銀行に電話をかけ、自分の身元を確認し、私のために100万ドルの引き出し限度額を承認するよう指示する。銀行はこの承認を記録し、私は銀行を訪れて本人確認をし、承認された金額を引き出すだけでいい。銀行がその承認を見つけられなければ、私の要求は却下される。

では、このプロセスが別の方法(パーミット)でどのように変わるかを探ってみよう。このシナリオでは、私がジャックに100万ドルを要求すると、ジャックは何気なく小切手を取り出し、金額を記入し、サインをして私に渡す。私はその小切手を銀行に持って行き、承認記録がなくても、銀行はジャックの署名に基づいてその小切手を現金化する。

これはApproveとPermitの違いを示している。ERC-20の必須機能であるApproveは、イーサリアムがローンチして以来、広く使われてきました。しかし、なぜERC-2612によって同じ効果を得るためにPermitが後から導入されたのでしょうか?

2.なぜ許可が必要だったのか?

ERC-2612 提案は2019年3月に導入され、2022年10月に最終決定された。その開発は、イーサリアムのガス価格が何度か急上昇した時期と重なった。高騰時の市場の熱狂により、ユーザーはより高速なトランザクションのためにガス料金を多く費やすようになり、1ブロックの優位性でもかなりの利益を意味するようになった。

しかし、この現象はユーザーにとって負担となり、特に資金が少ないユーザーにとっては、Approveに必要な2回のトランザクションプロセスがコスト高になった。Permitの導入により、オフラインでの署名が可能になり、即時のオンチェーン承認が不要になった。この変更は、事前の銀行承認を必要としない小切手の現金化のように、トークン送金と同時に承認を提供できることを意味する。

これはジャックに電話をかける手間を省き、ユーザーの取引手数料を削減するという利点があるように思われたが、不注意にもパンドラの箱を開けてしまった。

3.リスクの急増

Permit以前は、ハッカーはしばしばフィッシングの手法に頼っており、ユーザーにApproveトランザクションの署名を求めていた。ユーザーが誤ってクリックしてしまっても、オンチェーン取引の時間遅延により、新たな取引でその行為を取り消すことができた。

しかし、パーミットはゲームを変えた。ガス代が不要になり、署名だけが必要になるため、ユーザーの警戒心が薄れる。署名はオフラインなので、ハッカーはいつでも好きなときに状況をコントロールし、悪用することができ、最大限の利益を得ることができる。

このシフトの影響は、フィッシングの被害者数の増加や盗まれた金額にも表れている。ScamSnifferによると、以下の通りである:

  • 2023年には、フィッシングによる被害額は2億9500万ドルに達した。
  • 2024年半ばには、この数字はすでに3億1,400万ドルを超えていた。
  • 2024年第3四半期には、あるウォレットがパーミットのフィッシング攻撃の被害に遭い、1万2,000spWETH(約3,000万円相当)が失われるという重大な事件が発生した。

当初はガス代の削減とユーザーエクスペリエンスの向上を目的としていたパーミットを提案した開発者たちも、このような結果は予想していなかっただろう。諸刃の剣のつもりが、鋭利なナイフとなり、ユーザーの資産を取り巻く防護壁を切り裂くことになった。

UniswapのPermit2など、同様のオフライン署名方法が出現しており、オフライン署名への依存度を高め、フィッシング・リスクを増幅させている。

パーミットとは?

4.自分を守る方法

この迫り来る脅威に直面しているユーザーは、損失を軽減するためにいくつかの予防措置を講じることができる:

1.意識を高める

  • エアドロップの誘惑に気をつけろ: エアドロップは魅力的ですが、多くはフィッシングです。参加する前に、必ず複数の情報源からエアドロップの正当性を確認してください。
  • ブラインド・サインを避ける: うっかりフィッシング・サイトに入り、取引画面が表示されたら、取引の詳細を精査してください。Permit、Permit2、Approve、またはIncreaseAllowanceのような用語は、潜在的な認可の問題を示しており、注意が必要です。Keystoneのようなハードウェア・ウォレットは、トランザクションの詳細を解析して表示することで、衝動的な行動を防ぐことができる。

2.ツールを活用する

  • 詐欺スニッファー: このブラウザー拡張機能は、不審なURLを入力する前にユーザーに警告を発し、やり取りを速やかに停止させることができる。
  • 取り消す:Revoke.cashは、ウォレット内のトークン認可記録を表示し、疑わしい認可や無制限の認可を取り消すようユーザーに助言します。定期的に認可をクリーンアップすることで、リスクを最小限に抑えることができます。

3.資産の分離とマルチシグネチャ・ウォレット

卵は一つのカゴに盛るな」という格言は、暗号資産にも当てはまる。重要な資産はKeystoneのようなコールドウォレットに保管し、日々の取引には小さなホットウォレットを使う。こうすれば、たとえ1つのウォレットが危険にさらされたとしても、すべての資産が危険にさらされることはない。

セキュリティを強化するために、マルチシグネチャウォレットはさらなる保護を提供することができる。あらかじめ決められた数のウォレット承認がなければ資産にアクセスできないため、1つでも危殆化したウォレットが全損につながることはありません。

5.結論

Permitがもたらす価値を否定することはできないが、盗難件数の増加は、Permitのリスクがその利点を上回りかねないことを示唆している。かつて普及していたethsign方式がセキュリティ上の懸念から最終的に放棄されたのと同様に、Permitは今、正念場を迎えている。開発者は、今後この方式を強化するか放棄するかを熟慮しなければならない。