區塊鏈應用開發指南 : 業務場景剖析與實戰
熊麗兵、董一凡、周小雪
- 出版商: 清華大學
- 出版日期: 2021-06-01
- 定價: $594
- 售價: 7.9 折 $469
- 語言: 簡體中文
- 頁數: 358
- 裝訂: 平裝
- ISBN: 7302577463
- ISBN-13: 9787302577461
-
相關分類:
區塊鏈 Blockchain
-
相關翻譯:
不當礦工當老闆:自己動手開發區塊鏈應用業務 (繁中版)
立即出貨 (庫存 < 4)
買這商品的人也買了...
-
區塊鏈|未來經濟的藍圖 (Blockchain: Blueprint for a New Economy)$380$300 -
$678以太坊智能合約開發實戰 -
$454區塊鏈開發實戰:基於 JavaScript 的公鏈與 DApp 開發 -
全球第一個成熟商用區塊鏈框架:HyperLedgerFabric 實戰 (熱銷版)$580$493 -
$378區塊鏈開發從入門到精通:以太坊 + 超級賬本 -
2030 世界未來報告書:區塊鏈、AI、生技與新能源革命、產業重新洗牌,接下來10年的工作與商機在哪裡?$420$357 -
$301乙太坊 Solidity 智慧合約開發 -
$709區塊鏈原理、設計與應用, 2/e -
區塊鏈技術與應用$420$378 -
$505區塊鏈應用開發實戰 -
區塊鏈生存指南:帶你用 Python 寫出區塊鏈!(iT邦幫忙鐵人賽系列書)$520$406 -
$370區塊鏈精要 : 全球數字化時代的區塊鏈多重博弈 -
$296區塊鏈+:落地場景與應用實戰 -
$454區塊鏈架構之美 : 從比特幣、以太坊、超級賬本看區塊鏈架構設計 -
$710解構領域驅動設計 -
$403區塊鏈超入門, 2/e -
不當礦工當老闆:自己動手開發區塊鏈應用業務$780$616 -
秒懂設計模式$480$379 -
$407區塊鏈原理、技術及應用 -
$417PLC 編程與伺服控制從入門到工程實戰 -
$356區塊鏈技術開發與實現 -
$469從零學習PLC編程與接線 -
PLC 通信協議及編程$594$564 -
CCNP and CCIE Security Core Scor 350-701 Official Cert Guide, 2/e (Paperback)$2,680$2,546 -
$564電磁頻譜監測
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$576 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
區塊鏈現在仍然是一個新生事物,就像其他所有新生事物一樣,充滿了爭議。但不可否認,它也給逐漸變得穩定的因特網帶來一股新的活力。《區塊鏈應用開發指南》力圖為區塊鏈從業人員提供一份完整的開發指南。 《區塊鏈應用開發指南》首先從區塊鏈的起源出發,簡單介紹區塊鏈的基本概念、歷史以及區塊鏈底層所使用的技術,如密碼學、零知識證明等。將比特幣作為樣板,簡單介紹了它的歷史和各種設計取捨。 接下來是這本書的重點——區塊鏈應用開發,主要內容包括以太坊工作原理、以太坊智能合約的開發與實踐,等等。 這是一本非常全面的智能合約開發指導書,包含大量的實例代碼以及實戰講解,讓讀者能夠跟隨書本開發出各種基於智能合約的可交互應用。書的最後,還講解瞭如何開發一個簡單的錢包,來完成以太坊賬號的生成、以太坊轉賬、調用合約等功能。
作者簡介
熊麗兵(網絡ID:Tiny熊),北京航空航天大學碩士,登鏈科技創始人、登鏈社區發起人,圖書《精通以太坊智能合約開發》作者。
董一凡,河海大學學士,上海笛藝符科技聯合創始人、首席技術官,無退社區特邀專欄作者。
周小雪,中國科學技術大學信息安全專業學士,復旦大學碩士。
無退社區聯合創始人,在金融領域有十多年的量化經驗。
目錄大綱
第1章區塊鏈概要 1
1.1 區塊鏈誕生之前1
1.2 區塊鏈的誕生標誌—比特幣 1
1.3 比特幣之後的區塊鏈2
1.3.1 比特幣與區塊鏈的分離 2
1.3.2 智能合約 2
1.4 分佈式系統3
1.5 什麼是區塊鏈 5
1.6 代幣是什麼6
1.7 什麼是區塊6
1.7.1 區塊是怎麼產生的 6
1.7.2 區塊生成時間 7
1.8 區塊鏈的硬分叉8
1.9 區塊鏈的去中心化 8
1.10 區塊鏈的主要種類9
1.10.1 公鏈(public blockchain) 9
1.10.2 私鏈(private blockchain) 10
1.10.3 聯盟鏈(consortium blockchain) 10
1.11 加密貨幣11
1.12 智能合約(smart contract) 12
1.12.1 什麼是智能合約12
1.12.2 智能合約的實現方式12
1.13 區塊鏈應用13
1.13.1 金融服務13
1.13.2 遊戲14
1.13.3 數字資產15
1.13.4 供應鏈管理15
1.13.5 其他15
1.14 比特幣的歷史16
1.14.1 比特幣前傳16
1.14.2 比特幣面世16
1.14.3 比特幣發展中的主要事件18
1.15 比特幣的設計取捨19
1.15.1 區塊鏈19
1.15.2 共識算法19
1.15.3 比特幣中的交易20
1.15.4 比特幣的供應模式21
1.15.5 去中心化與中心化22
1.15.6 可替換性22
第2章密碼學基礎24
2.1 密碼學發展歷史24
2.1.1 密碼學發展的三個階段24
2.1.2 近代密碼學的開端26
2.1.3 區塊鏈去中心化密鑰共享28
2.2 密碼系統31
2.2.1 定義31
2.2.2 對稱加密32
2.2.3 非對稱加密32
2.3 區塊鏈常用密碼學知識33
2.3.1 Hash(哈希)算法33
2.3.2 RSA算法36
2.3.3 默克爾樹36
2.3.4 數字簽名39
2.3.5 零知識證明和Zcash 40
2.4 加密貨幣41
2.4.1 什麼是加密貨幣41
2.4.2 熱門加密貨幣42
2.4.3 運作方式43
2.4.4 加密貨幣的安全性44
2.5 加密經濟學45
2.5.1 貨幣的功能45
2.5.2 貨幣的屬性46
2.5.3 貨幣的種類47
2.5.4 Fiat貨幣47
2.5.5 比特幣有貨幣屬性嗎48
2.5.6 加密貨幣經濟的未來49
2.6 比特幣中的密碼學49
2.6.1 比特幣中的哈希處理50
2.6.2 比特幣中的公鑰加密50
2.6.3 比特幣中的錢包和數字簽名52
第3章零知識證明54
3.1 拋磚引玉:初識零知識證明56
3.1.1 為什麼會有零知識證明?56
3.1.2 簡述零知識證明在區塊鏈中的應用57
3.2 零知識證明使用場景案例59
3.2.1 場景一:萬聖節糖果59
3.2.2 場景二:洞穴60
3.2.3 場景三:數獨挑戰61
3.2.4 場景四:一個“真實世界中”的案例67
3.3 零知識證明的應用發展74
3.3.1 區塊鏈擴容的挑戰75
3.3.2 ZK Sync的承諾:免信任、保密、快速77
3.3.3 RedShift:透明的通用SNARK 81
3.4 libsnark開源實踐簡介81
3.5 術語介紹88
第4章進入以太坊世界90
4.1 以太坊概述90
4.2 智能合約91
4.3 賬戶93
4.4 以太幣的單位95
4.5 以太坊虛擬機(EVM) 95
4.6 以太坊客戶端97
4.6.1 geth安裝97
4.6.2 geth使用97
4.7 以太坊錢包98
4.8 以太坊交易100
4.8.1 價值傳遞100
4.8.2 創建智能合約101
4.8.3 調用合約方法101
4.9 以太坊網絡102
4.9.1 主網網絡(Mainnet)102
4.9.2 測試網絡(Testnet)102
4.9.3 私有網絡、開發者模式103
4.9.4 模擬區塊鍊網絡103
4.10 以太坊歷史回顧104
4.10.1 奧林匹克(Olympic)104
4.10.2 邊疆(Frontier) 104
4.10.3 家園(Homestead)104
4.10.4 DAO分叉105
4.10.5 拜占庭(Byzantium) 106
4.10.6 君士坦丁堡(Constantinople) 106
4.10.7 伊斯坦布爾(Istanbul) 107
4.10.8 以太坊2.0 107
第5章探索智能合約109
5.1 Remix IDE109
5.2 MetaMask110
5.2.1 安裝MetaMask 110
5.2.2 配置MetaMask賬號110
5.2.3 為賬號充值以太幣111
5.3 合約編寫113
5.4 合約編譯114
5.5 合約部署及運行115
5.5.1 部署JavaScript VM 115
5.5.2 部署到以太坊網絡117
5.6 合約內容119
5.6.1 編譯器版本聲明119
5.6.2 定義合約119
5.6.3 狀態變量120
5.6.4 合約函數120
第6章Solidity語言基礎21
6.1 Solidity數據類型121
6.1.1 值類型122
6.1.2 整型122
6.1.3 地址類型125
6.1.4 合約類型128
6.1.5 函數類型130
6.1.6 引用類型132
6.1.7 數組134
6.1.8 映射139
6.1.9 結構體140
6.2 合約141
6.2.1 可見性142
6.2.2 構造函數143
6.2.3 使用new創建合約143
6.2.4 constant狀態常量144
6.2.5 immutable不可變量145
6.2.6 視圖函數146
6.2.7 純函數146
6.2.8 訪問器函數(getter) 147
6.2.9 receive函數(接收函數) 149
6.2.10 fallback函數(回退函數) 150
6.2.11 函數修改器151
6.2.12 函數重載(Function Overloading) 155
6.2.13 函數返回多個值156
6.2.14 事件157
6.3 錯誤處理及異常159
6.3.1 錯誤處理函數159
6.3.2 require還是assert? 161
6.3.3 try/catch 162
第7章Solidity進階16
7.1 合約繼承167
7.1.1 多重繼承168
7.1.2 基類構造函數169
7.1.3 抽象合約170
7.1.4 函數重寫(overriding)171
7.2 接口172
7.3 庫174
7.3.1 內嵌庫175
7.3.2 鏈接庫175
7.3.3 Using for 176
7.4 應用程序二進制接口(ABI)178
7.4.1 ABI編碼178
7.4.2 函數選擇器179
7.4.3 參數編碼180
7.4.4 ABI接口描述181
7.5 Solidity全局API 183
7.5.1 區塊和交易屬性API 184
7.5.2 ABI編碼及解碼函數API184
7.6 使用內聯彙編186
7.6.1 彙編基礎概念186
7.6.2 Solidity中引入彙編188
7.6.3 彙編變量定義與賦值189
7.6.4 彙編中的塊和作用域190
7.6.5 彙編中訪問變量190
7.6.6 for循環191
7.6.7 if判斷語句191
7.6.8 彙編Switch語句192
7.6.9 彙編函數192
7.6.10 元組193
7.6.11 彙編缺點193
第8章智能合約實戰194
8.1 OpenZeppelin 194
8.2 SafeMath安全算數運算196
8.3 地址工具197
8.4 ERC165接口發現198
8.5 ERC20代幣200
8.6 ERC777功能型代幣205
8.6.1 ERC1820接口註冊表206
8.6.2 ERC777標準211
8.6.3 ERC777實現217
8.6.4 實現鉤子函數227
8.7 ERC721231
8.7.1 ERC721代幣規範232
8.7.2 ERC721實現235
8.8 簡單的支付通道247
8.8.1 創建支付通道智能合約247
8.8.2 支付簽名250
第9章去中心化DAPP實戰252
9.1 什麼是DAPP 252
9.2 Web3.js 254
9.2.1 Web3.js簡介254
9.2.2 引入Web3.js 255
9.2.3 用web3.js跟合約交互256
9.3 DAPP開發工具257
9.3.1 Truffle 258
9.3.2 Ganache 258
9.4 DAPP投票應用259
9.4.1 投票應用需求260
9.4.2 創建項目260
9.4.3 編寫智能合約261
9.4.4 合約編譯及部署263
9.4.5 合約部署264
9.4.6 執行部署267
9.4.7 合約測試270
9.4.8 編寫應用前端272
9.4.9 前端與合約交互273
9.4.10 運行DAPP276
9.4.11 部署到公網服務器278
9.5 使用Vue.js開發眾籌DAPP 279
9.5.1 Vue.js簡介279
9.5.2 眾籌需求分析281
9.5.3 實現眾籌合約281
9.5.4 合約部署283
9.5.5 眾籌Web界面實現284
9.5.6 與眾籌合約交互286
9.5.7 DAPP運行291
9.5.8 DAPP發布292
9.6 後臺監聽合約事件293
9.6.1 Node.js及Express簡介293
9.6.2 常駐服務監聽合約事件296
9.6.3 MySQL數據庫環境準備298
9.6.4 創建數據庫及表300
9.6.5 監聽數據入庫301
9.6.6 為前端提供眾籌記錄303
9.7 DAPP去中心化存儲306
9.7.1 IPFS協議307
9.7.2 IPFS安裝308
9.7.3 IPFS初始化308
9.7.4 上傳文件到IPFS309
9.7.5 上傳目錄到IPFS312
9.8 Embark框架312
9.8.1 Embark概述312
9.8.2 Embark安裝313
9.9 Embark重寫投票DAPP 313
9.9.1 創建Embark項目313
9.9.2 Embark項目結構314
9.9.3 編寫合約及部署315
9.9.4 Embark DashBoard 316
9.9.5 Embark Cockpit 317
9.9.6 Embark Artifacts 318
9.9.7 前端index.html 319
9.9.8 使用Artifacts與合約交互321
9.9.9 Embark部署324
第10章以太坊錢包開發327
10.1 數字錢包基礎327
10.2 錢包相關提案328
10.2.1 BIP32分層推導329
10.2.2 密鑰路徑及BIP44 331
10.2.3 BIP39 331
10.2.4 生成助記詞332
10.2.5 用助記詞推導出種子333
10.3 錢包功能334
10.4 創建錢包賬號335
10.4.1 隨機數為私鑰創建賬號335
10.4.2 助記詞創建賬號337
10.5 導入賬號339
10.5.2 導出和導入keystore 344
10.6 獲取錢包餘額347
10.6.1 連接以太坊網絡347
10.6.2 查詢餘額348
10.7 發送交易350
10.7.1 構造交易350
10.7.2 交易簽名352
10.7.3 發送交易352
10.7.4 Ethers.js發送交易352
10.8 交易ERC20代幣354
10.8.1 構造合約對象355
10.8.2 獲取代幣餘額355
10.8.2 轉移代幣356



