編者按:本文來自以太坊愛好者,作者:WeiwuZhang,翻譯&校對:安仔C1int&阿劍,Odaily星球日報經授權轉載。在TokenScript項目中,我們只會將靠得住的技術手段應用到公鏈上。但糟糕的是,人們對區塊鏈數據空間的使用往往并不切合區塊鏈的設計目標。人們總在抱怨以太坊“大塞車”,同時又編寫一些收發聊天信息的智能合約。不過在區塊鏈上傳播“crypto街頭涂鴉”還不是最大的問題。我們認為,最大的問題在于沒有站在互操作性、可拓展性以及持存性的角度設計數據結構。換句話說,在各個獨立的Token項目中,數據結構都隨用例量身定制,難以和非區塊鏈系統聯動,在別的去中心化項目中使用時也容易出錯,并且但凡需要改動,就得從頭設計整個數據結構。數據對象舉例
我們先來從這個例子出發,然后再進行歸納推理。假設某個活動的門票是數據對象,并以JSON編碼:
1.這是主辦方發行的第24張門票。2.這張門票的級別為“class2”3.這個活動在2020年1月1號20:00開始。上述數據對象可以在區塊鏈交易中使用。假設我們有一個以太坊智能合約來轉移門票的歸屬權:
摩根溪創始人:Coinbase應該購買紐約證券交易所:摩根溪創始人Anthony Pompliano在推特表示,Coinbase應該購買紐約證券交易所。他說,許多人出于種種原因而討厭Coinbase,但無可否認,Coinbase已經建立了自己的地位,無論對它是愛是恨,Coinbase對于我們愛的加密行業來說都至關重要。[2021/4/7 19:52:59]
然而將數據編碼成JSON格式會消耗大量的gas,因為這會增大交易體積并增加智能合約解析的負擔。由于需要緊湊地打包數據對象,我們必須首先把數據從它的模式中分離。數據和模式的分離
我們把數據編碼成了20個字節:0x3012020118020102180A32303230303130313230。可以看到這20個字節包含了3條消息:
其中票號24被編碼成了0x18;票務級別"VIP"被編碼成了0x02;日期信息被編碼成了ASCII字符串。這三條信息之間的結構數據是使用標準DER編碼規則后產生的結果?。對數據的模式,我們用ASN.X語言描述。
印度智庫創始人:比特幣應該像股票一樣被監管:Begin印度智庫創始人Deepak Kapoor接受當地媒體采訪時表示,印度沒有針對加密貨幣的禁令,唯一的加密禁令是印度央行(RBI)實施的銀行業禁令,但最高法院在今年3月撤銷了該禁令。他指出,比特幣應該像股票一樣被監管,這是其在印度應該獲得的法律地位。從密碼學角度來看,比特幣可能是我們這一生最安全的技術。注:此前Begin印度智庫協助印度政府打擊涉及加密貨幣的犯罪。(bitcoin.com)[2020/9/7]
數據模式需要存儲在智能合約之外。在我們的TokenScript項目中,數據模式直接由TokenScript存儲,因此,兼容TokenScript的錢包和dapp瀏覽器能直接使用對應的數據模式來解析20字節的數據。你也可以用別的格式把數據模式存在應用程序中?,但你不應該直接把它存到智能合約里,至少,你可以把數據模式編譯成一塊簡潔的solidity字節碼以方便智能合約解析那20字節的數據。模式的使用
聲音 | 幣印潘志彪:隱私應該成為比特幣未來發展的一個重點:據Cointelegraph消息,幣印聯合創始人潘志彪近日在接受采訪時表示,隱私應該成為比特幣未來發展的一個重點。如果隱私問題得到解決,就沒有其他大問題了。在未來,比特幣將需要為用戶提供一種避免政府針對他們和他們的錢包的方式。[2019/10/18]
一旦我們能把數據和模式分離,以太坊上的智能合約函數就能變成這樣:
可以看到現在門票對象從字符串類型變成了字節類型。讓我們通過函數聲明前后的幾行代碼來進一步分析:
parse_ticket函數包含了由模式語言編譯得來的代碼。這要比JSON解析器的效率高出不少。另一方面,dapp是否需要構建DER編碼后的字節數據供交易調用,用戶端錢包是否需要可讀化呈現一個已經構建好了的交易,都應取決于數據模式。為什么要模糊化?
所以DER或者ASN模糊化處理和以下直接了當、對新手友好的方法比,有什么好處呢?
聲音 | Bitcoin Unlimited首席科學家:Bitcoin Cash和Bitcoin Core兩條鏈都應該存在:據CCN消息,Bitcoin Unlimited首席科學家Peter Rizun在接受Peter McCormack采訪時談及比特幣現金(Bitcoin Cash)和比特幣核心(Bitcoin Core)之間的根本區別。他指出分叉是如何發生的并不重要,當它發生時,這是一個新的現實。兩條鏈都保持了足夠的哈希算力來繼續運行,而Bitcoin Core保留了最初在網絡上的大部分哈希算力,這足以證明兩條鏈都應該存在。 Peter McCormack表示,他認為Bitcoin Cash應該換個不同的名字,但他認為它的存在是“有用的”。[2019/4/21]
或者跟這個更結構化一點的版本相比又如何?
難道模糊化僅僅是為了減少交易大小嗎?上述問題的答案都是“是的”,并且這個“對”的程度超出你的想象。首先,經過DER或ASN處理后能把交易負荷減少50%以上,其次還有很多別的優勢:理由1:用于制作簽名證明
聲音 | Mike Novogratz:每個人的投資組合中應該有1%用于投資比特幣:據AMBcrypto消息,比特幣支持者、前高盛合伙人Mike Novogratz在2019年的MENA峰會上表示,世界已經目睹了“加密貨幣中的一代泡沫”,現在泡沫正在隨著波動性滲出,但波動性終將回歸。Novogratz談到了傳統市場的弊端,并稱,“每個人的投資組合中都應該有百分之一用于投資比特幣。這是因為比特幣正在成為一種數字黃金,也是唯一具有價值的加密貨幣。Novogratz還表示,比特幣的價值儲備是金融機構進入加密領域的原因之一。[2019/3/9]
一串經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的格式等價縮寫:
編者按:本文來自巴比特資訊,作者:隔夜的粥,星球日報經授權發布。上周伊朗將軍卡西姆·索萊馬尼遇害后,引發了金融市場的一系列反應,比特幣的市值在這一周從低點1300億美元增長到目前1510億美元,
1900/1/1 0:00:00目錄一、區塊鏈錢包發展史二、區塊鏈錢包的基本知識點三、區塊鏈錢包分類四、區塊鏈錢包功能介紹五、如何選擇錢包六、區塊鏈錢包導航七、區塊鏈錢包操作指南八、區塊鏈錢包知識自測一、區塊鏈錢包發展史說起數.
1900/1/1 0:00:00編者按:本文來自:威廉閑談,作者:陳威廉,Odaily星球日報經授權轉載。說實話,我真的從來沒有哪一天像昨天那樣關心國際新聞,為了保證第一時間收到消息,我甚至在微博把人民日報設置成了特別關注.
1900/1/1 0:00:00近日,賽迪區塊鏈研究院與互鏈脈搏發布2019年《中國城市區塊鏈發展水平評估報告》,對中國45座重點城市進行了綜合評估,北京、深圳、杭州、上海、廣州位列前五.
1900/1/1 0:00:00新浪財經訊12月17日消息,以“金融科技助力現代金融體系建設”為主題的2019第三屆中國互聯網金融論壇于今日在京召開,中國人民銀行研究局局長、中國金融學會秘書長王信出席活動并發表主題演講.
1900/1/1 0:00:00把錢存銀行,銀行不但不給你利息,還要向你收取管理費。是不是覺得這很扯淡,存錢得利息自古以來都是天經地義的,而現實中,歐洲央行已經實行了負利率,另據國際清算銀行跟蹤全球38家央行的動態數據,截至目.
1900/1/1 0:00:00