mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-01-24 14:20:57 +00:00
signing/multisig: fingerprint is calculated everytime multisig is present
This commit is contained in:
parent
78c7e80319
commit
e71b51046d
@ -76,6 +76,13 @@ async def check_tx_fee(tx: SignTx, root):
|
|||||||
bip143.add_prevouts(txi) # all inputs are included (non-segwit as well)
|
bip143.add_prevouts(txi) # all inputs are included (non-segwit as well)
|
||||||
bip143.add_sequence(txi)
|
bip143.add_sequence(txi)
|
||||||
|
|
||||||
|
if txi.multisig:
|
||||||
|
fp = multisig_fingerprint(txi.multisig)
|
||||||
|
if not len(multisig_fp):
|
||||||
|
multisig_fp = fp
|
||||||
|
elif multisig_fp != fp:
|
||||||
|
multisig_fp_mismatch = True
|
||||||
|
|
||||||
if coin.force_bip143:
|
if coin.force_bip143:
|
||||||
is_bip143 = (txi.script_type == InputScriptType.SPENDADDRESS)
|
is_bip143 = (txi.script_type == InputScriptType.SPENDADDRESS)
|
||||||
if not is_bip143:
|
if not is_bip143:
|
||||||
@ -103,12 +110,6 @@ async def check_tx_fee(tx: SignTx, root):
|
|||||||
segwit[i] = False
|
segwit[i] = False
|
||||||
total_in += await get_prevtx_output_value(
|
total_in += await get_prevtx_output_value(
|
||||||
tx_req, txi.prev_hash, txi.prev_index)
|
tx_req, txi.prev_hash, txi.prev_index)
|
||||||
if txi.multisig:
|
|
||||||
fp = multisig_fingerprint(txi.multisig)
|
|
||||||
if not len(multisig_fp):
|
|
||||||
multisig_fp = fp
|
|
||||||
elif multisig_fp != fp:
|
|
||||||
multisig_fp_mismatch = True
|
|
||||||
|
|
||||||
else:
|
else:
|
||||||
raise SigningError(FailureType.DataError,
|
raise SigningError(FailureType.DataError,
|
||||||
|
Loading…
Reference in New Issue
Block a user