-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -27,7 +27,7 @@ The penalty is levied to the transaction sender. Rather than raising the gas cos | |
## Specification | ||
Check failure on line 27 in EIPS/eip-2026.md GitHub Actions / Markdown LinterHeadings should be surrounded by blank lines [Expected: 1; Actual: 0; Below] [Context: "## Specification"]
Check failure on line 27 in EIPS/eip-2026.md GitHub Actions / Markdown LinterHeadings should be surrounded by blank lines [Expected: 1; Actual: 0; Below] [Context: "## Specification"]
|
||
On and after block `H`, every newly created account gets a new field `rentbalance` of type unsigned 256-bit integer. | ||
On and after block `H`, any operation that leads to the creation of a new account, deducts the amount `ACCOUNT_PREPAYMENT` from `tx.origin`. This amount is added to the `rentbalance` field of the created account. | ||
On and after block `H`, any operation that modifies an account that does not yet have `rentbalance` field, deducts the amount `ACCOUNT_PREPAYEMENT` from `tx.origin`. This amount is added to the `rentbalance` field of the modified account. This is a anti-hoarding measure. | ||
On and after block `H`, any operation that modifies an account that does not yet have `rentbalance` field, deducts the amount `ACCOUNT_PREPAYEMENT` from `tx.origin`. This amount is added to the `rentbalance` field of the modified account. This is an anti-hoarding measure. | ||
|
||
Operations leading to the creations of a new account: | ||
1. Creation of a non-contract account by sending non-zero ETH to an address with no associated account | ||
Check failure on line 33 in EIPS/eip-2026.md GitHub Actions / Markdown LinterLists should be surrounded by blank lines [Context: "1. Creation of a non-contract ..."]
Check failure on line 33 in EIPS/eip-2026.md GitHub Actions / Markdown LinterLists should be surrounded by blank lines [Context: "1. Creation of a non-contract ..."]
|
||
|
@@ -45,7 +45,7 @@ Prior to rent prepayments, other alternatives were considered: | |
1. In [first version of State Rent proposal](https://github.com/ledgerwatch/eth_state/blob/master/State_rent.pdf), there was no notion of extra levy upon account creation. It created a slight usability issue, where newly created contracts with 0 endowment would be evicted in the same block (when rent is introduced). It delays the benefits of the State Rent programme until the actual introduction of rent (in second or third hard-fork). | ||
Check warning on line 45 in EIPS/eip-2026.md GitHub Actions / EIP Walidatornon-relative link or image
Check warning on line 45 in EIPS/eip-2026.md GitHub Actions / EIP Walidatornon-relative link or image
|
||
2. In the [second version of State Rent proposal](https://github.com/ledgerwatch/eth_state/blob/master/State_Rent_2.pdf), there was a notion of lock-up. It is very similar to rent prepayment, with the different that lock-up would not be covering future rent payments. | ||
Check warning on line 46 in EIPS/eip-2026.md GitHub Actions / EIP Walidatornon-relative link or image
Check warning on line 46 in EIPS/eip-2026.md GitHub Actions / EIP Walidatornon-relative link or image
|
||
|
||
An alternative approach to limiting the prepayments (instead of the using `gaslimit` * `gasprice` as the limit) is to introduce a new dedicated field `prepaymenlimit` into the transaction. This field would only limit prepayments). Such approach would require changes in the transaction format, as well as changes in the user interface for transaction sender, and having two counters during the transaction execution - one for gas, and one for prepayments. | ||
An alternative approach to limiting the prepayments (instead of the using `gaslimit` * `gasprice` as the limit) is to introduce a new dedicated field `prepaymenlimit` into the transaction. This field would only limit prepayments. Such approach would require changes in the transaction format, as well as changes in the user interface for transaction sender, and having two counters during the transaction execution - one for gas, and one for prepayments. | ||
|
||
## Backwards Compatibility | ||
Check failure on line 50 in EIPS/eip-2026.md GitHub Actions / Markdown LinterHeadings should be surrounded by blank lines [Expected: 1; Actual: 0; Below] [Context: "## Backwards Compatibility"]
Check failure on line 50 in EIPS/eip-2026.md GitHub Actions / Markdown LinterHeadings should be surrounded by blank lines [Expected: 1; Actual: 0; Below] [Context: "## Backwards Compatibility"]
|
||
This change is not backwards compatible and requires hard fork to be activated. | ||
|