安全對于
區塊鏈的開發是絕對必要的。智能合約一直受到災難性黑客攻擊的困擾,包括DAO黑客攻擊、Parity錢包黑客攻擊,以及第二次Parity錢包黑客攻擊。如果你想要編寫智能合約,你必須閱讀這三個攻擊的分析。
事實是,智能合約很難搞好。雖然編程工具鏈將會得到改進,使這些精確的攻擊變得更加困難,但最終它們都是由于程序員的錯誤造成的。還有許多由智能合約編程產生的更微妙的bug,比如在前端集群(frontrunning)或安全生成隨機性(secure generation of randomness)等方面。
作為一名智能合約開發者,你必須將安全性視為最重要的事情。在智能合約編程中沒有“快速行動和打破常規”。這意味著任何處理大量資金流動的代碼都應該通過像Oyente或Securify這樣的靜態分析程序來運行,進行徹底的測試,然后由經驗豐富的智能合約審核員進行審計。你還應該嘗試依賴預審計的組件,比如OpenZeppelin的開源合約。
為了加強你的安全性,我建議你使用OpenZeppelin開發的Ethernaut,這是一款你可以在智能合約中發現并攻擊漏洞的游戲。他們中的很多人已經復制了對這個領域發生的智能合約的真實攻擊。
Phil Daian也有一套優秀的智能合約黑客挑戰稱為 Hack This Contract。
在你做到了這些以后,我強烈建議你整本閱讀由ConsenSys編譯的Smart Contract Best Practices。希望在你的智能合約編程生涯中多次重溫這個文檔。bibliography 也值得安全專家進一步閱讀。
版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。