lnd.xprv/lnwallet
Olaoluwa Osuntokun fc8337b146
lnwallet: send invalid commitment secret if restored chan in ChanSyncMsg
In this commit, we modify the `ChanSyncMsg` to send an invalid
commitment secret in `ChanSyncMsg`. We do this in order to force the
remote party to force close off-chain, if we're restoring a channel from
scratch and we never had any state updates within the channel. We need
to do this, as otherwise the remote party will think we can resume as
they're able to verify their own commit secret for state zero.
2019-03-28 17:53:54 -07:00
..
btcwallet lnwallet: return ErrNoOutputs in case no outputs are sent to 2019-03-15 23:47:15 +01:00
channel_test.go lnwallet: send invalid commitment secret if restored chan in ChanSyncMsg 2019-03-28 17:53:54 -07:00
channel.go lnwallet: send invalid commitment secret if restored chan in ChanSyncMsg 2019-03-28 17:53:54 -07:00
config.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
errors.go Revert "funding+lnwallet: ensure max_htlc_value_in_flight smaller than capacity" 2019-01-29 17:58:04 -08:00
fee_estimator_test.go lnwallet: prevent static fee estimator fees from being modified 2018-12-18 10:50:05 +01:00
fee_estimator.go lnwallet: prevent static fee estimator fees from being modified 2018-12-18 10:50:05 +01:00
interface_test.go lnwallet/interface_test: add testCreateSimpleTx 2019-03-15 23:47:15 +01:00
interface.go lnwallet: return ErrNoOutputs in case no outputs are sent to 2019-03-15 23:47:15 +01:00
log.go multi: init subsystem loggers via build pkg 2018-10-05 13:04:45 +09:00
parameters.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
README.md multi: fix typos in comments 2018-04-17 19:03:27 -07:00
reservation.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
sigpool.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
size_test.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
test_utils.go lnwallet: export ForceStateTransition for tests outside package 2019-03-13 17:31:10 -07:00
transactions_test.go cnct+lnwl+hswc: use lntypes.Preimage for witness beacon 2019-02-19 17:06:00 -08:00
transactions.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
wallet.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00

lnwallet

Build Status MIT licensed GoDoc

The lnwallet package implements an abstracted wallet controller that is able to drive channel funding workflows, a number of script utilities, witness generation functions for the various Lightning scripts, revocation key derivation, and the commitment update state machine.

The package is used within lnd as the core wallet of the daemon. The wallet itself is composed of several distinct interfaces that decouple the implementation of things like signing and blockchain access. This separation allows new WalletController implementations to be easily dropped into lnd without disrupting the code base. A series of integration tests at the interface level are also in place to ensure conformance of the implementation with the interface.

Installation and Updating

$ go get -u github.com/lightningnetwork/lnd/lnwallet