Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Signing multisig PSBTs on Trezor devices returns invalid signatures for Segwit script types #661

Closed
craigraw opened this issue Feb 12, 2023 · 3 comments · Fixed by #665
Closed

Comments

@craigraw
Copy link

I'm not sure how this escaped previous testing, but it appears the e731395 in v2.2.0 has broken signing of multisig transactions on both Trezor One and Trezor T for Segwit script types on standard derivation paths. Signatures are returned, but are invalid and fail verification. The results of my testing as follows:

Script Type Derivation Path v2.1.1 v2.2.0
P2WSH m/48'/1'/0'/2' Yes Fails verification
P2SH-P2WSH m/48'/1'/0'/1' Yes Fails verification
P2SH m/45' Yes Yes
P2SH m/45'/0/0/0 Error: Multisig field provided but not expected Yes

Testing also reveals the change in e731395 is the sole reason for the difference between the two versions.

Firmware versions 2.5.3 & 1.11.0, bitcoin only.

@achow101
Copy link
Member

Can you try #665?

@craigraw
Copy link
Author

Thanks @achow101, confirmed working for all script types and derivation paths in the table above.

Would it be possible to do a 2.2.1 release for this? I'd like to do another Sparrow release shortly with this fix.

@achow101
Copy link
Member

Will try to do a release with this a few other fixes soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants