在EIP-3074之後,一個錯誤的籤名將能夠清空你在以太坊上的帳戶

中級4/23/2024, 5:44:08 PM
在EIP-3074 之後,一個錯誤的籤名將能夠耗盡你以太坊帳戶上的餘額,文中詳細介紹錢包整合EIP-3074 的具體方式,可能會造成用戶更容易被利用的情況和工作原理,避免造成無法挽回的錯誤。

“在 EIP-3074 之後,一個錯誤的籤名將能夠耗盡你在以太坊上的帳戶餘額。”

是的,這是正確的。我是 3074 的共同作者!讓我稍微解釋一下這個問題,以免它變得更加惡化。

首先:我不知道今天有哪些錢包支持籤署未加前綴的數據。這意味着目前沒有錢包支持 3074。無論你穿過多少控制面板或打開多少高級功能,都不可能籤署 3074 消息。今天不可能籤署 3074 消息。

你籤署用於“登入”到 dapp 的消息使用的是完全不同的基於 EIP-191 的標準。這會在你籤名的消息前加上以下數據:

“””

0x19 <0x45 (E)> <thereum Signed Message:\n” + len(message)> <data to sign>

“””

這就是使得欺騙登入 dapp 的人籤署有效的以太坊交易變得不可能的原因。

交易是用單字節值進行前綴的:

0x01 - 2930 tx

0x02 - 1559 tx

0x03 - 4844 tx

更多信息請參閱這裏 : https://github.com/ethereum/execu化規範/樹/主/列表/籤名類型

3074 計劃使用前綴 0x04。這將使其與以太坊中所有其他類型的可籤名數據區分開來。

錢包將不得不積極選擇允許用戶籤署這些消息。

根據錢包如何整合 3074,它們可能會造成用戶更容易受到剝削的情況。要理解這一點,我們需要確保理解 3074 籤名的工作原理。

籤名構建在以下字段的 auth msg 上。重要的是,它包括一個調用者地址。這是籤名只會在 AUTH 下被視爲有效的唯一地址。

要使一個帳戶被耗盡,1)錢包將需要允許用戶對任何調用者地址進行籤名,2)用戶必須不驗證調用者是否值得信任。只要滿足其中之一,就不會有問題。

對於第一點,我們希望錢包能夠理解,3074 的調用者更類似於它們代碼的擴展,而不是合約。錢包不會讓用戶自由運行具有訪問其私鑰的任意代碼;同樣地,它們也不應該允許用戶任意委托其帳戶。

因此,如果錢包不安全地整合了 3074 並且 用戶沒有驗證與之交互的調用者,那麼可能會委托給一個惡意的調用者。

然而,通過從 EOA 發送單個交易,可以撤銷所有“正在進行中”的 AUTH 籤名。

最低限度,錢包應該讓籤署 3074 消息變得非常重要。這就像導出你的私鑰一樣重要。

假設一個錢包安全地整合了 3074,帳戶仍然有可能被清空。這是批量交易的基本屬性。它不僅可以輕鬆地讓您發送多個操作,也可以讓攻擊者欺騙您將一批資產發送到他們控制的地址。

錢包必須清楚地顯示您正在籤名的每個操作。這樣,您就可以輕鬆地注意到:“我原本只打算進行一次交易,但這個籤名請求讓我做了十幾次轉帳”。

如果批量處理是通過盲目籤名實現的,那麼就不可能檢測到這一點。

是的,3074 把很多信任放在了錢包上。但是看,我們已經把我們的私鑰安全地交給了它們!再也沒有更高級別的信任了。

完全有可能安全地整合和使用 3074。如果任何錢包對如何做到這一點有疑問,請不要猶豫與我們聯系。作爲 3074 的作者,我們正在思考如何在其下一個階段中最好地幫助這個標準。

在過去的幾年裏,我們花了大量時間開發了關於它可能如何被使用和濫用的假設場景。我們對這些想法開始投入生產感到興奮。但我們也意識到,這是困難的一部分。

聲明

  1. 本文原標題爲“EIP-3074 之後,一個錯誤的籤名將能夠耗盡您在以太坊上的帳戶”轉載自[輕客戶端]]。所有版權歸原作者所有[ightclients]。如對轉載有異議,請聯系Gate Learn團隊,團隊會盡快處理。

  2. 免責聲明:本文所表達的觀點和意見僅代表作者個人觀點,不構成任何投資建議。

  3. 本文的其他語言翻譯由 Gate Learn 團隊完成。除非另有說明,否則禁止復制、分發或抄襲翻譯文章。

分享

目录

在EIP-3074之後,一個錯誤的籤名將能夠清空你在以太坊上的帳戶

中級4/23/2024, 5:44:08 PM
在EIP-3074 之後,一個錯誤的籤名將能夠耗盡你以太坊帳戶上的餘額,文中詳細介紹錢包整合EIP-3074 的具體方式,可能會造成用戶更容易被利用的情況和工作原理,避免造成無法挽回的錯誤。

“在 EIP-3074 之後,一個錯誤的籤名將能夠耗盡你在以太坊上的帳戶餘額。”

是的,這是正確的。我是 3074 的共同作者!讓我稍微解釋一下這個問題,以免它變得更加惡化。

首先:我不知道今天有哪些錢包支持籤署未加前綴的數據。這意味着目前沒有錢包支持 3074。無論你穿過多少控制面板或打開多少高級功能,都不可能籤署 3074 消息。今天不可能籤署 3074 消息。

你籤署用於“登入”到 dapp 的消息使用的是完全不同的基於 EIP-191 的標準。這會在你籤名的消息前加上以下數據:

“””

0x19 <0x45 (E)> <thereum Signed Message:\n” + len(message)> <data to sign>

“””

這就是使得欺騙登入 dapp 的人籤署有效的以太坊交易變得不可能的原因。

交易是用單字節值進行前綴的:

0x01 - 2930 tx

0x02 - 1559 tx

0x03 - 4844 tx

更多信息請參閱這裏 : https://github.com/ethereum/execu化規範/樹/主/列表/籤名類型

3074 計劃使用前綴 0x04。這將使其與以太坊中所有其他類型的可籤名數據區分開來。

錢包將不得不積極選擇允許用戶籤署這些消息。

根據錢包如何整合 3074,它們可能會造成用戶更容易受到剝削的情況。要理解這一點,我們需要確保理解 3074 籤名的工作原理。

籤名構建在以下字段的 auth msg 上。重要的是,它包括一個調用者地址。這是籤名只會在 AUTH 下被視爲有效的唯一地址。

要使一個帳戶被耗盡,1)錢包將需要允許用戶對任何調用者地址進行籤名,2)用戶必須不驗證調用者是否值得信任。只要滿足其中之一,就不會有問題。

對於第一點,我們希望錢包能夠理解,3074 的調用者更類似於它們代碼的擴展,而不是合約。錢包不會讓用戶自由運行具有訪問其私鑰的任意代碼;同樣地,它們也不應該允許用戶任意委托其帳戶。

因此,如果錢包不安全地整合了 3074 並且 用戶沒有驗證與之交互的調用者,那麼可能會委托給一個惡意的調用者。

然而,通過從 EOA 發送單個交易,可以撤銷所有“正在進行中”的 AUTH 籤名。

最低限度,錢包應該讓籤署 3074 消息變得非常重要。這就像導出你的私鑰一樣重要。

假設一個錢包安全地整合了 3074,帳戶仍然有可能被清空。這是批量交易的基本屬性。它不僅可以輕鬆地讓您發送多個操作,也可以讓攻擊者欺騙您將一批資產發送到他們控制的地址。

錢包必須清楚地顯示您正在籤名的每個操作。這樣,您就可以輕鬆地注意到:“我原本只打算進行一次交易,但這個籤名請求讓我做了十幾次轉帳”。

如果批量處理是通過盲目籤名實現的,那麼就不可能檢測到這一點。

是的,3074 把很多信任放在了錢包上。但是看,我們已經把我們的私鑰安全地交給了它們!再也沒有更高級別的信任了。

完全有可能安全地整合和使用 3074。如果任何錢包對如何做到這一點有疑問,請不要猶豫與我們聯系。作爲 3074 的作者,我們正在思考如何在其下一個階段中最好地幫助這個標準。

在過去的幾年裏,我們花了大量時間開發了關於它可能如何被使用和濫用的假設場景。我們對這些想法開始投入生產感到興奮。但我們也意識到,這是困難的一部分。

聲明

  1. 本文原標題爲“EIP-3074 之後,一個錯誤的籤名將能夠耗盡您在以太坊上的帳戶”轉載自[輕客戶端]]。所有版權歸原作者所有[ightclients]。如對轉載有異議,請聯系Gate Learn團隊,團隊會盡快處理。

  2. 免責聲明:本文所表達的觀點和意見僅代表作者個人觀點,不構成任何投資建議。

  3. 本文的其他語言翻譯由 Gate Learn 團隊完成。除非另有說明,否則禁止復制、分發或抄襲翻譯文章。

即刻开始交易
注册并交易即可获得
$100
和价值
$5500
理财体验金奖励!
It seems that you are attempting to access our services from a Restricted Location where Gate.io is unable to provide services. We apologize for any inconvenience this may cause. Currently, the Restricted Locations include but not limited to: the United States of America, Canada, Cambodia, Cuba, Iran, North Korea and so on. For more information regarding the Restricted Locations, please refer to the User Agreement. Should you have any other questions, please contact our Customer Support Team.