menu-icon
anue logo
澳洲房產鉅亨號鉅亨買幣
search icon

區塊鏈

Shima Capital CTO的Curve反思:為什麼我們需要Runtime Proctection和Aspect

BlockBeats 律動財經 2023-08-22 16:00


在最近的 Curve 可重入漏洞利用之後,我回顧了我在 JPL NASA 的經歷,在那裡我學到了開發具備 reliable(可靠)和 resilient(彈性/韌性)軟體的關鍵原則。對於加密行業,這些見解現在比以往任何時候都更加重要,理由如下:

歸根結底,人們只真正關注兩種類型的軟體:可以殺死你的軟體和可以讓你賠錢的軟體。

任何航天機器的關鍵軟體里,大部分預算 (80%+) 並未分配給開發本身,而是分配給集成和測試。如果軟體出現故障,飛行器就會從天而降——戰鬥機、無人機、航天器等。

航天軟體中的大多數代碼(如果被歸類為關鍵模塊)都遵守極其嚴格的測試/開發標準,例如 DO-178B A 級。不僅需要測試每一行代碼,而且如果有嵌套邏輯,則每個邏輯條件都是也經過專門測試。


在 JPL NASA,編寫先進的航天軟體的理念不是寫出最漂亮、乾淨的代碼,而是編寫出容易執行單元測試的代碼。為什麼?很簡單:當你將一艘航天器送入太空時,你只有一次機會,沒有人願意在失敗的機率較大的情況下冒險。這與區塊鏈的邏輯相同,因為不可變的代碼是它們的重要特性,我們也只有一次機會在每筆交易中正確使用我們的資金,所以我們為什麼不更認真地對待開發 dApp 這個過程呢?

儘管有嚴格的開發、測試和代碼審計流程,但這些手段的顯然不足以緩解所有錯誤和攻擊,因為事實上通過測試和審計消除所有運行時錯誤幾乎是不可能的。那麼我們如何保護我們的軟體免遭失敗呢?

運行時保護(Runtime Protection)

運行時保護是一種安全技術,可保護軟體應用程序在運行時免受惡意攻擊。它的原理是在代碼實際運行時進行實時檢測,分析程序的實際行為以保護程序免受惡意數據和攻擊的影響。

高可靠性軟體的運行時保護需要花費大量的投入和設計,因為它們是確保軟體不會進入未知狀態或故障的最後一道防線。這不僅僅是個論點,而是幾十年來經過驗證的實踐。

今天在 Web3 中,我認為 DeFi 應用程序需要同樣的高可靠性,並且應該考慮同樣的方法。然而,由於其潛在的限制,EVM 並不是為處理運行時保護等複雜任務而設計的。那麼,我們如何提供運行時保護呢?

一種方式是通過 Aspect 編程,Aspects 由 Artela 區塊鏈網路設計的,它能夠在任何智能合約交易的生命周期內切換執行上下文,以對程序的實時狀態進行高級檢查。Artela 通過 Aspect 和兼容 EVM 的方式,提供運行時保護的獨特設計,它有機會成為加密智能合約安全的未來基礎。

Artela 在下面的文章中公布了 Aspects 在防止 Curve 重入攻擊中的具體用法,希望一起交流!

《編譯器漏洞無解?Runtime Protection 實現 DeFi 鏈上風控保護》

原文連結

暢行幣圈交易全攻略,專家駐群實戰交流

▌立即加入鉅亨買幣實戰交流 LINE 社群(點此入群
不管是新手發問,還是老手交流,只要你想參與虛擬貨幣現貨交易、合約跟單、合約網格、量化交易、理財產品的投資,都歡迎入群討論學習!

前往鉅亨買幣找交易所優惠

文章標籤


Empty