3 ms·
> So how long is long enough? one contribution? ten? Serious question. The formal name of this is Proof Of Work (PoC). The idea is to make "mining" blocks take
by JamesLeonis 9y ago
> So how long is long enough? one contribution? ten? Serious question.
The formal name of this is Proof Of Work (PoC). The idea is to make "mining" blocks take non-trivial amount of computational work in order to forge another transaction block. When a miner finds a valid nonce, it announces it to the rest of the network so others can begin working on that chain.
When I say non-trivial amount of work, it would take my computer (nVidia 1080 @ 20MH/s) ~3.5 years to mine one Ethereum block as of now. Comparatively, the combined power in the Ethereum network (119.4 TH/s) mines blocks every 24 seconds.
Additionally, the miner that finds the correct nonce that makes a valid block is rewarded. This incentivizes each miner to keep up to date with the latest blockchain and abandon lagging branches and work.
> How does one know with certainty that work was accepted by group consensus?
Through these rewards and the large computational work involved in mining new blocks, the majority of the miners aggressively gravitate to the longest chain. That means that the longer chain continues to grow longer much faster than the other branches. It's this aggressive growth combined with the reward incentives on the longest chain that keeps the whole network honest. Why mine a block that the network won't reward you for? For the individual miner, it's in their best interests to always be working on the longest chain.
> This uncertainty seems to undermine the idea that blockchain is a trustworthy, predictable, verifiable ledger of activity if the work contributed cannot be known as reliably preserved at the time it is submitted, only later in review.
This is part of the security of the blockchain. This prevents malicious agents from pushing "valid" blocks, even if they manage to get all the dots in a row. The computational work involved in building the next block is vastly outpaced by the general network; by the time you minted you "attack" block, many many many new blocks were already minted by the network and they won't accept your block. This "consensus" keeps these attacks from happening.
However, this still can be attacked. If an agent gained control of the majority of the network computational power, then they can mine blocks faster than the honest miners, thus growing the longest chain and thus control exactly what transactions/blocks are mined. This is referred to as the 51% attack because they become the Consensus.
But, using my calculations above, I would need somewhere around ~6*10^6 nVidia 1080 cards all working for me to gain majority in the Ethereum network. So I sleep comfortably at night knowing my ETH is safe.
- jackhack 9y agoSuperb answers, very helpful! Thank you for taking the time to compose such a thoughtful response.