Skip to content

Zilliqa is the world's first high-throughput public blockchain platform - designed to scale to thousands ​of transactions per second.

License

Notifications You must be signed in to change notification settings

ckyang/Zilliqa-Release

 
 

Repository files navigation

Zilliqa (codename Durian)

Build Status codecov Gitter chat

Overview

Zilliqa is a new blockchain platform capable of processing thousands of transactions per second with sharding built into it. With sharding, Zilliqa has the potential to match throughput benchmarks set by traditional payment methods (such as VISA and MasterCard). More importantly, Zilliqa’s transaction throughput increases (roughly) linearly with its network size.

Mao Shan Wang public testnet

Mao Shan Wang small-scale testnet for developers

Available features

The current release has the following features implemented:

  • Single Ethash Proof of Work (PoW) for joining the network
  • Network sharding
  • Transaction sharding
  • Directory Service Committee with Multiple-In, Multiple-Out (MIMO)
  • pBFT Consensus for DS block (with sharding structure), Shard microblock, DS microblock, and Final block
  • EC-Schnorr signature
  • Data layer and accounts store
  • Lookup nodes to allow new nodes to join and dispatch transactions to correct shards
  • Persistent storage for transactions and state
  • Merkle Patricia tree
  • Transaction verification and receipt
  • View change mechanism
  • Smart contract implementation
  • GPU (OpenCL and CUDA) support for PoW
  • State delta forwarding
  • Gossip protocol for network message broadcasting
  • Protocol upgrade mechanism
  • Node recovery mechanism
  • Gas rewards and pricer
  • Coinbase rewards

In the coming months, we plan to have the following features:

  • Mining curve structure
  • Further unit and integration tests
  • Enhancement of existing features
  • More operating system support
  • And much more ...

Minimum system requirements

To run Zilliqa, we recommend the following minimum system requirements:

  • x64 Linux operating system such as Ubuntu
  • Intel i5 processor or later
  • 2 GB RAM or higher

Note: Presently, we are in active development on Ubuntu 16.04. We also support macOS. Support for building on other Debian-based distributions are pending.

Dependencies

  • Ubuntu 16.04:

    sudo apt-get update
    sudo apt-get install git libboost-system-dev libboost-filesystem-dev libboost-test-dev \
        libssl-dev libleveldb-dev libjsoncpp-dev libsnappy-dev cmake libmicrohttpd-dev \
        libjsonrpccpp-dev build-essential pkg-config libevent-dev libminiupnpc-dev \
        libprotobuf-dev protobuf-compiler libcurl4-openssl-dev libboost-program-options-dev \
        libssl-dev
  • macOS:

    brew install boost pkg-config jsoncpp leveldb libjson-rpc-cpp libevent miniupnpc protobuf

Running Zilliqa locally

  1. Build Zilliqa from the source.

    ./build.sh
    
  2. Run the local testnet script in build directory

    cd build && ./tests/Node/pre_run.sh && ./tests/Node/test_node_lookup.sh && ./tests/Node/test_node_simple.sh
    
  3. Logs of each node can be found at ./local_run

  4. To terminate Zilliqa,

    pkill zilliqa
    

Joining the Mao Shan Wang public testnet

Please visit the Mining wiki to find out more.

Further enquiries

  • General question: Slack
  • Development discussion: Gitter
  • Bug report: Github Issues
  • Security contact: security 🌐 zilliqa.com

Licence

You can view our licence here.

About

Zilliqa is the world's first high-throughput public blockchain platform - designed to scale to thousands ​of transactions per second.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 90.6%
  • Python 2.3%
  • C 2.2%
  • CMake 2.1%
  • Shell 1.9%
  • Cuda 0.8%
  • Other 0.1%