- 區塊鏈財稅管理與Corda開發指南
- 偶瑞軍
- 3498字
- 2019-03-28 10:04:58
1.1 概念理解
本節將從概念層面介紹區塊鏈和分布式賬本的關鍵知識點,方便非技術人員理解。
1.1.1 區塊鏈的核心本質
對于區塊鏈的核心本質,可以從兩個方面來思考:
(1)用途方面:區塊鏈的核心用途是記賬,記錄所有權益與權益歸屬,以及權益屬性的使用。其開啟了數字資產的開發和使用,能讓資源配置實現更加精細化的管理。
(2)信任建立方面:在缺乏信任的情況下,區塊鏈是一種展開交易的信任解決方案。
下面通過對幾個關鍵問題的探討進一步對上述內容進行闡述,以方便讀者體會和理解區塊鏈的本質。
區塊鏈最顯著的特征在于其記賬的方法——點對點記賬。傳統的記賬方法中,在涉及歸屬權交換的情況下,廣泛使用的是委托第三方記賬的方法,例如我們的存款記錄在存款的銀行中,這就是委托第三方進行記賬。
區塊鏈的記賬方法是權益者自己記賬,這就引出了另外一個問題:涉及權益的交割時,如何達成相關方的無異議,在區塊鏈領域,不同的人各自記賬,而保證形成一致結果的,是共識算法。
比特幣和其使用的POW共識算法所帶來的點對點記賬、去中心化、所有節點共同持有一份相同的賬本、交易不可篡改等特點,是大多數人對區塊鏈的第一印象。隨著對區塊鏈研究的不斷深入,人們對區塊鏈的設計有了進一步的拓展,也有了新的疑惑,下面筆者將對相關問題簡單闡述一下自己的理解和看法。
(1)由一堆已有技術組合起來的區塊鏈,到底創新了什么?
區塊鏈使用的P2P協議、數據庫、各種加密算法、共識算法,單獨討論哪一樣人們都覺得都是已有的技術,為什么組合在一起就被稱為是從信息互聯網發展到價值互聯網的技術?區塊鏈到底創新了什么?筆者認為,單從技術角度講,區塊鏈里面算得上創新的技術有兩個:共識算法和節點數據庫。這兩點后面會單獨講。區塊鏈主要的創新在于兩個方面,一是解決了網絡和計算機高度發展以后,進入人機協作、機機協作時代后人機社會協作問題。在此之前,計算機乃至極大的中心化計算機系統,都處于輔助工具的地位。二是通過區塊鏈可以引入數字資產的開發,精細優化資源配置,可以對目前沒有開發的人、物的各類主體的各項權益和屬性優勢都建立數字標的,然后使用。
(2)共識算法比分布式數據庫同步多了什么?
現在大的中心化系統,比如像12306售火車票這樣的系統,其拓撲結構的輪廓可以看成是一個沙漏形狀,前面是海量的客戶端訪問,后臺由受理、負載均衡、處理、分布式數據庫來實現,安全問題由防火墻解決,中間是一個訪問焦點,需要足夠的帶寬。后臺采用分布式數據庫,因為有安全防火墻,并且是系統內彼此可信,所以分布式數據庫之間只需要考慮同步的問題。而區塊鏈節點之間的賬本同步,因為彼此都暴露在互聯網空間,所以節點之間的共識算法,除了考慮記賬的一致性同步以外,還需要考慮惡意記賬攻擊,此外還需要考慮治理的經濟模型,所以公鏈的共識算法需要包括這三方面的考量。對于非公鏈來說,比如聯盟鏈和私鏈,共同的特點是采用統一的PKI/CA身份許可入鏈,這由中心化的根證書系統進行管理。因為參與共識的驗證記賬節點之間身份可信,所以可以采用簡化的同步算法,防惡意記賬攻擊和經濟模型幾乎不需要過多考慮。
(3)PKI/CA身份機制可能會阻礙聯盟鏈的發展,DID身份機制更適合區塊鏈。
從技術本質上講,非對稱密鑰對中的公鑰即身份,私鑰即操作權,再往上就是實名制了,與之對應的是管理需求,所以比特幣是匿名的。不論什么樣的區塊鏈系統,只要引入統一的PKI/CA證書體系,那么實際就在一定程度上中心化了這個系統。建立聯盟鏈的聯盟方,誰來管理和掌握數字證書的發行權?這可能會使處于市場競爭關系的多個聯盟方又回到不采用區塊鏈系統的中心化系統對接的局面,這么一來,開發者可能就會問自己,區塊鏈的優勢體現在哪里?所以在業務上可以采取分層的處理方式,初始匿名,若需要享受更高級的業務權益,則需要相關驗證與對應的身份,這肯定是當前情況比較好的解決方案。再進一步,DID身份機制或是其他區塊鏈身份機制進一步成熟以后,會有更好的解決方案。
(4)怎么理解去中心化?
去中心化,首先體現在技術架構上,這是一目了然的,在區塊鏈中,沒有任何一個節點像中心化系統的服務器那樣重要。中心化系統的服務器宕機,整個系統停止服務,而在區塊鏈里面,任何一個節點宕機都不會影響整個系統。對去中心化進行更深層次分析,可以從信任建立的方式上來進行。在中心化或是第三方服務的情況下,信任的建立是靠實力和口碑的,這是從現實世界多年發展而來的一種信任建立方式。而網絡空間與現實世界最大的不同在于網絡空間中的空間法則和時間法則得到了突破,你可以復制無數個你,并安置到無數個業務場景系統中,你可以在過去、現在、未來任意時間點產生或修改數據,在這種情況下,要想人機協作、機機協作,只能通過節點共識這種橫向的鎖定方法來建立信任。區塊鏈技術實際上不是建立了信任,而是建立了一個信任基礎,或者說是管理信任的方式。
(5)用中心化系統的負載指標TPS衡量區塊鏈系統并不合適,分布式賬本是重要延伸。
中心化系統因為所有訪問都聚集在中心化的服務器上,所以存在一個TPS指標的問題。在比特幣、以太坊推出以后,人們認為它們還不能大規模應用的一個最主要原因是TPS太低。筆者認為這是用中心化系統的眼光和角度去衡量區塊鏈系統。這就好比最早的汽車發明出來的時候,能坐2~3人,時速不超過100公里,若人們把客車、貨車、跑車的需求都堆到它的身上,就會發現它什么都不行。實際情況是,汽車已經發明出來了,隨著時間的推移,汽車會朝著不同的方向進行優化。另外,賣鉆石的交易和賣鐵釘的交易顯然不是一個重要程度,沒有必要將所有交易都堆到一個鏈上處理,否則必然就會出現現在常說的比特幣塊容量不夠、要擴容的問題。一個每天現金往來幾十萬的出納需要配一個保險柜,而一個每天現金往來只有幾千塊的人,配個文件柜就夠了。從這個點上來說,不同的交易,視重要程度,可以選擇不同的記賬層次。在金融財稅場景下,還會涉及商業隱私的問題,這時只需要相關方接觸敏感信息即可,這就有了分布式賬本的需求。分布式賬本就是不是所有的節點都持有一份相同的賬本,而是不同的節點持有不同的賬本,區塊鏈可以看成是分布式賬本的一個特例,即所有的節點持有一份相同的賬本。這樣一來,區塊鏈系統中與TPS相關的指標應該更寬泛,例如一個區塊鏈生態里面的共識圈數量、最大共識節點數、最大TPS共識圈、最小TPS共識圈、共識算法種類等。如果需要一個總的TPS,那也是所有共識圈TPS之和,這樣衡量才比較全面。如此一來,對于所有的節點而言,不同業務場景下不同的節點參與不同的共識圈,與其他節點無關。對于確實需要全局共識的交易,可再發起全局共識,而對于龐大數量的節點共識,隨機記賬權的分配是兼顧效率、安全、經濟模型的最佳方式。
1.1.2 區塊鏈與分布式賬本的異同點
區塊鏈與分布式賬本的相同點是都是點對點記賬。
區塊鏈的概念由比特幣引申而出,比特幣提出的是一種點對點的電子現金系統,這里最關鍵的概念就是“點對點”,也就是人們常說的去中心化。準確的說法是,在區塊鏈中無單一全功能中心,無突出的不可缺的全局中心,在實際生活中,應該是不同的業務、不同的領域、不同的生態,具有不同的價值權益。對于某一個個體,也許對于A業務來說,他是用戶,但對于B業務來說,他就是共識參與節點。實際上區塊鏈技術是扁平化技術的進一步應用。
區塊鏈與分布式賬本的不同點是持有賬本的節點數不同。
區塊鏈的賬本是所有參與共識的節點記錄的賬本,只有一份完全相同的賬本。這種賬本的優點是賬本記錄范圍大,無法全面攻擊和篡改,而面向單一節點的攻擊和篡改因為得不到其他節點的認可而無效。但這種賬本并非與所有的交易和所有人相關,也并非所有的交易都是金額很大的交易,其上的交易沒有差異化,這樣一來就會出現隱私保護的問題。對于比特幣而言,采取的是單純的密鑰即身份的匿名機制。這種全局賬本的另外一個不足是,隨著參與節點數的增多,記錄交易也會增多,達成全局共識的耗時會越來越大,那么記賬效率就會不斷下降,這就導致其只適合記錄重要的且涉及全局的交易。
分布式賬本的思想是:不必全局共享賬本,根據業務的重要程度和交易額的大小,在一定范圍內實現共識,或者只在交易相關方實現共識,這樣對于不同的業務場景,適應性更廣。也就是說,在各種不同的主體之間,不同的生態內,會有很多面向不同業務的共識賬本,存在于有意參與共識的節點上。如此看來,區塊鏈就是分布式賬本的一種極端特例,是全局所有節點參與共識的全局賬本。
這樣我們在概念上就分清楚了區塊鏈和分布式賬本的相同和不同之處。在一般場合中,在中心化和第三方記賬方面,區塊鏈和分布式賬本是一回事,而在分布式記賬的概念里,區塊鏈和分布式賬本是兩個不同的概念,不能混淆。