From 5924ee8f82fd860f47787238824d76abb99cd5de Mon Sep 17 00:00:00 2001 From: autistic-symposium-helper <138340846+autistic-symposium-helper@users.noreply.github.com> Date: Fri, 6 Dec 2024 13:24:46 -0800 Subject: [PATCH] eip-7702: a technical deep dive, by lightclient (2024) --- .../ethereum/eips_and_updates/pectra.md | 64 ++++++++++++++++--- 1 file changed, 54 insertions(+), 10 deletions(-) diff --git a/blockchains/ethereum/eips_and_updates/pectra.md b/blockchains/ethereum/eips_and_updates/pectra.md index f7142c6..205771a 100644 --- a/blockchains/ethereum/eips_and_updates/pectra.md +++ b/blockchains/ethereum/eips_and_updates/pectra.md @@ -1,4 +1,4 @@ -## [DRAFT] security considerations for **[pectra](https://eips.ethereum.org/EIPS/eip-7600)** (q1/25) +## [DRAFT] security considerations for **[pectra](https://eips.ethereum.org/EIPS/eip-7600)** (early 2025)
@@ -8,19 +8,27 @@
+--- + * βœ…πŸ”πŸ€πŸ‹πŸ»β€β™€οΈ **[eip-6110: supply validator deposits on chain, by m. kalinin et al.](https://eips.ethereum.org/EIPS/eip-61100)** - faster for validators to deposit their eth (12 hours -> 30 min) + - remove the need for deposit voting from the cl, reducing the complexity of client software design - security: data complexity, dos, weak subjectivity period (tba)
-* βœ…πŸ”πŸ‹πŸ»β€β™€οΈ **[eip-7002: execution layer triggerable exits, by djrtwo et al.](https://eips.ethereum.org/EIPS/eip-7002)** +--- + +* βœ…πŸ”πŸ€πŸ‹πŸ»β€β™€οΈ **[eip-7002: execution layer triggerable exits, by djrtwo et al.](https://eips.ethereum.org/EIPS/eip-7002)** - improve ux for validators, giving them more flexibility + - allow validators to trigger exits and partial withdrawals via their execution layer withdrawal credentials (e.g., enabling more trustless staking pool designs) - security: impact on existing custody relationships, fee overpayment (tba)
-* βœ…πŸ”πŸ€ **[eip-7251: increase the `MAX_EFFECTIVE_BALANCE`, by m. neuter et al.](https://eips.ethereum.org/EIPS/eip-7251)** +--- + +* βœ…πŸ”πŸ€ **[eip-7251: increase the `MAX_EFFECTIVE_BALANCE`, by m. neuder et al.](https://eips.ethereum.org/EIPS/eip-7251)** - biggest ux improvement for validators - raise the validator stake limit (maximum effective balance from 32 -> 2048 eth, with reward compounding) - potentially can reduce the number of inactive nodes and possibly improving the network efficiency @@ -28,34 +36,62 @@
-* βœ…πŸ”πŸ€ **[eip-7549: move committee index outside attestation, by dappling](https://eips.ethereum.org/EIPS/eip-7549)** - - shuffle the consensus message, making it more efficient +--- + +* βœ…πŸ”πŸ€ **[eip-7549: move committee index outside attestation, by dapplion](https://eips.ethereum.org/EIPS/eip-7549)** + - makes the aggregation of validator votes (attestation) in blocks more efficient, reducing networking load and saving node bandwith - security: first block after fork, mutation over gossip (tba)
+--- + + * βœ…πŸ”πŸ€πŸ‹πŸ»β€β™€οΈ **[eip-7702: set eoa account code, by vub et al.](https://eips.ethereum.org/EIPS/eip-7702)** - improve the functionality of crypto wallets by giving them smart contract properties (the so called "account abstraction") + +

+ +

+ - more usability in crypto, enhanced security features: - batching (allowing multiple operations from the same user in one atomic transaction) - sponsorship (an account can pay for a transaction on behalf of another account) - - privilege de-escalation (users can sign sub-keys and given them specific permissions that are much weaker than global access to the account) + - privilege de-escalation (users can sign sub-keys, giving them specific permissions that are much weaker than global access to the account) + +

+ +

+ + - introduce a new transaction, the setcode tx, very similar to eip-1559 txs, with an addition autorization list elements ("authorizing some code to live into your account" through creating by template) + +

+ +

+ - e.g.: gas fees could be outsourced to services to pay on another erc-20 token - security: secure delegation, `tx.origin`, sponsored tx relayers, frontrunning initialization, tx propagation (tba)
+--- + * βœ…πŸ€πŸ‹πŸ»β€β™€οΈ **[eip-7742: uncouple blob count between cl and el, by a. stokes](https://eips.ethereum.org/EIPS/eip-7742)** - extend functionalities from blobs - execution layer no longer verifies data blobs’s maximum value and instead gets this value dynamically from the consensus layer
+--- + * βœ…πŸ‹πŸ»β€β™€οΈ **[eip-7685: general purpose execution layer requests, by lightclient](https://eips.ethereum.org/EIPS/eip-7685)** - boost the interoperability between the execution and the consensus layer (helping with surge demand on the execution layer) + - more efficient way to code, test, and implement execution triggered requests such as eip-6110 and eip-7002
+--- + * βœ…πŸ‹πŸ»β€β™€οΈ **[eip-2935: save historical block hashes from state, by vub et al.](https://eips.ethereum.org/EIPS/eip-2935)** - increase amount of data from past blocks that can be stored on new blocks - set the stage for verkle tree @@ -64,26 +100,34 @@
-* βœ…πŸ€ **[eip-7594: peerdas - peer data availability Sampling, by djirtwo et al.](https://eips.ethereum.org/EIPS/eip-7594)** +--- + +* βœ…πŸ€ **[eip-7594: peerdas - peer data availability Sampling, by djrtwo et al.](https://eips.ethereum.org/EIPS/eip-7594)** - allow beacon nodes to perform data availability sampling, improving how da is handled across the network - crucial feature for layer 2s (making them more efficient and cost-effective) - compare to celestia (tba)
+--- + * βœ… **[eip-7692: evm object format meta, by a. beregszaszi et al.](https://eips.ethereum.org/EIPS/eip-7692)** - add a bunch of evm object format for smart contract deployment and execution efficiency - include optimized code validation, better function handling, more efficient data access instructions
+--- + * 🟑 **[eip-7623: increase calldata cost, by t. wahrstÀtter et al.](https://eips.ethereum.org/EIPS/eip-7623)** - - increasing the calldata cost for transactions (increase the cost of calldata to 10/40 gas for transactions that do not exceed a certain threshold of gas spent on evm operations) + - increase the calldata cost for transactions (increase the cost of calldata to 10/40 gas for transactions that do not exceed a certain threshold of gas spent on evm operations) - highligting data availability
-* 🟑 **[eip-7762: increase `MIN_BASE_FEE_PER_BLOB_GAS`, by maxy riesnick](https://eips.ethereum.org/EIPS/eip-7762)** +--- + +* 🟑 **[eip-7762: increase `MIN_BASE_FEE_PER_BLOB_GAS`, by m. resnick](https://eips.ethereum.org/EIPS/eip-7762)** - speed up discovery on blob space - security: "rollups that use blobs as da will need to update their posting strategies" @@ -96,4 +140,4 @@
* **[what's going into the pectra upgrade?, by c. kim (2024)](https://www.youtube.com/watch?v=ufIDBCgdGwY)** - +* **[eip-7702: a technical deep dive, by lightclient (2024)](https://www.youtube.com/watch?v=_k5fKlKBWV4)**