This post has been de-listed
It is no longer included in search results and normal feeds (front page, hot posts, subreddit posts, etc). It remains visible only via the author's post history.
Lots of people are asking what Homestead brings. The short answer is that it has modifications to the protocol to allow for more stability, better development, and to support future upgrades.
The long answer (from https://ethereum-homestead.readthedocs.org/en/latest/introduction/the-homestead-release.html):
Ethereum in the narrow formal sense is a suite of protocols. Homestead comes with a few backward-incompatible protocol changes, and therefore will require a hard fork. These changes that made their way through the process for Ethereum Improvement Proposal and included are:
EIP 2:
- cost for creating contracts via a transaction is increased from 21000 to 53000. Contract creation from a contract using the CREATE opcode is unaffected.
- transaction signatures whose s-value is greater than secp256k1n/2 are now considered invalid
- If contract creation does not have enough gas to pay for the final gas fee for adding the contract code to the state, the contract creation fails (ie. goes out-of-gas) rather than leaving an empty contract.
- Change the difficulty adjustment algorithm
EIP 7: DELEGATECALL: Add a new opcode, DELEGATECALL at 0xf4, which is similar in idea to CALLCODE, except that it propagates the sender and value from the parent scope to the child scope, ie. the call created has the same sender and value as the original call. This means contracts can store pass through information while following msg.sender and msg.value from its parent contract. Great for contracts which create contracts but donât repeat additional information which saves gas. See comments on EIP 7
EIP 8: devp2p Forward Compatibility compliance with the Robustness Principle Changes to the RLPx Discovery Protocol and RLPx TCP transfer protocol to ensure that all client software in use on the Ethereum network can cope with future network protocol upgrades. For older versions of an Ethereum client, updates to the network protocol werenât being accepted by older clients and would refuse communication if the hello packets didnât meet expectations. This update means all future versions of the client will accept incoming network upgrades and handshakes.
The changes have the following benefits:
- EIP-2/1 eliminates the excess incentive to create contracts via transactions, where the cost is 21000, rather than contracts, where the cost is 32000.
- EIP-2/1 also fixes the protocol âbugâ that with the help of suicide refunds, it is currently possible to make a simple ether value transfer using only 11664 gas.
- EIP-2/2 fixes a transaction malleability concern (not a security flaw, but a UI incovenience).
- EIP-2/3 creates a more intuitive âsuccess or failâ distinction in the result of a contract creation process, rather than the current âsuccess, fail, or empty contractâ trichotomy
- EIP-2/4 eliminates the excess incentive to set the timestamp difference to exactly 1 in order to create a block that has slightly higher difficulty and that will thus be guaranteed to beat out any possible forks. This guarantees to keep block time in the 10-20 range and according to simulations restores the target 15 second blocktime (instead of the current effective 17s).
- EIP-7 makes it much easier for a contract to store another address as a mutable source of code and ââpass throughââ calls to it, as the child code would execute in essentially the same environment (except for reduced gas and increased callstack depth) as the parent.
- EIP-8 makes sure that all client software in use on the Ethereum network can cope with future network protocol upgrades.
Subreddit
Post Details
- Posted
- 8 years ago
- Reddit URL
- View post on reddit.com
- External URL
- reddit.com/r/ethtrader/c...