2017-01-12 03:12:53 +03:00
## Lightning Network Daemon
2017-03-22 08:05:55 +03:00
2018-07-06 22:20:51 +03:00
[![Build Status ](https://img.shields.io/travis/lightningnetwork/lnd.svg )](https://travis-ci.org/lightningnetwork/lnd)
2018-05-17 04:50:25 +03:00
[![MIT licensed ](https://img.shields.io/badge/license-MIT-blue.svg )](https://github.com/lightningnetwork/lnd/blob/master/LICENSE)
[![Irc ](https://img.shields.io/badge/chat-on%20freenode-brightgreen.svg )](https://webchat.freenode.net/?channels=lnd)
2017-03-22 08:05:55 +03:00
[![Godoc ](https://godoc.org/github.com/lightningnetwork/lnd?status.svg )](https://godoc.org/github.com/lightningnetwork/lnd)
2017-01-12 03:12:53 +03:00
2017-09-30 00:06:22 +03:00
< img src = "logo.png" >
2017-08-23 07:00:42 +03:00
The Lightning Network Daemon (`lnd`) - is a complete implementation of a
[Lightning Network ](https://lightning.network ) node and currently deployed on
`testnet3` - the Bitcoin Test Network. `lnd` has several pluggable back-end
chain services including [`btcd` ](https://github.com/btcsuite/btcd ) (a
2018-04-03 02:19:16 +03:00
full-node), [`bitcoind` ](https://github.com/bitcoin/bitcoin ), and
[`neutrino` ](https://github.com/lightninglabs/neutrino ) (a new experimental light client). The project's codebase uses the
2017-08-23 07:00:42 +03:00
[btcsuite ](https://github.com/btcsuite/ ) set of Bitcoin libraries, and also
exports a large set of isolated re-usable Lightning Network related libraries
2018-05-17 04:50:25 +03:00
within it. In the current state `lnd` is capable of:
2017-08-23 07:00:42 +03:00
* Creating channels.
* Closing channels.
* Completely managing all channel states (including the exceptional ones!).
* Maintaining a fully authenticated+validated channel graph.
* Performing path finding within the network, passively forwarding incoming payments.
2018-05-17 04:50:25 +03:00
* Sending outgoing [onion-encrypted payments ](https://github.com/lightningnetwork/lightning-onion )
2017-08-23 07:00:42 +03:00
through the network.
* Updating advertised fee schedules.
* Automatic channel management ([`autopilot`](https://github.com/lightningnetwork/lnd/tree/master/autopilot)).
2017-01-10 23:14:37 +03:00
## Lightning Network Specification Compliance
2018-01-23 06:25:12 +03:00
`lnd` _fully_ conforms to the [Lightning Network specification
2017-08-23 07:00:42 +03:00
(BOLTs)](https://github.com/lightningnetwork/lightning-rfc). BOLT stands for:
2018-10-29 02:53:42 +03:00
Basis of Lightning Technology. The specifications are currently being drafted
2017-01-10 23:14:37 +03:00
by several groups of implementers based around the world including the
developers of `lnd` . The set of specification documents as well as our
implementation of the specification are still a work-in-progress. With that
2017-12-20 04:28:38 +03:00
said, the current status of `lnd` 's BOLT compliance is:
2017-01-10 23:14:37 +03:00
2017-08-23 07:00:42 +03:00
- [X] BOLT 1: Base Protocol
2017-11-11 06:47:17 +03:00
- [X] BOLT 2: Peer Protocol for Channel Management
2017-08-23 07:00:42 +03:00
- [X] BOLT 3: Bitcoin Transaction and Script Formats
2017-01-10 23:14:37 +03:00
- [X] BOLT 4: Onion Routing Protocol
- [X] BOLT 5: Recommendations for On-chain Transaction Handling
- [X] BOLT 7: P2P Node and Channel Discovery
- [X] BOLT 8: Encrypted and Authenticated Transport
2017-09-30 00:42:28 +03:00
- [X] BOLT 9: Assigned Feature Flags
- [X] BOLT 10: DNS Bootstrap and Assisted Node Location
- [X] BOLT 11: Invoice Protocol for Lightning Payments
2016-01-16 11:13:11 +03:00
2017-08-23 07:00:42 +03:00
## Developer Resources
The daemon has been designed to be as developer friendly as possible in order
2017-08-31 03:34:28 +03:00
to facilitate application development on top of `lnd` . Two primary RPC
2017-08-23 07:00:42 +03:00
interfaces are exported: an HTTP REST API, and a [gRPC ](https://grpc.io/ )
service. The exported API's are not yet stable, so be warned: they may change
drastically in the near future.
2017-08-31 03:34:28 +03:00
An automatically generated set of documentation for the RPC APIs can be found
2018-07-06 22:20:51 +03:00
at [api.lightning.community ](https://api.lightning.community ). A set of developer
2017-08-23 07:00:42 +03:00
resources including talks, articles, and example applications can be found at:
2018-07-06 22:20:51 +03:00
[dev.lightning.community ](https://dev.lightning.community ).
2017-08-23 07:00:42 +03:00
Finally, we also have an active
2018-04-13 03:22:52 +03:00
[Slack ](https://join.slack.com/t/lightningcommunity/shared_invite/enQtMzQ0OTQyNjE5NjU1LWRiMGNmOTZiNzU0MTVmYzc1ZGFkZTUyNzUwOGJjMjYwNWRkNWQzZWE3MTkwZjdjZGE5ZGNiNGVkMzI2MDU4ZTE ) where protocol developers, application developers, testers and users gather to
2017-08-23 07:00:42 +03:00
discuss various aspects of `lnd` and also Lightning in general.
2016-01-18 06:53:50 +03:00
## Installation
2017-08-03 04:52:37 +03:00
In order to build from source, please see [the installation
instructions](docs/INSTALL.md).
2018-05-17 04:50:25 +03:00
## Docker
To run lnd from Docker, please see the main [Docker instructions ](docs/DOCKER.md )
2017-01-12 03:12:53 +03:00
2017-01-10 23:14:37 +03:00
## IRC
* irc.freenode.net
* channel #lnd
* [webchat ](https://webchat.freenode.net/?channels=lnd )
2016-01-16 05:24:38 +03:00
2018-09-14 02:25:11 +03:00
## Security
The developers of `lnd` take security _very_ seriously. The disclosure of
2018-09-26 07:12:14 +03:00
security vulnerabilities helps us secure the health of `lnd` , privacy of our
2018-09-14 02:25:11 +03:00
users, and also the health of the Lightning Network as a whole. If you find
any issues regarding security or privacy, please disclose the information
responsibly by sending an email to security at lightning dot engineering,
preferably [encrypted using our designated PGP key
(`91FE464CD75101DA6B6BAB60555C6465E5BCB3AF`) which can be found
here](https://pgp.mit.edu/pks/lookup?op=vindex& search=0x555C6465E5BCB3AF).
2017-01-12 03:12:53 +03:00
## Further reading
* [Step-by-step send payment guide with docker ](https://github.com/lightningnetwork/lnd/tree/master/docker )
2017-03-22 08:05:55 +03:00
* [Contribution guide ](https://github.com/lightningnetwork/lnd/blob/master/docs/code_contribution_guidelines.md )