比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > LTC > Info

應該如何處理上鏈數據?_區塊鏈

Author:

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

編者按:本文來自以太坊愛好者,作者:WeiwuZhang,翻譯&校對:安仔C1int&阿劍,Odaily星球日報經授權轉載。在TokenScript項目中,我們只會將靠得住的技術手段應用到公鏈上。但糟糕的是,人們對區塊鏈數據空間的使用往往并不切合區塊鏈的設計目標。人們總在抱怨以太坊“大塞車”,同時又編寫一些收發聊天信息的智能合約。不過在區塊鏈上傳播“crypto街頭涂鴉”還不是最大的問題。我們認為,最大的問題在于沒有站在互操作性、可拓展性以及持存性的角度設計數據結構。換句話說,在各個獨立的Token項目中,數據結構都隨用例量身定制,難以和非區塊鏈系統聯動,在別的去中心化項目中使用時也容易出錯,并且但凡需要改動,就得從頭設計整個數據結構。數據對象舉例

我們先來從這個例子出發,然后再進行歸納推理。假設某個活動的門票是數據對象,并以JSON編碼:

1.這是主辦方發行的第24張門票。2.這張門票的級別為“class2”3.這個活動在2020年1月1號20:00開始。上述數據對象可以在區塊鏈交易中使用。假設我們有一個以太坊智能合約來轉移門票的歸屬權:

NFL球星:我應該把我的財富花在比特幣上:10月9日消息,NFL球星Ndamukong Suh在推特上講述了他的財務策略和過去的失誤。他計算了2015年在俱樂部花費的5萬美元,如果改為投資比特幣,那么今天的價值將是1140萬美元。(Decrypt)[2021/10/9 20:17:12]

然而將數據編碼成JSON格式會消耗大量的gas,因為這會增大交易體積并增加智能合約解析的負擔。由于需要緊湊地打包數據對象,我們必須首先把數據從它的模式中分離。數據和模式的分離

我們把數據編碼成了20個字節:0x3012020118020102180A32303230303130313230。可以看到這20個字節包含了3條消息:

其中票號24被編碼成了0x18;票務級別"VIP"被編碼成了0x02;日期信息被編碼成了ASCII字符串。這三條信息之間的結構數據是使用標準DER編碼規則后產生的結果?。對數據的模式,我們用ASN.X語言描述。

清華大學經管學院副院長李紀珍:高校應該緊緊抓住區塊鏈技術創新的機遇:金色財經報道,數字島與清華大學技術創新發展中心聯合主辦的“2020高校區塊鏈技術創新云論壇”6月20日成功舉辦。論壇由數字島發起人兼CEO劉靖主持,匯集“百校百人百媒”,探討高校區塊鏈技術創新與人才培養。

清華大學經濟管理學院副院長李紀珍表示高校應該緊緊抓住區塊鏈技術創新的機遇,一方面推動高校教育信息化建設,構建以區塊鏈技術為基礎的可信教育身份體系、學習過程管理體系、教育應用服務體系。另一方面,推動高校產學研協同創新,形成“創新資源集成、科技成果轉化、科技創業孵化、創新人才培養、開放協同發展”體系。[2020/6/20]

數據模式需要存儲在智能合約之外。在我們的TokenScript項目中,數據模式直接由TokenScript存儲,因此,兼容TokenScript的錢包和dapp瀏覽器能直接使用對應的數據模式來解析20字節的數據。你也可以用別的格式把數據模式存在應用程序中?,但你不應該直接把它存到智能合約里,至少,你可以把數據模式編譯成一塊簡潔的solidity字節碼以方便智能合約解析那20字節的數據。模式的使用

聲音 | 幣印潘志彪:隱私應該成為比特幣未來發展的一個重點:據Cointelegraph消息,幣印聯合創始人潘志彪近日在接受采訪時表示,隱私應該成為比特幣未來發展的一個重點。如果隱私問題得到解決,就沒有其他大問題了。在未來,比特幣將需要為用戶提供一種避免政府針對他們和他們的錢包的方式。[2019/10/18]

一旦我們能把數據和模式分離,以太坊上的智能合約函數就能變成這樣:

可以看到現在門票對象從字符串類型變成了字節類型。讓我們通過函數聲明前后的幾行代碼來進一步分析:

parse_ticket函數包含了由模式語言編譯得來的代碼。這要比JSON解析器的效率高出不少。另一方面,dapp是否需要構建DER編碼后的字節數據供交易調用,用戶端錢包是否需要可讀化呈現一個已經構建好了的交易,都應取決于數據模式。為什么要模糊化?

所以DER或者ASN模糊化處理和以下直接了當、對新手友好的方法比,有什么好處呢?

聲音 | BM:智能合約能否被更改應該由市場決定:BM發推表示,自由市場將決定人們想要不可更改的還是可更改的智能合約,許多不同的治理策略或者多簽是可以實現的。EOS支持這兩種形式的合約,因為只有市場才能決定哪種有效。我們都看到因存在問題但不能被修復的ETH合約而造成的混亂。 智能合約是可更改還是不可更改,這是由應用程序的后端所決定。只要智能合約能像宣傳的那樣運行,用戶并不在意它是可更改的還是不可更改的。但是這兩種形式都可能以不同的方式讓用戶受到損失。不管是密鑰被盜還是代碼存在Bug,應用程序開發人員都應該承擔責任。有些開發人員似乎對他們的密鑰安全比對他們無Bug代碼更有信心。這可能使可更改的合約成為用戶的正確選擇。用戶不會閱讀代碼,他們只信任用戶界面和營銷。[2019/4/24]

或者跟這個更結構化一點的版本相比又如何?

難道模糊化僅僅是為了減少交易大小嗎?上述問題的答案都是“是的”,并且這個“對”的程度超出你的想象。首先,經過DER或ASN處理后能把交易負荷減少50%以上,其次還有很多別的優勢:理由1:用于制作簽名證明

聲音 | 王永利:虛擬貨幣與法定貨幣的兌換環節應該成為金融監管的重點:據經濟觀察報消息,原中國銀行副行長王永利日前發文表示,比特幣等網絡虛擬貨幣,可以在其網絡社區內使用,但不應到網絡社區之外流通。虛擬貨幣與法定貨幣的兌換,凡是公開的交易平臺,都應建立法定貨幣錢包(賬戶)的實名制,以及戶主與平臺定期向監管部門申報法定貨幣賬戶變動情況的制度,其與法定貨幣的兌換環節應該成為金融監管的重點。以虛擬貨幣進行公開募集資金(包括ICO)或開展期貨交易等,必須滿足公募基金或期貨交易等的管理要求。對利用虛擬貨幣或商圈代幣進行金融欺詐等違法亂紀行為必須嚴厲打擊。[2018/9/15]

一串經DER編碼的字節數據非常便于簽名。不過,我們為什么需要簽名呢?簽名是為了得到認證。我們之所以把被簽名過的數據對象稱作“認證”,因為它確實代表著簽名者對某些事情的認可。我們依然以上面的門票為例。一開始,你可能會認為門票合約控制了所有票務和歸屬權信息。比方說,當“Alice”想要把一張票轉給“Bob”時,Alice會發起一筆交易,將門票的所屬權重新指認為Bob。活動主辦方往往會為一場活動發行數以萬計的門票,或者少說也有幾千張,其中絕大部分收到門票的用戶并不會把門票轉給別人。要不是有這種票券轉讓的需要,門票根本就不需要放到區塊鏈上。活動主辦方完全可以簽署一份attestation,將門票的所屬權簽署給特定的以太坊賬戶。賬戶私鑰的持有者則可以通過一個質詢-應答式的合約來證明門票的所有權。另一方面,如果數據用JSON格式編碼,它就無法被安全地簽名,因為JSON并不是一種確定性的編碼方式。見證的用途非常廣泛。以下列舉幾個例子。你可以編寫智能合約,使得被認證為合格投資人的用戶能參與ICO預售。汽車保險公司能證明你的車已經上了保險。如果你的車是個智能載具,你完全可以在不進行任何以太坊交易的前提下,利用認證消息把車借給你的朋友。簽名認證的設計模式只應根據現有的標準進行改造,而不是重新發明一種嶄新的模式。TokenScript已經在研究這樣的改造方案,但革命尚未成功,同志仍需努力。比方說,我們目前需要用默克爾樹,甚至零知識證明來實現一種可以做部分見證的格式。理由2:數據互操作性

經過DER編碼過后的數據有更好的互操作性。依然是以票務證明為例:哪些系統需要用到認證信息?我們目前知道以下幾個。1.智能合約:如果Alice想要出售她的門票,智能合約需要具備查驗活動主辦方簽名的能力。2.錢包:用戶錢包必須能正確顯示認證消息的內容。每當有交易涉及到認證消息時,錢包都需要提醒用戶交易的實際內容。不止上述兩個端口。活動主辦方的網站也需要具備讀取見證消息的能力,因為門票持有者可能會利用見證消息來登錄網站,獲取活動的最新消息。檢票員也需要能讀取這個數據。使館和邊境警察也會用到這些證明。去年一整年,刻畫成了認證消息形式的FIFA門票取代了VISA,被大規模應用到了俄羅斯邊境過境的場景中。不難看出很多系統都需要用到見證消息,而這些系統往往都是異構的。比方說,智能合約屬于區塊鏈,而錢包屬于移動應用程序。在活動主辦方的網站中,JSON的表現方式是標準。而出入口的自動門作為一個物聯網設備,通常認二維碼。由于系統由可驗證簽名支撐,它不能隨意轉換——在這種場景下,簽名過的數據必須有一種統一的呈現形式。如果數據模式發生改變,我們沒有理由要求所有的去中心化系統一起升級。然而如果數據基于模式驅動,可以很輕易地對整個模式發起更新。你可能會覺得自己的token不會被用到那么多其它系統上。但事實上誰也說不準。像以太坊這樣去中心化平臺的優勢在于搭積木。許多系統不需要MakerDAO授權就使用了DAI。你可沒法在美國運通這種傳統中心化系統上看到那樣的創造性活動。理由3:持存性

持存性和互操作性緊密相關。要時刻牢記一旦數據被簽名,如果沒有把原有的簽名無效化處理,它是沒法被“轉換”到一個新的系統中使用的。因此,所構建的系統必須同時理解舊的以及新的數據格式。假設你是一份用cryptoattestation寫就的遺囑的繼承人。當雙親過世后,你能兌現遺產了。此刻你肯定不希望那份多年來經過屢次升級的遺囑合約要求你雙親用新的數據結構再進行一次簽名吧!X.509數字證書是經過時間檢驗過了的一種數據結構。它的發明早于SSL,而目前依然服役狀況良好。X.509是以一個ASN.1模塊設計的,它天生具備持存性。今時今日區塊鏈的數據對象也應該自豪地加上這個支持。在此篇幅有限,我們無法涵蓋整個實現過程,但一句話總結,那就是持存性依賴于設計模式。舉例來講,一個設計良好的設計模式能實現數組數據到所要求二維矩陣的轉換。那下一步呢

在TokenScript項目中,我們通過改造現有的標準來正確地處理數據。TokenScript本身就在OASIS的指導下實行了標準化。想要參與進來,你可以:TokenScript論壇參加GoogleHangoutMeet的設計會議每周四下午七點(下一次是在2019年11月28號)。如果你住在澳大利亞墨爾本附近,歡迎參加11月22號的見面會腳注?DER是密碼工程學中編碼數據的默認手段。舉例來說,比特幣簽名以及X.509證書使用了這種編碼。如果你想試驗DER編碼數據,你可以像下面這樣使用openssl:

?同樣的模式可以用一種被稱作ASM.1的格式等價縮寫:

Tags:區塊鏈TOKETOKENTOK區塊鏈幣排名ElevenTokenFC Porto Fan TokenNFTMart Token

LTC
為什么95%以上的礦機商挖不到Filecoin?_COIN

在前面的分享中,曾經和大家提到過,自Filecoin測試網上線官方公布算力排行榜到后來撤下算力排行榜,在這期間據我們觀察大概只有不到10家公司的節點沖上了算力排行榜.

1900/1/1 0:00:00
講一個笑話:這些幣是我的“價值投資”_ENU

文|秦曉峰編輯|Mandy王夢蝶出品|Odaily星球日報在這個寒冷的冬天,回看過去2年,幣市中的項目歸零,確實不是什么新鮮事.

1900/1/1 0:00:00
2019年區塊鏈行業總結及展望_BIT

《道說區塊鏈》是今年年初才開設的,上線的時間并不長,但得到廣大讀者的厚愛及信任。這份厚愛和信任時常讓我惴惴不安,如履薄冰.

1900/1/1 0:00:00
4張圖表向你闡述Dapps在2019表現及其未來趨勢_以太坊

編者按:本文來自頭等倉,Odaily星球日報經授權轉載。隨著區塊鏈技術的發展,去中心化應用程序成為了新的潮流,而以太坊作為首屈一指的平臺,為此類應用程序的擴展提供了基礎.

1900/1/1 0:00:00
“2019年區塊鏈全景掃描”之:全球政策篇_比特幣

資深分析師|李雪婷編輯|郝方舟Odaily星球日報研究院出品區塊鏈在熱捧與喧嘩中走過了2019年.

1900/1/1 0:00:00
印度即將靠比特幣實現5萬億的經濟規模_區塊鏈

胡說扒道中東地區沖突升級,比特幣大漲后其避險資產屬性再次被人津津樂道。今天比特幣突破了8000美元,市場更是一片振奮.

1900/1/1 0:00:00
ads