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

Feature Request: PSBT integration, especially signing #3085

Closed
MaxHillebrand opened this issue May 16, 2019 · 5 comments · Fixed by #4079
Closed

Feature Request: PSBT integration, especially signing #3085

MaxHillebrand opened this issue May 16, 2019 · 5 comments · Fixed by #4079
Assignees
Labels
brainstorming Long term ideas/discussion/requests for feedback feature request Requests for new features wallet The wallet (lnwallet) which LND uses
Milestone

Comments

@MaxHillebrand
Copy link
Contributor

MaxHillebrand commented May 16, 2019

Background

Partially Signed Bitcoin Transactions (BIP 174) (by @achow101) allows for a standardized transfer of unsigned, partially signed, fully signed and finalized transactions. It would be nice to integrate this standard into lnd.

Usage

I need this specifically to manage on chain funds of the lnd wallet in another software user interface. The capabilities of bitcoin-qt, Wasabi Wallet or Electrum Wallet are far greater than the implemented lnd wallet.

I would export the master public key from lnd into a watch only software wallet, build a PSBT there, export this over ssh, SD or any other way onto the lnd wallet for signing and broadcasting.

Considerations

PSBT integration would be a rather big change and improvement, I guess. There might be other more interesting ways to approach this, of course.

I've copied this feature request to the repository of btcsuite/btcwallet.

@AdamISZ
Copy link
Contributor

AdamISZ commented May 16, 2019

Hi @MaxHillebrand :)

Just to let you know I've had this PR open for a while: btcsuite/btcutil#126

lnwallet currently encapsulates a btcwallet instance but it's built with an interface with the intention of being able to abstract that out (see here), also I shouldn't comment too much on the arch. as I know it's changed a bit recently.

I was mostly thinking about coinjoin directly with lnd coins; I glean (speculate) that your intended use case is something more like; take lnd utxos via an xpub, import watch only, then do coin control stuff to build a tx, then import that back into lnd to sign and broadcast. I guess that makes sense.

Anyway, I think there'll be a bit more to it than dropping in PSBT.

@MaxHillebrand
Copy link
Contributor Author

Fantastic work Adam, thank you for this!!

Seems like your PR is very advanced already, hope we get this integrated son.
I'm really looking forward to what you tinker up with this coin join integration, I'll definitely stay tuned!

@wpaulino wpaulino added brainstorming Long term ideas/discussion/requests for feedback feature request Requests for new features wallet The wallet (lnwallet) which LND uses labels May 16, 2019
@Roasbeef
Copy link
Member

This is on my radar now, with the end goal of being able to fund channels from a PSBT aware hardware wallet. Along the way, btcwallet will get full blown PSBT generation/signing/combining support as well.

@Roasbeef Roasbeef added this to the 0.10.0 milestone Jan 14, 2020
@Roasbeef Roasbeef self-assigned this Jan 17, 2020
@Roasbeef
Copy link
Member

I'll be chopping this one up into some follow up issues to track things like the necessary RPC changes we'll need.

@Roasbeef
Copy link
Member

Also waxwing's PR to btcutil which adds psbt support has been merged!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
brainstorming Long term ideas/discussion/requests for feedback feature request Requests for new features wallet The wallet (lnwallet) which LND uses
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants