Stephen [ARCHIVE] on Nostr: 📅 Original date posted:2015-06-27 📝 Original message: Quick question on the ...
📅 Original date posted:2015-06-27
📝 Original message:
Quick question on the security of the Lightning Network when rerouting payments.
Say A wants to make a payment to E, and they find a payment channel route through A->B->C->E. The payment is done in increments of 0.01 BTC until the full 1 BTC has been paid. However, part way through the payments, C becomes unresponsive. The contract has already been given to C that guarantees payment if C can produce the pre-image of a certain hash, and C does receive the pre-image from E. They do not share that pre-image with B, though. C must reveal the pre-image, either to B directly or on the blockchain, before B's contract times out, which guarantees B will receive payment.
But A has not paid the full amount to E yet when C became unresponsive. A wants to re-route her payment to avoid delays, so she re-routes the rest of the payments through A->B->D->E. A finishes the payments through this alternate route. But now, can't C reveal the pre-image to B, who then reveals it to A? Which, will effectively steal an extra 0.01 BTC from Alice and give it to E. (C and E could have been colluding to do this, splitting the profits).
Is there something that prevents this that I do not see yet, or is this just the risk one takes with payment re-routing?
Thanks!
Stephen
Published at
2023-06-09 12:43:28Event JSON
{
"id": "4960b2101701674d089b2988f30da202650120982bc7b5907826f81a6405b6d7",
"pubkey": "10238a6d0c6848c1acb963573a9db5f379583e293364361bd86476b496370490",
"created_at": 1686314608,
"kind": 1,
"tags": [
[
"e",
"b5a4560f419282095ad57f2a9ac310cd40add3b1559ac3db1c3f177ce7bbed7c",
"",
"reply"
],
[
"p",
"9456f7acb763eaab2e02bd8e60cf17df74f352c2ae579dce1f1dd25c95dd611c"
]
],
"content": "📅 Original date posted:2015-06-27\n📝 Original message:\nQuick question on the security of the Lightning Network when rerouting payments. \n\nSay A wants to make a payment to E, and they find a payment channel route through A-\u003eB-\u003eC-\u003eE. The payment is done in increments of 0.01 BTC until the full 1 BTC has been paid. However, part way through the payments, C becomes unresponsive. The contract has already been given to C that guarantees payment if C can produce the pre-image of a certain hash, and C does receive the pre-image from E. They do not share that pre-image with B, though. C must reveal the pre-image, either to B directly or on the blockchain, before B's contract times out, which guarantees B will receive payment. \n\nBut A has not paid the full amount to E yet when C became unresponsive. A wants to re-route her payment to avoid delays, so she re-routes the rest of the payments through A-\u003eB-\u003eD-\u003eE. A finishes the payments through this alternate route. But now, can't C reveal the pre-image to B, who then reveals it to A? Which, will effectively steal an extra 0.01 BTC from Alice and give it to E. (C and E could have been colluding to do this, splitting the profits). \n\nIs there something that prevents this that I do not see yet, or is this just the risk one takes with payment re-routing?\n\nThanks!\nStephen",
"sig": "4ae799fb8353c31ad2420d153fae23be5d67d4c190f4f70bba563cdc127095a85da94110fe3600bade3693b234780256f55baa3643f79430872f89898f90b5b9"
}