Directories ¶
Path | Synopsis |
---|---|
Package ethereum defines interfaces for interacting with Ethereum.
|
Package ethereum defines interfaces for interacting with Ethereum. |
accounts
Package accounts implements high level Ethereum account management.
|
Package accounts implements high level Ethereum account management. |
accounts/abi
Package abi implements the Ethereum ABI (Application Binary Interface).
|
Package abi implements the Ethereum ABI (Application Binary Interface). |
accounts/abi/bind
Package bind generates Ethereum contract Go bindings.
|
Package bind generates Ethereum contract Go bindings. |
accounts/keystore
Package keystore implements encrypted storage of secp256k1 private keys.
|
Package keystore implements encrypted storage of secp256k1 private keys. |
accounts/usbwallet
Package usbwallet implements support for USB hardware wallets.
|
Package usbwallet implements support for USB hardware wallets. |
accounts/usbwallet/internal/trezor
Package trezor contains the wire protocol wrapper in Go.
|
Package trezor contains the wire protocol wrapper in Go. |
bmt
Package bmt provides a binary merkle tree implementation
|
Package bmt provides a binary merkle tree implementation |
cmd/bootnode
bootnode runs a bootstrap node for the Ethereum Discovery Protocol.
|
bootnode runs a bootstrap node for the Ethereum Discovery Protocol. |
cmd/clef
signer is a utility that can be used so sign transactions and arbitrary data.
|
signer is a utility that can be used so sign transactions and arbitrary data. |
cmd/evm
evm executes EVM code snippets.
|
evm executes EVM code snippets. |
cmd/faucet
faucet is a Ether faucet backed by a light client.
|
faucet is a Ether faucet backed by a light client. |
cmd/geth
geth is the official command-line client for Ethereum.
|
geth is the official command-line client for Ethereum. |
cmd/internal/browser
Package browser provides utilities for interacting with users' browsers.
|
Package browser provides utilities for interacting with users' browsers. |
cmd/p2psim
p2psim provides a command-line client for a simulation HTTP API.
|
p2psim provides a command-line client for a simulation HTTP API. |
cmd/puppeth
puppeth is a command to assemble and maintain private networks.
|
puppeth is a command to assemble and maintain private networks. |
cmd/rlpdump
rlpdump is a pretty-printer for RLP data.
|
rlpdump is a pretty-printer for RLP data. |
cmd/swarm
Command bzzhash computes a swarm tree hash.
|
Command bzzhash computes a swarm tree hash. |
cmd/utils
Package utils contains internal helper functions for go-ethereum commands.
|
Package utils contains internal helper functions for go-ethereum commands. |
common
Package common contains various helper functions.
|
Package common contains various helper functions. |
common/bitutil
Package bitutil implements fast bitwise operations.
|
Package bitutil implements fast bitwise operations. |
common/compiler
Package compiler wraps the Solidity compiler executable (solc).
|
Package compiler wraps the Solidity compiler executable (solc). |
common/hexutil
Package hexutil implements hex encoding with 0x prefix.
|
Package hexutil implements hex encoding with 0x prefix. |
common/math
Package math provides integer math utilities.
|
Package math provides integer math utilities. |
common/mclock
package mclock is a wrapper for a monotonic clock source
|
package mclock is a wrapper for a monotonic clock source |
consensus
Package consensus implements different Ethereum consensus engines.
|
Package consensus implements different Ethereum consensus engines. |
consensus/clique
Package clique implements the proof-of-authority consensus engine.
|
Package clique implements the proof-of-authority consensus engine. |
consensus/ethash
Package ethash implements the ethash proof-of-work consensus engine.
|
Package ethash implements the ethash proof-of-work consensus engine. |
contracts/chequebook
Package chequebook package wraps the 'chequebook' Ethereum smart contract.
|
Package chequebook package wraps the 'chequebook' Ethereum smart contract. |
core
Package core implements the Ethereum consensus protocol.
|
Package core implements the Ethereum consensus protocol. |
core/asm
Provides support for dealing with EVM assembly instructions (e.g., disassembling them).
|
Provides support for dealing with EVM assembly instructions (e.g., disassembling them). |
core/bloombits
Package bloombits implements bloom filtering on batches of data.
|
Package bloombits implements bloom filtering on batches of data. |
core/rawdb
Package rawdb contains a collection of low level database accessors.
|
Package rawdb contains a collection of low level database accessors. |
core/state
Package state provides a caching layer atop the Ethereum state trie.
|
Package state provides a caching layer atop the Ethereum state trie. |
core/types
Package types contains data types related to Ethereum consensus.
|
Package types contains data types related to Ethereum consensus. |
core/vm
Package vm implements the Ethereum Virtual Machine.
|
Package vm implements the Ethereum Virtual Machine. |
core/vm/runtime
Package runtime provides a basic execution model for executing EVM code.
|
Package runtime provides a basic execution model for executing EVM code. |
crypto/bn256
Package bn256 implements the Optimal Ate pairing over a 256-bit Barreto-Naehrig curve.
|
Package bn256 implements the Optimal Ate pairing over a 256-bit Barreto-Naehrig curve. |
crypto/bn256/cloudflare
Package bn256 implements a particular bilinear group at the 128-bit security level.
|
Package bn256 implements a particular bilinear group at the 128-bit security level. |
crypto/bn256/google
Package bn256 implements a particular bilinear group at the 128-bit security level.
|
Package bn256 implements a particular bilinear group at the 128-bit security level. |
crypto/secp256k1
Package secp256k1 wraps the bitcoin secp256k1 C library.
|
Package secp256k1 wraps the bitcoin secp256k1 C library. |
crypto/sha3
Package sha3 implements the SHA-3 fixed-output-length hash functions and the SHAKE variable-output-length hash functions defined by FIPS-202.
|
Package sha3 implements the SHA-3 fixed-output-length hash functions and the SHAKE variable-output-length hash functions defined by FIPS-202. |
eth
Package eth implements the Ethereum protocol.
|
Package eth implements the Ethereum protocol. |
eth/downloader
Package downloader contains the manual full chain synchronisation.
|
Package downloader contains the manual full chain synchronisation. |
eth/fetcher
Package fetcher contains the block announcement based synchronisation.
|
Package fetcher contains the block announcement based synchronisation. |
eth/filters
Package filters implements an ethereum filtering system for block, transactions and log events.
|
Package filters implements an ethereum filtering system for block, transactions and log events. |
eth/tracers
Package tracers is a collection of JavaScript transaction tracers.
|
Package tracers is a collection of JavaScript transaction tracers. |
eth/tracers/internal/tracers
Package tracers contains the actual JavaScript tracer assets.
|
Package tracers contains the actual JavaScript tracer assets. |
ethclient
Package ethclient provides a client for the Ethereum RPC API.
|
Package ethclient provides a client for the Ethereum RPC API. |
ethstats
Package ethstats implements the network stats reporting service.
|
Package ethstats implements the network stats reporting service. |
event
Package event deals with subscriptions to real-time events.
|
Package event deals with subscriptions to real-time events. |
event/filter
Package filter implements event filters.
|
Package filter implements event filters. |
internal/debug
Package debug interfaces Go runtime debugging facilities.
|
Package debug interfaces Go runtime debugging facilities. |
internal/ethapi
Package ethapi implements the general Ethereum API functions.
|
Package ethapi implements the general Ethereum API functions. |
internal/guide
Package guide is a small test suite to ensure snippets in the dev guide work.
|
Package guide is a small test suite to ensure snippets in the dev guide work. |
internal/jsre
Package jsre provides execution environment for JavaScript.
|
Package jsre provides execution environment for JavaScript. |
internal/jsre/deps
Package deps contains the console JavaScript dependencies Go embedded.
|
Package deps contains the console JavaScript dependencies Go embedded. |
internal/web3ext
package web3ext contains geth specific web3.js extensions.
|
package web3ext contains geth specific web3.js extensions. |
les
Package les implements the Light Ethereum Subprotocol.
|
Package les implements the Light Ethereum Subprotocol. |
les/flowcontrol
Package flowcontrol implements a client side flow control mechanism
|
Package flowcontrol implements a client side flow control mechanism |
light
Package light implements on-demand retrieval capable state and chain objects for the Ethereum Light Client.
|
Package light implements on-demand retrieval capable state and chain objects for the Ethereum Light Client. |
log
Package log15 provides an opinionated, simple toolkit for best-practice logging that is both human and machine readable.
|
Package log15 provides an opinionated, simple toolkit for best-practice logging that is both human and machine readable. |
metrics
Go port of Coda Hale's Metrics library
|
Go port of Coda Hale's Metrics library |
metrics/exp
Hook go-metrics into expvar on any /debug/metrics request, load all vars from the registry into expvar, and execute regular expvar handler
|
Hook go-metrics into expvar on any /debug/metrics request, load all vars from the registry into expvar, and execute regular expvar handler |
miner
Package miner implements Ethereum block creation and mining.
|
Package miner implements Ethereum block creation and mining. |
mobile
Package geth contains the simplified mobile APIs to go-ethereum.
|
Package geth contains the simplified mobile APIs to go-ethereum. |
node
Package node sets up multi-protocol Ethereum nodes.
|
Package node sets up multi-protocol Ethereum nodes. |
p2p
Package p2p implements the Ethereum p2p network protocols.
|
Package p2p implements the Ethereum p2p network protocols. |
p2p/discover
Package discover implements the Node Discovery Protocol.
|
Package discover implements the Node Discovery Protocol. |
p2p/discv5
Package discv5 implements the RLPx v5 Topic Discovery Protocol.
|
Package discv5 implements the RLPx v5 Topic Discovery Protocol. |
p2p/enr
Package enr implements Ethereum Node Records as defined in EIP-778.
|
Package enr implements Ethereum Node Records as defined in EIP-778. |
p2p/nat
Package nat provides access to common network port mapping protocols.
|
Package nat provides access to common network port mapping protocols. |
p2p/netutil
Package netutil contains extensions to the net package.
|
Package netutil contains extensions to the net package. |
p2p/protocols
Package protocols is an extension to p2p.
|
Package protocols is an extension to p2p. |
p2p/simulations
Package simulations simulates p2p networks.
|
Package simulations simulates p2p networks. |
rlp
Package rlp implements the RLP serialization format.
|
Package rlp implements the RLP serialization format. |
rpc
Package rpc provides access to the exported methods of an object across a network or other I/O connection.
|
Package rpc provides access to the exported methods of an object across a network or other I/O connection. |
signer/rules/deps
Package deps contains the console JavaScript dependencies Go embedded.
|
Package deps contains the console JavaScript dependencies Go embedded. |
swarm/api/http
Show nicely (but simple) formatted HTML error pages (or respond with JSON if the appropriate `Accept` header is set)) for the http package.
|
Show nicely (but simple) formatted HTML error pages (or respond with JSON if the appropriate `Accept` header is set)) for the http package. |
tests
Package tests implements execution of Ethereum JSON tests.
|
Package tests implements execution of Ethereum JSON tests. |
trie
Package trie implements Merkle Patricia Tries.
|
Package trie implements Merkle Patricia Tries. |
whisper/whisperv5
Package whisperv5 implements the Whisper protocol (version 5).
|
Package whisperv5 implements the Whisper protocol (version 5). |
Click to show internal directories.
Click to hide internal directories.