![](https://hfnxjk.com/statics/images/logo.png)
1、數據結構
區塊鏈是將多個數據塊通過各自的指紋(哈希值)依次鏈接起來,形成一個「有序數據集」(通常被稱為「賬本」)。就像是一份PDF電子文檔,其每一頁都有「頁碼編號」,以保持字句及章節的有序性。只是區塊鏈中的“頁碼”比較特殊,當前頁的頁碼是上一頁「內容的指紋」,因此修改任何一頁的內容,都會導致后一頁的頁碼不能與之對應。因此鏈式結構的有序數據集具備了一定的「自校驗功能」,或者一定程度上的「防篡改功能(tamper-proof)」,但鏈式結構并不能防止最新的若干個區塊被刪除。區塊鏈的設計中還引入了樹狀結構(比如Merkle Tree)與圖狀結構(DAG),其本質都是讓數據自身含有嚴謹的結構,可以被工具軟件識別處理。這一點很像我們聽到一段聲音,我們能分辨出是音樂,或是噪音,我們近距離觀察一個物體,我們能分辨出是人造物,或者是自然物。
2、冗余備份
僅僅讓賬本數據自身具備特殊的結構,做的還不夠。Alice的文檔有結構,Bob的文檔也可以有同樣的結構,但Alice和Bob擁有的文檔可能不同,而且Alice和Bob的數據都可能被刪除,存儲介質可能會損壞。若將同一份賬本數據復制給跨越地域及文化界線的多個人存儲起來,并且這些人之間不需要預先建立任何信任關系,則在最大程度上保障了賬本數據的安全,也就是所謂的「去中心化存儲」。賬本數據分布的越廣泛,備份節點越多,則越安全,反之則容易被摧毀。除了賬本數據之外,人們還在積極探索通用數據的去中心化存儲及訪問取回,IPFS就是一個示范項目。
3、計算軌跡
這里的計算軌跡是指工作(執行計算任務)歷史的證明,可稱之為Proof of History,為什么這里需要引入PoH的概念?是因為在區塊鏈行業中,對于PoW(工作量證明)這個詞匯,人們太熟悉了,而從自然語言的使用角度來看,對于特別熟悉的詞匯,人們往往不會做深入的思考。人們看到、聽到、說到PoW這個詞時,可能會立即想到“挖礦”、“算力”、“耗電”、“共識”等諸多概念,但也許很難想到,PoW鑄造出的賬本,其實表達了一段難以磨滅的工作歷史。PoW就像一個帶有噴漆功能的車輪,被其碾壓過的路面,必將留下車轍印記。賬本中的每一個區塊都需要付出制造代價,這些代價見證了真實的歷史痕跡,若想偽造出另一份有競爭力的不同賬本,就得付出同量級的制造代價。理解了這一點,就不難明白BCH-ABC、BCH-SV、BTC三套賬本之間的本質區別:鑄造難度相差懸殊,所以BTC仍然是BTC。耗費巨量算力創造的歷史最難被偽造或篡改,這是PoW和PoC(Capacity,存儲容量證明)、PoS、DPoS等共識算法的本質區別。從區塊鏈行業的新手到專家,都非常容易陷入一個「誤區」:PoW僅是用于競爭出塊權、選擇出塊人,所以設計出一種低代價的共識算法,就能比Bitcoin或Ethereum更先進。可以思考一下:在區塊鏈社區中,為什么有人會質疑「EOS項目是否屬于真正的區塊鏈項目」?
4、世界時鐘
時間與鐘表影響著人們的方方面面,人們根據時間安排生活、制定工作計劃,社會機器的各個組織部件能夠協同工作,也是因為這些零部件機構能夠按照約定的時間互換勞動成果。電子計算機的運行也必須依賴于硬件主板上的晶體振蕩器(想想什么是時鐘頻率)。區塊鏈的運行也一樣離不開時間概念,每一個區塊的產生,就像是鐘擺的一次嘀嗒。號稱世界計算機的Ethereum怎么可以沒有一個世界時鐘系統?正是這個去中心化的時鐘系統控制著智能合約在多臺計算機上的同步運行。Bitcoin平均10分鐘產生一個區塊,Ethereum平均約15秒產生一個區塊,兩者都是世界時鐘。雖然不同的區塊鏈系統出塊時間間隔會有較大差異,同一系統內的每個區塊產生間隔時間也不固定,但這又有什么關系呢?根據相對論,時間本來就是相對的,如果Alice和Bob的運動速度差別巨大,那么Alice和Bob經歷的時間值可能就會不同,但對于Alice或Bob本人來說,只要按照自己的時鐘節律生活就行。
基于以上四點,我們可以思考思考人類文明發展演化的過程中,有哪些是富含結構的、冗余備份的、難以被篡改的?語言、神話、詩歌、族譜...,和區塊鏈賬本有很多類似的地方嗎?區塊鏈內含的世界時鐘系統,協調著大量的人工智能系統,會構筑出怎么的未來呢?