/btcpool

backend of pool.btc.com

Primary LanguageC++MIT LicenseMIT

BTCPool for Bitcoin, Ethereum, Decred, Bytom, ...

Branch Status
master CircleCI
deveth CircleCI

BTCPool is backend system of https://pool.btc.com.

This is a version of BTCPool that supports more blockchains. Check the SHA256-only version at master branch.

The pool backend support these blockchains at current:

  • SHA256
  • Scrypt
  • ETHash / Daggerhashimoto
  • EquiHash

    Tips: ZCash and BEAM use different EquiHash parameters and are not compatible in mining.

  • Cuckoo Cycle

    Tips: Grin supports Cuckaroo Cycle 29 and Cuckatoo Cycle 31 at the same time, miners can choose an algorithm to mine.

  • Blake-256
  • Tensority
  • Eaglesong
    • Ckb (finished but the test is not enough)

    Tips: only Tested with bminer and nbminer. need to be updated after the new version of ckb is released.

  • Others
    • Siacoin (not finished and need test)

It also support these merged mining blockchains of SHA256 blockchains:

If you want merged mine more than one chains that compatible with Bitcoin merged mining specification, use merged mining proxy.

Note: The project is still a testbed and work in progress, all things could be changed.

See Also:

Architecture (need update)

Architecture

Install

  1. Install Zookeeper, or see INSTALL-ZooKeeper.md
  1. Install Kafka, or see INSTALL-Kafka.md
  1. Install BTCPool, see INSTALL-BTCPool.md

Upgrade

Upgrading to BTCPool 2.3.0 requires additional operations on sharelogger, slparser and statshttpd due to incompatible sharelog format changes.

See UPGRADE-BTCPool.md for more information.

Benchmark (outdated)

We have test 100,000 miners online Benchmark. see Benchmark-100000.md

BTCAgent

BTCAgent is a kind of stratum proxy which use customize protocol to communicate with the pool. It's very efficient and designed for huge mining farm.

Testing

You could run simulator to test the system. It will simulate a lots of miners, need to enbale config enable_simulator on your Stratum Server.

License

BTCPool is released under the terms of the MIT license. See LICENSE for more information or see https://opensource.org/licenses/MIT.

Welcome aboard!

BTC.COM Team.