KeyFrame內部研究專用

Capture the Spec (Competition) | Tomer Ganor (Certora) - DSS 101 2024

DeFi Security Summit - DSS·12月17日週二·10 min英文

三句話摘要

DSS期間舉辦的Solidity多重簽名合約開發競賽,參賽者需基於預定CVL規範編寫智能合約。 通過提供完整CVL規範反向設計合約,這場競賽實踐展示了形式驗證如何在安全需求高的場景中大幅提升開發效率——事前規範設計好的代碼驗證速度遠快於事後測試。 反向開發流程:通常工作是根據客戶代碼編寫CVL規範,本次比賽反向進行——講者提供完整CVL規範,參賽者需編寫符合規範的Solidity合約,降低參賽門檻。

重點整理

重點
  • 1

    反向開發流程:通常工作是根據客戶代碼編寫CVL規範,本次比賽反向進行——講者提供完整CVL規範,參賽者需編寫符合規範的Solidity合約,降低參賽門檻。

  • 2

    多層規範保證:提供三類規範文件——規則規範(描述系統合約流程)、不變性規範(驗證器數組唯一性等)、健全性規範(確保實現真實功能,防止空實現通過)。

  • 3

    實現自由度與約束平衡:參賽者可自由編寫Solidity代碼和優化實現,但不能修改CVL文件,且建議添加來自CVL的屬性列表和系統描述。

  • 4

    形式驗證的實用價值展示:透過完整規範設計,展現事前編寫好規範能大幅加快開發速度——無需傳統測試,代碼通過CVL驗證即可確保安全性。

實用技巧與重點

乾貨
  • 獎金設置
  • 前3個通過驗證且獨一無二規範的提交:各1000美元
  • 最高效代碼實現額外獎勵:500美元
  • 最快解決特定屬性的方案:500美元
  • 規範文件
  • 規則規範(.spec CVL文件):描述系統合約流程
  • 不變性規範(CVL文件):多項系統不變性(如驗證器數組唯一性)
  • 健全性規範:驗證實現功能真實性
  • 多重簽名空合約(Sol文件):包含需實現的外部函數
  • 技術要求
  • 代碼必須編譯
  • 包含清晰註釋
  • 無bug
  • 驗證時間不超過15分鐘
  • 不修改CVL規範文件
  • 支持渠道
  • 仓库README:包含所有問題答案
  • Telegram支持頻道:規範缺失內容補充
  • 截止時間
  • 提交截止:9號晚上

結論

結論

通過提供完整CVL規範反向設計合約,這場競賽實踐展示了形式驗證如何在安全需求高的場景中大幅提升開發效率——事前規範設計好的代碼驗證速度遠快於事後測試。

完整解析

詳細

本次比賽創新性地反轉了智能合約形式驗證的通常流程。在正常工作中,工程師根據客戶提供的Solidity代碼和設計需求編寫CVL(Certora Verification Language)規範,這個過程學習難度大、門檻高。而此次競賽正好相反——講者團隊已經編寫完整的CVL規範和不變性定義,參賽者只需用熟悉的Solidity代碼實現功能即可。

規範體系包含三層。規則規範文件描述多重簽名合約應有的流程邏輯;不變性規範則定義了系統必須始終滿足的性質,例如驗證器數組中任意兩個點的所有驗證器都必須不同;健全性規範則是一道「防作弊關卡」,它檢驗參賽者是否真正實現了功能,而非提交空實現或無意義的代碼——若只是回滾操作什麼都不做,健全性規範會因為沒有任何行為發生而失敗。

參賽者獲得包含外部函數接口定義的空合約框架,可自由編寫任何Solidity代碼,但嚴禁修改CVL文件(因為最終評測會用講者的官方規範版本進行驗證)。講者建議參賽者基於CVL派生出屬性列表、撰寫系統描述文檔,這些對理解需求、加速開發很有幫助。這個過程模擬真實開發場景:在短時間內(約兩天)設計和實現一個安全系統,但與傳統開發不同的是,無需進行繁瑣的測試流程——只要代碼通過CVL驗證,就等同於形式上證明了其正確性。

獎勵機制鼓勵多個維度的優化。前三個成功提交獨一無二規範的團隊各獲1000美元;另有兩個500美元的加分獎項,分別獎勵最高效的代碼實現和最快解決特定屬性的方案。不過所有獎項都有前提:必須通過所有規則驗證。提交截止日期為9號晚上,所有支持資料(倉庫、README、Telegram頻道)都已準備就緒。

關鍵時刻

Pipeline v2

帶時間戳的重點,會在逐字稿層級分析上線後產生。目前請先透過原始影片觀看。

事實查核

Pipeline v2

說法查證是下一次管線升級的一部分。KeyFrame 只會顯示它真正能驗證的內容。

更多「Web3 安全」的內容

IF YOU OWN XRP YOU NEED TO SEE THIS PRICE MANIPULATION! ⚠️
8 min
Web3 安全英文8月14日

IF YOU OWN XRP YOU NEED TO SEE THIS PRICE MANIPULATION! ⚠️

Zach Humphries

  • 機構支撐的積極意義:價格操縱常被視為負面,但Ripple掌握大量XRP供應與escrow,在熊市期間提高價格下限,實際上替零售投資者鎖定了低風險的積累區間,這不是剝削而是市場穩定機制。
  • 歷史模式驗證:2024年7月至11月XRP在50美分附近橫盤整理,低點觸及42美分(wick),高點65美分;隨後11月5日至12月5日單月上漲456%,年底到2025年初累計漲幅534%,這個歷史周期正在1美元價位重演。
  • 比特幣聯動邏輯:講者在4-5月就預測「如果比特幣跌至60k以下,XRP會跌至1美元或更低」,此預測精準應驗,反映出熊市中兩者的明確連動關係。
Minimmit, Multimmit and the New Consensus Frontier with Patrick O'Grady
72 min
Web3 安全英文PODCAST8月5日

Minimmit, Multimmit and the New Consensus Frontier with Patrick O'Grady

Zero Knowledge

  • 反向 Linux 架構:Commonware 刻意暴露棧各層級控制,讓開發者自訂執行環境、共識機制、密碼學實現,而非像 Cosmos SDK 只允許應用層以上定制。2-3 個月能組裝一條定製鏈,代價是額外深度但回報是長期維護成本降低及效能優化彈性。
  • 容錯假設的典範轉移:Alpine Glow(Solana 2025)實現單輪投票定終的關鍵是將容錯預算分離為獨立的 Byzantine 和 Crash 容限。傳統系統把 33% 當一個整體預算;新模型允許 20% 惡意加 20% 崩潰,打破了 PBFT 理論界線,釋放單輪設計空間。
  • Minimet 與 Multimet 的遞進:Minimet 是 5F+1 設定下的乾淨構造,實現更短視圖延遲;Multimet(剛發布)進一步允許並行 mini-commits 且驗證者可推翻領導者審查,使用者交易在全球分布式網路達到 200-300 毫秒端到端定終。
Private Information Retrieval (PIR) with Alex Hoover
64 min
Web3 安全英文PODCAST7月29日

Private Information Retrieval (PIR) with Alex Hoover

Zero Knowledge

  • PIR 保護的是訪問模式,不是資料本身
  • PIR 與加密不同,它關注的是隱藏「客戶端查詢了什麼」,而非「資料是否加密」。在公開資料庫(如區塊鏈)上,客戶端可以在不洩露查詢對象給伺服器的情況下檢索特定條目,解決了輕量級客戶端的隱私和防審查問題。
  • 客戶端預處理方案是突破瓶頸的關鍵