序二
互聯網技術革命性的降低了人類信息交互的通信成本。
未來,區塊鏈技術將極大地降低價值交換的信用成本。(因為區塊鏈是去信任的,區塊鏈擁有基于數學這個人類文明的最大公約數而建立的信用。)
序言
信息互聯網 ?到 ?價值互聯網
知識可以永久存在,但機會卻轉瞬即逝。可以學習過去的知識,但卻抓不到過去的機會。越早了解到新事物,越有可能抓住時代前行帶給我們的機遇。
0.必然的出現
文字與貨幣
文字傳遞信息。貨幣傳遞信用。現在全世界還在被不同語言,不同貨幣所分割。(當前的貨幣是由政府等權威中心機構進行信用背書,而且自從布雷頓森林體系廢除以來,全世界政府發行的貨幣已實際上是信用貨幣,但這種信用貨幣有2個最大的缺點,一是使用范圍的限制,雖然可以相互兌換,但不像數字貨幣那樣可以全世界范圍通用,其二是貨幣濫發導致的通貨膨脹)
如果全世界人類共用一種語言,那溝通交流效率是不是要高很多。
如果全世界共用一種貨幣,那交換要方便得多。(甚至會改變全世界的經濟格局)
信用與貨幣
現在市場經濟學認為,現在市場經濟根本上是一種信用經濟。信用是維系商品交換的基本前提。
實物貨幣與信用貨幣
嘗試定義信用
信用的可計算性
香農解決了“如何用數學方法定義信息”的問題。
區塊鏈解決了”如何用數學方法定義信用“的問題。
區塊鏈的信用表達式
區塊鏈這樣的系統中,可以精確計算違約(欺詐)的成本和收益,當成本遠高于收益時,理性的參與者就沒有違約的動力了。
從互聯網到區塊鏈
互聯網是為了信息的高效傳輸而被發明,在這個網絡中,信息在全球范圍內的點對點傳輸變得異常高效與廉價。(但信息互聯網無法確權,這導致了無法在物聯網上進行價值傳輸,但區塊鏈解決了互聯網上所有權歸屬的問題,所以價值傳遞變得可能,尤其是點對點去中心的價值傳遞,會極其高效低成本)
區塊鏈創造了一個數字化的,可以點對點傳輸價值的信用系統。
1.區塊鏈是什么
記賬貨幣
貨幣金屬論者:貨幣必須具有金屬內容和實質價值,貨幣的價值取決于貴金屬的價值。
貨幣名目論者:貨幣只是一種符號,一種名目上的存在。隨著金本位制度的崩潰,目前世界上幾乎所有國家的貨幣都已是信用貨幣。
區塊鏈的本質
區塊鏈的本質是一種去中心化的記賬系統(也可以認為是一種類似NoSql的數據庫系統),而比特幣正是這個系統上承載的“以數字形式存在”的貨幣。(區塊鏈是賬本,比特幣是賬本上以數字形式表示的“貨幣”,也就是說賬本上記錄著你有幾個比特幣,那你就有幾個,純粹的數字)
比特幣只是記賬的表征,而區塊鏈就是其背后的一套由信用記錄以及信用記錄的清算構成的體系。
(比特幣只是記賬的表征,重要的是賬本如何存在,以及如何記賬)
天才的發明
從技術角度看,區塊鏈是比特幣的基礎架構和實現方式。
中心化的記賬方式
因為賬本上的內容必須是唯一的,所以在通信不發達的條件下,中心化是必然的選擇。但中心化的弱點也是顯而易見的,一旦這個中心出現問題,比如被篡改,被損壞,整個系統就是面臨危機乃至崩潰。如果中心化的記賬系統承載的是貨幣體系,那么還面臨著中心管理者濫發的風險。
去中心化記賬的難題
同時滿足2個條件:
賬本數據的存儲必須是去中心化的。所有參與方都平等地擁有保存賬本的權利。
記賬行為必須是去中心化的。所有參與方都平等地擁有記賬的權利。
所有人都有賬本,同時允許所有人都能記賬,不可避免的,必然會導致賬本數據不一致,數據一致性是賬本的基本要求,數據不一致的賬本沒有任何價值。
拜占庭將軍問題
拜占庭的軍隊被分成多支,每支由一個將軍統領,將軍們之間用傳令兵通信,以求達到一致性的行動。但是將軍中有隱藏的叛徒,叛徒會用虛假的信息來欺騙別的將軍。大家并不知道叛徒是誰,那有什么辦法可以避免虛假信息達成一致呢?
拜占庭將軍問題并不是歷史真實事件,而是用來描述分布式系統中數據一致性的問題。拜占庭將軍問題表現的特點有多節點,節點間互不信任,在這樣的條件下如何達成一致。
分布式系統是將信息保存在多個節點上,比如多個服務器上。
傳統的分布式與去中心并不是等同的概念。傳統的分布式節點數量有限,且節點受某一方的控制。去中心化節點可以無限,節點之間相互獨立,沒有擁有特殊權利的某一方。但分布式和去中心化都面臨著數據一致性的問題。
區塊鏈經濟系統
字面上看,區塊鏈就是區塊組成的鏈條。假如看區塊鏈看作實體賬本,那區塊就是賬本中的一頁,上面記錄著交易信息。
競爭記賬機制成為區塊鏈解決去中心化記賬難題的關鍵。
所謂競爭記賬機制是指,網絡中的節點(計算機)用計算能力(算力)競爭記賬權的機制。比特幣系統中,大約每10分鐘完成一輪算力競爭,競爭的勝利者獲得記賬的權利,即向區塊鏈總賬本中寫入一個新區塊的權利。這樣,在一定時間內,只有競爭的勝利者才能完成一輪記賬,并向其他節點同步新增賬本信息。這就是區塊產生的過程。
注意,算力只決定贏得競爭的概率。好比買彩票,算力高相當于買的多,獲獎概率大,算力低相當于只買一張或幾張,獲獎概率小。
區塊鏈的算力競爭是通過“工作量證明POW”來完成的。工作量證明可以理解為,完成了多少工作的證明,即通過一個人人都可以驗證的特定結果,就能確認競爭參與者完成了相應的工作量。
算力競爭需要成本,如果沒有激勵,那就沒有競爭的動力。中本聰的設計是,競爭勝出的節點獲得新幣獎勵和交易手續費。這種設計將競爭記賬機制和貨幣發行完美結合在了一起,解決了去中心化貨幣系統中貨幣發行的難題。這個過程很想采礦(“工作-獎勵”循環),所以形象地成為“挖礦”。
最終,區塊鏈通過構造一個“競爭-記賬-獎勵”的經濟系統,解決了去中心化記賬的難題。最終造就了保證系統安全的龐大算力基礎,提升了系統的可靠性。
共識機制與價值載體
共識機制是區塊鏈技術的核心,它使區塊鏈這樣的賬本系統成為可能;
價值載體是區塊鏈技術的潛力所在,它使區塊鏈技術的應用領域遠不止數字貨幣。
如何達成共識,只有去中心化的結構才有的問題。中心化結構,共識由中心決定,其他參與方服從這個中心即可。
共識機制與資源消耗
比特幣區塊鏈要達成的共識是,一段時間內,由誰來獲取記賬權。比特幣區塊鏈的共識機制通過POW來實現。
POW的算力競爭需要耗費大量電力能源,人們也在探索新的非算力競爭的共識機制。典型的有權益證明機制Proof Of Stake,以節點持有幣的數量和時間來選擇記賬權,股份授權證明機制DPoS,類似于董事會投票,持幣者投出一定數量的節點,代理他們進行驗證和記賬。另外還有燃燒證明Proof Of Burn,沉淀證明Proof Of Deposit。
共識機制與私有鏈
所謂公有鏈是指像比特幣區塊鏈這樣完全去中心化,不受任何機構控制的區塊鏈。
私有鏈是指存在一定中心化控制的區塊鏈。
本質上講,私有鏈就是以犧牲部分去中心化的特性為代價,來換取對于區塊鏈權限的一些特殊控制,并且可以使用比公有鏈更高效,靈活,低成本的共識機制。
去中心化與中心化并不是非此即彼的關系,而是共生共存,互相依賴與結合的關系。在去中心化協議的基礎上,可以衍生出各種中心化的服務,以滿足不同行業及領域的個性化需求。
目前私有鏈最著名的例子是R3CEV公司牽頭的區塊鏈聯盟,已經吸引了全球40多家大型銀行的加入。
價值載體
區塊鏈作為一個記賬系統,上面不僅可以記錄數字形式的貨幣,也可以用來記錄可以用數字定義的其他任何資產,比如股權,債券,產權,版權,公證,合約,投票等可以用數字形式進行價值存儲或轉移的任何東西。區塊鏈上還可以使用腳本進行價值轉移,意味著可以進行復雜的交易邏輯。
區塊鏈是一個制造信任的機器,任何需要信任的領域,區塊鏈都有用武之地。
價值載體之數字貨幣
所謂山寨幣,是指對比特幣的簡單復制和模仿,沒有任何創新的數字貨幣。
價值載體之數字資產
一般意義上,數字資產包括任何以二進制形式存在并且具備所有權屬性的東西。
由于區塊鏈公開,透明,難以篡改的特點,利用區塊鏈技術可以非常方便地為任何數字資產或有價值的信息實現比現有中心化結構更為可靠的存在性證明,以及為各種形式現實資產的登記和轉移。
當交易變得智能
普通賬本上的數據僅僅是一種記錄,區塊鏈賬本上的數據有超越普通賬本的意義,他們是可編程的。這使得區塊鏈上的所能承載的不僅僅是普通的交易,而是可以基于程序自動執行的智能交易。
腳本與多重簽名技術
比特幣區塊鏈上的交易可以通過腳本來實現。所謂腳本,是指使用一種特定的描述性語言編寫的,可執行的計算機代碼。
比特幣多重簽名技術 就是使用腳本實現可編程交易的典型例子。
智能合約
智能合約的工作原理類似于計算機程序的條件執行語句,當一個預先遍好的條件被觸發時,智能合約執行相應的條款。
也可以認為,智能合約就是把傳統的合同以代碼的形式搬到了區塊鏈上。這帶來了根本的區別,不需要任何人監督地執行,也沒人可以在合同完成前單方面違約,一切都按合同的約定自動執行。
所謂圖靈完備,是指編程語言可以做到圖靈機做到的所有事情,可以解決所有的可計算問題。
圖靈不完備的語言常常因為循環或者遞歸有限,無法實現類似數組或列表的數據結構,這會導致能寫的程序有限。
因此,業內有人嘗試開發不同于比特幣區塊鏈的,支持圖靈完備腳本語言的區塊鏈,以太坊(Ethereum)就是典型例子。
將區塊鏈連接起來
以側鏈技術為代表的,能夠將區塊鏈連接起來的技術,就是區塊鏈拓展外在結構的關鍵。
比特幣區塊鏈的局限
中本聰創造區塊鏈是為了實現一個點對點的電子現金系統。當我們對區塊鏈的用途有更高的期待時,它的局限就體現出來了。比如不支持定義其他資產,或是復雜的交易邏輯。而升級系統又是異常困難的事情,其次,不可能在一條區塊鏈上實現所有的需求,所以產生了不同的競爭幣,但在這些區塊鏈之間無法進行價值轉移,形成了價值“孤島”,就像局域網一樣,側鏈技術用來作為連接不同區塊鏈的通路,打通價值傳輸的通道,實現價值傳輸的互聯網。
側鏈技術方面,Blockstream是較為領先的公司。
2.區塊鏈帶來的新機遇
數字貨幣產業鏈
挖礦
普通參與者就別想了。
交易平臺
場內交易所和場外交易(OTC)
錢包和支付
網頁錢包。好處是方便,跨平臺,只要能上網就行。缺點是將私鑰暴露給第三方。目前使用人數較多的在線錢包有 Blockchain,Coinbase。
桌面錢包。分為全節點錢包和輕錢包。全節點即同步所有的區塊鏈數據。輕錢包指只維護與自己相關的區塊鏈數據。
硬件錢包。專門用于存儲私鑰和支付的硬件設備。比如 Trezor,KeepKey等。
比特幣支付服務公司,商家接收比特幣支付,通過接入比特幣支付商來完成,支付商將消費者支付的比特幣轉化為商家接受的法幣,打入商家的賬戶,同時收取一定的手續費。這樣的比特幣支付商有很多,比如BitPay。
數據與媒體
數據提供商 ?,比如Blockchain.info,qukuai.com
媒體,向大眾傳播數字貨幣,區塊鏈的知識和新聞。比如國外的 Coindesk,國內的巴比特。
互聯網金融
區塊鏈技術能幫助金融行業有效地提升效率和降低風險。
物聯網與共享經濟
我國對物聯網的定義:通過信息傳感設備,按照約定的協議,把任何物品與互聯網連接起來,進行信息交換和通信,以實現智能化識別,定位,跟蹤,監控和管理的一種網絡。
新一代基礎設施
所謂基礎設施是指為生產和生活提供核心公共服務的系統。
區塊鏈的基礎設施要解決的核心問題是建立標準。
基礎設施的內容有2類,一類是區塊鏈的研發和構建,適用于不同行業,不同目的,不同類型的區塊鏈;二類是區塊鏈間的連接設施。
3.區塊鏈的應用場景
數字貨幣
萊特幣,2011年問世,技術原理與比特幣相同,萊特幣試圖改進比特幣,有3點與比特幣不同,第一,每2.5分鐘打包一個區塊,因此可以提供更快的交易確認。第二,總量預計為8400萬,是比特幣的4倍,第三,工作量證明算法與比特幣不同,比特幣采用SHA-256,萊特幣采用scrypt算法。
眾籌
清算,結算與審計
按傳統定義,結算是指各經濟單位由于商品交易,勞務供應和資金調撥等活動而引起的貨幣收付行為。按支付方式不同,有3種,現金結算,票據轉讓,轉賬結算。
清算多是銀行業間的資金結算,是結算的一個子集,一種特殊場景下的結算。
審計,是指由專設機關,依照法律對國際各級政府以及金融機構,企事業單位的重大項目和財務收支進行事前,事后審查的獨立性經濟監督活動。
智能合約
根據區塊鏈可編程的特點,人們可以將合同變成代碼的形式放到區塊鏈上,并在約定的條件下自動執行,這就是所謂的智能合約。
可簡單認為,智能合約是一種程序,只是這種程序處理的是人與人之間權利和義務的約定。
目前智能合約研究和實踐主要集中在基礎設施的完善上。
以太坊,被看作新一代的智能合約開發平臺。
RootStock,建立在比特幣區塊鏈上的智能合約分布式平臺,以側鏈的方式完成智能合約的搭載,從而為核心的比特幣區塊鏈增加價值和功能。
Augur,基于以太坊區塊鏈的去中心化預測市場。
版權與許可
互聯網缺乏內生的對有價值的信息的保護機制,因為在互聯網上,復制甚至篡改并傳播信息的成本,幾乎為零。
公證與記錄
公證服務,為一個文件在特定時間點的存在提供公開的“存在性證明”,會是區塊鏈應用迅速發展的領域之一。
傳統的公證服務成本太高了,而區塊鏈技術能大大降低成本,并且還更高效,更安全。區塊鏈對公證服務領域勢必會有顛覆性的影響。
區塊鏈可以運用在一切與價值相關的領域。比如保險,數據安全,電子商務,醫療,政務,能源。
貌似區塊鏈無所不能呀。
4.區塊鏈技術原理
密碼學基礎
密碼學概述
密碼學按照算法思想的革新可劃分為3個階段:古典密碼學,現代密碼學,公鑰密碼學。
古典密碼學,算法是保密的,其安全性基于算法,主要有2種,置換和代換。
置換是字面本身不變,位置改變。
代換是將明文中的字符替換成其他字符。
現代密碼學,以香農信息論誕生為標志,加解密使用同一密鑰,這種算法也稱“對稱加密算法”。
對稱加密算法最大的弱點是必須把密碼傳遞給解密的一方,密鑰的保存和傳輸,導致密鑰可能被竊取。
公鑰密碼學,相比于需要傳遞密鑰的加密方式,公鑰密碼學可以在不直接傳遞密鑰的情況下完成密文的解密。這種算法成為“非對稱加密算法”。非對稱加密算法需要有一對密鑰,公開密鑰和私有密鑰。
公鑰密碼根據其所依據的數學難題,一般分為3類,大整數分界問題類,離散對數問題類,橢圓曲線類。
哈希算法
哈希函數也成為散列函數,是能將任意長度的消息計算為固定長度的字符串(也稱消息摘要)的算法。
哈希算法有3個特征:1,輸入x可以是任意長度的字符串。2,輸出 H(x) 是固定長度的。3.計算 H(x) 的過程是高效的。
區塊鏈中的密碼學
比特幣區塊鏈中使用了大量的公開加密算法,比如Merkle Tree哈希數算法,橢圓曲線算法,SHA-256哈希算法,對稱加密算法以及一些編碼方式,如Base58編碼,VarInt編碼,DER編碼等。
區塊鏈組成
地址
比特幣的地址是公鑰的另一種展現形式。
比特幣的地址步驟:
1.隨機選取一個32字節的數作私鑰
2.通過橢圓曲線算法(ECDSA-secp256k1)由私鑰推出公鑰(共65字節, 1字節 0x04, 32字節為x坐標,32字節為y坐標)
3.將公鑰通過 SHA-256 哈希算法處理,得到32字節的哈希值
4.對第3步得到的哈希值,通過PIPEMD-160算法得到20字節的哈希值
5.把由版本號+第4步得到的哈希值組成的21字節數據進行雙SHA-256哈希運算,得到的哈希值的前4字節做校驗和,放置到21字節的末尾
6.對25字節數據進行Base58編碼,得到的就是比特幣地址
交易
區塊
Merkle Tree是用來同步數據一致性的算法。
網絡
比特幣采用P2P的網絡架構。P2P網絡中的每個節點權利相同,沒有特殊(中心)節點。
比特幣網絡的相關功能有:
1.新交易廣播會廣播到全網的每個節點
2.每個節點將新交易收集到內存,組裝成區塊
3.每個節點都嘗試在自己的區塊中找到一個具有足夠難度的工作量證明(“在自己的區塊中”這個如何理解)
4.節點工作量證明競爭成功,把有效地區塊數據向全網廣播
5.當且僅當包含在該區塊的交易都是有效的,并驗證其完成了工作量證明,其他節點才認同該節點的有效性
6.其他節點表示接受該區塊,并在該區塊的末尾制造新的區塊以延長整個區塊的鏈條
比特幣網絡中,采用“洪水算法”進行交易和區塊信息的傳播。簡單說,洪水算法就是收到信息的節點向與它相連的節點推送該信息,下一個收到信息的節點繼續這個過程。通常在一兩秒內,交易或者區塊信息就可以傳遍全網。
共識算法
共識算法的兩大核心是工作量證明和最長鏈機制。
共識算法的最終體現就是比特幣的最長鏈。
共識算法的目的就是保證比特幣在最長鏈上運轉,從而保證整個記賬系統的一致性和可靠性。
比特幣工作量證明是在解一道數學題,這道題有3個關鍵要素:工作量證明函數,區塊及難度值。
工作量證明函數即使SHA-256.
區塊即輸入數據。
難度值決定了解這道題所需要的計算量。
為保證大約每10分鐘產生一個新的區塊,根據全網算力的不同,難度值要不斷調整。
最長鏈機制
讀后感
作者作為區塊鏈的行業的創業者,一線工作者,對區塊鏈的理解很深刻,對區塊鏈的前景也有冷靜理智地看法。
區塊鏈本身是種在現有技術基礎上的創造性的技術方案,用數學的方法解決了全球范圍內的人與人(節點與節點)之間的信用問題,進而在這個系統上可以傳遞價值,這將極大地改變人們的生活方式。
區塊鏈的爆發和大規模應用還需時日,但也為敢吃螃蟹的資本和開發者留下了先發制人的機會。
花了3天時間,全書雖然是看完了,但也只是理解了部分內容而已,很多地方是字全認得,但就是不知道什么意思,后續還需要繼續回看思考。