📢 Gate廣場專屬 #WXTM创作大赛# 正式開啓!
聚焦 CandyDrop 第59期 —— MinoTari (WXTM),總獎池 70,000 枚 WXTM 等你贏!
🎯 關於 MinoTari (WXTM)
Tari 是一個以數字資產爲核心的區塊鏈協議,由 Rust 構建,致力於爲創作者提供設計全新數字體驗的平台。
通過 Tari,數字稀缺資產(如收藏品、遊戲資產等)將成爲創作者拓展商業價值的新方式。
🎨 活動時間:
2025年8月7日 17:00 - 8月12日 24:00(UTC+8)
📌 參與方式:
在 Gate廣場發布與 WXTM 或相關活動(充值 / 交易 / CandyDrop)相關的原創內容
內容不少於 100 字,形式不限(觀點分析、教程分享、圖文創意等)
添加標籤: #WXTM创作大赛# 和 #WXTM#
附本人活動截圖(如充值記錄、交易頁面或 CandyDrop 報名圖)
🏆 獎勵設置(共計 70,000 枚 WXTM):
一等獎(1名):20,000 枚 WXTM
二等獎(3名):10,000 枚 WXTM
三等獎(10名):2,000 枚 WXTM
📋 評選標準:
內容質量(主題相關、邏輯清晰、有深度)
用戶互動熱度(點讚、評論)
附帶參與截圖者優先
📄 活動說明:
內容必須原創,禁止抄襲和小號刷量行爲
獲獎用戶需完成 Gate廣場實名
Iagon團隊成功開發Cardano生態燃燒證明協議
Iagon推出Cardano生態燃燒證明協議
Iagon近期完成了Charles Hoskinson提出的挑戰,開發出適用於Cardano生態的燃燒證明(PoB)協議。本文將介紹Iagon團隊的解決方案,主要包括以下幾個方面:
燃燒證明及其應用
目前,加密代幣的燃燒(銷毀)已被廣泛採用,本質上是將代幣發送到一個無法訪問的"黑洞"地址。這個地址無法訪問,也無法重新獲取被銷毀的代幣。公衆可以驗證銷毀確實發生,但只知道一個"祕密"承諾值。這種機制的目的是確保被銷毀的資金不會被中間人審查。
燃燒機制有多種用途,可以增加剩餘代幣的價值,也可以作爲區塊鏈協議的承諾證明。大規模燃燒代幣可能會引發通縮壓力,因爲它減少了流通中的代幣總量。盡管燃燒是常見的區塊鏈交易,但仍需要礦工接受。雖然這些機制有好處,但也有人反對燃燒代幣。針對這個問題,Iagon致力於引入一種無法審查的代幣燃燒協議。這種特殊的無審查操作引起了Charles Hoskinson的關注。
燃燒證明的安全性基於與代幣轉帳交易相同的機制,即"加密哈希函數"。這些函數易於計算,但非常難以反向計算。本質上,它之所以難以反向計算,是因爲輸入的單個位變化會導致輸出的每個位隨機變化。這意味着,從一個加密哈希函數的輸出開始反向計算會耗費極長時間。簡而言之,翻轉加密哈希函數最低位可以創建一個黑洞地址,發送到該地址的任何內容都將難以或無法恢復。
這展示了加密交易的安全性完全基於公鑰密碼學和加密哈希函數:"每次發送資金時,都會創建一個新的未花費交易輸出(UTxO)。"UTxO記錄資金數量和接收者公鑰的加密哈希。如果接收者想使用這筆資金,必須用同樣的公鑰簽署一個新的支出交易。
使用翻轉哈希函數輸出最低位而不是直接使用0x0的哈希函數的原因是,使用已知值會使燃燒立即可見。然而,該協議的設想是先燃燒資金,然後(在獨立步驟中)證明它已被燃燒。爲此,需要先創建一個承諾值的哈希函數,然後承諾值顯示已創建一個黑洞地址。
Cardano網路上的燃燒證明智能合約
Cardano智能合約是在Cardano網路上運行的程序,允許合約開發者根據特定規則執行(金融)交易。智能合約旨在在不同交易方之間建立透明且可驗證的交易。近期,去中心化金融服務和去中心化組織推動了其應用的快速增長。
與傳統以太坊智能合約不同,Cardano採用了不同的結構,允許用戶在自己的錢包中模擬每筆交易,使網路攻擊更加困難。由此產生的變化通過區塊鏈節點驗證後被記錄。Cardano智能合約有三個組成部分:
這意味着Cardano智能合約在帳本上沒有中心化狀態。每個eUTxO擁有獨立的狀態(數據),無法與其資金分離。這會產生四種可能的操作:
需要注意,端點在用戶錢包中運行。端點腳本在錢包中完成運行後,生成的交易會移至區塊鏈。在本例中,這個交易會將資金移至贖回者腳本。該腳本驗證資金只能被持有哈希值的目標地址訪問。
在鎖定中,哈希值可能是我們自己的地址。在燃燒中,哈希值指向一個黑洞地址。我們通過給哈希一個祕密的承諾值,然後翻轉它來實現這一點。由於使用了加密哈希函數,幾乎不可能找到其結果對應的匹配哈希值。
需要注意,flipCommitment只翻轉哈希值的最低有效位(LSB)。
接收交易的中間人無法知道這是燃燒還是鎖定交易。通過使用這個腳本,中間人無法選擇性地審查任何燃燒交易。燃燒和鎖定使用相同的贖回者格式,只有交易發起者知道這是燃燒還是鎖定。燃燒值可以通過使用給定承諾值的被銷毀端點來驗證。在承諾值公布之前,沒有人知道被銷毀的資金數量。
智能合約在測試網上的部署
要使用錢包啓動測試網節點,需要助記詞和隨機密碼。可以通過以下步驟部署智能合約:
安裝Haskell工具鏈
構建Plutus腳本
啓動連接Cardano節點和錢包的容器
恢復錢包並輸出錢包ID(後續步驟需要),運行以下代碼生成用於測試的隨機助記詞
運行燃燒代幣
運行並驗證燃燒
通過執行上述步驟,外界無法知道這是燃燒還是鎖定交易。然而,發布該腳本後,人們可能會嘗試編譯拒絕與提議的贖回者腳本哈希對應的贖回者。這需要付出巨大努力,但可能導致某些燃燒被審查。爲防止這種情況發生並使違規行爲更加困難,Iagon致力於使該解決方案更安全,將在下一部分詳細說明。
從智能合約到錢包腳本
利用大多數智能合約操作發生在用戶錢包中這一事實,創建僅使用錢包的執行方案可能使智能合約變得不再必要。然而,這種做法可能有一個實際意義,即不可能有選擇地阻止對應燃燒的智能合約交易。但是,想要阻止所有燃燒的審查者可以阻止所有腳本來達到目的。只使用錢包,審查燃燒的唯一方法就是審查所有Cardano交易。這對審查而言是一種終極抵抗。
要實現這一點,我們需要用承諾值的哈希替換其公鑰的哈希,並翻轉承諾值的最低位。但這還不夠。Cardano通過檢查結構和CRC代碼來防止地址中的輸入錯誤。因此,從承諾生成地址的最簡單方法是使用以下腳本和Cardano API庫。
要查看其工作原理,可以使用以下代碼生成燃燒地址:
然後,可以使用以下代碼將交易提交到Cardano區塊鏈:
要驗證燃燒,需要使用以下代碼查看發送到燃燒地址的交易:
結語
本文將燃燒證明協議的實現分爲智能合約或錢包交易兩種方式。然而,Alonzo智能合約目前缺乏必要的基礎設施,如PAB庫。因此,我們建議使用錢包腳本。無論如何,PAB庫將在不久的將來實施基於Cardano的應用程序開發,結合錢包腳本,復雜的智能合約解決方案可能更具可行性,以創建一個能抵抗潛在審查的環境。如果想深入了解這個解決方案,可以在Github上查看所有相關信息。