時(shí)間:2023-08-14|瀏覽:238
造成這一問題的原因是,當(dāng)前主要的預(yù)言機(jī)在以太坊網(wǎng)絡(luò)上采用鏈上數(shù)據(jù)聚合的方式。這樣一來,用戶在為數(shù)據(jù)服務(wù)支付費(fèi)用的同時(shí),還需要支付大量的gas費(fèi)用。
下圖是某預(yù)言機(jī)鏈上數(shù)據(jù)聚合的gas費(fèi)用,每筆交易手續(xù)費(fèi)高達(dá)13-25美元。這嚴(yán)重影響了預(yù)言機(jī)的可用性,并限制了預(yù)言機(jī)的應(yīng)用范圍。
為了解決這個(gè)問題,本文提出了一種新的解決方案。
從較高的層次來看,請(qǐng)求/響應(yīng)式的預(yù)言機(jī)工作過程如下所示:
- 用戶通過智能合約向預(yù)言機(jī)網(wǎng)絡(luò)發(fā)出數(shù)據(jù)請(qǐng)求。 - 預(yù)言機(jī)網(wǎng)絡(luò)收到數(shù)據(jù)請(qǐng)求后,向外部數(shù)據(jù)源發(fā)送請(qǐng)求。 - 預(yù)言機(jī)網(wǎng)絡(luò)對(duì)數(shù)據(jù)結(jié)果進(jìn)行聚合。 - 最后將數(shù)據(jù)響應(yīng)給用戶的智能合約。
針對(duì)這種情況,為了更好地發(fā)揮預(yù)言機(jī)對(duì)智能合約的潛力,本文提出了一種基于VRF和BBFT的鏈下數(shù)據(jù)聚合方案。
工作流程如下:
用戶發(fā)出請(qǐng)求: 用戶在向預(yù)言機(jī)網(wǎng)絡(luò)發(fā)出請(qǐng)求時(shí),需要部署一個(gè)標(biāo)準(zhǔn)模板的智能合約。合約中包含請(qǐng)求的數(shù)據(jù)類型、具體數(shù)據(jù)、報(bào)價(jià)、預(yù)言機(jī)抵押要求、所需預(yù)言機(jī)數(shù)量、數(shù)據(jù)聚合方案和請(qǐng)求時(shí)間等信息。上述請(qǐng)求信息的哈希值將成為后續(xù)工作的憑證。
共識(shí)委員會(huì)接收請(qǐng)求: 預(yù)言機(jī)網(wǎng)絡(luò)啟動(dòng)初期由42個(gè)節(jié)點(diǎn)組成,其中10個(gè)節(jié)點(diǎn)組成共識(shí)委員會(huì),他們輪流主導(dǎo)數(shù)據(jù)共識(shí),其他32個(gè)節(jié)點(diǎn)為普通預(yù)言機(jī)節(jié)點(diǎn)。預(yù)言機(jī)網(wǎng)絡(luò)的節(jié)點(diǎn)以去中心化的方式產(chǎn)生,具體機(jī)制可另行設(shè)計(jì)。共識(shí)委員會(huì)將監(jiān)聽奇點(diǎn)網(wǎng)絡(luò)發(fā)出的數(shù)據(jù)請(qǐng)求。
共識(shí)委員會(huì)基于VRF分配任務(wù): 共識(shí)委員會(huì)中的Leader節(jié)點(diǎn)根據(jù)用戶請(qǐng)求隨機(jī)選擇一定數(shù)量的預(yù)言機(jī)節(jié)點(diǎn)(可考慮1.2倍冗余),并將數(shù)據(jù)請(qǐng)求分發(fā)給他們。在此過程中,其他共識(shí)委員會(huì)成員負(fù)責(zé)驗(yàn)證節(jié)點(diǎn)選擇的隨機(jī)性和Leader所廣播內(nèi)容,并在后續(xù)的共識(shí)過程中表態(tài)。具體方案見后續(xù)章節(jié)。
共識(shí)委員會(huì)收集響應(yīng): 預(yù)言機(jī)節(jié)點(diǎn)在收到數(shù)據(jù)請(qǐng)求后,向數(shù)據(jù)源查詢數(shù)據(jù)。建議預(yù)言機(jī)節(jié)點(diǎn)針對(duì)同一數(shù)據(jù)維持不同的數(shù)據(jù)源并提供相關(guān)證明,以提高自身競爭力。獲取數(shù)據(jù)后,預(yù)言機(jī)節(jié)點(diǎn)將采用標(biāo)準(zhǔn)的數(shù)據(jù)模板將數(shù)據(jù)及RequestID報(bào)告給所有共識(shí)委員會(huì)成員。
共識(shí)委員會(huì)聚合數(shù)據(jù)并達(dá)成共識(shí): Leader節(jié)點(diǎn)按照用戶要求的聚合方案對(duì)收集的響應(yīng)進(jìn)行聚合,并主導(dǎo)共識(shí)委員會(huì)對(duì)聚合結(jié)果達(dá)成共識(shí)。其他共識(shí)委員會(huì)成員可以根據(jù)自己收集的數(shù)據(jù)進(jìn)行驗(yàn)證,并根據(jù)對(duì)Leader行為的監(jiān)督對(duì)最終的聚合結(jié)果進(jìn)行表態(tài)。
奇點(diǎn)網(wǎng)絡(luò)完成用戶請(qǐng)求: 共識(shí)委員會(huì)將聚合后的唯一數(shù)據(jù)結(jié)果提交給用戶的請(qǐng)求合約(多重簽名/門限簽名),并分配本次服務(wù)的報(bào)酬。
總結(jié): 在整個(gè)工作流程中,共識(shí)委員會(huì)見證了從數(shù)據(jù)請(qǐng)求到數(shù)據(jù)聚合的全過程,每個(gè)委員會(huì)成員都能夠?qū)ψ罱K數(shù)據(jù)結(jié)果形成自己的判斷。只要不超過1/3的共識(shí)節(jié)點(diǎn)作惡,通過BBFT機(jī)制對(duì)數(shù)據(jù)聚合結(jié)果達(dá)成共識(shí)將是有效的。該方案將大大降低區(qū)塊鏈網(wǎng)絡(luò)對(duì)預(yù)言機(jī)服務(wù)的影響,提升數(shù)據(jù)聚合效率并降低成本。
熱點(diǎn):原鏈 數(shù)據(jù) 比原鏈 比特幣 特幣