Skip to main content
Share Your Experience: Take the 2024 Developer Survey
13 votes
Accepted

Where are BIPs 40 and 41?

The stratum protocol existed for a while before BIP numbers were eventually assigned. Presumably there was some discussion that they should have BIPs and so BIP numbers were assigned. Stratum started ...
Ava Chow's user avatar
  • 70.8k
9 votes
Accepted

How do I find a list of all Electrum public servers?

Electrum has a list of default servers which you can find here: https://github.com/spesmilo/electrum/blob/afa1a4d22a31d23d088c6670e1588eed32f7114d/lib/network.py#L57. However there is no list of all ...
Ava Chow's user avatar
  • 70.8k
5 votes
Accepted

Do pools distribute "jobs" to miners based on "failed" solutions which have already been submitted?

I've read simplistic descriptions of mining as simply incrementing the nonce until a solution is found, but I've also read much more detailed explanations which would imply much more is involved. Even ...
Ava Chow's user avatar
  • 70.8k
3 votes
Accepted

How is a stratum connection secured?

No, all traffic is plaintext. The connections are hijackable and attacks against this have occurred in the past where ISPs redirected hashrate to themselves.
Claris's user avatar
  • 15.4k
3 votes
Accepted

Constructing a block template to avoid mining "empty" blocks

A mining pool may provide an empty block template to its miners for block n+1 once it has been announced a valid header for block n but hasn't received yet the whole block n. This is also known as SPV ...
Antoine Poinsot's user avatar
2 votes
Accepted

What is ExtraNonce2?

The extra nonce is a value in the coinbase transaction which miners will increment in addition to incrementing the nonce in the block header so that there are more possible hashes that can be tried ...
Ava Chow's user avatar
  • 70.8k
2 votes
Accepted

Does xmr-stak use Stratum?

Yes Monero mining pools generally use the Stratum protocol for communication between the pool and the miners. However a modified version of the Stratum protocol is used. I've yet find proper ...
user44404's user avatar
  • 546
2 votes
Accepted

How does MPOS communicate with stratum server?

NOMP actually implements MPOS compatibility mode, so you can reference the data format it writes to MySQL: mposCompatibility.js. For example: Storing shares: INSERT INTO `shares` SET time = NOW(), ...
JBaczuk's user avatar
  • 7,418
2 votes
Accepted

What is a Stratum "mining.set_difficulty" command for?

The command is telling the miner not to send shares below the requested difficulty. If they were to send every difficulty 1 share for example, many pieces of hardware would be attempting to send ...
Claris's user avatar
  • 15.4k
2 votes
Accepted

reconstruct block template from stratum mining.notify

If there is only one output address, we can guess here that the reward is the 8 bytes before the 1976, No, you cannot. the 1976 is the start of the output script and can/will be different depending ...
Ava Chow's user avatar
  • 70.8k
2 votes
Accepted

Questions on Merkle root hashing for Stratum pools

The post I linked suggests that it's offloaded, but why - since wouldn't this be slower? Is the next Merkle root precomputed while hashing of the previous header is being performed by the ASIC? It is ...
Ava Chow's user avatar
  • 70.8k
2 votes

What is a correct extranonce2 value in the stratum protocol?

Turns out that there was a bug in my code and not the invalid extranonce2 value!
AhmadBenos's user avatar
2 votes

Is it better to have multiple connections with stratum protocol or a single one for the entire proxy to the pool?

Holding one connection per worker is highly inefficient and will cause a lot of traffic going through your network. The preferred way to do this is to condense all your work behind some proxy. You don'...
Davidson Souza's user avatar
1 vote
Accepted

How does stratum v2 work?

Do the individual miners [...] choose which transactions to include in their block According to the relevant website: Stratum V2 is the next generation protocol for pooled mining. It increases ...
RedGrittyBrick's user avatar
1 vote

Where on the web can I find a Stratum protocol specification document?

The team at Braiins is working on Stratum v2 in collaboration with others. There have been a number of changes made since Stratum v1 was first specified. There is a work in progress specification for ...
Michael Folkson's user avatar
1 vote

Why does it make sense for mining pools to send empty blocks to miners in Stratum v1?

Historically, block template generation has been very slow. It was faster to send an empty template with no transactions, then wait for the mining pool to create a block template with transactions, ...
Claris's user avatar
  • 15.4k
1 vote

Startum protocol extranonce2 - where the extraNonce2 comes from

Extranonce2 is generated by the miner performing the work. When a miner runs out of nonces in the block header, they can increment Extranonce2 in the coinbase transaction to be able to give themselves ...
Ava Chow's user avatar
  • 70.8k
1 vote

Stratum protocol - problem with mining.submit method

The error is pretty self explanatory: you submitted a share that does not meet the requested difficulty. The pool requires that shares you submit meet a particular difficulty. If your shares do not ...
Ava Chow's user avatar
  • 70.8k
1 vote
Accepted

Do pool operators usually set block version numbers before their clients hash?

I know that pool operators have the power to modify the actual blocks inside a transaction. Transactions don't contain blocks. Miners/pool operators can't modify any of the normal transactions ...
Ava Chow's user avatar
  • 70.8k
1 vote

How did Extranonce2_size change?

Miner sent message mining.subscribe to pool mining.subscribe("user agent/version", "extranonce1") Pool reply with [[["mining.set_difficulty", "subscription id 1"], ["mining.notify", "subscription ...
bitaps.com's user avatar
1 vote

What's an example of an ExtraNonce2 value that would be considered invalid?

There is no such a scenario. The ExtraNonce2 is part of the data that is hashed. So if a miner finds a valid nonce, he must also have the corresponding ExtraNonce2 that is part of the data that is ...
Ava Chow's user avatar
  • 70.8k
1 vote
Accepted

Do pool servers check for duplicate shares?

Yes, it is absolutely done. A well known exploit in early stratum mining pools was that they used string comparison when looking up duplicate submissions, where nonce aaaaaaaa and Aaaaaaaa are ...
Claris's user avatar
  • 15.4k
1 vote

Stratum Server Exception "[coin] is not connected"

If anyone runs into this problem then check your coin daemon settings. I got it because my client didn't find any nodes to connect to. I found a list of nodes and added them in my COIN CLIENT ...
Cray's user avatar
  • 11
1 vote

How can I earn BTCs inside my BITCOIN CORE WALLET desktop app?

Bitcoin core is a mining software. You can use rpc setgenerate to turn on the mining process. However, it is nearly impossible for a normal CPU to mine a block(to get rewards) now. At present, you can'...
mhchia's user avatar
  • 31
1 vote

Multiple coins on one server running MPOS/stratum

Have you given proper permission to www.mysite.com/MPOSSECONDSITE/public If not, use this: cd /home/username/mpos chown -R www-data templates/compile templates/cache logs
Gladiator9120's user avatar
1 vote

Does a logical mining pool assign harder and harder difficulty to the same miner?

Mining pools are already doing something like this. It's called variable difficulty, or vardiff for short. But pools don't just increase your difficulty until your mining grinds to a halt. Usually ...
Dr.Haribo's user avatar
  • 8,469
1 vote
Accepted

Does a logical mining pool assign harder and harder difficulty to the same miner?

[Edit: my previous answer was incorrect in it's explanation, I've updated it since] would the next logical thing for the pool to be to assign that miner a slightly harder bit of work to do? No. In ...
chytrik's user avatar
  • 18.3k
1 vote

Mining without full node

You can use a node in pruning mode. In Pruning mode, the node will delete the blockchain data that it no longer needs. It is still a full node as it still has to download all blocks and transactions ...
Ava Chow's user avatar
  • 70.8k
1 vote
Accepted

How do honest mining pools generally divide their rewards?

Mining pools use a system that is based on shares. Shares are blocks with proof of works for a different difficulty than the network difficulty. Mining pools will set the difficulty for a given miner ...
Ava Chow's user avatar
  • 70.8k

Only top scored, non community-wiki answers of a minimum length are eligible