授權釣魚到底是什麼?它是一種不需要偷你私鑰、就能把資產轉走的盜幣手法。攻擊者架一個看起來像官方的網站(常打著「限時空投」名號),誘導你連上錢包並簽署一筆交易。你以為在「領空投」,實際簽下的卻是「允許這個合約無限動用你的代幣」或「轉走你全部 NFT」的授權。授權一旦生效,對方就能在你毫不知情下把資產搬空。整個過程,你的私鑰和助記詞從沒外洩。
為什麼私鑰沒外洩也會中招?因為盜竊發生在「簽名」這一層,不是「鑰匙」這一層。在鏈上做任何操作都要用私鑰簽名授權,但你的錢包通常不會把私鑰本身交出去,而是讓私鑰在本地簽好一筆指令再送出。問題在於那筆指令的內容——它可能是無害的轉帳,也可能是危險的無限授權。攻擊者不需要你的鑰匙,只要騙到你「同意簽」一筆危險指令就夠了。這也是為什麼「保管好私鑰」只是基本,「看懂每一次簽名」才是真正的防線。
怎麼分辨一筆簽名安不安全?看三件事。第一,類型:是單純「轉帳」還是「授權(approve / setApprovalForAll)」?授權類要特別小心。第二,額度:授權的數量是一個具體、合理的數字,還是「無限(unlimited)」?無限授權是最大的紅旗。第三,對象:要授權的合約地址你認得嗎?是你正在用的那個正當協議嗎?只要這三點有任何一個你看不懂或覺得不對勁,就取消。多花十秒看清楚,勝過事後追不回的損失。
防護清單,五條照做。一、簽名前一定看內容,分清「轉帳」與「授權」,看到無限授權先取消。二、永遠記得正規領空投不需要你簽授權、更不會要助記詞。三、定期用授權管理工具檢查並撤銷舊的、可疑的授權。四、大額資產放冷錢包,用硬體錢包的清晰簽名在裝置上二次確認。五、日常熱錢包只放小額,互動用的錢包和存大錢的錢包分開。把這五條變成反射動作,你就能避開鏈上最主流的盜幣套路。
很多人以為,只要不洩漏私鑰和助記詞,資產就安全了。但鏈上最常見的盜幣手法,根本不需要你的私鑰——它騙的是你的「簽名」。這篇教你看懂錢包簽名、認出授權釣魚,並養成定期撤銷授權的習慣。
當你連上一個 DeFi 應用、要做交易時,錢包會跳出一個「簽名」或「授權」視窗。你按下確認,等於用私鑰簽署了一筆指令——但你簽的到底是「轉一筆錢」還是「允許某個合約無限動用你的代幣」,很多人根本沒看。攻擊者就是利用這一點:不偷你的鑰匙,而是騙你親手簽下一筆把資產轉走、或開放授權的交易。
第一種是「代幣授權(approve)」:你授權某個合約可以動用你錢包裡某種代幣。正常的 DApp 需要這個才能幫你交易,但惡意合約會要求「無限額度」授權,之後就能隨時把你的代幣搬光。第二種是 setApprovalForAll,常見於 NFT,一旦簽下,對方能轉走你整個系列的 NFT。看起來只是簽個字的「簽名訊息」,實際上也可能是一張授權他人代你操作的許可。
最典型的劇本:你看到「限時空投,連錢包領取」的網站,介面做得跟官方一模一樣。你連上錢包、按下「領取」,跳出的簽名沒細看就確認——其實那筆簽名是 setApprovalForAll 或無限 approve。幾秒後,你錢包裡對應的資產就被自動轉空。整個過程你的私鑰從沒外洩,但你「自願」簽了授權。
每次簽名前,停下來看視窗內容:是「轉帳」還是「授權」?授權的額度是具體數字還是「無限」?對象合約地址你認得嗎?只要出現你看不懂、或要求無限授權的操作,寧可取消也不要急著簽。記住:正常領空投通常不需要你簽授權,更不會要你輸入助記詞。
你過去授權過的合約,授權會一直存在,直到你主動撤銷。用授權管理工具定期檢查、撤銷不再需要或可疑的授權,能堵住一大類「舊授權被利用」的盜竊。
大額資產用硬體錢包,並善用它的「清晰簽名」——在裝置螢幕上顯示你真正在簽的內容,讓你在實體確認前看清楚,避免被介面騙過去。日常互動的熱錢包只放小額,把這套習慣變成反射動作,你就能擋掉鏈上九成的盜幣套路。