sphinx

module
v0.0.0-...-e495fa0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 2, 2022 License: GPL-3.0, LGPL-3.0

README

Sphinx

Version 0.0.1

Welcome to the official Go implementation of the [Sphinx] blockchain!

English | 中文

Sphinx is a high-performance blockchain project and distributed trust collaboration platform.

New features are still being rapidly developed, therefore the master branch may be unstable. Stable versions can be found in the releases section.

Install from Binaries

You can download a stable compiled version of the Sphinx node software from the release section.

Build From Source

Prerequisites

  • Golang version 1.12 or later

Build

Note that the code in the master branch may not be stable.

$ git clone https://github.com/rjgeek/Sphinx
$ cd Sphinx
$ make

After building the source code successfully, you should see the executable programs in build/bin dictionary:

  • fbox: The primary Sphinx node application and CLI.
  • promfile: Used to create genesis.json.

Run Sphinx

The Sphinx can run nodes for the TestNet and local PrivateNet. Look up Sphinx user guide for all guides.

Examples

For further examples, please refer to the CLI User Guide.

Contributions

Contributors to Sphinx are very welcome! Before beginning, please take a look at our contributing guidelines. You can open an issue by clicking here.

License

The Sphinx source code is available under the LGPL-3.0 license.

Directories

Path Synopsis
Package accounts implements high level Shx account management.
Package accounts implements high level Shx account management.
keystore
Package keystore implements encrypted storage of secp256k1 private keys.
Package keystore implements encrypted storage of secp256k1 private keys.
bloombits
Package bloombits implements bloom filtering on batches of data.
Package bloombits implements bloom filtering on batches of data.
state
Package state provides a caching layer atop the Shx state trie.
Package state provides a caching layer atop the Shx state trie.
types
Package types contains data types related to Shx consensus.
Package types contains data types related to Shx consensus.
cmd
fbox
shx is the official command-line client for Shx.
shx is the official command-line client for Shx.
utils
Package utils contains internal helper functions for sphinx commands.
Package utils contains internal helper functions for sphinx commands.
Package common contains various helper functions.
Package common contains various helper functions.
bitutil
Package bitutil implements fast bitwise operations.
Package bitutil implements fast bitwise operations.
compiler
Package compiler wraps the Solidity compiler executable (solc).
Package compiler wraps the Solidity compiler executable (solc).
crypto/bn256
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.
hexutil
Package hexutil implements hex encoding with 0x prefix.
Package hexutil implements hex encoding with 0x prefix.
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.
math
Package math provides integer math utilities.
Package math provides integer math utilities.
mclock
package mclock is a wrapper for a monotonic clock source
package mclock is a wrapper for a monotonic clock source
metrics
Package metrics provides general system and process level metrics collection.
Package metrics provides general system and process level metrics collection.
rlp
Package rlp implements the RLP serialization format.
Package rlp implements the RLP serialization format.
trie
Package trie implements Merkle Patricia Tries.
Package trie implements Merkle Patricia Tries.
Package consensus implements different Shx consensus engines.
Package consensus implements different Shx consensus engines.
promfile
puppeth is a command to assemble networks configure.
puppeth is a command to assemble networks configure.
sub
sub/filter
Package filter implements event filters.
Package filter implements event filters.
Package shx defines interfaces for interacting with Shx.
Package shx defines interfaces for interacting with Shx.
internal
debug
Package debug interfaces Go runtime debugging facilities.
Package debug interfaces Go runtime debugging facilities.
jsre
Package jsre provides execution environment for JavaScript.
Package jsre provides execution environment for JavaScript.
jsre/deps
Package deps contains the console JavaScript dependencies Go embedded.
Package deps contains the console JavaScript dependencies Go embedded.
shxapi
Package ethapi implements the general Shx API functions.
Package ethapi implements the general Shx API functions.
web3ext
package web3ext contains shx specific web3.js extensions.
package web3ext contains shx specific web3.js extensions.
network
p2p
Package p2p implements the Shx p2p network protocols.
Package p2p implements the Shx p2p network protocols.
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.
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.
rpc/hpbclient
Package ethclient provides a client for the Shx RPC API.
Package ethclient provides a client for the Shx RPC API.
Package eth implements the Shx protocol.
Package eth implements the Shx protocol.
db
filters
Package filters implements an shx filtering system for block, transactions and log events.
Package filters implements an shx filtering system for block, transactions and log events.
Package miner implements SHX block creation and mining.
Package miner implements SHX block creation and mining.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL