Olaoluwa Osuntokun
fc85d6e83e
ch-10: chan extracts the inner HMAC instead of verifying again
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
34f08eef84
ch-10: expand high level explanation of how Bob constructs the next onion packet
...
Still need to expand on the blinded of the session key as noted in the TODO section below.
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
f9d600f97e
ch-10: bob only verifies the HMAC once, but he extracts the outer HAMC for chan
...
Continuing to propagate HMAC fix, Bob does't need to verify the HMAC again, instead he needs to extract the inner HMAC, as it'll become the outer HMAC for Chan.
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
6127633569
ch-10: propagate ordering fix to the other hops
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
bd082abae0
ch-10: add section on replay protection+detection
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
e2d2bede3d
ch-10: fix ordering of HMAC steps, HMAC is computed over encrypted payload
...
The outer HMAC for the final hop is computed over the encrypted payload. Instead, the inner HMAC is just blank for the final hop. In this commit, we switch the ordering to reflect this. The diagrams will need to be updated as well.
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
351d45b669
ch-10: explain the distinction between the outer and inner HMACs
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
536e4ad697
ch-10: add extra description of the 2 ways to recognize a terminal packet
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
d6a8ca6c36
ch-10: specify that mu key is used to generate the inner HMAC
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
80624d94c5
ch-10: mention that the inner HMAC for the final hop is all zeros
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
47e4018eb4
ch-10: mention session key re-blinding scheme at the core of sphinx
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
d725b9cba5
ch-10: elaborate more on the usage of the rho key in the scheme
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
5ca029ad93
ch-10: small typo fix
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
fe4a1870d2
ch-10: explcitily call out all zero for scid as final hop indicator
...
In practice, the HMAC for the _next_ hop is also zero, but most
implementations will check the `scid` value instead.
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
4c6f23835d
ch-10: typo fix for total_msat description
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
fdb2d8748f
ch-10: mention the role of the payment_secret in e2e security
...
Without this value, any intermediate node can construct a _new_ onion
packet with modified values for the CLTV and amount, to attempt to see
if the next hop is actually the final hop in the route.
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
9272814286
ch-10: minor grammar fix for Alice payload construction
2021-07-26 08:56:09 +02:00
Olaoluwa Osuntokun
1f9fdd4bda
ch-10: add errata about htlc min+max also being included in chan updates
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
c08db66263
Small edit
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
489a46cb0f
Error return and conclusion
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
a061568754
Unwrapping the onion diagrams
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
b50af33288
Unwrapping the onion
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
bafcc1c93d
misc edits and heading changes, README update
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
a6d7fcccda
Breakdown wrapping the onion into more steps
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
fe29c5d894
Wrapping the onion done
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
e2e8dc3e92
wrapping the onion
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
e3b3a42e70
onion payloads, key gen, ECDH
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
af152cbebc
onion routing path and payloads
2021-07-26 08:56:09 +02:00
Andreas M. Antonopoulos
7d775e12f8
rename and README update
2021-07-26 08:56:09 +02:00