lnd/lnwallet
2017-10-05 16:54:38 -07:00
..
btcwallet multi: txscript.WitnessScript -> txscript.WitnessSignature 2017-08-24 18:55:32 -07:00
channel_test.go lnwallet: expand TestForceClose to ensure outgoing HTLC's can be swept 2017-09-29 14:38:42 -07:00
channel.go channeldb: use binary.Read/Write with bools in channel.go 2017-10-02 23:13:47 -07:00
config.go lnwallet: flesh out the Config struct, wallet constructor now takes 2017-07-30 17:49:41 -07:00
interface_test.go lnwallet: add new methods to ChannelReservation for dealing w/ chan constraints 2017-09-12 17:41:55 +02:00
interface.go lnwallet: move latest SignDescriptor + serialization 2017-08-25 17:56:50 -07:00
log.go lnwallet: don't attach the rpcclient to the lnwallet logging instance 2017-08-30 20:32:37 -07:00
parameters.go fundingmanager+lnwallet: add HTLC dust limit logic 2016-12-13 11:01:57 -08:00
README.md multi: fix formatting issues in packge README's 2017-03-27 16:25:25 -07:00
reservation.go lnwallet: add new methods to ChannelReservation for dealing w/ chan constraints 2017-09-12 17:41:55 +02:00
script_utils_test.go lnwallet: Implement BOLT-03 key derivation test vectors. 2017-10-05 16:54:38 -07:00
script_utils.go lnwallet: Add missing opcode in senderHTLCScript. 2017-10-02 16:33:06 -07:00
signdescriptor_test.go lnwallet: move latest SignDescriptor + serialization 2017-08-25 17:56:50 -07:00
signdescriptor.go lnwallet/signdesc: increases max witness parsing length 2017-09-19 19:18:21 -07:00
sigpool.go lnwallet: replace sort.Sort with sort.Slice in channel.go 2017-10-02 23:13:47 -07:00
size.go lnwallet/size: updated with recent BOLT 5 constants 2017-09-19 19:18:19 -07:00
txout_test.go lnwallet: move txout serialization out of lnwire 2017-09-14 13:56:25 +02:00
txout.go lnwallet: move txout serialization out of lnwire 2017-09-14 13:56:25 +02:00
wallet.go cmd/lncli+lnwallet: specify need for witness outputs for funding channels 2017-09-29 15:38:26 -07:00
witnessgen.go lnwallet/witnessgen: adds htlc offered+accepted revoke witness type 2017-09-19 19:18:21 -07: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 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