-
bitcoin $77560.422694 USD
1.38% -
ethereum $2487.453153 USD
1.65% -
tether $0.999055 USD
0.00% -
bnb $754.929766 USD
3.97% -
xrp $1.325914 USD
1.70% -
usd-coin $0.999829 USD
-0.01% -
solana $105.756375 USD
5.69% -
tron $0.335859 USD
0.15% -
zcash $1491.934575 USD
9.81% -
hyperliquid $87.784577 USD
10.62% -
dogecoin $0.084281 USD
3.81% -
monero $531.066198 USD
7.27% -
chainlink $11.802944 USD
5.34% -
unus-sed-leo $8.892769 USD
-0.44% -
cardano $0.213660 USD
7.72%
如何升級智能合約?
Smart contract upgradability enables developers to enhance functionality or fix bugs without altering the contract's address or state, using methods like proxy contracts, unstructured storage, or eternal storage patterns.
2025/07/24 02:01
了解智能合同升級性
智能合約是通過設計不變的,這意味著一旦部署在區塊鏈上,它們的代碼就無法更改。但是,升級智能合約是需要修復錯誤,改善功能或適應不斷變化條件的開發人員的至關重要要求。智能合約的升級性不是對現有合同的直接修改,而是涉及設計模式,該模式可以在保留合同的狀態和地址的同時改變邏輯。
有幾種方法可以實現這一目標,包括代理合同,非結構化存儲代理和永恆的存儲模式。每種方法都有其優點和缺點。開發人員必須仔細評估哪種方法最適合其用例,然後再將升級性升級到其智能合約中。
使用代理合同以升級
升級智能合約的最常見和安全方法之一是使用代理合同。這涉及部署兩個合同:持有國家和轉發電話的代理合同,以及包含實際邏輯的實施合同。
- 用代理合同使用代理合同指向實施合同。
- 部署包含智能合約邏輯的初始實施合同。
- 將代理合同的實施地址設置為指向實施合同的地址。
- 需要升級時,請部署具有更新的邏輯的新實施合同。
- 更新代理合同的實施指針指向新的實施合同地址,而無需更改代理的地址或州。
此方法可確保用戶與相同的合同地址進行交互,而基礎邏輯可以無縫升級。
非結構化存儲代理模式
非結構化存儲代理模式是代理合同方法的高級版本。它使用存儲插槽來存儲實現地址,從而使其與意外覆蓋更加安全。
- 在代理合同中定義特定的存儲插槽以存儲實施地址。
- 在代理合同中編寫一個後備功能,該合同使用DelegateCall將所有功能調用轉發到實施合同。
- 部署代理合同和初始實施合同。
- 使用內聯裝配或預定義功能在指定的存儲插槽中設置實現地址。
- 要升級,請部署新版本的實現合同,並在存儲插槽中更新代理的實現地址。
該方法將代理的存儲與實施隔離,從而降低了存儲碰撞的風險並確保更安全的升級。
實施永恆的存儲模式
永恆的存儲模式將數據存儲與邏輯分開,從而使開發人員可以升級邏輯而不會影響數據。這對於數據持久性至關重要的長期合同特別有用。
- 創建一個存儲所有數據變量的存儲合同。
- 制定通過功能調用與存儲合同相互作用的邏輯合同。
- 將邏輯合同鏈接到部署期間或通過註冊表合同期間的存儲合同。
- 當需要升級時,請部署新的邏輯合同並在註冊表或存儲合同中更新參考。
- 確保新的邏輯合同遵循與先前版本相同的接口和數據結構,以保持兼容性。
這種模式為升級邏輯提供了靈活性,同時保持數據完整,使其非常適合複雜的分散應用程序。
升級智能合約的考慮因素
升級智能合約並非沒有風險。開發人員必須在實施升級之前考慮幾個關鍵因素:
- 安全含義:任何升級機制都引入了潛在的攻擊向量。徹底審核代理和實施合同至關重要。
- 訪問控制:升級的能力應僅限於受信任的實體。實施多簽名治理或時間表可以增強安全性。
- 兼容性:新實施必須與現有數據結構和功能簽名兼容,以避免違反合同。
- 測試:需要嚴格的測試以確保升級按預期工作,並且不會引入新的錯誤或漏洞。
- 文檔:清晰的升級過程和機制的文檔對於將來的維護和透明度至關重要。
這些考慮因素有助於確保升級機制堅固,安全和可維護。
常見問題
誰能升級智能合同?不,升級智能合約的能力通常僅限於合同中定義的特定地址或角色。這些角色可能包括所有者地址,治理合同或多智錢包。
無需使用代理合同而可以升級性嗎?是的,儘管代理合同是最常見的方法,但其他方法(例如永恆的存儲方式或模塊化合同設計)也可以根據體系結構升級。
合同升級期間用戶資金會發生什麼?在升級期間,用戶資金仍然安全,因為代理合同維護相同的地址和狀態。基礎邏輯已更新,但存儲和平衡仍然不受影響。
在部署前如何測試智能合同升級?您可以通過模擬升級過程來測試本地區塊鍊或TestNet上的升級。使用Hardhat或Truffle等工具在受控環境中部署和測試代理和實施合同。
免責聲明:info@kdj.com
所提供的資訊並非交易建議。 kDJ.com對任何基於本文提供的資訊進行的投資不承擔任何責任。加密貨幣波動性較大,建議您充分研究後謹慎投資!
如果您認為本網站使用的內容侵犯了您的版權,請立即聯絡我們(info@kdj.com),我們將及時刪除。
- 隨著 Avalanche Chain 擁抱代幣化基金和機構成長,AVAX 價格飆升
- 2026-09-18 16:50:01
- 日本央行升息:日圓、比特幣和套利交易的平倉
- 2026-09-18 12:50:01
- XRP Ledger 透過重大更新擁抱原生借貸和交易捆綁
- 2026-09-18 12:30:01
- CFTC 為被動加密貨幣交易軟體提供經紀商註冊減免,標誌著更廣泛的監管轉變
- 2026-09-18 12:55:01
- 美國收緊控制:在海事支付調查中針對伊朗加密貨幣交易所 BitBank 實施新制裁
- 2026-09-18 12:45:01
- 美國財政部製裁伊朗交易所 BitBank 超過 10 億美元的加密貨幣流動:紐約觀點
- 2026-09-18 12:55:01
相關知識
如何查看SOL期貨成交量和持倉量?
2026-09-14 00:40:03
存取 SOL 期貨市場數據1. 前往SOL永續合約或季度合約上市的官方交易平台,例如Bybit、OKX或Bitget。 2. 找到SOL/USDT或SOL/USD期貨交易對頁面,切換到「合約概覽」或「市場資料」標籤。 3. 識別標記為「交易量(24 小時)」和「未平倉合約」的即時字段,這兩個字段通常...
如何查看XRP期貨交易量和持倉量?
2026-09-15 05:00:12
存取即時 XRP 期貨數據1. 造訪列出 XRP 永續合約和季度期貨合約的主要衍生性商品交易所,包括 Binance、Bybit、OKX 和 Bitget。 2. 導覽至XRP/USDT或XRP/USD交易對頁面,找到即時顯示交易量和持倉量資料的市場深度面板。 3. 確認顯示的持倉量是否反映了多頭/...
如何查看DOGE期貨成交量及持倉量?
2026-09-12 08:39:38
了解 DOGE 期貨交易量1. 期貨交易量是指在特定時間範圍內交易的DOGE份期貨合約的總數,通常以每天或每小時計算。 2. 高成交量通常表示市場參與度較高,並且可以顯示潛在的趨勢延續或逆轉,這取決於價格走勢背景。 3. 交易者監控交易量高峰以及突破或崩潰,以評估合法性-交易量上升支持的持續價格變動...
如何查看ETH期貨交易量及持倉量?
2026-09-16 19:00:18
存取即時 ETH 期貨數據1. Binance、Bybit和OKX等主要中心化交易所提供即時儀表板,顯示ETH永續和季度期貨交易量和持股。這些指標每 5-10 秒更新一次,無需登入其公開市場頁面即可存取。 2. Glassnode、CryptoQuant 和 Coinglass 等鏈上分析平台可以跨...
如何查看BTC期貨交易量及持倉量?
2026-09-12 15:19:55
BTC期貨指標的資料來源1. CoinGlass API v4 提供 30 多個交易所的即時融資利率、清算熱圖和精細的未平倉合約細分。 2. 幣安期貨 API 提供買賣深度、合約特定交易量歷史記錄和保證金比率快照的本機存取。 3. OKX 資料入口網站提供可下載的 CSV 檔案,其中包含每日結算價格...
如何看懂DOGEUSDT永續合約圖表?
2026-09-11 19:19:48
了解 DOGEUSDT 永續圖表上的價格走勢1. 蠟燭圖的形成揭示了直接的市場情緒-綠色蠟燭表示買盤占主導地位,而紅色蠟燭則反映該區間內的拋售壓力。 2. 實體上方和下方的燈芯訊號拒絕更高或更低的價格;在波動較大的迷因幣市場中,長上影線通常會先於短期反轉。 3. 接近關鍵水平的連續小實體蠟燭表明在突...
如何查看SOL期貨成交量和持倉量?
2026-09-14 00:40:03
存取 SOL 期貨市場數據1. 前往SOL永續合約或季度合約上市的官方交易平台,例如Bybit、OKX或Bitget。 2. 找到SOL/USDT或SOL/USD期貨交易對頁面,切換到「合約概覽」或「市場資料」標籤。 3. 識別標記為「交易量(24 小時)」和「未平倉合約」的即時字段,這兩個字段通常...
如何查看XRP期貨交易量和持倉量?
2026-09-15 05:00:12
存取即時 XRP 期貨數據1. 造訪列出 XRP 永續合約和季度期貨合約的主要衍生性商品交易所,包括 Binance、Bybit、OKX 和 Bitget。 2. 導覽至XRP/USDT或XRP/USD交易對頁面,找到即時顯示交易量和持倉量資料的市場深度面板。 3. 確認顯示的持倉量是否反映了多頭/...
如何查看DOGE期貨成交量及持倉量?
2026-09-12 08:39:38
了解 DOGE 期貨交易量1. 期貨交易量是指在特定時間範圍內交易的DOGE份期貨合約的總數,通常以每天或每小時計算。 2. 高成交量通常表示市場參與度較高,並且可以顯示潛在的趨勢延續或逆轉,這取決於價格走勢背景。 3. 交易者監控交易量高峰以及突破或崩潰,以評估合法性-交易量上升支持的持續價格變動...
如何查看ETH期貨交易量及持倉量?
2026-09-16 19:00:18
存取即時 ETH 期貨數據1. Binance、Bybit和OKX等主要中心化交易所提供即時儀表板,顯示ETH永續和季度期貨交易量和持股。這些指標每 5-10 秒更新一次,無需登入其公開市場頁面即可存取。 2. Glassnode、CryptoQuant 和 Coinglass 等鏈上分析平台可以跨...
如何查看BTC期貨交易量及持倉量?
2026-09-12 15:19:55
BTC期貨指標的資料來源1. CoinGlass API v4 提供 30 多個交易所的即時融資利率、清算熱圖和精細的未平倉合約細分。 2. 幣安期貨 API 提供買賣深度、合約特定交易量歷史記錄和保證金比率快照的本機存取。 3. OKX 資料入口網站提供可下載的 CSV 檔案,其中包含每日結算價格...
如何看懂DOGEUSDT永續合約圖表?
2026-09-11 19:19:48
了解 DOGEUSDT 永續圖表上的價格走勢1. 蠟燭圖的形成揭示了直接的市場情緒-綠色蠟燭表示買盤占主導地位,而紅色蠟燭則反映該區間內的拋售壓力。 2. 實體上方和下方的燈芯訊號拒絕更高或更低的價格;在波動較大的迷因幣市場中,長上影線通常會先於短期反轉。 3. 接近關鍵水平的連續小實體蠟燭表明在突...
看所有文章














