Fonta1n3 / FullyNoded

Self sovereign, secure, powerful, easy to use wallet that utilizes your own node as a backend. Powered by PSBT's and descriptors. Acts as an offline signer using your node as a watch-only wallet. C-Lightning compatible for instant, unfairly cheap payments.
https://fullynoded.app
Other
197 stars 37 forks source link

Please implement watch-only multi-signature wallet support for Unchained Capital #156

Closed Sa1nte closed 3 years ago

Sa1nte commented 3 years ago

Problem: I am unable to import the external spend configuration file (json) containing the xpubs and bip32 paths for a collaborative custody 2-of-3 MSG wallet with Unchained Capital. When selecting "import via file" and choosing the json file, the app does nothing but returns to the "Create a FullyNoded Wallet" screen. Importing this file works as intended in other mobile wallet applications.

When manually entering the xpubs into the Multisig Creator, FN does not find my UTXOs. Additionally, no matter what derivation path I enter, FN changes it in the descriptor to 48'/0'/0'/2'. The wallet is P2SH yet displays bc1q addresses in FN.

Solution I would like: I would like to be able to import the external spend json file directly into FN to be able to use my node to verify my multisignature wallet transactions.

Alternatively, I would like the import multisig wallet feature to allow me to enter the correct derivation paths instead of defaulting to 48' despite entering another derivation path in the creator.

A copy of the json file was sent to Fonta1n3 through the Telegram channel. A copy is added to this request.

Thanks!

wallet-config-ex.txt

Fonta1n3 commented 3 years ago

Hey, thanks for the feature request.

Currently Fully Noded "msig creator" does not support the bip45 derivation scheme which is why your utxos are not seen.

I will get it added though so the file import works.

Fonta1n3 commented 3 years ago

@Sa1nte are you using Fully Noded on macOS? I have added the unchained capital import (via file) ability but was wondering if you would want to test it for me first? I can send you a dmg that you should be able to easily run on macOS to try it out before I put on app store

Fonta1n3 commented 3 years ago

Just FYI I noticed the file you sent has some incorrect data.. For starters it does not seem to adhere to bip45 strictly. It also does not hold valid xfp and does not include the derivation path for the unchained capital key.

If derivation paths are not accurate (or missing) you will have issues around signing using Fully Noded and determining which signers can sign specific inputs/outputs.

There can also be issues with Hardware wallets around signing if the psbt does not include the correct xfp for the cosigner.

Sa1nte commented 3 years ago

@Fonta1n3 My wallet config does contain a unique xfp for each key. Since I will not be using the unchained capital key to sign a transaction, they do not provide the derivation path (since I don't have the xpriv, it wouldn't do me any good). I do not plan on using Fully Noded as a signer in this setup. I wish to import the wallet as a watch-only wallet similar to the functionality present in Electrum and Blue Wallet.

Fonta1n3 commented 3 years ago

This has been added for 0.2.18, please test and let me know if it works