#baby
白皮書裡舉了個例子:Bob跟Larry預先簽好一組比特幣交易,條件寫死是如果BTC價格跌破5萬美元,Larry可以強制平倉。我看到這段忍不住想問一個問題:這個5萬美元的價格,究竟是誰、用什麼方式證明給比特幣鏈看的?
TBV的核心設計是vault只接受外部智能合約狀態的ZK證明,不接受任何一方單方面宣告的數值。理論上這解決了”誰說了算”的信任問題,因為提款前必須先驗證那筆ZK證明是不是真的對應到外部鏈上合約當下的狀態。但這裡有個技術上容易被忽略的縫隙:ZK證明能保證”外部合約確實處於某個狀態”,卻沒辦法保證”那個狀態本身的輸入資料是正確的”。也就是說,如果外部鏈上的價格資料本身就是被操縱過的oracle結果,TBV的ZK驗證還是會照樣放行提款,因為它驗證的是邏輯正確性,不是資料真實性。
換句話說,TBV把”相信橋接方”這個信任缺口補起來了,但沒有也不打算解決外部合約自己的oracle風險,這其實是兩層不同的問題。
我認為這才是評估TBV安全性時該分清楚的地方:@BabylonLabs_io 解決的是比特幣端的自我託管跟驗證問題,但$BABY 生態要接進去的DeFi協議,自己那端的oracle安全性還是得各自把關,兩者不能混為一談。
白皮書裡舉了個例子:Bob跟Larry預先簽好一組比特幣交易,條件寫死是如果BTC價格跌破5萬美元,Larry可以強制平倉。我看到這段忍不住想問一個問題:這個5萬美元的價格,究竟是誰、用什麼方式證明給比特幣鏈看的?
TBV的核心設計是vault只接受外部智能合約狀態的ZK證明,不接受任何一方單方面宣告的數值。理論上這解決了”誰說了算”的信任問題,因為提款前必須先驗證那筆ZK證明是不是真的對應到外部鏈上合約當下的狀態。但這裡有個技術上容易被忽略的縫隙:ZK證明能保證”外部合約確實處於某個狀態”,卻沒辦法保證”那個狀態本身的輸入資料是正確的”。也就是說,如果外部鏈上的價格資料本身就是被操縱過的oracle結果,TBV的ZK驗證還是會照樣放行提款,因為它驗證的是邏輯正確性,不是資料真實性。
換句話說,TBV把”相信橋接方”這個信任缺口補起來了,但沒有也不打算解決外部合約自己的oracle風險,這其實是兩層不同的問題。
我認為這才是評估TBV安全性時該分清楚的地方:@BabylonLabs_io 解決的是比特幣端的自我託管跟驗證問題,但$BABY 生態要接進去的DeFi協議,自己那端的oracle安全性還是得各自把關,兩者不能混為一談。