原標題:金字塔安全建設——智能合約審計篇

智能合約1995年由跨領域法律學者尼克薩博提出,是對現實中的合約條款執行電子化的量化交易協議。智能合約設計的總體目標是滿足常見的合約條件(如支付條款、留置權、機密性以及執行等),以及最大程度地減少惡意和偶然地異常,最大限度地減少對可信中介的依賴。智能合約已經在電子投票和供應鏈管理等很多領域得到應用,並且前景廣闊。

然而,對於智能合約這項新技術而言,其本身也存在一定的安全風險。目前智能合約已經發生過重大安全事件,黑客手法是利用漏洞入侵系統,進而對智能合約用戶造成巨大損失。其中較爲嚴重的兩大事件有:

Bitfinex在8月2日凌晨發佈公告,發現了安全漏洞。該漏洞導致bitfinex全面停止交易,這將導致每位用戶的賬戶平均損失36%。

黑客智能合約存在的漏洞攻擊The Dao,造成價值逾5000萬美元的損失。ETH市場價格從記錄高位21.50美元跌至15.28美元。

由此可見,對於智能合約這項新技術並非沒有挑戰。那麼,該如何保障智能合約的安全性呢?其中一個解決方案就是對智能合約進行合適的審計,以確保不存在安全問題,並確保所有合約得到高效的執行。

目前智能合約存在的四大安全風險:

1隱私泄露

智能合約對區塊鏈上的所有用戶可見,包括但不限於標記爲private的資源,存在造成隱私信息泄露的風險。

2交易溢出與異常

由於智能合約本身的約束條件,如條件競爭、交易順序依賴等,可能會造成交易溢出與異常。

3合約故障

由於智能合約代碼中可能存在不合理的故障處理機制,從而導致異常行爲。

4拒絕服務

由於各種原因導致的拒絕服務風險。

針對以上四大問題,金字塔提出了四大解決方案:

1、函數可見性審覈

敏感函數繼承權限檢測;函數調用權限檢測。

2、合約限制繞過審覈

使合約失效,刪除地址字節碼;將所有合約資金髮送到一個目標地址。

3、調用棧耗盡審覈

檢測棧高度限制,是否出現棧耗盡情況。

拒絕服務審覈

過多貨幣交易發生異常,導致交易回滾,最終導致合約拒絕服務。

金字塔深耕互聯網安全生態建設,深諳互聯網+全業務線的安全防護。目前金字塔技術團隊已經研發百餘種智能合約應用,幫助1000多個智能合約完成審計,針對目前主流的以太坊應用,金字塔可提供專業權威的智能合約審計服務,規避因合約安全問題導致的財產損失,各類以太坊應用安全保駕護航。

金字塔官網:pcsa.us

相關文章