Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 14 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,19 @@ This version of Lnd is not yet fully-operational, but a proof of concept on test

Don't try to port it to mainnet or an altcoin and use it today! No really. Lightning transactions will be fast, but for now, please wait just a little bit.

## Installation

* If necessary, install Go according to the installation instructions here: http://golang.org/doc/install. It is recommended to add `$GOPATH/bin` to your `PATH` at this point.
* Run the following command to obtain and install lnd, lncli, lnshell and all dependencies:

```
go get -u -v github.com/lightningnetwork/lnd/...
```

Feel free to disregard any errors/warnings related to the lnstate and uspv packages.

## Packages and Utilities

### chainntfs

A package centered around a generic interface for receiving transaction/confirmation based notifications concerning the blockchain. Such notifications are required in order for pending payment channels to be notified once the funding transaction gains a specified number of confirmations, and in order to catch a counter-party attempting a non-cooperative close using a past commitment transaction to steal funds.
Expand All @@ -32,7 +45,7 @@ This is useful for the hashed secrets in LN payment channels.
### lndc
Library for authenticated encrypted communication between LN nodes. It uses chacha20_poly1305 for the symmetric cipher, and the secp256k1 curve used in bitcoin for public keys. No signing is used, only two ECDH calculations: first with ephemeral key pairs and second with persistent identifying public keys.

### lnrpc
### lnrpc

lnd's RPC interface. Currently [gRPC](http://www.grpc.io/), a high-performance RPC framework is used. gRPC provides features such as a stub-based client interface in several languages, streaming RPCs, payload agnostic request/response handling, and more. In addition to gRPC, lnd will also offer a basic REST-based http RPC interface. For now, connections are not encrypted, or authenticated. For authentication, [macaroons](http://research.google.com/pubs/pub41892.html) will likely be integrated due to their simplicity, flexibility, and expressiveness.

Expand Down
8 changes: 5 additions & 3 deletions cmd/lncli/commands.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,11 @@ func printRespJson(resp interface{}) {
}

var ShellCommand = cli.Command{
Name: "shell",
Usage: "enter interactive shell",
Action: shell,
Name: "shell",
Usage: "enter interactive shell",
Action: func(c *cli.Context) {
println("not implemented yet")
},
}

var NewAddressCommand = cli.Command{
Expand Down
4 changes: 2 additions & 2 deletions peer.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ import (

"github.com/btcsuite/btcd/wire"
"github.com/lightningnetwork/lnd/lndc"
"li.lan/labs/plasma/lnwallet"
"li.lan/labs/plasma/lnwire"
"github.com/lightningnetwork/lnd/lnwallet"
"github.com/lightningnetwork/lnd/lnwire"
)

var (
Expand Down