mirror of
https://github.com/lightning/bolts.git
synced 2025-03-15 12:20:07 +01:00
Merge 93b159f9a7
into a09564a8b7
This commit is contained in:
commit
2aa5c075b2
1 changed files with 7 additions and 4 deletions
|
@ -308,16 +308,19 @@ There are several possible cases for an offered HTLC:
|
||||||
HTLC. In this case, the recipient must use the preimage, once it receives it
|
HTLC. In this case, the recipient must use the preimage, once it receives it
|
||||||
from the outgoing HTLC; otherwise, it will lose funds by sending an outgoing
|
from the outgoing HTLC; otherwise, it will lose funds by sending an outgoing
|
||||||
payment without redeeming the incoming payment.
|
payment without redeeming the incoming payment.
|
||||||
|
4. The HTLC is forwarded as above, but the recipient also happens to be the
|
||||||
|
final destination for the payment. In this case, it knows the preimage but
|
||||||
|
as it has not received the full payment, it must not reveal
|
||||||
|
it.<sup>[Preimage-Extraction](https://lists.linuxfoundation.org/pipermail/lightning-dev/2020-October/002857.html)</sup>.
|
||||||
|
This problem is most easily solved by only accepting preimages from
|
||||||
|
responses to corresponding outgoing HTLCs.
|
||||||
|
|
||||||
### Requirements
|
### Requirements
|
||||||
|
|
||||||
A local node:
|
A local node:
|
||||||
- if it receives (or already possesses) a payment preimage for an unresolved
|
- if it has been offered an unresolved HTLC, AND it has offered a corresponding outgoing HTLC, for which it receives or has already received a payment preimage (by seeing it resolved via an onchain HTLC-success transaction, or via `update_fulfill_htlc`):
|
||||||
HTLC output that it has been offered AND for which it has committed to an
|
|
||||||
outgoing HTLC:
|
|
||||||
- MUST *resolve* the output by spending it, using the HTLC-success
|
- MUST *resolve* the output by spending it, using the HTLC-success
|
||||||
transaction.
|
transaction.
|
||||||
- MUST NOT reveal its own preimage when it's not the final recipient.<sup>[Preimage-Extraction](https://lists.linuxfoundation.org/pipermail/lightning-dev/2020-October/002857.html)</sup>
|
|
||||||
- MUST resolve the output of that HTLC-success transaction.
|
- MUST resolve the output of that HTLC-success transaction.
|
||||||
- otherwise:
|
- otherwise:
|
||||||
- if the *remote node* is NOT irrevocably committed to the HTLC:
|
- if the *remote node* is NOT irrevocably committed to the HTLC:
|
||||||
|
|
Loading…
Add table
Reference in a new issue