摘要:在9月7日舉辦的“BSV開發與商業生態大會”上,信息安全從業者Aus.Liu從黑客的思路出發對智能約進行了分析,并列舉了以太坊智能合約的三大問題。
信息安全從業者Aus.Liu
9月7日,BitcoinAssociation與OKEx、鏈得得聯合在中國北京舉辦了一場BSV開發與商業生態大會,嘉楠耘智、wework作為協辦方鼎力支持了此次活動。
這次活動是BitcoinAssociation設置中國區域負責人以來的首次線下亮相,同時也是BitcoinSV在中國地區的第一場官方活動。
作為一個信息安全從業者,Aus.Liu從黑客的思路出發對比特幣之上的智能合約的進行了分析,他列舉了以太坊智能合約的三大問題:一、貨幣模型限制了業務模型;二、問題是鏈上定義的VM限制了開發;第三個問題是復雜度的問題。
經過整理編輯,Aus.Liu的演講全文如下:
我是Aus.Liu,其它地方也用Monkeylord作名字。我是一個信息安全從業者,也是BSV上的一個獨立開發者。這可能使我和其它的開發者不太一樣,因為我習慣采用一些黑客的思路。
黑客思路是什么樣的呢?上學時,有辯論隊的同學找到我和室友,原因是他們用的計時軟件寫死在倒數15秒時提醒,而他們想要倒數30秒。那怎么辦?室友說他可以做個一模一樣的,做成30秒。而我的思路是什么呢?我說的是我可以通過底層手段把程序內部寫死的15改成30。
深圳軟云存儲科技 CEO蔡定強:全球對大數據存儲和信息安全等需求與日俱增:5月13日,由湖南省工信廳指導,湖南日報社(集團公司)和軟云存儲科技有限公司聯合主辦2021軟云存儲賦能實體經濟產業峰會在長沙新湖南大廈隆重舉行,南方網、騰訊網、鳳凰網、東方網、新湖南等國內外100余家主流媒體對峰會進行了報道。
深圳軟云存儲科技 CEO蔡定強從”技術變革史即人類發展史“和”信息文明時代創造的價值“兩個方面講述技術變革賦能實體產業發展,他認為隨著5G、人工智能、區塊鏈等為代表的新技術基礎設施的快速發展,全球對大數據存儲和信息安全等需求與日俱增。分布式存儲,作為這些新技術落地過程中必不可少的基礎設施,將顛覆傳統互聯網數據中心化存儲方式。[2021/5/13 21:58:45]
所以,我的室友成為了一個很好的開發者,他的工程能力很強,而我成為一個安全從業者,這就是不同的思路導致的。
黑客思路的人,對于比特幣會有什么樣不同的關注?我會更關注底層細微的改變能夠帶來怎樣的可能性,找各種別人想不到的使用場景。所以開發者一般會恨安全從業者,剛開發一個功能,還在吃著火鍋唱著歌就被找到一種奇特的用法,然后對于開發來說便是漏洞,就得加班。作為安全出身的開發者,我就喜歡各種各樣的可能性,很簡單的邊界條件變化會帶來很大不同。
回歸比特幣,我們來用這種思路討論比特幣上的智能合約。BSV的擴容和解除限制這樣看上去不明顯的改變,會帶來怎么樣的可能性呢?
動態 | 360利用區塊鏈等前沿技術 助力汽車信息安全:人民網發布《信息安全將成為汽車安全主戰場》一文,文中指出,汽車信息安全之于汽車企業,一如手機信息安全之于手機制造商。奔馳與360的合作可謂是汽車信息安全的典型案例,360汽車安全大腦的“新盔甲”是一個分布式智能系統,集合百萬億級安全大數據、知識庫以及360安全專家庫資源,綜合利用人工智能、大數據、云計算、區塊鏈等前沿技術,構建整套實時防護體系,從硬件到云端進行防護,形成安全閉環后從而減少風險產生。[2020/1/14]
表面看上去只是容量大了,但是這個容量大了其實帶來了巨大的質變。這個質變是什么,大家和我一起探索一下吧。
從一個演示開始
首先我想從一個演示開始,我們看到這個狀態燈泡現在是滅的,我們按一下開關,燈泡的狀態就變成了亮,再按一下開關,燈泡就會滅。在任何你能訪問BSV的地方,你都可以得到燈泡當前的狀態。
這個演示在鏈上:https://bico.media/15stvxuJ9fzQrshxX8WNzuxeMsNcGQp1AY/Demo/lightbuble.html
實際上,每次按開關的動作都會在BSV鏈上發一個Tx,這個Tx包含了定義的按開關動作。當需要獲取燈泡狀態時,通過BitDB把所有按開關動作都取到,我就可以計算出當前燈泡的狀態,那這個當前燈泡的狀態它到底是什么樣的狀態呢?完全取決于你按開關的次數。這樣實際上構成了一種鏈上的狀態,或者說構成了一種鏈上狀態機。
聲音 | 奇安信集團總裁:區塊鏈技術的不成熟一定程度上限制了信息安全保障的作用:奇安信集團總裁吳云坤表示,目前,區塊鏈技術還不成熟,在技術上還有實時性、高并發性、延遲和吞吐等需要解決的問題,應用領域也非常有限。區塊鏈技術的不成熟一定程度上限制了信息安全保障的作用,信息安全技術對區塊鏈發展起著決定性作用。而密碼技術是基礎架構中的關鍵技術,也是其他窗口模型中的核心技術。(證券網)[2019/11/12]
記住這個演示,我們來看鏈上存儲。
確定性的記錄
許多人對BSV的擴容的意義有疑問,雖說目前上限擴到了2G,可實際用處時什么呢?很多人覺得這不過意味著BSV能夠作為網盤,而區塊鏈網盤又貴又低效。
實際上這種擴容僅僅是網盤嗎?要回答這個問題,就要回到一個更本質的問題,即——鏈上存儲的數據,只是單純的數據嗎?鏈上存儲和普通的云存儲的本質區別在哪里?
如果你足夠敏銳,你會發現,PoW賦信,和不可篡改。存儲一旦上鏈,就具有和PoW一樣高的確定性,并可以公開訪問。對于確定性和不可篡改的信任,是云存儲難以提供的。比特幣上的數據存儲,實際上就是提供了這樣一種不可篡改并且能夠公共訪問的數據源。
那么,數據又是什么呢?數據不僅僅是靜態的文件,不僅僅是文本和視頻,其實一切東西都是數據,用戶的業務請求,服務器種運行的代碼,同樣也是數據。或者說數據本身是一種狀態,而狀態的表示也是數據。世界上各種各樣的復雜狀態都可以被規范化地表示為數據,作為歷史被區塊鏈記錄,就像WeatherSV做的事情,成為確定性的記錄。
聲音 | 上海市信息安全測評認證中心主任:2017年區塊鏈應用安全問題造成的損失達20億美元:據全景網報道,在第三屆區塊鏈開發大會上,上海市信息安全測評認證中心主任蔣力群分享了兩組數據:1. 從2011年到2018年這段時間里,由于區塊鏈的應用安全問題,造成的損失達到30億美金,其中17年最可怕,達到20億美金。2. 從區塊鏈技術架構層級的角度看,風險事故最頻發的受攻擊面依次是業務層(71.17%)、合約層(20.72%)、共識層(4.51%)和網絡層(3.6%)。從受攻擊點來看,交易平臺(34%)、智能合約(20%)和普通用戶(19%)成為核心的受害人。京東集團大數據與智能供應鏈事業部翟欣磊從技術的角度表達了自己的觀點:因為區塊鏈是未來安全計算的底層,但是現在安全計算的主要問題在于它在邊緣計算的系統中,添加比如同態加密這樣的算法,一旦形成非常復雜的數據結構,它的性能可能就無法保證。[2018/12/20]
比特幣包含的記錄的確定性是由熵保證的,這是PoS或者BFT所難以達到的。那么這種確定性的記錄能在智能合約方面帶來什么改變呢?我們得先來看智能合約的本質,狀態機。
確定性有限狀態自動機
其實我們談論智能合約的時候,智能合約究竟是什么東西?
程序員大概都了解一個東西,叫有限狀態自動機,或者叫確定性有限狀態自動機,即DFA,這個東西其實是各種各樣程序的基礎。
包括像以太坊或者各種各樣的智能合約的公鏈,實際上在構建一種狀態機,這種狀態機接受輸入,產生狀態轉移。輸入可能是交易或操作碼,鏈上狀態機接受輸入,改變鏈上的狀態比如賬戶金額,或者鏈上的其他狀態。
韓國政府明年開始將對虛擬貨幣交易所進行定期安全檢查 并強制要求在信息安全管理體系進行認證:韓國政府已經對虛擬貨幣交易的黑客行為和個人信息泄漏做出了回應。 從明年開始將對虛擬貨幣交易所進行定期安全檢查,并強制要求在信息安全管理體系(ISMS)進行認證。[2017/12/20]
各種程序其實都是狀態機,比如之前的燈泡演示,燈泡有亮滅兩種狀態,按按鈕是輸入,產生兩種狀態間的狀態轉移。
我們從更準確一點的定義來看DFA是什么的話,它其實是一個五元組:一個非空的有限狀態集合、輸入字母表、狀態轉移函數、開始的狀態、接受狀態的集合。
我們用這種定義反思一下鏈上的VM,當我們談論鏈上的智能合約的時候,我們需要的是一個什么東西?我們要的其實是一個公開的可驗證的確定性的狀態,以及確定性的狀態轉移函數。比如說,我們想要某種代幣或合約時,我們真正關心的其實不是程序如何運行,而是要的功能能夠確定性地實現,并且可驗證,任何人無法篡改。
在這個過程中,合約或鏈規定了初始狀態、接受狀態以及狀態集合,用戶提供了輸入并且被記錄,狀態轉移函數則設置在共識里。從而產生確定性的狀態。從以太坊發源的一系列智能合約的區塊鏈,都是這么干的。
然而,把狀態轉移函數定義在共識里,存在幾個嚴重的問題。
以太坊方式智能合約的問題
第一個問題是貨幣模型限制了業務模型。盡管圖靈完備意味著可以做任何程序,但是,要將業務場景匹配到貨幣模型上,始終是一件很困難的事情。
許多業務模型不但不是貨幣模型,甚至難以用貨幣模型表達,這導致了傳統業務很難在智能合約上開發,因為將其他業務模型翻譯為貨幣模型是難度非常高的工作。以至于相對成功的智能合約往往局限于代幣或數字資產這種天然適合貨幣模型的場景。而大眾乃至開發者們對智能合約的理解也往往局限在代幣和數字資產上。
第二個問題是鏈上定義的VM限制了開發,若為了區塊鏈能夠運行和擴容,共識中的狀態轉移函數就必須越簡單越好,然而這樣的話,開發就變得復雜了。雖然技術方面會有很多牛人寫編譯器,但是依然,很難復用各種語言生態中的組件。
這極大地提高了智能合約的技術門檻,再加上模型的翻譯,門檻就更高了,這使得開發難以大規模進行。作為一個喜歡用JS的偽全棧工程師,用JS寫前端,用JS寫后端,用JS訪問數據庫,為何就不能用用ChromeV8引擎跑鏈上VM呢。做不到,因為VM已經被定義好了,無法自己選擇。
第三個問題是復雜度的問題。狀態轉移的計算在共識層中,這帶來了嚴重的性能問題,網絡擁有大量算力,然而整個鏈的處理能力卻比不過一臺古老的家用計算機。能否完整地承載一個通常的程序都困難。
許多商業服務里單個高性能服務器都不能滿足業務需要了,更別說鏈上合約了,高吞吐量?基本不可能。這些問題根本的原因是,狀態轉移函數定義在共識中,所有的節點都必須計算狀態轉移來進行驗證,要不然無法保證狀態的確定性。
狀態的確定性并不需要計算
有以下計算式:(1087357389+87890345434)*28+897733^21388233-73004832%3
它的結果是什么?不計算不知道。但是我問你,它的結果是確定的嗎?是不是不管誰來計算,結果唯一且不會發生變化?實際上,我們并不需要進行任何的計算就知道結果是確定的。因為我們知道這幾個運算都是確定的,用來計算的數字也是已經確定的了。
足夠聰明的話,你大概已經明白我要表達的意思了。對于一個DFA,只要它的定義是確定的,狀態轉移函數是確定的,輸入流也是確定的,那么,你并不需要執行狀態轉移函數,就可以知道執行后的狀態是確定的。
這種狀態的確定性,是不需要計算的就可以獲得的。必須要去計算的,只是想知道具體結果的人,即對當前狀態感興趣的人。所以,要達到智能合約的目的,只需要確定性地定義DFA,以及其狀態轉移函數,并且產生一個確定性的輸入流。
一旦這些都確定了,鏈上計算,其實是不需要的,因為不論是鏈上計算還是鏈下計算,在哪里計算并不會影響結果的確定性。就像那個計算式,你在家里計算和在公園里計算并不會給結果帶來任何差別。
BSV擴容產生的本質改變,也就正在于此處了,確定性,而且是PoW保證的確定性。
BSV帶來的全新的智能合約可能
那么如何去做呢?原理實際上很簡單,其實就是使用BSV存儲的確定性,來確定性地定義DFA,你就得到了不可篡改、公開可驗證的DFA。通過在BSV鏈上公開定義狀態集合、狀態轉移函數、開始狀態和結束狀態,以及,得到確定性的TX輸入流的排序方法,一個接受鏈上輸入的鏈上智能合約就產生了。
在這個里面,能不能自己定義一些復雜的狀態對象呢?完全可以。將TX定義為輸入時,能不能采用自定義的數據結構呢?完全可以。定義狀態轉移函數時,能不能用自己習慣的語言呢?完全可以,只要代碼和VM都是確定性的。
燈泡的演示就算是用JS編寫的簡單鏈上DFA,實際上這些定義大部分就是JS代碼。
講解到這里,聰明的人已經懂得如何在BSV上實現這種智能合約了,實際上這就是Tokenized上智能合約的思路之一,也是unwriter為什么稱Planaria為InfiniteStateMachine的原因。
以太坊的分片擴容方案思路,本質上也是放棄鏈上計算,只讓感興趣的人或分片進行計算。然而可惜的是,以太坊以及其模仿者,終究無法通過這種思路擴容。
為什么以太坊必須進行鏈上計算
簡單來講,是攻擊成本問題。如果以太坊不進行鏈上計算來驗證輸入是否有效,那么它就無法阻止攻擊者用大量無效輸入堵塞狀態機,無止境地消耗計算資源。攻擊成本為零會讓狀態計算在計算成本上不可行。
目前的以太坊盡管以太坊有Gas機制來處理無效輸入,但是Gas機制也依賴于狀態計算,除非以太坊有不依賴EVM狀態計算的外部Gas機制。而比特幣數據存儲的手續費價格,正好從攻擊成本上解決了這個問題。即便是無效輸入,也需要付出數據上鏈成本,實際上就構成了不依賴合約狀態的智能合約的Gas。
其實,構建在比特幣二層,使用比特幣作為Gas的EVM會是更理想的智能合約引擎。每想及此處,作為一個比特幣原教旨主義者,都不免感慨,BTC本應成為智能合約的底層區塊鏈,可惜被各種強加在共識上的限制捆住了手腳。如今這一切的應用開發,其實早在四五年前就應當繁榮發展了,而不是看著Github上一堆在四五年前停止維護的比特幣應用項目感嘆前人智慧。
幸好我們有了BSV。
Tags:BSV以太坊比特幣BSV幣BSV價格以太坊幣是什么幣比特幣中國官網聯系方式40億比特幣能提現嗎比特幣最新價格行情走勢
近兩年來,數字貨幣投資大火,作為一種新興起的投資方式,很多人都對這一數字貨幣投資產生了濃厚的興趣和強烈的好奇心,最早進入數字貨幣投資領域的那批人可以說已經是賺的盆滿缽滿了.
1900/1/1 0:00:00主要內容:持有超1000枚比特幣的錢包數量自去年以來增加了500多個;加密貨幣分析師稱萊特幣為騙局.
1900/1/1 0:00:00外研劍橋Joinin版_五年級英語上冊_三年級起點單詞列表、例句匯總外研劍橋Joinin版_五年級英語上冊_三年級起點單詞列表、例句匯總共包含7個學習單元,142個單詞.
1900/1/1 0:00:00郭德鑫作 移動支付高速普及,令人們對“無現金社會”產生豐富遐想。中國是全球移動支付應用最廣泛的國家,也是最接近“無現金社會”的國家之一.
1900/1/1 0:00:00導語:200萬一臺的“大面包”終于來了,氣勢碾壓埃爾法,4座/7座隨便選!豐田埃爾法,本來是一款普通的MPV車型,由于不少明星選擇豐田埃爾法作為保姆車,也給其帶上了獨特的光環.
1900/1/1 0:00:00今年5-6月份,幣圈市場,如火如荼,一片欣欣向榮。除了比特幣的大漲,其它主流幣種如ETH、LTC、BCH、EOS也是你不讓我,我不讓你,眼睛一閉,20%的漲幅,今天你漲,明天我漲.
1900/1/1 0:00:00