市值: $2.6437T 0.10%
體積(24小時): $40.0551B -59.47%
恐懼與貪婪指數:

68 - 貪婪

  • 市值: $2.6437T 0.10%
  • 體積(24小時): $40.0551B -59.47%
  • 恐懼與貪婪指數:
  • 市值: $2.6437T 0.10%
加密
主題
加密植物
資訊
加密術
影片
頂級加密植物

選擇語言

選擇語言

選擇貨幣

加密
主題
加密植物
資訊
加密術
影片

什麼是 CREATE2 操作碼以及它如何啟用確定性合約地址?

CREATE2 enables predictable contract addresses in Ethereum, allowing off-chain systems to reference contracts before deployment.

2025/11/13 23:40

了解以太坊中的 CREATE2 操作碼

1. CREATE2操作碼是在君士坦丁堡升級期間通過EIP-1014引入以太坊的。它可以作為傳統 CREATE 操作碼的替代方案,傳統 CREATE 操作碼使用發送者的隨機數來部署智能合約,以確定生成的合約地址。與 CREATE 不同,CREATE2 允許開發人員在部署之前通過考慮除隨機數之外的特定輸入來計算合約的地址。

2. 在需要合約地址可預測性的場景中,該功能至關重要。例如,鏈下系統或第 2 層解決方案可能需要引用尚未部署的合約。通過啟用地址預計算,CREATE2 支持無需信任的交互並改善去中心化組件之間的協調。

3. CREATE2 生成的地址結構依賴於涉及四個元素的加密哈希:部署者的地址、用戶定義的鹽(32 字節值)、合約的字節碼(也稱為 init_code)以及該字節碼的 keccak256 哈希。由於這些輸入都不依賴於發送者的交易計數,因此相同的組合將始終產生相同的地址。

4. 該機制的一個顯著優點是能夠有條件地部署合約。僅當滿足某些條件時才能部署合約,但其未來地址仍然是提前已知的。這使得諸如反事實實例化之類的用例成為可能,其中應用程序甚至在合約上線之前就假設合約存在於已知位置。

確定性地址生成解釋

1. 確定性合約地址意味著給定相同的輸入集,輸出地址將始終相同。對於 CREATE2,使用的公式為keccak256(0xff + 地址 + salt + keccak256(init_code))[12:] 。前綴 0xff 確保名稱空間與通過 CREATE 創建的地址分離,從而降低衝突風險。

2. 鹽參數起著至關重要的作用。它由開發人員選擇,可以對有意義的數據進行編碼,例如用戶標識符、時間戳或特定於應用程序的密鑰。只要鹽和其他組件保持不變,從同一創建者地址重新部署相同的字節碼就會產生完全相同的目的地。

3. 由於地址取決於初始化代碼而不是運行時代碼的哈希值,因此構造函數參數或編譯字節碼的任何更改都會改變最終地址。這使得部署對編譯細節高度敏感,需要仔細的版本控制和可重現的構建。

4. 開發人員經常利用錢包工廠的確定性尋址,每個用戶都會獲得一個唯一派生的智能合約錢包。這些錢包可以預期在鏈外,甚至在部署發生之前就可以正確路由交易。

去中心化金融和二層系統中的應用

1. 在去中心化交易所和自動化做市商中,CREATE2 有助於創建具有可預測地址的礦池。這簡化了前端和機器人的集成,前端和機器人可以查詢池數據,而無需等待事件日誌或依賴註冊表。

2. 狀態通道和匯總等第 2 層擴展解決方案利用 CREATE2 進行反事實合約部署。通道中的參與者可以與虛擬合約實例進行交互,準確地知道它在鏈上實現後將駐留在哪裡。這減少了鏈上足跡,同時保留了安全保證。

3. 智能合約錢包,例如符合 ERC-4337(賬戶抽象)的錢包,依賴確定性地址來實現無縫的用戶體驗。用戶可以在未來的錢包地址存在之前將資金接收到該地址,因為資金交易的目標是預先計算的位置。

4. 另一個用例涉及可升級的代理模式,其中確定性地部署實施契約。儘管代理通常使用 CREATE,但將它們與基於 CREATE2 的工廠相結合可以增強跨部署的模塊化和可審核性。

常見問題解答

問:可以使用CREATE2在同一地址多次部署同一個合約嗎?

答:不可以。如果計算出的 CREATE2 地址已存在合約,則嘗試在那裡部署另一個合約將會失敗。 EVM 可以防止覆蓋現有代碼,確保地址被佔用後的不變性。

問:salt 值如何影響 CREATE2 部署中的安全性?

答:鹽一定要慎重選擇。可預測的鹽可能允許攻擊者在預期地址預先部署惡意合約。使用安全隨機性或唯一標識符可以減輕這種風險,特別是在未經許可的環境中。

問:就 Gas 而言,CREATE2 比 CREATE 貴嗎?

答:是的。由於計算確定性地址需要額外的哈希操作,CREATE2 通常會消耗更多的 Gas。確切的成本取決於 init_code 的大小和部署時的網絡狀況。

免責聲明:info@kdj.com

所提供的資訊並非交易建議。 kDJ.com對任何基於本文提供的資訊進行的投資不承擔任何責任。加密貨幣波動性較大,建議您充分研究後謹慎投資!

如果您認為本網站使用的內容侵犯了您的版權,請立即聯絡我們(info@kdj.com),我們將及時刪除。

相關知識

如何查看DOGE期貨成交量及持倉量?

如何查看DOGE期貨成交量及持倉量?

2026-09-12 08:39:38

了解 DOGE 期貨交易量1. 期貨交易量是指在特定時間範圍內交易的DOGE份期貨合約的總數,通常以每天或每小時計算。 2. 高成交量通常表示市場參與度較高,並且可以顯示潛在的趨勢延續或逆轉,這取決於價格走勢背景。 3. 交易者監控交易量高峰以及突破或崩潰,以評估合法性-交易量上升支持的持續價格變動...

如何查看BTC期貨交易量及持倉量?

如何查看BTC期貨交易量及持倉量?

2026-09-12 15:19:55

BTC期貨指標的資料來源1. CoinGlass API v4 提供 30 多個交易所的即時融資利率、清算熱圖和精細的未平倉合約細分。 2. 幣安期貨 API 提供買賣深度、合約特定交易量歷史記錄和保證金比率快照的本機存取。 3. OKX 資料入口網站提供可下載的 CSV 檔案,其中包含每日結算價格...

如何看懂DOGEUSDT永續合約圖表?

如何看懂DOGEUSDT永續合約圖表?

2026-09-11 19:19:48

了解 DOGEUSDT 永續圖表上的價格走勢1. 蠟燭圖的形成揭示了直接的市場情緒-綠色蠟燭表示買盤占主導地位,而紅色蠟燭則反映該區間內的拋售壓力。 2. 實體上方和下方的燈芯訊號拒絕更高或更低的價格;在波動較大的迷因幣市場中,長上影線通常會先於短期反轉。 3. 接近關鍵水平的連續小實體蠟燭表明在突...

如何閱讀幣安上的ETHUSDT期貨圖表?

如何閱讀幣安上的ETHUSDT期貨圖表?

2026-09-13 05:20:26

Bitcoin 減半機制1. 每產生 21 萬個區塊,Bitcoin 個礦工的區塊獎勵減半。 2. 此事件大約每四年發生一次,並被硬編碼到 Bitcoin 的協定中。 3. 最近一次減半將每個區塊的獎勵從 6.25 BTC 減少到 3.125 BTC。 4. 總供應上限仍固定在 2,100 萬 BT...

如何查詢幣安Bitcoin合約資金費用?

如何查詢幣安Bitcoin合約資金費用?

2026-09-13 18:00:17

Bitcoin 減半機制1. Bitcoin 的協議強制執行固定的發行時間表,其中大約每 210,000 個區塊,區塊獎勵就會減少一半。 2. 該事件大約每四年發生一次,直接減少了新進入流通的 BTC 數量。 3.截至2020年減半,礦工每區塊獲得6.25 BTC;下次減少將達到 3.125 BTC...

如何在幣安查看BTC合約資金費用?

如何在幣安查看BTC合約資金費用?

2026-09-10 08:00:06

找到資金費率顯示1. 進入幣安合約交易介面,選擇BTCUSDT永續合約。 2. 觀察價格圖表正下方或訂單簿附近的區域-該區域包含一個標有資金費率的標籤框。 3. 顯示數值即時更新,反映目前每小時的資金費率,無論是正數或負數。 4. 點選資金費率方塊將開啟一個彈出窗口,顯示多個結算週期的歷史資金價值。...

如何查看DOGE期貨成交量及持倉量?

如何查看DOGE期貨成交量及持倉量?

2026-09-12 08:39:38

了解 DOGE 期貨交易量1. 期貨交易量是指在特定時間範圍內交易的DOGE份期貨合約的總數,通常以每天或每小時計算。 2. 高成交量通常表示市場參與度較高,並且可以顯示潛在的趨勢延續或逆轉,這取決於價格走勢背景。 3. 交易者監控交易量高峰以及突破或崩潰,以評估合法性-交易量上升支持的持續價格變動...

如何查看BTC期貨交易量及持倉量?

如何查看BTC期貨交易量及持倉量?

2026-09-12 15:19:55

BTC期貨指標的資料來源1. CoinGlass API v4 提供 30 多個交易所的即時融資利率、清算熱圖和精細的未平倉合約細分。 2. 幣安期貨 API 提供買賣深度、合約特定交易量歷史記錄和保證金比率快照的本機存取。 3. OKX 資料入口網站提供可下載的 CSV 檔案,其中包含每日結算價格...

如何看懂DOGEUSDT永續合約圖表?

如何看懂DOGEUSDT永續合約圖表?

2026-09-11 19:19:48

了解 DOGEUSDT 永續圖表上的價格走勢1. 蠟燭圖的形成揭示了直接的市場情緒-綠色蠟燭表示買盤占主導地位,而紅色蠟燭則反映該區間內的拋售壓力。 2. 實體上方和下方的燈芯訊號拒絕更高或更低的價格;在波動較大的迷因幣市場中,長上影線通常會先於短期反轉。 3. 接近關鍵水平的連續小實體蠟燭表明在突...

如何閱讀幣安上的ETHUSDT期貨圖表?

如何閱讀幣安上的ETHUSDT期貨圖表?

2026-09-13 05:20:26

Bitcoin 減半機制1. 每產生 21 萬個區塊,Bitcoin 個礦工的區塊獎勵減半。 2. 此事件大約每四年發生一次,並被硬編碼到 Bitcoin 的協定中。 3. 最近一次減半將每個區塊的獎勵從 6.25 BTC 減少到 3.125 BTC。 4. 總供應上限仍固定在 2,100 萬 BT...

如何查詢幣安Bitcoin合約資金費用?

如何查詢幣安Bitcoin合約資金費用?

2026-09-13 18:00:17

Bitcoin 減半機制1. Bitcoin 的協議強制執行固定的發行時間表,其中大約每 210,000 個區塊,區塊獎勵就會減少一半。 2. 該事件大約每四年發生一次,直接減少了新進入流通的 BTC 數量。 3.截至2020年減半,礦工每區塊獲得6.25 BTC;下次減少將達到 3.125 BTC...

如何在幣安查看BTC合約資金費用?

如何在幣安查看BTC合約資金費用?

2026-09-10 08:00:06

找到資金費率顯示1. 進入幣安合約交易介面,選擇BTCUSDT永續合約。 2. 觀察價格圖表正下方或訂單簿附近的區域-該區域包含一個標有資金費率的標籤框。 3. 顯示數值即時更新,反映目前每小時的資金費率,無論是正數或負數。 4. 點選資金費率方塊將開啟一個彈出窗口,顯示多個結算週期的歷史資金價值。...

看所有文章

User not found or password invalid

Your input is correct