Post
Topic
Board Bitcoin Discussion
Merits 1 from 1 user
Re: [self-moderated] Is LN Bitcoin? franky1: About scaling, on-chain and off-chain
by
Rath_
on 17/01/2022, 08:09:16 UTC
⭐ Merited by LeGaulois (1)
rath wants to narrate that its bolt 4 that then has bolt 1 inside.
its actually bolt 1 that then has 4 inside

I have never said that. You are probably referring to this quote:

bolt4 does not contain any (bolt1 formatted) messages. It describes their payloads.

I hope that you read it too fast and misunderstood it. Let me repeat again.

bolt04 does not describe any independent messages than can be sent in bolt01 format. bolt04 describes payloads that can be included in other standardised messages.

For example, bolt04 describes "onion_routing_packet". It can't be sent as an individual message. You need to put in the payload of "update_add_htlc" message as per specifications.

he also tried to take some limited points about bolt 7, and pretend i said bolt 7 is purely about onion packets. when infact its bolt 4.
routing (both channel gossip and onion packet messages) are concerning both 4 and 7.

Don't forget that we were talking about bolt01's "Routing" type messages. As bolt04 does not describe individual messages, but payloads, they can't be bolt01 formatted.

but you ignore the other types EG (v(w(m))) aka (1(7)) message to find channel and (1(4)) for the onion packet

I am ignoring your (1(4)) message as it is a non-standard message and it would be discarded by other nodes. Again, here's what your message would look like.

Code:
Type: ???
Payload:
○ 1300: hop_data

This is wrong because:
a) "hop_data" is encrypted. "onion_routing_packet" contains a compressed public key which was used to generate a shared secret for all hops. Thus, sending just "hop_data" doesn't make sense.
b) as your message would be non-standard (no type), the receiving node would ignore your message.

And before you say that (4) refers to "onion_routing_packet" and not "hop_data", think about it again. "onion_routing_packet" can't be sent as an individual message as well. You need to send it through a standard message, like "update_add_htlc".

Here's what a proper message should look like:

Code:
Type: 128 (update_add_htlc)
Payload:
○ 32: channel_id
○ 8: id
○ 8: amount_msat
○ 32: payment_hash
○ 4: cltv_expiry
○ 1366: onion_routing_packet