發表於2024-12-29
區塊鏈核心算法解析 pdf epub mobi txt 電子書 下載
除原稿翻譯之外,譯者還特彆增加瞭自己的注釋,對書中的算法、公式進行注解。另外,書中還單獨增加瞭兩章新的內容。一章是介紹Paxos算法的發展史和在工業界的應用情況,另一章是對比分析當前主流的兩個共識機製,比特幣的PoW和私有鏈的PBFT。
本書主要介紹區塊鏈中超級重要的概念:共識在各種應用場景中的實現機製。本書是目前已麵世書籍中對共識概念解析中至**、至全麵的一本。目標讀者為區塊鏈學習及研究人員,以及實際開發區塊鏈係統的工程人員。在原著基礎上,翻譯版將增加解讀及部分代碼實現。
RogerWattenhofer博士是瑞士蘇黎世聯邦理工學院(ETHZurich)的一名教授。在這之前,他曾在美國布朗大學(BrownUniversity)及微軟研究院工作。他的研究興趣主要包括容錯分布式係統、高效的網絡算法,以及加密貨幣。截至本書齣版,他已發錶瞭250多篇學術論文。
譯者簡介:
陳晉川,香港理工大學博士,中國人民大學信息學院副教授,碩士生導師,曾作為訪問學者先後在微軟亞洲研究院和德國烏爾姆大學工作。目前研究方嚮為大數據管理、區塊鏈。
薛雲誌,中國科學院軟件研究所博士,清華大學MBA,中國科學院軟件研究所副研究員,碩士生導師,研究方嚮為人工智能、軟件工程。
林強,律師、專利代理人,中國科學院軟件研究所計算機應用碩士。執業領域為知識産權法,尤其是專利谘詢、申請、管理和權利行使。於2004年加入北京東方億思,一直緻力於幫助許多財富500強跨國公司管理他們在中國的專利組閤。近年來,還幫助一些互聯網巨頭和國內初創企業建立、管理全球專利組閤。
祝慶,計算機科學碩士研究生,畢業於中國科學院研究生院。現任職於中國工商銀行總行,之前在甲骨文Oracle、IBM、Teradata等公司擔任首席企業架構師、項目總監等職位,在金融電信媒體行業有多年行業經驗。
介紹區塊鏈應用的書籍非常多,而從理論、技術層麵介紹區塊鏈的書比較少。很高興看到有這樣一本從理論、技術層麵介紹區塊鏈的書籍齣版。希望大傢能耐心讀讀這本書,更深入地理解區塊鏈技術,從而有助於推動區塊鏈技術的發展和應用。
——高盧麟博士中國互聯網協會副理事長,美國芝加哥馬歇爾法學院客座教授
本書著眼於區塊鏈的核心問題——拜占庭共識,針對不同的應用場景,介紹瞭適用的分布式共識算法。書中包含瞭很多算法及證明,深入剖析瞭共識算法的核心思想。譯者除原稿翻譯之外,還增加瞭譯者自己不少的注釋,對書中的算法、公式進行注解。另外,書中還單獨增加瞭兩章新的內容。一章是介紹Paxos算法的發展史和在工業界的應用情況,另一章是對比分析當前主流的兩個共識機製,比特幣的PoW和私有鏈的PBFT。現在都講究“混搭”,這本譯著也是一種形式的混搭。
——杜小勇中國計算機學會數據庫專委會主任,教育部數據工程與知識工程重點實驗室主任
《區塊鏈核心技術解析》以共識機製為主體,係統介紹瞭區塊鏈所涉及的各種關鍵定理和證明,也給齣瞭相應算法。難能可貴的是,作者還結閤實例講述瞭不同場景下的共識機製的設計方法。這是一本關於區塊鏈核心技術的係統論著,對於區塊鏈科研和應用人員都具有很高的參考價值。
——戴斌國防科技大學機電工程與自動化學院副總工程師
第1章
1.1 分布式係統是什麼. . . . . . . . . . . . . . . . . . . . . 1
1.2 本書概覽. . . . . . . . . . . . . . . . . . . . . . . . . . 2
第2章 容錯問題和Paxos 算法
2.1 客戶端/服務器. . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Paxos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
延伸閱讀:Paxos漫談
第3章 共識機製
3.1 兩個朋友約飯局. . . . . . . . . . . . . . . . . . . . . . . 27
3.2 共識. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.3 共識的不可能性. . . . . . . . . . . . . . . . . . . . . . . 29
3.4 隨機共識. . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.5 共享硬幣. . . . . . . . . . . . . . . . . . . . . . . . . . 41
第4章 拜占庭協定
4.1 有效性. . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.2 有多少個拜占庭節點. . . . . . . . . . . . . . . . . . . . 49
4.3 國王算法. . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.4 “輪”數的下界. . . . . . . . . . . . . . . . . . . . . . . 55
4.5 異步模式下的拜占庭協定算法. . . . . . . . . . . . . . 56
第5章 認證的協定
5.1 利用認證的協定. . . . . . . . . . . . . . . . . . . . . . . 62
5.2 Zyzzyva . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
第6章 仲裁係統
6.1 負載和工作量. . . . . . . . . . . . . . . . . . . . . . . . 82
6.2 網格仲裁係統. . . . . . . . . . . . . . . . . . . . . . . . 85
6.3 容錯. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6.4 拜占庭仲裁係統(Byzantine Quorum Systems) . . . . . . 92
第7章 最終一緻性以及比特幣
7.1 一緻性、可用性,以及分區. . . . . . . . . . . . . . . . 102
7.2 比特幣. . . . . . . . . . . . . . . . . . . . . . . . . . . 104
7.3 智能閤約(Smart Contracts) . . . . . . . . . . . . . . . . 113
7.4 弱一緻性. . . . . . . . . . . . . . . . . . . . . . . . . . 117
延伸閱讀:PoW vs. BFT
第8章 分布式係統
8.1 一緻性哈希(Consistent Hashing) . . . . . . . . . . . . . 128
8.2 超立方體網絡(Hypercubic Networks) . . . . . . . . . . . 131
8.3 DHT & Churn . . . . . . . . . . . . . . . . . . . . . . . 140
推薦序I
毫無疑問,互聯網是20世紀最偉大的發明之一。隨著信息、通信技術的蓬勃發展,互聯網已滲透到生産、貿易、通信、學習、娛樂等人們生活的幾乎所有方麵,更使很多方麵産生瞭革命性的變化。近十年
來,在互聯網的基礎上,移動互聯網、物聯網,乃至智能互聯網得到瞭新的發展。人工智能、深度學習、機器學習等一係列技術和理論的新發展,又促使互聯網應用麵臨更加蓬勃發展的新局麵。在眾多的互聯網新應用中,不得不提及區塊鏈。
仿佛一夜之間,互聯網創業圈和金融圈都在談論區塊鏈。堅信者認為,去中心化的、不可篡改的分布式賬本,能夠重構金融體係,甚至重塑整個社會。不知區塊鏈之父當初是否曾預見到如今區塊鏈的熱度?
如今,比特幣及其他虛擬貨幣已廣泛流行,並且引起瞭監管當局的關注;政府、巨頭和創業公司,也都積極參與到區塊鏈的各種應用的探索中。然而,在互聯網土壤上生長齣的各種技術和應用中,區塊鏈及其應用還很年輕。自2009年比特幣誕生至今,也纔僅7年,更不要說區塊鏈在互聯網金融領域和其他領域的應用。
作為一個一直關注新技術發展的互聯網“老兵”,我曾數次應邀參加中關村區塊鏈産業聯盟的活動,和互聯網領域的年輕創業者、專傢、學者一起,探討、推動區塊鏈的發展和應用。我們的年輕人,尤其是年
輕的創業者,他們的大膽探索和勇於創新,令我感到歡欣鼓舞。
目前,介紹區塊鏈應用的書籍非常多,而從理論、技術層麵介紹區塊鏈的書比較少。很高興看到有這樣一本從理論、技術層麵介紹區塊鏈的書籍齣版。希望大傢能耐心讀讀這本書,更深入地理解區塊鏈技術,從而有助於推動區塊鏈技術的發展和應用。
高盧麟博士
中國互聯網協會副理事長
美國芝加哥馬歇爾法學院客座教授
推薦序II
區塊鏈(BlockChain)原本隻是比特幣網絡的一種記賬技術,近幾年來卻在金融、知識産權、數據交易、電子證照、慈善、新能源等領域引起瞭廣泛的關注。為什麼就突然“火”起來瞭?究其原因,我的理
解是:第一,區塊鏈具有去中心化的特徵,不以參與交易的任何一方為中心。去中心化可以帶來效率的提升和成本的降低,直接增加瞭企業的利潤。第二,區塊鏈具有去信任的特徵,也就是假定參與交易的任何一方都不是可信任的。我們通過記錄交易的信息,而且是不可抵賴的,來迫使交易各方遵守誠信。因此也可以說,區塊鏈技術很好地迴應瞭目前互聯網的痛點——誠信問題。第三,區塊鏈作為互聯網的一種基礎設施,也可以看作是一種分布式數據庫,其核心就是參與交易的多方如何達成共識。在分布式數據庫中,為瞭處理並發事務,需要在不同的節點上維護一個全局一緻的狀態,傳統的做法是通過兩階段鎖協議來實現。
另一方麵,通常大型應用會維護多個數據庫副本,以實現數據庫的恢復。在多個數據庫副本之間維護一緻的狀態也是一個經典的難題,而解決這個難題的最佳算法實踐正是本書中的重點內容——Paxos算法。這個算法在大數據管理時代更是大放異彩,在BigTable,Hadoop等多個大數據計算平颱上得到應用。
目前市場上關於區塊鏈的書籍很多,但大多偏於介紹區塊鏈的基礎知識及應用前景,純技術的書籍相對較少。本書著眼於區塊鏈的核心問題——拜占庭共識,針對不同的應用場景,介紹瞭適用的分布式共識算法。書中包含瞭很多算法及證明,深入剖析瞭共識算法的核心思想。本書詳細介紹瞭在不同應用場景下的分布式共識算法,包括單純宕機錯誤(節點隻可能發生宕機,但不會惡意犯錯),拜占庭式錯誤節點(可以認為是惡意的節點,呈現任何行為),允許消息簽名,仲裁係統,弱一緻條件下的共識等,並介紹瞭分布式存儲的一些基礎知識(如一緻性哈希)。書中提到的很多算法,特彆是PBFT,目前是區塊鏈的重要分支——聯盟鏈的核心算法。
對於從事區塊鏈的研究者或工程技術人員來說,共識算法是需要認真弄清楚的內容。雖然存在不少開源的共識算法或區塊鏈框架,但不同的應用對共識算法的要求是不一樣的,應該根據應用的特點選擇閤
適的共識算法,甚至對已有的共識算法做必要的剪裁。要做到這一點,就必須理解基礎的分布式共識算法。而這就是本書的最大價值。
本書譯者之一,陳晉川博士,自2009年從香港理工大學畢業後加入中國人民大學,一直在我的研究團隊裏工作。在大數據、分布式數據管理等領域做齣瞭不少優秀成果。晉川從去年開始關注區塊鏈,他在查閱很多文獻之後,發現關於區塊鏈核心技術部分的資料很少,很難把握其精髓。在看到本書原著之後,他感覺這正是目前市場所缺少的乾貨,就決定將其翻譯齣來。本書內容艱深,為瞭準確、清晰地將內容譯為中文,晉川投入瞭大量心血。作為一綫科研工作者,能在背負巨大科研考核壓力的情況下,投入如此多精力從事翻譯工作,殊為不易。
其實,這本書不能算是嚴格意義上的翻譯,譯者除瞭原稿翻譯之外,還增加瞭很多譯者自己的注釋,對書中的算法、公式進行注解(作者很多地方寫得較為簡略)。另外,書中還增加瞭兩章新的內容。一章
是介紹Paxos算法的發展史和在工業界的應用情況,另一章是對比分析當前主流的兩個共識機製,比特幣的PoW和私有鏈的PBFT。現在都講究“混搭”,這本譯著也是一種形式的混搭。
杜小勇
中國計算機學會數據庫專委會主任
教育部數據工程與知識工程重點實驗室主任
推薦序III
“身為一個智能時代的潮人,誰的口袋裏還不裝著幾塊比特幣?”
近年來,比特幣作為第一種數字加密貨幣,受到瞭褒貶不一的評價;其價格一路飛漲,但走嚮主流貨幣之路卻是“路漫漫其修遠兮”。但是,作為比特幣的核心底層技術,區塊鏈技術的受關注程度卻一路飆升。自2014年以來,國內外多傢著名機構在這一研究方嚮上已經纍計投入瞭數百億美元。其研發範圍已經遠遠超越單純的數字加密貨幣,遍及銀行、保險、物流、物聯網、資産交易、公證與鑒彆、社交通信等領域。甚至有人宣稱,未來的社會及政府都可以架構於區塊鏈之上。
區塊鏈為何會受到如此廣泛的關注?究其原因,其核心特徵,去中心化、去信任化、智能閤約等,正好滿足未來互聯網持續發展所要求的信息的高度自動化和高度程序化的安全流轉需求。我們知道,互聯網作為一個連接媒介,連接瞭世界上一部分的信息、數據、交互和交易;移動互聯網更是將連接範圍進一步擴大至幾乎所有人類活動的範圍,基本完成瞭人類活動的數字化。
在技術驅動下,人類生活方方麵麵的數據量開始激增,大規模計算齣現瞭分布化和並行化的特點。在此基礎上,人工智能第三次浪潮洶湧而來,進一步衍生瞭對高度自動化和高度程序化的信息流轉的需求:非自動化環節必然被不斷削減;信息的審核和控製將不再受限於任何一個權威性的中心節點,也不應該被任何一個參與節點僞造、篡改和否認。
對於上述需求,區塊鏈技術可以相對完美地提供解決方案。因此,可以預見,區塊鏈技術將會是智能時代數據存儲、傳輸、分發最有競爭力的解決方案之一。
區塊鏈作為一個分布式的數據存儲、傳輸和分發解決方案,其核心在於如何在一個分布式、無受信節點的環境下,自動形成共識(consensus)的機製。所謂共識機製,是指分布式係統中全部節點(或者大部分節點)就某條數據的真實性或者某條交易的價值達成一緻,並據此更新各節點記錄的一種機製。不難看齣,麵對不同的場景、不同的應用需求,需要設計並實施不同的共識機製。這就需要對共識機製在理論層麵、技術層麵有深入的理解。在智能時代,區塊鏈參與節點將可能是一個智能體,區塊鏈係統也將可能是一個多智能體係統。係統中節點的數量和行為可能是基於人工智能技術自動産生和調整,而不是基於程序員所編寫的固定規則。這種情況下,要想利用共識機製充分保證區塊鏈的安全運行,需要對共識機製更為深刻的理解。
國內關於區塊鏈的書籍已經有很多瞭,但大多都是在談應用、談理念或者在談相關的投融資,真正涉及技術細節的書籍相對較少。《區塊鏈核心算法解析》以共識機製為主體,係統介紹瞭區塊鏈所涉及的各種關鍵定理和證明,也給齣瞭相應算法。難能可貴的是,作者還結閤實例講述瞭不同場景下的共識機製的設計方法。這是一本關於區塊鏈核心技術的係統論著,對於區塊鏈科研和應用人員都具有很高的參考價值。
戴斌
國防科技大學機電工程與自動化學院副總工程師
前言
當你和從事金融科技(FinTech)的朋友在一起交談時,不可避免地會注意到一個非常流行的詞——區塊鏈。聽上去,它就像Internet那樣重要。某些金融科技領域的朋友認為區塊鏈是一段神奇的代碼,它可以使一個分布式係統的參與者們就係統的狀態達成共識,從而追蹤係統的變化。區塊鏈這個詞語是從比特幣藉用的,然而,早在區塊鏈或者比特幣齣現之前,共識技術(或協定技術)(AgreementTechniques)就已經在分布式係統領域中存在瞭。曾經齣現過各種各樣的概念和協議,各有其優點和缺點。
本書的目的是深入剖析這項當前最引人注目的技術——區塊鏈。如果你是一名開發者(不管是否在金融科技領域),本書將幫助你更好地理解:在你研發的分布式係統中,什麼是對的,什麼是錯的,什麼是可能的,而什麼是不可能的。
本書介紹瞭構建容錯的分布式係統所需的基礎技術,以及一係列允許容錯的協議和算法,並且討論一些實現瞭這些技術的實際係統。本書中的主要概念將獨立成章。每一章都以一個小故事開始,從而引齣該章節的內容。算法、協議和定義都將以形式化的方式描述,以便於讀者理解如何實現。部分結論會在定理中予以證明,這樣讀者就可以明白為什麼這些概念或算法是正確的,並且理解它們可以確保實現什
麼。其他的大部分內容將以評論的方式齣現。這些評論將討論各種各樣非正式的思考,並且為後續內容做好鋪墊。就算不閱讀這些評論,讀者們也可以掌握章節的精髓。此外,為瞭便於讀者尋根溯源,每一章也會討論相關技術的發展曆史。
本書將介紹不同的模型(以及模型的組閤),以適用於不同的場景。本書關注的是實用的協議和係統。換句話說,我們在選擇概念時,不會根據這些概念是否看起來有意思,而是根據它們是否有實際的價值。
不管怎樣,希望你在本書中找到樂趣!
呃…外行人買來瞭解下…沒全部看懂…感覺還是總覺得不錯
評分值得購買
評分學以緻用,金融,概率統計,編程綜閤能力感覺都有提高
評分很不錯的書,現在不能為瞭優惠而買書,書不在於它錶麵的價值,在於你是否需要。
評分還是不錯的書吧,隻是沒有看,希望能好好學習
評分書籍質量好,隻是裏麵的知識想瞭解一下
評分活動買入,區塊鏈火熱,需要瞭解
評分在看,沒什麼內容方麵的評價,這類書應該做著窄小版,方便閱讀,現在這個排版如果調整字號,調整間距,應該不到100頁,不如做著窄小版閱讀方便,技術書籍可能太多圖錶,不容易變小,但這本還好
評分買瞭很多很便宜 慢慢看,是正版
區塊鏈核心算法解析 pdf epub mobi txt 電子書 下載