Stack Exchange Network

Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange

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.

0
votes
1answer
16 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
2answers
41 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
1answer
104 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
1answer
32 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 ...
1
vote
1answer
27 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
0answers
42 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
1answer
168 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 ...
0
votes
0answers
15 views

How exactly Ethereum ASICs work? [duplicate]

As far as I understand, Ethereum's mining algorithm is bottlenecked by random global memory read/writes, which is something GPU vendors specifically optimize for. As such, in a sense, GPUs are ...
3
votes
1answer
48 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?
0
votes
1answer
547 views

How Ethash works?

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
1answer
241 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
2answers
435 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 ...
2
votes
1answer
173 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
1answer
133 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
1answer
476 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 ...
1
vote
1answer
247 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 ...
5
votes
1answer
2k 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
0answers
42 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
3answers
4k 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 ...
20
votes
1answer
26k 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
1answer
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
1answer
1k 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 ...
5
votes
1answer
1k 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
0answers
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
1answer
246 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 ...
2
votes
1answer
3k 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 ...
3
votes
1answer
232 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") ...
5
votes
1answer
4k 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 ...
10
votes
1answer
4k 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
4answers
473 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 ...
4
votes
0answers
201 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
0answers
150 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
1answer
345 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
1answer
292 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
1answer
128 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 ...
44
votes
4answers
98k 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 ...
6
votes
1answer
292 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 ...
5
votes
3answers
394 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
0answers
513 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 ...
11
votes
1answer
20k views

What is a block hash?

When we look at this block - what does the first number Hash: 0xfe88c94d860f01a17f961bf4bdfb6e0c6cd10d3fda5cc861e805ca1240c58553 actually mean? How is it calculated? "Nonce" is the value that is ...
7
votes
1answer
752 views

How does Ethereum avoid mining pool centralization?

As a proof-of-work (PoW) based blockchain, how does Ethereum combat mining pool centralization, which can lead to an entity controlling the majority of hashing power?