Bible Network Crypto DeFi Onchain RWA AI Agent Stablecoin Chain SAFU CryptoTax DeFAI AGI Claude Me Claude Skill Claude Design Claude Cowork
獨立知識媒體
與任何項目無關聯
加密資產安全,從防禦到應對的完整指南
safu-bible.com
最新
私鑰、助記詞、錢包地址:三個最容易搞混的名詞,一次搞懂誰是誰、誰能給誰看  ·  地址投毒詐騙:駭客不用騙你簽名,只要騙你複製貼上就夠了  ·  盲簽是什麼:你按下確認鍵的那一刻,你的硬體錢包其實看不懂自己在簽什麼  ·  沒有駭客入侵、沒有程式碼漏洞:攻擊者只花 0.5 顆 ETH 就「合法投票」搬走 850 萬美元  ·  手機掉了,雙因素驗證全部鎖死:業界推薦的解方,其實是拿一種風險換另一種  ·  你交出去的不是密碼,是身分證照片跟住家地址:KYC 資料外洩為什麼比駭客攻擊更該讓你緊張
wallet-security

盲簽是什麼:你按下確認鍵的那一刻,你的硬體錢包其實看不懂自己在簽什麼

30 秒速讀
解碼過的畫面能降低你簽下看不懂內容的風險,卻無法證明這個畫面本身沒有說謊。

完整解析 +
01 · 為什麼發生?

盲簽跟一般常聽到的「授權詐騙」(approval phishing)是同一件事嗎?

不是同一件事,但兩者經常疊加發生。授權詐騙指的是攻擊者透過偽造網站或惡意連結,誘導使用者簽署一筆會把資產操作權限交給攻擊者的授權交易,重點在於「騙你簽下不該簽的內容」;盲簽則是一個更底層的技術狀態,描述的是「你在簽署當下,裝置或你本人是否真的看懂了自己在簽什麼」,不論這筆交易的來源是不是詐騙。

兩者的關聯在於:盲簽狀態正是授權詐騙最容易得逞的溫床——如果每一筆交易的實際內容都能被清楚解讀,授權詐騙想要偷渡的惡意權限就很難隱藏在看不懂的十六進位資料裡;反過來說,就算沒有主動的詐騙行為,單純的盲簽狀態本身也已經構成風險,因為使用者失去了在簽署當下發現「這筆交易好像不太對勁」的能力。

02 · 運作原理是什麼?

既然 EIP-712 標準已經存在多年,為什麼硬體錢包廠商沒有全面淘汰盲簽模式?

最核心的技術限制在於,明文簽署需要裝置事先擁有某份「描述檔」,才能把原始資料正確解析成人類看得懂的欄位——這份描述檔必須針對每一種合約、每一種交易結構分別建立,而區塊鏈上每天都有新合約部署、新的交互模式出現,描述檔資料庫永遠追不上鏈上實際存在的合約總數。面對一份資料庫裡沒有收錄的合約,裝置除了退回盲簽,沒有其他選項。

另一個現實因素是商業與時程壓力:完整支援明文簽署,需要錢包廠商、應用開發者、標準制定方三方協調配合,任何一方進度落後,使用者實際體驗到的仍然是盲簽介面。這也是為什麼近年業界開始推動像 ERC-7730 這類「結構化資料明文簽署格式」標準,嘗試把描述檔的產生與驗證流程標準化、去中心化,讓更多合約能更快被涵蓋進明文簽署的範圍,但這仍然是一個持續進行中、尚未完全解決的產業課題。

03 · 如何應用

面對一筆要求盲簽的交易,一般用戶在當下具體可以做哪些事來降低風險?

第一步是先判斷這筆交易的急迫性是不是被刻意營造出來的——多數盲簽風險發生在使用者急著完成操作(搶購限量發售、來不及的空投截止時間)的情境下,放慢速度本身就是最基本的防線。第二步,可以利用交易模擬工具(多數主流軟體錢包如 MetaMask、Rabby 已內建),在正式簽署前,先看一次「如果我簽了這筆交易,我的錢包資產實際上會發生什麼變化」的模擬結果,這個模擬過程使用的是跟簽署介面不同的獨立運算路徑,能在一定程度上抓出「畫面顯示的內容」跟「實際會執行的內容」之間的落差。

第三步,對於金額特別大或牽涉不熟悉合約的操作,值得把交易的原始呼叫資料複製到區塊鏈瀏覽器(如 Etherscan)的解碼工具裡,用另一個完全獨立於錢包介面之外的來源核對一次;如果三個管道(錢包顯示、模擬工具、區塊鏈瀏覽器解碼)呈現的內容彼此一致,才真正有理由相信這筆交易如你所預期,只看單一畫面顯示的內容做出簽署決定,永遠是風險最高的做法。

04 · 我該怎麼做?

如果我只是偶爾用硬體錢包簽一些小額交易,值得花時間學這些嗎?

值得,而且理由跟金額大小其實關係不大。盲簽風險最危險的地方,不在於單筆交易的金額高低,而在於「授權」這個動作本身的性質——很多 DeFi 操作要求的不是一次性轉走固定金額,而是授權合約在未來能無限次、無上限地動用你錢包裡的某種代幣,這種授權一旦簽下,即使你當下只是想小額測試某個新協議,也可能因為看不懂盲簽畫面裡藏著的無限授權條款,把整個錢包對該代幣的控制權都交出去。

更實際的理由是,看懂盲簽風險是一個一次學會、終身受用的判斷能力,不需要每次操作前重新學習——你只需要建立一個固定的檢查習慣:看到十六進位原始資料就先暫停,用交易模擬工具跑一次,尤其是「授權」(approve)類型的操作,額外確認授權額度是否為無上限。這個習慣一旦養成,不管你之後操作的金額是十美元還是十萬美元,都能用同一套流程降低風險,而不是等到有一天操作大額資產時才臨時惡補。

完整內容 +

你剛買了一支硬體錢包,覺得資產終於安全了。你在某個 DeFi 平台上點了「授權」,硬體錢包螢幕跳出一長串英數字:0x6a76120200000000000000000000000087870bca3f3fd6335c3f4ce8...。你看不懂,但你按下了確認鍵——因為介面顯示這是正常操作,而且錢包本身確實是「安全的」,密碼學上沒有任何缺陷。這正是Bybit 事件裡三位簽名者當時面對的情境,也是幾乎每個硬體錢包用戶每天都在重複的動作:對一串自己看不懂的資料,按下確認。這個動作有個名字,叫做「盲簽」。

盲簽:硬體裝置只是在簽一個雜湊值,不是在簽你以為的內容

盲簽(Blind Signing)指的是硬體錢包在缺乏足夠上下文資訊的情況下,對一串原始的十六進位資料或雜湊值進行簽署,裝置本身無法把這串資料解讀還原成人類看得懂的「你正在授權誰、動用多少金額、做什麼操作」。早期以太坊生態系的 eth_sign 方法正是這種模式的原型:使用者面對的,從頭到尾只是一串無法驗證意義的雜湊值,硬體裝置忠實地對這個雜湊值簽名,至於這個雜湊值背後究竟代表什麼交易內容,裝置完全不知情,使用者也只能選擇相信螢幕另一端的軟體介面告訴他的內容。這正是問題所在:真正判讀「這筆交易到底在做什麼」的工作,被整個外包給了硬體裝置以外的軟體層——而那層軟體,正是駭客攻擊時最常鎖定的目標。

EIP-712:一個想解決盲簽問題、但沒有徹底解決的標準

為了解決這個問題,以太坊社群在 2017 年提出 EIP-712 標準,定義了一套「結構化資料簽署」的規範,讓開發者能把交易資料按照固定格式標註欄位名稱與型別,使錢包裝置有機會把資料解析成人類看得懂的欄位,例如「金額:100 USDC」「收款地址:0x1234...」。硬體錢包廠商依此發展出三種簽署等級:盲簽(完全看不懂原始資料)、透明簽署(能顯示完整技術欄位,但充滿使用者難以理解的技術細節)、以及明文簽署(clear signing,裝置能解析並清楚顯示這筆交易的實際意圖)。問題是,明文簽署需要裝置事先擁有某個合約或某種交易類型的「描述檔」才能正確解析——面對新部署的合約、複雜的巢狀操作(例如 Safe 多簽錢包常用的批次交易 MultiSend)、或尚未被收錄進描述檔資料庫的協議,裝置往往只能退回盲簽模式,這也是為什麼即使 EIP-712 推出多年,「盲簽」在許多實際使用場景裡從未真正消失。

Bybit 事件揭穿的殘酷真相:明文簽署也可能是假的

更值得警惕的是,即便裝置支援明文簽署、螢幕上顯示了清楚易懂的欄位說明,這仍然不保證你看到的內容是真的。硬體裝置本身仍然是一台執行軟體的機器,它顯示在螢幕上的「解析結果」,是由某段程式碼計算出來的;如果負責生成這段顯示內容的軟體本身遭到入侵,裝置忠實顯示的,就會是被竄改過的假象。這正是 Bybit 事件最根本的教訓:問題不在於簽名者看不懂原始資料而盲簽,而在於他們看到的「清楚易懂的畫面」本身就是攻擊者精心偽造的——一個經過解碼的畫面,只能降低你簽下自己完全看不懂內容的風險,卻無法證明這個畫面本身沒有說謊。

業界修復這個問題的速度,值得每個用戶知道

值得留意的是,這個風險並非產業毫無警覺——部分錢包廠商就曾有相關安全問題被回報後,實際修復耗時超過一年才完成;也有主流軟體錢包從宣布移除某個已知有風險的簽署方法,到真正完成移除,中間隔了數個月。相對地,在 Bybit 事件發生之後,Safe 團隊在極短時間內就針對這次事件暴露的風險推出應對措施——這個對比清楚說明了一件事:多數這類風險在業界內部其實早就有人知道,真正推動修復速度的,往往是實際造成重大損失之後的壓力,而不是風險被發現的那一刻。

這跟你的錢有什麼關係

如果你使用硬體錢包,下次簽署交易前,先看螢幕上顯示的是完整可讀的欄位(金額、收款地址、操作類型),還是一串你看不懂的十六進位資料——後者是明確的盲簽警訊,尤其在互動金額較大或合約較陌生時,值得暫停操作、透過官方管道或區塊鏈瀏覽器另外核實。但更重要的是記住 Bybit 事件的教訓:就算螢幕顯示的是清楚易讀的內容,也不代表萬無一失,畢竟這份「清楚易讀」同樣是由某段可能遭竄改的軟體算出來的。真正能降低風險的做法,是為金額特別大的操作額外使用一個獨立於主要簽署介面之外的工具重新核對交易內容,而不是只看螢幕顯示的表面文字就直接按下確認。

資料來源:Blind signing: what your wallet shows you, and what you actually signEIP-712 Meaning (Ledger Academy)Clear Signing: The End of Blind Signing Attacks on Ethereum
圖解
三種簽署等級,以及明文簽署沒能解決的那道缺口盲簽、透明簽署、明文簽署三個等級依序改善可讀性,但明文簽署仍建立在「顯示內容的軟體本身值得信任」這個未被驗證的前提上Three Signing Tiers — and the Gap Clear Signing Doesn't CloseBlind SigningRaw hex onlyYou can't read itTransparent SigningFull fields shownToo technicalClear SigningReadable fields"Amount, To, Action"The Gap Clear Signing Doesn't CloseEven a "clear" screen is generated by softwareIf that software is compromised (like at Bybit),the "clear" display can be a fabricated lieSAFU Bible · safu-bible.com
歡迎截圖分享,轉載請註明來源
提問
請至少輸入 10 個字
相關文章
15 億美元、一個被竄改的簽名介面:多簽錢包為什麼沒能擋下史上最大加密貨幣竊案
incident-analysis · 08/26
六把鑰匙、三道防線——結果全部放在同一台筆電裡:3600 萬美元教訓告訴我們多簽最容易被忽略的破口
wallet-security · 08/27
模擬顯示你會賺 30 美元,實際上鏈後你什麼都拿不到:惡意合約怎麼「認出」自己正在被模擬
tools · 08/27
買了硬體錢包,你的資產就安全了嗎?三個「離線」保護不了你的情境
wallet-security · 08/13
相關新聞
更多相關主題