top | item 15457230

Byzantium Hard Fork Announcement

171 points| joshschreuder | 8 years ago |blog.ethereum.org

85 comments

order
[+] runeks|8 years ago|reply
> Delay of the ice age / difficulty bomb by 1 year, and reduction of block reward from 5 to 3 ether

I wonder if the planned switch to proof-of-stake is ever going to happen.

In any case, what's the point of continuously postponing a pre-programmed difficulty bomb (via a hard for), when miners can just remove this part from the code and continue with that fork if they wish? Because of this, it seems like it doesn't do much difference compared to just switching to PoS via a hard fork whenever it's ready. I mean, if miners really want to continue with PoW, removing those couple of lines, that define the difficulty time bomb, from the Ethereum code surely won't be a problem, right?

[+] SimonPStevens|8 years ago|reply
The preprogrammed difficulty bomb is not to stop people who want to intentional stay on the old fork. It's to stop the old fork winning consensus by default due to people who don't actively upgrade.

Pushing through protocol changes could be hard if everyone who takes the default action of doing nothing is counted as a vote against any protocol change. I think we see this with bitcoin where change is very conservative and slow because any change has to gain enough support to be actively upgraded by a majority.

The difficulty bomb just means that if there is ever disagreement about a protocol change, everyone will have to actively choose a side rather than the 'no' side getting all the non-active default votes.

It basically just means that changes can be done faster.

[+] DennisP|8 years ago|reply
They just released the fourth proof of concept for proof of stake, they've simplified the design so it's not much more complicated to implement than proof of work, and they've got some formal proofs of its properties. They're also working on a PoC for the initial sharding design. Here's the latest dev roundup:

https://blog.ethereum.org/2017/10/09/roundup-6/

[+] ojr|8 years ago|reply
you also need a developer ecosystem, I prefer any solution, that is fast, secure, and has low fees
[+] meirelles|8 years ago|reply
IMHO such planned improvements shouldn't be called hard forks, it's a kind misleading for folks outside cryptocurrencies.
[+] barkingcat|8 years ago|reply
But it is a hard fork, termed that way by the organization that is the custodian of the ethereum network. It is only misleading if people outside cryptocurrencies misrepresent what a hard fork means.
[+] jackschultz|8 years ago|reply
Very much agree. Hard fork has the implication of people disagreeing to the point where two things go in the opposite direction. Whereas this is just improvement for the future. Using the term hard fork is fine, but throw "update" in the phrase to make it sound positive.
[+] pietjepuk88|8 years ago|reply
This is quite clear terminology in cryptoworld, although I can understand why people are a bit confused with the events that unfolded in August. A hard fork is any fork where new nodes produce blocks that old nodes do not accept (and vice versa). A soft fork is one where new nodes produce blocks that old nodes accept, but not the other way around (e.g. new nodes reject blocks made by old nodes). That's it.

So this _is_ a hard fork, albeit not a very contentious one. And it _will_ result in a chain split, with the minority chain probably having low activity/worth due to (1) lack of support (2) the ice age which will increase block times to slowly kill it (and that it itself has to be hard forked to stay alive).

[+] wyager|8 years ago|reply
“Hard fork” has a precise technical definition.
[+] siliconviking|8 years ago|reply
Could this result in ETH splitting up into two currencies again, like it did last year? If so, there will be tax consequences / realized gains for those who sell out of the version they don't want to hold... further complicating things.
[+] quirkot|8 years ago|reply
Agreed, "schism" is a better term in this instance
[+] Gaelan|8 years ago|reply
What’s this about an “ice age”?
[+] onestone|8 years ago|reply
The Ethereum "ice age" is a mechanism to ensure smooth transition to future planned hard forks. By tweaking the difficulty adjustment formula to artificially increase block times after some time (the so called "difficulty bomb") it makes mining on the old chain unprofitable, and incentivizes everyone to move to the/a new one. The general idea is to prevent extreme conservatism and stagnation w.r.t. hard forks, as we are seeing in Bitcoin.
[+] Galaxeblaffer|8 years ago|reply
As far as I understand there's a build in ice age/difficulty bomb every year so that clients that don't follow the hard fork will essentially stop working. This incentivizes/forces clients to update and also effectively minimizes the chance of a chain split where some group would just keep running on the old chain. If someone wants to make a chain split, they will have to fork too
[+] doctoboggan|8 years ago|reply
The ice age is a drastic increase in difficulty that was planned at launch to force the developers to release a proof of stake algorithm. The idea was that no one would want to actually switch to a proof of stake when the time came (miners would lose all their profit, and miners have a lot of power - see current bitcoin situation)

To convince early adopters that there would actually be a switch to proof of stake the ice age was conceived. The ice age can be delayed however as we see here (this isn't the first time its been delayed either)

Switching from proof of work to proof of stake will probably be hard to pull off without disruption.

[+] andrethegiant|8 years ago|reply
Do you need to do anything if you own ETH?
[+] g09980|8 years ago|reply
No. Node owners will upgrade, including exchanges.
[+] redbeard0x0a|8 years ago|reply
Update your wallet (if you use Mist or Wallet) before making any transactions.

It is an expected fork, basically an upgrade to the network that isn't going to result in a new coin (in practice - technicalities excluded.)

[+] ShabbosGoy|8 years ago|reply
Can anyone explain what "proof of stake" actually is? My understanding is that it's a virtualized/simulated proof of work system.
[+] Lon7|8 years ago|reply
In proof of stake a single node decides what the next block added to chain is. This node gets the block reward and any transaction fees. They don't have to do any calculations, they simply get to decide, according to a set of rules, which transactions are in the next block. (Ethereum complicates this a bit by having multiple nodes "bet" which blocks will be accepted, instead of just one node choosing the block)

In order to decide who gets to be this node, people Stake coins. The probability that you are the chosen node is proportional to the number of coins you have staked. If you are chosen, and you do something against the rules, like double spend coins and try and add this to the next block, then you lose your staked coins.

So instead of rewards being proportional to hashing power, they are proportional to staked coins.

This is still being tested, but it's going pretty well.

[+] aidenn0|8 years ago|reply
"Proof of work" proves that you have performed some calculations. "Proof of stake" proves that you have a certain number of tokens.

[edit] The whole idea of each is to make sock-puppeting when voting on the truth unprofitable.

With the first, you need a near majority of the compute power in the network to have people believe your "lie" with the second you need a near majority of the coins in the network to do so.

[edit2]

Imagine that banks don't exist, instead everyone writes down every transaction that happens. Then at the end of the day we all get together in the village square and vote on who has what money. This would make it so that no minority of the village can steal money from anyone else.

We can't do that with bitcoin &c. because how do you prevent one person from just running a billion bitcoin clients and voting all the money to themselves? So instead bitcoin (very roughly speaking) requires you to prove that you have done some work to get to vote on what the ledger looks like. This is proof of work. If instead it were "one dollar, one vote" that would be proof of stake.

[+] lend000|8 years ago|reply
In theory, it means that if minerA has 100 coins, and minerB has 1 coin, minerB will need 100x the hash power to mine the same amount of blocks as minerA on average. Not sure how the implementation is done in Ethereum, but I imagine it involves easier challenges if you sign with a wallet that contains X coins.
[+] ecesena|8 years ago|reply
Will this lead to a new coin, or is everybody in agreement this time?

Also, what's the plan for ETC, will that also hard fork?

[+] ecesena|8 years ago|reply
Edit: I’m getting downvoted and don’t understand why. I’m genuinely trying to get more info, not complaining/joking or anything else.
[+] adewinter|8 years ago|reply
> After the fork, eth.getTransactionReceipt(…) will return a status field. The status field has a value of 0 when a transaction has failed and 1 when the transaction has succeeded.

I wonder why they chose to do it the wrong way around...

[+] tyleraldrich|8 years ago|reply
It's a status field, not an error code. 0 = False, 1 = True seems like the right way to do things.
[+] teekert|8 years ago|reply
Hard Forks are the new ICOs. Well, after reading a bit better, this is different, it's unlike BCC and BCG but a change in protocol of the main branch.
[+] redbeard0x0a|8 years ago|reply
Yes, technically it is a Hard Fork (since that is how the code works). But in practice, it is just a network and feature update to Ethereum.
[+] Kelab|8 years ago|reply
Hopefully we wont see ethereum gold

Steem blockchain hardfork 19 times monero hardfork every 6 months both are decentralize no vitalik no problem

[+] tfha|8 years ago|reply
A hard fork with no replay protection, which means that legacy systems which do not upgrade will be vulnerable to sending too much money to third parties. The ethereum devs have chosen to introduce a vulnerability that forces people to upgrade their systems.

4 days! This announcement was made 4 days before the fork is introduced??? Everyone in the whole ecosystem has 4 days to upgrade it be exposed to a vulnerability. If you are running special code or your own client, you have to adjust it for a new block reward, a new script primitive, a difficulty algorithm, and stuff they are literally calling mathemagic.

I don't see how this is responsible development.

[+] luka-birsa|8 years ago|reply
Oh come on. Stop FUDing.

1. The fact that there is a hard fork coming has been known for months if not years.

2. Developers have notified the community well in advance and content of the hardfork has been discussed with all key players (ex: reward and difficulty bomb).

3. The development decisions are public as is the process - try searching for live streams of developer meetings where Vitalik and others discuss direction in very democratic fashion. I'm not even interested in those and I came across - funny that you're not aware of the existence.

There is a stark contrast between Eth and BTC where constant bickering is the norm.

[+] redbeard0x0a|8 years ago|reply
We have known about this Hard Fork has been coming for months now. It has been discussed all over the place. This isn't a Hard Fork like the Bitcoin / Bitcoin Cash fork (or Ether Classic). This is the expected change to the network to release new features and another step towards PoS.
[+] heliumcraft|8 years ago|reply
- This update was announced almost 2 years ago from the very beginning - Multiple Discussions in EIPs - Multiple public dev meetings, with youtube recordings, discussions, etc..
[+] cko|8 years ago|reply
I believe the hard fork was a known thing in the community for a while now.

I had wanted to jump on the ETH hype train and almost bought a bunch but these planned forks make the platform seem very “centralized.”

[+] barkingcat|8 years ago|reply
It is only a 4 day announcement to you because you chose not to be informed. This change has been discussed and announced for months and development on the features have been planned and discussed for even longer than that.

Just because you chose to not read the announcements doesn't mean it wasn't announced.

[+] g09980|8 years ago|reply
FWIW this has been a long while in the making and not a surprise to anyone
[+] Hermel|8 years ago|reply
Maybe it is not responsible, but it is certainly agile. :)