以太坊连载(十):以太坊Go、Java、Python、Ruby、JS客户端介绍

2016-08-26 10:25 来源:巴比特资讯 阅读:5095
go-ethereum客户端通常被称为geth,它是个命令行界面,执行在Go上实现的完整以太坊节点。

go-ethereum

go-ethereum客户端通常被称为geth,它是个命令行界面,执行在Go上实现的完整以太坊节点。通过安装和运行geth,可以参与到以太坊前台实时网络并进行以下操作:

  1. 挖掘真的以太币

  2. 在不同地址间转移资金

  3. 创建合约,发送交易

  4. 探索区块历史

  5. 及很多其他

链接:

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

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

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

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

以太坊

pyethapp

Pyethapp是以python为基础的客户端,实现以太坊加密经济状态机。python实现旨在提供一个更容易删节和扩展的代码库。Pyethapp利用两个以太坊核心组成部分来实现客户端:

  1. pyethereum —— 核心库,以区块链、以太坊模拟机和挖矿为特征

  2. pydevp2p —— 点对点网络库,以节点发现和运输多码复用和加密连接为特征

链接:

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

  2. 维基百科: https://github.com/ethereum/pyethapp/wiki/Getting-Started

  3. Gitter聊天: https://gitter.im/ethereum/pyethapp

ethereumjs-lib

正如黄皮书中所说,ethereumjs-lib是核心以太坊功能的javascript库。这是个简单的元模块,提供以下模块。大部分JS模块都在ethereumjs上有跟踪。

  1. 虚拟机 – 以太坊虚拟机和状态处理功能

  2. 区块链 – 区块链管理

  3. 区块 – 区块模式定义和验证

  4. 交易 – 交易模式定义和验证

  5. 账户 – 账户模式定义和验证

  6. rlp – 循环长度前缀序列化

  7. Trie – 改良的Merkle Patricia树

  8. Ethash – 以太坊工作量证明算法

  9. utils – 多样辅助功能

  10. devp2p – 网络协议

  11. devp2p-dpt – 有争议的对等端表

链接:

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

  2. 加入Gitter聊天: https://gitter.im/ethereum/ethereumjs-lib

Ethereum(J)

Ethereum(J) 是以太坊协议的纯Java实现。它作为可以嵌入任何Java/Scala项目的库提供,并为以太坊协议及附属服务提供完全支持。Ethereum(J)最 开始由Roman Mandeleil开发,现在受 <ether.camp>资助。

Ethereum(J)支持CPU挖矿。目前它由纯Java实现,可用于私人和测试网络。你甚至可以在实时以太坊网络上挖矿,但是这样从经济角度来说不划算。

链接:

  1. 博客: http://ethereumj.io/

  2. Github: https://github.com/ethereum/ethereumj

  3. Gitter聊天: https://gitter.im/ethereum/ethereumj

ethereumH

这个程序包提供了写在Haskell上的工具,能使你连接到以太坊区块链。

链接:

  1. Github: https://github.com/blockapps/ethereumH

  2. BlockApps: http://www.blockapps.net/

Parity

Parity 声称是世界上最快速最轻便的客户端。它用Rust语言写成,可靠性、性能和代码清晰度都有所增强。Parity由Ethcore开发。Ethcore由以太坊基金会的几个会员创建。

  1. 网站: https://ethcore.io/parity.html

  2. Github: https://github.com/ethcore/parity

  3. Gitter聊天: https://gitter.im/ethcore/parity

Arch Linux 程序包由Afri Schoedon和quininer进行社群维护。

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

  2. https://aur.archlinux.org/packages/parity-git/ (不稳定,最新开发)

已经有人报告在树莓派2上成功运行了Parity。

ruby-ethereum

ruby-ethereum是以太坊虚拟机上的一个实现,用Ruby语言写成。

链接:

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

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

相关:

  1. ruby-serpent: 捆绑在以太坊 Serpent编译器上的Ruby语言.

  2. ethereum-ruby: 一个pure-Ruby JSON-RPC包装,用于和以太坊节点交流。要使用这个库,你需要有运行的以太坊节点和可行的IPC支持(默认)。目前支持go-ethereum 客户端。

参考资料:

文章中的列表对应的链接可以参考《Ethereum Homestead Documentation》第41页1.2.4 go-ethereum

下一篇文章我们将会介绍《以太坊连载(11):以太坊账户管理》

感谢朝夕团队Azure, Bob参与《Ethereum Homestead Documentation》的翻译和校验。


声明:此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。本网站所提供的信息,只供参考之用。

点击阅读全文

相关阅读