Wrote the following two sections under Gossip Announcements
- How does a peer announce a new channel to the network?
- How do nodes verify a channel announcement? Why should they verify one in the first place?
I used Bolt 7 as a reference. I went for a simple approach, but it might be too simplistic. Feel free to add more relevant detail. In particular two things I wasn't sure about it:
1. The exact structure of the signatures in the `channel_announcement` message. Not sure if my explanation is 100% technically correct.
2. Attack vector for fake channel announcements. While I understand that having a network graph with fake channels is a problem, how exactly could an attacker exploit this?
https://github.com/lightningnetwork/lightning-rfc/blob/master/07-routing-gossip.md
I'd like to also credit Gabriel Comtefor this contribution as his medium article helped me write this section on Zombie channels. Specifically the points on Zombie channels being a burden on the network, and losing your funds even if you have a channel.backup are taken from his article below.
https://medium.com/@gcomxx/get-rid-of-those-zombie-channels-1267d5a2a708