Как создать полезную нагрузку транзакции для подписанной транзакции EIP-1559Python

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 Как создать полезную нагрузку транзакции для подписанной транзакции EIP-1559

Сообщение Гость »


Я пытаюсь создать необработанные данные транзакции на основе подписанной транзакции EIP-1559 в соответствии со спецификацией EIP-1559. Однако оно не соответствует значению, возвращаемому web3py при подписании транзакции. Ниже приведен сценарий, который я использовал для воссоздания проблемы.

compute_raw_tx.py:
из web3 импортировать Web3 импортировать рлп w3 = Web3(Web3.HTTPProvider(NODE_URL)) передача = { 'от': PUBLIC_KEY, 'nonce': w3.eth.get_transaction_count(PUBLIC_KEY), 'кому': '0x0000000000000000000000000000000000000000', «значение»: Web3.toWei(0,01, «эфир»), 'chainId': 5, «газ»: 50000, «maxFeePerGas»: Web3.toWei(500, «gwei»), «maxPriorityFeePerGas»: Web3.toWei(200, «gwei»), «данные»: «0x0» } подписанный_tx = w3.eth.account.sign_transaction(tx, PRIVATE_KEY) печать (signed_tx) закодировано = rlp.encode([ шестнадцатеричный (TX['chainId']), шестнадцатеричный(TX['nonce']), hex(tx['maxPriorityFeePerGas']), hex(tx['maxFeePerGas']), шестнадцатеричный(TX['газ']), передача['to'], шестнадцатеричный (TX['значение']), передача ['данные'], [], шестнадцатеричный(signed_tx['v']), шестнадцатеричный(signed_tx['r']), шестнадцатеричный(signed_tx['s']) ]) print(f'0x02{encoded.hex()}')
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»