2
0
mirror of https://github.com/lightninglabs/loop synced 2024-11-04 06:00:21 +00:00
Commit Graph

991 Commits

Author SHA1 Message Date
Andras Banki-Horvath
88956455b4
multi: completely remove support for NP2WSH htlcs
This commit removes all code related to NP2WSH htlcs. These were
historically used when segwit adoption was very sporadic and are not
used anywhere anymore. Some historical swaps stored in the DB may be
listed with incorrect htlc adresses from here on.
2022-11-04 17:14:53 +01:00
Andras Banki-Horvath
b36885fb65
loopd: correct htlc output type on view command
Previously view may have set the output type wrongly for internal p2wsh
and p2tr loop-in swaps which is corrected in this commit.
2022-11-04 17:14:50 +01:00
András Bánki-Horváth
f5806aebef
Merge pull request #531 from bhandras/p2tr-fixes
sweep: fix sweep fee estimation for p2tr outputs
2022-10-07 12:53:16 +02:00
András Bánki-Horváth
2352310691
Merge pull request #532 from bhandras/bump-lnd-0.15.1
loopd: bump minimum lnd version to v0.15.1-beta
2022-10-07 12:34:32 +02:00
Andras Banki-Horvath
aba1ae6163
docs: update release notes 2022-10-07 12:26:34 +02:00
Andras Banki-Horvath
977b72019d
loopd: bump minimum lnd version to v0.15.1-beta
In this commit we bump the minimum LND version required to run loopd to
v0.15.1-beta in order to ensure that the underlying chain backend
supports taproot (https://github.com/lightningnetwork/lnd/pull/6798)
2022-10-07 12:24:25 +02:00
Andras Banki-Horvath
8d21042432
sweeper: fix formatting and update error 2022-10-07 08:33:49 +02:00
Andras Banki-Horvath
ebd44ab4c2
sweep: fix sweep fee estimation for p2tr outputs 2022-10-06 23:27:03 +02:00
Oliver Gugger
9c30101500
Merge pull request #526 from kaloudis/patch-1
looprpc/gen_protos.sh: remove js build tag
2022-09-16 14:22:21 +02:00
Evan Kaloudis
84d3adf969
looprpc/gen_protos.sh: remove js build tag 2022-09-08 10:31:04 -04:00
Alex Bosworth
f26115effc
Merge pull request #517 from lightninglabs/bump-to-v0.20.1-beta
version: bump version to v0.20.1-beta
2022-08-01 09:54:36 -07:00
Alex Bosworth
bc6be03104
version: bump version to v0.20.1-beta
bump version
2022-08-01 09:36:36 -07:00
András Bánki-Horváth
e8d6d3cd7f
Merge pull request #515 from bhandras/sweep-tx-log
loopout: log failed sweeps for more detail
2022-07-27 21:06:32 +02:00
Andras Banki-Horvath
a9dbaee102
loopout: log failed sweeps to allow out of band publish 2022-07-27 20:44:45 +02:00
Alex Bosworth
535b84c074
Merge pull request #514 from lightninglabs/v0.20.0-bump
version: bump version to v0.20.0-beta
2022-07-20 11:34:34 -07:00
Alex Bosworth
3a4fefc2bd
version: bump version to v0.20.0-beta 2022-07-20 13:16:52 -05:00
András Bánki-Horváth
34644bdf0d
Merge pull request #509 from bhandras/musig2-sweep-psbt
loopout: use psbt when obtaining the MuSig2 signature
2022-07-14 14:09:40 +02:00
Andras Banki-Horvath
f8da106338
loopout: use psbt when obtaining the MuSig2 signature
In this commit we deprecate the sighash field from the
MuSig2SignSweepReq request in favour of using a psbt serialized sweep
transaction instead. This way the sever gains full transparency about
client sweep requests and can assemble the sighash to sign on its own.
2022-07-12 19:54:25 +02:00
Konstantin Nick
e80852f9ba
Merge pull request #508 from sputn1ck/lnd-15
multi: bump lndclient and lnd version to latest
2022-07-08 10:15:09 +02:00
sputn1ck
0f924b36cd
multi: bump lndclient and lnd version to latest
Co-authored-by: Oliver Gugger <gugger@gmail.com>
2022-07-07 17:28:22 +02:00
András Bánki-Horváth
11ab596080
Merge pull request #497 from bhandras/taproot-musig2
multi: upgrade to using P2TR htlcs and added support for MuSig2 loopout sweep
2022-07-06 22:46:29 +02:00
Andras Banki-Horvath
5f4b34d8b4
docs: update release notes 2022-06-30 17:00:00 +02:00
Andras Banki-Horvath
85145ca4bb
loop: set minimum LND version to 0.15.0 2022-06-30 16:59:59 +02:00
Andras Banki-Horvath
5d7b0abdf5
loopout: add unit test for the MuSig2 sweep case 2022-06-30 16:59:59 +02:00
Andras Banki-Horvath
82b58e5c0e
loopout: attempt cooperative musig2 sweep
This commit adds optional cooperative musig2 sweep by calling the server
to create a partial signature for the sweep if we'd otherwise be allowed
to spend the htlc. If the cooperative musig2 spend fails, we always fall
back to use the scriptpath spend.
2022-06-30 16:59:59 +02:00
Andras Banki-Horvath
32557a57ea
swapserverrpc: add MuSig2SignSweep function 2022-06-30 16:59:58 +02:00
Andras Banki-Horvath
d3401f809f
loopout: fix flaky loopout preimage push and expiry tests 2022-06-30 16:59:58 +02:00
Andras Banki-Horvath
5c04b8db05
test: add richer implementation to MuSig2CreateSession 2022-06-30 16:59:57 +02:00
Andras Banki-Horvath
1abbe648d1
rpc: fix swapserverrpc build 2022-06-30 16:59:57 +02:00
Andras Banki-Horvath
a252e2c706
loopdb: add the local pubkey's keylocator to the persisted contract 2022-06-30 16:59:57 +02:00
Andras Banki-Horvath
ce3026daa9
client: LoopInQuote to support v3 htlc for fee estimate 2022-06-30 16:59:56 +02:00
Andras Banki-Horvath
bf59159ddb
client: LoopOutQuote to support estimate using v3 htlc 2022-06-30 16:59:56 +02:00
Andras Banki-Horvath
391ef57ea3
loopout: enable p2tr without keyspend 2022-06-30 16:59:55 +02:00
Andras Banki-Horvath
901a935514
loopin: enable p2tr htlcs without keyspend 2022-06-30 16:59:55 +02:00
Andras Banki-Horvath
152677fcc7
test: fix naming in client tests 2022-06-30 16:59:55 +02:00
Andras Banki-Horvath
00cf4bf71c
multi: make the next protocol version optional 2022-06-30 16:59:54 +02:00
Andras Banki-Horvath
9b37d744a0
multi: add ProtocolVersion_HTLC_V3 2022-06-30 16:59:54 +02:00
Andras Banki-Horvath
7cc6ef2ffd
mod: bump btcd to latest tagged version 2022-06-30 16:59:41 +02:00
András Bánki-Horváth
490fb352ff
Merge pull request #507 from ellemouton/movePermsToOwnDir
loopd: move RequiredPermissions to dedicated dir
2022-06-14 19:13:21 +02:00
Elle Mouton
8ccd35e0c1
loopd: move RequiredPermissions to dedicated dir
This commit moves the RequiredPermissions map to its own directory so
that projects importing the permissions list dont need to import all the
dependencies of the loopd package.
2022-06-14 15:13:34 +02:00
András Bánki-Horváth
5b5dfc0f5e
Merge pull request #506 from bhandras/sweeper-htlcv3
sweep: fill sign method when script spending a taproot htlc
2022-06-10 17:46:01 +02:00
Andras Banki-Horvath
c9bc10ef76
sweep: fill sign method when script spending a taproot htlc 2022-06-10 17:16:54 +02:00
András Bánki-Horváth
8f23c6789b
Merge pull request #477 from bhandras/taproot-htlc
multi: changes to the taproot HTLC  required for both client and server
2022-06-09 20:10:37 +02:00
Alex Bosworth
0f9abbc29a
Merge pull request #505 from lightninglabs/v0.19.0-bump
version: bump version to v0.19.1-beta
2022-06-09 09:22:27 -07:00
Alex Bosworth
96f1fe5bec
version: bump version to v0.19.1-beta 2022-06-09 09:05:28 -07:00
Carla Kirk-Cohen
c7ef4297c0
multi: update sweeping to allow different sighashes and claim scripts
Taproot spends require a different sighash, so we update our HtlcScript
interface to provide the appropriate sighash when sweeping. We also add
distinct Timeout/Success Script functions to allow for tapleaf spends
which have different locking scripts for different paths. Note that the
timeout and success paths will be the same for segwit v0 htlcs, because
it has a single branched script containing all spend paths.

In future iterations, this differentiation of claim scripts can also
be used to use musig2 to collaboratively keyspend P2TR htlcs with the
server. This script can be expressed as PriorityScript (because we'll
try to keyspend as a priority, and then fall back to a tap leaf spend).
As we've done here, segwit v0 spends would just return their single
script for PriorityScript, and the claim would be no different from
our other claims.
2022-06-09 10:20:16 +02:00
Andras Banki-Horvath
9610becebd
multi: add the aggregate internal pubkey to the v3 htlc 2022-06-09 10:20:16 +02:00
Carla Kirk-Cohen
638973dce2
swap: add locking conditions to HtlcScript interface
Use of the Script() function is problematic when we introduce taproot
because our script will vary depending whether we use keyspend or a
tapleaf spend path (and on the tapleaf spent). This has not previously
been a problem for segwitv0 scripts, because they contain all of the
logical branches for each of our spend conditions in a single script.

This commit prepares for removal of the Script() function by moving
our address/pkScript/sigScript generation (which need Script()) into
each script's implementation of the HtlcScript interface so that
they have access to the script directly.
2022-06-09 10:20:13 +02:00
Konstantin Nick
3931c27043
Merge pull request #504 from sputn1ck/fix_suggest_swaps_rpc
looprpc: fix suggestswaps response
2022-06-08 15:38:00 +02:00
sputn1ck
950b32dea6
multi: update version and release notes 2022-06-08 12:11:20 +02:00