mirror of
https://github.com/status-im/eth2.0-specs.git
synced 2025-02-03 06:13:31 +00:00
PR feedback and make the marks italic
This commit is contained in:
parent
a547d47264
commit
b7e21d6caf
@ -48,8 +48,8 @@ Deneb is a consensus-layer upgrade containing a number of features. Including:
|
||||
|
||||
| Name | SSZ equivalent | Description |
|
||||
| - | - | - |
|
||||
| `VersionedHash` | `Bytes32` | [New in Deneb:EIP4844] |
|
||||
| `BlobIndex` | `uint64` | [New in Deneb:EIP4844] |
|
||||
| `VersionedHash` | `Bytes32` | *[New in Deneb:EIP4844]* |
|
||||
| `BlobIndex` | `uint64` | *[New in Deneb:EIP4844]* |
|
||||
|
||||
## Constants
|
||||
|
||||
@ -72,8 +72,8 @@ Deneb is a consensus-layer upgrade containing a number of features. Including:
|
||||
|
||||
| Name | Value | Description |
|
||||
| - | - | - |
|
||||
| `MAX_BLOB_COMMITMENTS_PER_BLOCK` | `uint64(2**12)` (= 4096) | [New in Deneb:EIP4844] hardfork independent fixed theoretical limit same as `LIMIT_BLOBS_PER_TX` (see EIP 4844) |
|
||||
| `MAX_BLOBS_PER_BLOCK` | `uint64(2**2)` (= 4) | [New in Deneb:EIP4844] Maximum number of blobs in a single block limited by `MAX_BLOB_COMMITMENTS_PER_BLOCK` |
|
||||
| `MAX_BLOB_COMMITMENTS_PER_BLOCK` | `uint64(2**12)` (= 4096) | *[New in Deneb:EIP4844]* hardfork independent fixed theoretical limit same as `LIMIT_BLOBS_PER_TX` (see EIP 4844) |
|
||||
| `MAX_BLOBS_PER_BLOCK` | `uint64(2**2)` (= 4) | *[New in Deneb:EIP4844]* Maximum number of blobs in a single block limited by `MAX_BLOB_COMMITMENTS_PER_BLOCK` |
|
||||
|
||||
*Note*: The blob transactions are packed into the execution payload by the EL/builder with their corresponding blobs being independently transmitted
|
||||
and are limited by `MAX_DATA_GAS_PER_BLOCK // DATA_GAS_PER_BLOB`. However the CL limit is independently defined by `MAX_BLOBS_PER_BLOCK`.
|
||||
|
@ -25,7 +25,7 @@ This is the modification of the fork choice accompanying the Deneb upgrade.
|
||||
|
||||
#### `is_data_available`
|
||||
|
||||
[New in Deneb:EIP4844]
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
The implementation of `is_data_available` will become more sophisticated during later scaling upgrades.
|
||||
Initially, verification requires every verifying actor to retrieve all matching `Blob`s and `KZGProof`s, and validate them with `verify_blob_kzg_proof_batch`.
|
||||
|
@ -50,7 +50,7 @@ The specification of these changes continues in the same format as the network s
|
||||
|
||||
#### `BlobSidecar`
|
||||
|
||||
[New in Deneb:EIP4844]
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
```python
|
||||
class BlobSidecar(Container):
|
||||
@ -66,7 +66,7 @@ class BlobSidecar(Container):
|
||||
|
||||
#### `SignedBlobSidecar`
|
||||
|
||||
[New in Deneb:EIP4844]
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
```python
|
||||
class SignedBlobSidecar(Container):
|
||||
@ -76,7 +76,7 @@ class SignedBlobSidecar(Container):
|
||||
|
||||
#### `BlobIdentifier`
|
||||
|
||||
[New in Deneb:EIP4844]
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
```python
|
||||
class BlobIdentifier(Container):
|
||||
@ -130,7 +130,7 @@ New validation:
|
||||
|
||||
###### `blob_sidecar_{subnet_id}`
|
||||
|
||||
[New in Deneb:EIP4844]
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
This topic is used to propagate signed blob sidecars, where each blob index maps to some `subnet_id`.
|
||||
|
||||
@ -199,7 +199,7 @@ No more than `MAX_REQUEST_BLOCKS_DENEB` may be requested at a time.
|
||||
|
||||
**Protocol ID:** `/eth2/beacon_chain/req/blob_sidecars_by_root/1/`
|
||||
|
||||
[New in Deneb:EIP4844]
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
The `<context-bytes>` field is calculated as `context = compute_fork_digest(fork_version, genesis_validators_root)`:
|
||||
|
||||
@ -248,7 +248,7 @@ Clients MAY limit the number of blocks and sidecars in the response.
|
||||
|
||||
**Protocol ID:** `/eth2/beacon_chain/req/blob_sidecars_by_range/1/`
|
||||
|
||||
[New in Deneb:EIP4844]
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
The `<context-bytes>` field is calculated as `context = compute_fork_digest(fork_version, genesis_validators_root)`:
|
||||
|
||||
|
@ -49,7 +49,7 @@
|
||||
|
||||
## Introduction
|
||||
|
||||
This document specifies basic polynomial operations and KZG polynomial commitment operations as they are needed for the Deneb specification. The implementations are not optimized for performance, but readability. All practical implementations should optimize the polynomial operations.
|
||||
This document specifies basic polynomial operations and KZG polynomial commitment operations that are essential for the implementation of the EIP-4844 feature in the Deneb specification. The implementations are not optimized for performance, but readability. All practical implementations should optimize the polynomial operations.
|
||||
|
||||
Functions flagged as "Public method" MUST be provided by the underlying KZG library as public functions. All other functions are private functions used internally by the KZG library.
|
||||
|
||||
@ -336,7 +336,7 @@ def evaluate_polynomial_in_evaluation_form(polynomial: Polynomial,
|
||||
|
||||
### KZG
|
||||
|
||||
KZG core functions. These are also defined in Deneb execution specs for EIP-4844.
|
||||
KZG core functions. These are also defined in Deneb execution specs.
|
||||
|
||||
#### `blob_to_kzg_commitment`
|
||||
|
||||
|
@ -46,12 +46,14 @@ Please see related Beacon Chain doc before continuing and use them as a referenc
|
||||
|
||||
| Name | Value | Unit |
|
||||
| - | - | :-: |
|
||||
| `BLOB_SIDECAR_SUBNET_COUNT` | `4` | The number of blob sidecar subnets used in the gossipsub protocol. |
|
||||
| `BLOB_SIDECAR_SUBNET_COUNT` | `4` | *[New in Deneb:EIP4844]* The number of blob sidecar subnets used in the gossipsub protocol. |
|
||||
|
||||
## Helpers
|
||||
|
||||
### `BlobsBundle`
|
||||
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
```python
|
||||
@dataclass
|
||||
class BlobsBundle(object):
|
||||
@ -67,7 +69,7 @@ class BlobsBundle(object):
|
||||
class GetPayloadResponse(object):
|
||||
execution_payload: ExecutionPayload
|
||||
block_value: uint256
|
||||
blobs_bundle: BlobsBundle
|
||||
blobs_bundle: BlobsBundle # [New in Deneb:EIP4844]
|
||||
```
|
||||
|
||||
## Protocol
|
||||
@ -98,7 +100,7 @@ All validator responsibilities remain unchanged other than those noted below.
|
||||
|
||||
##### Blob KZG commitments
|
||||
|
||||
[New in Deneb:EIP4844]
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
1. After retrieving the execution payload from the execution engine as specified in Capella,
|
||||
use the `payload_id` to retrieve `blobs`, `blob_kzg_commitments`, and `blob_kzg_proofs`
|
||||
@ -107,6 +109,8 @@ via `get_payload(payload_id).blobs_bundle`.
|
||||
|
||||
#### Constructing the `SignedBlobSidecar`s
|
||||
|
||||
*[New in Deneb:EIP4844]*
|
||||
|
||||
To construct a `SignedBlobSidecar`, a `signed_blob_sidecar` is defined with the necessary context for block and sidecar proposal.
|
||||
|
||||
##### Sidecar
|
||||
|
Loading…
x
Reference in New Issue
Block a user