lightning / bolts

BOLT: Basis of Lightning Technology (Lightning Network Specifications)
2.11k stars 491 forks source link

BOLT 2: introduce alt_addr feature for private reconnections #1188

Closed maxrantil closed 2 months ago

maxrantil commented 3 months ago

This PR adds documentation for a new feature: the alt_addr message in Bolt 02. The alt_addr message allows nodes to specify a private alternative connection address for peers, improving privacy, reliability, and latency in established connections.

t-bast commented 3 months ago

I'm not sure that this is generally useful, and thus probably doesn't meet the bar for inclusion in the BOLTs. Maybe a bLIP would make more sense?

maxrantil commented 3 months ago

Thanks for the input @t-bast , I’m a Summer of Bitcoin intern, and this is my first implementation here. The project proposal, authored by @EndothermicDev , originally included a BOLT proposal as part of the plan. But honestly, I didn’t know about the bLIP process until you brought it up.

That said, I believe that enhancing privacy is generally useful, so I figured it was worth adding. However, I’m totally open to hearing where others think this should go—whether it’s a BOLT or a bLIP.

t-bast commented 3 months ago

That said, I believe that enhancing privacy is generally useful

It's really unclear to me how this generally enhances privacy. It rather looks like it enhances privacy only for some very specific use-cases and nodes, and isn't a general mechanism that we'd expect all nodes to use. That's why it's rather a candidate for a bLIP than the BOLTs, which we don't want to clutter with too many optional features.

TheBlueMatt commented 3 months ago

ISTM it depends a bit on the intended usecase - is this for Big Nodes that want to have some kind of DDoS resistance by having separate IPs they give to certain peers? Or is this intended to be something for privacy where you only announce a Tor address and then give certain peers (based on what criteria?) your real IP? Assuming we want ~all peers to implement reading this field and connecting to a node based on it then it presumably needs to be a BOLT, but if we only want some specialized software to do that then it would be better placed as a bLIP. That said, I'm not entirely convinced by the need for the feature.

maxrantil commented 2 months ago

this is now moved to bLIP 43 https://github.com/lightning/blips/pull/43 . Thanks everyone for your input! Closing this out.