-
bitcoin $87959.907984 USD
1.34% -
ethereum $2920.497338 USD
3.04% -
tether $0.999775 USD
0.00% -
xrp $2.237324 USD
8.12% -
bnb $860.243768 USD
0.90% -
solana $138.089498 USD
5.43% -
usd-coin $0.999807 USD
0.01% -
tron $0.272801 USD
-1.53% -
dogecoin $0.150904 USD
2.96% -
cardano $0.421635 USD
1.97% -
hyperliquid $32.152445 USD
2.23% -
bitcoin-cash $533.301069 USD
-1.94% -
chainlink $12.953417 USD
2.68% -
unus-sed-leo $9.535951 USD
0.73% -
zcash $521.483386 USD
-2.87%
如果區塊鍊是不可變的,智能合約如何更新?
Smart contracts can be upgraded without breaking blockchain immutability by using proxy patterns that redirect logic to new implementations while preserving data and address.
2025/11/09 21:20
了解不可變區塊鍊和智能合約更新的悖論
1. 區塊鏈技術建立在不變性原則之上,這意味著數據一旦寫入區塊鏈,就無法更改或刪除。這一特性確保了去中心化系統的透明度、安全性和信任。然而,智能合約(在區塊鏈上運行的自動執行程序)通常會隨著錯誤的發現或功能需要改進而不斷發展。不變性和更新需求之間的矛盾提出了獨特的挑戰。
2. 開發人員設計了架構模式和機制,允許在不破壞區塊鏈完整性的情況下升級智能合約邏輯。這些方法不會更改原始代碼,而是將執行重定向到新的實現,同時保留合約的狀態和地址。
3. 一種常見的方法涉及使用代理模式,其中代理合約保存狀態並充當接口,而實際邏輯駐留在單獨的、可升級的實現合約中。通過更改對實現的引用,開發人員可以有效地更新功能。
4. 另一種策略是合約遷移,即部署新版本的智能合約,並指示或激勵用戶將其資產和交互遷移到更新的合約。這種方法通過保持舊合約不變而將活動轉移到新合約來保持不變性。
5. 一些區塊鏈平台(例如以太坊)支持 ERC-1967 等標準,該標准定義了實施可升級合約的安全方法。這些標準有助於確保升級透明且可驗證,從而降低與惡意更改相關的風險。
代理模式:可升級合約背後的核心機制
1.最廣泛採用的更新智能合約的解決方案是代理模式。在此設置中,涉及兩個合約:代理合約和實施合約。代理存儲所有關鍵數據並通過 delegatecall 將函數調用轉發給實現。
2.當需要更新時,開發人員部署新的實現合約並更新代理中的指針以引用新地址。這允許邏輯改變,同時保持相同的合約地址和存儲的數據。
3. 代理模式有多種變體,包括透明代理、UUPS(通用可升級代理標準)和鑽石模式。每種方案在 Gas 成本、控制和復雜性方面都提供了不同的權衡。
4. 在透明代理中,指定的管理地址擁有升級實現的專有權利,而普通用戶與合約交互而不會注意到任何差異。這種分離有助於防止未經授權的升級。
5. UUPS 將升級邏輯移至實施本身,從而減小了代理的大小和成本。然而,這需要仔細審核,因為實施中的漏洞可能允許攻擊者劫持升級機制。
可升級智能合約的風險和注意事項
1. 可升級性帶來靈活性的同時,也帶來了中心化風險。如果單個實體控制了升級密鑰,他們就獲得了對合約行為的重大權力,可能會破壞去中心化。
2.惡意升級可能導致盜竊、資金凍結或功能意外改變。由於安全性較差的升級機制被利用,發生了一些備受矚目的事件,導致了巨大的經濟損失。
3. 透明度至關重要。用戶必須能夠驗證升級過程中進行了哪些更改。開源代碼、鏈上公告和社區治理有助於維護信任。
4. 一些項目使用多重簽名錢包或去中心化自治組織(DAO)來管理升級,在應用任何更改之前需要達成共識。這分散了控制權並符合去中心化原則。
5. 儘管有保障措施,升級機制的存在本質上會使合約變得更加複雜並增加其攻擊面。審計、正式驗證和限時升級是減輕這些風險的推薦做法。
常見問題解答
任何人都可以升級智能合約嗎?不可以,只有通過治理系統有權訪問升級密鑰或權限的實體才能發起升級。大多數係統限制這種能力以防止濫用。
可升級合約會破壞區塊鏈的不變性嗎?它們不會改變現有代碼。相反,它們將執行重定向到新代碼。原始合約在區塊鏈上保持不變,保持數據層面的不變性。
合約升級期間用戶資金會發生什麼變化?用戶資金和數據通常存儲在代理合約中,該合約仍然有效。只要存儲佈局兼容,升級後資金仍然安全且可訪問。
有沒有原生支持合約升級的區塊鏈?是的,EOS 和 Tezos 等一些平台提供了對可升級智能合約的原生支持,允許開發人員直接在協議層中構建更新機制。
免責聲明:info@kdj.com
所提供的資訊並非交易建議。 kDJ.com對任何基於本文提供的資訊進行的投資不承擔任何責任。加密貨幣波動性較大,建議您充分研究後謹慎投資!
如果您認為本網站使用的內容侵犯了您的版權,請立即聯絡我們(info@kdj.com),我們將及時刪除。
- 瑞波幣、銀行和現金:數字國庫革命和華盛頓的新藍圖
- 2026-01-31 22:40:02
- 比特幣的走鋼絲行為:槓桿率飆升,波動迫在眉睫
- 2026-01-31 22:20:02
- Spur Protocol 的 SON 代幣:上市傳奇及其暗淡的價格前景
- 2026-01-31 22:15:04
- 機構撤資數十億美元,比特幣價格崩潰迫在眉睫:BTC面臨關鍵時刻
- 2026-01-31 22:10:07
- Tria Airdrop 的第二幕:第 2 季拉開序幕,XP 詳細信息揭曉
- 2026-01-31 22:05:08
- 白銀清算引發關注:發生了什麼及其意味著什麼
- 2026-01-31 22:00:07
相關知識
什麼是減半? (了解Bitcoin的供應計劃)
2026-01-16 00:19:50
什麼是 Bitcoin 減半? 1. Bitcoin 減半是嵌入在 Bitcoin 協議中的預編程事件,它將給予礦工的區塊獎勵減少 50%。 2. 大約每 210,000 個區塊發生一次,根據 Bitcoin 的平均出塊時間 10 分鐘,大約每四年發生一次。 3. 該機制由中本聰設計,旨在加強稀缺性...
什麼是玩賺錢 (P2E) 遊戲及其運作方式?
2026-01-12 20:19:33
定義和核心機制1. Play-to-Earn (P2E) 遊戲是基於區塊鏈的數字體驗,玩家通過遊戲活動賺取加密貨幣代幣或不可替代代幣 (NFT)。 2. 這些遊戲依靠去中心化賬本技術來驗證所有權、轉移資產並在全球參與者網絡中透明地分配獎勵。 3. 與傳統視頻遊戲不同,P2E 遊戲將經濟系統直接嵌入其...
什麼是內存池以及交易如何得到確認?
2026-01-24 06:00:16
什麼是內存池? 1.內存池是每個Bitcoin節點內的臨時存儲區域,用於保存未確認的交易。 2. 交易在廣播到網絡後但在礦工將其納入區塊之前進入內存池。 3. 每個完整節點都維護自己的內存池版本,由於延遲或策略變化,該版本可能略有不同。 4. 內存池的大小和組成會根據網絡擁塞、交易費用和區塊空間可用...
如何用加密貨幣賺取被動收入?
2026-01-13 07:39:45
質押機制1. 質押是指在錢包中鎖定一定數量的加密貨幣,以支持交易驗證和共識維護等網絡操作。 2. 參與者收到以他們所持有的相同代幣計價的獎勵,通常根據網絡定義的參數定期分配。 3. 以太坊向權益證明的過渡顯著增加了散戶通過 Lido 和 Rocket Pool 等平台的可及性。 4. 一些協議規定了...
什麼是零知識證明(ZK-Proofs)?
2026-01-22 04:40:14
定義和核心概念1. 零知識證明(ZK-Proofs)是一種加密協議,使一方能夠向另一方證明陳述的真實性,而不會洩露超出該陳述有效性的任何潛在信息。 2. ZK-proof 必須滿足三個基本屬性:完整性、健全性和零知識——這意味著誠實的證明者可以說服誠實的驗證者,不誠實的證明者不能誤導驗證者,除非概率...
什麼是區塊鏈三難困境? (安全性、可擴展性和去中心化)
2026-01-15 17:00:25
了解核心衝突1. 區塊鏈三難困境描述了一個基本的架構約束,即在單個區塊鏈協議中同時最大化安全性、可擴展性和去中心化是極其困難的。 2. 每個重大設計決策都需要權衡——增加吞吐量通常需要減少節點數量或簡化共識邏輯,這會削弱去中心化或引入新的攻擊向量。 3. Bitcoin優先考慮安全性和去中心化,但將...
什麼是減半? (了解Bitcoin的供應計劃)
2026-01-16 00:19:50
什麼是 Bitcoin 減半? 1. Bitcoin 減半是嵌入在 Bitcoin 協議中的預編程事件,它將給予礦工的區塊獎勵減少 50%。 2. 大約每 210,000 個區塊發生一次,根據 Bitcoin 的平均出塊時間 10 分鐘,大約每四年發生一次。 3. 該機制由中本聰設計,旨在加強稀缺性...
什麼是玩賺錢 (P2E) 遊戲及其運作方式?
2026-01-12 20:19:33
定義和核心機制1. Play-to-Earn (P2E) 遊戲是基於區塊鏈的數字體驗,玩家通過遊戲活動賺取加密貨幣代幣或不可替代代幣 (NFT)。 2. 這些遊戲依靠去中心化賬本技術來驗證所有權、轉移資產並在全球參與者網絡中透明地分配獎勵。 3. 與傳統視頻遊戲不同,P2E 遊戲將經濟系統直接嵌入其...
什麼是內存池以及交易如何得到確認?
2026-01-24 06:00:16
什麼是內存池? 1.內存池是每個Bitcoin節點內的臨時存儲區域,用於保存未確認的交易。 2. 交易在廣播到網絡後但在礦工將其納入區塊之前進入內存池。 3. 每個完整節點都維護自己的內存池版本,由於延遲或策略變化,該版本可能略有不同。 4. 內存池的大小和組成會根據網絡擁塞、交易費用和區塊空間可用...
如何用加密貨幣賺取被動收入?
2026-01-13 07:39:45
質押機制1. 質押是指在錢包中鎖定一定數量的加密貨幣,以支持交易驗證和共識維護等網絡操作。 2. 參與者收到以他們所持有的相同代幣計價的獎勵,通常根據網絡定義的參數定期分配。 3. 以太坊向權益證明的過渡顯著增加了散戶通過 Lido 和 Rocket Pool 等平台的可及性。 4. 一些協議規定了...
什麼是零知識證明(ZK-Proofs)?
2026-01-22 04:40:14
定義和核心概念1. 零知識證明(ZK-Proofs)是一種加密協議,使一方能夠向另一方證明陳述的真實性,而不會洩露超出該陳述有效性的任何潛在信息。 2. ZK-proof 必須滿足三個基本屬性:完整性、健全性和零知識——這意味著誠實的證明者可以說服誠實的驗證者,不誠實的證明者不能誤導驗證者,除非概率...
什麼是區塊鏈三難困境? (安全性、可擴展性和去中心化)
2026-01-15 17:00:25
了解核心衝突1. 區塊鏈三難困境描述了一個基本的架構約束,即在單個區塊鏈協議中同時最大化安全性、可擴展性和去中心化是極其困難的。 2. 每個重大設計決策都需要權衡——增加吞吐量通常需要減少節點數量或簡化共識邏輯,這會削弱去中心化或引入新的攻擊向量。 3. Bitcoin優先考慮安全性和去中心化,但將...
看所有文章














