
ERC-777 是 Ethereum 上的一種代幣標準,規範代幣的轉帳、接收及授權方式。該標準透過智能合約實現,確保錢包、DApp 與交易所能以一致方式處理代幣。
「代幣標準」就像一套交通規則——不同應用就像各種車輛,只要遵循相同規則,就能在區塊鏈上順暢運作。ERC-777 在保留常見轉帳方式基礎上,帶來更靈活的互動介面。
ERC-777 旨在解決舊有標準的限制:部分合約地址無法接收代幣,誤轉後無法追回。此外,應用也希望在收到資金時自動獲得通知以便觸發後續操作,而傳統 ERC-20 標準並不支援這點。
在 ERC-20 下,代幣轉帳屬於「靜默投遞」——接收方不會自動得知,合約接收方也無法宣告自己是否能安全接收。ERC-777 則提升了安全性與可編程性。
ERC-777 依賴「回呼函式」與「操作員」兩大機制。回呼就像收貨通知,操作員則是經授權可代表你操作的代理人。兩者都透過標準化合約介面實現。
第 1 步:發送方可觸發預發送回呼。若發送方已註冊「發送回呼」,合約會在扣除代幣前通知回呼,以便執行白名單、限額等檢查。
第 2 步:合約更新餘額。所有檢查通過後,合約會扣除發送方餘額,增加接收方餘額,並記錄事件,方便區塊鏈瀏覽器和 dApp 追蹤。
第 3 步:接收方可觸發接收回呼。若接收方為宣告支援接收介面的合約,入帳時會收到通知,可自動記帳、出具收據或拒絕可疑轉帳。
「操作員」是經帳戶授權的第三方,可代表帳戶進行轉帳,適用於託管、批次支付或企業流程。回呼與操作員的可發現性依賴 ERC-1820 註冊合約,類似於記錄地址是否實作介面的通訊錄。
核心差異在於互動方式。ERC-20 更簡單,類似「盲目存入」,接收方全程被動。ERC-777 則引入接收回呼,接收方可被通知並決定是否接收,有效降低誤轉與資金卡死風險。
另一個關鍵差異是「操作員」。ERC-20 的委託轉帳需 approve→transferFrom 兩步,ERC-777 原生支援操作員,簡化託管或批次處理操作。
為提升相容性,許多 ERC-777 實作也保留常見的 ERC-20 函式,支援現有錢包和 DeFi 協議。但如完全依賴 ERC-777 回呼,與舊協議整合時需額外調整。
在錢包中,ERC-777 代幣的轉帳體驗與其他代幣相似。最大差別在於部分合約接收地址會自動檢查——未宣告支援接收的會被拒絕,避免資金進入「黑洞」。
第 1 步:確認錢包或應用支援。查閱代幣合約文件或錢包資產詳情,確認是否支援 ERC-777 介面。
第 2 步:小額測試。先以小額轉帳,確認目標地址是否能接收或會明確拒絕,避免高額損失。
第 3 步:再進行大額轉帳。針對交易所或合約地址,建議使用指定充值通道。
在 Gate 等 交易平台,充值頁面會標示網路與合約要求。若代幣為 ERC-777,但平台僅支援 ERC-20 充值,請依平台指示操作——建議先小額測試確認入帳後再大額轉入。
在 DeFi 領域,ERC-777 的接收回呼可實現「到帳即處理」流程,例如自動記帳、發放積分或憑證。在 DApp 中,這些特性有助於防止誤轉、觸發業務邏輯或自動收取手續費。
舉例來說,合約可在 tokensReceived 內驗證訂單狀態與簽章,入帳後自動履約或授權;或於 tokensToSend 中進行風控,阻擋可疑地址提領。將業務邏輯嵌入回呼,可使流程更緊湊,減少額外交易步驟。
截至 2025 年,多數主流借貸協議及聚合器仍以 ERC-20 為主。但部分錢包與合約已支援 ERC-777 回呼與操作員。新應用透過回呼機制可減少人工確認及用戶操作。
回呼機制提升可編程性,但也帶來「重入」風險。重入指在代幣轉帳回呼中觸發外部呼叫,若目標合約保護不足,可能造成餘額異常變動。
相容性方面,部分舊協議僅識別 ERC-20 的授權與轉帳流程,不理解 ERC-777 回呼或操作員角色;部分合約地址未在 ERC-1820 註冊接收介面,導致轉帳被拒或需降級相容。
用戶應先進行小額測試。開發者需為關鍵函式加強重入防護,並充分驗證於錢包、平台、路由合約等場景下的相容性。
若需廣泛適配 DeFi 與交易所場景,且對到帳回呼或操作員無強烈需求,建議優先採用成熟的 ERC-20 生態。
若 DApp 需到帳即觸發業務邏輯、精細風控或批次授權操作,ERC-777 可簡化流程並減少誤轉損失,但需更多測試與調整。
實務上可採「混合策略」:在 ERC-777 合約中實作常用 ERC-20 函式,明確文件指引,並為關鍵流程提供不依賴回呼的替代方案。
第 1 步:正確整合 ERC-1820。部署後,於 1820 註冊表登記實作者,方便發現 tokensSender 與 tokensRecipient 介面。
第 2 步:加入重入防護。在可能觸發外部呼叫的 回呼 函式中使用重入保護或 Checks-Effects-Interactions 模式。
第 3 步:提供雙重介面。除了 ERC-777 方法外,保留常用 ERC-20 函式如 transfer、approve,提升相容性。
第 4 步:明確處理合約接收方。對於未註冊接收介面的合約地址,可選擇拒絕轉帳或提供安全降級路徑,避免資金卡死。
第 5 步:跨生態測試。以主流錢包、路由與交易平台進行端到端測試,涵蓋小額轉帳、批次扣款、失敗回滾等場景,並為用戶提供明確指引。
ERC-777 是以太坊的強化型代幣標準,強調互動特性。透過接收回呼與操作員機制提升安全性及交易流程,但同時帶來重入與相容性挑戰。自動化與精細風控需求的應用可優先考慮 ERC-777;如需最大生態覆蓋,建議相容或持續使用 ERC-20。不論用戶或專案方,均應先小額驗證再大額轉帳,並密切關注平台相容性。
ERC-777 最大優勢在於 hook 機制——合約可於代幣轉帳時自動執行邏輯,無需額外授權步驟。這可讓代幣轉帳與合約互動於單一交易內完成,大幅簡化 DeFi 流程。相較 ERC-20 的兩步授權與轉帳,ERC-777 更有效率,使用體驗更佳。
最常見原因是接收方錢包或合約不支援 ERC-777 的 hook 機制。當轉帳觸發接收方 hook 函式但未正確實作時,交易會被拒絕。解決方式為確保接收方已升級支援 ERC-777,或更換為相容錢包或交易所。
完全取代的可能性不高。雖然 ERC-777 功能更強,但相容性與生態慣性讓 ERC-20 仍占主導。ERC-777 多用於新專案或特定場景,未來兩者大概率長期共存。應依專案需求選擇:追求簡潔可選 ERC-777,追求廣泛相容則選 ERC-20。
Gate 支援 ERC-777 代幣交易,但需先確認代幣已上架。部分舊錢包對 ERC-777 支援有限——建議使用最新版錢包或 Web3 錢包(如 MetaMask)進行充值及提領。如提領失敗,可聯繫客服確認代幣相容情形。
無需深入技術細節,但了解基本概念有助益。一般用戶只需記得:ERC-777 轉帳更便捷,部分錢包可能不相容,遇到問題無需慌張。如主要透過 Gate 等交易所轉帳,平台會處理大部分相容性問題,可安心使用。


