1
0
mirror of https://github.com/lightning/bolts.git synced 2024-11-19 01:50:03 +01:00
BOLT: Basis of Lightning Technology (Lightning Network Specifications)
Go to file
Rusty Russell 4af8e18411 BOLT 0,1,2,7: use txout not channel-id for demuxing. (#119)
At cost of a few extra bytes between peers, this avoids the whole "oops, we were on a chain fork" problem, and simplifies generation of temporary channel-ids (just pick a random one).

Now we move the announcement_signature exchange to at least 6 confirms, which makes re-xmit tricky; I resolved that by insisting on reconnect that we send if we haven't received, and reply to the first one.

The term "channel shortid" wasn't used anywhere, so I removed it; it's now a gossip-only thing anyway.

One subtle change: pkt_error on unknown channels is now "MUST ignore"; this section was reworked anyway, and we'll want this if the #120 goes through, where one side might have forgotten unformed channels).

Closes: #114
Suggested-by: Olaoluwa Osuntokun <laolu32@gmail.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>

* FIXUP! Two bytes for funding-output-index.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>

* FIXUP! Channel-id rework, temp ids, 32 bits only.

Re-add the idea of temporary channel ids: far simpler since they're now
big enough we can just fill with noise.

Remove the alignment issues by combining txid and outnum using XOR; we
could reduce to 128 bit if we really wanted to, but we don't.

Error handling is now simple again, but while editing I changed the
behaviour for unknown channels to MUST ignore (this is important for

Change the 8-byte gossip channel id to `short-channel-id`.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>

* FIXUP!  Minor text tweaks from Pierre-Marie and Christian

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2017-03-02 14:50:13 +10:30
tools tools/extract-formats.py: accept fields from BOLT 4. 2017-01-28 14:10:04 +01:00
.travis.yml travis-ci: Since we have code in here we need to test it 2017-01-28 14:10:04 +01:00
00-introduction.md BOLT 0,1,2,7: use txout not channel-id for demuxing. (#119) 2017-03-02 14:50:13 +10:30
01-messaging.md BOLT 0,1,2,7: use txout not channel-id for demuxing. (#119) 2017-03-02 14:50:13 +10:30
02-peer-protocol.md BOLT 0,1,2,7: use txout not channel-id for demuxing. (#119) 2017-03-02 14:50:13 +10:30
03-transactions.md BOLT 3: update test vectors for ec99f893f3 2017-02-22 09:59:37 +10:30
04-onion-routing.md BOLT 4: using 4 bytes for outgoing_cltv_value (#95) 2017-02-01 13:20:57 +01:00
05-onchain.md BOLT 2, BOLT 5: restrict to ASCII characters. 2017-01-25 10:40:10 +10:30
06-irc-announcements.md [trivial] Some spelling and language fixes in BOLTs 6,7,8 (#41) 2016-12-09 10:32:23 +10:30
07-routing-gossip.md BOLT 0,1,2,7: use txout not channel-id for demuxing. (#119) 2017-03-02 14:50:13 +10:30
08-transport.md BOLT08: Renumbering references 2017-02-28 13:48:54 +10:30
09-features.md BOLT 9: make it clear that 'channel_public' apply to all channels in the same connection 2017-02-21 14:41:27 +10:30
README.md Add CC-BY. 2016-11-23 06:22:59 +10:30

Lightning Network In-Progress Specifications

The specifications are currently a work-in-progress and currently being drafted.

Pull requests and comments welcome, seeking input from community stakeholders.

Discussion available on the lighting-dev mailing list.

Start here for Table of Contents

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.