mirror of
https://github.com/sparrowwallet/sparrow.git
synced 2024-12-24 12:46:45 +00:00
add option to strip sensitive info from psbt serialization
This commit is contained in:
parent
3b3e46983f
commit
eb55b9420a
3 changed files with 16 additions and 6 deletions
2
drongo
2
drongo
|
@ -1 +1 @@
|
||||||
Subproject commit 428054d375b638bb7e08133fdffe6f1dd438cca9
|
Subproject commit b7038b19f9d44cfc50af151927b06f9aada9d5e7
|
|
@ -532,14 +532,22 @@ public class AppController implements Initializable {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void savePSBTBinary(ActionEvent event) {
|
public void savePSBTBinary(ActionEvent event) {
|
||||||
savePSBT(false);
|
savePSBT(false, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void savePSBTText(ActionEvent event) {
|
public void savePSBTText(ActionEvent event) {
|
||||||
savePSBT(true);
|
savePSBT(true, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void savePSBT(boolean asText) {
|
public void savePSBTBinaryNoXpubs(ActionEvent event) {
|
||||||
|
savePSBT(false, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void savePSBTTextNoXpubs(ActionEvent event) {
|
||||||
|
savePSBT(true, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void savePSBT(boolean asText, boolean includeXpubs) {
|
||||||
Tab selectedTab = tabs.getSelectionModel().getSelectedItem();
|
Tab selectedTab = tabs.getSelectionModel().getSelectedItem();
|
||||||
TabData tabData = (TabData)selectedTab.getUserData();
|
TabData tabData = (TabData)selectedTab.getUserData();
|
||||||
if(tabData.getType() == TabData.TabType.TRANSACTION) {
|
if(tabData.getType() == TabData.TabType.TRANSACTION) {
|
||||||
|
@ -571,10 +579,10 @@ public class AppController implements Initializable {
|
||||||
try(FileOutputStream outputStream = new FileOutputStream(file)) {
|
try(FileOutputStream outputStream = new FileOutputStream(file)) {
|
||||||
if(asText) {
|
if(asText) {
|
||||||
PrintWriter writer = new PrintWriter(new OutputStreamWriter(outputStream, StandardCharsets.UTF_8));
|
PrintWriter writer = new PrintWriter(new OutputStreamWriter(outputStream, StandardCharsets.UTF_8));
|
||||||
writer.print(transactionTabData.getPsbt().toBase64String());
|
writer.print(transactionTabData.getPsbt().toBase64String(includeXpubs));
|
||||||
writer.flush();
|
writer.flush();
|
||||||
} else {
|
} else {
|
||||||
outputStream.write(transactionTabData.getPsbt().serialize());
|
outputStream.write(transactionTabData.getPsbt().serialize(includeXpubs));
|
||||||
}
|
}
|
||||||
} catch(IOException e) {
|
} catch(IOException e) {
|
||||||
log.error("Error saving PSBT", e);
|
log.error("Error saving PSBT", e);
|
||||||
|
|
|
@ -30,6 +30,8 @@
|
||||||
<Menu fx:id="savePSBT" mnemonicParsing="false" text="Save PSBT">
|
<Menu fx:id="savePSBT" mnemonicParsing="false" text="Save PSBT">
|
||||||
<MenuItem text="As Binary..." onAction="#savePSBTBinary" accelerator="Shortcut+S"/>
|
<MenuItem text="As Binary..." onAction="#savePSBTBinary" accelerator="Shortcut+S"/>
|
||||||
<MenuItem text="As Base64..." onAction="#savePSBTText"/>
|
<MenuItem text="As Base64..." onAction="#savePSBTText"/>
|
||||||
|
<MenuItem text="As Binary (No Xpubs)..." onAction="#savePSBTBinaryNoXpubs"/>
|
||||||
|
<MenuItem text="As Base64 (No Xpubs)..." onAction="#savePSBTTextNoXpubs"/>
|
||||||
</Menu>
|
</Menu>
|
||||||
<SeparatorMenuItem />
|
<SeparatorMenuItem />
|
||||||
<MenuItem mnemonicParsing="false" text="Import Wallet..." onAction="#importWallet"/>
|
<MenuItem mnemonicParsing="false" text="Import Wallet..." onAction="#importWallet"/>
|
||||||
|
|
Loading…
Reference in a new issue