幾周前,多個廣泛使用的
以太坊多重簽名錢包被黑了,被盜以太坊資產達3200萬美元。另有1.6億美元的資產被一群白帽黑客搶先保護起來。
這起事件突顯了編寫智能合約代碼所面臨的挑戰。沒有什么環境比公有鏈更具對抗性了:你的代碼對所有人公開,任何人都可以研究你公開的函數。再加上那些用來保護數千萬美元資產的合約,所有這些使你置身的環境對黑客極具吸引力,他們往往會動力十足地尋找你合約中的漏洞并加以利用。
在多重簽名錢包遭到黑客攻擊這件事上,諷刺的是,它們本應比只有一把私鑰的錢包更安全。理論上,多重簽名這一屬性增加了被黑的難度,因為黑客需要侵襲多人才能獲得私鑰。然而,多重簽名技術在執行此安全功能時存在一個邏輯漏洞,這個漏洞使其安全系數比單個秘鑰的安全系數還低。
簡單性vs安全性
這里出現了一個有趣的權衡現象:智能合約中,運用的邏輯越多,可實現的安全功能越多:超時設定、支付限制、多重簽名、金庫(vault)等。然而,運用的邏輯越多,智能合約的攻擊面也越大,漏洞也更有可能帶來破壞安全功能的風險。
我們可以考慮一系列資產管理工具,不管是簡單的還是復雜的。但要保護以太幣的安全,最簡單的方法是使用與以太坊地址相對應的單個私鑰,有時也稱為“終端用戶賬戶”。采用這種方法,根本不存在智能合約邏輯,也就無需為此費神,這樣便消除了這一風險。然而,只使用一把秘鑰也意味著存在單點故障。
另一方面,你也可以創建復雜的錢包合約來管理自己的資金。以太坊基金會有一個他們經常使用的錢包合約,且最近Gnosis引入了一個精巧的多重簽名錢包,該錢包支持支付限制、管理控制,并采用了這樣一種工作流程,即(錢包)所有者可以確認由其他人提交的交易。
版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。