Questions tagged [mining-theory]

Questions about the function, reason for, and underlying concepts of mining.

Filter by
Sorted by
Tagged with
25 votes
3 answers
8k views

What is the purpose of the tail emission?

What is the purpose of the tail emission? How does it relate to dynamic block sizes and miners penalties?
user avatar
  • 4,546
8 votes
2 answers
3k views

How does the dynamic blocksize and the dynamic fees work together in Monero?

This mechanism is unique to Monero because it's the only cryptocurrency to have both blocksize and transaction fee dictated by an algorithm, how was this achieved and what is the rationale behind such ...
user avatar
7 votes
2 answers
1k views

Are [solo] mining yield calculations like dice or playing card calculations?

If I want to know how many times I need to roll a die in order to have a given chance of seeing at least one six, I can use the formula: n = (log(1 - s))/(log(1 - p)) where n is the required number ...
user avatar
2 votes
1 answer
863 views

I'm trying to create a Python miner, can I get some guidance please?

I have been wondering how to make a Python Monero miner. I know about py-cryptonight, but does anyone know anything about how to actually code with it? I understand that cn_slow_hash is for mining, ...
user avatar
4 votes
1 answer
200 views

How is Keccak calculated in Monero?

I am reading the monero's implementation of Keccak (used as first part of slow_hash) in src/crypto/keccak.c I have found that it is a Keccak-256 (with b=1600, c=512, r=1088) and "output" of 1600 bits ...
user avatar
  • 178
1 vote
1 answer
548 views

What exactly do miners communicate with a pool?

What JSON messages are exchanged with the pool, and how does one connect to a pool? With mining.subscribe? I read somewhere that the stratum protocol that CryptoNote coins use is different to, say, ...
user avatar
16 votes
2 answers
6k views

Will Monero ever move to Proof of Stake (PoS)?

As an ecological dilemma, burning a lot of energy via PoW seems not to align with the progressive agenda of an aspiring global cryptocurrency.
user avatar
  • 259
7 votes
1 answer
2k views

How can I Mine Monero using a Processor in Memory PCIe Card?

Where can I find out more (enough) about Processor in Memory (PIM) Mining (Monero and a few suitable other Cryptocurrencys) on a PCIe Card? One example of such a Card is the Micron D480 Automata ...
user avatar
  • 356
11 votes
1 answer
309 views

Which reasons were discussed for potentially changing the proof-of-work algorithm?

Which reasons were discussed for potentially changing the proof-of-work algorithm to something else in the future (Cuckoo cycle in particular)?
user avatar
9 votes
1 answer
358 views

How can block size grow over time when miners are incentivised to keep size small?

Miners are penalised if they mine a block that is larger than a threshold. Miners can make sure that the blocks they mine don't go over that threshold in order to avoid a reward penalty (by adapting ...
user avatar
  • 2,158
6 votes
1 answer
1k views

How to Generate a Blob for PoW Hashing

The Cryptonight PoW hash function (cns008) expects an input (a blob on which to mine a new block). I know that a mining blob can easily be obtained via the monerod daemon's JSON-RPC interface by ...
user avatar
  • 125
5 votes
1 answer
374 views

Cryptonote SHA3 bigger than 64byte? (Scratchpad Initialization)

The cryptonote whitepaper says First, the input is hashed using Keccak [KECCAK] with parameters b = 1600 and c = 512. [..] That's nothing else as hashing the input with SHA3. The size of a ...
user avatar
4 votes
1 answer
336 views

How do miners attempt to avoid duplicating nonces of other miners? Do they try?

In a very general sense, most people who know about cryptocurrency mining understand that for every block in a proof-of-work blockchain there is a new "challenge" for the miners, and that challenge is ...
user avatar
3 votes
1 answer
262 views

Validate the result of a job sent by a miner

I'm implementing my own mining pool and I need to know how the result of a job obtained from a miner is validated. I looked at the snipa22's code but have a small doubt. When sending a job to miner: ...
user avatar
2 votes
2 answers
277 views

Updated dynamic fee calculation?

I'm hoping to find a current reference that explains how the dynamic block size/fee calculation works? This link has a nice explanation, but a community member on reddit suggested it was out-of-date (...
user avatar
  • 21
2 votes
1 answer
3k views

Is it possible to create a Monero miner in Python?

I would like to create a Python based Monero miner. I know that using Python for mining will likely be slow, but this is just for experimental purposes. Thanks.
user avatar
1 vote
1 answer
288 views

How can I generate the blockhashing blob for my Python miner?

I am in the works of making a pool-compatable fully python miner, and I need to know how to generate the blockhashing blob for the miner.
user avatar
0 votes
1 answer
76 views

Can pool miners update early and then the pool software will automatically ask its workers for new POW when necessary?

Many people mine Monero in a pool. Monero has recently changed its proof of work, and it is about to do so again. There may be more changes to its proof of work in the future. When miners update ...
user avatar
0 votes
1 answer
73 views

Which fork version is the py-cryptonight hash library using?

I was wondering what version the py-cryptonight library is using. For example, is it CryptoNight lite v2, CryptoNight v8, CryptoNight heavy?
user avatar