2
0
mirror of https://github.com/lightninglabs/loop synced 2024-11-09 19:10:47 +00:00
Commit Graph

1528 Commits

Author SHA1 Message Date
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
sputn1ck
1df6685653
looprpc: fix suggestswaps response
This commit fixes the SuggestSwaps rpc call. Previously, when multiple
DisqualifiedPeers were provided, all pubkeys would be the same.
2022-06-08 12:09:02 +02:00
Yong
dfe50e44ef
Merge pull request #493 from yyforyongyu/db-params
liquidity: persist manager's params to disk
2022-06-07 23:48:36 +08:00
yyforyongyu
2da38230a5
docs: update release note 2022-06-07 20:18:14 +08:00
yyforyongyu
425a007aaf
loopd+liquidity: persist parameters on disk
This commit saves the RPC request used to construct the `Parameters` on
disk. Since it's a proto message, an easy way to read/write it is to
rely on the proto marshal/unmarshal methods. A side effect is that
migration also becomes easy as proto message have its own internal
mechanism to keep track of the compatibility.
2022-06-07 20:18:11 +08:00
yyforyongyu
26edd21889
loopdb: add new bucket to save liquidity params
This commit adds a new bucket to save liquidity parameters. We've
skipped the serialization and deserialization implementations here and
leave them to be handled by the liquidity package.
2022-06-07 19:19:53 +08:00
yyforyongyu
8217ee31c3
liquidity+loopd: refactor SetParameters to take a rpc request
This commit refactors the method `manager.SetParameters` to take a
`SetLiquidityParamsRequest`. As we'll see in the following commit, this
will enable us saving the params to disk more easily.
2022-06-07 19:19:52 +08:00
yyforyongyu
9c5ac0fb36
liquidity: move parameters into a new file
This commit refactors the `liquidity` by moving `Parameters` related
code into one file.
2022-06-07 19:19:52 +08:00
András Bánki-Horváth
a4d343ca1b
Merge pull request #501 from lightninglabs/lnd-15
multi: bump all dependency to use lnd 0.15.0-beta.rc4
2022-06-03 18:01:54 +02:00
Oliver Gugger
d5952f1202
multi: bump all dependency to use lnd 0.15.0-beta.rc4
This commit bumps all dependencies to be in line with what's required
for the current release candidate of lnd 0.15.0-beta.
2022-06-03 10:50:47 +02:00
András Bánki-Horváth
14dfdc8521
Merge pull request #500 from sputn1ck/update_listswaps_api
Include provided last_hop and outgoing_chan_set to listswaps rpc
2022-05-31 20:52:05 +02:00
sputn1ck
ece0f76e7f
loop: update listswaps api 2022-05-31 16:26:55 +02:00
sputn1ck
efb6f75d60
swap: add lasthop, outgoingchanids to swapinfo 2022-05-31 16:26:51 +02:00
Yong
e98d813885
Merge pull request #495 from sputn1ck/check_p2pk_dest
loopout: reject P2PK addresses
2022-05-25 00:10:22 +08:00