回顧:Qtum量子鏈應邀參加2018萬向區塊鏈黑客馬拉松前端
近日,Qtum量子鏈應邀出席參加萬向區塊鏈黑客馬拉松,其中Qtum核心開發工程師鄭翊做爲評委向在場的各位開發者出兩道區塊鏈技術題目,而且在場開出10000美金的獎賞做爲對優秀團隊的獎勵。git
QtumSwap團隊贏得了本場活動的重金懸賞,那麼他們是如何解開題目呢?github
首先,咱們先來看看題目是什麼?算法
測試網水龍頭安全
其中咱們要求開發者設計一個測試網的水龍頭,其中用戶必須在社交網絡上發一條消息來獲取代幣,其次每一個社交網絡帳戶天天只能獲取有限數量的代幣,固然安全性的考量也要求系統必須可以抵禦DDoS等惡意工具,此款測試的工具能夠用於開發者獲取測試網的代幣,從而實驗代幣轉移、運行智能合約。網絡
原子跨鏈交換工具
原子跨鏈交換主要爲了實現Qtum和BTC之間的原子跨鏈交換。區塊鏈
其中原子跨鏈交換指兩個用戶持有兩條鏈上的代幣,按照約定的數量進行交換,系統在不依賴第三方的狀況下,實現原子交換。這裏的「原子」是指,兩條鏈上的兩筆交易必須保持交易同態,不能出現一條鏈上交易完成另外一條上交易失敗的狀況。原子跨鏈交換能夠做爲工具實現不一樣鏈上數字貨幣的相互流轉,支持除Btc之外其餘數字貨幣和Qtum的交換。測試
其中得到本場獎金是來自於QtumSwap團隊,接下去看看他們是如何交出技術完美答卷。編碼
團隊介紹
邱飛暘,QtumSwap項目的主要負責人,清華大學專業爲密碼學,共識算法和隨機數
許迪星,西交利物浦大四信息與計算科學,來自Hyperledger,負責fabric-sdk-py的編寫
徐斌,浙大信息與電子工程系大四,主要負責一部分合約,合約監聽腳本,和一部分前端,正在從應用層過渡到系統和算法層
馮力全,來自北郵,如今仙女座科技作智能合約開發,實現了Qtum上的erc20與BTC原子交換中部署在Qtum的合約,以及改進用BTC在Qtum平臺上租房的合約
5sWind,來自IBM和復旦,目前在IBM作區塊鏈開發,主要興趣在公鏈和聯盟鏈,底層協議
QtumSwap項目介紹
1. Qtum和BTC:
基於Qtum以及BTC的UTXO實現了正常流程的原子交換。
具體原理詳見:https://github.com/PRIEWIENV/QtumSwap/tree/master/quantum_swap
2. Qtum上的token和BTC:
Gateway合約已經能夠支持完整的HTLC特性了,Gateway合約支持Qtum上的token和BTC上的UTXO腳本進行原子交換,其實也支持Qtum、Qtum上的token和任何支持EVM的主鏈進行價值交互。
合約代碼:https://github.com/PRIEWIENV/QtumSwap/tree/master/contracts 的Gateway.sol
3. D-rent:
去中心化的airbnb。這裏實現玩家用BTC來解鎖模擬電子鎖的樹莓派。
具體原理詳見:https://github.com/PRIEWIENV/QtumSwap/tree/master/demo/d-rent
其中在查看代碼時咱們不難發現QtumSwap主要實現瞭如下三種跨鏈的原子交換分別爲:
Qtum和BTC的原子交換
QRC20和BTC的原子交換
如何用BTC原子調用Qtum智能合約
團隊基於Qtum的UTXO實現了正常流程的交換,全部的腳本都是硬編碼在code裏,爲了快速實現。
目前Qrc20合約已經能夠支持完整的htlc特性了,這樣的改進版Qrc20合約也已經成功經過測試並部署在Qtum的公共測試網。
其中團隊爲此技術底層提供了特定場景:D-rent——去中心化的airbnb。基於這樣的場景團隊寫了相應的智能合約並部署在Qtum鏈上了,正常流程已完成測試。
團隊的計劃是首先完成Qtum和BTC的原子交換,把超時情況測試了以後將它解耦作成一個工具。而後基於這樣的工具完成咱們後面QRC20的原子交換。
這次黑客馬拉松咱們見到了許多優秀的團隊致力於用技術改變世界其中咱們不難發現許多Qtum技術個工具的狂熱愛好者,咱們也很是歡迎愈來愈多的年輕Qtum開發者與咱們一同加入改變將來新經濟的大潮中。