鏈上 DeFi 世界,又雙叒叕一次出現了上億美元等級的安全事故。
4 月 18 日,攻擊者利用 Kelp DAO 的 LayerZero 路由中 1-of-1 DVN、且沒有 optional verifiers 的配置,偽造跨鏈訊息,使合約錯誤釋放 116500 枚 rsETH,導致在不同損失分攤情境下,Aave 面臨的潛在壞帳區間約為 1.237 億至 2.301 億美元。
客觀而言,這不僅是 2026 年至今規模最大的一次 DeFi 安全事件,更關鍵的是,它擊穿了整個產業此前預設接受的一種架構假設:為了效率、流動性與收益,把越來越多的安全,悄悄押注在少數幾個預設可信的中間層上。
一、Kelp DAO 事件背後,去中心化機制的失守
如果只把 Kelp DAO 事件理解成一次普通的鏈上安全風波,很容易低估它對整個 DeFi 結構性風險的提示意義。
Kelp DAO 作為以太坊生態中的 Liquid Restaking(流動再質押)協議,理論上使用者只要把 ETH 存入,就能拿到 rsETH 作為憑證。這張憑證不僅可以在主網流轉,也被 LayerZero 的 OFT 標準封裝後,部署在 Base、Arbitrum、Linea、Blast、Mantle、Scroll 等 20 多條鏈上。
也就是說,以太坊主網那一側的跨鏈合約保留著全部 ETH 儲備,而其他鏈上的 rsETH,本質上只是一張張「對主網儲備的提貨單」。這也意味著,該套系統之所以能成立,前提就在於「主網鎖定數量始終大於等於 L2 鏈上鑄造數量」這一錨定關係不能被破壞。
而攻擊者擊穿的,恰恰就是這條看似樸素卻極其關鍵的底層約束——他直接偽造了一條「合法的」LayerZero 跨鏈訊息,讓主網橋接合約相信這是從其他鏈合規發來的兌付指令,然後放行了 116500 枚 rsETH。
問題的關鍵,就藏在 LayerZero 的驗證配置裡。Kelp DAO 採用的是 1/1 DVN(去中心化驗證者網路)配置,使得一個驗證節點的簽章就足以放行一條跨鏈訊息!而 LayerZero 官方實際上是建議 2/2 乃至多驗證者冗餘的,且這個 1/1 的風險,早在 2025 年 1 月就已被安全研究員公開提醒,但 15 個月內都沒有被修改!
這也是為什麼,這次事件很難被簡單歸類為「橋被駭了」或是「某協議風控不夠」,它真正暴露出的,其實是兩層疊加的單點風險:
- 第一層是驗證單點:DVN 理論上被設計成一種可組合的 X-of-Y-of-N 安全模型,支援用多重獨立驗證來滿足不同安全需求,但在 KelpDAO 這整條訊息的合法性上,卻被壓縮成了「一個驗證節點不出問題」這一條假設;
- 第二層是儲備單點:一旦這個主網儲備池被擊穿,其他鏈上的 rsETH 立刻就不再是跨鏈資產,而會暴露出其本質只是建立在單一主網錨點上的 IOU;
當驗證單點與儲備單點疊在一起,風險就不再停留在單個協議內部,而會沿著 DeFi 的可組合性一路外溢。
這也是為什麼 Aave 在事故後緊急凍結了多條鏈上的 rsETH/wrsETH 市場,調整 WETH 利率模型,並進一步凍結多個 WETH 市場,以阻止壓力向更多資產擴散。儘管 Aave 本身沒有被駭,但抵押品失真、清算受阻、借款人健康度貼邊,最終還是讓協議承受了實質性的壞帳風險。
而如果把視角再抬高一點,還會發現這種「把安全外包給一個單點」的邏輯,並不只存在於橋與驗證器,也同樣潛伏在一個使用者每天都會面對、卻很少被正面討論的地方——介面。
二、從「資產自託管」到「互動可驗證」:最容易被忽視的單點信任
Web3 社群一直有一句老話:Don't trust, Verify。
以太坊官方在介紹節點時,對這句話的解釋其實非常直白:運行自己的節點,意味著你不需要相信別人告訴你的結果,因為你可以自己驗證資料,而不是把對網路真相的判斷,外包給中心化的資料提供者。
這個原則放到錢包與 DeFi 互動裡,同樣成立。
像 imToken 這樣的非託管錢包,本質上是使用者存取帳戶的工具,是你「看見資產、發送交易、登入應用」的視窗,錢包本身並不託管你的資金,私鑰也不掌握在平台手中。過去幾年,產業也已逐漸接受了「資產自託管」這件事的重要性,越來越多人也開始理解,真正的去中心化,不只是把幣放在鏈上,更是把資產控制權交還給使用者自己。
但問題在於,我們雖然在資產層面越來越強調「自託管」,在互動層面卻依然大量預設一種更隱蔽的外包,也就是把對交易含義的理解、把對呼叫結果的判斷、把對介面真實性的信任,交給眼前這一層前端去解釋。
這恰恰是今天 DeFi 中最容易被忽視的一層風險:使用者簽下的,真的就是他以為自己簽下的那筆交易嗎?
可以說,在日常鏈上互動裡,使用者面對的幾乎從來不是鏈本身,而是一層又一層被包裝過的介面,例如 DApp 的網頁前端、錢包彈窗、聚合器給出的路徑說明,未來還會包括 Agent 自動生成的呼叫與結果確認。它們會告訴你:「你正在把 100 ETH 存入某個策略」、「你將獲得某種年化收益」、「你只是在做一筆普通授權」。
但最終真正被簽名、被廣播、被鏈上執行的 calldata 究竟是什麼,前端描述與底層執行是否嚴格一致,絕大多數使用者其實沒有能力獨立核對。
這也是為什麼,歷史上那些反覆出現的前端劫持、地址替換、惡意授權偽裝,表面上看是不同類型的安全事故,底層其實都指向同一個問題,也就是使用者簽下的,並不總是自己以為簽下的那筆交易。
從這個角度看,Kelp DAO 事件所暴露的,不只是橋接路徑裡的單點驗證問題,它也順勢提醒了整個產業另一件長期被低估的事實:也就是在許多鏈上互動中,介面本身就是一個預設被信任、卻很少被驗證的單點。你點下「確認」的那一刻,實際上是在把這筆呼叫的正確性,押注在「介面沒有說謊」這件事上。
這也就引出了「Verifiable UI」的概念。
所謂「Verifiable UI」,直譯就是「可驗證的介面」。它的核心並不是把前端做得更漂亮,也不是把簽名彈窗寫得更通俗,而是試圖讓介面呈現的內容,與鏈上真實執行的呼叫之間,建立起一條可被使用者核對、可被錢包驗證,也可在事後追溯的連結。
換句話說,它想解決的不是「資訊有沒有展示出來」,而是「展示出來的東西,是否真的對應鏈上即將發生的事」,這意味著:
- 錢包在簽名之前,不應只給使用者看一串十六進位資料,也不應只轉述一段由前端單方面生成的說明文字,而是要盡可能把 calldata 還原為人類可讀、語義明確的操作意圖;
- 介面所描述的每一步,也都應該能映射到鏈上可驗證的證據,而不是停留在一套「使用者相信就成立」的解釋邏輯上;
- 只有這樣,「你以為自己在做的事」與「鏈上真正發生的事」之間,才不會再橫著一道難以跨越的認知鴻溝;
當這一點成立之後,介面就不再是一層讓使用者只能預設相信、卻無法獨立核驗的玻璃窗,而更像是一份使用者能親自確認、也能回頭追溯的執行說明書。
如果只看今天的 DeFi,介面可驗證性仍然是一個被嚴重低估的議題;但如果把時間尺度稍微拉長一點,它很快就會從「值得討論的安全優化」變成「不能再拖的基礎能力」。因為以太坊的互動路徑,正在發生一次靜悄悄卻意義深遠的遷移。
三、Verifiable UI 為什麼會成為新的安全邊界
如果說 Kelp DAO 事件暴露的是舊一代 DeFi 架構中已經存在多年的單點信任問題,那麼「Verifiable UI」所對應的,則是一個已經開始到來的新階段。
ETHUX 這張以太坊 UX 圖譜,其實已經把今天鏈上互動的核心症結梳理得非常清楚:Transaction Clarity、Cross-chain Flow、Safety & Security 一直都是最核心的痛點類別,blind signing、signing fatigue、bridging pain、asset fragmentation 這些問題,幾乎每一位老使用者都不陌生。
這背後說明的並不是「使用者教育還不夠」,而是一個更本質的事實:在鏈上世界裡,UX 與安全從來不是兩回事。
換句話說,很多時候,看不懂,本身就是最大的安全風險。
而隨著互動範式從「使用者在 DApp 前端裡一步步點擊」轉向「使用者表達意圖,系統自動完成執行」,這個問題只會被進一步放大,不會被削弱。
畢竟在傳統 DApp 前端時代,使用者至少還能看到按鈕、頁面、授權彈窗,哪怕理解得並不完整,至少還能模糊感知「我正在進行幾步操作」、「這是一筆授權還是一筆轉帳」、「我是在跨鏈還是在存款」。
但一旦進入 Agent 時代,這種可見的過程感就會被大幅壓縮。使用者不再逐一點開 Router、Bridge、Vault、Lending Market 去確認每一步呼叫,而更可能只是對 AI 錢包說一句:「把我的 ETH 換成更穩的收益策略」、「跨到 Base,控制最大滑點」、「只允許這個 Agent 在 24 小時內花費 100 USDT」,然後等待一個「已完成」的結果。
這當然意味著效率的大幅提升,但也意味著中間的路徑、參數、授權、執行順序,都越來越容易被折疊到使用者視線之外。也正是在這個背景下,imToken 就曾提出兩條並行方向,一條是持續探索基於意圖的互動路徑,讓使用者只表達「我要什麼」,系統負責尋找路徑並完成執行;另一條則是推進「Unified & Verifiable UI」,把「介面本身也可能成為攻擊面」這件事,明確提升到產品層面的長期命題之中。
這其實點中了下一代錢包最關鍵的職責變化。
過去,錢包更像一個簽名工具,負責把使用者的確認動作發送到鏈上;而到了 Agent 逐步介入互動流程的階段,錢包不能只做一個通道,而必須成為執行前的最後一道確定性檢查點。AI 可以負責理解需求、生成方案、規劃路徑,但錢包必須負責把這些機率性的生成結果,轉譯為使用者能夠驗證、系統能夠校驗、規則能夠約束的確定性執行內容。
從這個意義上說,「Verifiable UI」真正對應的,並不是一個更高級的介面設計概念,而是一種新的互動安全模型。甚至可以說,它更像是自託管錢包在進入下一階段之後,幾乎必然要補齊的一塊底層拼圖。
過去產業一直強調的是「Not your keys, not your coins」;但在意圖驅動與 Agent 執行逐漸成為主流的時代,還必須再補上一句:你的介面,也應該是你能驗證的介面。
寫在最後
Kelp DAO 事件發生後,產業裡很快出現了大量關於 DVN 配置、LRT 風控、橋接路徑與單點風險篩查的討論。
這些討論都有其價值。
但如果一場數億美元代價的事故,最終只被總結成「這次是誰把多簽配少了」,那它其實並沒有被真正理解。甚至不客氣地說,今天很多鏈上產品的效率、流動性與收益,依然建立在使用者看不見、也驗證不了的單點假設之上。
這也是為什麼,去中心化從來不是效率的對立面,而是安全的底線。
把安全建立在單點假設上的時代,真的需要結束了。