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

Message sign verify functionality compatible with Bitcoin core & electrum #5375

Merged
merged 1 commit into from Apr 13, 2021
Merged

Conversation

ghost
Copy link

@ghost ghost commented Mar 29, 2021

Sign/verify functionality which is comparable to Electrum. Requested by @huey735

  • Can sign a message using any address in your wallet.
  • Can verify any message+address+signature
  • Located in the Multisig Payout Tool (CTRL-G)

Screenshot: Bisq sign/verify & Electrum sign/verify.

image

Copy link
Contributor

@wallclockbuilder wallclockbuilder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK

Sign

  • Is Bisq compatible with Electrum?

1 1electrum message - address - signature
Message signed by address in Electrum

1 2bisq compatible with electrum
Same message signed by Bisq with the same address resulted in the same signature.





Verify

  • Can Bisq Verify A message signed by Electrum?


2electrum signed
Message signed by electrum. Will Bisq be able to verify it?



2 1bisq verification setup
Load signed message details from Electrum into Bisq. Will it verify?



2 2bisq signature verified
Bisq verifies signature from Electrum successfully





Unhappy path

3 1bisq - wrong message - setup
Modify message. Will Bisq be fooled?



3 2bisq wrong signature - message changed
Bisq successfully detects wrong signature due to modified message.



4 1bisq wrong address setup
Tamper with address. Will bisq be able to tell?



4 2bisq wrong signature - addess changed
Bisq successfully detects wrong signature due to wrong address.



5 1bisq wrong signature setup
Tamper with signature. Will bisq be able to tell?



5 2bisq wrong signature - signature changed
Bisq successfully rejects wrong signature.

messageSig.setText("");
new Popup().information("Key not found in wallet").show();
} else {
ECKey myPrivateKey = ECKey.fromPrivate(Utils.HEX.decode(privKeyHex));
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested by BitcoinJ.

});
buttonVerify.setOnAction(e -> {
try {
ECKey key = ECKey.signedMessageToKey(messageText.getText(), messageSig.getText());
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested by Bitcoinj.

@ghost ghost mentioned this pull request Apr 2, 2021
Copy link
Contributor

@ripcurlx ripcurlx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK

@ripcurlx ripcurlx merged commit b4585f7 into bisq-network:master Apr 13, 2021
@ripcurlx ripcurlx added this to the v1.6.3 milestone Apr 13, 2021
@ghost ghost mentioned this pull request May 4, 2021
@ghost ghost deleted the sign_verify_message branch May 29, 2022 22:46
@ghost ghost mentioned this pull request Oct 24, 2022
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 this pull request may close these issues.

2 participants