From 9dce7947c220da0461201d2e760c5f6d442ae9d9 Mon Sep 17 00:00:00 2001 From: Steven Barclay Date: Fri, 1 May 2020 15:16:46 +0800 Subject: [PATCH] Fix proof-of-burn signing for password protected wallets Add a missing bsqWalletService.isEncrypted() check and optional AES key argument to the signMessage(..) call in ProofOfBurnService, analogous to the BitcoinJ call to sign with an EC key in MyBlindVoteListService. This fixes #3836. --- .../core/dao/governance/proofofburn/ProofOfBurnService.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/bisq/core/dao/governance/proofofburn/ProofOfBurnService.java b/core/src/main/java/bisq/core/dao/governance/proofofburn/ProofOfBurnService.java index cca3185a507..45de791987b 100644 --- a/core/src/main/java/bisq/core/dao/governance/proofofburn/ProofOfBurnService.java +++ b/core/src/main/java/bisq/core/dao/governance/proofofburn/ProofOfBurnService.java @@ -199,7 +199,9 @@ public Optional sign(String proofOfBurnTxId, String message) { return Optional.empty(); try { - String signatureBase64 = key.signMessage(message); + String signatureBase64 = bsqWalletService.isEncrypted() + ? key.signMessage(message, bsqWalletService.getAesKey()) + : key.signMessage(message); return Optional.of(signatureBase64); } catch (Throwable t) { log.error(t.toString());