diff --git a/core/.changelog.d/2249.added b/core/.changelog.d/2249.added new file mode 100644 index 00000000000..a93105eb3e1 --- /dev/null +++ b/core/.changelog.d/2249.added @@ -0,0 +1 @@ +Show the fee rate on the singing confirmation screen. diff --git a/core/src/apps/bitcoin/sign_tx/approvers.py b/core/src/apps/bitcoin/sign_tx/approvers.py index 76cb172dc6e..966efc01153 100644 --- a/core/src/apps/bitcoin/sign_tx/approvers.py +++ b/core/src/apps/bitcoin/sign_tx/approvers.py @@ -248,8 +248,9 @@ async def approve_tx(self, tx_info: TxInfo, orig_txs: list[OriginalTxInfo]) -> N total = self.total_in - self.change_out spending = total - self.external_in + tx_size_vB = self.weight.get_total() / 4 # fee_threshold = (coin.maxfee per byte * tx size) - fee_threshold = (self.coin.maxfee_kb / 1000) * (self.weight.get_total() / 4) + fee_threshold = (self.coin.maxfee_kb / 1000) * tx_size_vB # fee > (coin.maxfee per byte * tx size) if fee > fee_threshold: @@ -316,7 +317,10 @@ async def approve_tx(self, tx_info: TxInfo, orig_txs: list[OriginalTxInfo]) -> N ) if not self.external_in: - await helpers.confirm_total(total, fee, self.coin, self.amount_unit) + fee_rate = fee / tx_size_vB + await helpers.confirm_total( + total, fee, fee_rate, self.coin, self.amount_unit + ) else: await helpers.confirm_joint_total( spending, total, self.coin, self.amount_unit diff --git a/core/src/apps/bitcoin/sign_tx/helpers.py b/core/src/apps/bitcoin/sign_tx/helpers.py index f981ee4bc0e..482b4113aa9 100644 --- a/core/src/apps/bitcoin/sign_tx/helpers.py +++ b/core/src/apps/bitcoin/sign_tx/helpers.py @@ -132,16 +132,22 @@ def confirm_dialog(self, ctx: wire.Context) -> Awaitable[Any]: class UiConfirmTotal(UiConfirm): def __init__( - self, spending: int, fee: int, coin: CoinInfo, amount_unit: AmountUnit + self, + spending: int, + fee: int, + fee_rate: float, + coin: CoinInfo, + amount_unit: AmountUnit, ): self.spending = spending self.fee = fee + self.fee_rate = fee_rate self.coin = coin self.amount_unit = amount_unit def confirm_dialog(self, ctx: wire.Context) -> Awaitable[Any]: return layout.confirm_total( - ctx, self.spending, self.fee, self.coin, self.amount_unit + ctx, self.spending, self.fee, self.fee_rate, self.coin, self.amount_unit ) @@ -228,8 +234,8 @@ def confirm_modify_fee(user_fee_change: int, total_fee_new: int, coin: CoinInfo, return (yield UiConfirmModifyFee(user_fee_change, total_fee_new, coin, amount_unit)) -def confirm_total(spending: int, fee: int, coin: CoinInfo, amount_unit: AmountUnit) -> Awaitable[None]: # type: ignore [awaitable-is-generator] - return (yield UiConfirmTotal(spending, fee, coin, amount_unit)) +def confirm_total(spending: int, fee: int, fee_rate: float, coin: CoinInfo, amount_unit: AmountUnit) -> Awaitable[None]: # type: ignore [awaitable-is-generator] + return (yield UiConfirmTotal(spending, fee, fee_rate, coin, amount_unit)) def confirm_joint_total(spending: int, total: int, coin: CoinInfo, amount_unit: AmountUnit) -> Awaitable[Any]: # type: ignore [awaitable-is-generator] diff --git a/core/src/apps/bitcoin/sign_tx/layout.py b/core/src/apps/bitcoin/sign_tx/layout.py index 910a826ff2e..1db50bf76b1 100644 --- a/core/src/apps/bitcoin/sign_tx/layout.py +++ b/core/src/apps/bitcoin/sign_tx/layout.py @@ -183,13 +183,20 @@ async def confirm_total( ctx: wire.Context, spending: int, fee: int, + fee_rate: float, coin: CoinInfo, amount_unit: AmountUnit, ) -> None: + fee_rate_str: str | None = None + + if fee_rate >= 0: + fee_rate_str = f"({fee_rate:.1f} sat/vB)" + await layouts.confirm_total( ctx, total_amount=format_coin_amount(spending, coin, amount_unit), fee_amount=format_coin_amount(fee, coin, amount_unit), + fee_rate_amount=fee_rate_str, ) diff --git a/core/src/trezor/ui/layouts/tt/__init__.py b/core/src/trezor/ui/layouts/tt/__init__.py index 29bf3bd1d53..1b689636a73 100644 --- a/core/src/trezor/ui/layouts/tt/__init__.py +++ b/core/src/trezor/ui/layouts/tt/__init__.py @@ -860,6 +860,7 @@ async def confirm_total( ctx: wire.GenericContext, total_amount: str, fee_amount: str, + fee_rate_amount: str | None = None, title: str = "Confirm transaction", total_label: str = "Total amount:\n", fee_label: str = "\nincluding fee:\n", @@ -872,6 +873,10 @@ async def confirm_total( text.bold(total_amount) text.normal(fee_label) text.bold(fee_amount) + + if fee_rate_amount is not None: + text.normal("\n" + fee_rate_amount) + await raise_if_cancelled(interact(ctx, HoldToConfirm(text), br_type, br_code)) diff --git a/core/src/trezor/ui/layouts/tt_v2/__init__.py b/core/src/trezor/ui/layouts/tt_v2/__init__.py index bf992f92aff..c7a0fdb37d2 100644 --- a/core/src/trezor/ui/layouts/tt_v2/__init__.py +++ b/core/src/trezor/ui/layouts/tt_v2/__init__.py @@ -406,6 +406,7 @@ async def confirm_total( ctx: wire.GenericContext, total_amount: str, fee_amount: str, + fee_rate_amount: str | None = None, title: str = "Confirm transaction", total_label: str = "Total amount:\n", fee_label: str = "\nincluding fee:\n", diff --git a/core/tests/test_apps.bitcoin.segwit.signtx.native_p2wpkh.py b/core/tests/test_apps.bitcoin.segwit.signtx.native_p2wpkh.py index 7133e21f952..d082e3807af 100644 --- a/core/tests/test_apps.bitcoin.segwit.signtx.native_p2wpkh.py +++ b/core/tests/test_apps.bitcoin.segwit.signtx.native_p2wpkh.py @@ -79,6 +79,9 @@ def test_send_native_p2wpkh(self): ) tx = SignTx(coin_name='Testnet', version=1, lock_time=0, inputs_count=1, outputs_count=2) + # precomputed tx weight is 566 + fee_rate = 11000 / (566 / 4) + messages = [ None, @@ -101,7 +104,7 @@ def test_send_native_p2wpkh(self): helpers.UiConfirmOutput(out2, coin, AmountUnit.BITCOIN), True, - helpers.UiConfirmTotal(12300000, 11000, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(12300000, 11000, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx @@ -202,6 +205,7 @@ def test_send_native_p2wpkh_change(self): ) out2 = TxOutput( address=None, + # 49'/1'/0'/1/0" - 2N1LGaGg836mqSQqiuUBLfcyGBhyZbremDX address_n=[49 | 0x80000000, 1 | 0x80000000, 0 | 0x80000000, 1, 0], script_type=OutputScriptType.PAYTOWITNESS, amount=12300000 - 11000 - 5000000, @@ -209,6 +213,9 @@ def test_send_native_p2wpkh_change(self): ) tx = SignTx(coin_name='Testnet', version=1, lock_time=0, inputs_count=1, outputs_count=2) + # precomputed tx weight is 566 + fee_rate = 11000 / (566 / 4) + messages = [ None, @@ -228,7 +235,7 @@ def test_send_native_p2wpkh_change(self): TxRequest(request_type=TXOUTPUT, details=TxRequestDetailsType(request_index=1, tx_hash=None), serialized=EMPTY_SERIALIZED), TxAckOutput(tx=TxAckOutputWrapper(output=out2)), - helpers.UiConfirmTotal(5000000 + 11000, 11000, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(5000000 + 11000, 11000, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx diff --git a/core/tests/test_apps.bitcoin.segwit.signtx.native_p2wpkh_grs.py b/core/tests/test_apps.bitcoin.segwit.signtx.native_p2wpkh_grs.py index 6b44fbfebb8..f1210a5de34 100644 --- a/core/tests/test_apps.bitcoin.segwit.signtx.native_p2wpkh_grs.py +++ b/core/tests/test_apps.bitcoin.segwit.signtx.native_p2wpkh_grs.py @@ -80,6 +80,9 @@ def test_send_native_p2wpkh(self): ) tx = SignTx(coin_name='Groestlcoin Testnet', version=1, lock_time=650713, inputs_count=1, outputs_count=2) + # precomputed tx weight is 566 + fee_rate = 11000 / (566 / 4) + messages = [ None, @@ -102,7 +105,7 @@ def test_send_native_p2wpkh(self): helpers.UiConfirmNonDefaultLocktime(tx.lock_time, lock_time_disabled=False), True, - helpers.UiConfirmTotal(12300000, 11000, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(12300000, 11000, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx @@ -203,6 +206,7 @@ def test_send_native_p2wpkh_change(self): ) out2 = TxOutput( address=None, + # 84'/1'/0'/1/0" - tgrs1qejqxwzfld7zr6mf7ygqy5s5se5xq7vmt9lkd57 address_n=[84 | 0x80000000, 1 | 0x80000000, 0 | 0x80000000, 1, 0], script_type=OutputScriptType.PAYTOWITNESS, amount=12300000 - 11000 - 5000000, @@ -210,6 +214,9 @@ def test_send_native_p2wpkh_change(self): ) tx = SignTx(coin_name='Groestlcoin Testnet', version=1, lock_time=650713, inputs_count=1, outputs_count=2) + # precomputed tx weight is 566 + fee_rate = 11000 / (566 / 4) + messages = [ None, @@ -229,7 +236,7 @@ def test_send_native_p2wpkh_change(self): helpers.UiConfirmNonDefaultLocktime(tx.lock_time, lock_time_disabled=False), True, - helpers.UiConfirmTotal(5000000 + 11000, 11000, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(5000000 + 11000, 11000, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx diff --git a/core/tests/test_apps.bitcoin.segwit.signtx.p2wpkh_in_p2sh.py b/core/tests/test_apps.bitcoin.segwit.signtx.p2wpkh_in_p2sh.py index 797a3349505..c6c5c003b1a 100644 --- a/core/tests/test_apps.bitcoin.segwit.signtx.p2wpkh_in_p2sh.py +++ b/core/tests/test_apps.bitcoin.segwit.signtx.p2wpkh_in_p2sh.py @@ -79,6 +79,9 @@ def test_send_p2wpkh_in_p2sh(self): ) tx = SignTx(coin_name='Testnet', version=1, lock_time=0, inputs_count=1, outputs_count=2) + # precomputed tx weight is 670 + fee_rate = 11000 / (670 / 4) + messages = [ None, @@ -98,7 +101,7 @@ def test_send_p2wpkh_in_p2sh(self): helpers.UiConfirmOutput(out2, coin, AmountUnit.BITCOIN), True, - helpers.UiConfirmTotal(123445789 + 11000, 11000, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(123445789 + 11000, 11000, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx @@ -206,6 +209,9 @@ def test_send_p2wpkh_in_p2sh_change(self): ) tx = SignTx(coin_name='Testnet', version=1, lock_time=0, inputs_count=1, outputs_count=2) + # precomputed tx weight is 670 + fee_rate = 11000 / (670 / 4) + messages = [ None, @@ -223,7 +229,7 @@ def test_send_p2wpkh_in_p2sh_change(self): TxRequest(request_type=TXOUTPUT, details=TxRequestDetailsType(request_index=1, tx_hash=None), serialized=EMPTY_SERIALIZED), TxAckOutput(tx=TxAckOutputWrapper(output=out2)), - helpers.UiConfirmTotal(12300000 + 11000, 11000, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(12300000 + 11000, 11000, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx @@ -352,6 +358,9 @@ def test_send_p2wpkh_in_p2sh_attack_amount(self): ) tx = SignTx(coin_name='Testnet', version=1, lock_time=0, inputs_count=1, outputs_count=2) + # precomputed tx weight is 670 + fee_rate = (9 - 8 - 1) / (670 / 4) + messages = [ None, @@ -368,7 +377,7 @@ def test_send_p2wpkh_in_p2sh_attack_amount(self): TxRequest(request_type=TXOUTPUT, details=TxRequestDetailsType(request_index=1, tx_hash=None), serialized=EMPTY_SERIALIZED), TxAckOutput(tx=TxAckOutputWrapper(output=out2)), - helpers.UiConfirmTotal(9 - 1, 9 - 8 - 1, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(9 - 1, 9 - 8 - 1, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx diff --git a/core/tests/test_apps.bitcoin.segwit.signtx.p2wpkh_in_p2sh_grs.py b/core/tests/test_apps.bitcoin.segwit.signtx.p2wpkh_in_p2sh_grs.py index dcb77b81761..961f58402a7 100644 --- a/core/tests/test_apps.bitcoin.segwit.signtx.p2wpkh_in_p2sh_grs.py +++ b/core/tests/test_apps.bitcoin.segwit.signtx.p2wpkh_in_p2sh_grs.py @@ -80,6 +80,9 @@ def test_send_p2wpkh_in_p2sh(self): ) tx = SignTx(coin_name='Groestlcoin Testnet', version=1, lock_time=650756, inputs_count=1, outputs_count=2) + # precomputed tx weight is 670 + fee_rate = 11000 / (670 / 4) + messages = [ None, @@ -102,7 +105,7 @@ def test_send_p2wpkh_in_p2sh(self): helpers.UiConfirmNonDefaultLocktime(tx.lock_time, lock_time_disabled=False), True, - helpers.UiConfirmTotal(123445789 + 11000, 11000, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(123445789 + 11000, 11000, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx @@ -210,6 +213,9 @@ def test_send_p2wpkh_in_p2sh_change(self): ) tx = SignTx(coin_name='Groestlcoin Testnet', version=1, lock_time=650756, inputs_count=1, outputs_count=2) + # precomputed tx weight is 670 + fee_rate = 11000 / (670 / 4) + messages = [ None, @@ -229,7 +235,7 @@ def test_send_p2wpkh_in_p2sh_change(self): helpers.UiConfirmNonDefaultLocktime(tx.lock_time, lock_time_disabled=False), True, - helpers.UiConfirmTotal(12300000 + 11000, 11000, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(12300000 + 11000, 11000, fee_rate, coin, AmountUnit.BITCOIN), True, # check prev tx diff --git a/core/tests/test_apps.bitcoin.signtx.fee_threshold.py b/core/tests/test_apps.bitcoin.signtx.fee_threshold.py index d5183901a4d..bbd10a441e2 100644 --- a/core/tests/test_apps.bitcoin.signtx.fee_threshold.py +++ b/core/tests/test_apps.bitcoin.signtx.fee_threshold.py @@ -134,6 +134,9 @@ def test_under_threshold(self): address_n=[]) tx = SignTx(coin_name=None, version=1, lock_time=0, inputs_count=1, outputs_count=1) + # precomputed tx weight is 768 + fee_rate = 90000 / (768 / 4) + messages = [ None, @@ -145,7 +148,7 @@ def test_under_threshold(self): TxAckOutput(tx=TxAckOutputWrapper(output=out1)), helpers.UiConfirmOutput(out1, coin_bitcoin, AmountUnit.BITCOIN), True, - helpers.UiConfirmTotal(300000 + 90000, 90000, coin_bitcoin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(300000 + 90000, 90000, fee_rate, coin_bitcoin, AmountUnit.BITCOIN), True, TxRequest(request_type=TXINPUT, details=TxRequestDetailsType(request_index=0, tx_hash=None), serialized=EMPTY_SERIALIZED), TxAckInput(tx=TxAckInputWrapper(input=inp1)), diff --git a/core/tests/test_apps.bitcoin.signtx.py b/core/tests/test_apps.bitcoin.signtx.py index 1e7ec844b8c..e824842512a 100644 --- a/core/tests/test_apps.bitcoin.signtx.py +++ b/core/tests/test_apps.bitcoin.signtx.py @@ -94,6 +94,9 @@ def test_one_one_fee(self): coin_name=None, version=1, lock_time=0, inputs_count=1, outputs_count=1 ) + # precomputed tx weight is 768 + fee_rate = 50_000 / (768 / 4) + messages = [ None, TxRequest( @@ -110,7 +113,7 @@ def test_one_one_fee(self): TxAckOutput(tx=TxAckOutputWrapper(output=out1)), helpers.UiConfirmOutput(out1, coin_bitcoin, AmountUnit.BITCOIN), True, - helpers.UiConfirmTotal(3_801_747, 50_000, coin_bitcoin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(3_801_747, 50_000, fee_rate, coin_bitcoin, AmountUnit.BITCOIN), True, # ButtonRequest(code=ButtonRequest_ConfirmOutput), # ButtonRequest(code=ButtonRequest_SignTx), diff --git a/core/tests/test_apps.bitcoin.signtx_decred.py b/core/tests/test_apps.bitcoin.signtx_decred.py index 70fa8922b7a..4c5f7a3f7ab 100644 --- a/core/tests/test_apps.bitcoin.signtx_decred.py +++ b/core/tests/test_apps.bitcoin.signtx_decred.py @@ -86,6 +86,9 @@ def test_one_one_fee(self): outputs_count=1, ) + # precomputed tx weight is 768 + fee_rate = 100_000 / (768 / 4) + messages = [ None, TxRequest( @@ -109,7 +112,7 @@ def test_one_one_fee(self): helpers.UiConfirmOutput(out1, coin_decred, AmountUnit.BITCOIN), True, helpers.UiConfirmTotal( - 200_000_000, 100_000, coin_decred, AmountUnit.BITCOIN + 200_000_000, 100_000, fee_rate, coin_decred, AmountUnit.BITCOIN ), True, TxRequest( @@ -243,6 +246,9 @@ def test_purchase_ticket(self): decred_staking_ticket=True, ) + # precomputed tx weight is 1076 + fee_rate = 100_000 / (1076 / 4) + messages = [ None, TxRequest( @@ -288,7 +294,7 @@ def test_purchase_ticket(self): ), TxAckOutput(tx=TxAckOutputWrapper(output=out3)), helpers.UiConfirmTotal( - 200_000_000, 100_000, coin_decred, AmountUnit.BITCOIN + 200_000_000, 100_000, fee_rate, coin_decred, AmountUnit.BITCOIN ), True, TxRequest( diff --git a/core/tests/test_apps.bitcoin.signtx_grs.py b/core/tests/test_apps.bitcoin.signtx_grs.py index e985906a11a..f4d80846cfc 100644 --- a/core/tests/test_apps.bitcoin.signtx_grs.py +++ b/core/tests/test_apps.bitcoin.signtx_grs.py @@ -61,6 +61,9 @@ def test_one_one_fee(self): address_n=[]) tx = SignTx(coin_name='Groestlcoin', version=1, lock_time=0, inputs_count=1, outputs_count=1) + # precomputed tx weight is 768 + fee_rate = 192 / (768 / 4) + messages = [ None, TxRequest(request_type=TXINPUT, details=TxRequestDetailsType(request_index=0, tx_hash=None), serialized=EMPTY_SERIALIZED), @@ -69,7 +72,7 @@ def test_one_one_fee(self): TxAckOutput(tx=TxAckOutputWrapper(output=out1)), helpers.UiConfirmOutput(out1, coin, AmountUnit.BITCOIN), True, - helpers.UiConfirmTotal(210016, 192, coin, AmountUnit.BITCOIN), + helpers.UiConfirmTotal(210016, 192, fee_rate, coin, AmountUnit.BITCOIN), True, TxRequest(request_type=TXINPUT, details=TxRequestDetailsType(request_index=0, tx_hash=None), serialized=EMPTY_SERIALIZED), TxAckInput(tx=TxAckInputWrapper(input=inp1)), diff --git a/legacy/firmware/.changelog.d/2249.added b/legacy/firmware/.changelog.d/2249.added new file mode 100644 index 00000000000..a93105eb3e1 --- /dev/null +++ b/legacy/firmware/.changelog.d/2249.added @@ -0,0 +1 @@ +Show the fee rate on the singing confirmation screen. diff --git a/legacy/firmware/layout2.c b/legacy/firmware/layout2.c index ff1d68d50e8..18ebe51c099 100644 --- a/legacy/firmware/layout2.c +++ b/legacy/firmware/layout2.c @@ -503,9 +503,20 @@ static bool formatAmountDifference(const CoinInfo *coin, AmountUnit amount_unit, output_length) != 0; } +static bool formatFeeRate(uint64_t fee, uint64_t tx_weight, char *output, + size_t output_length) { + // Compute fee rate and modify it in place for `bn_format_uint64` function - + // multiply by 10, because we only want to display 1 decimal digit + // and then get whole number by leaving it in `uint64_t`. + uint64_t fee_rate_multiplied = (fee * 10) / (tx_weight / 4); + + return bn_format_uint64(fee_rate_multiplied, "(", " sat/vB)", 1, 0, false, + output, output_length) != 0; +} + void layoutConfirmTx(const CoinInfo *coin, AmountUnit amount_unit, - uint64_t total_in, uint64_t total_out, - uint64_t change_out) { + uint64_t total_in, uint64_t total_out, uint64_t change_out, + uint64_t tx_weight) { char str_out[32] = {0}; formatAmountDifference(coin, amount_unit, total_in, change_out, str_out, sizeof(str_out)); @@ -514,9 +525,17 @@ void layoutConfirmTx(const CoinInfo *coin, AmountUnit amount_unit, formatAmountDifference(coin, amount_unit, total_in, total_out, str_fee, sizeof(str_fee)); + char str_fee_rate[32] = {0}; + bool show_fee_rate = total_in >= total_out; + + if (show_fee_rate) { + formatFeeRate(total_in - total_out, tx_weight, str_fee_rate, + sizeof(str_fee_rate)); + } + layoutDialogSwipe(&bmp_icon_question, _("Cancel"), _("Confirm"), NULL, - _("Really send"), str_out, _("from your wallet?"), - _("Fee included:"), str_fee, NULL); + _("Confirm sending:"), str_out, _("including fee:"), + str_fee, show_fee_rate ? str_fee_rate : NULL, NULL); } void layoutConfirmReplacement(const char *description, uint8_t txid[32]) { diff --git a/legacy/firmware/layout2.h b/legacy/firmware/layout2.h index ede14861736..77966d7203a 100644 --- a/legacy/firmware/layout2.h +++ b/legacy/firmware/layout2.h @@ -57,8 +57,8 @@ void layoutConfirmOutput(const CoinInfo *coin, AmountUnit amount_unit, void layoutConfirmOmni(const uint8_t *data, uint32_t size); void layoutConfirmOpReturn(const uint8_t *data, uint32_t size); void layoutConfirmTx(const CoinInfo *coin, AmountUnit amount_unit, - uint64_t total_in, uint64_t total_out, - uint64_t change_out); + uint64_t total_in, uint64_t total_out, uint64_t change_out, + uint64_t tx_weight); void layoutConfirmReplacement(const char *description, uint8_t txid[32]); void layoutConfirmModifyOutput(const CoinInfo *coin, AmountUnit amount_unit, TxOutputType *out, TxOutputType *orig_out, diff --git a/legacy/firmware/signing.c b/legacy/firmware/signing.c index f18100cad5c..2d5bb663cc8 100644 --- a/legacy/firmware/signing.c +++ b/legacy/firmware/signing.c @@ -2019,7 +2019,8 @@ static bool signing_confirm_tx(void) { } // last confirmation - layoutConfirmTx(coin, amount_unit, total_in, total_out, change_out); + layoutConfirmTx(coin, amount_unit, total_in, total_out, change_out, + tx_weight); if (!protectButton(ButtonRequestType_ButtonRequest_SignTx, false)) { fsm_sendFailure(FailureType_Failure_ActionCancelled, NULL); signing_abort(); diff --git a/tests/ui_tests/fixtures.json b/tests/ui_tests/fixtures.json index 9d131f01ff6..252c9d6182d 100644 --- a/tests/ui_tests/fixtures.json +++ b/tests/ui_tests/fixtures.json @@ -1,23 +1,23 @@ { -"T1_bitcoin-test_bcash.py::test_attack_change_input": "e965a6d1c8571ea39fe374a388c58c406d1341ec3314f5cc055c52df6e066fbb", -"T1_bitcoin-test_bcash.py::test_send_bch_change": "e965a6d1c8571ea39fe374a388c58c406d1341ec3314f5cc055c52df6e066fbb", -"T1_bitcoin-test_bcash.py::test_send_bch_multisig_change": "f614045c8d69a2f9adfa3dea186598f37e8c8a48a6bed6b0383836c2f31e3348", -"T1_bitcoin-test_bcash.py::test_send_bch_multisig_wrongchange": "88ec1fd678826f56a0364fd91b94385c65f260bef5ef25e32319934b65d2e288", -"T1_bitcoin-test_bcash.py::test_send_bch_nochange": "d8582c6f061907616e6e05bc0c4b2d79999db1f652051b8bdc530c0a1235df7a", -"T1_bitcoin-test_bcash.py::test_send_bch_oldaddr": "a2f26247e73407b002d635148c4020922ae77a4e86c032dc597369f24d3136c7", -"T1_bitcoin-test_bgold.py::test_attack_change_input": "a345d095c3973ff84521c422a751741ca15c5bd0f4a1d5c52656af6665258d4f", -"T1_bitcoin-test_bgold.py::test_send_bitcoin_gold_change": "a345d095c3973ff84521c422a751741ca15c5bd0f4a1d5c52656af6665258d4f", -"T1_bitcoin-test_bgold.py::test_send_bitcoin_gold_nochange": "f28ab1b22c1a139662b939b947d3a923c92534700eca6e328e6dd66c805a09e8", -"T1_bitcoin-test_bgold.py::test_send_btg_multisig_change": "33d59f9271317340c62cfda769edb429fa84df4a9aeb8f5501253214250e0ac6", -"T1_bitcoin-test_bgold.py::test_send_mixed_inputs": "f28ab1b22c1a139662b939b947d3a923c92534700eca6e328e6dd66c805a09e8", -"T1_bitcoin-test_bgold.py::test_send_multisig_1": "670077118e324d181435ce3650d3f6830fdc6a32aeceef8c0ac7b2cca2abc8e0", -"T1_bitcoin-test_bgold.py::test_send_p2sh": "b32a7c8730bf74fb38f7a0c5ec1ac5302d351e9251986728b7c74f586da820cf", -"T1_bitcoin-test_bgold.py::test_send_p2sh_witness_change": "adcb9afad86d404c0e130f17ed4eba401dad7f9b151a36fe31e7ee9fd9ad6593", -"T1_bitcoin-test_dash.py::test_send_dash": "5581f95c549db787796519fecd7428d675da375b74b0c1e49cea006886ccee5b", -"T1_bitcoin-test_dash.py::test_send_dash_dip2_input": "4be4f7fbf2e7717d58c35b64c65b1b1c2ef4a285d71461d03bf39ab8b5a8a27c", -"T1_bitcoin-test_decred.py::test_decred_multisig_change": "9b797e632fd598f11c4c0c65df69ac1b796f7d0ed268d31ff29dd62f265369fd", -"T1_bitcoin-test_decred.py::test_send_decred": "24a0435d64914a67a7add95222c53935547d3d7508b2b4ab405f72c6cb0922ab", -"T1_bitcoin-test_decred.py::test_send_decred_change": "1156dd99983e8b99180f46806e6301b024c38823d46a1a2be10b17e1f39bfd5b", +"T1_bitcoin-test_bcash.py::test_attack_change_input": "031244f90af2c0b4118cca75b72efd6dd8b0c9f95c94fba490df7c39d791fa7e", +"T1_bitcoin-test_bcash.py::test_send_bch_change": "031244f90af2c0b4118cca75b72efd6dd8b0c9f95c94fba490df7c39d791fa7e", +"T1_bitcoin-test_bcash.py::test_send_bch_multisig_change": "a34b35df7212829f6f262a2eec43991b8ea7509a0d30e55ea2e397e5fcbe3311", +"T1_bitcoin-test_bcash.py::test_send_bch_multisig_wrongchange": "5416f0e562f8ac2f8bd334e7cbaab98a39dcadc5069c2c237c0b9498aa03bf2f", +"T1_bitcoin-test_bcash.py::test_send_bch_nochange": "426b9ae5273ae0dd81b4d240d5433f74980f2969affb11cf28de23fceb95a1ae", +"T1_bitcoin-test_bcash.py::test_send_bch_oldaddr": "4bcf41ca5646c74a9553bb52de132cba4891bdba80000e2aa680396f69fa061b", +"T1_bitcoin-test_bgold.py::test_attack_change_input": "d75bb96b189844e6db9ce8713e5873ec916a96583520fdaec11da1e749fae46b", +"T1_bitcoin-test_bgold.py::test_send_bitcoin_gold_change": "d75bb96b189844e6db9ce8713e5873ec916a96583520fdaec11da1e749fae46b", +"T1_bitcoin-test_bgold.py::test_send_bitcoin_gold_nochange": "d8ee2a79e800cea4ed53ba1347178287488b44688aedea89eff43c9196234ee5", +"T1_bitcoin-test_bgold.py::test_send_btg_multisig_change": "090f46c498d8e0cd394cd869eec3e3c7e7ec81bfe4b857b495176604fc8519f7", +"T1_bitcoin-test_bgold.py::test_send_mixed_inputs": "fb75a9c9302653d1fb7cda5a5a0732e5eb3db505a37b01965a303a65a10d0057", +"T1_bitcoin-test_bgold.py::test_send_multisig_1": "6e55061ba714c36b9a97db0fe02ae47ba3fdaba0dc624c0a1b05169a416cefb1", +"T1_bitcoin-test_bgold.py::test_send_p2sh": "11cda88f72be81cd99169d8bafce622c089ba3b137b840a12550ff3b932bd4a4", +"T1_bitcoin-test_bgold.py::test_send_p2sh_witness_change": "9ac3856f95d9df08584db767094846787f7ec97bb1b1a9e2463ae02a6d74651c", +"T1_bitcoin-test_dash.py::test_send_dash": "d8ebcecc5792519bd2b36076339b61fab07d7afe9509d9bfc3dfe94ff93e9088", +"T1_bitcoin-test_dash.py::test_send_dash_dip2_input": "d45aae3d41c29539e26809661c75566af31c4bfcff559b440dbecc6d38fa2fc9", +"T1_bitcoin-test_decred.py::test_decred_multisig_change": "01eec073f8f3a596fe4f7b33faa5caa0d48f7cc33b9ccbd46f41f65e7a00be0f", +"T1_bitcoin-test_decred.py::test_send_decred": "82e3f8f3ab63ce6689ed0c1924faac3e37bcc7ff7e32f396277b1085dfb76531", +"T1_bitcoin-test_decred.py::test_send_decred_change": "26692c1035147da44764aceb3f4185890bc3c560a4f0d171f773fe6d2fde5f6a", "T1_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDADDRESS-pkh([5-7a80e3db": "9b30c98b35338d933fe992e4a47fb259a54f0f6f204610f63c6e6cbff427dbb9", "T1_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDP2SHWITNESS-sh-03d56ac2": "09d1f2688240677ac55f2677b62973ee7fe4ca788e9e139b9f6de5a1a66d6205", "T1_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDTAPROOT-tr([5c-22751b2f": "f71944d71edb2531faef0a177c2eda4f88bcb0ef77883db18f655d706759b5b0", @@ -34,8 +34,8 @@ "T1_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDP2SHWITNESS-sh-e8c5303c": "a381684066de8a00048ab82491599140c8e36a8eed9b9c31284e76275b7d396c", "T1_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDTAPROOT-tr([5c-ddc924d3": "f24b6c201efc2efbb174a48766df03f5964ea95908abca791714e22bcf9b635d", "T1_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDWITNESS-wpkh([-996ae319": "cd384fcf3379759dd5fc3f2737ddfb9185a55e506d9d0869f8a85ba31ed1d973", -"T1_bitcoin-test_firo.py::test_spend_lelantus": "1019be4b8a50e7870ddcc2904d30a2ac5f8c1946062e65cf372d567334f8f7c5", -"T1_bitcoin-test_fujicoin.py::test_send_p2tr": "5ab196837edcf376a810a150dccc3223af30afaa655b838818435209b9a50dfe", +"T1_bitcoin-test_firo.py::test_spend_lelantus": "29a38125cb8dc598925f647dfd8d5d0a150a76411d95311815213b784f2ab5ec", +"T1_bitcoin-test_fujicoin.py::test_send_p2tr": "ac7a973fbca83d8af8276be75f18ff71659d82f0527256a19f75ebc8dfc57ee3", "T1_bitcoin-test_getaddress.py::test_bch": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_getaddress.py::test_bch_multisig": "730fd13c57131201223dd2f5a14f287ca3b43f5d3a526ac71a9f436b123de388", "T1_bitcoin-test_getaddress.py::test_btc": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", @@ -126,27 +126,27 @@ "T1_bitcoin-test_getpublickey_curve.py::test_publickey_curve[nist256p1-path3-03b93f7e6c777143ad-2d6b178b": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_getpublickey_curve.py::test_publickey_curve[secp256k1-path0-02f65ce170451f66f4-9c982c22": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_getpublickey_curve.py::test_publickey_curve[secp256k1-path1-0212f4629f4f224db0-0209bb73": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_grs.py::test_legacy": "721a6d2fc69d31a11c51d41ebeaa0ca7788acde6e3ab2e2e51ded2ecfe451e46", -"T1_bitcoin-test_grs.py::test_legacy_change": "3038ff2cb2e0c33e60ac759120a6f8376c13c57067d8b61c4c7872cf7840d897", -"T1_bitcoin-test_grs.py::test_send_p2tr": "6d40d7c2a81ba15eef3e89d4bcb4667f68518db6184b7a6d07db939f6a18bf57", -"T1_bitcoin-test_grs.py::test_send_segwit_native": "6bf11a68ea9d3e2cabdc672dc3a7920d7ee08f6f417ed452282e295f07231c73", -"T1_bitcoin-test_grs.py::test_send_segwit_native_change": "0ad94ec5c035d2c61002885f7fa72d9984b7b1d84cb4305f9ff6c754b369f21a", -"T1_bitcoin-test_grs.py::test_send_segwit_p2sh": "a3d646470ddb5a7fc57b2e74f2b47999086dd187908ac5099f98931b78839ac8", -"T1_bitcoin-test_grs.py::test_send_segwit_p2sh_change": "ee2a4d0f3de9f702598947c8e5a20340d96220729360fe97744803ef277b2a6f", -"T1_bitcoin-test_komodo.py::test_one_one_fee_sapling": "799c2884e35c767e505ccb3be9d3a424af3c113bee94f23ae68c50b0adc60d8b", -"T1_bitcoin-test_komodo.py::test_one_one_rewards_claim": "d6ba8441ad5e4bbdb191eef24fd679637e468cf1e7317b290bf89d2588bea214", -"T1_bitcoin-test_multisig.py::test_15_of_15": "ba0a7e6d6a6f37bf553130acc7aa2471d9d7d804f1564837f149b3b5ecec0461", -"T1_bitcoin-test_multisig.py::test_2_of_3": "4ece08d5a19590a521e22aae038a492796922f26bb8ba70614211a6ade5bce18", -"T1_bitcoin-test_multisig.py::test_attack_change_input": "b5beb346018c89e34a219b5466e3f2f257865b8623c356e2b249742d89e04da3", +"T1_bitcoin-test_grs.py::test_legacy": "1c49d3e4ce2ac576ce7121eda45117ad58abda8e432fec10094e4982a45ef81f", +"T1_bitcoin-test_grs.py::test_legacy_change": "138bc552a4cebb01a4d1677a3be808c8bef97dfffc30815148bfdd7f97c41075", +"T1_bitcoin-test_grs.py::test_send_p2tr": "e2e574c98c1a2d138754f756708bbe39f1ea82cade10949c1d4fe5991710267a", +"T1_bitcoin-test_grs.py::test_send_segwit_native": "209b87140f122bb0b965676d28c74364d04d8738f26bd4707a5722524212d8d0", +"T1_bitcoin-test_grs.py::test_send_segwit_native_change": "a867f477323d47bd00d9940701620f5a0c027b7857a266ff6c924281393b72ac", +"T1_bitcoin-test_grs.py::test_send_segwit_p2sh": "c71ff14c25961689503d60ef6c42f867f0039eb6aa73a1351d3b99cfa60680a8", +"T1_bitcoin-test_grs.py::test_send_segwit_p2sh_change": "98d37edf851d63b24c42011ddd9311261c144c9a6ef28fccab2ccbc2c7d336d8", +"T1_bitcoin-test_komodo.py::test_one_one_fee_sapling": "56319b90555d12aae24cbbbf6ac9ddb0b4ad9e44a5a39631d34641007574cf02", +"T1_bitcoin-test_komodo.py::test_one_one_rewards_claim": "e623e85329341afa146fd5f4b93eef09eaecfcd66478b2a096c9930b5b6bede8", +"T1_bitcoin-test_multisig.py::test_15_of_15": "fca3242622660d794482f55460a3d29bf329fbfee58535c70caddcf1ffc23cf8", +"T1_bitcoin-test_multisig.py::test_2_of_3": "31e28a5a43b745bf2206fc63268492c39cdfa39482493bc5607958c05a43177c", +"T1_bitcoin-test_multisig.py::test_attack_change_input": "ca9b453dc682e04662f1509a947ca978a5021f2aea561def8564933c1acad6d1", "T1_bitcoin-test_multisig.py::test_missing_pubkey": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_multisig_change.py::test_external_external": "b31515c4102fe602ed1e951bf67db483ffb8874dacc4b0359e9ef67d16999178", -"T1_bitcoin-test_multisig_change.py::test_external_internal": "ceef2445ab95ec10543e320224b13febef2428d240cb01c58dd7ce878b121997", -"T1_bitcoin-test_multisig_change.py::test_internal_external": "888dca1924d4a54fdb295ec1b3afa56f0a3fc579cfbbec4b13e0ba0c24f48bb9", -"T1_bitcoin-test_multisig_change.py::test_multisig_change_match_first": "f924dad7b1cbcb3506509eee5e062c9be474daef6e6f587a2d25f39aa83aebe0", -"T1_bitcoin-test_multisig_change.py::test_multisig_change_match_second": "8b08f72b61228e39c4584f52febdbef4b5556bae9f97882f5e939d9e015ba2b3", -"T1_bitcoin-test_multisig_change.py::test_multisig_external_external": "988489b219d84517ca69893a8417a480309695549eb83f5821ebd52381e3a3a2", -"T1_bitcoin-test_multisig_change.py::test_multisig_mismatch_change": "10dadffd94e286e588a7006906517205384084c493411191422bed806354caf8", -"T1_bitcoin-test_multisig_change.py::test_multisig_mismatch_inputs": "dc50b96dc2f819f8bdccdb7b3d404580b0e08628e222f59661f91b13120c4ef5", +"T1_bitcoin-test_multisig_change.py::test_external_external": "90db9f1e6c29dae422d81f8c891576b39b6550a613d6365c8497d350a11ead1b", +"T1_bitcoin-test_multisig_change.py::test_external_internal": "c14fa123284a49effcbf30184c50d1ae7e9cd998ac7bac899ca66371046c0c8f", +"T1_bitcoin-test_multisig_change.py::test_internal_external": "d4d23f38ec013a9d682c4e2d17e9ff17b9bbf42ddb0ae580821a4ef91e0d8633", +"T1_bitcoin-test_multisig_change.py::test_multisig_change_match_first": "602f0669af9084a07900170c00699512d1cd4646aba7ddcebf6af05e36eb224b", +"T1_bitcoin-test_multisig_change.py::test_multisig_change_match_second": "ee110f116e966f842ffc174e3ab55e951aec31b1f0433fc697c9d7aaed3d7060", +"T1_bitcoin-test_multisig_change.py::test_multisig_external_external": "0c398595da3162afee0f4734a155c0cf8d96b830350b58670b47aba40659e3cc", +"T1_bitcoin-test_multisig_change.py::test_multisig_mismatch_change": "25d6670f1a30d56fccf78d3119aaa876b5f31655b6901a3a4ef1838748045cae", +"T1_bitcoin-test_multisig_change.py::test_multisig_mismatch_inputs": "601dbfefbebf6dcf988a3c1c5508dc75c59df753b0788a2f017eb4346f3ab55c", "T1_bitcoin-test_nonstandard_paths.py::test_getaddress[m-1195487518-6-255-script_types3]": "c968d01488a358a7287c4e631996081bb490ff6e702b5ff84c3addba1c7b0974", "T1_bitcoin-test_nonstandard_paths.py::test_getaddress[m-1195487518-script_types2]": "814c415655b03a6757056456544852a7ec88f8e96fbc97728eba7874d03782f8", "T1_bitcoin-test_nonstandard_paths.py::test_getaddress[m-3h-100h-4-255-script_types1]": "f1d7f1ba4255576af0ffe4dd11dbc31dda17fec533495992a26bc1d22ade567a", @@ -169,24 +169,24 @@ "T1_bitcoin-test_nonstandard_paths.py::test_signmessage[m-3h-100h-4-255-script_types1]": "bec27ce6240d3be57e2815b00f66db2f3d0da60b3de8429772aed5ce5dc0263a", "T1_bitcoin-test_nonstandard_paths.py::test_signmessage[m-4-255-script_types0]": "8501aeef2b2494e3440d4da64f2d08d24284183c1813753e653039797ffe684f", "T1_bitcoin-test_nonstandard_paths.py::test_signmessage[m-49-0-63-0-255-script_types4]": "3f99e0c68e5fb612cb48b7d170a5f36a32e1fc5d8fe7d98f391ef4900411731d", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-6-255-script_types3]": "c8993b0932893430323d4fd34311ff6e13dc69c74247485ee1363fbc8c5b86c6", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-script_types2]": "c8993b0932893430323d4fd34311ff6e13dc69c74247485ee1363fbc8c5b86c6", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-3h-100h-4-255-script_types1]": "aa7cafa3fdf34ece7b4d7e1ad20c11d40e3582ed0473e1ea82b3fe6d02b151fa", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-4-255-script_types0]": "aa7cafa3fdf34ece7b4d7e1ad20c11d40e3582ed0473e1ea82b3fe6d02b151fa", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-49-0-63-0-255-script_types4]": "682610dc7fcea1c969063ed71b33ab36a62e165b331a713aa3b8148ddb5f6e95", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths0-address_index0]": "5c310bb0a73dc35ae1f2910b47ba319893b9039f1ed9762e67e9a97ebf1b6079", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths1-address_index1]": "5c310bb0a73dc35ae1f2910b47ba319893b9039f1ed9762e67e9a97ebf1b6079", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths2-address_index2]": "95cf4ccb223cbe1171033da91fdc05802ceafed068fe7a56fedec000b8c421b4", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths3-address_index3]": "95cf4ccb223cbe1171033da91fdc05802ceafed068fe7a56fedec000b8c421b4", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths4-address_index4]": "5c310bb0a73dc35ae1f2910b47ba319893b9039f1ed9762e67e9a97ebf1b6079", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths5-address_index5]": "5c310bb0a73dc35ae1f2910b47ba319893b9039f1ed9762e67e9a97ebf1b6079", -"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths6-address_index6]": "5c310bb0a73dc35ae1f2910b47ba319893b9039f1ed9762e67e9a97ebf1b6079", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-6-255-script_types3]": "36ac4b97285fbdf35bda6c206e79bb44ca290a74515b1558c54e00e757bdfa48", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-script_types2]": "36ac4b97285fbdf35bda6c206e79bb44ca290a74515b1558c54e00e757bdfa48", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-3h-100h-4-255-script_types1]": "acfe73eb826d39066235679b741add1f4a96ecf86813d05ee96d57d0a10bc2bc", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-4-255-script_types0]": "acfe73eb826d39066235679b741add1f4a96ecf86813d05ee96d57d0a10bc2bc", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx[m-49-0-63-0-255-script_types4]": "878e2481b8a53650b2b927434ab9efe916080b2cb50977148f5afc87d8d593e9", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths0-address_index0]": "14661620220ec40ef5f1ebb942f8769407883cf782c80f5a26b2d2be93cd1ac0", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths1-address_index1]": "14661620220ec40ef5f1ebb942f8769407883cf782c80f5a26b2d2be93cd1ac0", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths2-address_index2]": "dceba24e3580c8e6184464de082cef38556c7ebca67284599cbfddb15aaa8982", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths3-address_index3]": "dceba24e3580c8e6184464de082cef38556c7ebca67284599cbfddb15aaa8982", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths4-address_index4]": "14661620220ec40ef5f1ebb942f8769407883cf782c80f5a26b2d2be93cd1ac0", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths5-address_index5]": "14661620220ec40ef5f1ebb942f8769407883cf782c80f5a26b2d2be93cd1ac0", +"T1_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths6-address_index6]": "14661620220ec40ef5f1ebb942f8769407883cf782c80f5a26b2d2be93cd1ac0", "T1_bitcoin-test_op_return.py::test_nonzero_opreturn": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_op_return.py::test_opreturn": "8a1c17c2e9f0b0caaaf7536b800336c84330a36ba34fe883c8efadb4273c2e7a", +"T1_bitcoin-test_op_return.py::test_opreturn": "9219a6b801c98f130655a914bf82da75225ddc76ad9411c101cdc85c85dc8f6e", "T1_bitcoin-test_op_return.py::test_opreturn_address": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_peercoin.py::test_timestamp_included": "f3454a363ccbf9d8e814a617a4850d0ab6e94e61eb412603b7cb9005e15986ad", +"T1_bitcoin-test_peercoin.py::test_timestamp_included": "491f2195b4c2a51b4b0e58cc336d1b45390809f9da178689c08e6c28fb6de7df", "T1_bitcoin-test_peercoin.py::test_timestamp_missing": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_peercoin.py::test_timestamp_missing_prevtx": "29a1bb5578276b879ca06f243fdd2f76a3396c0f1452b89f6133b6c684d3bb09", +"T1_bitcoin-test_peercoin.py::test_timestamp_missing_prevtx": "d62ab24ea226256167ca2a374b2b13c952829e7f9897fee828a7aacf38d7aba4", "T1_bitcoin-test_signmessage.py::test_signmessage[NFC message]": "73ea6c228f3552bc620d0d63b416046f9f245e4035c18cf04d2444de6999e720", "T1_bitcoin-test_signmessage.py::test_signmessage[NFKD message]": "73ea6c228f3552bc620d0d63b416046f9f245e4035c18cf04d2444de6999e720", "T1_bitcoin-test_signmessage.py::test_signmessage[bcash]": "52f71cb4a4fcbd2b8cc749df7ffb538a370fde1f69edf550e54ffe4040222c0a", @@ -208,70 +208,70 @@ "T1_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh1]": "88457129c207139569d812a5dfb535b06d60105391ad73040c40579c47adfaa8", "T1_bitcoin-test_signmessage.py::test_signmessage[segwit-p2sh2]": "f5edfd3bd6d805c243b8a9776a2f8016da982fbb43bad084a9b9f4a5c06915a9", "T1_bitcoin-test_signmessage.py::test_signmessage_path_warning": "d47bd497c13361aa741e92189154c2b557c4a7af3d52f61a6d32b7e9133d319f", -"T1_bitcoin-test_signtx.py::test_attack_change_input_address": "6673d9cbcdb9d40159f61057413171b043e19b5bd1b8be356f039a162d42710c", -"T1_bitcoin-test_signtx.py::test_attack_change_outputs": "6a59d51540d51f5b0be4d22410f6b6dda8d6ed485d35baff69985e2ed81d9c82", -"T1_bitcoin-test_signtx.py::test_attack_modify_change_address": "6d4d21d4c5f3bf4a480e39286a7a33ff86e74cc6d28ff413779b0d936f6ee28e", -"T1_bitcoin-test_signtx.py::test_change_on_main_chain_allowed": "6d4d21d4c5f3bf4a480e39286a7a33ff86e74cc6d28ff413779b0d936f6ee28e", -"T1_bitcoin-test_signtx.py::test_fee_high_warning": "1f07694612e605b9f52e6639ffbbbcecd23a379738b649a83b387b0afd0c5cf1", +"T1_bitcoin-test_signtx.py::test_attack_change_input_address": "d1a0ccaefd5050e899311bcd854e36a6b961a6049891cd7f4dbe18779f386f28", +"T1_bitcoin-test_signtx.py::test_attack_change_outputs": "d9854895427d015a54aae20db518cb0caf2e09d6bc30015a992b351a37a4fb01", +"T1_bitcoin-test_signtx.py::test_attack_modify_change_address": "d415fc90494448dd952871a3ef2d77100c4b9f7f852513137ae34a9e2126449b", +"T1_bitcoin-test_signtx.py::test_change_on_main_chain_allowed": "d415fc90494448dd952871a3ef2d77100c4b9f7f852513137ae34a9e2126449b", +"T1_bitcoin-test_signtx.py::test_fee_high_warning": "861b62e5d22b1e1e4e792c90521be53190a868450e9d66eee83f2c0016f9f08b", "T1_bitcoin-test_signtx.py::test_incorrect_input_script_type[InputScriptType.EXTERNAL]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx.py::test_incorrect_input_script_type[InputScriptType.SPENDADDRESS]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx.py::test_incorrect_output_script_type[OutputScriptType.PAYTOADDRESS]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx.py::test_incorrect_output_script_type[OutputScriptType.PAYTOSCRIPTHASH]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_signtx.py::test_lock_time[1-4294967295]": "fa6d0083879813682614c0fdd483c21e597cccb19e8d59d0a786c27be01f6ab2", -"T1_bitcoin-test_signtx.py::test_lock_time[499999999-4294967294]": "5da346d80643e66ea3e299d8c9250b79bc2174ab95816d19fbee943f570691d1", -"T1_bitcoin-test_signtx.py::test_lock_time[500000000-4294967294]": "7134bfd162d0c58cd41309827f317334769318dfb48041b0a5b2fbb9961d950c", -"T1_bitcoin-test_signtx.py::test_lots_of_change": "abf76c1e2eaf2dc4c5d67d08fb533fe10f824f32b823e36f0eb0be53e38e3794", -"T1_bitcoin-test_signtx.py::test_lots_of_inputs": "7c5904258d399f081822572db86dde09587f53e870b1ca5d1dd6e6370cc03bf2", -"T1_bitcoin-test_signtx.py::test_lots_of_outputs": "982c8e433c6838835e0ff9086fd480abac401093c2c5a3e7679580d093456488", +"T1_bitcoin-test_signtx.py::test_lock_time[1-4294967295]": "9135dd3c5855fd1c48d6d72c9923e68dc7228b4a54a2f390c66bd213bc7fe878", +"T1_bitcoin-test_signtx.py::test_lock_time[499999999-4294967294]": "785c0b8d1ae116e20d1e00acb851320f83bf3f4ca2efad4b503ba711e246a6ee", +"T1_bitcoin-test_signtx.py::test_lock_time[500000000-4294967294]": "4b8cc6cf91e6b69e6e8d6072e98d3add2571ac6bd2accdbdb52c9457ee7ca885", +"T1_bitcoin-test_signtx.py::test_lots_of_change": "836f9bf0fca7f88f1c3e790c6e4ff63270dd4dd172468d75ae744fbbf93d65f4", +"T1_bitcoin-test_signtx.py::test_lots_of_inputs": "acffe87ecbd71750e7cca19d7fb850750f7d48363febc4446388771f2712ae49", +"T1_bitcoin-test_signtx.py::test_lots_of_outputs": "7b780dec2a555b4ba2440c9119abdc3d662a2a80c40fa82de6a1de83fe2a1b2b", "T1_bitcoin-test_signtx.py::test_not_enough_funds": "8d684112b826d1902e8a1a2106618b6a6f4983ce790e939fc3db476b20e30dea", -"T1_bitcoin-test_signtx.py::test_not_enough_vouts": "c076b1741d0a5e04fd4b44eab02603d28b7c92bf52b8bd22b19764d78655cf10", -"T1_bitcoin-test_signtx.py::test_one_one_fee": "845e8bf19229fca7ed234df5ef385502e6bf41d4d8deba4793fe272120e7f9ec", -"T1_bitcoin-test_signtx.py::test_one_three_fee": "046e61bddd7138630d2aae92cc9c5abfa018568e964e4ef5c96ee87553b0754b", -"T1_bitcoin-test_signtx.py::test_one_two_fee": "27914af73fca3b62b07dbbf2deeae0a69a491d110612d749ff10c11e3cefe65c", -"T1_bitcoin-test_signtx.py::test_p2sh": "575bb0c88ebdff403897a2635c9ba902ee711d2bef2af6a52532d400c6b083b6", -"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[branch_id-13]": "05db6295e4fa0e4740e95cc0807074ac67c91fd9e6c0961e0ef0fbc78a7fa1d8", -"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[expiry-9]": "05db6295e4fa0e4740e95cc0807074ac67c91fd9e6c0961e0ef0fbc78a7fa1d8", -"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[extra_data-hello world]": "05db6295e4fa0e4740e95cc0807074ac67c91fd9e6c0961e0ef0fbc78a7fa1d8", -"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[timestamp-42]": "05db6295e4fa0e4740e95cc0807074ac67c91fd9e6c0961e0ef0fbc78a7fa1d8", -"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[version_group_id-69]": "05db6295e4fa0e4740e95cc0807074ac67c91fd9e6c0961e0ef0fbc78a7fa1d8", +"T1_bitcoin-test_signtx.py::test_not_enough_vouts": "186e2a21467ac2d0bb514f7c79c2ba9827414af100fd35f29affb8bbf3260a93", +"T1_bitcoin-test_signtx.py::test_one_one_fee": "ad0e7054f572fa6c10697aa61d47487de2fd89089bb1e9be9af55494fba5fc44", +"T1_bitcoin-test_signtx.py::test_one_three_fee": "67780a4a61f07ab4e3eb5ff40d21596e30257e156b66ebab1419f6c5cf112a9d", +"T1_bitcoin-test_signtx.py::test_one_two_fee": "1e9d0e62b59fbad8292746895b3cdbdbe51cc9b61600fa2f3185fa6211045f20", +"T1_bitcoin-test_signtx.py::test_p2sh": "cb907533e744fc8a37b9e47637cc2350de8d0b7b523fcb6ab3955364f2d61f3b", +"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[branch_id-13]": "20c49d878b51f7d20129c0f3ebefd2a0dff152d57d926dc7f539d4bd4ee44ea5", +"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[expiry-9]": "20c49d878b51f7d20129c0f3ebefd2a0dff152d57d926dc7f539d4bd4ee44ea5", +"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[extra_data-hello world]": "20c49d878b51f7d20129c0f3ebefd2a0dff152d57d926dc7f539d4bd4ee44ea5", +"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[timestamp-42]": "20c49d878b51f7d20129c0f3ebefd2a0dff152d57d926dc7f539d4bd4ee44ea5", +"T1_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[version_group_id-69]": "20c49d878b51f7d20129c0f3ebefd2a0dff152d57d926dc7f539d4bd4ee44ea5", "T1_bitcoin-test_signtx.py::test_signtx_forbidden_fields[branch_id-13]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx.py::test_signtx_forbidden_fields[expiry-9]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx.py::test_signtx_forbidden_fields[timestamp-42]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx.py::test_signtx_forbidden_fields[version_group_id-69]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_signtx.py::test_spend_coinbase": "02175ff4aee412a12454cf78c32174fe49ec35362008c725cc3bfc4c8fe4e371", -"T1_bitcoin-test_signtx.py::test_testnet_big_amount": "67d10e48b12ea4c4fd584b78eb8300723b3a79f1d9ffd633e557eacbfdca7435", -"T1_bitcoin-test_signtx.py::test_testnet_fee_high_warning": "6810af8d576a30d6dd8f7988705d34c83d9863de568eb7ee8e2c5c6e8f864422", -"T1_bitcoin-test_signtx.py::test_testnet_one_two_fee": "6d4d21d4c5f3bf4a480e39286a7a33ff86e74cc6d28ff413779b0d936f6ee28e", -"T1_bitcoin-test_signtx.py::test_two_changes": "3e3318b5e68c1866962479a8106ba0ad9ed6c8660eb6365a101be7040729214f", -"T1_bitcoin-test_signtx.py::test_two_two": "1dc531b298df9930f4003afe2836ac4bbfca8a8084e523de9a26032ff95846b8", -"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.BITCOIN]": "367fd3c75f30f7224435e3309562d210d9ac6809ce2fae392f7fe75070fda094", -"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.MICROBITCOIN]": "7160b1f30adb583b70e4de20cd418054db32181c74baae0d476f8fa6b669784d", -"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.MILLIBITCOIN]": "8081910bd937c704fb65226dc85e8fc58a7331102aa036a5a97652638a0bde20", -"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.SATOSHI]": "a565b50e63776aad284c42c71bf53e5844dff12f159cbd00679b97d2fb74fd20", -"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[None]": "367fd3c75f30f7224435e3309562d210d9ac6809ce2fae392f7fe75070fda094", -"T1_bitcoin-test_signtx_external.py::test_p2tr_external_unverified": "e09b404a39a4594f1b7bdc146bc6b8783f62f6c4568785f1ee8e1eae2d902c65", -"T1_bitcoin-test_signtx_external.py::test_p2wpkh_external_unverified": "3502ca6c3112b694161713d573a5547d3801894a990c108096900b95f689a734", -"T1_bitcoin-test_signtx_invalid_path.py::test_attack_path_segwit": "473636ae4c43d8a349db09187b74eb4c1aa2b7fe02742d5fa928cdbc2a9e4cfd", +"T1_bitcoin-test_signtx.py::test_spend_coinbase": "c03f66d6ddb7eaca4cdd74ca73b594ad0d2760a0cd963ee02f5a981cc8dccb63", +"T1_bitcoin-test_signtx.py::test_testnet_big_amount": "f719fdaecbbf3abda98e3429c912bfb59079ad3df92b0d0fc8cc603d189b87cf", +"T1_bitcoin-test_signtx.py::test_testnet_fee_high_warning": "780476b5a22bb4901ed4e9a67f7a631c5ade4b50d2813d64cc227188305a7ced", +"T1_bitcoin-test_signtx.py::test_testnet_one_two_fee": "d415fc90494448dd952871a3ef2d77100c4b9f7f852513137ae34a9e2126449b", +"T1_bitcoin-test_signtx.py::test_two_changes": "61e8de6771877b747d58272920e47671d4cc6f0de0643c0932dba2d7a64aee31", +"T1_bitcoin-test_signtx.py::test_two_two": "dbe1e1fea61ba401b84a89253cc6d86c80ecb80d58ec50f6b984d9c043d66686", +"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.BITCOIN]": "21f26f41f362c72621612a5ad09e94a7c0d7aa78e374317fdbec6703724c9fc6", +"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.MICROBITCOIN]": "70b0a41b018830b26d1f060997255ed2f878ada498de8f20f2585b0fc44713b8", +"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.MILLIBITCOIN]": "fe50faec0e32b04981b41ebda5911f1fc9a55b5ca40a91d62800ecb22647d13d", +"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.SATOSHI]": "70c63e3c8a75504d5d6cba703144667d26cdb1888a8a9b6361fbcee5eb1c7bab", +"T1_bitcoin-test_signtx_amount_unit.py::test_signtx[None]": "21f26f41f362c72621612a5ad09e94a7c0d7aa78e374317fdbec6703724c9fc6", +"T1_bitcoin-test_signtx_external.py::test_p2tr_external_unverified": "19e56e826e17f0b5cb5ab26d684dd4d1ef73da2711edc8bef2a086962c1382b0", +"T1_bitcoin-test_signtx_external.py::test_p2wpkh_external_unverified": "af9f164a44223a2b004ec49b7a18bf0add314b29331c4fa8fd98e845f705ebd6", +"T1_bitcoin-test_signtx_invalid_path.py::test_attack_path_segwit": "8ea6ddd6d6b577ab5c7b262a0bc0393d5f9415ca3c018e18099661880ce79545", "T1_bitcoin-test_signtx_invalid_path.py::test_invalid_path_fail": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx_invalid_path.py::test_invalid_path_fail_asap": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_signtx_invalid_path.py::test_invalid_path_pass_forkid": "c83cf4f8324514dba0831e96fa2c20c30cef4121dcd594cf3232af19e4721a07", -"T1_bitcoin-test_signtx_invalid_path.py::test_invalid_path_prompt": "cbf1b6f66151a120689757e6dcd7af9483ceb19e5aa1dff3e1fb5c6f4be8d292", -"T1_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_inputs": "5b980d57e7d1707d8802bff0665e0460fe5c594c91d758b05ee59020b72e3941", -"T1_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_non_segwit_inputs": "704181fd5aa2ff33a9e5a27874187585ef946f7cdf6e690a7316a33921f25602", -"T1_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_inputs": "5b980d57e7d1707d8802bff0665e0460fe5c594c91d758b05ee59020b72e3941", -"T1_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_segwit_inputs": "704181fd5aa2ff33a9e5a27874187585ef946f7cdf6e690a7316a33921f25602", +"T1_bitcoin-test_signtx_invalid_path.py::test_invalid_path_pass_forkid": "10c9211a40ddfcb978f68ea74fbe8e11171851a88207f96e372670ffb818b31d", +"T1_bitcoin-test_signtx_invalid_path.py::test_invalid_path_prompt": "5ed3e34779bb807089333d55ba59ddc19b5229ebadad7012ddb88819a30db70c", +"T1_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_inputs": "c2622d993617201ef0d092087111d161c130ca1bfcfcff074c55d9aaa8634e05", +"T1_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_non_segwit_inputs": "f70134672a25cd6e3b21140f7d11790321675c60af3b3517a5ad23cf79ccaac1", +"T1_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_inputs": "c2622d993617201ef0d092087111d161c130ca1bfcfcff074c55d9aaa8634e05", +"T1_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_segwit_inputs": "07de3e057f55d05f59d1d457d787d3f37321a01f1c459adbbeebabdf4acfc958", "T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[hello world]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[x]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[]": "0aaaaec8e263055e9b26e93e839f8fa57c54f7dcebef9d7f94bc175712317c1d", -"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[hello world]": "0aaaaec8e263055e9b26e93e839f8fa57c54f7dcebef9d7f94bc175712317c1d", -"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[x]": "0aaaaec8e263055e9b26e93e839f8fa57c54f7dcebef9d7f94bc175712317c1d", -"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "0aaaaec8e263055e9b26e93e839f8fa57c54f7dcebef9d7f94bc175712317c1d", -"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[]": "92816fb27c0fc626348c8ac485990305a824890ea5c862723d6cd53c7b558516", -"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[hello world]": "92816fb27c0fc626348c8ac485990305a824890ea5c862723d6cd53c7b558516", -"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[x]": "92816fb27c0fc626348c8ac485990305a824890ea5c862723d6cd53c7b558516", -"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "92816fb27c0fc626348c8ac485990305a824890ea5c862723d6cd53c7b558516", +"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[]": "0960105d3a310c19b478ec077ed60fce8210adb436e0f16b3bc2d5b3179a6ed1", +"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[hello world]": "0960105d3a310c19b478ec077ed60fce8210adb436e0f16b3bc2d5b3179a6ed1", +"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[x]": "0960105d3a310c19b478ec077ed60fce8210adb436e0f16b3bc2d5b3179a6ed1", +"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "0960105d3a310c19b478ec077ed60fce8210adb436e0f16b3bc2d5b3179a6ed1", +"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[]": "77dc4379e7d42c6e96c5c304e3f8cf1291145d317b98c9db6e3f7ab475938f57", +"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[hello world]": "77dc4379e7d42c6e96c5c304e3f8cf1291145d317b98c9db6e3f7ab475938f57", +"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[x]": "77dc4379e7d42c6e96c5c304e3f8cf1291145d317b98c9db6e3f7ab475938f57", +"T1_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "77dc4379e7d42c6e96c5c304e3f8cf1291145d317b98c9db6e3f7ab475938f57", "T1_bitcoin-test_signtx_replacement.py::test_attack_fake_int_input_amount": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx_replacement.py::test_attack_steal_change": "3a79850fe95abbd2ca342fc62ba7f6404c4f437977764839a8146789ac811fce", "T1_bitcoin-test_signtx_replacement.py::test_p2pkh_fee_bump": "a386c4c61f5fe3b073db6b8725193f5bf7881d7b6fae175ff7d879f7c94eb795", @@ -282,31 +282,31 @@ "T1_bitcoin-test_signtx_replacement.py::test_p2wpkh_in_p2sh_remove_change": "14544554428651eb22515a88418c71f66de68e581ea2df5b2259843b1931e8fc", "T1_bitcoin-test_signtx_replacement.py::test_p2wpkh_invalid_signature": "7b3b6ebee78fed0e64c9689c64c5fbf73099812c5452b2fd2dbe2c23cd69b669", "T1_bitcoin-test_signtx_replacement.py::test_p2wpkh_op_return_fee_bump": "897291942225c61f9b641c7a1287960e7c21d80ada6c75414399d76edc41054c", -"T1_bitcoin-test_signtx_segwit.py::test_attack_change_input_address": "fb82fd6c801028181ea89cc517c1401ca78d319b1b9d60e19e5b1cc0107a083f", -"T1_bitcoin-test_signtx_segwit.py::test_attack_mixed_inputs": "614206bc232bf0a07846361bd21a2a0520c8384f052ba362d227e17c33013270", -"T1_bitcoin-test_signtx_segwit.py::test_send_multisig_1": "ef1b4df6ac3e37d1770d2126fb60df2d4c51fcda9181b24d157dbfbc4bf5aa89", -"T1_bitcoin-test_signtx_segwit.py::test_send_p2sh": "3e7fa3df71dd433cfd7d95dd7f2009140c62b030404d1dcc76fb93d864bfad46", -"T1_bitcoin-test_signtx_segwit.py::test_send_p2sh_change": "622a4c2aa2d3601805a873fb99239154827332807405283a1f9d30d961e36b0b", -"T1_bitcoin-test_signtx_segwit.py::test_testnet_segwit_big_amount": "757708d7fcb2add811bd9889d235ba0ea3dca47bbf404dec4d68ccae5cd80b8d", -"T1_bitcoin-test_signtx_segwit_native.py::test_multisig_mismatch_inputs_single": "5d60efa3669af08b35690141f1fbdeb4ce8904d6dbc550262046f27c7881c5b6", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_both": "e52219c8f2975757aae7bf346c60cf5e2ca14fe94ee7fc47a998bf08b6f66532", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_multisig_1": "8ffc5c4bcef1b51635cace2cb17654fc7673130fa042cd9dae609329a15a86f9", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_multisig_2": "5a21305ab43d290d59d7426c0d575b41d620c07657d23cecf85c056fddf59088", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_multisig_3_change": "1c672667742c4501048d0bb5f75042d092e9cbdc63841990e870c49a4f1c582e", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_multisig_4_change": "1c672667742c4501048d0bb5f75042d092e9cbdc63841990e870c49a4f1c582e", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_native": "367fd3c75f30f7224435e3309562d210d9ac6809ce2fae392f7fe75070fda094", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_native_change": "5184dbffd919a2fd9844a693a49a51cb2f939c7e6fc697086d0744937e7cee04", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_p2sh": "1179ebbe996d4ecb8f4feffee729013fa51b69c2df3dede5348c399145ea5f69", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_p2sh_change": "62853b14987405610260944666186026073949bd77778c71df8126f4d4748cd0", -"T1_bitcoin-test_signtx_segwit_native.py::test_send_to_taproot": "c1611998c9d82dd50b470020c5b1407da0af05f83cab6b85edaa12cf09f92095", -"T1_bitcoin-test_signtx_taproot.py::test_attack_script_type": "bba2db068bdc16da9e761ee7592ade5fc5c8a58d85ef96558b0eb6f08f074e99", +"T1_bitcoin-test_signtx_segwit.py::test_attack_change_input_address": "0a2de255203b89887ddb068cecd0aa3e53e23c8b66e833284dbcd6830c9187ee", +"T1_bitcoin-test_signtx_segwit.py::test_attack_mixed_inputs": "73e57bcb784b809bd202a360aa7a017f96e5bf3fa73e7bd5e5a91b181ff20024", +"T1_bitcoin-test_signtx_segwit.py::test_send_multisig_1": "2281da53c4bd7f12625f0f43913210629909c877c770621579c3410ae0691748", +"T1_bitcoin-test_signtx_segwit.py::test_send_p2sh": "cf499aeaa4f7b12734ef704c6735bdcfe614f5018a755e57d41a9911ab7f1e5e", +"T1_bitcoin-test_signtx_segwit.py::test_send_p2sh_change": "e93dfae27b52860d05d64e6591efcfc4a175262ac208352d1a4949c20c6868f5", +"T1_bitcoin-test_signtx_segwit.py::test_testnet_segwit_big_amount": "32f4561974abff85a6569299f3fadbd88eadf1669e6159f42143553f9eaa9192", +"T1_bitcoin-test_signtx_segwit_native.py::test_multisig_mismatch_inputs_single": "2323758586e798c03e773948d053ac0b88ff1389ddc53d639510c13ba97405ac", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_both": "a9d068ddc9ad90b7dcfd22d13ad4e5190456f8b17611948a444a5af9f85a7f41", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_multisig_1": "7460676a7cb784e0c6b3475cdac2fd6e838c0202aff52bcc264369556057c284", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_multisig_2": "56eb2a30fbde41fdc5eedfcc6d1368d10dc4063c473a00e79b5b9cbbb88ba537", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_multisig_3_change": "af0ecb0148c685a50437ffe9a28cd7ef31b52c28390cede46fb08af504a60675", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_multisig_4_change": "c2a3de98946cbe686e0155d14bb93fbaacfdad33b3ee7cdb0d357808c6d9edfb", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_native": "21f26f41f362c72621612a5ad09e94a7c0d7aa78e374317fdbec6703724c9fc6", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_native_change": "d57e75699ab171d8c0d63063d3ea821dd6ba4b245d2915860ccc17b0fa1bb635", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_p2sh": "be88444f74522677caa3356fd860a75e45dedb4ced3ff8de29f4660b4e5460ad", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_p2sh_change": "86e887b4c311cbbb6dcf4c37d11a41c3d1b191b1e52f77a87aab262fabddc215", +"T1_bitcoin-test_signtx_segwit_native.py::test_send_to_taproot": "3446200725a88939d53a135f9071110e6b60e77bf3f83028269ead20e700b272", +"T1_bitcoin-test_signtx_taproot.py::test_attack_script_type": "63acc64409752811004b47ac23fef38804651c3b3e6b186d6c972fc6264b16ef", "T1_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1pam775nxmvam4pfpqlm5q06k0y84e3-a257be51": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1plllllllllllllllllllllllllllll-aaa668e3": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1plycg5qvjtrp3qjf5f7zl382j9x6nr-5447628e": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1zlycg5qvjtrp3qjf5f7zl382j9x6nr-880d4a6b": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_bitcoin-test_signtx_taproot.py::test_send_mixed": "ba34c8f8de35d7e2ae601b654d79733090f23c8c6a6bb7cefd4e34aeb7464f8b", -"T1_bitcoin-test_signtx_taproot.py::test_send_p2tr": "2a93397f0234dc5146409aac68dc644c6e09d0da08aeb178f988cec168893d24", -"T1_bitcoin-test_signtx_taproot.py::test_send_two_with_change": "80780faa76323e2441aa3ba54f812b65d58dd3fed3c54189f4cbe65d2159f24c", +"T1_bitcoin-test_signtx_taproot.py::test_send_mixed": "3f94ff30dff867fd58667cd1f26025939856212f8cf3eefee4eafbfa5f2c6003", +"T1_bitcoin-test_signtx_taproot.py::test_send_p2tr": "41ba0add99e39307da4337a88c501df5594be2a6539f5afeb4b35d99628ae9b0", +"T1_bitcoin-test_signtx_taproot.py::test_send_two_with_change": "6e32c316b41ad35dbc46a10713ad569b832651dc54efa935dbdc0a05f5ccf990", "T1_bitcoin-test_verifymessage.py::test_message_grs": "3a99e790a5d48dbaf76e15d314b46113f10daba5ad4cbb652d162033b0d3b02e", "T1_bitcoin-test_verifymessage.py::test_message_long": "ed4a40daa108bb66f076da8c3b30e905c54a0917d0b9fab12ea381bf6f5a2036", "T1_bitcoin-test_verifymessage.py::test_message_testnet": "d46dbcc225a2b01433bb80af1a0983d6b8c157cc6004c0dce0e895d59b040601", @@ -322,8 +322,8 @@ "T1_bitcoin-test_verifymessage_segwit_native.py::test_message_testnet": "ef5ddd814807615cb28e60aa67c53c768b871f02ed75d86ff9cde22a63db9ceb", "T1_bitcoin-test_verifymessage_segwit_native.py::test_message_verify": "f0db374f9264968c3ac8257227403eaeb06196ed53b9a6652e2cd0615a5ac43a", "T1_bitcoin-test_verifymessage_segwit_native.py::test_verify_utf": "550602a4230f3cbf01b7af22018947ef6ae8706983af18164810f28c8f519256", -"T1_bitcoin-test_zcash.py::test_one_one_fee_sapling": "4815f065698128ea9b852aa25c6a160a4246eefbb65de704da281b2c4f2395d0", -"T1_bitcoin-test_zcash.py::test_spend_old_versions": "310e741553422ebe826d96e2b9c365bf5d408ec63b27ba397347647d2720f672", +"T1_bitcoin-test_zcash.py::test_one_one_fee_sapling": "e6e070990f6b5ab3ce338c4e10b8e0d63d08313100137f69ba527e2399998e1a", +"T1_bitcoin-test_zcash.py::test_spend_old_versions": "f894cc8650d19ec90462b581d0e5228009973d1168097856d8c6a197e4a423c7", "T1_bitcoin-test_zcash.py::test_v3_not_supported": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_bitcoin-test_zcash.py::test_version_group_id_missing": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "T1_ethereum-test_getaddress.py::test_getaddress[ETC]": "37e446e17465ce9823c34c9162d94e4ad3c84faa86bae7966c753be5c5fd77a2", @@ -577,7 +577,7 @@ "T1_test_protection_levels.py::test_recovery_device": "9bcc413cf3e44af03f2dbb038c4df43bf503805447b71dd5713ab34335f9341b", "T1_test_protection_levels.py::test_reset_device": "b76ab8da407423d61c605a6c1a5851885ea0aa0fe81b23a7bdb6f9f39492aed0", "T1_test_protection_levels.py::test_sign_message": "c0ffb0307822ff7327b23e0e7db6a9396cacca93880afe8960d1b0469978a49d", -"T1_test_protection_levels.py::test_signtx": "89e63404e7f65e0f019b8ea024c770f311676b94ae54cd8886e34e976648a0de", +"T1_test_protection_levels.py::test_signtx": "ccace7e0450a6f6e9c8ec0dcf1abad3e5fecbb7148ff2d5c7f9777939f5b1b5d", "T1_test_protection_levels.py::test_unlocked": "4c32aa18ecc83cd6c642784ff825246e09ed8bc4b17f23a6127dac7c8b36bccf", "T1_test_protection_levels.py::test_verify_message_t1": "d4f8be1019f13604e2ceec12e65a0eccc8825ed07072479b355dd30e2ea83219", "T1_test_protection_levels.py::test_wipe_device": "71f454265675d5884e5419569ea85cc5fcb579de2dae23630fc3c9877b7e00be", @@ -596,12 +596,12 @@ "T1_test_session_id_and_passphrase.py::test_session_enable_passphrase": "a3c4b11a1e0086e2e364013391188cd19aaa5e5893372249eb7a7e3217c91e96", "T1_test_session_id_and_passphrase.py::test_session_with_passphrase": "65a57f452581e8dd73d0f044a11abd81610cff1ea4e6f93883b1915f7a534b35", "T1_webauthn-test_u2f_counter.py::test_u2f_counter": "7aa71ff8b3d16c8288c9ac826f95f45a0e09d395355e94c96b98b32137dedd62", -"T1_zcash-test_sign_tx.py::test_one_two": "33efe57e5c258f82aad93da79692003ec401f187054a345efc94ba072f40c266", +"T1_zcash-test_sign_tx.py::test_one_two": "8adffc774f32455a3b244f366a24646b2154012c65ba92a392fd3cfd9d2b5009", "T1_zcash-test_sign_tx.py::test_refuse_replacement_tx": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", -"T1_zcash-test_sign_tx.py::test_send_to_multisig": "7abb28e1ea3370476e1aaae3c9ec42f1f97a3779d0aee09739ff60654207de75", -"T1_zcash-test_sign_tx.py::test_spend_multisig": "6e7b2c538445e4985849e05e36fe2d38bed68071aae14badadb2b8f74155aa1e", -"T1_zcash-test_sign_tx.py::test_spend_v4_input": "a468c73ba7f1ef62159df9bba30542b8c0883000fd89097e3fdba9591be634c6", -"T1_zcash-test_sign_tx.py::test_spend_v5_input": "55a6631eefd0419009abe409124f84f3edc02bf630227fe730db72e9d4cc4710", +"T1_zcash-test_sign_tx.py::test_send_to_multisig": "744a0812f95e4310e81c244d7bd55b14d645c535a1debc34db13b0110f378dfd", +"T1_zcash-test_sign_tx.py::test_spend_multisig": "6ea73171304175fcd3e843e6c779df7b01156e181316b1b8bf759c7238963e1e", +"T1_zcash-test_sign_tx.py::test_spend_v4_input": "56bb717555a6320a924958b208f8b66e2881093b615e27b50c300fa977790775", +"T1_zcash-test_sign_tx.py::test_spend_v5_input": "3c4bc6326178dee38c7a851659afee911a17ceb0cdaf4a26074e1c40f72e0795", "T1_zcash-test_sign_tx.py::test_version_group_id_missing": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", "TT_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-0-bnb1hgm0p7khfk85zpz-68e2cb5a": "a8acaff76064949f9b800493cb3c8a1fb56f206bda9a85a80fd008475d2a946b", "TT_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-1-bnb1egswqkszzfc2uq7-1adfb691": "8b7387f0d82f78aa15f848a0995507db80f51416956d49ecd893ea49e7b64523", @@ -613,29 +613,29 @@ "TT_bitcoin-test_authorize_coinjoin.py::test_multisession_authorization": "65c9435e10e3dede19169a9b02d373bd5acb22eba0ba3b31324271025d65d5a7", "TT_bitcoin-test_authorize_coinjoin.py::test_sign_tx": "87b81a29fe6e27fdfedfdbb1953b3d0178786749eadbb0fe01509c1af8075de5", "TT_bitcoin-test_authorize_coinjoin.py::test_wrong_coordinator": "2e5cffe7bd0dc6034852d21612fba8cf1ee3c45a14e76140a4c2786f360f54f0", -"TT_bitcoin-test_bcash.py::test_attack_change_input": "b824d3eb233f6ba2567dd052fa4b52e9a1f170fe4a39af55c1cc262683f188b9", -"TT_bitcoin-test_bcash.py::test_send_bch_change": "b824d3eb233f6ba2567dd052fa4b52e9a1f170fe4a39af55c1cc262683f188b9", +"TT_bitcoin-test_bcash.py::test_attack_change_input": "3979e688361b1ee8c0b824d58b49eb77836e190e92dc13b9c67f8fe653785aa0", +"TT_bitcoin-test_bcash.py::test_send_bch_change": "3979e688361b1ee8c0b824d58b49eb77836e190e92dc13b9c67f8fe653785aa0", "TT_bitcoin-test_bcash.py::test_send_bch_external_presigned": "4ea82258a094d49829ab7240465de9cb06198d7b0bb1a56b66bfbda5ccc676c1", -"TT_bitcoin-test_bcash.py::test_send_bch_multisig_change": "337d6977944e66e18f3e8b1fefe5963d816b33fc37a1c20c01949415d5c3867d", -"TT_bitcoin-test_bcash.py::test_send_bch_multisig_wrongchange": "546a320adf475987c7a51c1838800e7207dd829b63b7ec30ca250c2b52df1431", -"TT_bitcoin-test_bcash.py::test_send_bch_nochange": "39ac01282a407c2629f5bfbb4efaf805ddf8f36b20729d4163b2b2fd21ceaa2a", -"TT_bitcoin-test_bcash.py::test_send_bch_oldaddr": "c8d0efa8282359a4b06a5ab3ff1939d0d98aa367188b630e300a8d38998be1cf", -"TT_bitcoin-test_bgold.py::test_attack_change_input": "2a5b0dd67be46ed19a3ba18f10019f37d56f16145a11ec9dfafd8b1c14221c46", -"TT_bitcoin-test_bgold.py::test_send_bitcoin_gold_change": "2a5b0dd67be46ed19a3ba18f10019f37d56f16145a11ec9dfafd8b1c14221c46", -"TT_bitcoin-test_bgold.py::test_send_bitcoin_gold_nochange": "5125ad27c684dfb90ae0b685339373ad82e52245b5b77787c9613380167c7782", +"TT_bitcoin-test_bcash.py::test_send_bch_multisig_change": "4648b0c725a8420da627201ac25d93dd22cdb2f4d73702796ff535990120b4f3", +"TT_bitcoin-test_bcash.py::test_send_bch_multisig_wrongchange": "4ab99fac5443720414395683e51540a07dde229643d1ca98b215bd25adb154d5", +"TT_bitcoin-test_bcash.py::test_send_bch_nochange": "1e0515b3d5e412cc19e674bfce9f0040be70f5a097220d8204f401e57e33695e", +"TT_bitcoin-test_bcash.py::test_send_bch_oldaddr": "92f36b00603d6390925051a606934e9573f5960455d46af25ba088ceba000358", +"TT_bitcoin-test_bgold.py::test_attack_change_input": "5ea9694de5965ca38b76a320e562cf7d4d012547f2ae028684d413ce187e8884", +"TT_bitcoin-test_bgold.py::test_send_bitcoin_gold_change": "5ea9694de5965ca38b76a320e562cf7d4d012547f2ae028684d413ce187e8884", +"TT_bitcoin-test_bgold.py::test_send_bitcoin_gold_nochange": "4d26aae857b8617d344fa9722d8e6160bfebc6e2361364d53a55466cc6f5d3a0", "TT_bitcoin-test_bgold.py::test_send_btg_external_presigned": "26edf762cee23502a3f09ed99a27f77e7a94d95ac6d1fddabba9c36b708157f8", -"TT_bitcoin-test_bgold.py::test_send_btg_multisig_change": "98e241887f0845f705c4111d7271865b85d701eae0dcc0efe0d763413cc6735b", -"TT_bitcoin-test_bgold.py::test_send_mixed_inputs": "5125ad27c684dfb90ae0b685339373ad82e52245b5b77787c9613380167c7782", -"TT_bitcoin-test_bgold.py::test_send_multisig_1": "2a8239a9b784fa275ea77043eafc3d7bf252933a4021544e2c3727e945f4c073", -"TT_bitcoin-test_bgold.py::test_send_p2sh": "82b651d25aa6845ee43de065a5fb5b983409e30bea6d4885e8f516f9daa30cdf", -"TT_bitcoin-test_bgold.py::test_send_p2sh_witness_change": "bf55d06b7ba1c47a19e7a3468269883878858973486fdaac24513f80746bd037", -"TT_bitcoin-test_dash.py::test_send_dash": "cd2029addbee00f505ffe674dbe4f6a86b99196140518dd2e9e279eac46d0b6d", -"TT_bitcoin-test_dash.py::test_send_dash_dip2_input": "87dcb2a6b791083b8546794fe0b9359d562f6a62e6b17528f480143776fcb154", -"TT_bitcoin-test_decred.py::test_decred_multisig_change": "2df75d68bbce95a07f6b3cb5717d15bb4826923f8ec6b30919eb3aab0eb22368", -"TT_bitcoin-test_decred.py::test_purchase_ticket_decred": "177228072dd801153d7352d38f5e88999c63431a04d7af6a55b3b1643754d83a", -"TT_bitcoin-test_decred.py::test_send_decred": "672aa6c17b1b59abc497e83fda716c38d2a4f37107a731e40eba7d8a3a020ce4", -"TT_bitcoin-test_decred.py::test_send_decred_change": "dbc8e309533e92be0098b6f25b8545611d8b6d28a9a2c46b0d71dfa004750b3b", -"TT_bitcoin-test_decred.py::test_spend_from_stake_generation_and_revocation_decred": "a8a1451c9ab4dea8228665b6e008a4aa806007898b1b45ab0ef47df33501c705", +"TT_bitcoin-test_bgold.py::test_send_btg_multisig_change": "e618241598a88de5f342cd1ab43d18406c11231f5d36638beeea5cc35b679174", +"TT_bitcoin-test_bgold.py::test_send_mixed_inputs": "881f2eddaa614e5455f75f04be20eb80cd92ee86fdc83bd41f6d146890fdc92d", +"TT_bitcoin-test_bgold.py::test_send_multisig_1": "cf206d1f6a92f4fd4d434dc4317873ab71bf56311ac7c25dbd307a9b17f066f6", +"TT_bitcoin-test_bgold.py::test_send_p2sh": "64853213ef5aa0105df3e0572174d1566f42ada0bdf3d87daf7187cebce840d6", +"TT_bitcoin-test_bgold.py::test_send_p2sh_witness_change": "56a5f215c03ea1dde5e4766ce61b056ca908ef2aad4870f886c7c47d002d1c04", +"TT_bitcoin-test_dash.py::test_send_dash": "d1bfc56de1950c14e8f0e09d853f0d674d7ab025557f7d4deaadc11b9441e82e", +"TT_bitcoin-test_dash.py::test_send_dash_dip2_input": "4a7c23147a0d5215030430e20877aa622e8920f24e4f90c6bc676f713ba2bc61", +"TT_bitcoin-test_decred.py::test_decred_multisig_change": "871622bcf656e411e32d252d8d55ae02a92f1af604fc0de8a09d6546f220f0e0", +"TT_bitcoin-test_decred.py::test_purchase_ticket_decred": "fa5da6ca78a4895a9a67b36e3936e8418b7b89a39e5ac5a2eda30730e5057486", +"TT_bitcoin-test_decred.py::test_send_decred": "efaff738ae61d1aa5c3790490d1e4e8d43dc2b6e5c648cdc9750beb400d554b1", +"TT_bitcoin-test_decred.py::test_send_decred_change": "666fddf428f70e1352ddd82b6aebfd8d4f8c0fff824941f404e6ff9ab90475ef", +"TT_bitcoin-test_decred.py::test_spend_from_stake_generation_and_revocation_decred": "9abeb9f74e03c8d0b91e31aadff75ee8d777b965200a552658948d58ec3b746d", "TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDADDRESS-pkh([5-7a80e3db": "24290396b20f26b49204a5551676d6f3c831009e30582d92d5b44fcc3c12fdb7", "TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDP2SHWITNESS-sh-03d56ac2": "8977c539f5680a5196ad0a4c6e16c44ca1bbdb79235dbf97e33aad8d47fe5d0c", "TT_bitcoin-test_descriptors.py::test_descriptors[Bitcoin-0-InputScriptType.SPENDTAPROOT-tr([5c-22751b2f": "3c31e8f9e396a1313c22480aac32f901086df23d8edf3f808d2f46a0d063034b", @@ -652,8 +652,8 @@ "TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDP2SHWITNESS-sh-e8c5303c": "6261537d1445ce1fb637760f8ec77aae8650ee4f0f5ab919ba1a41f039a02b1f", "TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDTAPROOT-tr([5c-ddc924d3": "fe4691af27c7221ac650927a4ee64aeb17ba323f746a03763d053a8311f6633b", "TT_bitcoin-test_descriptors.py::test_descriptors[Testnet-1-InputScriptType.SPENDWITNESS-wpkh([-996ae319": "3181b25e844eb1047d2904abb1099029c5f5ae4ba4d333be21336d1a745aafe0", -"TT_bitcoin-test_firo.py::test_spend_lelantus": "7b68b613a1ed9dc03c0416d8b86353effdaaacb703dcc40bbf7b8dbcd6254745", -"TT_bitcoin-test_fujicoin.py::test_send_p2tr": "18bdbbceedee99f00b4f23d0b78b8e6b4d17b3eaced0cd13010188cc49747230", +"TT_bitcoin-test_firo.py::test_spend_lelantus": "a8137f7ab283b79c88b6e74071e758d0cb0b8bbbe0514bf374b4cb131a63d5dc", +"TT_bitcoin-test_fujicoin.py::test_send_p2tr": "858a93194a06ccbd0a287cbb107df13ecaa1a6afda922ac5342d35165ea78db3", "TT_bitcoin-test_getaddress.py::test_address_mac": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_getaddress.py::test_altcoin_address_mac": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_getaddress.py::test_bch": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", @@ -760,27 +760,27 @@ "TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[nist256p1-path3-03b93f7e6c777143ad-2d6b178b": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[secp256k1-path0-02f65ce170451f66f4-9c982c22": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_getpublickey_curve.py::test_publickey_curve[secp256k1-path1-0212f4629f4f224db0-0209bb73": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", -"TT_bitcoin-test_grs.py::test_legacy": "ba81ed9e36b62613b66469e2cc88465a60a8f8de75afdb85d64830a292d25526", -"TT_bitcoin-test_grs.py::test_legacy_change": "99fda14d1d07db526fdfd7f5d1c3204c7f5c769f9ef38f48440d482c01ee2b3c", -"TT_bitcoin-test_grs.py::test_send_p2tr": "a060847b12ad6f0563277e7b243916ff127542799fad0c4de19f40264a53c76f", -"TT_bitcoin-test_grs.py::test_send_segwit_native": "8b98c956848893c43d958510b2c1df19fb88aa25ddcb2b80edd8e56a7dafccaa", -"TT_bitcoin-test_grs.py::test_send_segwit_native_change": "fd8b04e26d71fad1c59f5e548c35f22f2031cfb99f9077824242e264fcbedfe6", -"TT_bitcoin-test_grs.py::test_send_segwit_p2sh": "e59018de5c49f902c6880c2347283b6c1830fcb19e8eab9686938a08abd930b3", -"TT_bitcoin-test_grs.py::test_send_segwit_p2sh_change": "08251e3b7e509264dbd89a5ded2deba51544d0fcfce1dc7466b553b73298d423", -"TT_bitcoin-test_komodo.py::test_one_one_fee_sapling": "6286409ed3e62a896c101112f6d1c59559dde677331d08f55ed7d2d43e6dd3b9", +"TT_bitcoin-test_grs.py::test_legacy": "9d6920a2a462f2337fd5cd7ad39ed0c982aa846ea06fddc1f610c9e2263530b9", +"TT_bitcoin-test_grs.py::test_legacy_change": "90a3957efde621651ad22c74fa35a85010546ffac98ce0bd6b5ebb4937228104", +"TT_bitcoin-test_grs.py::test_send_p2tr": "4851eddc91dcd4ff8bdf8558e17949bb3152d5a5d2144659abe36c92c183a942", +"TT_bitcoin-test_grs.py::test_send_segwit_native": "8b69c38306a5a690c151e665d8edfa67d1cd88293c089c0b1aa832acd0dfa6bc", +"TT_bitcoin-test_grs.py::test_send_segwit_native_change": "ad78a30252e92b74b4ecbcc3f7903f99015cf600eaa48252fab12da1ce779e81", +"TT_bitcoin-test_grs.py::test_send_segwit_p2sh": "8ebb36005772b04baea870ab9f6aa36642a402b3eee20cf81ff62b49d650f77a", +"TT_bitcoin-test_grs.py::test_send_segwit_p2sh_change": "58ba45fd292b9f44dd46c3b98f05b2885087cbdbfd0ad176e44a503e8e3a68ae", +"TT_bitcoin-test_komodo.py::test_one_one_fee_sapling": "e13cac7cd095117701bcbc7526954dd06823ed4f0c56015ece54244bce459055", "TT_bitcoin-test_komodo.py::test_one_one_rewards_claim": "b3c056df25d639927faaf16dc18c281c1a36b790ea4e77f954f681fb27d3fa1a", -"TT_bitcoin-test_multisig.py::test_15_of_15": "230fd7974beb81c3824cb89f373336be80bfc62954220e63f0321e13d57ae8db", -"TT_bitcoin-test_multisig.py::test_2_of_3": "49fea8705e96436830613412daad4f87f5b940dc4674aec23e0fd013a81afc68", -"TT_bitcoin-test_multisig.py::test_attack_change_input": "0455575766d47245b0943a14e46a0d31a3e8fba4f0ccce5bb76024897140ecd4", +"TT_bitcoin-test_multisig.py::test_15_of_15": "616d7fd025485963d63ec993db335f5e06ccb0bfcafa094d164a56918796e0bf", +"TT_bitcoin-test_multisig.py::test_2_of_3": "7b7ed7e08fba2bd40ad04addd3f8e95c705c9d9fbc0b03e0cabcdbdb9e6d270e", +"TT_bitcoin-test_multisig.py::test_attack_change_input": "4f3191c15d14eaec415eed2ad7127026f62a150a89381be5e6dba2e1e3596a2e", "TT_bitcoin-test_multisig.py::test_missing_pubkey": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", -"TT_bitcoin-test_multisig_change.py::test_external_external": "e8a36ea9a3abeca8d7ac862f384c6ad49929b00e8c291ef49807d6b0c7798c5e", -"TT_bitcoin-test_multisig_change.py::test_external_internal": "f6397edb70e13528fb2821b9097f72300bc76460deb32649b5bff9f76707d5b3", -"TT_bitcoin-test_multisig_change.py::test_internal_external": "9db6a634345a336110211706ce133a1b4a48dce22df571843886036e62b465fb", -"TT_bitcoin-test_multisig_change.py::test_multisig_change_match_first": "b6d0dbec32ce1605a08d279339e70772ab30dd5c6ff39eaaca3db292b3f58e4a", -"TT_bitcoin-test_multisig_change.py::test_multisig_change_match_second": "c6d85587216428587fee3acb7cba4b027b43f48d0b9d84d84012c67548f63454", -"TT_bitcoin-test_multisig_change.py::test_multisig_external_external": "2accdde370c84aa4e99d429730d13098d0a909cc87b7e09ace534cfd980e0a8e", -"TT_bitcoin-test_multisig_change.py::test_multisig_mismatch_change": "e2dbd03579660294e8e19ad2e2ae33010d1c597ba65d919dcae03424943978d2", -"TT_bitcoin-test_multisig_change.py::test_multisig_mismatch_inputs": "bc207bc0016ad7e73a807ff6df12963f5d6e37b74421aed39d69e15b9d74d2be", +"TT_bitcoin-test_multisig_change.py::test_external_external": "f14e44e6eaf76dc236b982abad1b8857087c2ff441c063223d5280414241e60a", +"TT_bitcoin-test_multisig_change.py::test_external_internal": "ed4ce5c8394f9b74d0d5dfc34eba32993805b7f910a55b4322937c837f60981a", +"TT_bitcoin-test_multisig_change.py::test_internal_external": "9252b732e3645f3640efef901b602d9a3512943048ce87f545b9cba0349d85f4", +"TT_bitcoin-test_multisig_change.py::test_multisig_change_match_first": "b26b6e6ce81c7a993a364d56e00cb82971773850f53e1689944ac7c2e4bc63d8", +"TT_bitcoin-test_multisig_change.py::test_multisig_change_match_second": "9414230d0402801e45696d75c5e94583d026fd151f8c5c44bfb95d778d0f8687", +"TT_bitcoin-test_multisig_change.py::test_multisig_external_external": "c5e72c7a393a1bdf0d00d5224ac428a03618065e7ee08de1abe9e030c8c17bba", +"TT_bitcoin-test_multisig_change.py::test_multisig_mismatch_change": "c5a1c3a7e75e15a5a8ffc2bbcf244058ed3348226c2e7d88bb37df7ef67ebeed", +"TT_bitcoin-test_multisig_change.py::test_multisig_mismatch_inputs": "059c84ac76627ea82f7a8199ea18156ab010339f3c4aeeecc1c6c354abe6c5ba", "TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-1195487518-6-255-script_types3]": "7914107977c576bdf24120466a7f6c4dccef31ee24bd8133657cc8310a89891b", "TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-1195487518-script_types2]": "756a9cfc6b6c1c70859737ed1466d0495c0a0b148fb16f60e193e5b4784df66e", "TT_bitcoin-test_nonstandard_paths.py::test_getaddress[m-3h-100h-4-255-script_types1]": "b1f2a522eec51325ede3d518fc177e4ded3e15409aa5b1374067a05ab5a60bde", @@ -803,24 +803,24 @@ "TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-3h-100h-4-255-script_types1]": "4f73135d2ec9add695e0a22d855816558b4ba9329a2828f9c9930be6245bdc2d", "TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-4-255-script_types0]": "0988cc8bdc5879744bd33190fddc5b5aa137fdd7214abb003c8000a871d98f14", "TT_bitcoin-test_nonstandard_paths.py::test_signmessage[m-49-0-63-0-255-script_types4]": "540df94c73a4eed8fe88cdb475e2b31df752dca9e47b102792c01064ee432752", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-6-255-script_types3]": "37cfe119620536464ae42b3fbcae7b89d9272ad904da2bd8e8ae47b1024b4007", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-script_types2]": "27a03a5be542d1f5f76a839e65daec766c1d7de8ae4637404ffcfea8267ea0ec", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-3h-100h-4-255-script_types1]": "efbe785820901471b0e55f9fd743c84a29fe719c2e1c8e6b2f87b0a20ce43cb2", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-4-255-script_types0]": "efbe785820901471b0e55f9fd743c84a29fe719c2e1c8e6b2f87b0a20ce43cb2", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-49-0-63-0-255-script_types4]": "4392475bb51d2dd9316036ed268ee84bafb6f3f7b0d2e1ab6be69a63775d5f66", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths0-address_index0]": "8a444c8c07335eed4cc8d6fa2f20d172b086102e339445856472dae23b4ac396", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths1-address_index1]": "8a444c8c07335eed4cc8d6fa2f20d172b086102e339445856472dae23b4ac396", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths2-address_index2]": "b21362ab5ff1390d54b01b93f871322d6022fb530d9de7614fb67ceecac9eed6", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths3-address_index3]": "2b11a70f7c60bf03a5fe6de4f716b2cc32959c71e6d9d1222774eb56e7442be7", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths4-address_index4]": "8a444c8c07335eed4cc8d6fa2f20d172b086102e339445856472dae23b4ac396", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths5-address_index5]": "8a444c8c07335eed4cc8d6fa2f20d172b086102e339445856472dae23b4ac396", -"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths6-address_index6]": "8a444c8c07335eed4cc8d6fa2f20d172b086102e339445856472dae23b4ac396", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-6-255-script_types3]": "8e12862d0a59e320d386876c5e7c54f10f92d8bf7b2bf4428c4bb3de9d88e78e", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-1195487518-script_types2]": "922304dab753de94c853518f0d8ddde9f7ee38f403247014dbaa12d766eec993", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-3h-100h-4-255-script_types1]": "793cc526d3e814bdc8ab7912bc93a651edbfd5ecf4479c2ff3e16715ede2b558", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-4-255-script_types0]": "793cc526d3e814bdc8ab7912bc93a651edbfd5ecf4479c2ff3e16715ede2b558", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx[m-49-0-63-0-255-script_types4]": "0113b595d4a2831af7bea1df39d5eb597047f4632ae3ebb24fed04f2fc53abbe", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths0-address_index0]": "8327da4e1cfa1cb81b6219a8190c89d5617747399d053a560c4b2ad9da3e70c7", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths1-address_index1]": "8327da4e1cfa1cb81b6219a8190c89d5617747399d053a560c4b2ad9da3e70c7", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths2-address_index2]": "1863c035e68db9a5f7c3b45122374002633684c913ab06d4c1042a0c5b8c6089", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths3-address_index3]": "6acb25e7179efde13084f3ff209ed3d4f6854e289bf93bdff2646df104d23952", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths4-address_index4]": "8327da4e1cfa1cb81b6219a8190c89d5617747399d053a560c4b2ad9da3e70c7", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths5-address_index5]": "8327da4e1cfa1cb81b6219a8190c89d5617747399d053a560c4b2ad9da3e70c7", +"TT_bitcoin-test_nonstandard_paths.py::test_signtx_multisig[paths6-address_index6]": "8327da4e1cfa1cb81b6219a8190c89d5617747399d053a560c4b2ad9da3e70c7", "TT_bitcoin-test_op_return.py::test_nonzero_opreturn": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", -"TT_bitcoin-test_op_return.py::test_opreturn": "8a937e46437786346ebca907a41759caff8cbcf5d28979432347e1c004e9a0f9", +"TT_bitcoin-test_op_return.py::test_opreturn": "f2f6f4ac4780914040e0ac45129a7afaa4f585e6304a4730f71c22df69aa8a2e", "TT_bitcoin-test_op_return.py::test_opreturn_address": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", -"TT_bitcoin-test_peercoin.py::test_timestamp_included": "0e76606dba98b8389ef587f48c2ce65b66457d9b206eaecdda56a4e115e0c829", +"TT_bitcoin-test_peercoin.py::test_timestamp_included": "018e462b20548c82027af809e81aa4cef60334de053bcc3387e2bc8672255bf1", "TT_bitcoin-test_peercoin.py::test_timestamp_missing": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", -"TT_bitcoin-test_peercoin.py::test_timestamp_missing_prevtx": "fe6ecad8988b5c789419b9134317bbf018007c5005047dd9cba7b9655e56349c", +"TT_bitcoin-test_peercoin.py::test_timestamp_missing_prevtx": "3473e2d24b80885ee53ff9ee2e4682d34b9088aa3c38ee1f7bb432577486551d", "TT_bitcoin-test_signmessage.py::test_signmessage[NFC message]": "4c41515a7f5fe9ffd5805ed060cb9e3ca8e578c92fefa79479df738ca1636235", "TT_bitcoin-test_signmessage.py::test_signmessage[NFKD message]": "4c41515a7f5fe9ffd5805ed060cb9e3ca8e578c92fefa79479df738ca1636235", "TT_bitcoin-test_signmessage.py::test_signmessage[bcash]": "096a2d5f0c75af22be673fd1550e86987a61bb348b0102eec4913fe9cc8fbcf7", @@ -850,96 +850,96 @@ "TT_bitcoin-test_signmessage.py::test_signmessage_pagination[utf_text]": "4ac1d8e2491164d442b700ea65e430867d74a941ac0d0dc8d4f51f4494fd0bb0", "TT_bitcoin-test_signmessage.py::test_signmessage_pagination_trailing_newline": "3ecd60468981b8c59cae21ae1189ad42b9d69b87e86c17e51b40185e31a5c52d", "TT_bitcoin-test_signmessage.py::test_signmessage_path_warning": "2c8369a05493ccdd6a368f3428050f22fc5aa42cf5c34e4995c47c3c7bf764fc", -"TT_bitcoin-test_signtx.py::test_attack_change_input_address": "5f230e46301f0af85b5c40944cae1a8e4d3fc576fb19d7b7374decb463c8be62", -"TT_bitcoin-test_signtx.py::test_attack_change_outputs": "2df9cbdbe76d139e6be303a3f5d8a1e84a069bf9e650dfea9eb2dd81a071f500", -"TT_bitcoin-test_signtx.py::test_attack_modify_change_address": "72b96c639ac76ecccbe5d710a1c84eba6711879c329952b18ffab385ca79bafd", -"TT_bitcoin-test_signtx.py::test_change_on_main_chain_allowed": "72b96c639ac76ecccbe5d710a1c84eba6711879c329952b18ffab385ca79bafd", -"TT_bitcoin-test_signtx.py::test_fee_high_hardfail": "c3a47e251cffc5db05d4d2df2f5719f92b510b0883154cdf48836f20b08efaf7", -"TT_bitcoin-test_signtx.py::test_fee_high_warning": "767d1c55a33d159e653094ebb90f82db0935d89c466ccfb2d6db6a1449fef570", +"TT_bitcoin-test_signtx.py::test_attack_change_input_address": "0c14ec5abb64242613e347a3be60aba8101f80e00c70a347a000a653c7e584ed", +"TT_bitcoin-test_signtx.py::test_attack_change_outputs": "91933db014c3507d75bf76435c2489607ec13be79c8592fec66f80dce08ac3f6", +"TT_bitcoin-test_signtx.py::test_attack_modify_change_address": "20aaa67271db158f34f5dce1c07649de0a26b40b3b260074f5aa002a09d3f04f", +"TT_bitcoin-test_signtx.py::test_change_on_main_chain_allowed": "20aaa67271db158f34f5dce1c07649de0a26b40b3b260074f5aa002a09d3f04f", +"TT_bitcoin-test_signtx.py::test_fee_high_hardfail": "f29c99a8db8feebb5bf13504747fec139cce3f2d14cfb3d031bbf8f1342adee5", +"TT_bitcoin-test_signtx.py::test_fee_high_warning": "0924f32ac50d6c35c2cc30b089830184a2710d76d17d1c25496a1cecdf5dea31", "TT_bitcoin-test_signtx.py::test_incorrect_input_script_type[InputScriptType.EXTERNAL]": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx.py::test_incorrect_input_script_type[InputScriptType.SPENDADDRESS]": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx.py::test_incorrect_output_script_type[OutputScriptType.PAYTOADDRESS]": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx.py::test_incorrect_output_script_type[OutputScriptType.PAYTOSCRIPTHASH]": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", -"TT_bitcoin-test_signtx.py::test_lock_time[1-4294967295]": "37b5965a9919ab33b5c86b2e9fd5af02eed92f49aa7e0e40cb1485286cc5e37b", -"TT_bitcoin-test_signtx.py::test_lock_time[499999999-4294967294]": "3594dfa00bded716386910b53e0aa2da69fb76a18f1469c7dc87e2294727a36b", -"TT_bitcoin-test_signtx.py::test_lock_time[500000000-4294967294]": "f92a95ea5b676cad85756da095807f73d645a236b9a11974994d4fab76bde74f", -"TT_bitcoin-test_signtx.py::test_lock_time_blockheight": "3594dfa00bded716386910b53e0aa2da69fb76a18f1469c7dc87e2294727a36b", -"TT_bitcoin-test_signtx.py::test_lock_time_datetime[1985-11-05 00:53:20]": "f92a95ea5b676cad85756da095807f73d645a236b9a11974994d4fab76bde74f", -"TT_bitcoin-test_signtx.py::test_lock_time_datetime[2048-08-16 22:14:00]": "12e5487a28b9d134d11cc46a50313e41fdb8b0d75d78a88d4ed55a7ec677c7a1", -"TT_bitcoin-test_signtx.py::test_lots_of_change": "72de6242bba9d3e8560c861bed8ce3515b1b56963503b6db70c8364a39cdda9d", -"TT_bitcoin-test_signtx.py::test_lots_of_inputs": "7a41b1ad660d66aa3d7bddb76360ce846da3ea9847adcf66ff0551cb3f348ec2", -"TT_bitcoin-test_signtx.py::test_lots_of_outputs": "e1b417d1f5c09589a7c865f6f6c3fed2e9bf302e63a4a5eb099121dc3880895a", +"TT_bitcoin-test_signtx.py::test_lock_time[1-4294967295]": "b2052bbd44a8c6591261cea400958f85bbeafc44ae3204baa37c04fec7438a7b", +"TT_bitcoin-test_signtx.py::test_lock_time[499999999-4294967294]": "eeeb25f88690332f69cf37c52cbdf0498cc4329fb8c3ad8370dcbd1185a04656", +"TT_bitcoin-test_signtx.py::test_lock_time[500000000-4294967294]": "0065b5cc304b1dd5d341a18f88e711b80fd6a37bbcb0d5838a7403a07a554578", +"TT_bitcoin-test_signtx.py::test_lock_time_blockheight": "eeeb25f88690332f69cf37c52cbdf0498cc4329fb8c3ad8370dcbd1185a04656", +"TT_bitcoin-test_signtx.py::test_lock_time_datetime[1985-11-05 00:53:20]": "0065b5cc304b1dd5d341a18f88e711b80fd6a37bbcb0d5838a7403a07a554578", +"TT_bitcoin-test_signtx.py::test_lock_time_datetime[2048-08-16 22:14:00]": "a664f25807e1d04f84bf1d61356735765943aa19797bb3ad1a4e5f1767e6d272", +"TT_bitcoin-test_signtx.py::test_lots_of_change": "ec231e92089a1639c4e4a0f8babd43b5507f13e42f3ff1c847388b3e6d2ad8ad", +"TT_bitcoin-test_signtx.py::test_lots_of_inputs": "4743bde5056d045cfbb2752a36ec4a1c683092c8edcb752ff08a909eabd70658", +"TT_bitcoin-test_signtx.py::test_lots_of_outputs": "9ad0f1a4f6202c95e1fc42e434c1f8542426c76f8b94a8ae016fb0f6bd18a734", "TT_bitcoin-test_signtx.py::test_not_enough_funds": "615ee88f8293754c8c58d2ce021d534045e8583628e8270baf41e7124c29c4cb", -"TT_bitcoin-test_signtx.py::test_not_enough_vouts": "1363fb671a3698c5da1bcd3343f3a0c688f02f155ba8506d669c8f8a1b2ba886", -"TT_bitcoin-test_signtx.py::test_one_one_fee": "17b7bd7de8e75606ccf7f291dc138dc14b44c7ba63bf95d1b008ae9199936040", -"TT_bitcoin-test_signtx.py::test_one_three_fee": "02ba6db393d0222247b5a924bb5bf1aff1d6e56e2aeb6d156a8a5fdf72153e0e", -"TT_bitcoin-test_signtx.py::test_one_two_fee": "513479cd0044baf96d8e184713ff300f99795e19f1a5e8b51c9375376d0b08b7", -"TT_bitcoin-test_signtx.py::test_p2sh": "f4a16155fc4ee7bb24589eaad3ac237f4baa2e22895720cd61c200adc68febd1", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[branch_id-13]": "502703152b90c0382516eee904ab8627887fe2e6e16317ea642a3d9b9c5615e0", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[expiry-9]": "502703152b90c0382516eee904ab8627887fe2e6e16317ea642a3d9b9c5615e0", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[extra_data-hello world]": "502703152b90c0382516eee904ab8627887fe2e6e16317ea642a3d9b9c5615e0", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[timestamp-42]": "502703152b90c0382516eee904ab8627887fe2e6e16317ea642a3d9b9c5615e0", -"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[version_group_id-69]": "502703152b90c0382516eee904ab8627887fe2e6e16317ea642a3d9b9c5615e0", +"TT_bitcoin-test_signtx.py::test_not_enough_vouts": "204ad9ea7dbba119f568e50fed75a773024645ec18efe030f2e651df36c597f8", +"TT_bitcoin-test_signtx.py::test_one_one_fee": "28179c7512f684e42b0abf83dcdde60f4a3096a926ccb9c0ec64ecbda7f522dc", +"TT_bitcoin-test_signtx.py::test_one_three_fee": "13e3be9a1f12f060e00aef0983fee297fb8374ab411d97504b2819dee49caa91", +"TT_bitcoin-test_signtx.py::test_one_two_fee": "fe951f8e5d88bd7580881150e4883c8430a6a723cb917e0f2ab0d2ad5e304994", +"TT_bitcoin-test_signtx.py::test_p2sh": "11cfd355f5e1d18f380a127c64acbfbf8a78d504f6c4640d01ccd0662e762a4d", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[branch_id-13]": "119fd573db5975c571978b6d6d65e70e1d708735075bdbe59d4fbdcfe9dde6a5", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[expiry-9]": "119fd573db5975c571978b6d6d65e70e1d708735075bdbe59d4fbdcfe9dde6a5", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[extra_data-hello world]": "119fd573db5975c571978b6d6d65e70e1d708735075bdbe59d4fbdcfe9dde6a5", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[timestamp-42]": "119fd573db5975c571978b6d6d65e70e1d708735075bdbe59d4fbdcfe9dde6a5", +"TT_bitcoin-test_signtx.py::test_prevtx_forbidden_fields[version_group_id-69]": "119fd573db5975c571978b6d6d65e70e1d708735075bdbe59d4fbdcfe9dde6a5", "TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[branch_id-13]": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[expiry-9]": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[timestamp-42]": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_signtx.py::test_signtx_forbidden_fields[version_group_id-69]": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", -"TT_bitcoin-test_signtx.py::test_spend_coinbase": "e2f19fd0ef8f65a8bdbf461309042b17042bdc9bc2730703818d6257a86c49a8", -"TT_bitcoin-test_signtx.py::test_testnet_big_amount": "8655dd85fe9d701eded092f9db9408025f8b219a63b5a1b2ed45f9d672b466fd", -"TT_bitcoin-test_signtx.py::test_testnet_fee_high_warning": "0d9b821a351e54e7732f01b3b6b77fc8d9e6ab6e81bfb38eb3ef61c4a435e504", -"TT_bitcoin-test_signtx.py::test_testnet_one_two_fee": "72b96c639ac76ecccbe5d710a1c84eba6711879c329952b18ffab385ca79bafd", -"TT_bitcoin-test_signtx.py::test_two_changes": "6b88a8a56b117e420a4aa8f89314c2b3ced13d1d7ac5495ea23c41f5e6b150c6", -"TT_bitcoin-test_signtx.py::test_two_two": "43f201ab6186a8c6329d97b8cf869e56377313d16f4b03eec54f263543c68139", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.BITCOIN]": "eabc5aa960d50e47a98583556700b26377f9a9259ad92a3008a6de98d5e31c7a", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.MICROBITCOIN]": "4153edebb93b6232793c18faab63d0519572f523ae735e3750feb1965c159006", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.MILLIBITCOIN]": "92f539126515265e33d9c97b946d95d5b43b0b9b423132361d4733e15c0a6c63", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.SATOSHI]": "b229b175ccd7eea81b7cfc851bb26aa4639fbfa2f58f62754490797f10ce4499", -"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[None]": "eabc5aa960d50e47a98583556700b26377f9a9259ad92a3008a6de98d5e31c7a", +"TT_bitcoin-test_signtx.py::test_spend_coinbase": "bb8bd077d0db0bc1a5650c21448d72a6de8a79ad95b6a5a80b85675e152d64ab", +"TT_bitcoin-test_signtx.py::test_testnet_big_amount": "8fa6fecd81d8e0a1f5c8c5ed985eb381ab6c773d904b28ce7ef3053d1f8a6449", +"TT_bitcoin-test_signtx.py::test_testnet_fee_high_warning": "ce56e4d93a2fdd19e5e79ff65cbbaaca8adc6137538b3fc4625ae7bb5fa9b109", +"TT_bitcoin-test_signtx.py::test_testnet_one_two_fee": "20aaa67271db158f34f5dce1c07649de0a26b40b3b260074f5aa002a09d3f04f", +"TT_bitcoin-test_signtx.py::test_two_changes": "736e1628cf9bc4e8f554fd049a07f82064e6094108f01490a5a9b24311dc3a10", +"TT_bitcoin-test_signtx.py::test_two_two": "98a1b7b73f9cd065bdc0a1ddef0124f1d109964fda9c0b57173ba888d061fbe6", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.BITCOIN]": "11fae86e2e47ea2ec98d11c2bf1a1a98f1893411100075301e91236fda049aa7", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.MICROBITCOIN]": "ebd57f4831bdc5efa993ccbc558a5fdb769088629359b7ebcd55dd7eb2674a8d", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.MILLIBITCOIN]": "1d5c5f424b64eb92bddd23c3a101c8078c9bfe48a82b21fa3bb6e3c50ab7e118", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[AmountUnit.SATOSHI]": "c04587c4f543d271bcf834a76d4b4935c9deef287722688cc88aa8a37695dc9b", +"TT_bitcoin-test_signtx_amount_unit.py::test_signtx[None]": "11fae86e2e47ea2ec98d11c2bf1a1a98f1893411100075301e91236fda049aa7", "TT_bitcoin-test_signtx_external.py::test_p2pkh_presigned": "8dd8089941ceb0d82c9425c69d54240f99e3ae7932ef24acd49313d28389b683", "TT_bitcoin-test_signtx_external.py::test_p2pkh_with_proof": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_signtx_external.py::test_p2tr_external_presigned": "c714c4a4ea8b98dfbdd8185925adafbafc62570f415688972d6003a19d7b4d23", -"TT_bitcoin-test_signtx_external.py::test_p2tr_external_unverified": "b398085c2fa6d4fa1ba97d872f95f3ac2268e9455f5831344f6e34a4badf7a17", +"TT_bitcoin-test_signtx_external.py::test_p2tr_external_unverified": "c488c412a6c58788530c5acc1e0c7d072aad19b5a62cad41220dfd93e4b0ae6b", "TT_bitcoin-test_signtx_external.py::test_p2tr_with_proof": "d6723e2243bc38231ec4eb9ed63afd39610460c0d859b4c576b12db1f7915d02", -"TT_bitcoin-test_signtx_external.py::test_p2wpkh_external_unverified": "d178bd3e2cadbe0992904b3d32df963b75e1da801804a471e45a1c5c0a9f2581", +"TT_bitcoin-test_signtx_external.py::test_p2wpkh_external_unverified": "78b720588e1450972b38083857599d843f1b5ffae68de84dedf90a868d597bca", "TT_bitcoin-test_signtx_external.py::test_p2wpkh_in_p2sh_presigned": "8313bff77e41aef142c3b25818ab58dcc7e9d658d38e2e8fc50629ebbe05869b", "TT_bitcoin-test_signtx_external.py::test_p2wpkh_in_p2sh_with_proof": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_bitcoin-test_signtx_external.py::test_p2wpkh_presigned": "4608478b1d61415cf0ec93a0ea4397c35d17a91d4b6d25e9c024b77330e398eb", "TT_bitcoin-test_signtx_external.py::test_p2wpkh_with_false_proof": "ca3bdc82d0ddd668d50635ddbc91019095311e0c165094a89b9ae6eda53abdd6", "TT_bitcoin-test_signtx_external.py::test_p2wpkh_with_proof": "f5f2f9bc3c50908ce41046096586387b0db86796c54cb70216e4fedbb68995c6", "TT_bitcoin-test_signtx_external.py::test_p2wsh_external_presigned": "cd1a603df8ce086697c290aa63b9d922f8360ee5b34ff0dbe5eec4f9c4dd8636", -"TT_bitcoin-test_signtx_invalid_path.py::test_attack_path_segwit": "3274688aba04218c47edcdd07c6164149e290ee414707fa603c7b4d7eda310f4", +"TT_bitcoin-test_signtx_invalid_path.py::test_attack_path_segwit": "2102f519ca1fcad43ea29bbbb0f5acfad4d3e80321e4a8400ca409d1b7d93c4b", "TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_fail": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_fail_asap": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", -"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_pass_forkid": "85d3c2f3c85e1bcf774f3067d7eb32396c444f351ad15e68a328f87cf6bdb338", -"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_prompt": "12e137210397357ed754af0f4618ef03312b3e884930f55727d1b034f969bfd5", -"TT_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_inputs": "77ee4c0c509ca4153fb78cfec0a02efeb738b20d6c9408933b41669e9e66eb55", -"TT_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_non_segwit_inputs": "380823ef5cec4ba653e1e2fac2ecd77377654e445950aef4f2fb38da6fc883e1", -"TT_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_inputs": "77ee4c0c509ca4153fb78cfec0a02efeb738b20d6c9408933b41669e9e66eb55", -"TT_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_segwit_inputs": "380823ef5cec4ba653e1e2fac2ecd77377654e445950aef4f2fb38da6fc883e1", +"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_pass_forkid": "13168328e981bb88ebb3cc3739c594baa13992f75829e6c28b3c39066301d271", +"TT_bitcoin-test_signtx_invalid_path.py::test_invalid_path_prompt": "fffb490aa6246315b9ae407e426f6563b051219bda8f025498f178af57881635", +"TT_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_inputs": "c3b55df982a921a4fdb72ffb579a9b43543537b6c520b6742421f67de2f4845f", +"TT_bitcoin-test_signtx_mixed_inputs.py::test_non_segwit_segwit_non_segwit_inputs": "fb92593a2fceefffbc30a56a1df2b79b4de148d7db5d25ad17a2ee316260b18f", +"TT_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_inputs": "c3b55df982a921a4fdb72ffb579a9b43543537b6c520b6742421f67de2f4845f", +"TT_bitcoin-test_signtx_mixed_inputs.py::test_segwit_non_segwit_segwit_inputs": "736dc778b70d4b4b03e1617b2b370311787e959cc35c79685b272ec1fb8fe293", "TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_amount": "1d0da9c044d6aa5523f94e91e882f8839457d51097093fc2e5938285341a1949", "TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_purchase": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_mac_refund": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_payreq.py::test_payment_req_wrong_output": "887f26b4ddbb365d903b27fb9c2fab54760b2ba6f5f5252a82d8e5b4fc611fbf", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "565607d0c63ec4777b08e271906f0ef69fc48c98b5bcb02d11d1fe6538dcfada", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "0ddf119ff7be991d6066b07f39a81423f77abf0e4f4fa39acd445b1cf8c6bd19", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "ea70f803eae59c3410798ac7d964829c9f8ed223a815c66835a48ff97663d901", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out0]": "90d2ea85361e790f4c9b74c691a8b66332346cd313b48d756381088fd4c1c39c", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out12]": "d97489a0d4d6b02e95fc1d282cbfd8d4c8a58db8e055ddbf95cde4488ca071c3", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out1]": "819651b20d2f23935cac3f6516e453b5c23eddfa29e601b16cdbc193049398ed", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out2]": "1f670f6afe51b1ab4d675f0abf0cecc351272e0cef9bcfe1396ca7b10468d03f", -"TT_bitcoin-test_signtx_payreq.py::test_payment_request_details": "155a1355e819da04bbebba18be17f5da4dac128586a8eb960dfdab9ce465c032", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out0+out1]": "c8a939b289ee8fe816bf04417d620e6d97a3b97d98dbf723588eea08ec3dffd2", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out012]": "a0535f894a6d61d257f62f1ce137c02e0acc045d44a3af449f99403745894a17", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out01]": "2e11155a7f63dd177fe1475615379261c81c07f2088bd20d6f481dde0466b8ac", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out0]": "4b78bb5d8a351c4c1848e792f47db013e7e63c37e6c79f16368a42a68b196a04", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out12]": "49d4267f9a668a4678806f60b37d6d4372de736e0bd50835e1fd03e6564d417d", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out1]": "3f6392f762a2a77f0648c0b1704ffd8f1f695491c7003999060ed3d2337de06d", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request[out2]": "8fed64c4dada52328c7dd3bac646a11258d4bf77979e7351bb0f32c6fe0a2812", +"TT_bitcoin-test_signtx_payreq.py::test_payment_request_details": "730286c2d89c90f66d9611da96e2993ce9f2f0afea4fefa919cf20c7f4be9103", "TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[]": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[hello world]": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[x]": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[]": "91fa0c1fdb411c207cc5e7bca8fed5ee82e98b4b1fc092e576ad225a0f74724f", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[hello world]": "91fa0c1fdb411c207cc5e7bca8fed5ee82e98b4b1fc092e576ad225a0f74724f", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[x]": "91fa0c1fdb411c207cc5e7bca8fed5ee82e98b4b1fc092e576ad225a0f74724f", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "91fa0c1fdb411c207cc5e7bca8fed5ee82e98b4b1fc092e576ad225a0f74724f", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[]": "612cad5b3bb70a8aed99345fe2ce3058cd1a153521c0b8b8bf9f8d7c0b2c76a2", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[hello world]": "612cad5b3bb70a8aed99345fe2ce3058cd1a153521c0b8b8bf9f8d7c0b2c76a2", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[x]": "612cad5b3bb70a8aed99345fe2ce3058cd1a153521c0b8b8bf9f8d7c0b2c76a2", -"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "612cad5b3bb70a8aed99345fe2ce3058cd1a153521c0b8b8bf9f8d7c0b2c76a2", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[]": "4b1b2df96814a7dc7030f9ca8bed5c2c9a69ec24a933491f04150cadb50ca0f8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[hello world]": "4b1b2df96814a7dc7030f9ca8bed5c2c9a69ec24a933491f04150cadb50ca0f8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[x]": "4b1b2df96814a7dc7030f9ca8bed5c2c9a69ec24a933491f04150cadb50ca0f8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_attack[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "4b1b2df96814a7dc7030f9ca8bed5c2c9a69ec24a933491f04150cadb50ca0f8", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[]": "9bde644b5c91702f3926da3d2e29ea27bb6537d07fd1b904d6f3c4c48633f3a5", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[hello world]": "9bde644b5c91702f3926da3d2e29ea27bb6537d07fd1b904d6f3c4c48633f3a5", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[x]": "9bde644b5c91702f3926da3d2e29ea27bb6537d07fd1b904d6f3c4c48633f3a5", +"TT_bitcoin-test_signtx_prevhash.py::test_invalid_prev_hash_in_prevtx[xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]": "9bde644b5c91702f3926da3d2e29ea27bb6537d07fd1b904d6f3c4c48633f3a5", "TT_bitcoin-test_signtx_replacement.py::test_attack_fake_ext_input_amount": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_replacement.py::test_attack_fake_int_input_amount": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_replacement.py::test_attack_false_internal": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", @@ -958,31 +958,31 @@ "TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909859-89800-02483045022100af3a87-80428fad": "f5be02a50a1876ac0478e37e41bca38c5feb569613dc5b105b95c6bb4763514a", "TT_bitcoin-test_signtx_replacement.py::test_p2wpkh_payjoin[19909859-89859-02483045022100eb74ab-881c7bef": "da3ec44de0435cca3828752a0ba44483b2f087d1ae02c99530be4bcd01b80e57", "TT_bitcoin-test_signtx_replacement.py::test_tx_meld": "1a5221c169069689cd038a1b493932e42f0c740efad52e3c77bb636786af594e", -"TT_bitcoin-test_signtx_segwit.py::test_attack_change_input_address": "d264378d091b56e319ecdf0c35b0b4b83b4200c6c382ad307289584c24df27cc", -"TT_bitcoin-test_signtx_segwit.py::test_attack_mixed_inputs": "8ddd81c70770b094301549b7b410c4503bfc81cd290fa1f9429a9d7e406f91bb", -"TT_bitcoin-test_signtx_segwit.py::test_send_multisig_1": "5caa220ebc0b8d555c32b778dbb8b8366d43907e3cb3d43fbf896eef9448a564", -"TT_bitcoin-test_signtx_segwit.py::test_send_p2sh": "05fa65a1ba3191fba8b4c1b4aa155f679c40182d4494ca42c3dace8f25b003c8", -"TT_bitcoin-test_signtx_segwit.py::test_send_p2sh_change": "b33349d6faed9edd0ba7ad49d43f82385a822b8f86cf9792997bbd3520071c17", -"TT_bitcoin-test_signtx_segwit.py::test_testnet_segwit_big_amount": "d9a499890d529edcbe30cf483b7e9e5fd856ece6f15f1c2a9485cb2678fb8ba3", -"TT_bitcoin-test_signtx_segwit_native.py::test_multisig_mismatch_inputs_single": "63723f49f77e6ab710091034987d5a1314463bbdbe5b2eee8dfb8e42dcd2d760", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_both": "95764fafb3799b5fb7aa82c6afc99eb15802f614ca51c6d7cda0f1f67a119909", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_1": "3f5b4f47e021a15dbf2f99f3972f8c8c75b76b6c205680e87dbf4ba0d3882821", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_2": "b8e4fa59c711274ea2e487137531060f642a1357878151266402f1663f405db8", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_3_change": "d2f4c02b2125f5a40a7844843980fc0d7a0468beaa3c1cf5c0e05b2e519343c3", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_4_change": "d2f4c02b2125f5a40a7844843980fc0d7a0468beaa3c1cf5c0e05b2e519343c3", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_native": "eabc5aa960d50e47a98583556700b26377f9a9259ad92a3008a6de98d5e31c7a", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_native_change": "c95378471d7531592438c502fd1ecd750682197cdbba53c6447f4d5f2882779b", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_p2sh": "a61bf07f8f254b6c8386ae5462ea3688b307abce563a61c9c91f5908b0dcaf2a", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_p2sh_change": "8288ac83c0e6d5924780ee3b1278e36063ad6c86a288d0b8abbb52eaaf0cc4e7", -"TT_bitcoin-test_signtx_segwit_native.py::test_send_to_taproot": "9a138b34e18e310617cc7d79cf2efa1c180948d1a4d3647f6de1e48d94a441b8", -"TT_bitcoin-test_signtx_taproot.py::test_attack_script_type": "9e6fc83df9e604e233e709f37dc8c7c6194de828d11a023ee7bca376d5304f60", +"TT_bitcoin-test_signtx_segwit.py::test_attack_change_input_address": "8ecd0ac81d58aa547a4936e56d69e35c2ab12f7ba0b51b7d92404e5e30030cfe", +"TT_bitcoin-test_signtx_segwit.py::test_attack_mixed_inputs": "66b9411c1b1816d26a93a04c22372a57a4208d8295d71bd82f38915b2452c564", +"TT_bitcoin-test_signtx_segwit.py::test_send_multisig_1": "cfd3b3e882067b1e42a36623da3523829bf579399b14f8711e09f7e89aa82d65", +"TT_bitcoin-test_signtx_segwit.py::test_send_p2sh": "8853c733b0b7538e48639c4c04ad2cc7e07ae417e73f561f6fd9e580232c9abe", +"TT_bitcoin-test_signtx_segwit.py::test_send_p2sh_change": "50ea94b0faabce0cad5354f357650f8b0e01800ce6eeee7ce9a2433c4484056d", +"TT_bitcoin-test_signtx_segwit.py::test_testnet_segwit_big_amount": "67e717ac09fc74745ad2d0051f3f14806db93ac6a2b25f7961818fe861ef61c7", +"TT_bitcoin-test_signtx_segwit_native.py::test_multisig_mismatch_inputs_single": "c3e42d7b9a4f675717091e64b5e9470e91282e9f0057054a20582b626f13f0f1", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_both": "92c34d2b525768ac5f8fc60566ea7bb7ede1ced30f2ec0c0b0948fcfbb1eb4c4", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_1": "6f8d1747d41c156a032c141d5108f5572ceddf32fd90ab986fc21ab3f8adb094", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_2": "c710852ee12bc81aaf395cc4db73d928e93ecaa3a24571a6542d71e94936984a", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_3_change": "c9700584e560f1cf2c1fb366035d2d85b25dc0552ceded2bc14d4f3ba00af24a", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_multisig_4_change": "f5266e21904d84ccc94a60bb6de289c301193e70bc21e246ad420b3d5c9ad18e", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_native": "11fae86e2e47ea2ec98d11c2bf1a1a98f1893411100075301e91236fda049aa7", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_native_change": "daf3049d76f0a7772b188adf0505c11b520d5984b5027710920202c0844b8268", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_p2sh": "2dbfdc48046898971dcac1e0d49c99b76486eb28f14a919323edff1f72a7d8a7", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_p2sh_change": "1dc3e34497f9f767d7418efb5e6f63a5c30cde08bb92105734b9ac15d0858d2d", +"TT_bitcoin-test_signtx_segwit_native.py::test_send_to_taproot": "7837294d7d4a09e2b778a7a2623b61f8671bf6b1c1ae114f548657e8ab86b7e1", +"TT_bitcoin-test_signtx_taproot.py::test_attack_script_type": "776adb9eb6166befabc0889c188ce7f4f6c32f6f0db047f134a96a0fd09b1953", "TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1pam775nxmvam4pfpqlm5q06k0y84e3-a257be51": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1plllllllllllllllllllllllllllll-aaa668e3": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1plycg5qvjtrp3qjf5f7zl382j9x6nr-5447628e": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_signtx_taproot.py::test_send_invalid_address[tb1zlycg5qvjtrp3qjf5f7zl382j9x6nr-880d4a6b": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", -"TT_bitcoin-test_signtx_taproot.py::test_send_mixed": "750648ddd29e1eee28bf2d4f292a131821cdf6413ccafbfed88ee5c8f70841b4", -"TT_bitcoin-test_signtx_taproot.py::test_send_p2tr": "3ea24494ae8e004645d31afcd798066a784c44acb613588c407c4717ad9a56d6", -"TT_bitcoin-test_signtx_taproot.py::test_send_two_with_change": "b394ee2dcdc7d8b5906b9b4d7f52ac69af7e9e5f93229980f6450a1d4e83bd9b", +"TT_bitcoin-test_signtx_taproot.py::test_send_mixed": "1aa19217e904d2909796603b7811bd8a8e3c997dae4cc5e159c2c3bae2db566e", +"TT_bitcoin-test_signtx_taproot.py::test_send_p2tr": "91597e1226f917aa01e0faffa2ba573f3f77521ce6a53fd4f8c4b2a15d8f4b36", +"TT_bitcoin-test_signtx_taproot.py::test_send_two_with_change": "22f2ab9387ba5dfc06f23727fa3332974b70620d813eb61ae37bb482233860c0", "TT_bitcoin-test_verifymessage.py::test_message_grs": "efba87e334f62f3ee18ce6ac2f6e8ba3738fc53434ad8d4027643d2047945620", "TT_bitcoin-test_verifymessage.py::test_message_long": "ddd376c7ce7731d990f231a81532dfa13d6a03bc88e5a77278d6eef514b496a2", "TT_bitcoin-test_verifymessage.py::test_message_testnet": "af4598881e7afbfb81313622d7186cd90e8bdcfdada4a0c0f31ca5f0af5f8d5d", @@ -999,8 +999,8 @@ "TT_bitcoin-test_verifymessage_segwit_native.py::test_message_verify": "912a94f466108c9d6b67a1cc9aa8b6a2a7d29ab9003c39e9f70aa10b0ff7b5e8", "TT_bitcoin-test_verifymessage_segwit_native.py::test_verify_utf": "faf3fddc43290a424243562f3ed7598d5127b71b1680aee40e56f0b01d22664a", "TT_bitcoin-test_zcash.py::test_external_presigned": "08a22a49793201f8387a085a554f006387d1df1b37ed8a34bef7aa79b363b44b", -"TT_bitcoin-test_zcash.py::test_one_one_fee_sapling": "b8aff4ae3c9b417acadf1ede52d7d45870dd4ef1f9251bf8e8f2ebf5280b9f3b", -"TT_bitcoin-test_zcash.py::test_spend_old_versions": "c3f75b5c8ceb63ad2102d270689f55fbf3b204581bec7dcee930f875416e1a07", +"TT_bitcoin-test_zcash.py::test_one_one_fee_sapling": "79d8f96ce439b30c154edd193f42a32a52b7a82d0ed189f37eb004f119d3ef1d", +"TT_bitcoin-test_zcash.py::test_spend_old_versions": "1e9ce6d056adecc0312084f1739032119b872536e15da8c5a5531176652e8d20", "TT_bitcoin-test_zcash.py::test_v3_not_supported": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", "TT_bitcoin-test_zcash.py::test_version_group_id_missing": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TT_cardano-test_address_public_key.py::test_cardano_get_address[icarus-derivation]": "61bf57f65a018283d5e314f95f5580fe751eb3f09cd175a8f9e47f677419cbf2", @@ -1569,7 +1569,7 @@ "TT_test_protection_levels.py::test_passphrase_reporting[True]": "d9e9bdb39d15d6737ed6234f16c36bb7ad95ca54067ff8f10cffccaa3caa96cb", "TT_test_protection_levels.py::test_ping": "5551c263e8e09c8ae683f4dec3dd9d7ecc05ebbd3f2556604b27479c8f1fbc82", "TT_test_protection_levels.py::test_sign_message": "045d2faee841a79441683a6fdc912c3c69ecc0289b6c9801580942d47af7f0de", -"TT_test_protection_levels.py::test_signtx": "aeb8f3d1b37c8c73916487e45f607813dd87409721fc209739bb167e6d28dc38", +"TT_test_protection_levels.py::test_signtx": "c939186b66fd7308ac21f12149cebb240c6697fff9df3187b8341660bf50019c", "TT_test_protection_levels.py::test_unlocked": "f2be4c8c13c6a201770966438ffa9bcfe0eb031683920f93a55fa92921a28b51", "TT_test_protection_levels.py::test_verify_message_t2": "0cf43552a15684fbf506cd56871ca07795f62ec5f57176705aa968c9f97ef3d8", "TT_test_protection_levels.py::test_wipe_device": "a30d958dda50b06e8bfc1c861c0ff2c0eb4acd0656bdf1dcd6474660882e3cd5", @@ -1612,12 +1612,12 @@ "TT_webauthn-test_msg_webauthn.py::test_add_remove": "3219e5ad2719319e74b5c75b1096ca7e3d30467215c15f57e57e475afdaa188f", "TT_webauthn-test_u2f_counter.py::test_u2f_counter": "19f77e2d284431da5fadac938f5822c1a6b17c07ee6c801085efd84974f3163f", "TT_zcash-test_sign_tx.py::test_external_presigned": "08a22a49793201f8387a085a554f006387d1df1b37ed8a34bef7aa79b363b44b", -"TT_zcash-test_sign_tx.py::test_one_two": "7e6477901163c130cae31651507d4b1821169e09f03e857e42015fb8f56da583", +"TT_zcash-test_sign_tx.py::test_one_two": "2727ee39a3b34c7fed592ec530421e4d01883d1122a31ad2d99cd200facd65ef", "TT_zcash-test_sign_tx.py::test_refuse_replacement_tx": "1c100ce4b7c1e47e72428f390de0846c1ff933e9f07894872644a369a9422738", -"TT_zcash-test_sign_tx.py::test_send_to_multisig": "53142c4999ed465e00b61114b5a158eb39918be2af2ad229881d7909dcf0f7b6", -"TT_zcash-test_sign_tx.py::test_spend_multisig": "82d482d56cfdfcbc300d7f064da1dd1df640d4dacb6e9fc85aa54ca28df44c89", -"TT_zcash-test_sign_tx.py::test_spend_v4_input": "7bef51a2759d8d28821c027310f92b98d68f89cbc832f1778dc81aad8fdd5dd2", -"TT_zcash-test_sign_tx.py::test_spend_v5_input": "68c9959e01d4fe4021909f50a02b152471ef86bf9013c65481d6abf4c0568ebd", +"TT_zcash-test_sign_tx.py::test_send_to_multisig": "1e5eafd9bb6e1a07d9eec2bb940d3ea3b51a5cf9320f0f82e2b5adbe38f0ff22", +"TT_zcash-test_sign_tx.py::test_spend_multisig": "3e36816ece39da6e47ed4b689e8bddeadb5c720cf8179658c4e836f2f0d90608", +"TT_zcash-test_sign_tx.py::test_spend_v4_input": "83b2bdc66ce719a7cef6ef5fd918b98524d0177a4ae7c974a01b61855bec92b5", +"TT_zcash-test_sign_tx.py::test_spend_v5_input": "db312adfcee13e02993d714a2339d6b044682b87a331323e030ff6d8b1e35f7f", "TT_zcash-test_sign_tx.py::test_version_group_id_missing": "c09de07fbbf1e047442180e2facb5482d06a1a428891b875b7dd93c9e4704ae1", "TTui2_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-0-bnb1hgm0p7khfk85zpz-68e2cb5a": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1", "TTui2_binance-test_get_address.py::test_binance_get_address[m-44h-714h-0h-0-1-bnb1egswqkszzfc2uq7-1adfb691": "f03b50df7f4a161078fa903c44f37272961b70358d4014d30a12888e1fd2caf1",