Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove epoch accumulator history network content type #268

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 0 additions & 14 deletions content-keys-test-vectors.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,17 +140,3 @@ content_key = 0x02d1c390624d3bd4e409a61a858e5dcc5517729a9170d014a6c96530d64dd862
content_id = 0xa888f4aafe9109d495ac4d4774a6277c1ada42035e3da5e10a04cc93247c04a4
content_id: U256 = 76230538398907151249589044529104962263309222250374376758768131420767496438948
```

#### Epoch Accumulator Key

##### Input Parameters
```
epoch_hash = 0xe242814b90ed3950e13aac7e56ce116540c71b41d1516605aada26c6c07cc491
```

##### Expected Output
```
content_key = 0x03e242814b90ed3950e13aac7e56ce116540c71b41d1516605aada26c6c07cc491
content_id = 0x9fb2175e76c6989e0fdac3ee10c40d2a81eb176af32e1c16193e3904fe56896e
content_id: U256 = 72232402989179419196382321898161638871438419016077939952896528930608027961710
```
18 changes: 2 additions & 16 deletions history-network.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@ The chain history network is a [Kademlia](https://pdos.csail.mit.edu/~petar/pape

Execution chain history data consists of historical block headers, block bodies (transactions and ommer) and block receipts.

In addition, the chain history network provides individual epoch accumulators for the full range of pre-merge blocks mined before the transition to proof of stake.

### Data

#### Types
Expand All @@ -19,7 +17,6 @@ In addition, the chain history network provides individual epoch accumulators fo
* Transactions
* Ommers
* Receipts
* Header epoch accumulators (pre-merge only)

#### Retrieval

Expand All @@ -28,7 +25,6 @@ The network supports the following mechanisms for data retrieval:
* Block header by block header hash
* Block body by block header hash
* Block receipts by block header hash
* Header epoch accumulator by epoch accumulator hash

> The presence of the pre-merge header accumulators provides an indirect way to lookup blocks by their number, but is restricted to pre-merge blocks. Retrieval of blocks by their number for post-merge blocks is not intrinsically supported within this network.

Expand Down Expand Up @@ -252,18 +248,6 @@ Note the type-specific encoding might be different in future receipt types, but
for all current receipt types.


#### Epoch Accumulator

```
epoch_accumulator_key = Container(epoch_hash: Bytes32)
selector = 0x03
epoch_hash = hash_tree_root(epoch_accumulator)

content = SSZ.serialize(epoch_accumulator)
content_key = selector + SSZ.serialize(epoch_accumulator_key)
```


### Algorithms

#### The "Header Accumulator"
Expand Down Expand Up @@ -316,6 +300,8 @@ def update_accumulator(accumulator: MasterAccumulator, new_block_header: BlockHe

The network provides no mechanism for acquiring the *master* version of this accumulator. Clients are encouraged to solve this however they choose, with the suggestion that they include a frozen copy of the accumulator at the point of the merge within their client code, and provide a mechanism for users to override this value if they so choose.

The network provides no mechanism for acquiring the *epoch* versions of this accumulator. Bridges are encouraged to store a local copy of the [Accumulators Repository]() in order to build proofs for pre-merge blocks. It is possible that epoch accumulators will be introduced as a network type to facilitate `block_hash` by `block_number` lookups (for pre-merge blocks). If you find this use-case valuable, or any other use case for storing epoch accumulators in the network, please open an issue.

#### AccumulatorProof

The `AccumulatorProof` is a Merkle proof as specified in the
Expand Down
Loading