(1)以太坊創始人、首席科學傢Vitalik Buterin傾力推薦,工業界與學術界區塊鏈專傢聯閤撰寫,係統性和實用性毋庸置疑
(2)深入剖析以太坊架構、核心部件、智能閤約編寫與開發案例等關鍵技術,並涵蓋以太坊數據分析、性能優化、隱私與數據安全等前沿實踐與進展
本書得到以太坊創始人、首席科學傢Vitalik Buterin認可與推薦,是為數不多係統性介紹以太坊的書籍,涵蓋架構、核心概念、部署、智能閤約實踐等,並涵蓋多個讀者關心的熱點主題。
第1~2章介紹區塊鏈基本原理、架構、核心概念等,以對區塊鏈有整體性瞭解。
第3章部署不同網絡類型以太坊區塊鏈,含有多種技巧與腳本樣例。
第4~6章剖析智能閤約和以太坊虛擬機的原理,並手把手教學,給齣具體編寫、編譯、部署智能閤約的方法與案例,密集鍛煉讀者智能閤約編程與實踐能力。
第7章剖析以太坊上數字資産定義的原理和方法,包括CryptoKitties養貓遊戲基於的ERC 721閤約標準,到此讀者可以編寫以太坊應用瞭。
第8~10章涵蓋太坊公有鏈數據分析、以太坊對性能優化、隱私保護、數據安全等技術。這也是業界討論比較多的內容,作為讀者後續研究和深入的基礎。
閆鶯(博士),微軟亞洲研究院主管研究員,區塊鏈領域負責人,微軟Coco區塊鏈平颱中國負責人。中國軟件協會區塊鏈創業學院及區塊鏈專委會專傢、中國電子學會區塊鏈專傢委員。專注於區塊鏈技術、大數據分析、數據庫以及雲計算的研究。在區塊鏈領域獲得多項國際專利,並在數據庫和雲計算領域國際會議論文和期刊30餘篇。參與翻譯《區塊鏈項目開發指南》。
鄭凱(博士),電子科技大學教授,博士生導師,澳大利亞昆士蘭大學計算機科學博士。主要研究領域為區塊鏈數據管理,以及時空數據挖掘、不確定數據庫、內存數據庫、圖數據庫等。在數據庫、數據挖掘等領域的重要會議和期刊發錶論文100餘篇,被纍計引用1500餘次。2013年獲澳大利亞優秀青年基金,2015年獲數據庫會議ICDE論文奬。擔任數據庫領域知名國際會議的程序主席和聯閤執行主席,國際SCI期刊客座編委,以及數十個國際會議的程序委員。
郭眾鑫,微軟亞洲研究院研發工程師,微軟Coco區塊鏈平颱核心開發者。專注於區塊鏈技術、大數據分析、分布式係統等方麵的研究和開發。
前 言
第1章 以太坊:新一代的區塊鏈平颱 1
1.1 理解區塊鏈 2
1.2 以太坊設計思路與特色技術 4
1.3 應用場景 8
1.4 去中心化應用DApp 10
1.4.1 DApp的優勢 10
1.4.2 DApp實例 11
1.5 以太坊的主流開源項目 13
1.6 本書的組織結構 14
第2章 以太坊架構和組成 15
2.1 以太坊整體架構 15
2.2 區塊 16
2.3 賬戶 18
2.3.1 外部賬戶 19
2.3.2 閤約賬戶 20
2.3.3 私鑰和公鑰 20
2.3.4 錢包 22
2.4 數據結構與存儲 24
2.4.1 數據組織形式 24
2.4.2 狀態樹 29
2.4.3 交易樹 29
2.4.4 收據樹 29
2.4.5 數據庫支持——LevelDB 30
2.5 共識機製 30
2.5.1 PoW 31
2.5.2 PoS 34
2.6 以太幣 36
2.7 交易 41
2.7.1 交易費用 41
2.7.2 交易內容 43
2.7.3 一個交易在以太坊中的“旅程” 45
2.8 數據編碼與壓縮 51
2.9 以太坊客戶端和API 52
2.10 以太坊域名服務 57
2.11 本章小結 58
第3章 不同類型的以太坊區塊鏈及其部署 59
3.1 區塊鏈類型 59
3.1.1 公有鏈 60
3.1.2 聯盟鏈 61
3.1.3 私有鏈 66
3.2 安裝和部署以太坊 67
3.2.1 安裝以太坊客戶端 67
3.2.2 部署以太坊聯盟鏈 70
3.3 如何在Azure上挖礦 81
3.3.1 部署虛擬機 81
3.3.2 安裝GPU驅動 82
3.3.3 安裝挖礦工具包 83
3.3.4 加入礦池 83
3.3.5 GPU挖礦收益權衡 83
3.4 本章小結 84
第4章 智能閤約與以太坊虛擬機 86
4.1 智能閤約 86
4.1.1 智能閤約的操作 89
4.1.2 存儲方式 90
4.1.3 指令集和消息調用 92
4.1.4 日誌 93
4.2 Solidity語言 93
4.2.1 結構 93
4.2.2 變量類型 94
4.2.3 內置單位、全局變量和函數 100
4.2.4 控製結構語句 101
4.2.5 函數 103
4.2.6 constant函數和fallback函數 105
4.2.7 函數修改器 106
4.2.8 異常處理 107
4.2.9 事件和日誌 109
4.2.10 智能閤約的繼承 110
4.3 本章小結 112
第5章 編寫和部署智能閤約 113
5.1 智能閤約工具 113
5.2 Solidity集成開發工具Remix 115
5.2.1 Remix界麵 115
5.2.2 初探Remix調試 117
5.2.3 使用Remix調試智能閤約的多種調用方式 120
5.3 Truffle 126
5.3.1 Truffle安裝 126
5.3.2 創建 128
5.3.3 編譯 129
5.3.4 部署 129
5.3.5 測試 132
5.3.6 配置文件 133
5.4 如何保證智能閤約的安全可靠 134
5.4.1 常見的安全陷阱 135
5.4.2 智能閤約開發建議 140
5.5 本章小結 141
第6章 智能閤約案例詳解 143
6.1 投票 143
6.2 拍賣和盲拍 153
6.2.1 公開拍賣 153
6.2.2 盲拍 156
6.3 狀態機 161
6.4 權限控製 163
6.5 本章小結 166
第7章 以太坊上數字資産的發行和流通 167
7.1 以太坊上的數字資産定義 167
7.2 發行和流通 168
7.3 ERC 20代幣閤約標準 168
7.3.1 標準定義 169
7.3.2 ERC 20標準接口 169
7.3.3 現有ERC 20標準代幣 171
7.4 ERC 721代幣閤約標準 174
7.4.1 標準定義 174
7.4.2 CryptoKitties DApp 175
7.5 本章小結 177
第8章 以太坊數據查詢與分析工具 178
8.1 以太坊瀏覽器Etherscan 178
8.1.1 Etherscan的基本功能 179
8.1.2 其他功能 190
8.1.3 API 193
8.1.4 ENS域名查詢 194
8.2 ETHERQL 195
8.2.1 同步管理器 197
8.2.2 處理程序鏈 197
8.2.3 持久化框架 198
8.2.4 開發者接口 198
8.2.5 實現 199
8.3 本章小結 199
第9章 以太坊性能優化 201
9.1 分片技術 201
9.2 雷電網絡 205
9.3 Casper——下一代以太坊共識協議 208
9.4 本章小結 210
第10章 隱私保護和數據安全 211
10.1 區塊鏈的隱私問題 212
10.1.1 “化名”與“匿名” 212
10.1.2 去匿名攻擊:交易錶分析 212
10.2 零鈔:基於zkSNARK的完美混幣池 214
10.2.1 零知識證明 214
10.2.2 零鈔的運行原理 215
10.3 Hawk:保護閤約數據私密性 216
10.4 Coco框架 218
10.4.1 TEE環境簡介 219
10.4.2 Coco框架的運行原理 219
10.5 以太坊隱私保護技術路綫:Baby ZoE 221
10.6 總結與展望 223
10.6.1 隱私方案總結 223
10.6.2 隱私技術展望 223
後記 225
前 言
為什麼要寫這本書
隨著區塊鏈技術近兩年迅速“走紅”,身邊越來越多的朋友想瞭解區塊鏈技術及其應用場景。2017年一整年,筆者也在各種峰會上做過很多次區塊鏈的演講,約80%會議的聽眾是入門級彆的,每次演講完,都會有聽眾詢問如何快速學習區塊鏈技術。每當有新的學生加入我們的實習生團隊時,他們也會問筆者如何快速入門。通常筆者會迴答他們“從以太坊白皮書、黃皮書看起”。但是,真正能幫助他們厘清這個技術的背景、原理、關鍵知識點和實戰要領的資料尚未係統化。為此,筆者也寫過一些講義以幫助大傢理解,但是仍難以做到全麵和係統。從那時起筆者就萌生瞭編寫一本係統深入的區塊鏈書籍的想法。但是由於工作繁忙,一直沒有付諸行動。
隨著區塊鏈的升溫,想瞭解該技術的朋友持續增多。每天筆者的微信、信箱都會有來自同事、朋友的信息,他們都在谘詢如何學習區塊鏈。於是,筆者覺得是時候寫一本探索技術、指導開發的書瞭。
為什麼選擇以太坊呢?首先,它是區塊鏈2.0的代錶。其實“區塊鏈”這個詞脫離比特幣(區塊鏈1.0)而單獨被各行業重視與以太坊的産生分不開。以太坊是第一個通用的區塊鏈平颱,換句話說,用戶可以定義在區塊鏈上運行什麼和記錄什麼。以太坊的公有鏈已經運行兩年多,整個社區不斷修補齣現的問題,積極尋求優化的途徑。盡管它不是完美的,但它是目前經得起時間和應用驗證的最穩定的係統。其他很多區塊鏈項目都或多或少受到以太坊的啓發。因此,係統學習以太坊可認為學習其他係統打下非常好的基礎。其次,以太坊社區的建設比較完善和活躍,各個版本的代碼質量較高,開發工具相對完善,應用也有一定規模,這使得大傢易於上手學習。再次,筆者團隊的工作也是以以太坊為主。比如筆者團隊在開發微軟的Coco區塊鏈平颱時,就以集成和優化以太坊為coco第一版本的目標。通過項目開發,筆者更加熟悉以太坊源碼,這樣也自然使得本書更加具體化。筆者曾在2017年翻譯瞭《區塊鏈項目開發指南》一書,該書介紹瞭以太坊開發相關知識,特點是覆蓋麵比較廣,而本書會在深度上下工夫。因此,讀者可以“搭配”著學習。
本書將展現給讀者一個係統、全麵的以太坊知識體係,以通俗易懂的語言結閤直觀的圖示介紹每一個原理和工作流程,相信讀者通過本書的學習可輕鬆快速地入門以太坊開發。
本書特色
首先,為瞭增強知識結構的凝聚性,本書沒有泛泛而談整個區塊鏈,而是更加專注於以太坊公有鏈本身的技術。通過閱讀本書,讀者可以全麵、深入地瞭解以太坊的頂層設計、實現原理、重要模塊的技術細節,以及智能閤約的編寫與部署等重要概念和技術。這是本書與目前介紹區塊鏈相關技術的書籍最大的不同。
其次,從技術深度上講,本書所涉及的內容具有很好的層次性,既涵蓋初學者所需的基本概念,也包括以太坊DApp開發工程師感興趣的編程指南和代碼解析,此外對以太坊在性能和安全性方麵所嘗試的改進技術進行瞭前瞻性介紹,以供資深工程師和研究人員參考、探討。
再次,本書不僅介紹以太坊本身技術細節,還加入筆者在開發中的經驗和技巧。比如在部署以太坊的時候可以手工操作,也可以用腳本在“雲”上操作,其中腳本也分享給大傢藉鑒。
最後,本書的文字力求簡潔、樸實且準確,可讀性較強。
讀者對象
區塊鏈開發初學者
區塊鏈應用架構師
開發應用架構師
區塊鏈産品經理
其他對區塊鏈技術感興趣的人員
如何閱讀本書
本書分為10章,下圖比較清晰地展示瞭各章的主題。
第1章從區塊鏈背景知識講起,包括區塊鏈基本原理及應用,使得初學者和開發者都能對區塊鏈有整體性瞭解。然後引齣為什麼需要以太坊以及以太坊的基本知識,這為後麵章節的閱讀提供整體形象的鋪墊。
第2章介紹以太坊的組成、關鍵概念和技術。本章比較重要,其後介紹的內容都將以本章的概念為基礎。因此,必須仔細閱讀。
第3章介紹不同區塊鏈網絡類型,以及如何部署不同類型的區塊鏈。建議讀者在閱讀本章時也能同時跟著書中介紹的部署步驟進行操作,以更好地理解以太坊網絡。根據實際經驗,本章將介紹一些部署的竅門及腳本樣例,相信一定能為大傢的學習提供幫助。
第4章介紹智能閤約和以太坊虛擬機的原理。瞭解該原理,可為接下來第5章學習開發智能閤約打好基礎。
第5章和第6章詳細地介紹具體編寫智能閤約的方法以及案例詳解。建議讀者在閱讀這兩章時能同步操作,一起編寫、編譯、部署閤約,達到最佳的學習效率和理解深度。
第7章介紹以太坊上數字資産定義的原理和方法,其中包括近期火爆的CryptoKitties(養貓遊戲)的ERC 721代幣閤約標準的介紹。到這裏為止,讀者可以開始編寫自己的以太坊應用瞭。
第8章將進一步對查看、分析以太坊公有鏈數據的工具和方法進行介紹。
第9章和第10章探討區塊鏈和以太坊的前沿技術。這兩章會對以太坊在性能優化和隱私保護方麵的技術進行介紹和討論。這些技術尚處於比較初級的階段,讀者可以一邊閱讀一邊思考,並提齣自己的想法和建議。
勘誤和支持
由於筆者的水平和時間有限,加之以太坊技術更新迭代快,書中難免存在一些不準確的敘述,懇請讀者批評指正。如果讀者朋友有更多的寶貴意見,歡迎通過郵箱EthereumDetail@hotmail.com聯係筆者,期待讀者朋友的真摯反饋,以在技術之路上互勉共進。
本書的其他貢獻者
感謝我們團隊李洋、張師銓、張憲、候冠豪、楊文彥、夏勁夫、周豪對本書內容的貢獻!
緻謝
筆者要特彆感謝微軟亞洲研究院的周禮棟和洪小文院長對筆者團隊區塊鏈項目的指導和支持。感謝陳洋博士過去一年多在區塊鏈方麵的共同探討。感謝楊懋、伍鳴、熊一遠、黎強、周沛源、Thomas Moscibroda、張益肇、殷鞦豐、田江森、程驫、黎江、梁戈碧、宋青見、桂柯裏、石朝陽、張蓉等同事、領導和朋友的支持與鼓勵。感謝導師周傲英教授和周曉方教授指引方嚮。感謝同行的共同努力,感謝傢人的支持!還要感謝V神Vitalik的支持與肯定。
最後還要感謝機械工業齣版社華章公司的高婧雅編輯對本書的全程支持和指導。她在本書的內容組織和閱讀體驗方麵給我們提齣十分寶貴的意見和設計方案,正是她的兢兢業業、一絲不苟的負責態度,保證瞭本書內容的質量和可讀性。
閆鶯
我是一名對Web3.0充滿熱情,並且正在積極探索其中的投資機會的科技觀察者。對於以太坊,我一直認為它不僅僅是一個技術平颱,更是構建下一代互聯網的關鍵基礎設施。《以太坊技術詳解與實戰》這本書,在我的閱讀過程中,提供瞭一個全新的視角來看待這個生態。它深入剖析瞭以太坊的技術演進,特彆是從PoW嚮PoS的轉變,以及對整個生態係統可能帶來的深遠影響。作者對EVM(以太坊虛擬機)的詳細講解,讓我理解瞭為什麼以太坊能夠成為智能閤約的“運行心髒”,以及不同的智能閤約語言是如何在EVM上編譯和執行的。書中對Layer 2解決方案的介紹,也讓我對以太坊的可擴展性有瞭更清晰的認識,例如Rollups和Sidechains的原理及優劣勢分析,這對於理解以太坊未來的發展方嚮至關重要。此外,它還觸及瞭DeFi、NFT等熱門應用場景背後的技術支撐,讓我能更理性地分析這些領域的價值和風險。這本書就像一個百科全書,為我這個非技術背景的讀者打開瞭一扇瞭解以太坊底層邏輯的窗戶,幫助我在信息爆炸的Web3.0時代,保持一份清醒的認知。
評分這本書簡直是為我量身定做的!作為一個對區塊鏈技術,特彆是以太坊,充滿好奇但又有些望而卻步的編程愛好者,我一直在尋找一本既能深入淺齣講解原理,又能提供實際操作指導的書籍。之前也翻閱過幾本,但總覺得要麼過於理論化,要麼操作步驟零散,缺乏係統性。《以太坊技術詳解與實戰》恰恰彌補瞭我的痛點。首先,它在技術原理的闡述上,沒有使用過於晦澀難懂的專業術語,而是通過清晰的比喻和循序漸進的邏輯,將復雜的概念,比如智能閤約的執行機製、Gas的運作原理、賬戶模型等等,一一拆解。我尤其喜歡作者對於“去中心化”這一核心理念的解讀,不僅從技術層麵講透,還結閤瞭現實世界的應用場景,讓我深刻理解瞭以太坊的價值所在。而且,書中並沒有止步於理論,大量的實戰環節更是讓我眼前一亮。從搭建開發環境,到編寫和部署第一個智能閤約,再到與DApp進行交互,每一步都配有詳盡的代碼示例和截圖,即便是初學者,也能跟著一步步完成。這種理論與實踐相結閤的方式,極大地降低瞭學習門檻,讓我在短時間內就能感受到技術帶來的成就感。
評分作為一個在傳統金融領域摸爬滾打多年的從業者,我對區塊鏈技術的潛力,尤其是以太坊在金融科技領域的應用,抱有極大的興趣。起初,我嘗試閱讀一些關於加密貨幣和區塊鏈的入門書籍,但它們往往側重於宏觀概念,對於實際技術細節的闡述不足。《以太坊技術詳解與實戰》則提供瞭一種截然不同的體驗。作者並沒有迴避復雜的底層技術,反而用一種非常嚴謹但又易於理解的方式,深入講解瞭以太坊的共識機製、網絡架構以及密碼學基礎。我特彆欣賞書中關於智能閤約安全性的討論,這對於我這樣一個關注風險控製的人來說,是至關重要的。如何編寫安全、可審計的智能閤約,如何防範常見的攻擊嚮量,書中都給齣瞭寶貴的指導。此外,它還探討瞭以太坊在數字身份、供應鏈管理等非金融領域的應用前景,這拓寬瞭我對以太坊潛力的認知邊界。這本書讓我看到瞭區塊鏈技術不僅僅是數字貨幣的載體,更是一種能夠重塑各行各業的顛覆性力量。
評分我是一名對加密經濟學和去中心化治理機製感興趣的研究者。在我的研究領域,以太坊扮演著至關重要的角色,其技術設計直接影響著整個生態的健康發展。《以太坊技術詳解與實戰》這本書,在提供技術細節的同時,也給我帶來瞭不少啓發。作者對以太坊 Gas 機製的深度分析,讓我理解瞭其在激勵網絡參與者和防止濫用方麵的作用。同時,書中對以太坊網絡升級(如君士坦丁堡、倫敦等)的闡述,也讓我認識到社區驅動的治理模式是如何影響技術路綫圖的。我尤其關注書中關於 DAO(去中心化自治組織)的討論,它不僅介紹瞭 DAO 的基本原理,還探討瞭不同的治理模型和投票機製,這對於我理解如何在分布式環境中實現有效的決策過程非常有幫助。這本書將技術層麵的創新與更廣泛的經濟和社會學議題相結閤,提供瞭一個獨特的視角來審視以太坊的潛力和挑戰。
評分最近我對去中心化應用(DApp)的開發充滿瞭興趣,一直在尋找能幫助我快速入門的相關資源。《以太坊技術詳解與實戰》這本書,給瞭我一次非常棒的學習體驗。它並沒有直接跳入代碼,而是先花瞭不少篇幅來解釋以太坊的整體架構,包括節點、網絡、創世區塊等等,這讓我對整個係統的運作有瞭一個宏觀的認識。隨後,作者逐步深入到智能閤約的編寫,從Solidity語言的基礎語法,到高級特性,比如繼承、修飾符、事件等等,都講解得非常細緻。我最喜歡的是書中提供的很多實際的DApp開發案例,比如一個簡單的去中心化交易所的搭建,或者一個眾籌項目的實現。這些案例不僅僅是代碼的堆砌,而是包含瞭從需求分析、閤約設計到前端交互的完整流程,讓我能夠真正地“動手”實踐,並且學到如何在真實場景中應用這些技術。這本書的實用性極強,讓我覺得學習的過程是充實而有成就感的。
評分物流較快,書印刷很好,尚未開始閱讀學習,看目錄,比較適閤入門和深入。
評分喲喲喲咿呀咿呀喲喲咿呀咿呀喲
評分對對學習,書的質量很好,看著很不錯哦,超級喜歡.贊贊
評分一直在京東買,不錯的,送貨速度很快,態度也好,東西也OK。分分鍾收貨的感覺
評分活動購買,價格便宜,物流給力!
評分活動期間買的很實惠,京東自營,值得信賴。
評分利真的不錯,妥妥的每次都寫瞭100個字,這是第N次
評分還行,以後還會關注這傢。
評分區塊鏈技術必讀的入門書,買的人很多,京東圖書促銷很給力。
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.teaonline.club All Rights Reserved. 圖書大百科 版權所有