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

hotfix: support eip4844 transaction(type3) #26

Merged
merged 3 commits into from
Feb 20, 2024

Conversation

johntaiko
Copy link
Member

@johntaiko johntaiko commented Feb 7, 2024

This is a temporary solution. Holesky updated to Cankun few hours ago, but Raiko didn't know the type3 transaction.

@Brechtpd
Copy link
Contributor

Brechtpd commented Feb 7, 2024

For EIP-4844 support in raiko, I think we need to:

  • be able to read the txList posted on L1 from the KZG commitment instead of from the keccak hashed txList. So that means we have to import the blob data from the KGZ commitment stored in the block, recalculate that KZG commitment using that data so we can verify that the imported data is correct, and then extract the txList from the blob data using txListByteOffset and txListByteSize. Everything else should remain the same I think.
  • For L2 transactions, we need to disallow transactions that contain blobs, we currently do not support this because it doesn't make sense on L2 (and to support it, we would need protocol changes).

@johntaiko
Copy link
Member Author

For EIP-4844 support in raiko, I think we need to:

  • be able to read the txList posted on L1 from the KZG commitment instead of from the keccak hashed txList. So that means we have to import the blob data from the KGZ commitment stored in the block, recalculate that KZG commitment using that data so we can verify that the imported data is correct, and then extract the txList from the blob data using txListByteOffset and txListByteSize. Everything else should remain the same I think.
  • For L2 transactions, we need to disallow transactions that contain blobs, we currently do not support this because it doesn't make sense on L2 (and to support it, we would need protocol changes).

It's just a temporary fix for A6, because Holesky updated to Cankun caused Raiko to be unable to recognize block type 4844 when trying to obtain txlist from L1.

@johntaiko johntaiko requested a review from pbeza February 7, 2024 13:56
@johntaiko johntaiko changed the title feat: support eip4844 hotfix: support eip4844 transaction(type3) Feb 7, 2024
@johntaiko johntaiko merged commit 32a27d3 into taikoxyz:taiko/a6-release Feb 20, 2024
3 checks passed
johntaiko added a commit that referenced this pull request Feb 20, 2024
* Add support for EIP-4844 transaction type

* Update dependencies and implement EIP-4844
johntaiko added a commit that referenced this pull request Feb 20, 2024
* Add support for EIP-4844 transaction type

* Update dependencies and implement EIP-4844
johntaiko added a commit that referenced this pull request Feb 20, 2024
* feat: support new version fo taiko-mono

* Fix l1 state root comparison in get_taiko_initial_data function

* Fix l1 state root comparison in get_taiko_initial_data

* hotfix: support eip4844 transaction(type3) (#26) (#32)

* Add support for EIP-4844 transaction type

* Update dependencies and implement EIP-4844

* Fix l1 state root comparison in get_taiko_initial_data

* Refactor variable names in get_taiko_initial_data function

* udate difficulty calculation

* code fmt

* use SolValue

* code refine

---------

Co-authored-by: smtmfft <[email protected]>
petarvujovic98 pushed a commit that referenced this pull request Mar 5, 2024
* Add support for EIP-4844 transaction type

* Update dependencies and implement EIP-4844
petarvujovic98 pushed a commit that referenced this pull request Mar 5, 2024
* feat: support new version fo taiko-mono

* Fix l1 state root comparison in get_taiko_initial_data function

* Fix l1 state root comparison in get_taiko_initial_data

* hotfix: support eip4844 transaction(type3) (#26) (#32)

* Add support for EIP-4844 transaction type

* Update dependencies and implement EIP-4844

* Fix l1 state root comparison in get_taiko_initial_data

* Refactor variable names in get_taiko_initial_data function

* udate difficulty calculation

* code fmt

* use SolValue

* code refine

---------

Co-authored-by: smtmfft <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants