6個(gè)角度分析:產(chǎn)品經(jīng)理需要掌握的區(qū)塊鏈技術(shù)基礎(chǔ)
本文主要是從六個(gè)角度給大家分析,產(chǎn)品經(jīng)理需要掌握的一些區(qū)塊鏈技術(shù)基礎(chǔ),文章有點(diǎn)長(zhǎng),但我想你需要了解一下,一起來看看~
本文目的是介紹區(qū)塊鏈技術(shù)的概況,試著回答“區(qū)塊鏈?zhǔn)鞘裁??組成要素有哪些?運(yùn)行機(jī)制是什么?從哪兒來?可能到哪兒去?”這樣幾個(gè)問題。
區(qū)塊鏈自2008年作為比特幣的底層技術(shù)誕生以來,并沒有一個(gè)明確的、被各界者認(rèn)可的定義。近期,各類相關(guān)文章、書藉如雨后春筍一般涌了現(xiàn)來,加之資本市場(chǎng)火熱,新韭菜們炒幣熱情不減,似乎誰都能對(duì)區(qū)塊鏈點(diǎn)評(píng)兩句,這樣的定義更加難以描述和評(píng)判。
我節(jié)選了一個(gè)我認(rèn)為可以較為準(zhǔn)確的描述區(qū)塊鏈本質(zhì)特征的定義。
從技術(shù)角度來說:區(qū)塊鏈?zhǔn)且环N由多方共同維護(hù),以塊鏈結(jié)構(gòu)存儲(chǔ)數(shù)據(jù),使用密碼學(xué)保證傳輸和訪問安全,能夠?qū)崿F(xiàn)數(shù)據(jù)一致存儲(chǔ)、無法篡改、無法抵賴的技術(shù)體系。
——《騰訊區(qū)塊鏈白皮書》
定義中點(diǎn)明了區(qū)塊鏈的技術(shù)基礎(chǔ),如:多方維護(hù)、民主共識(shí)、分布存儲(chǔ)、鏈?zhǔn)浇Y(jié)構(gòu)、密碼學(xué)等技術(shù)要素,同時(shí)也指出了區(qū)塊鏈技術(shù)的的基本能力,如一致存儲(chǔ)、無法篡改等等。
我們也不難發(fā)現(xiàn),對(duì)于區(qū)塊鏈的特征描述,也是分層次的。
- 一個(gè)層面是對(duì)底層技術(shù)的描述,主要是講區(qū)塊鏈?zhǔn)鞘裁矗?/li>
- 另一個(gè)層面,是對(duì)區(qū)塊鏈可以或可能發(fā)揮能力的描述,講的是區(qū)塊鏈能做什么。
我按這個(gè)思路,由底層技術(shù)點(diǎn)出發(fā),逐層抽象出區(qū)塊鏈的高層特性(即能力)。
如下表:
沿著這樣的思路,展開本文的詳述。
層次區(qū)分或有交叉,分析思路僅作為參考。想傳遞的信息是,底層技術(shù)決定了其功能特性,而功能特性支撐更上層的思想理念。很多人喜歡空談抽象的思想,這不利于理解區(qū)塊鏈的全貌。
一、區(qū)塊鏈產(chǎn)生的背景是什么?
1.1 起源
目運(yùn)兩道金光,射沖斗府。驚動(dòng)高天上圣大慈仁者玉皇大天尊玄穹高上帝,駕座金闕云宮靈霄寶殿,聚集仙卿,見有金光焰焰,即命千里眼、順風(fēng)耳開南天門觀看。
——《西游記》第一回 孫大圣橫空出世
1.1.1 概念起源
區(qū)塊鏈的概念首次在2008年末由中本聰(Satoshi Nakamoto)發(fā)表在比特幣論壇中的論文《Bitcoin: A Peer-to-Peer Electronic Cash System》提出,論文中區(qū)塊鏈技術(shù)是構(gòu)建比特幣數(shù)據(jù)結(jié)構(gòu)與交易信息加密傳輸?shù)幕A(chǔ)技術(shù),該技術(shù)實(shí)現(xiàn)了比特幣的挖礦與交易。
中本聰認(rèn)為:
- 借助第三方機(jī)構(gòu)來處理信息的模式擁有點(diǎn)與點(diǎn)之間缺乏信任的內(nèi)生弱點(diǎn),商家為了提防自己的客戶,會(huì)向客戶索取完全不必要的信息,但仍然不能避免一定的欺詐行為;
- 中介機(jī)構(gòu)的存在,增加了交易成本,限制了實(shí)際可行的最小交易規(guī)模;
- 數(shù)字簽名本身能夠解決電子貨幣身份問題,如果還需要第三方支持才能防止雙重消費(fèi),則系統(tǒng)將失去價(jià)值。
基于以上三點(diǎn)現(xiàn)存的問題,中本聰在區(qū)塊鏈技術(shù)的基礎(chǔ)上,創(chuàng)建了比特幣。
中本聰其人的真實(shí)身份,至今未知。大家猜測(cè)他應(yīng)該是一個(gè)無政府主義者、密碼學(xué)家、技術(shù)極客等等。從論文中不難看出中本聰思想來源實(shí)際非常簡(jiǎn)單—完全依靠市場(chǎng)力量的自由競(jìng)爭(zhēng)的理念,以及到現(xiàn)存社會(huì)流經(jīng)的運(yùn)行規(guī)則充滿了失望。這正是區(qū)塊鏈的思想基礎(chǔ)。
1.1.2 比特幣創(chuàng)世
最初的比特幣源代碼沒有很明確的模塊劃分,很多不同的功能放在一個(gè)5000多行的Main程序中,然而這樣的代碼非常不利于重用、維護(hù)和擴(kuò)展,為此“比特社區(qū)”的極客們做了大量工作,不斷優(yōu)化、改進(jìn)和維護(hù)著比特幣的代碼。
2009年1月3日,比特幣的創(chuàng)始人中本聰構(gòu)建了比特幣的第一個(gè)區(qū)塊。并在創(chuàng)世區(qū)塊里留下一句永不可修改的話:
“The Times 03/Jan/2009 Chancellor on brink of second bailout for banks(2009年1月3日,財(cái)政大臣正處于實(shí)施第二輪銀行緊急援助的邊緣)?!?/p>
當(dāng)時(shí)正是英國(guó)的財(cái)政大臣達(dá)林,被迫考慮第二次出手緩解銀行危機(jī)的時(shí)刻,這句話是泰晤士報(bào)當(dāng)天的頭版文章標(biāo)題。
創(chuàng)世區(qū)塊,從這個(gè)名字可以明顯的感受到一個(gè)單純的科學(xué)家(或技術(shù)狂人)的雄心壯志,以及對(duì)現(xiàn)代經(jīng)濟(jì)運(yùn)行狀態(tài)的極度擔(dān)憂。
1.2 起源之前
我們不禁要問,區(qū)塊鏈產(chǎn)生之前究竟發(fā)生了什么,是什么催生了區(qū)塊鏈的產(chǎn)生?區(qū)塊鏈真的像孫大圣一樣是從石頭縫里蹦出來的嗎?答案是否定的。
1)思想之源
- 去中心化思想早就存在,無政府主義從未斷絕,去中心化一直是治理這個(gè)世界的備選方案之一。
- 這個(gè)世界的分配機(jī)制,存在大問題。生產(chǎn)力的飛速發(fā)展,并沒有帶來理想中的繁榮,價(jià)值傳遞過程中存在或正在涌現(xiàn)出大量且可怕的問題,這是一種繁榮的悖論。
一方面,數(shù)字時(shí)代正給創(chuàng)新和發(fā)展帶來無盡的可能性,另一方面,繁榮程度卻停下了腳步,發(fā)達(dá)國(guó)家的生活標(biāo)準(zhǔn)甚至下降了。OECD(經(jīng)濟(jì)合作與發(fā)展組織)國(guó)家的工資中位數(shù)增長(zhǎng)正在停滯。根據(jù)國(guó)際勞工組織,世界上大部分地區(qū)的年輕人失業(yè)率維持在20%左右,在部分發(fā)展中國(guó)家,這些數(shù)字又要高得多。擁有權(quán)力和財(cái)富的人跑在了前面,而沒有權(quán)力和財(cái)富的人落在了后面。
——《區(qū)塊鏈革命》
富者越來越富,窮人越來越窮,通過權(quán)力獲利而不是勞作,權(quán)力會(huì)集中到少數(shù)的公司和個(gè)人手中,在加劇不公開的同時(shí),也降低了創(chuàng)新性。這樣的問題還有很多!人們迫切的希望價(jià)值的生產(chǎn)、傳輸和存儲(chǔ)的過程,更加的安全、高效、公正。每個(gè)人都是繁榮的受益者,而不是只有少數(shù)人。
頑固的中心化信用體系和交易方式帶來的惡疾,正是區(qū)塊鏈產(chǎn)生的基本動(dòng)力。
2)技術(shù)基礎(chǔ)
大范圍的互聯(lián)網(wǎng)技術(shù)、通信技術(shù)、密碼學(xué)應(yīng)用技術(shù)、P2P網(wǎng)絡(luò)等IT技術(shù)已經(jīng)非常成熟,這些技術(shù)正是構(gòu)成區(qū)塊鏈實(shí)體的基礎(chǔ)。請(qǐng)參考以下的文章,講述了區(qū)塊鏈技術(shù)的演進(jìn)過程,篇幅不大,生動(dòng)有趣。
《大家好,我就是區(qū)塊鏈本人。今天,我要給你們介紹我的家族》
3)直接誘因
世界范圍內(nèi)的經(jīng)濟(jì)危機(jī)或是比特幣(區(qū)塊鏈)產(chǎn)生的直接誘因。
2008年9月,以雷曼兄弟的倒閉為開端,金融危機(jī)在美國(guó)爆發(fā)并向全世界蔓延。為應(yīng)對(duì)危機(jī),各國(guó)政府采取量化寬松等措施,救助由于自身過失、陷入危機(jī)的大型金融機(jī)構(gòu)。這些措施帶來了廣泛的質(zhì)疑,并一度引發(fā)了“占領(lǐng)華爾街”運(yùn)動(dòng)。
2008年10月31日紐約時(shí)間下午2點(diǎn)10分,在一個(gè)普通的密碼學(xué)郵件列表中,幾百個(gè)成員均收到了自稱是中本聰?shù)娜说碾娮余]件,“我一直在研究一個(gè)新的電子現(xiàn)金系統(tǒng),這完全是點(diǎn)對(duì)點(diǎn)的,無需任何可信的第三方”,然后他將他們引向一個(gè)九頁(yè)的白皮書,其中描述了一個(gè)新的貨幣體系。同年11月16日,中本聰放出了比特幣代碼的先行版本。
1.3 早期發(fā)展
比特幣技術(shù)的最初支持者一定是其核心理念的認(rèn)同者,快速的引起了無政府主義者、頂尖極客、密碼學(xué)家和金融行業(yè)變革者的關(guān)注和支持。少數(shù)的有識(shí)之士看到了區(qū)塊鏈技術(shù)和理念的巨大的變革機(jī)遇和財(cái)富機(jī)會(huì),同時(shí)也不斷的吸引投機(jī)者、黑客、職業(yè)礦工、洗錢組織的關(guān)注。
正是因?yàn)閰^(qū)塊鏈技術(shù)天然的反監(jiān)管特性、去中心化的思想、匿名、有投機(jī)屬性等等這些特性,給區(qū)塊鏈技術(shù)蒙上了一層神秘的面紗。再加上至少中本聰?shù)恼鎸?shí)身份還沒有被知曉,這更加大了區(qū)塊鏈和虛擬幣的神秘性,在最初幾年時(shí)間里,迅速積累起大批近乎宗教式、傳銷式的狂熱追隨者。
“財(cái)富神話”吸引大批的投機(jī)主義者,即便它不懂區(qū)塊鏈?zhǔn)鞘裁?,它依然?huì)通過道聽途說的、支離破碎的概念去蠱惑大眾參與虛擬幣的炒作。
隨著英、美、日等國(guó)政府對(duì)區(qū)塊鏈列入國(guó)家發(fā)展戰(zhàn)略,區(qū)塊鏈逐漸為大眾所熟知,基本渡過早期發(fā)展的階段。
二、構(gòu)成區(qū)塊鏈的技術(shù)要素有哪些?
There is nothing new under the sun.
——《圣經(jīng) 舊約 傳道書》第一章第九節(jié)
在區(qū)塊鏈技術(shù)并沒有發(fā)明什么新技術(shù),更準(zhǔn)確的說是區(qū)塊鏈不是一種技術(shù),而是整合現(xiàn)存技術(shù)而形成的一個(gè)綜合性解決方案。下面介紹構(gòu)成區(qū)塊鏈的技術(shù)要素,一句話可以概括:密碼學(xué)是基礎(chǔ),共識(shí)算法是靈魂。
區(qū)塊鏈得以運(yùn)行的框架,諸如:P2P網(wǎng)絡(luò),以及更底層的通信協(xié)議,并沒有多大的創(chuàng)新,不多贅述。
2.1 密碼學(xué)是基礎(chǔ)
密碼學(xué)內(nèi)容艱深復(fù)雜,本人水平有限,只能是記點(diǎn)學(xué)習(xí)筆記,不敢多扯了,有興趣的朋友可深入研究。
2.1.1 Hash算法
簡(jiǎn)單來說,就是把任意數(shù)據(jù)變?yōu)楣潭ㄩL(zhǎng)度的二進(jìn)制,只要是最終以二進(jìn)制形式存儲(chǔ)的數(shù)據(jù),就能通過hash算法變?yōu)楣潭ㄩL(zhǎng)度的一串?dāng)?shù)據(jù)。
一個(gè)優(yōu)秀的hash算法有一下四個(gè)特點(diǎn):
- 正面快速:就是說加密的速度要在有限時(shí)間和有限資源內(nèi)完成,且越快越好。
- 逆向困難:就是說給你一個(gè)加密后的hash值數(shù)據(jù),要想逆向破解獲得加密前的明文是極其困難的。
- 輸入敏感:明文只要發(fā)生哪怕一點(diǎn)點(diǎn)改變,進(jìn)行hash運(yùn)算后的值都會(huì)產(chǎn)生很大的改變。
- 沖突避免:不同的明文,他們進(jìn)行hash運(yùn)算后的hash值基本不可能一樣。
區(qū)塊鏈中常用兩個(gè)密碼學(xué)哈希函數(shù),一個(gè)是SHA256,另一個(gè)是RIPEMD160(主要用于生產(chǎn)比特幣地址)。Hash算法還有一個(gè)重要特性是難題好友性,難題友好性指的是沒有便捷的方法去產(chǎn)生一滿足特殊要求的哈希值。
哈希函數(shù)的難題友好性構(gòu)成了基于工作量證明的共識(shí)算法的基礎(chǔ),通過哈希運(yùn)算得出的符合特定要求的哈希值,可以作為共識(shí)算法中的工作量證明。比特幣的安全保證依賴于哈希函數(shù)的安全性,如果哈希函數(shù)被攻破,POW共識(shí)算法就會(huì)失效。
2.1.2 非對(duì)稱加密
- 對(duì)稱加密:加密算法和解密算法都是同一種模式,只用一把密鑰保證加密數(shù)據(jù)的安全;甲必須把密鑰告訴乙,否則乙無法解密。那么保存和傳遞密鑰,成為最重要也最頭痛的問題。比如:《潛伏》里余則成使用的密碼本,一旦敵人獲取到了這個(gè)密碼本,我方的通信就再無秘密可言。
- 非對(duì)稱加密:其實(shí)質(zhì)是利用數(shù)學(xué)難題的非對(duì)稱性。例如:兩個(gè)很大的質(zhì)數(shù)相乘很容易知道結(jié)果,但知道一個(gè)很大的數(shù),很難把它分解成兩個(gè)質(zhì)數(shù)。
圖片來自百度百科
2.1.3 Merkle哈希樹
基于哈希值的二叉樹或多叉樹,在計(jì)算機(jī)領(lǐng)域,Merkle樹大多用來進(jìn)行完整性驗(yàn)證處理,在分布式環(huán)境下,其進(jìn)行完整性驗(yàn)證能大量減少數(shù)據(jù)傳輸和計(jì)算的復(fù)雜程度。
區(qū)塊鏈就可以看作一類使用哈希指針的鏈表,這個(gè)鏈表鏈接一系列的區(qū)塊,每個(gè)區(qū)塊包含數(shù)據(jù)以及指向表中前一個(gè)區(qū)塊的指針。區(qū)塊鏈中,前一個(gè)區(qū)塊指針由哈希指針?biāo)鎿Q,因此每個(gè)區(qū)塊不僅僅告訴前一個(gè)區(qū)塊的位置,也提供一個(gè)哈希值去驗(yàn)證這個(gè)區(qū)塊所包含的數(shù)據(jù)是否發(fā)生改變。
2.1.4 橢圓曲線算法
橢圓曲線密碼算法(Elliptic Curve Cryptography,ECC)是基于橢圓曲線數(shù)學(xué)的一種公鑰密碼算法,其安全性依賴于橢圓曲線離散對(duì)數(shù)問題的困難性,是非對(duì)稱算法的一種。
比特幣中使用基于secp256k1橢圓曲線數(shù)學(xué)的公鑰密碼學(xué)算法進(jìn)行簽名與驗(yàn)證簽名,一方面可以保證用戶的賬戶不被冒名頂替,另一方面保證用戶不能否認(rèn)其所簽名的交易。用私鑰對(duì)交易信息簽名,礦工用用戶的公鑰驗(yàn)證簽名、驗(yàn)證通過則交易信息記賬,完成交易。
2.1.5 公鑰、私鑰、簽名、驗(yàn)簽、證書等概念
- 公鑰、私鑰:一般來講,私鑰用來進(jìn)行解密和簽名,是給自己用的。公鑰由本人公開,用于加密和驗(yàn)證簽名,是給別人用的。
- 簽名:內(nèi)容->hash->digest->私鑰加密->簽名。
- 驗(yàn)簽:用公鑰解密簽名得到摘要,然后用原始文件經(jīng)過hash得到摘要,與解密出的摘要進(jìn)行對(duì)比。
- 證書:數(shù)字證書則是由證書認(rèn)證機(jī)構(gòu)(CA)對(duì)證書申請(qǐng)者真實(shí)身份驗(yàn)證之后,用CA的根證書對(duì)申請(qǐng)人的一些基本信息,以及申請(qǐng)人的公鑰進(jìn)行簽名(相當(dāng)于加蓋發(fā)證書機(jī)構(gòu)的公章,即CA的私鑰加密生成)后形成的一個(gè)數(shù)字文件。
2.2 共識(shí)機(jī)制是靈魂
共識(shí)機(jī)制的本質(zhì)是要解決分布式系統(tǒng)一致性的問題。分布式系統(tǒng)一致性問題的研究一直在進(jìn)行,也是計(jì)算機(jī)科學(xué)中既古老又前沿的重要研究方向,同時(shí)共識(shí)機(jī)制也是區(qū)塊鏈中最難理解的概念之一。
區(qū)塊鏈網(wǎng)絡(luò)是一個(gè)完全靠陌生人節(jié)點(diǎn)記賬和維護(hù)、非安全的網(wǎng)絡(luò)環(huán)境,要讓這些未曾謀面的人按照規(guī)章去辦事,還要防止有Bad boy作惡,一定有一種更普遍、更抽象的力量來驅(qū)動(dòng)它。共識(shí)機(jī)制和激勵(lì)機(jī)制就是區(qū)塊鏈的引擎,使得區(qū)塊鏈得以持續(xù)運(yùn)行的動(dòng)力之源。
什么是共識(shí)?
指一個(gè)社會(huì)不同階層或不同利益的人所尋求的共同認(rèn)識(shí)、價(jià)值、理想。我們工作生活的方方面面都需要共識(shí),可以說只要有多人協(xié)作,共識(shí)機(jī)制必不可少。
小到?jīng)Q定周末要到哪里去玩,大到中美貿(mào)易磋商,都是共識(shí)建立的過程。比如說:一個(gè)學(xué)生社團(tuán)要推舉領(lǐng)袖,是個(gè)怎樣的過程呢?
宣講(相互認(rèn)識(shí)確認(rèn)是社團(tuán)成員)->投票(一人一票公開透明)->計(jì)票(有公信力的計(jì)票人和監(jiān)票人,現(xiàn)場(chǎng)監(jiān)督)->共識(shí)(達(dá)成一致)。
如果一個(gè)人動(dòng)了歪腦筋,想用非正常手段左右共識(shí)結(jié)果,其實(shí)有很多的點(diǎn)可以突破,最簡(jiǎn)單可能是在投票環(huán)節(jié)搞一下賄選,或者控制計(jì)票人和監(jiān)票人,這樣就在一個(gè)共識(shí)過程中出現(xiàn)了作惡節(jié)點(diǎn)。
然而在區(qū)塊鏈?zhǔn)且粋€(gè)陌生人的網(wǎng)絡(luò),沒有信任基礎(chǔ),沒有公開透明的計(jì)賬機(jī)制,沒有監(jiān)督的過程,想要達(dá)到全網(wǎng)的最終一致性,是一件極為困難的事情。
正如所有硬幣都有兩面,陌生人的網(wǎng)絡(luò)環(huán)境也有優(yōu)勢(shì)。
- 一是計(jì)算機(jī)之間的通信速度要遠(yuǎn)超人類,共識(shí)的通信過程速度極快;
- 二是參與者眾多,作惡節(jié)點(diǎn)想要扭曲共識(shí)過程難度很大。
參考文章:區(qū)塊鏈共識(shí)機(jī)制的演進(jìn)
共識(shí)機(jī)制也是當(dāng)前區(qū)塊鏈技術(shù)創(chuàng)新的重要組成部分。現(xiàn)今區(qū)塊鏈的共識(shí)機(jī)制可分為四大類:工作量證明機(jī)制、權(quán)益證明機(jī)制、股份授權(quán)證明機(jī)制和Pool驗(yàn)證池。
2.2.1 工作量證明機(jī)制 POW
比特幣采用的共識(shí)機(jī)制。
共識(shí)機(jī)制在以前一般被稱為證明方式(Proof),因?yàn)楸忍貛挪捎霉ぷ髁孔C明(即Proof-Of-Work,簡(jiǎn)寫為POW)。通俗講就是“通過工作以獲得指定成果,用成果來證明曾經(jīng)付出的努力”。
我們?nèi)粘9ぷ魃钪薪?jīng)常使用工作量證明,比如:學(xué)生考試成績(jī),畢業(yè)證以及駕照等,這種證明方式的一個(gè)顯著特征是——往往需要很大的工作量才能拿到指定成果,但這個(gè)成果很容易驗(yàn)證。因?yàn)槲覀円话愫茈y去實(shí)時(shí)監(jiān)督一個(gè)人是否真的付出了這些工作量,所以只能使用工作量的結(jié)果來證明。
具體實(shí)現(xiàn)方式,比特幣采用哈希(Hash)算法。比特幣是對(duì)整個(gè)區(qū)塊進(jìn)行哈希運(yùn)算,以得到符合條件的值。這個(gè)過程將來耗費(fèi)大量的算力。比特幣采用SHA256哈希運(yùn)算,且每次都是連續(xù)進(jìn)行兩次SHA256運(yùn)算才能作為最終結(jié)果,前一次運(yùn)算的結(jié)果作為后一次運(yùn)算的輸入,即Double SHA256,一般簡(jiǎn)稱SHA256D。
POW的核心要義為:算力越大,挖到塊的概率越大,維護(hù)區(qū)塊鏈安全的權(quán)重越大。相對(duì)其他共識(shí)機(jī)制而言,POW邏輯簡(jiǎn)單,容易實(shí)現(xiàn),容錯(cuò)達(dá)50%,其安全有嚴(yán)格的數(shù)學(xué)論證。
在POW建立共識(shí)的過程中,區(qū)塊鏈的維護(hù)者的工作特別像是在“一堆沙子中去尋找金子”,所以這些維護(hù)者被形象的稱為礦工,而計(jì)算哈希值的過程被稱為挖礦。
2.2.2 權(quán)益證明機(jī)制 POS
POW并非完美,其中被指責(zé)最多的主要有兩點(diǎn):一是浪費(fèi)能源,二是風(fēng)險(xiǎn)和收益博弈必然導(dǎo)致聯(lián)合挖礦,而大算力礦池可能會(huì)對(duì)系統(tǒng)的去中心化構(gòu)成威脅。
于是在2011年,一個(gè)名為Quantum Mechanic的數(shù)字貨幣愛好者,在Bitcointalk論壇提出Proof-of-Stake(POS)證明機(jī)制,該機(jī)制被充分討論之后證明具有可行性。如果說POW主要比拼算力,算力越大,挖到一個(gè)塊的概率越大,POS則是比拼余額,通俗說就是自己的手里的幣越多,挖到一個(gè)塊的概率越大。
POS只是代表一種共識(shí)機(jī)制理念,具體有多種實(shí)現(xiàn)方式。
現(xiàn)在的大部分新幣都是基于POS機(jī)制,或POW+POS的機(jī)制?;窘鉀Q了POW機(jī)制的能源浪費(fèi)問題。
2.2.3 股份授權(quán)證明機(jī)制 ?DPOS
比特股(Bitshares)項(xiàng)目于2013年8月開始啟動(dòng),這是一個(gè)野心勃勃的項(xiàng)目,對(duì)區(qū)塊鏈做了很多改造,并引入許多新概念和特征。此時(shí)POW和POS都已成功運(yùn)行許久,彼此優(yōu)劣已被反復(fù)討論,兩大陣營(yíng)時(shí)至今日依然爭(zhēng)論不休。
按照項(xiàng)目規(guī)劃,比特股對(duì)交易容量和區(qū)塊速度有極高要求,顯然POW或POS都達(dá)不到要求,于是比特股發(fā)明了一種新的共識(shí)機(jī)制——Delegated Proof-Of-Stake(DPOS),即股份授權(quán)股權(quán)證明。
DPOS很容易理解,類似于現(xiàn)代企業(yè)董事會(huì)制度,比特股系統(tǒng)將代幣持有者稱為股東,由股東投票選出101名代表,然后由這些代表負(fù)責(zé)產(chǎn)生區(qū)塊。那么需要解決的核心問題主要有:代表如何被選出,代表如何自由退出“董事會(huì)”,代表之間如何協(xié)作產(chǎn)生區(qū)塊等。
持幣者若想成為一名代表,需先拿自己的公鑰去區(qū)塊鏈注冊(cè),獲得一個(gè)長(zhǎng)度為32位的特有身份標(biāo)識(shí)符,用戶可以對(duì)這個(gè)標(biāo)識(shí)符以交易的形式進(jìn)行投票,得票數(shù)前101位被選為代表。代表們輪流產(chǎn)生區(qū)塊,收益(交易手續(xù)費(fèi))平分。
如果有代表不老實(shí)生產(chǎn)區(qū)塊,很容易被其他代表和股東發(fā)現(xiàn),他將立即被踢出“董事會(huì)”,空缺位置由票數(shù)排名102的代表自動(dòng)填補(bǔ)。
從某種角度來說,DPOS可以理解為多中心系統(tǒng),兼具去中心化和中心化的優(yōu)勢(shì)。前幾個(gè)月大火的EOS就是采用這個(gè)機(jī)制。
2.2.4 驗(yàn)證池 PooI
是目前行業(yè)鏈大范圍在使用的共識(shí)機(jī)制。
Pool驗(yàn)證池是基于傳統(tǒng)的BFT(拜占庭容錯(cuò))及其變種的共識(shí)方案。關(guān)于拜占庭將軍問題、Pasox算法以及計(jì)算機(jī)大神LESLIE LAMPORT(2013年圖靈獎(jiǎng)得主)的有趣故事。請(qǐng)參考大神的主頁(yè)www.lamport.org,一睹大神風(fēng)采。
貼張照片感受一下:
叫驗(yàn)證池,是因?yàn)锽FT算法需要參與者能夠相互辨識(shí),一起組成一個(gè)池來決定最終結(jié)果。Pool驗(yàn)證池不需要依賴代幣就可以工作,在成熟的分布式一致性算法(Pasox、Raft)基礎(chǔ)之上,可以實(shí)現(xiàn)秒級(jí)共識(shí)驗(yàn)證,更適合有多方參與的多中心商業(yè)模式。它的缺點(diǎn)是:該共識(shí)機(jī)制能夠?qū)崿F(xiàn)的分布式程度不如PoW機(jī)制,更適合多方參與的多中心商業(yè)模式。
總結(jié):
開頭提到:共識(shí)機(jī)制解決的本質(zhì)問題是分布式數(shù)據(jù)一致性的問題!這是個(gè)博大深?yuàn)W的研究課題,對(duì)它的研究和創(chuàng)新從未間斷。
在不可能三角理論(去中心化,安全,環(huán)保不能同時(shí)兼?zhèn)洌┲?,POW徹底拋棄節(jié)約能源的需求,通過巨大算力來維護(hù)系統(tǒng)安全和去中心化特征。POS和DPOS幾乎不費(fèi)多余電力,但不可避免在另外兩個(gè)特性做出犧牲。所以說沒有完美的共識(shí)機(jī)制,只有更合適的共識(shí)解決方案。
三、一個(gè)完整區(qū)塊鏈交易的過程是什么?
3.1 正常流程
當(dāng)一個(gè)用戶發(fā)起了一個(gè)交易的操作,整個(gè)區(qū)塊鏈網(wǎng)絡(luò)就像一臺(tái)統(tǒng)一的計(jì)算機(jī)一樣,開啟了它復(fù)雜但井然有序的運(yùn)行。
中本聰在其比特幣白皮書中,比較詳盡的敘述了這個(gè)信用系統(tǒng)建立的過程:
- 第一步:每一筆交易為了讓全網(wǎng)承認(rèn)有效,必須廣播給每個(gè)節(jié)點(diǎn)(node:也就是礦工);
- 第二步:每個(gè)礦工節(jié)點(diǎn)要正確無誤的給這十分鐘的每一筆交易蓋上時(shí)間戳并記入那個(gè)區(qū)塊(block);
- 第三步:每個(gè)礦工節(jié)點(diǎn)要通過解SHA256難題去競(jìng)爭(zhēng)這個(gè)十分鐘區(qū)塊的合法記賬權(quán),并爭(zhēng)取得到二十五個(gè)比特幣的獎(jiǎng)勵(lì)(頭四年是每十分鐘五十個(gè)比特幣,每四年遞減一半);
- 第四步:如果一個(gè)礦工節(jié)點(diǎn)解開了這十分鐘的SHA256難題,ta將向全網(wǎng)公布ta這十分鐘區(qū)塊記錄的所有蓋時(shí)間戳交易,并由全網(wǎng)其他礦工節(jié)點(diǎn)核對(duì);
- 第五步:全網(wǎng)其他礦工節(jié)點(diǎn)核對(duì)該區(qū)塊記賬的正確性(因?yàn)樗麄兺瑫r(shí)也在蓋時(shí)間戳記賬,只是沒有競(jìng)爭(zhēng)到合法區(qū)塊記賬權(quán),因此無獎(jiǎng)勵(lì)),沒有錯(cuò)誤后他們將在該合法區(qū)塊之后競(jìng)爭(zhēng)下一個(gè)區(qū)塊,這樣就形成了一個(gè)合法記賬的區(qū)塊單鏈,也就是比特幣支付系統(tǒng)的總賬——區(qū)塊鏈。
就這樣用戶的記錄就被記錄到了這個(gè)賬本中,完成了一次基于區(qū)塊鏈的交易流程。
請(qǐng)參考《一個(gè)故事告訴你比特幣的原理及運(yùn)作機(jī)制》
3.2 異常流程(或異常情況)
圖片來源于CSDN<<區(qū)塊鏈架構(gòu)圖>>博文
但事情不會(huì)一帆風(fēng)順,其實(shí)在每一個(gè)層面上都有可能出現(xiàn)異常,比如說:在物理層面和網(wǎng)絡(luò)層面上出現(xiàn)網(wǎng)絡(luò)出錯(cuò)、物理機(jī)突然斷電的情況;再比如說:如果出現(xiàn)作惡節(jié)點(diǎn)惡意修改數(shù)據(jù),試圖引導(dǎo)全網(wǎng)節(jié)點(diǎn)對(duì)非法數(shù)據(jù)達(dá)成共識(shí)等等。異常情況種類很多,對(duì)于異常情況的處理也很復(fù)雜。
異常情況大致可以分為:客觀錯(cuò)誤和惡意攻擊兩大類。
- 客觀錯(cuò)誤指的是:在斷電、網(wǎng)絡(luò)延遲等非人為引起的異常情況,如全網(wǎng)的不同節(jié)點(diǎn)因網(wǎng)絡(luò)延遲而導(dǎo)致的數(shù)據(jù)暫時(shí)不一致。
- 惡意攻擊指的是:人為發(fā)動(dòng),意在破壞區(qū)塊鏈正常的交易流程,而從中獲利的情況,如重復(fù)消費(fèi)(雙花)、篡改數(shù)據(jù)等。
四、區(qū)塊鏈技術(shù)的發(fā)展歷史和發(fā)展趨勢(shì)?
往者不可諫,來者猶可追。
——《論語·微子》
4.1 區(qū)塊鏈1.0
在第一節(jié)中,詳述了區(qū)塊鏈概念和比特幣的起源。區(qū)塊鏈依靠其強(qiáng)大的原生思想,迅速在科研圈、技術(shù)圈、商業(yè)圈蔓延開來。有的人開始改進(jìn)礦機(jī)、創(chuàng)辦礦場(chǎng)、組成礦池來獲取比特幣,有的人在嘗試用區(qū)塊鏈的技術(shù)解決當(dāng)前的商業(yè)或治理問題。
還有一批技術(shù)極客、密碼學(xué)家,認(rèn)識(shí)到區(qū)塊鏈的價(jià)值,試圖去優(yōu)化區(qū)塊鏈的技術(shù),解決當(dāng)前存在的技術(shù)難題,使之更好的進(jìn)入落地實(shí)用階段。
這些技術(shù)問題中,有一個(gè)問題最迫切!那就是解決分布式賬本記賬效率的問題。
倫敦大學(xué)學(xué)院(UCL)區(qū)塊鏈技術(shù)中心的一篇研究報(bào)告表明:
“43%的交易,在發(fā)送之后需要耗費(fèi)1小時(shí)以上的時(shí)間,才能寫入?yún)^(qū)塊鏈,而20%的交易甚至在30天之后都無法得到確認(rèn),這也證明了比特幣系統(tǒng)效率低下?!?/p>
比特幣一個(gè)區(qū)塊的容量是1M,一秒鐘大概只能處理7比交易,這遠(yuǎn)遠(yuǎn)滿足不了商業(yè)化的需求。在區(qū)塊鏈發(fā)展的前幾年,科學(xué)家和工程師們對(duì)它的改進(jìn)主要集中在效率方面。
主要方向有:
- 多中心化替代去中心化;
- 發(fā)展側(cè)鏈,只有在結(jié)算時(shí)才與主鏈交互;
- 提出更高效的共識(shí)機(jī)制。
以比特幣為代表的區(qū)塊鏈1.0的主要應(yīng)用是用于發(fā)行數(shù)據(jù)貨幣,并試圖解決記賬效率問題。
4.2 區(qū)塊鏈2.0
區(qū)塊鏈發(fā)展歷程中,有一個(gè)人物繞不過去,他就是出生于俄國(guó)的加拿大天才少年Vitalik Buterin,他于2013年在19歲的年紀(jì)發(fā)布了以太坊,以太坊是區(qū)塊鏈技術(shù)2.0的代表??梢哉f以太坊真正釋放了區(qū)塊鏈的潛能,使之不局限于數(shù)字貨幣的范疇。
它曾經(jīng)與比特幣開發(fā)團(tuán)隊(duì)取得聯(lián)系,講述自己對(duì)區(qū)塊鏈的理解,指出了當(dāng)前比特幣存在的問題和解決方案,但是比特團(tuán)隊(duì)沒有接納。于是他決定另起爐灶,按自己的思路重新設(shè)計(jì)一版能力更強(qiáng)的區(qū)塊鏈底層架構(gòu)。
以太坊除了修改共識(shí)機(jī)制(POW和POS共存)之外,最大的創(chuàng)新是以太坊可以允許在區(qū)塊鏈上運(yùn)行智能程序,理論上這個(gè)智能程序可以運(yùn)行一切應(yīng)用。
這個(gè)偉大創(chuàng)新激活了區(qū)塊鏈應(yīng)用的想像空間,不再局限于數(shù)字貨幣的范疇,也激發(fā)起人們對(duì)于區(qū)塊鏈的想象力。
1)智能合約是什么?
企業(yè)區(qū)塊鏈創(chuàng)業(yè)公司Bloq聯(lián)合創(chuàng)始人和CEO Jeff Garzik對(duì)智能合約解釋說:
一套由一種自動(dòng)系統(tǒng)評(píng)估的并且獲得所有參與者共識(shí)的規(guī)則。
“智能合約驗(yàn)證了與整個(gè)區(qū)塊鏈共有的規(guī)則,因此給予這個(gè)網(wǎng)絡(luò)的所有連接者一種中立的公正的競(jìng)爭(zhēng)環(huán)境。區(qū)塊鏈帶來一種驗(yàn)證步驟,參與者按照智能合約規(guī)則來執(zhí)行,智能合約的這種判決是一個(gè)超實(shí)時(shí)版本的法院系統(tǒng)。
參與者是否執(zhí)行了?區(qū)塊鏈驗(yàn)證相關(guān)合約法律的執(zhí)行效果,然后將執(zhí)行過程自動(dòng)化。
2)智能合約是怎么運(yùn)行起來的?
而以太坊虛擬機(jī)(Ethereum Virtual Machine,EVM)則是建立在以太坊區(qū)塊鏈上的代碼運(yùn)行環(huán)境,其主要作用是處理以太坊系統(tǒng)內(nèi)的智能合約。簡(jiǎn)單來說,以太坊虛擬機(jī)是一個(gè)完全獨(dú)立的沙盒,合約代碼可對(duì)外完全隔離并在 EVM 內(nèi)部運(yùn)行。
由于 EVM 分散儲(chǔ)存在每個(gè)節(jié)點(diǎn)的計(jì)算機(jī)上,所以希望創(chuàng)建智能合約的公司可使用類似 JavaScript 和 Python 等編程語言創(chuàng)建運(yùn)行于 EVM 的應(yīng)用程序。同時(shí)以太坊虛擬機(jī)又能與主網(wǎng)的其余部分隔離,運(yùn)行時(shí)不影響主區(qū)塊鏈的操作。出于這個(gè)原因,以太坊有時(shí)被形容為“世界電腦”。
在虛擬機(jī)上運(yùn)行的應(yīng)用程序,是要消耗一定的GAS(一種運(yùn)行權(quán)力的憑證,可以由以太幣交易得到),而網(wǎng)絡(luò)維護(hù)者可以得到一定量的GAS,這個(gè)機(jī)制保護(hù)和以太坊網(wǎng)絡(luò)不受惡意攻擊,以及可以避免程序們寫出的“死循環(huán)”一類的錯(cuò)誤。
同時(shí)它也回答了“網(wǎng)絡(luò)維護(hù)者為什么要花資源為你保存并運(yùn)行合約”的問題,逐利性是這個(gè)合約得以運(yùn)行的本質(zhì)動(dòng)力!
這期間,大批的區(qū)塊鏈應(yīng)用涌現(xiàn)出來,各類虛擬幣名稱炫酷、理念“深刻”、白皮書高大上、運(yùn)營(yíng)團(tuán)隊(duì)忽悠起來更是不遺余力。已經(jīng)發(fā)幣的區(qū)塊鏈項(xiàng)目有幾千種,已在交易所上市的也有數(shù)百種之多。
4.3 區(qū)塊鏈3.0
區(qū)塊的技術(shù)快速發(fā)展,眾多的參與者不斷的尋求變革。所以各類效率更高的共識(shí)機(jī)制被發(fā)明出來。私有鏈和聯(lián)盟鏈的概念、技術(shù)、方案也相繼被提來,成為區(qū)塊鏈發(fā)展的最新方向。
如果你是一個(gè)開發(fā)人員,或者是對(duì)IT技術(shù)有一定敏感度的從業(yè)者,你可能會(huì)敏銳的產(chǎn)生這樣的疑問:
- 大家各自開發(fā),將來這些區(qū)塊鏈協(xié)議不一,接口多樣,互操作將是個(gè)大問題!
- 這架構(gòu)也太亂了,無論是開發(fā),還是技術(shù)的創(chuàng)新應(yīng)用,都產(chǎn)生了巨大的浪費(fèi)!
是的,這也正是有前瞻眼光的工程師們所認(rèn)識(shí)到的問題,為解決這些問題不斷提出解決方案。于是區(qū)塊鏈3.0的概念出現(xiàn)了。
區(qū)塊鏈3.0主要出三個(gè)解決方案組成:
(1)更靈活,更模塊化的架構(gòu)。
以IBM主導(dǎo)的Hyperledger(超級(jí)賬本)為代表,它希望建造一個(gè)可插拔的靈活架構(gòu),以滿足各模塊的創(chuàng)新不會(huì)影響到整體。
如下是超級(jí)賬本1.0的架構(gòu)圖:
這個(gè)地方我要發(fā)一個(gè)感慨,就是關(guān)于生態(tài)的掌握力,以及到新技術(shù)的敏感度,很讓人佩服。如:Intell是超級(jí)賬本的重要參與者之一,它的愿景是未來要從芯片和指令集的層面來支持區(qū)塊鏈計(jì)算,聯(lián)想到我國(guó)要發(fā)展自己的芯片產(chǎn)業(yè),談何容易!
(2)互聯(lián)鏈的解決方案
互聯(lián)鏈就是各種不同的區(qū)塊鏈之間的互聯(lián)互通所形成的一個(gè)更大的生態(tài)區(qū)塊鏈,比如:電商平臺(tái)公有鏈+物流公有鏈+物流聯(lián)盟鏈+銀行聯(lián)盟鏈。
互聯(lián)鏈試圖解決各個(gè)區(qū)塊鏈之間的相互協(xié)作、通訊和共識(shí)問題。瑞波團(tuán)隊(duì)、InterValue團(tuán)隊(duì)對(duì)外宣傳的都是互聯(lián)鏈的概念。
(3)對(duì)于物聯(lián)網(wǎng)、量子計(jì)算、人工智能等新技術(shù)的擁抱
例如:為了應(yīng)對(duì)“未來量子計(jì)算機(jī)對(duì)PoW機(jī)制的潛在挑戰(zhàn)”,超級(jí)現(xiàn)金Hcash(HSR)在重點(diǎn)研究怎么對(duì)抗量子計(jì)算,以何種方式使得區(qū)塊鏈技術(shù)和量子計(jì)算技術(shù)的結(jié)合。
五、實(shí)踐出真知
一步實(shí)際行動(dòng)比一打綱領(lǐng)更重要。
——馬克思
先講一個(gè)我的教訓(xùn)。
我從15年第一次聽到比特比這個(gè)概念,16年年中因?yàn)榕笥训慕榻B開始逐漸了解比特幣、共識(shí)機(jī)制等概念,那時(shí)候我尚以清高自詡,說自己作為有“技術(shù)可以改變世界”信條的工程師,要做鏈圈的人,是絕不會(huì)去買什么虛無縹緲的虛擬幣的。
實(shí)際上,是從心底里對(duì)這樣沒有任何價(jià)值依托的虛擬幣(以及區(qū)塊鏈技術(shù))不認(rèn)同,錯(cuò)過了一些機(jī)會(huì)(對(duì)這些高賠率的機(jī)會(huì),保持冷靜,但也不要矯情)。
同時(shí)這也反映了我對(duì)新事物的接納能力弱,對(duì)于快速變化的技術(shù)世界的理解力也存在問題。黃有璨大神在《運(yùn)營(yíng)之光》中提到:
如果一個(gè)新事物被超過三個(gè)朋友討論,他就要花一些時(shí)間去徹底弄懂它,以保持對(duì)新事物新概念的敏感性。
這一點(diǎn)很值得學(xué)習(xí)。從那16年下半年,我斷斷續(xù)續(xù)的研究了區(qū)塊鏈的技術(shù),研究了區(qū)塊鏈的思想理念和發(fā)展方向。同時(shí)也是從那個(gè)時(shí)候開始,國(guó)內(nèi)區(qū)塊鏈的資本市場(chǎng)和人才市場(chǎng)也開始火爆起來。
我想無論你對(duì)區(qū)塊鏈的理念認(rèn)不認(rèn)同,對(duì)它的未來看不看好。作為一名互聯(lián)網(wǎng)從業(yè)者,多關(guān)注和嘗試一下新鮮事物總是好的,有能力和精力去閱讀一下各個(gè)區(qū)塊鏈的白皮書和源代碼,了解一下ICO流程,公鏈發(fā)布條件等等也是好的。
對(duì)于新技術(shù)和新事物的好奇心和敏感度,是一個(gè)互聯(lián)網(wǎng)從業(yè)者的基礎(chǔ)素質(zhì)之一。同時(shí)不得不說,如果世界能有一款自己創(chuàng)造的、獨(dú)一無二的虛擬幣,也是件挺酷的事情。
發(fā)幣參考:《基于以太坊發(fā)布屬于自己的數(shù)字貨幣(代幣)完整版》
基于其它的區(qū)塊鏈發(fā)token,與基于以太坊來開發(fā),并沒有本質(zhì)的不同。至少對(duì)應(yīng)用開發(fā)者來說,沒有區(qū)別。要根據(jù)業(yè)務(wù)需求、性能需求、成本約束等各方面因素,來選擇合適的區(qū)塊鏈來開發(fā)自己的應(yīng)用,還要考慮人才市場(chǎng)中相關(guān)的人才質(zhì)量和數(shù)量等等因素。
最后,我想講一不是笑話的笑話。我有一個(gè)朋友去參加區(qū)塊鏈工程師的面試,是一家原來做互聯(lián)網(wǎng)金融的小公司,因?yàn)楸O(jiān)管原因,公司正在另謀出路。
朋友問:你們想用區(qū)塊鏈做什么?
答:還沒想好。
問:你想讓我來做什么工作?
答:來了再說。
很明顯,有個(gè)公司是為了追求新技術(shù)而追求新技術(shù),試圖去成為風(fēng)口上的一只風(fēng)豬。一般來說,這樣的公司會(huì)死的比較慘。
這個(gè)故事可能會(huì)引發(fā)我們對(duì)于技術(shù)管理、人才儲(chǔ)備、產(chǎn)品規(guī)劃的諸多思考,且不說談。也反應(yīng)出區(qū)塊鏈資本市場(chǎng)、人才市場(chǎng)和公司產(chǎn)品所處的火熱但又不實(shí)在的狀況。
六、結(jié)語
水平有限,內(nèi)容的全面性和準(zhǔn)確性都有很多的不足,望讀者見涼。若對(duì)讀者有些許幫助,我將深感欣慰。
至此,你應(yīng)該對(duì)區(qū)塊鏈的技術(shù)基礎(chǔ)有一個(gè)籠統(tǒng)的認(rèn)識(shí),了解了區(qū)塊鏈?zhǔn)鞘裁吹膯栴}。
區(qū)塊鏈得以展示其強(qiáng)大威力,核心在于商業(yè)模式的變革,重塑各行各業(yè)的價(jià)值存儲(chǔ)和傳輸相關(guān)的治理體系,為企業(yè)組織管理、產(chǎn)業(yè)調(diào)整、社會(huì)治理等社會(huì)經(jīng)濟(jì)活動(dòng)和各個(gè)方面帶來全新的、革命式的解決方案。
這是在試圖回答區(qū)塊鏈怎么用的問題,這也是一個(gè)更困難、更迫切也更有價(jià)值的話題。這也是所有公司不得不關(guān)注的方面。
參考資料:
- 《區(qū)塊鏈:新經(jīng)濟(jì)藍(lán)圖及導(dǎo)讀》
- 《Bitcoin: A Peer-to-Peer Electronic Cash System》
- 《Tencent_TrustSQL_WhitePaper》
- 《高盛:從理論到實(shí)踐》
- 《區(qū)塊鏈開發(fā)-技術(shù)指南》
- 《Guesschain_Whitepaper》
- 《白話區(qū)塊鏈》
- 《區(qū)塊鏈與大數(shù)據(jù)》
注:其它文章在文中有注明或給出鏈接。
本文由 @附庸風(fēng)雅的俗物 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載
題圖來自 Pixabay,基于 CC0 協(xié)議
很全面了,期待之后更新
日光之下,并無鮮事。
寫的挺全面,分析的也很有想法。
感謝鼓勵(lì) ??
其實(shí)為什么沒有人評(píng)論.?從系統(tǒng)上來看還是挺完整的,感謝分享
多交流 ??