lnd.xprv/channeldb
Olaoluwa Osuntokun 705661a39e
channeldb: replace raw keys in ChannelConfig with keychain.KeyDescriptor
In this commit, we remove references to raw keys from the main
ChannelConfig struct and instead replace it with usage of
keychain.KeyDescriptor. We do this, as the ChannelConfig as it stands
is a near complete static description of a channel. In the future, it
will be possible to export these static descriptions as backups. We
prefer the KeyDescriptor of a plain PublicKey, as the KeyLocator
portion of the struct allows a stateless signer to re-derive the keys
as needed when signing.
2018-03-06 16:04:01 -05:00
..
addr.go multi: apply roasbeef diff to support incoming socks.ProxiedAddr 2018-02-05 17:37:46 -08:00
channel_test.go channeldb: replace raw keys in ChannelConfig with keychain.KeyDescriptor 2018-03-06 16:04:01 -05:00
channel.go channeldb: replace raw keys in ChannelConfig with keychain.KeyDescriptor 2018-03-06 16:04:01 -05:00
codec.go channeldb: replace raw keys in ChannelConfig with keychain.KeyDescriptor 2018-03-06 16:04:01 -05:00
db_test.go multi: comprehensive typo fixes across all packages 2018-02-06 19:11:11 -08:00
db.go multi: fixing it's/its typos in comments 2018-02-06 19:13:07 -08:00
doc.go channeldb: create new channeldb package, update lnwallet to use new API 2015-12-26 12:35:15 -06:00
error.go channeldb: add new ForwardingLog storage namespace 2018-03-06 13:56:06 -05:00
fees.go channeldb: create new channeldb package, update lnwallet to use new API 2015-12-26 12:35:15 -06:00
forwarding_log_test.go channeldb: add a set of initial tests for the ForwardingLog 2018-03-06 13:56:09 -05:00
forwarding_log.go channeldb: add new ForwardingLog storage namespace 2018-03-06 13:56:06 -05:00
graph_test.go channeldb: use raw pub keys and signatures directly in vertex/edge structs 2018-02-06 20:14:31 -08:00
graph.go multi: fix some recently introduced typos 2018-02-18 15:27:29 -08:00
invoice_test.go multi: comprehensive typo fixes across all packages 2018-02-06 19:11:11 -08:00
invoices.go multi: fixing it's/its typos in comments 2018-02-06 19:13:07 -08:00
log.go lnd: remove seelog logger 2017-06-25 14:19:56 +01:00
meta_test.go multi: comprehensive typo fixes across all packages 2018-02-06 19:11:11 -08:00
meta.go lnd: fix gosimple warnings 2017-03-13 16:30:23 -07:00
migrations.go channeldb: remove prior migrations as their no longer needed 2017-07-30 17:47:58 -07:00
nodes_test.go multi: comprehensive typo fixes across all packages 2018-02-06 19:11:11 -08:00
nodes.go multi: comprehensive typo fixes across all packages 2018-02-06 19:11:11 -08:00
payments_test.go channeldb+lnrpc: store the payment pre-image not rhash 2018-01-27 18:36:33 -08:00
payments.go channeldb+lnrpc: store the payment pre-image not rhash 2018-01-27 18:36:33 -08:00
README.md multi: fix formatting issues in packge README's 2017-03-27 16:25:25 -07:00
waitingproof_test.go channeldb: use raw pub keys and signatures directly in vertex/edge structs 2018-02-06 20:14:31 -08:00
waitingproof.go channeldb: use binary.Read/Write in waitingproof.go 2017-10-02 23:13:47 -07:00
witness_cache_test.go channeldb: add new WitnessCache structure 2018-01-22 19:19:37 -08:00
witness_cache.go channeldb: add new WitnessCache structure 2018-01-22 19:19:37 -08:00

channeldb

Build Status MIT licensed GoDoc

The channeldb implements the persistent storage engine for lnd and generically a data storage layer for the required state within the Lightning Network. The backing storage engine is boltdb, an embedded pure-go key-value store based off of LMDB.

The package implements an object-oriented storage model with queries and mutations flowing through a particular object instance rather than the database itself. The storage implemented by the objects includes: open channels, past commitment revocation states, the channel graph which includes authenticated node and channel announcements, outgoing payments, and invoices

Installation and Updating

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