QLC Chain is a next generation public blockchain designed for the NaaS.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
.github doc: add issue template for creating a new issue (#348) Jan 6, 2018
CL Fix typo in comment Dec 28, 2017
blake2 Fixing AVX2 PERMUTE_WITH_GATHER build Oct 31, 2017
ci change root_token seed (#9) Jul 18, 2018
cryptopp @ ed4c345 updated to latest beast directory including moving submodule link url… Jul 29, 2017
docker modify docker config file Aug 2, 2018
ed25519-donna Switching SHA3 for blake2 Jan 29, 2015
gtest Inboarding gtest. Apr 16, 2016
images Merge master into ublocks (#714) Mar 8, 2018
lmdb @ a036f65 Using forked lmdb to apply windows incremental db patch. Dec 16, 2017
load-tester Load-tester: use env_logger Jan 27, 2018
miniupnp @ e24d7ec updated to latest beast directory including moving submodule link url… Jul 29, 2017
phc-winner-argon2 @ ea080f9 Changing Argon2 module location to use locally forked one. Nov 2, 2017
rai add more vote and rpc log Aug 8, 2018
util/gpg_keys Adding public keys for release signing Jun 11, 2018
vs - Refine sync smart_contract Jun 21, 2018
xxhash Removing unused file. Sep 13, 2015
.clang-format Add clang-format configuration Jan 6, 2018
.gitignore Update .gitignore, Install to C:\Program Files\Nano-*.*.* from instal… Mar 9, 2018
.gitlab-ci.yml [CI] add optimized builds, signatures Feb 12, 2018
.gitmodules Pointing to cloned repo. Dec 16, 2017
.travis.yml Disable ASAN and TSAN builds in Travis Mar 30, 2018
CMakeLists.txt Modify the name of the file Jul 12, 2018
FindBoost.cmake Appveyor (#742) Mar 20, 2018
Info.plist change ico for macos Jul 12, 2018
LICENSE License copyright year update (#448) Jan 8, 2018
QLCChain.icns Modify the name of the file Jul 12, 2018
QLCChain.ico Modify the name of the file Jul 12, 2018
QLCChain.rc Modify the name of the file Jul 12, 2018
README.md update README Sep 12, 2018
README_CN.md update README Sep 12, 2018
appveyor.yml Fix Appveyor (#875) May 18, 2018
asan_blacklist Fixing an asan issue. Nov 5, 2014
doxygen.config Rename Doxygen name to Nano (#889) May 26, 2018
logo.png Change to QLC icon and text Jul 10, 2018
qt.conf Found the correct magic recipe to get packaging working. Nov 10, 2014
rep_weights.bin change root_token seed (#9) Jul 18, 2018
resources.qrc fixed the inclusion of the logo file into the binary using QT resources Apr 20, 2017



Build Status

What is QLC Chain?

English 中文

QLC Chain is a next generation public blockchain designed for the NaaS. It deploys a multidimensional Block Lattice architecture and uses virtual machines (VM) to manage and support integrated Smart Contract functionality. Additionally, QLC Chain utilizes dual consensus: Delegated Proof of Stake (DPoS), and Shannon Consensus, which is a novel consensus developed by the QLC Chain team. Through the use of this dual consensus protocol, QLC Chain is able to deliver a high number of transactions per second (TPS), massive scalability and an inherently decentralized environment for NaaS related decentralized applications (dApp). The framework of QLC Chain will enable everyone to operate network services and benefit from it.

Network-as-a-Service (NaaS) is sometimes listed as a separate cloud provider along with Infrastructure- as-a-Service (IaaS), Platform-as-a-Service (PaaS), and Software-as-a-Service (SaaS). This factors out networking, firewalls, related security, etc.

NaaS can include flexible and extended Virtual Private Network (VPN), bandwidth on demand, custom routing, multicast protocols, security firewall, intrusion detection and prevention, Wide Area Network (WAN), content addressing and filtering, and antivirus.

Key Features

  • Multidimensional Block Lattice Structure
  • QLC Chain Smart Contract
  • Dual Consensus Protocol

    For more information, see YellowPaper. Currently we forked NANO to verify Multidimensional Block Lattice Structure, our own public chain which is developed by Golang is under heavy development.

Build Instructions

Required build tools

  • (macOS) XCode >= 7.3
  • (Windows) Visual Studio 2015
  • (Windows) NSIS package builder
  • (*nix) Clang >= 3.5 or GCC >= 5
  • CMake

CMake variables (cmake -DVARNAME=VARVALUE).

  • BOOST_ROOT [boost] (/usr/local/boost/ if bootstrapped)
  • CMAKE_BUILD_TYPE Release (default)
  • ACTIVE_NETWORK rai_live_network (default)
  • Qt5_DIR [qt]lib/cmake/Qt5 (to build GUI wallet)
  • RAIBLOCKS_GUI ON (to build GUI wallet)
  • ENABLE_AVX2 ON, optional PERMUTE_WITH_GATHER ON, optional PERMUTE_WITH_SHUFFLES ON (for CPU with AXV2 support, choose fastest method - for your CPU with https://github.com/sneves/blake2-avx2/)
  • CRYPTOPP_CUSTOM ON (more conservative building of Crypto++ for wider range of systems)
  • BOOST_CUSTOM ON (use bundled FindBoost.cmake for boost 1.66 on Windows commit 8fd47b20dca0c9fc82c5c4d240432503d6fb11a4+)

Build RaiBlocks

  • git submodule update --init --recursive
  • Generate with cmake then build with your compiler
  • (*nix) to build node without GUI execute: make qlc_node
  • (*nix) to build wallet with GUI execute: make qlc_wallet

Links & Resources