以太坊Go、Java、Python、Ruby、JS客戶端介紹

區塊鏈技術 巴比特 2018-07-23

#### Go-ethereum 簡介

go-ethereum客戶端通常被稱為geth,它是個命令行界面,執行在Go上實現的完整以太坊節點。通過安裝和運行geth,可以參與到以太坊前臺實時網絡並進行以下操作

以太幣

Go Ethereum 鏈接:

網站: http://ethereum.github.io/go-ethereum/ 1

Github: https://github.com/ethereum/go-ethereum

維基百科: https://github.com/ethereum/go-ethereum/wiki/geth

Gitter: https://gitter.im/ethereum/go-ethereum

Pyethapp介紹

Pyethapp是以python為基礎的客戶端,實現以太坊加密經濟狀態機。python實現旨在提供一個更容易刪節和擴展的代碼庫。Pyethapp利用兩個以太坊核心組成部分來實現客戶端。

Pyethereum —— 核心庫,以區塊鏈、以太坊模擬機和挖礦為特徵

pydevp2p —— 點對點網絡庫,以節點發現和運輸多碼複用和加密連接為特徵鏈接。

Github: https://github.com/ethereum/pyethapp 1

維基百科: https://github.com/ethereum/pyethapp/wiki/Getting-StartedGitter 1

聊天: https://gitter.im/ethereum/pyethappethereumjs-lib

正如黃皮書中所說,ethereumjs-lib是核心以太坊功能的javascript庫。這是個簡單的元模塊,提供以下模塊。大部分JS模塊都在ethereumjs上有跟蹤。

常用鏈接:

Github: https://github.com/ethereumjs/ethereumjs-lib

Gitter: https://gitter.im/ethereum/ethereumjs-libEthereum(J)

Ethereum(J) 是以太坊協議的純Java實現。它作為可以嵌入任何Java/Scala項目的庫提供,併為以太坊協議及附屬服務提供完全支持。Ethereum(J)最開始由Roman Mandeleil開發,現在受 <ether.camp>資助。

Ethereum(J)支持CPU挖礦。目前它由純Java實現,可用於私人和測試網絡。你甚至可以在實時以太坊網絡上挖礦,但是這樣從經濟角度來說不划算。

博客鏈接:

博客: http://ethereumj.io/Github: 1 https://github.com/ethereum/ethereumjGitter

聊天: https://gitter.im/ethereum/ethereumjethereumH 1

這個程序包提供了寫在Haskell上的工具,能使你連接到以太坊區塊鏈。

工具鏈接:

Github: https://github.com/blockapps/ethereumHBlockApps: http://www.blockapps.net/

Parity

Parity 聲稱是世界上最快速最輕便的客戶端。它用Rust語言寫成,可靠性、性能和代碼清晰度都有所增強。Parity由Ethcore開發。Ethcore由以太坊基金會的幾個會員創建。

網站: https://ethcore.io/parity.htmlGithub: 1 https://github.com/ethcore/parityGitter 1

聊天: https://gitter.im/ethcore/parityArch

https://aur.archlinux.org/packages/parity/ (穩定,最新版本)

https://aur.archlinux.org/packages/parity-git/ (不穩定,最新開發),已經有人報告在樹莓派2上成功運行了Parity。

Ruby-ethereum介紹:

ruby-ethereum是以太坊虛擬機上的一個實現,用Ruby語言寫成。

鏈接:

Github: https://github.com/janx/ruby-ethereum

Gem: https://rubygems.org/gems/ruby-ethereum

另外ruby-serpent是捆綁在以太坊 Serpent編譯器上的Ruby語言. ethereum-ruby: 一個pure-Ruby JSON-RPC包裝,用於和以太坊節點交流。要使用這個庫,你需要有運行的以太坊節點和可行的IPC支持(默認),目前支持go-ethereum 客戶端。

參考資料:文章中的列表對應的鏈接可以參考《Ethereum Homestead Documentation》第41頁1.2.4 go-ethereum