Navigate:
~$LND0.1%

LND: Lightning Network Daemon Implementation

Complete Lightning Network node implementation with channel management, payment routing, and BOLT specification compliance.

LIVE RANKINGS • 05:08 AM • STEADY
OVERALL
#396
38
CRYPTO
#30
3
30 DAY RANKING TREND
ovr#396
·Crypt#30
STARS
8.1K
FORKS
2.2K
7D STARS
+4
7D FORKS
-1
Tags:
See Repo:
Share:

Learn more about LND

LND (Lightning Network Daemon) is a complete implementation of a Lightning Network node for Bitcoin's second-layer payment protocol. The daemon supports multiple Bitcoin backend services including btcd, bitcoind, and neutrino, and uses the btcsuite library collection for Bitcoin operations. LND handles channel creation and management, maintains an authenticated channel graph, performs payment routing with onion encryption, and includes automatic channel management through autopilot functionality. The implementation serves as both a standalone Lightning node and a platform for building Lightning-enabled applications through its REST and gRPC APIs.

LND

1

Full BOLT Compliance

Implements all Lightning Network specifications (BOLT 1-11) including base protocol, channel management, onion routing, and invoice protocols.

2

Multiple Backend Support

Works with various Bitcoin node implementations including btcd full nodes, bitcoind, and neutrino light clients for flexible deployment options.

3

Developer APIs

Provides both HTTP REST API and gRPC interfaces for application development, with comprehensive documentation and client libraries.


package main

import (
	"context"
	"crypto/tls"
	"fmt"
	"log"

	"google.golang.org/grpc"
	"google.golang.org/grpc/credentials"
	"github.com/lightningnetwork/lnd/lnrpc"
)

func main() {
	// Load TLS credentials
	creds, err := credentials.NewClientTLSFromFile("tls.cert", "")
	if err != nil {
		log.Fatal(err)
	}

	// Connect to LND
	conn, err := grpc.Dial("localhost:10009", grpc.WithTransportCredentials(creds))
	if err != nil {
		log.Fatal(err)
	}
	defer conn.Close()

	// Create Lightning client
	client := lnrpc.NewLightningClient(conn)

	// Get node info
	resp, err := client.GetInfo(context.Background(), &lnrpc.GetInfoRequest{})
	if err != nil {
		log.Fatal(err)
	}

	fmt.Printf("Node Alias: %s\n", resp.Alias)
	fmt.Printf("Node Pubkey: %s\n", resp.IdentityPubkey)
	fmt.Printf("Block Height: %d\n", resp.BlockHeight)
	fmt.Printf("Synced to Chain: %t\n", resp.SyncedToChain)
}


vv0.20.1-beta.rc1

lnd v0.20.1-beta.rc1

  • Verifying the Release In order to verify the release, you'll need to have `gpg` or `gpg2` installed on your system
  • Once you've obtained a copy (and hopefully verified that as well), you'll first need to import the keys that have signed this release if you haven't done so already: ``` curl https://raw.githubusercontent.com/lightningnetwork/lnd/master/scripts/keys/roasbeef.asc | gpg --import ``` Once you have the required PGP keys, you can verify the release (assuming `manifest-roas
vv0.20.0-beta

lnd v0.20.0-beta

  • ⚡️2FakTor⚡️
  • Abdullahi Yunus
  • András Bánki-Horváth
  • bitromortac
  • Boris Nagaev
vv0.20.0-beta.rc4

lnd v0.20.0-beta.rc4

  • ⚡️2FakTor⚡️
  • Abdullahi Yunus
  • András Bánki-Horváth
  • bitromortac
  • Boris Nagaev


[ EXPLORE MORE ]

Related Repositories

Discover similar tools and frameworks used by developers