6.2. 以太坊測試網的歷史

Olympic, Morden to Ropsten, Kovan, Rinkeby

Olympic testnet (Network ID: 0) 是Frontier首個公共測試網(簡稱Ethereum 0.9)。它於2015年初推出,2015年中期被Morden取代時棄用。

Ethereum’s Morden testnet (Network ID: 2) 與Frontier一起發佈,從2015年7月開始運行,直到2016年11月不再使用。雖然任何使用以太坊的人都可以創建測試網,但Morden是第一個“官方”公共測試網,取代了Olympic測試網。由於臃腫區塊鏈的長同步時間以及Geth和Parity客戶端之間的共識問題,測試網路重新啟動並重新生成為Ropsten。

Ropsten (Network ID: 3) 是一個針對Homestead的公共跨客戶端測試網,於2016年晚些時候推出,並作為公共測試網順利運行至2017年2月底。根據Ethereum的核心開發人員PéterSzilágyi的說法,二月的時候,“惡意行為者決定濫用低PoW,並逐步將gas限制提高到90億(從普通的470萬),發送巨大交易損害了整個網路”。Ropsten在2017年3月被恢復。https://github.com/ethereum/ropsten

Kovan (Network ID: 42) 是由Parity的權威證明(PoA)共識演算法驅動的Homestead的公共Parity測試網路。該測試網不受垃圾郵件攻擊的影響,因為ether供應由可信方控制。這些值得信賴的各方是在Ethereum上積極開發的公司。 儘管看起來這應該是以太坊測試網問題的解決方案,但在以太坊社區內似乎存在關於Kovan測試網的共識問題。https://github.com/kovan-testnet/proposal

Rinkeby (Network ID: 4) 是由Ethereum團隊於2017年4月開始的Homestead發佈的Geth測試網路,並使用PoA共識協議。以斯德哥爾摩的地鐵站命名,它幾乎不受垃圾郵件攻擊的影響(因為以太網供應由受信任方控制)。請參閱EIP 225:https://github.com/ethereum/EIPs/issues/225

6.3. 工作量證明(挖礦)Proof-of-Work (Mining) 與 權威證明(聯合簽名)Proof-of-Authority (Federated Signing)

Proof-of-Work 是一種協議,必須執行挖礦(昂貴的計算機計算)以在區塊鏈(分佈式賬本)上創建新的區塊(去信任的交易)。 缺點:能源消耗。集中的雜湊算力與集中的採礦農場,不是真正的分佈式。挖掘新塊體所需的大量計算能力對環境有影響。

Proof-of-Authority 是一種協議,它只將造幣的負載分配給授權和可信的簽名者,他們可以根據自己的判斷並隨時以發幣頻率分發新的區塊。https://github.com/ethereum/EIPs/issues/225 優點:具有最顯赫的身份的區塊鏈參與者通過演算法選擇來驗證塊來交付交易。

6.4. 運行本地測試網

6.4.1. Ganache: 以太坊開發的個人區塊鏈

你可以使用Ganache部署合約,開發應用程式並運行測試。它可用作Windows,Mac和Linux的桌面應用程式。

6.4.2. Ganache CLI: Ganache 作為命令行工具。

這個工具以前稱為“ethereumJS TestRPC”。

$ npm install -g ganache-cli

讓我們開始以太坊區塊鏈協議的節點模擬。 * []檢查`--networkId`和`--port`flag values是否與truffle.js中的配置相匹配 * []檢查`--gasLimit`flag values是否與https://ethstats.net上顯示的最新主網gas極限(即8000000 gas)相匹配,以避免不必要地遇到`gas’異常。請注意,4000000000的“--gasPrice”代表4 gwei的gas價格。 * []可以輸入一個`--mnemonic’flag values來恢復以前的高清錢包和相關地址

$ ganache-cli \
  --networkId=3 \
  --port="8545" \
  --verbose \
  --gasLimit=8000000 \
  --gasPrice=4000000000;
PDF EPUB GitHub Releases