An implementation of rgb on core lightning This fork of cln is maintained by Vincenzo Palazzo
Go to file
Rusty Russell f8a96ba11f daemon: remove try_command call after queue_cmd.
queue_cmd already calls try_command; this is reduandant.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2016-03-15 17:08:36 +10:30
bitcoin daemon: add memcheck() in various places where we expect things to be initialized. 2016-03-08 10:31:15 +10:30
ccan ccan: update and add more. 2016-01-22 06:41:45 +10:30
daemon daemon: remove try_command call after queue_cmd. 2016-03-15 17:08:36 +10:30
doc Minor fixes 2016-01-22 09:09:33 +10:30
secp256k1 secp256k1: add "ignored" files. 2015-09-30 16:39:02 +09:30
test patch remove-timeout.patch 2016-03-15 17:07:12 +10:30
test-cli Remove test-cli 2016-03-08 10:37:15 +10:30
.gitignore doc: add install notes 2016-02-24 23:59:33 -05:00
.gitmodules daemon/jsmn: Add submodule for jsmn. 2016-01-22 06:37:13 +10:30
HACKING.md Correct the formatting of HACKING.md; add top-level files reference. 2016-01-22 09:09:33 +10:30
INSTALL.md doc: add install notes 2016-02-24 23:59:33 -05:00
LICENSE licensing: Make license explicit. 2016-01-22 06:41:46 +10:30
Makefile test: remove test_state_coverage 2016-03-15 17:07:31 +10:30
README.md README.md: A few more details about what we're doing. 2015-10-24 14:41:10 +10:30
close_tx.c close_tx: don't use protobufs. 2016-01-22 06:41:47 +10:30
close_tx.h daemon: simple close support for the case of one side closing transaction. 2016-01-22 06:45:27 +10:30
commit_tx.c funding: remove protobufs. 2016-01-22 06:41:47 +10:30
commit_tx.h peer: keep current commit txs, anchor state, channel funding and their sig. 2016-01-22 06:44:27 +10:30
find_p2sh_out.c daemon: implement unilateral commit. 2016-01-22 06:45:28 +10:30
find_p2sh_out.h header cleanup: sort include lines into alpha order, after config.h 2016-01-22 06:38:08 +10:30
funding.c funding: explicitly mark which side offered the anchor. 2016-03-15 17:07:30 +10:30
funding.h funding: explicitly mark which side offered the anchor. 2016-03-15 17:07:30 +10:30
lightning.pb-c.c protocol: include next revocation hash in open packet. 2016-03-15 17:08:35 +10:30
lightning.pb-c.h protocol: include next revocation hash in open packet. 2016-03-15 17:08:35 +10:30
lightning.proto protocol: include next revocation hash in open packet. 2016-03-15 17:08:35 +10:30
names.c names: generate names for command_status and state_peercond. 2016-01-22 06:41:46 +10:30
names.h names: generate names for command_status and state_peercond. 2016-01-22 06:41:46 +10:30
opt_bits.c opt_bits: parsing routines for 'bits' == 100 satoshi. 2015-06-07 13:52:04 +09:30
opt_bits.h header cleanup: sort include lines into alpha order, after config.h 2016-01-22 06:38:08 +10:30
overflows.h header cleanup: sort include lines into alpha order, after config.h 2016-01-22 06:38:08 +10:30
permute_tx.c source cleanup: sort include lines into alpha order 2016-01-22 06:38:08 +10:30
permute_tx.h header cleanup: sort include lines into alpha order, after config.h 2016-01-22 06:38:08 +10:30
protobuf_convert.c Use #if instead of #ifdef (we already use -Wundef). 2016-01-27 15:00:50 +10:30
protobuf_convert.h bitcoin: hand in a secp256k1_context to all routines. 2016-01-22 06:41:47 +10:30
state.c patch remove-timeout.patch 2016-03-15 17:07:12 +10:30
state.h patch remove-timeout.patch 2016-03-15 17:07:12 +10:30
state_types.h patch remove-timeout.patch 2016-03-15 17:07:12 +10:30
version.c source cleanup: sort include lines into alpha order 2016-01-22 06:38:08 +10:30
version.h header cleanup: sort include lines into alpha order, after config.h 2016-01-22 06:38:08 +10:30

README.md

Lightning Protocol Reference Implementation

In this repository we're developing a reference implementation of bitcoin lightning (see: http://lightning.network which proposed the original "lightning network").

The first step was to develop a wire protocol for nodes to talk to each other. The wire protocol is documented in lightning.proto (a protobuf definition file). There are command line utilities to create and process various packets in test-cli.

The second step is to create a daemon which uses that protocol to communicate with others to set up channels and make simple payments. This also involves monitoring the blockchain for transactions. This is where development is currently occurring.

Later steps will enhance the protocol to network individual daemons, advertize their IP addresses, publish routes and fees, and use that information to pay specific nodes. These details are currently being hashed out on the mailing list and the IRC channel #lightning-dev on Freenode.

The protocol requires features not currently in bitcoin, so by default it runs on top of the sidechain Elements Alpha. It can be tested with bitcoin (on testnet) with OP_NOP substitution, at the top level Makefile.

Final note: This is very much a testbed and work in progress; expect All The Things to change, all the time.

Welcome aboard!

Rusty.