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

Support Electrum signatures in VerifyMessage #2100

Closed
andrewkozlik opened this issue Feb 4, 2022 · 1 comment · Fixed by #2112
Closed

Support Electrum signatures in VerifyMessage #2100

andrewkozlik opened this issue Feb 4, 2022 · 1 comment · Fixed by #2112
Assignees
Labels
bitcoin Bitcoin related core Trezor Core firmware. Runs on Trezor Model T and T2B1. T1B1 legacy Trezor One

Comments

@andrewkozlik
Copy link
Contributor

Trezor supports message signing and verification in accordance with BIP-137. The spec includes script type information to the first byte of the signature. Electrum does not include the script type information in the signature and is unable to verify message signatures produced by Trezor unless the no_script_type flag is set to true during signing (or unless the information is manually removed from the first byte). Similarly Trezor is unable to verify signatures generated by Electrum.

The script type information is actually not required in order to be able to verify the signature if the address is available to the verifier. In the case of Trezor the address field is required in VerifyMessage, so there is no reason why Trezor couldn't verify signatures generated by Electrum.

@andrewkozlik andrewkozlik added core Trezor Core firmware. Runs on Trezor Model T and T2B1. T1B1 legacy Trezor One bitcoin Bitcoin related HIGH labels Feb 4, 2022
@andrewkozlik andrewkozlik self-assigned this Feb 4, 2022
@github-actions github-actions bot added this to 📥 Inbox in Backlog 🗂 Feb 4, 2022
@hynek-jina hynek-jina moved this from 📥 Inbox to 💻 Code in Backlog 🗂 Feb 4, 2022
@prusnak prusnak linked a pull request Feb 9, 2022 that will close this issue
Backlog 🗂 automation moved this from 💻 Code to ❌ Closed Feb 11, 2022
@hynek-jina hynek-jina removed this from ❌ Closed in Backlog 🗂 Feb 14, 2022
@hynek-jina hynek-jina added this to 🎯 To do in Feb 10 - Feb 24 via automation Feb 14, 2022
@hynek-jina hynek-jina moved this from 🎯 To do to 🤝 Needs QA in Feb 10 - Feb 24 Feb 14, 2022
@bosomt
Copy link

bosomt commented Feb 17, 2022

QA OK

message generated via T1 latest public version in Electrum 4.1.5

T1 1.10.6 0x0e27423cffb3b6047028c61890bec43bf626adc7
Signature is valid + Message verification successful
TT 2.4.4 0x0e27423cffb3b6047028c61890bec43bf626adc7
Signature is valid + Message verification successful

message generated in Electrum 4.1.5 from standard local wallet

T1 1.10.6 0x0e27423cffb3b6047028c61890bec43bf626adc7
Signature is valid + Message verification successful
TT 2.4.4 0x0e27423cffb3b6047028c61890bec43bf626adc7
Signature is valid + Message verification successful

only way to generate signed message via Trezor was 1.10.5 T1 firmware version sent issue spesmilo/electrum#7670

@hynek-jina hynek-jina moved this from 🤝 Needs QA to ✅ Approved in Feb 10 - Feb 24 Feb 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bitcoin Bitcoin related core Trezor Core firmware. Runs on Trezor Model T and T2B1. T1B1 legacy Trezor One
Projects
No open projects
Feb 10 - Feb 24
✅ Approved
Development

Successfully merging a pull request may close this issue.

2 participants