以太坊連載(六):以太坊客戶端的選擇與安裝

汪曉明發表於2018-08-29

一、選擇客戶端

為什麼有多個以太坊客戶端?

以太坊客戶端與Java虛擬機器和.NET執行環境類似,能夠讓你在電腦上執行“以太坊程式”。以太坊客戶端按照書面說明(黃皮書)執行,特意設計為可以彼此協作,有點兒像“商品”。

專案早期,在眾多不同的作業系統中就有多個可以彼此協作的客戶端實現。客戶端的多樣性對於整個生態系統來說是巨大的成功。它使我們能夠證明協議是明確清晰的,為創新開啟大門,也讓我們都保持誠實。但是對終端使用者來說,沒有通用的“以太坊安裝程式”可供他們使用,可能引起他們的困惑。

進入到Homestead階段以後,Go客戶端佔據了主導地位,但情況並不一直是這樣,將來也並不必然如此。除了EthereumH,其他客戶端都有Homestead相容的版本。下面的表格包含了最新的版本連結。

客戶端 語言 開發者 最新版本

go-ethereum Go 以太坊基金會 go-ethereum-v1.4.9
Parity Rust Ethcore Parity-v1.2.1
cpp-ethereum C++ 以太坊基金會 cpp-ethereum-v1.2.9
pyethapp Python 以太坊基金會 pyethapp-v1.2.3
ethereumjs-lib Javascript 以太坊基金會 ethereumjs-lib-v3.0.0
Ethereum(J) Java <ether.camp> ethereumJ-v1.3.0-RC3-daoRescue2
ruby-ethereum Ruby Jan Xie ruby-ethereum-v0.9.3
ethereumH Haskell BlockApps 尚無Homestead 版本

二、安裝客戶端

很多“官方”客戶端的開發都由以太坊基金會管理的資源資助。還有一些其他的客戶端由社群或其他商業實體建立。

本章關於特定客戶端的小節中可以閱讀到更多有關特定客戶端的內容。

桌上型電腦/膝上型電腦上應該安裝什麼?
如果你有膝上型電腦或者桌上型電腦,大概只需要安裝以太坊錢包就可以了。

  • 從Github下載最新的以太坊錢包壓縮檔案
  • 在任意你希望的位置解鎖
  • 點選可執行檔案(Ethereum-Wallet, Ethereum-Wallet 或 Ethereum-Wallet.app)
  • 區塊鏈資料將會被下載

以太坊錢包是Mist瀏覽器“單獨的DApp”部署方式,它將成為Homestead之後Metropolis開發的核心。Mist附有繫結的 go-ethereum 和 cpp-ethereum 二進位制。如果Mist開啟的時候,你沒有在執行命令列以太坊客戶端,它就會開始執行其中一個繫結的客戶端。

如果你想在命令列和以太坊互動,並且利用JavaScript控制檯,那麼你會想直接安裝一個客戶端軟體以及Mist。

開始的時候最適合選擇 go-ethereum 和 cpp-ethereum,因為它們的開發始於專案之初,經過了安全審查,適用於所有平臺,並且其維護有以太坊基金會指定資源扶持。

  • 安裝cpp-ethereum,需按照安裝二進位制指令
  • go-ethereum只需解壓已釋出的二進位制。

奇偶檢驗正很快流行起來。 當然這也取決於個人偏好。可以都試一下 :–) 要是你想挖礦,只有Mist是不夠的。查閱挖礦章節。

手機/平板電腦上應該安裝什麼?

移動裝置上的軟體支援還在起步階段。Go團隊正在釋出試用的iOS和安卓程式庫,一些開發者正在用程式庫開始研究手機應用輔助程式,但是目前還沒有任何可用的以太坊手機客戶端(目前出現了JAXX,支援安卓、iOS等多個平臺,譯者注)。在移動裝置上使用以太坊最主要的障礙是Light客戶端支援尚不完備。已完成的工作成果在私有分支上關閉,只在Go客戶端上可用。 Doublethinkco將在接下來的幾個月開始為C++客戶端開發Light客戶端,接下來會有資金支援。

檢視Syng.im,它最先使用了基於Ethereum(J)的 ethereumj-personal,但是最近跳轉到了和Light客戶端的Geth交叉構建。

單板計算機(SBC)上應該安裝什麼?

按照技術水平的不同,以及你想要達到的目的,可以有不同的選擇。

  • 下載一個充分準備好的安裝映象(連結到有具體下載和安裝說明的頁面)—— 如果你剛開始使用以太坊AND SBC板,諸如樹莓派,那麼這就是為你準備的!只需要下載你正在使用的開發板的特定安裝映象,燒錄到SD卡上,啟動裝置。執行以太坊!
  • 下載一個預編譯的應用(連結到有具體下載和安裝說明的頁面)—— 如果你已經有SBC執行,並且有特定、偏好的OS或是想保留的設定,這是你的最佳選擇!你可以只根據平臺,下載合適的可執行檔案,只需最少的資源庫連結和PATH設定,就能執行以太坊!
  • 從使用可定製描述語言的資源中建立(連結到有更多細節的頁面以及單獨的SBC連結
    https://github.com/ethembedded)

—— 想要執行定製的安裝程式? 我們有可以從裝置的源上編譯的描述語言。我們的描述語言包含自動安裝依賴的軟體以及客戶端本身。這就使你能夠安裝以太坊客戶端的特定版本(比如“develop”, “master”等),編譯你自己的客戶端分叉版本,嘗試建立程式中的各種複雜的問題找到最佳解決方案。

參考資料:
文章中的列表對應的連結可以參考《Ethereum Homestead Documentation》第16頁1.2.1 Choosing a client

下一篇文章我們將會介紹《以太坊連載(七):C++客戶端的安裝與定製》

感謝朝夕團隊Azure, Bob參與《Ethereum Homestead Documentation》的翻譯和校驗。

汪曉明
HPB芯鏈創始人,巴位元專欄作家。十餘年金融大資料、區塊鏈技術開發經驗,曾參與建立銀聯大資料。主創區塊鏈教學視訊節目《明說》30多期,編寫了《以太坊官網文件中文版》,並作為主要作者編寫了《區塊鏈開發指南》,在中國區塊鏈社群以ID“藍蓮花”知名。

相關文章