Questions tagged [ethash]
Ethash is Ethereum’s Proof-of-Work system which is a combination of modified versions of Dagger and Hashimoto algorithms. This new system was developed to overcome the problems prevalent in other cryptocurrencies, the major one being ASIC-resistance.
52 questions
1
vote
0
answers
32
views
Explorers have not mixhash [closed]
Why do ethereums explorer (like blockchain.com or etherscan.io) , have not mixhash in block information? Only Nonce. And why nonce in block explorer on blockchain.com is always 0?
0
votes
1
answer
186
views
Can python be used reliably as a ETH miner?
Was wondering if python can be used reliably as a ETH miner?
Searching around etherminer and others are made in C/C++
0
votes
1
answer
81
views
Properly using consensus/ethash module in go-ethereum
Traditionally, Ethereum pools used the deprecated Ethash, which is quite inconvenient to use with modern golang, specifically around the usage of Go modules. Examples of this are Sammy007's Open ...
0
votes
0
answers
335
views
Introductory sources to understand and implement Ethash mining?
I am looking for a straightforward source of article or scripts like the excellent blog post "Bitcoin mining the hard way" to understand how Ethash proof-of-work works, how DAG generation ...
1
vote
1
answer
196
views
Why is this Javascript Ethash implementation returning a wrong hash result?
I'm trying to calculate the hash result for the "light" implementation of the Etash algorithm from ethereum/ethash/js but I can't seem to get the correct result.
The expected result for ...
1
vote
1
answer
951
views
Measuring transaction latency and throughput in a multi node local private network
I'm quite new to Ethereum. I'll give a bit of context of my setup.
I have created an Ethereum private network with Ethash (PoW) as the consensus algorithm. I’m aware of the resource consumption of ...
2
votes
2
answers
1k
views
Generating cache from block_number and seed using Python
I'm trying to run Ethash algorithm from the Python-code provided over here:
https://eth.wiki/concepts/ethash/ethash, and have some troubles comparing the produced cache-file with the actual cache-file ...
1
vote
1
answer
1k
views
Why isn't my account balance changing in my private Ethereum network after successfully mining (thousands of) blocks?
I have a newly created private Ethereum "network". I have a question about my balance. In my genesis file, I have my account listed with a starting balance of ...
0
votes
0
answers
39
views
How do I unlock the Parity Ethereum Ethash prefunded account?
So i have my ethash node running with the following chainspec.json
{
"name": "Morden",
"engine": {
"Ethash": {
"params": {
"...
1
vote
1
answer
420
views
How to calculate ethereum dataset bytes?
https://github.com/ethereum/wiki/wiki/Ethash
I have compiled above code but I am not able to write the dag into a file.
Could anyone please help me on this?
I have combined all code mentioned in ...
4
votes
0
answers
145
views
what is a pseudorandom cache mentioned in ethereum yellow paper
in ethereum yellow paper it says:
"There exists a seed which can be computed for each
block by scanning through the block headers up until that
point. From the seed, one can compute a pseudorandom
...
5
votes
2
answers
2k
views
What is the difference between account nonce and block nonce?
Block and accounts both use a value called "nonce" but they seem to represent something very different.
For account I understand that the nonce is an integer quantity indicating the number of ...
0
votes
1
answer
4k
views
Block header hash calculation [duplicate]
What inputs go into the RLP and Keccak function to calculate the block header hash?
I looked up the header struct. Which of those values are fed into the RLP, Keccak? Were nonce and mixed hash left ...
0
votes
2
answers
442
views
can only change header's extra data to mine a new block? [closed]
Fix 'nonce' and 'mixDigest', only change 'extra' to mine a new block.
0
votes
1
answer
2k
views
How to calculate ethash in python?
I am trying to use ethash(hash(blockHeader),nonce) < TARGET to prove that the block was mined with at least a minimum difficulty.
Is the formula above correct?
When I try to use ehtereum.pow....
1
vote
1
answer
311
views
Hashing header "offline" python
I am trying to prove that the TransactionsRoot and the ReceiptsRoot do belong to a specific block. So that I can verify without web3 that all the transactions and receipts actually belong to this ...
2
votes
1
answer
433
views
How do I prove that transactionsroot is correct?
I have this block on Ropsten,
'difficulty': 3963642329,
'extraData': '0xd88301080f846765746888676f312e31302e31856c696e7578'),
'gasLimit': 8000000,
'gasUsed': 7987824,
'hash': '...
3
votes
0
answers
81
views
Why does a full client need to store the DAG?
The yellow paper says that miners and full clients must store the DAG dataset, but light clients can verify block headers by generating only a few necessary pages from the DAG.
It makes sense to me ...
0
votes
1
answer
577
views
Ethan, CPU miner, with stratum support
I am developing pool software for ethash coins. I use a private chain and pool software running on VMs so I need a CPU miner with stratum support that I can run on on my laptop VMs.
Currently I was an ...
3
votes
1
answer
104
views
Reduce size of .ethash directory
I'm running a private testnet miner on a VPS with only 8 GB of hard drive space. Is there some measure I can take to reduce the size of the .ethash directory?
5
votes
2
answers
2k
views
How does Ethash work?
I've looked at the wiki in search of how the information about Ethash algorithm but I did not find the answer.
Where can I find detailed information about it or can someone explain it?
2
votes
1
answer
570
views
What do Ethhash and CliqueConfig refer to in the genesis config?
I don't see any real documentaiton on what these are or to what they refer.
Here is the structure in the config file:
// Various consensus engines
Ethash *EthashConfig `json:"ethash,omitempty"`
...
2
votes
2
answers
1k
views
Verifying ethash output Ethereum block hash
On the Ethash wiki, it mentions that a 16MB verification cache can be used to verify block hashes without generating the full DAG, but there are no further details on how this is done.
What's the ...
3
votes
1
answer
414
views
How can I calculate the Ethash of a Block
Given a particular block number, how can I calculate the Ethash used by this block?
0
votes
1
answer
270
views
does the block's nonce in Ethash dependes on previous nonce?
does the algorithm of Ethash use previous nonce to calculate the nonce for the current block? If it doesn't depends, then I could implement the algorithm to run it in parallel, and then , I could find ...
0
votes
1
answer
750
views
geth mining on 32bits host (raspberry pi) memory error
My objective is to create a private testnet, and mining it on a 32bits hardware (RPi3). The memory error I keep getting during DAG generation, if Im not mistaken, is excepted if I am running it on a ...
2
votes
1
answer
638
views
What is FNV and FNV function
When I was started to explore the ethash algorithm then I found this-
FNV was used to provide a data aggregation function which is (i) non-associative, and (ii) easy to compute. A commutative and ...
6
votes
1
answer
3k
views
Why did Ethereum design Ethash instead of using an existing memory-hard hash function?
Ethereum uses the Ethash hash function for proof-of-work. It was designed specifically for this purpose by Vitalik based on previous work by Thaddeus Dryja.
The main rule they teach you in a crypto ...
1
vote
0
answers
45
views
How do the miners prove to have actually run the contract code that they claim the gas fees for? [duplicate]
How is the fact of execution of the contract bytecode in the VM proven by the miner?
Why can't a miner just say "uhm, the contract didn't do anything so I take all the gas"?
1
vote
3
answers
6k
views
12.5 Mh/s on Gigabyte HD 7950, is that normal? Shouldn't it be higher?
As the title says.
Windows 7 64bit. Gigabyte HD 7950.
I tried qtminer, ethminer and Claymore
I also tried downgrading from 16 to catalyst 15.12 as recommended.
However I can never get more than 12.5 ...
21
votes
1
answer
29k
views
Is Ethereum ASIC resistant?
I've heard that Ethereum mining is ASIC resistant since it requires memory-hard hashing algorithms. However, why can't miners buy large DRAM and devote the memory to ASIC mining? What prevents miners ...
0
votes
1
answer
1k
views
Difficulties calculating mined ETH per month
I am trying to replicate calculator for ethereum mining available at
https://www.cryptocompare.com/mining/calculator/eth
So far I got to following formula
Seconds in 1 month / (Total Hash Power MH/...
4
votes
1
answer
2k
views
Why there are two full-R23 files (DAG files) in .ethash folder?
I am using Ubuntu 14.04 and running go-ethereum in it. In the ~/.ethash/ folder, I see that there are two DAG files created when mining begins. The first one is created immediately after mining starts ...
4
votes
1
answer
2k
views
How is the 1GB dataset generated, which is used by the Ethash algorithm?
I want to understand algorithmically how the 1GB dataset is generated and how it is updated based on block data in Ethash. I also would like to see, where in the code it is implemented in Go-Etherum. ...
2
votes
0
answers
1k
views
How does Ethhash compare to mining algorithms used in other blockchains?
When it comes to mining, I'm more or less aware of how Bitcoin's simple SHA256 mining works, how Litecoin & similar attempted (and failed) to introduce ASIC-resistance with Scrypt, and how ...
2
votes
1
answer
443
views
Deleted ethash - ETH disappeared from Ethereum Wallet [duplicate]
I made a mistake and deleted ethash files from my Hard Drive and now my ETH, just 1.96 coins, has disappeared from my Ethereum Wallet. I can see the transaction details and the confirmations on the ...
3
votes
1
answer
6k
views
Does Ethereum use Ethash or KECCAK-256 (an alias to SHA3) as hash function?
Ethdoccs says that the PoW algorithm Ethereum is using is Ethash. While I was searching around for information about Ethash, I ran across this post, which indicates KECCAK is the one. So what is ...
2
votes
1
answer
364
views
What is ethash shared mode?
I red over ethash source code and saw this code:
func CreatePoW(config *Config) (pow.PoW, error) {
switch {
case config.PowFake:
glog.V(logger.Info).Infof("ethash used in fake mode")
...
6
votes
1
answer
5k
views
How is DAG related to Merkle Tree?
After reading the Ethash wiki, I kind of get DAG is something that every node can identically generate to verify the work. However I don't get how the DAG is related to Merkle Tree. Can anyone explain ...
11
votes
1
answer
7k
views
Ethash vs Equihash in terms of memory hardness?
Ethereum's Ethash was designed to be memory hard with the intention of making the mining process ASIC-resistant. Zcash's Equihash algorithm also promises the same. How do these two PoW systems compare ...
3
votes
4
answers
634
views
Private chain, two geth miner on the same machine, second miner throws "panic: ethash_full_new IO or memory error"
I am using geth 1.4.18-stable-c72f5459 on Win7.
I am starting my nodes with the following parameters:
geth.exe --datadir \work\eth\miner2 --nat none --nodiscover --networkid 1999 --mine --port 30304 ...
3
votes
0
answers
248
views
Some Ethash PoW questions
I've downloaded the Etash source code and did some test on the PoW algorithm.
In MinerAux.h, if the current.seedHash != newSeedHash, the DAG file needs to be regenerated. And the newSeedHash was set ...
3
votes
0
answers
182
views
general mathematical description of Pow algorithms
Is it possible to consider a chain of blocks as an acyclic graph,
where to add the next block (or node, if we are thinking about the blockchain as a graph), it is necessary to solve a computationally ...
4
votes
1
answer
508
views
Python bitswap // Ethash algorithm
I just started looking into the Ethash algorithm and I saw this:
s = sha3_512(header + nonce[::-1])
The thing is that here, nonce is an integer, and they used [::-1] to bitswap it from big endian to ...
2
votes
1
answer
474
views
How can i calculate curent block number?
When i use eth_getWork, i get only 3 parameters:
DATA, 32 Bytes - current block header pow-hash
DATA, 32 Bytes - the seed hash used for the DAG.
DATA, 32 Bytes - the boundary condition ("target"), 2^...
6
votes
1
answer
159
views
Support in Ethereum for PoWs algos other than Ethash
I read that Ethereum uses Ethash as proof of work algorithm. But since there are other PoWs like NeoScrypt (used by Phoenixcoin), scryptJane (used by LEOcoin).
Is it possible to use the above ...
59
votes
4
answers
192k
views
For pool mining, what exactly is a share?
Can someone please explain exactly what a share is in the context of pool mining? I have a superficial understanding of testing random nonces to find a hash under the current difficulty. I also ...
7
votes
1
answer
435
views
Can the PoW problem be changed without a hard fork?
I know that the PoW in Ethereum is based on Ethash and that some parameters are adjusted in order to maintain the average time between blocks to a certain value.
Now my question is: does the Ethereum ...
6
votes
3
answers
682
views
Is it possible to verify Ethash PoW in a contract?
Reading on EtHash, I was thinking if it is possible to verify the current Ethereum Proof Of Work by a smart contract. There is an instruction SHA3, which computes 256-bit hash, but EtHash uses 512-bit ...
4
votes
1
answer
790
views
How to use the hashimoto light algorithm in pyethash?
I have a problem with using the hashimoto light algorithm in pyethash.
I am using pyethash version 23.1 and comparing the results with ethash.run (ethashjs 0.0.7).
Using the same inputs the result ...