比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

再談預言機:Oracle如何重新定義智能合約?_區塊鏈

Author:

Time:1900/1/1 0:00:00

而在本期專欄中,作者將詳細解釋

預言機是如何實現

「把現實世界中的數據以交易的形式記錄在區塊鏈上」

這一功能的?

「N3預言機有哪些問題亟需解決?」?

快來一起來看看吧??

制約區塊鏈發展的一個重要因素是落地,也就是把區塊鏈技術用于現實生活中。為此我們就需要不停地設想各種可能需要用到區塊鏈的場景,比如游戲,比如發票,比如非同質化通證。可是這些場景依然很單薄,完全不能支持大家對區塊鏈技術的期望,更無法發揮區塊鏈技術的實力。就好像現在的5G技術,空有一身本領,到頭來大家只是用來做Speedtest。

但是為什么我們無法找到更多適合區塊鏈的場景呢?因為區塊鏈技術太封閉,為了安全,區塊鏈只信任自己鏈上的數據,不接受鏈外的數據流,比如UTXO全是鏈上的交易構造的,比如Neo Legacy里的智能合約執行的時候只能通過少數接口獲取鏈上的數據。所以想跟區塊鏈打交道,那么你的場景里就不能有對外界信息的依賴。但是現實世界中大多場景都需要大量的信息交互,你打開手機,哪有應用不需要聯網的。

Compound社區發起將Compound v3部署至Arbitrum的提案:2月28日消息,據相關頁面信息,Compound 社區發起將 Compound v3 部署至 Arbitrum 的提案。該提案由 Penn Blockchain(FranklinDAO)發起。提案表示,從 TVL 和實時 dApp 數據角度,Arbitrum 都是領先的以太坊 Layer2 網絡,將 Compound v3 部署至 Arbitrum 將是協議發展重要的一步。[2023/2/28 12:34:06]

比如訂票軟件,你需要實時的機票余票信息和價格信息。

比如交易軟件,你需要物價信息。

比如快遞軟件,你需要最新的物流信息。

很無奈,這些都沒辦法用區塊鏈去做。

因此,為了拓寬區塊鏈的應用場景,充分發揮區塊鏈的潛力,可以給區塊鏈投喂鏈外數據流的交互方式——預言機,應運而生。預言機就是一個可以把現實世界中的數據以交易的形式記錄在區塊鏈上的機制。熟悉計算機的小伙伴可以把預言機理解成一個現實世界和區塊鏈之間的巨大cache。由于現實世界的數據在語義上與區塊鏈是存在巨大的gap的,比如現實世界的數據可能會實時變化,可能有多個數據源,可能需要復雜的計算或者轉換,這些都無法在區塊鏈共識的過程中解決,否則不同的共識節點在驗證交易的時候可能獲取到的數據都不同,但是如果共識節點不從現實世界直接取數據,而是從“cache”里取,那么就可以保證各個節點在驗證交易時輸入數據的一致性。因此需要在將數據寫入區塊鏈之前,有一個處理數據的過程,把數據處理成區塊鏈可以接受的形式,比如把實時數據取樣出一個當前的固定數據。

FTX現任CEO:FTX崩潰源于控制權集中在缺乏經驗的人身上:金色財經報道,美國眾議院金融服務委員會公布FTX現任首席執行官John Ray準備的證詞,稱FTX崩潰似乎源于控制權集中在一小群缺乏經驗和不成熟的人身上。他還稱,FTX幾乎未能實施使用托管資產所必需的系統;FTX在沒有有效安全控制私鑰的情況下存儲某些加密資產。[2022/12/13 21:39:59]

預言機的實現大致有三種,一種是中心化的第三方,第二種是可信的數據提供方,第三種則是去中心化的基于共識機制的預言機。在N3中則是因地制宜地使用了拓展性更好的去中心化預言機機制。

根據文檔,N3是指定一些預言機節點來對交易的數據請求結果進行共識,以此來避免可能存在的預言機偽造數據問題。流程是:用戶發起交易,在交易里觸發智能合約里的預言機請求,這個請求的本質其實是調用N3內置的原生預言機合約里的request方法:

比特幣全網未確認交易數量為4038筆:金色財經報道,數據顯示,目前比特幣全網未確認交易數量為4038筆,全網算力為222.48 EH/s,24小時交易速率為2.94交易/s,目前全網難度為31.36 T,預測下次難度下調0.38%至31.24 T,預計難度調整時間為10月12日。[2022/9/29 6:00:00]

<summary>

創建 Oracle Request 請求數據

</summary>

<param name="url">訪問資源路徑,最大長度為 256 字節.</param>

<param name="filter">過濾器,用于在從數據源返回的結果中過濾出有用信息</param>

<param name="callback">回調函數方法名</param>

蘋果對通過iOS應用內進行的NFT交易收取高達30%的傭金:9月24日消息,蘋果公司對通過iOS應用程序內的所有NFT交易也收取高達30%的傭金,但由于蘋果公司目前不處理任何加密貨幣交易,所以App Store購買必須以美元進行,而兌換美元又非常困難,最終將導致NFT交易者遠離蘋果生態系統,因為高昂的費用使NFT項目幾乎不可能盈利。

Magic Eden聯合創始人兼首席技術官Sidney Zhang表示,由于蘋果公司的傭金問題,他們從未嘗試在其應用程序上提供買賣功能。(The Information)[2022/9/24 7:18:16]

<param name="userData">用戶自定義數據</param>

<param name="gasForResponse">回調函數執行預付款</param> 

Jack Dorsey的Block子公司TBD宣布推出“Web5”:金色財經消息,Twitter及Block創始人Jack Dorsey的Block子公司TBD在Consensus2022大會上宣布推出“Web5”。

并在一份文件中解釋了“Web5”,文件描述稱“身份和個人數據已成為第三方的財產。“Web5”為個人應用程序帶來了去中心化的身份和數據存儲。它讓開發人員專注于創造令人愉悅的用戶體驗,同時將數據和身份的所有權歸還給個人。”[2022/6/11 4:18:01]

void Request(string url, string filter, string callback, object userData, long gasForResponse);

原生合約會根據參數構建一個請求,然后預言機節點根據請求來獲取數據,在預言機節點完成數據采集之后,會生成一個新的交易并在交易里調用用戶合約里的回調函數。所以觸發一次N3的預言機,將會有兩筆交易被寫入到區塊鏈里,一筆是觸發預言機,另一筆是回調。這樣通過URL機制將數據源的選擇權交給合約開發者或者數據調用者,進而規避了預言機本身對數據源的信任問題,異步回調機制則解決了智能合約調用預言機延遲過大的話可能會Block掉共識過程的問題。

按照這個邏輯,理論上如果我們要觸發預言機,那么在調用預言機之后就應該會終止當前合約的執行,所以在一個合約方法里寫在觸發預言機語句之后的代碼應該是不會執行的。不過這里由于一些環境配置問題,我還沒辦法做驗證。

預言機雖然被定義為用來獲取數據的工具,但是其實預言機也可以用來做一些比較迷的操作。因為調用預言機這個過程,實質上跟異步調用別的合約沒有什么太大的區別,甚至N3里就是把預言機內置為一個原生合約。這就意味著,我們可以把預言機作為一個智能合約的外掛接口,把一些原本應該寫入智能合約的邏輯寫入在合約之外。比如計算量非常大的任務,我們就可以把任務通過預言機發到鏈外,然后在鏈外執行再返回結果。再比如一些我們想隱藏起來的邏輯,比如隨機數生成算法,也可以通過預言機把這部分功能遷移到鏈外。

N3預言機系統現存問題

雖然N3原生的預言機系統很好很強大,依然有一些問題沒有能夠完美解決:

N3的預言機作為分布式系統,其處理變化頻率過快的數據比較麻煩。比如比特幣的價格,基本上是實時變化的,因此不同的預言機節點在獲取比特幣價格的時候,很可能不同的節點獲取到的價格就有零點零幾的不同,從而導致預言機共識失敗。雖然這也可以通過用戶優化數據格式在一定程度上解決。

預言機系統是一個異步回調系統,再加上存在共識過程,因此其獲取到的數據相較于觸發交易來說存在較大的延遲。比如你當前看著機票的價格很低,然后立即發送一筆交易到鏈上,你的交易立即得到的了執行,這卻并不意味著你能獲取到的價格就是交易執行時的價格,畢竟預言機的回調交易并不是和你的觸發交易同步發生的。

還有一個比較大的問題是數據源的可信程度,我們允許用戶通過預言機將鏈外的數據引入到鏈內,這在相當大的程度上將鏈外的不可信因素引入到了區塊鏈。以前攻擊區塊鏈就只能攻擊區塊鏈節點本身,這個過程由共識協議來保護。可是當我們引入了預言機后,攻擊區塊鏈的方式就變得多樣了,因為黑客可以通過攻擊合約里指定的預言機數據源來將攻擊的影響輻射到區塊鏈里。此外,不可靠的合約開發者也可能通過預言機機制在智能合約里引入不可知的后門,畢竟通過預言機調用的部分功能并沒有寫入在區塊鏈里,因此不可靠的開發者完全可以在神不知鬼不覺的情況下更改系統邏輯。

最后還有一個問題是數據的冗余。我在前文中提到預言機的功能類似于在區塊鏈和數據源之間加了一層數據緩存以保證數據的可信。可是實際上這個緩存只是我抽象出來便于大家理解的,實際上N3的預言機在處理數據的時候并不會像緩存那樣對數據進行保存以便于后續的請求。相反的,N3的預言機請求只跟用戶發起的觸發交易相關,用戶發起了多少筆觸發交易,就會有多少對應的預言機請求,即使在同一個區塊內有許許多多的交易都在請求同一個數據,這樣就難免導致預言機寫入大量的冗余到區塊鏈上。

以上。

Tags:區塊鏈ARAPARARAM區塊鏈的未來發展前景pptParaboxPARADOXgram幣能漲到一塊嗎

歐易okex官網
Oddz Finance 項目分析報告_ODDZ

本報告僅作參考,不構成任何買入或者賣出的投資建議,不對任何投資者據此報告操作造成的損失承擔責任。Oddz它是金融去中心化的鏈期權交易協議,簡化了多鏈期權交易.

1900/1/1 0:00:00
Polka Foundry 項目分析報告_KAF

本報告僅作參考,不構成任何買入或者賣出的投資建議,不對任何投資者據此報告操作造成的損失承擔責任。 一.項目簡介 PolkaFoundry是基于波卡構建的DeFi應用程序一站式應用平臺.

1900/1/1 0:00:00
以太坊第一虛擬世界Decentraland_LAND

Decentraland創立于2017年9月,是一個由區塊鏈驅動的虛擬現實平臺,也是第一個完全去中心化、由用戶所擁有的虛擬世界.

1900/1/1 0:00:00
ETHA Lend:從單鏈走向多鏈 跨鏈收益優化領域的先行者_ETH

對于 DeFi 領域的大部分用戶來說,參與流動性挖礦,可以說是獲取利潤最普遍的方式。然而,目前普通用戶參與挖礦的門檻卻變得越來越高.

1900/1/1 0:00:00
科普 | 了解 0x 協議的生態_EFI

這是一場多么奇妙的旅程? 0x 的早期用戶或許還記得曾經的去中心化交易所生態是什么樣的 —— EtherDelta 還沒有得到廣泛采用,自動化做市商才剛誕生不久.

1900/1/1 0:00:00
NFT制作與OpenSea部署教程_TOKEN

在這篇文章里,筆者將展示如何在沒有軟件公共技術背景下制作 NFT。然后,我們將學習如何用 Brownie、 Python、和 Chainlink 制作無限制可自定義的 NFT.

1900/1/1 0:00:00
ads