Questions tagged [mining-theory]
Questions about the function, reason for, and underlying concepts of mining.
78
questions
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?
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.
12
votes
2
answers
2k
views
Mining Monero with Pencil and Paper
People have successfully performed SHA-256 hashing with pencil and paper
If I wanted to perform the CryptoNight PoW by hand how would I do so?
Are there any PoW instructions that a human with a ...
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)?
9
votes
4
answers
5k
views
Why does Monero use proof of work?
Why does Monero use proof of work instead of something that saves electricity like proof of stake?
Have there been any serious to abandon PoW for PoS at some point similar to the plan of Ethereum ...
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 ...
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 ...
8
votes
2
answers
4k
views
What is actually happening when you pool mine? What is a share? [duplicate]
When I connect to a miner, I recieve a 'job', process that 'job', and send back 'shares'. Somehow this means that I earn Monero for my investment in GPUs and electricity.
What is actually happening ...
7
votes
2
answers
1k
views
How do full nodes vs miners secure the network differently?
If I run a full node I am supposedly contributing to network security by keeping a copy of the blockchain
If I mine (via pool or solo) I contribute to the network through verification of blocks
How ...
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 ...
7
votes
1
answer
101
views
Miner publishes a block to the network with a lag
I just noticed that a pool has "retained" a new block for quite a long time. See snapshot below where the block was found 3 minutes ago but still not pushed to the network (my own node was not seeing ...
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 ...
6
votes
3
answers
177
views
After major coin issuance, what must the minimum XMR price be to incentivize network security?
I'm curious about the tail emission and transaction fees after major coin issuance. What is the minimum value that 1 XMR must sustain as an incentive for miners to continue maintaining network ...
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 ...
6
votes
1
answer
164
views
Could (merge) mining provide a vector for deanonymization?
With the recent news that Digitalnote (XDN) is implementing merge mining in an effort to boost the hashrate by basically piggybacking off of Monero, I was wondering if this could lead to some leakage ...
5
votes
2
answers
563
views
What happens as monero network hash rate decreases
I've noticed the network hashrate has decreased, does that mean anything for overall monero future.
What happens if the network hashrate gets too low? What level is dangerously low?
Just wondering, ...
5
votes
1
answer
385
views
What stops the miner or the pool owner from cheating?
Jafar the malevolent pool owner checks for solved blocks, any only allows a percentage to go to the pool bounty, and the remainder going to his personal secret bounty. To the miner, it is ...
5
votes
1
answer
436
views
How can I compile a mining software for my mac computer that uses an NVIDIA GPU?
Please, don't ask me why.
I have a computer that runs OS X on it with a NVIDIA GPU card. I would like to compile my mining software for GPU mining, but I don't find any info at all about this on the ...
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 ...
5
votes
1
answer
799
views
Formulas for calculating current target and difficulty
I'm looking for formulas on how Monero/CryptoNight/Keccak1600 are calculating difficulty and current target.
E.g. something like:
max_target =?
current_target = f(max_target, blockrate) //some ...
4
votes
3
answers
8k
views
How many hashes are needed to solve a Monero block of difficulty 1?
For example, for ZCash, it takes, on average, 8192 hashes (aka "solutions") to solve a block of difficulty 1. That number is determined in the source code by a 256-bit target threshold (...
4
votes
1
answer
2k
views
What's the difference between the CryptoNightR and RandomX algorithms?
My understanding is that CryptoNightR randomly creates different calculations for each block, and that RandomX does the same, but using a system where any bytecode can be translated into a calculation....
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 ...
4
votes
1
answer
337
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 ...
4
votes
1
answer
382
views
How do I figure out how much a share is worth in the PPLNS world?
I'm trying to figure out how much accepted shares are worth, however small, in a mining pool, situation, specifically of a PPLNS scheme. What is the formula to figure how what a specific share is ...
3
votes
1
answer
146
views
Why does mining generate new coins on a fresh testnet?
So far I thought that mining is the process, when the network verifies transactions. When a transaction is verified, it gets added to the blockhain. In other words, a new block has been found. Then ...
3
votes
2
answers
185
views
Does a node that is more geographically centered in the Monero network have a higher chance of mining a block?
As nodes are in competition with each other over who mines the next block first, does geography play a role in that competition? Would a 100 KH/sec mining pool located in, for example, Plettenberg Bay,...
3
votes
1
answer
1k
views
What are the bandwidth and latency requirements of a miner? What is the total data usage per week?
If I were to run a standard 6-GPU miner, what would be the expected data usage, bandwidth and latency requirements? Is this something that could feasibly by run of a cheap 4G plan?
3
votes
1
answer
263
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:
...
3
votes
1
answer
148
views
Steps to generate a job for miners using a mining pool
I'm working on building a mining pool from scratch and it'd be really helpful if someone explained the steps to generate a job for miners. Let's say I have 10 miners connected to my pool, what are the ...
3
votes
1
answer
2k
views
Is it private pool mining efficient?
I have several machines ready to mine. Is it more efficient to setup one machine as the central "pool"(e.g. with a software like this) and connect other machines/miners to it or is it more efficient ...
3
votes
1
answer
346
views
What is the difference between an orphaned block and a alternative block?
I see alternative blocks reorganizing the blockchain in monerod, but my mining pool's orphaned block doesnt show.
3
votes
1
answer
182
views
Do coins mined per day scale linearly with computing power?
In other words, if I double my number of video cards, should I expect twice as many coins mined per unit time? From what I can gather, coins are rewarded in a winner-take-all fashion, so if you have ...
3
votes
2
answers
466
views
Are mining pools shares based on prescribed difficulty or the actual difficulty you hash a block with?
I'm mining Monero as part of a pool (specifically this pool -- https://mixpools.org/xmr/). I'm using a CryptoNoter package to do the mining. The pool will send back work taht looks like
{"data":"{"...
3
votes
1
answer
104
views
What does the "hashes" field mean in an authentication message received from a pool?
I'm still trying to get a handle on how all this pool mining stuff works so I decided to use this guy's project -- https://github.com/cryptonoter/CryptoNoter/ to give it a whirl. In particular I ...
3
votes
0
answers
192
views
A Miners Future [closed]
I want to support the Monero network and eventually fill a warehouse with miners. Will there ever be a point where the reward for mining is no longer justifiable? For example, before BitCoin split, ...
2
votes
1
answer
864
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, ...
2
votes
2
answers
6k
views
What are the benefits of restricting difficulty while mining?
Virtually all the mining pools I have seen specify a few ports with differing initial difficulties. The difficulty adjusts automatically according to your hash power. I notice that monerohash now ...
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.
2
votes
1
answer
1k
views
How are Monero blocks found and confirmed? (solo mining)
In case of solo mining - how are Monero blocks found and confirmed? If using monerod - let's say solo mining is started with start_mining somewalletaddress threadcount. What is the principle of block ...
2
votes
3
answers
961
views
How to know when I would get any profit by Monero mining program?
I am an absolutely newb to Monero and Blockchain.
I download the Monero GUI program from https://getmonero.org/downloads/ and run on my windows system.
After sync all block to my local, I started to ...
2
votes
1
answer
199
views
Why are only 8 bytes of the hash compared with the target?
This is the line in xmr-stak where the hash is compared to the target:
if (*piHashVal < oWork.iTarget)
executor::inst()->push_event(ex_event(result, oWork.iPoolId));
However, if you look above,...
2
votes
1
answer
467
views
C/C++ - What is nonceptr in scanhash_cryptonight function?
This is a C/C++ programming question related to CPU mining. In the source code for CPU miners wolf-xmr-miner, cpuminer-multi et al there is a function called scanhash_cryptonight that has this the ...
2
votes
2
answers
819
views
What is so different about RandomX from other attempted ASIC-resistant mining algorithms?
I read that the original Cryptonight hashing algorithm was optimized for the L3 cache of a modern CPU, giving CPUs as large of an edge as possible. I've also heard that RandomX effectively turns a ...
2
votes
2
answers
278
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 (...
2
votes
1
answer
886
views
Do cryptonight hash speeds mirror scrypt and SHA-256 hash speeds?
There are various websites that tabulate SHA-256 & scrypt hash speeds of various hardware. I wonder how these correspond to crytonight hash speeds. Are they correlated? Or does the correlation ...
2
votes
1
answer
829
views
Understanding block reward calculation
I've read this explanation of how block rewards are calculated. But I fail to apply it in practice. Let's take block #1233057 as an example:
The base reward is 8.8005 (which matches the result of the ...
2
votes
1
answer
296
views
How does a Monero pool confirm/reject a submitted nonce?
I'm trying to get a handle on how the protocol works between Monero miners and pools. Although I've looked at Stratum, the rules seem slightly different with Monero mining. For example, I'm using a ...
2
votes
1
answer
150
views
Keep mining to replace an already published block
If two miners find a valid block for the same height, the block with the largest difficulty is selected and the other one is rejected by the network (orphaned), regardless of their discovery timestamp....
2
votes
1
answer
522
views
How does nicehash perform share validation?
I'm talking about two services: NiceHash and MiningRentals and CryptonightV1 algorithm (which they call CryptonightV7), for example.
Let's suppose someone trying to fool one of them and:
Miner (...