Poolservers: Difference between revisions

From Bitcoin Wiki
Jump to navigation Jump to search
Slush (talk | contribs)
Added Stratum
Raistlinthewiz (talk | contribs)
m changed coiniumserv references as hpool as the project changed name
 
(16 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{| class='wikitable'
{| class='wikitable'
! colspan='10' | information
! colspan='11' | information
|-
|-
! Info !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! Stratum
! Info !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
|-
| language || C++ || Erlang || Python3 || Java || C || Twisted || C++ || Python2 || Python2
| language || C || C++ || Erlang || Python3 || Java || C || Twisted || C++ || Twisted || node.js
|-
|-
| license || MIT || GPL-3 || AGPL-3 || GPL-3 || GPL-2 || GPL-3 || {{No}} || {{No}} || AGPL-3
| license || GPL-3 || MIT || GPL-3 || AGPL-3 || GPL-3 || GPL-2 || GPL-3 || {{No}} || AGPL-3 || GPL-3
|-
|-
| ref. pool || || [[BTCServ]] || [[Eligius]] || || || [[P2Pool]] || [[BitPenny]] || [[Slush's pool]] || [[Slush's pool]]
| ref. pool || || || [[BTCServ]] || [[Eligius]] || || || [[P2Pool]] || [[BitPenny]] || [[Slush's pool]] || [[Coinium]]
|-
|-
| website || [http://sf.net/projects/bitcoin link] || [https://ecoinpool.p2k-network.org/ link] || [http://gitorious.org/bitcoin/eloipool link] || [http://poolserverj.org/ link] || [https://github.com/jgarzik/pushpool link] || [https://github.com/forrestv/p2pool/ link] || || || [https://github.com/slush0/stratum-mining link]
| website || [http://bfgminer.com link] || [http://sf.net/projects/bitcoin link] || [https://ecoinpool.p2k-network.org/ link] || [http://gitorious.org/bitcoin/eloipool link] || [http://poolserverj.org/ link] || [https://github.com/jgarzik/pushpool link] || [https://github.com/forrestv/p2pool/ link] || || [https://github.com/slush0/stratum-mining Link] || [https://github.com/int6/hpool-server link]
|-
|-
! colspan='10' | miner protocols
! colspan='11' | miner protocols
|-
|-
! Protocol !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny || Slush || Stratum
! Protocol !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny || Stratum || hpool
|-
|-
| [[getwork]] || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}}
| [[getblocktemplate]] || {{No}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}}
|-
|-
| [[UBBP]] || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}}
| [[Stratum|StratumMP]] || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}}
|-
|-
| [[BIP 0022|getblocktemplate]] || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}}
| [[getwork]] || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}}
|-
|-
| [[BlkPrep]] || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}}
| [[BlkPrep]] || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}}
|-
|-
! colspan='9' | getwork extensions
| [[UBBP]] || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}}
|-
|-
! Extension !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! Stratum
! colspan='11' | getwork extensions
|-
|-
| hostlist || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || n/a || {{No}} || n/a
! Extension !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! hpool
|-
|-
| longpoll || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || {{Yes}} || n/a
| hostlist || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || n/a || n/a || n/a  
|-
|-
| midstate || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || n/a || {{No}} || n/a
| longpoll || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || n/a || n/a  
|-
|-
| noncerange || {{No}} || {{No}} || {{No}} || || {{Patch|uri=http://gitorious.org/~Luke-Jr/bitcoin/luke-jrs-pushpool/commit/2dd2ad48e7d21f917dae3b5d9186563c78942e38}} || {{No}} || n/a || {{No}} || n/a
| midstate || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || n/a || n/a || n/a
|-
|-
| reject-reason || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || n/a || {{No}} || n/a
| noncerange || {{No}} || {{No}} || {{No}} || {{No}} || || {{Patch|uri=http://gitorious.org/~Luke-Jr/bitcoin/luke-jrs-pushpool/commit/2dd2ad48e7d21f917dae3b5d9186563c78942e38}} || {{No}} || n/a || n/a || n/a  
|-
|-
| rollntime || {{NotAdv}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || {{Yes}} || n/a
| reject-reason || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || n/a || n/a || n/a
|-
|-
| expire=N || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || {{No}} || n/a
| rollntime || {{No}} || {{NotAdv}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || n/a || n/a
|-
|-
| submitold || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Patch}} || {{Yes}} || n/a || {{No}} || n/a
| expire=N || n/a || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || n/a || n/a || n/a
|-
|-
| switchto || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || n/a || {{No}} || n/a
| submitold || n/a || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{Patch}} || {{Yes}} || n/a || n/a || n/a  
|-
|-
! colspan='9' | getblocktemplate/BlkPrep functionality
| switchto || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || n/a || n/a || n/a
|-
|-
! Function !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush
! colspan='11' | getblocktemplate/BlkPrep functionality
|-
|-
| longpoll || {{No}} || n/a || {{Yes}} || n/a || n/a || n/a || n/a || n/a
! Function !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
|-
| noncerange || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a
| longpoll || n/a || {{No}} || n/a || {{Yes}} || n/a || n/a || n/a || n/a || n/a || n/a
|-
|-
| proposal || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a
| noncerange || n/a || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a || n/a
|-
|-
| serverlist || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a
| proposal || n/a || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a || n/a
|-
|-
! colspan='9' | getblocktemplate/BlkPrep variations
| serverlist || n/a || {{No}} || n/a || {{No}} || n/a || n/a || n/a || n/a || n/a || n/a
|-
|-
! Variation !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush
! colspan='11' | getblocktemplate/BlkPrep variations
|-
|-
| coinbase/append || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || {{Yes}} || n/a
! Variation !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
|-
| coinbase (set) || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a
| coinbase/append || n/a || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || {{Yes}} || n/a || n/a
|-
|-
| generation || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || {{No}} || n/a
| coinbase (set) || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
| share/coinbase || n/a || n/a || || n/a || n/a || n/a || || n/a
| generation || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || {{No}} || n/a || n/a
|-
|-
| share/merkle || n/a || n/a || {{No}} || n/a || n/a || n/a || || n/a
| share/coinbase || n/a || n/a || n/a || {{Yes}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
| share/truncate || n/a || n/a || {{No}} || n/a || n/a || n/a || || n/a
| share/merkle || n/a || n/a || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
| time/increment || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || || n/a
| share/truncate || n/a || n/a || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
| time/decrement || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || || n/a
| time/increment || n/a || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
| txns/add || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a
| time/decrement || n/a || {{Yes}} || n/a || {{Yes}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
| txns/remove || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a
| txns/add || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
| prevblock || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a
| txns/remove || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
! colspan='10' | share targets
| prevblock || n/a || {{Yes}} || n/a || {{No}} || n/a || n/a || n/a || || n/a || n/a
|-
|-
! Feature !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! Stratum
! colspan='11' | stratum functionality
|-
|-
| default || network || 1 || 1 || 1 || 1 || 1 || 8 || 1 || 1
! Function !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
|-
| config || {{No}} || || {{Yes}} || || {{No}} || || || || {{Yes}}
| job freq || variable || n/a || n/a || 55s || n/a || n/a || || n/a || 30s || configurable
|-
|-
| dynamic || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || || || || {{Yes}}
| transparency || {{No}} || n/a || n/a || {{Yes}} || n/a || n/a || || n/a || {{No}} || n/a
|-
|-
! colspan='10' | work generation
| resume || {{No}} || n/a || n/a || {{No}} || n/a || n/a ||  || n/a || {{No}} || n/a
|-
|-
! Feature !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! Stratum
| reconnect || {{No}} || n/a || n/a || {{No}} || n/a || n/a ||  || n/a || {{No}} || n/a
|-
|-
| getwork || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}}
! colspan='11' | share targets
|-
|-
| ntime roll || {{No}} || {{No}} || {{No}} || || {{Patch|uri=http://gitorious.org/~Luke-Jr/bitcoin/luke-jrs-pushpool/commits/ntimes}} || {{Yes}} || {{No}} || {{No}} || {{Yes}}
! Feature !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
|-
| getmemorypool || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}}
| default || 1 || network || 1 || 1 || 1 || 1 || 1 || 8 || 1 || 1
|-
|-
| getblocktemplate || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}}
| config || {{Yes}} || {{No}} || || {{Yes}} || || {{No}} || || || {{No}} ||
|-
|-
| coinbaser || {{No}} || {{Yes}} || {{Yes}} || || {{No}} || {{No}} || || || {{Yes}}
| dynamic || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || || || {{No}} ||
|-
|-
| gotwork || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || || {{No}} || {{No}}
! colspan='11' | work generation
|-
|-
| setworkaux || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || || {{No}} || {{No}}
! Feature !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! hpool
|-
|-
| getauxblock || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || || {{No}} || {{No}}
| getwork || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{Yes}}
|-
|-
| extranonce rolling || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || || {{No}} || {{Yes}}
| ntime roll || {{Yes}} || {{No}} || {{No}} || {{No}} || || {{Patch|uri=http://gitorious.org/~Luke-Jr/bitcoin/luke-jrs-pushpool/commits/ntimes}} || {{Yes}} || {{No}} || {{No}} || {{No}}
|-
| getmemorypool || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}}
|-
| [[getblocktemplate]] || {{Yes}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}}
|-
| coinbaser || {{No}} || {{No}} || {{Yes}} || {{Yes}} || || {{No}} || {{No}} || || {{No}} || {{No}}
|-
| gotwork || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || || {{No}} || {{No}}
|-
| setworkaux || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || || {{No}} || {{No}}
|-
| getauxblock || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{Yes}} || || {{No}} || {{No}}
|-
| StratumMP || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}}
|-
|-
|title='merged-mining getmemorypool'| MM gmp
|title='merged-mining getmemorypool'| MM gmp
| {{No}} || {{Yes}} || {{No}} || || {{No}} || {{No}} || ||
| {{No}} || {{No}} || {{Yes}} || {{No}} || || {{No}} || {{No}} || || {{No}} || {{No}}
|-
| full node || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}}
|-
|-
| full node || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || {{No}} || {{Yes}} ||
! colspan='11' | account management
|-
|-
! colspan='9' | account management
! Feature !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Stratum !! hpool
|-
|-
! Feature !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush
| multiuser || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}}
|-
|-
| multiuser || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}}
| explicit users || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{No}} || {{Yes}}
|-
|-
| explicit users || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || ||
| anon users || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || || {{Yes}} || {{Yes}}
|-
|-
| anon users || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || ||
| explicit workers || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{No}} || {{Yes}}
|-
|-
| explicit workers || {{Yes}} || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{No}} || ||
| anon workers || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || || {{Yes}} || {{Yes}}
|-
|-
| anon workers || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || ||
| saved worklog || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || || || {{Yes}}
|-
|-
| saved worklog || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || {{No}} || ||
| saved sockets || {{No}} || {{No}} || || {{Yes}} || || {{No}} || {{No}} || || {{No}} || {{No}}
|-
|-
| saved sockets || {{No}} || || {{No}} || || {{No}} || {{No}} || ||
| share logging || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || || {{Yes}}
|-
|-
| share logging || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}}
| invalid logging || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || || {{Yes}}
|-
|-
| invalid logging || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || ||
! colspan='11' | databases
|-
|-
! colspan='9' | databases
! Database !! BFGMiner !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! hpool
|-
|-
! Database !! bitcoind !! ecoinpool !! Eloipool !! PoolServerJ !! pushpool !! p2pool !! BitPenny !! Slush !! Stratum
| couchdb || {{No}} || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || ||{{No}} || {{No}}
|-
|-
| couchdb || {{No}} || {{Yes}} || {{No}} || {{No}} || {{No}} || {{No}} || ||{{No}} || possible
| mysql || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{Yes}} || {{Yes}}
|-
|-
| mysql || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{Yes}} || possible
| plaintext || {{Yes}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || ||{{No}} || {{No}}
|-
|-
| plaintext || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || ||{{No}} || possible
| postgres || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || ||{{No}} || {{No}}
|-
|-
| postgres || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || ||{{No}} || possible
| rrd || {{No}} || {{No}} || || {{No}} || || {{No}} || {{Yes}} || || {{No}} || {{No}}
|-
|-
| rrd || {{No}} || || {{No}} || || {{No}} || {{Yes}} || ||{{No}} || possible
| sqlite || {{No}} || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || || {{No}} || {{No}}
|-
|-
| sqlite || {{No}} || {{No}} || {{Yes}} || {{Yes}} || {{Yes}} || {{No}} || ||{{No}} || possible
| redis || {{No}} || || || || || || || || || {{Yes}}
|}
|}


<references/>
<references/>

Latest revision as of 21:59, 7 November 2014

information
Info BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
language C C++ Erlang Python3 Java C Twisted C++ Twisted node.js
license GPL-3 MIT GPL-3 AGPL-3 GPL-3 GPL-2 GPL-3 No AGPL-3 GPL-3
ref. pool BTCServ Eligius P2Pool BitPenny Slush's pool Coinium
website link link link link link link link Link link
miner protocols
Protocol BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
getblocktemplate No Yes No Yes No No No No No No
StratumMP Yes No No Yes No No No No Yes Yes
getwork Yes Yes Yes Yes Yes Yes Yes No No Yes
BlkPrep No No No No No No No Yes No No
UBBP No No No No No Yes No No No No
getwork extensions
Extension BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Slush hpool
hostlist No No No No No No No n/a n/a n/a
longpoll No No Yes Yes Yes Yes Yes n/a n/a n/a
midstate No No Yes Yes No No No n/a n/a n/a
noncerange No No No No Patch No n/a n/a n/a
reject-reason Yes No Yes Yes Yes Yes No n/a n/a n/a
rollntime No Yes[1] Yes Yes Yes Yes Yes n/a n/a n/a
expire=N n/a No Yes Yes Yes Yes Yes n/a n/a n/a
submitold n/a No Yes Yes No Patch Yes n/a n/a n/a
switchto No No No No No No No n/a n/a n/a
getblocktemplate/BlkPrep functionality
Function BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
longpoll n/a No n/a Yes n/a n/a n/a n/a n/a n/a
noncerange n/a No n/a No n/a n/a n/a n/a n/a n/a
proposal n/a No n/a No n/a n/a n/a n/a n/a n/a
serverlist n/a No n/a No n/a n/a n/a n/a n/a n/a
getblocktemplate/BlkPrep variations
Variation BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
coinbase/append n/a Yes n/a Yes n/a n/a n/a Yes n/a n/a
coinbase (set) n/a Yes n/a No n/a n/a n/a n/a n/a
generation n/a Yes n/a No n/a n/a n/a No n/a n/a
share/coinbase n/a n/a n/a Yes n/a n/a n/a n/a n/a
share/merkle n/a n/a n/a No n/a n/a n/a n/a n/a
share/truncate n/a n/a n/a No n/a n/a n/a n/a n/a
time/increment n/a Yes n/a Yes n/a n/a n/a n/a n/a
time/decrement n/a Yes n/a Yes n/a n/a n/a n/a n/a
txns/add n/a Yes n/a No n/a n/a n/a n/a n/a
txns/remove n/a Yes n/a No n/a n/a n/a n/a n/a
prevblock n/a Yes n/a No n/a n/a n/a n/a n/a
stratum functionality
Function BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
job freq variable n/a n/a 55s n/a n/a n/a 30s configurable
transparency No n/a n/a Yes n/a n/a n/a No n/a
resume No n/a n/a No n/a n/a n/a No n/a
reconnect No n/a n/a No n/a n/a n/a No n/a
share targets
Feature BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
default 1 network 1 1 1 1 1 8 1 1
config Yes No Yes No No
dynamic No No No Yes No No No
work generation
Feature BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Slush hpool
getwork Yes No No No Yes Yes No No No Yes
ntime roll Yes No No No Patch Yes No No No
getmemorypool No No Yes Yes Yes No Yes No No No
getblocktemplate Yes No No Yes No No No No Yes Yes
coinbaser No No Yes Yes No No No No
gotwork No No No Yes No No No No No
setworkaux No No No Yes No No No No No
getauxblock No No No No Yes No Yes No No
StratumMP Yes No No No No No No No No No
MM gmp No No Yes No No No No No
full node No Yes No No No No No Yes No No
account management
Feature BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Stratum hpool
multiuser Yes No Yes Yes Yes Yes Yes Yes Yes Yes
explicit users No Yes Yes Yes Yes Yes No No Yes
anon users Yes No Yes Yes Yes Yes Yes Yes Yes
explicit workers No Yes Yes Yes Yes Yes No No Yes
anon workers Yes No Yes Yes Yes Yes Yes Yes Yes
saved worklog No No Yes Yes Yes No No Yes
saved sockets No No Yes No No No No
share logging Yes No Yes Yes Yes Yes Yes Yes Yes
invalid logging No No Yes Yes Yes Yes No Yes
databases
Database BFGMiner bitcoind ecoinpool Eloipool PoolServerJ pushpool p2pool BitPenny Slush hpool
couchdb No No Yes No No No No No No
mysql No No Yes Yes Yes Yes No Yes Yes
plaintext Yes No Yes Yes Yes Yes Yes No No
postgres No No Yes Yes Yes Yes No No No
rrd No No No No Yes No No
sqlite No No No Yes Yes Yes No No No
redis No Yes
  1. Supported, but not advertised