Home
|
簡體中文
|
繁體中文
|
雜文
|
知乎專欄
|
Github
|
OSChina 博客
|
雲社區
|
雲棲社區
|
Facebook
|
Linkedin
|
視頻教程
|
打賞(Donations)
|
About
部分 II. Ethereum 以太坊
上一頁
下一頁
知乎專欄
|
多維度架構
|
微信號 netkiller-ebook
|
QQ群:128659835 請註明“讀者”
部分 II. Ethereum 以太坊
目錄
9. 以太坊
9.1. 名詞解釋
9.2. IBAN (International Bank Account Number)
9.2.1. iban:國際銀行賬號
9.2.2. 以太坊iban:新的國別碼和BBAN編碼方案
9.2.3. iban賬號與以太坊地址的轉換
9.2.4. 檢查iban賬號的有效性
9.3. 如何計算Gas手續費
9.4. 轉出賬號中所有 ETH,Ethereum Wallet 中的 Send everything 實現方法
9.5. (0/12 block confirmations)
9.6. 太坊賬戶管理 keystore 檔案
9.6.1. 什麼是 keystore 檔案
9.6.2. keystore 檔案的內容
9.6.3. keystore檔案如何工作的?
9.6.3.1. 加密你的私鑰
9.6.3.2. 用你的密碼來保護它
9.6.3.3. 確認輸入的密碼是正確的
9.6.3.4. 將這三步結合起來
9.7. 批量轉賬遇到的問題與解決方案
9.8. 代幣兌換
10. 以太坊私鏈入門
10.1. 軟件安裝與配置
10.1.1. Ubuntu
10.1.1.1. 安裝 geth
10.1.1.2. 安裝 solc
10.1.1.3. Node.js
10.1.2. CentOS 7
10.1.3. Windows
10.1.4. Mac OS
10.1.4.1. 安裝 Node
10.1.4.2. Ethereum Wallet
10.1.5. 編譯安裝
10.1.6. Netkiller OSCM 一鍵安裝
10.1.6.1. 1.8.10
10.1.6.2. 1.8.1
10.1.6.3. 1.8.10
10.1.7. 防止 geth 異常退出
10.2. 創世區塊
10.2.1. 初始化創世區塊
10.2.2. 創建主賬號
10.2.3. 啟動節點
10.2.4. 使用節點進行挖礦
10.2.4.1. 啟動礦工開始挖礦
10.2.4.2. 停止挖礦
10.2.4.3. 查看所挖金額
10.2.5. 在創世鏈中制定礦工賬號併為它充值
10.3. Blockchain explorer (區塊鏈瀏覽器)
10.4. 單機多實例演示
10.4.1. 實例一
10.4.2. 實例二
10.4.3. 添加節點
10.4.4. 節點測試
10.5. 使用 pm2 啟動以太坊
11. geth v1.8.16 命令詳解
11.1. api 相關參數
11.1.1. rpcapi
11.1.2. rpcaddr
11.2. 啟動 Websocket 連接埠
11.3. 日誌
11.4. 控制台
11.5. 連接控制台
11.5.1. 指定 geth.ipc 檔案位置
11.5.2. IPC 方式連接
11.5.3. TCP 連接控制台
11.5.4. WebSocket 方式
11.6. 賬號管理
11.6.1. 新建賬號
11.6.2. 查看賬號
11.6.3. 從私鑰導入以太坊地址
11.7. 配置自動解鎖賬號
11.8. 運行JS
11.9. 節點管理
11.10. 啟動挖礦
11.10.1. 挖礦綫程數
11.10.2. 指定曠工賬號
11.11. 運行智能合約
11.12. Ropsten測試網絡
11.13. 靜態節點
11.14. JavaScript Console
11.14.1. personal 管理
11.14.1.1. 創建賬號
11.14.1.2. 列出賬號
11.14.1.3. 解鎖賬號
11.14.2. eth 管理
11.14.2.1. 礦工賬號
11.14.2.2. 餘額
11.14.2.2.1. 單位轉換
11.14.2.2.2. 一次檢查所有賬號餘額
11.14.2.3. 解鎖賬號
11.14.2.4. 轉賬
11.14.2.5. 查看掛起的交易
11.14.2.6. 查看當前區塊總數
11.14.2.7. 查看當前Gas價格
11.14.2.8. 評估執行花費的GAS
11.14.2.9. 查看區塊信息
11.14.2.10. 返回交易信息
11.14.2.11. 返回交易收據
11.14.2.12. eth.syncing 同步狀態
11.14.2.13. 查看智能合約編譯器
11.14.3. web3
11.14.3.1. Ether幣的基本單位
11.14.3.2. web3.toWei
11.14.3.3. web3.fromWei
11.14.4. admin 管理
11.14.4.1. 看看 networkid
11.14.4.2. 節點管理
11.14.4.2.1. 顯示節點
11.14.4.2.2. 添加節點
11.14.4.2.3. 查看節點
11.14.4.2.4. networkid
11.14.5. miner 挖礦管理
11.14.5.1. 開始挖礦
11.14.5.2. 停止挖礦
11.14.5.3. 設置預設礦工賬號
11.14.6. txpool 管理
11.14.6.1. txpool.status
11.14.7. net
11.14.7.1. 監聽狀態
12. Wallet
12.1. Ethereum Wallet(Mist)
12.1.1. Ethereum Wallet 工作原理
12.1.1.1. geth 啟動 ropsten 測試網
12.1.1.2. 連接到本地測試網絡
12.1.1.2.1. IPC
12.1.1.2.2. TCP
12.1.1.3. 控制台
12.1.2. 主網絡
12.1.2.1. 主網啟動參數
12.1.2.2. 進入主網
12.1.2.3. 以太坊區塊瀏覽器
12.1.3. Ropsten 測試網絡
12.1.3.1. 啟動參數
12.1.3.2. 獲得測試幣
12.1.3.3. Etherscan
12.1.4. Rinkeby 測試網絡
12.1.4.1. 測試網絡
12.1.4.2. 獲取測試網絡上的以太幣
12.1.4.3. 連接節點(Light node)
12.1.4.4. 區塊鏈瀏覽器
12.1.5. Solo Network
12.1.6. 私網
12.1.7. 刪除廢棄的合約
12.1.8. 免安裝,在綫使用
12.1.9. 獲得空投幣
12.2. MetaMask
12.2.1. 測試網絡
12.2.1.1. 獲取測試網絡上的以太幣
12.2.2. mnemonic - Reveal seed words
12.2.3. 添加 Token 幣種
12.2.4. MetaMask Vault Decryptor
12.2.5. 部署合約
12.3. MyEtherWallet
12.3.1. 執行ERC20智能合約函數
12.3.1.1. 查詢餘額
12.3.1.2. 銷毀代幣
12.3.1.3. 凍結賬號
12.3.1.4. 增發代幣
12.3.1.5. 鎖倉
12.3.1.6. 批量打幣
12.3.1.7. 修改合約管理者
12.3.1.8. 設置兌換比例
12.3.1.9. 空投設置
12.4. MyCrypto
12.5. imToken
12.5.1. 添加 Token
13. Token
13.1. Ethereum Wallet 創建ERC20代幣合約
13.1.1. 合約檔案
13.1.2. 部署合約
13.1.3. 代幣轉賬
13.1.4. Verify And Publish
13.1.5. Links 連結更新
13.2. ERC20 Token Solidity 0.4.24
13.2.1. 構造方法
13.2.2. 官方規定 Method 方法
13.2.2.1. name
13.2.2.2. symbol
13.2.2.3. decimals
13.2.2.4. totalSupply
13.2.2.5. balanceOf
13.2.2.6. transfer
13.2.2.7. approve
13.2.2.8. transferFrom
13.2.2.9. allowance
13.2.3. 事件
13.2.3.1. Transfer
13.2.3.2. Approval
13.3. Netkiller Crowdsale Contract
13.3.1. Solidity 0.4.24
13.3.2. Solidity 0.4.21
13.4. ERC721 - Non-Fungible Tokens
13.4.1.
13.4.2. ERC721Metadata (可選)
13.4.3. ERC721Enumerable (可選)
13.5. 經典參考案例
13.5.1. Enterprise Token Ecosystem (ETE)
13.5.2. 積分鏈 (PE Chain)
13.5.3. Global star league chain (GSLC)
13.5.4. Kyber Network
13.6. 代幣合約官方文檔
13.6.1. ERC20
13.6.1.1. 基本Token 官方提供的例子
13.6.1.2. 官方提供的例子 ADVANCED TOKEN
13.6.1.3. Netkiller Basic Token 的例子
13.6.1.4. Netkiller ADVANCED TOKEN
13.6.1.5. 空投代幣
13.6.1.5.1. 案例一
13.6.1.5.2. 案例二
13.6.1.5.3. 案例三
13.6.2. ERC223 token standard reference implementation.
13.6.3. ERC721 - Non-fungible Token Standard
13.6.4. ERC827 Token Standard (ERC20 Extension)
13.6.5. ERC875 for non fungible tokens and simple atomic swaps
13.6.6. ERC: Standard URI scheme with metadata, value and byte code
14. 智能合約語言 Solidity v0.5.0
14.1. Remix - browser-solidity
14.1.1. 將 Remix(browser-solidity) 安裝到本地
14.1.2. 輸入數組
14.2. solc 命令
14.2.1. 使用 solc 編譯 *.sol 代碼
14.3. 智能合約入門演示
14.4. 數據類型
14.4.1. 數值型
14.4.1.1. 加 +,減 -,乘 *,除 / 運算演示
14.4.1.2. 求余 % 運算演示
14.4.1.3. 冪運算演示
14.4.1.4. 與 &,| 或,非 ~,異或 ^ 演示
14.4.1.5. 位移演示
14.4.2. 字元串
14.4.2.1. 獲取字元串長度
14.4.3. 布爾(Booleans)
14.4.4. 位元組類型
14.4.5. 數組
14.4.5.1. length
14.4.5.2. push() 方法
14.4.6. 枚舉類型
14.4.7. 結構體
14.4.7.1. 函數返回Struct
14.4.8. address
14.4.8.1. payable
14.4.8.2. .value()
14.4.8.3. .gas()
14.4.9. mapping
14.5. 單位
14.5.1. 貨幣單位(Ether Units)
14.5.2. 時間單位(Time Units)
14.6. 變數
14.6.1. 全局變數
14.6.2. storage
14.6.3. memory
14.7. 函數
14.7.1. 構造方法
14.7.2. 定義函數
14.7.3. 函數返回值
14.7.4. 參數傳遞
14.7.5. 函數的例子
14.7.6. Fallback function
14.7.7. modifier
14.8. 事件
14.9. 面向對象編程
14.9.1. 可見性修飾符
14.9.2. 錯誤處理
14.9.3. interface 介面
14.9.4. library 庫
14.9.4.1. 使用庫來擴展數據類型
14.9.5. 繼承
14.10. 合約調用
14.11. 合約接收 ETH
14.11.1. 調用 selfdestruct(msg.sender); 取出合約中的 ETH
14.11.2. 自動退款合約
14.11.3. 收款合約自動轉賬
14.11.4. 指定賬號提取 ETH
14.12. 合約中實例化一個介面
14.13. 合約中實例化另一個合約
14.13.1. msg.sender 與 this 的區別
14.13.2. 地址格式
14.14. Solidity 安全問題
14.14.1. 整型溢出
14.15. solidity example
14.15.1. Voting
14.15.2. MetaCoin
14.15.3. Anonymous voting on Ethereum without a tally authority. Protocol from this paper
14.15.4. Ballot
14.15.5. Conference
15. Truffle v4.1.8 開發框架
15.1. 安裝 Truffle
15.2. 開發環境
15.2.1. truffle develop
15.2.2. Ganache
15.2.3. testrpc
15.3. Truffle 快速入門
15.3.1. Ubuntu 環境
15.3.1.1. 啟動開發環境
15.3.1.2. 創建項目
15.3.1.3. 創建合約
15.3.1.4. 配置 Truffle
15.3.1.5. 編譯智能合約
15.3.1.6. migrate
15.3.2. Mac 環境
15.3.3. ERC20 代幣部署
15.3.3.1. 合約檔案
15.3.3.2. 部署檔案
15.3.3.3. 編譯部署
15.3.3.4. 合約調用
15.3.4. 高級ERC20代幣合約
15.3.4.1. 部署合約
15.3.4.2. 控制台檢查合約
15.3.4.3. 測試轉賬
15.3.4.4. 鎖倉
15.3.4.5. 測試空投
15.4. Truffle 命令詳解
15.4.1. version
15.4.2. Truffle console 控制台
15.4.3. create
15.4.3.1. contract 創建合約
15.4.3.2. test 創建單元測試
15.4.4. migrate
15.4.5. compile
15.4.6. test
15.4.7. watch
15.5. 合約開發
15.5.1. 構造方法
15.6. truffle console
15.6.1. 獲取賬號列表
15.6.2. 餘額
15.6.3. 實例化合約
15.6.4. 訪問 public 變數
15.6.5. 調用 public 函數
15.7. 測試
15.7.1. balanceOf
15.7.2. transfer
15.8. TRUFFLE BOXES
15.9. Zeppelin Solidity - OpenZeppelin is a library for writing secure Smart Contracts on Ethereum.
15.9.1. ERC20
15.9.2. ERC872
16. web3.js - 1.0.0
16.1. 開發環境
16.1.1. Ropsten 測試網
16.2. truffle-contract
16.3. 連接到以太坊客戶端
16.3.1. http 方式
16.3.2. WebSocket 方式
16.3.3. IPC 方式
16.4. web3
16.4.1. version 顯示web3版本號
16.5. web3.eth
16.5.1. 查看賬號列表
16.5.2. 查詢礦工賬號
16.5.3. 獲得餘額
16.5.4. web3.eth.sendTransaction()
16.5.5. web3.eth.sendSignedTransaction() 私鑰簽名轉賬
16.5.5.1. 例子1
16.5.5.2. 例子2
16.5.6. web3.eth.getBlock() 獲取區塊
16.6. 賬號管理
16.6.1. web3.eth.personal.unlockAccount()
16.7. 智能合約
16.7.1. 部署合約
16.7.2. 使用最佳手續費創建合約
16.7.3. 調用合約
16.7.4. event
16.8.
16.8.1.
16.8.2. 訂閲 newBlockHeaders
16.8.3. 訂閲 log
16.8.4. 訂閲同步狀態
16.9. utils
16.9.1. web3.utils.toWei()
16.9.2. 將 Wei 轉換到指定單位
16.10. web3 編譯合約
16.10.1. solc.compile
16.11. web3admin
16.12. ABI-encoded
16.13. 實用例子
16.13.1. 數據寫入到區塊鏈中
16.13.2. 編譯部署智能合約
16.13.3. 部署合約
16.13.4. ERC20 Example
16.14. HD Wallet(Hierarchical Deterministic wallet)
16.14.1. 創建項目
16.14.2. 生成第二個錢包
16.14.3. Mnemonic Code Converter
16.14.4. HD Wallet 例子
16.14.5. 獲得錢包地址和私鑰
16.14.6. truffle.js 例子
16.14.7. Mnemonic To Seed 加密
16.14.8. 中文助記詞
16.14.9. 代幣轉賬
16.15. 從 .ethereum/keystore 檔案導入私鑰
16.16. Express + web3.js 實現簡單網頁錢包
16.16.1. 創建項目
16.16.2. 主程序 main.js
16.16.3. ABI 檔案 abi/NKC.abi
16.16.4. 頁面視圖
16.16.4.1. views/account.ejs
16.16.4.2. views/balance.ejs
16.16.4.3. views/done.ejs
16.16.4.4. views/header.ejs
16.16.4.5. views/index.ejs
16.16.4.6. views/showbalance.ejs
16.16.4.7. views/transfer.ejs
16.16.5. 啟動 Node 服務
17. web3j v3.4.0 - Jave Client
17.1. 安裝命令行工具
17.1.1. Mac OS
17.1.2. 二進制包安裝
17.2. 啟動以太坊
17.3. Maven pom.xml 檔案
17.4. Java 與 Solidity 數據類型映射關係
17.5. 常量
17.5.1. 預設 Gas
17.5.2. 預設 gaslimit gasprice
17.6. 連接到伺服器獲取版本號
17.7. 獲得以太坊狀態信息
17.7.1. 獲取客戶端版本
17.7.2. 協議版本
17.7.3. 查看當前區塊
17.7.4. 同步狀態
17.7.5. 挖礦狀態
17.7.6. 礦工賬號
17.7.7. 挖礦速度
17.7.8. Gas 價格
17.7.9. 評估GAS
17.7.10. 節點數量
17.8. 單位轉換
17.8.1. GWEI to WEI
17.9. 賬號管理
17.9.1. 獲得賬號列表
17.9.2. 獲得賬號信息
17.9.3. 創建賬號
17.9.4. 解鎖賬號
17.10. Credentials
17.11. 交易
17.11.1. 獲取餘額
17.11.2. 通過 Keystore 轉賬
17.11.3. 通過私鑰轉賬
17.11.4. 指定 gas 費用
17.11.5. 查詢 Transaction Information
17.11.6. 交易結果查詢
17.11.7. RawTransaction 編碼與解碼
17.12. 錢包
17.12.1. 創建錢包
17.12.2. 從錢包取出賬號
17.12.3. 生成助記詞錢包
17.12.4. 隨機產生助記詞
17.12.5. 導入 BIP39 錢包
17.13. 智能合約
17.13.1. 載入合約
17.14. ERC20合約
17.14.1. balanceOf
17.14.2. name
17.14.3. 合約轉賬
17.14.4. 完整的 ERC20 代幣開發庫
17.15. Infura
17.16. 助記詞
17.16.1. 獲取隨機助記詞
17.16.2. 助記詞導出公鑰和私鑰
17.17. 過濾器 (Filter)
17.18. Subscription
17.18.1. 接收所有添加到區塊鏈的新區塊
17.18.2. 接收所有添加到區塊鏈的新交易
17.18.3. 接收所有待處理的事務
17.18.4. 將區塊塊重放到當前的當前位置
17.18.5. 過濾主題
17.18.6. 停止訂閲 Subscriptions
17.18.7.
17.19. 解鎖賬號
17.20. IBAN (International Bank Account Number)
17.21. Springboot with Ethereum (web3j)
17.21.1. Maven
17.21.2. application.properties
17.21.3. TestRestController
17.21.4. 測試
18. web3.py - A python interface for interacting with the Ethereum blockchain and ecosystem.
18.1. 安裝 web3.py 開發環境
18.1.1. CentOS
18.1.2. MAC OS
18.2. 連接到以太坊節點
18.2.1. HTTP
18.2.2. IPC
18.2.3. Websocket
18.3. 交易
18.3.1. 發送 ETH
18.3.2. 簽名發送 ETH
18.4. ERC20 代幣合約
18.4.1. 簽名發送ERC20代幣
19. Ethereum iOS
20. Ethereum Developer APIs
20.1. API Keys
20.2. 賬號
20.2.1. 餘額
20.2.2. 查詢區塊
20.2.3. 查詢區塊
20.3. 查詢交易
20.3.1. 檢查合約執行狀態
20.4. Geth/Parity Proxy APIs
20.4.1.
20.5. JSON RPC 原生交口調用
21. infura
21.1. Infura 3.0
21.2. websocket
21.2.1. 訂閲 newBlockHeaders
21.3. 配置 Truffle
21.4. infura.io web3.js 開發
21.4.1. Web3 通過 infura 連接到 Ropsten 測試網絡
21.4.2. 使用 truffle-hdwallet-provider 連接到 https://ropsten.infura.io
21.4.3. 轉賬
21.4.4. 執行合約
21.5. Infura IPFS
21.5.1. 上傳檔案
21.5.2. 查看檔案
21.5.3. 下載檔案
21.5.4. 創建目錄
21.5.5. 查看檔案狀態
21.5.6. 查看IPFS版本號
21.6. Infura 2.0 (已經廢棄)
21.6.1. 註冊賬號
21.6.2. infura 介面
21.6.2.1. jsonrpc
21.6.2.2. INFURA API
22. 以太坊案例
22.1. EtherDelta
22.2. 以太貓(CryptoKitties)
22.3. CryptoZombies
22.4. Augur Project
22.5. Golem
22.6. FirstBlood
22.7. Bancor
23. FAQ
23.1. Error: etherbase missing: etherbase address must be explicitly specified
23.2. FAQ
23.3. Error: authentication needed: password or unlock
23.4. 新增節點後不生效
23.5. Unhandled rejection Error: Returned error: The method personal_unlockAccount does not exist/is not available
23.6. Error: exceeds block gas limit
23.7. Migrations.sol:11:3: Warning: Defining constructors as functions with the same name as the contract is deprecated. Use "constructor(...) { ... }" instead.
23.8. Exception in thread "main" rx.exceptions.OnErrorNotImplementedException: Invalid response received: okhttp3.internal.http.RealResponseBody@6c25e6c4
Please enable JavaScript to view the
comments powered by Disqus.