<p>Let us start with the direct payment via channel <code>Uab</code>. According to BOLT 02, the payment is conducted by adding an HTLC and settling it. From a protocol perspective, Bob does not know if the payment was originated by Alice. Of course, as there was originally an invoice issued by Bob (and potentially presented out-of-band to Alice), he could deduce that Alice was the payer, but Alice might have forwarded the invoice to someone else who later routed through Alice. Thus, Bob cannot tell with certainty who paid him. All he knows is that he got money from Alice.</p>
<p>In that specific setting, Alice can however be sure that Bob is the one receiving the money as Bob issued the invoice. Invoices are signed by the private key corresponding to the node id, so Alice knows that Bob has requested the payment. Of course, Bob might have been a proxy in the sense that he issued an invoice with the same payment hash as someone else. In that case, Bob might have routed the payment before he was able to present the preimage. Such behavior would be impossible to distinguish for Alice.</p>
<p>Similarly, in the Alice-Isidore-Bob setting: Isidore only knows that Alice sent him money and that he was asked to forward to Bob. Isidore does not know if Alice is the originator nor if Bob is the final destination (this of course assumes the protocol is secure and no attacks exist that reveal such information). Like before, Bob only knows that the payment came through the channel <code>Uib</code>, but cannot tell with certainty who paid him.</p>
<p>In the Alice-Isidore-Bob setting, Alice is aware of all funding transactions as she chose the route and the route is encoded with <code>short_channel_ids</code> which point to funding transactions. Alice will most likely have learnt about them via the gossip protocol.</p>

CC BY-SA 4.0
2021-04-05T13:36:10.930Z
2021-04-10T18:38:37.083Z
2021-04-10T18:38:37.083Z
Rene Pickhardt
<p>I'm curious about whether participants in a lightning transaction gain information about the funding UTXOs of other participants.</p>
<p>Let's say Alice pays Bob using Lightning, and Alice's payment is routed through a single intermediary channel, Isidore:</p>
<pre><code>Alice → Isidore → Bob
</code></pre>
<p>There are two channels here, Alice's channel with Isidore, and Isidore's channel with Bob. These two channels have corresponding funding UTXOs, which I'll call <code>Uai</code> and <code>Uib</code>.</p>
<p>Due to making this transaction:</p>
<p>1a. Does Alice learn that Bob's channel is <code>Uib</code>?
1b. Does Bob learn that Alice's channel is <code>Uai</code>?
1c. Does Isidore learn that owner of channel <code>Uai</code> is paying the owner of channel <code>Uib</code>?</p>
<p>Also, in the case of a direct payment:</p>
<pre><code>Alice → Bob
</code></pre>
<p>With one channel, <code>Uab</code>:</p>
<p>2a. Does Bob learn that the sender of the payment is the counter-party of their channel <code>Uab</code>?
2b. Does Alice learn that the recipient of the payment is the counter-party of their channel <code>Uab</code>?</p>

CC BY-SA 4.0
2021-04-01T08:25:12.460Z
What do you mean when you say lightning transaction? Do you mean a payment or the commitment transactions? In the same way what do you mean with destination utxo? Maybe you can edit your question with an example setup.
Rene Pickhardt
CC BY-SA 4.0
2021-04-02T20:04:17.847Z
@RenePickhardt Thanks for the comments! I tried to clarify the question, and added a couple of concrete example setups.
Casey Rodarmor
<lightning-network><privacy>
Can lightning transaction participants link the transaction to on-chain funding transaction UTXOs?
Casey Rodarmor
# Can lightning transaction participants link the transaction to on-chain funding transaction UTXOs?

(Asked by: username_0 on 2021-04-01)

I'm curious about whether participants in a lightning transaction gain information about the funding UTXOs of other participants.

Let's say Alice pays Bob using Lightning, and Alice's payment is routed through a single intermediary channel, Isidore:

```
Alice → Isidore → Bob

```

There are two channels here, Alice's channel with Isidore, and Isidore's channel with Bob. These two channels have corresponding funding UTXOs, which I'll call `Uai` and `Uib`.

Due to making this transaction:

1a. Does Alice learn that Bob's channel is `Uib`?
1b. Does Bob learn that Alice's channel is `Uai`?
1c. Does Isidore learn that owner of channel `Uai` is paying the owner of channel `Uib`?

Also, in the case of a direct payment:

```
Alice → Bob

```

With one channel, `Uab`:

2a. Does Bob learn that the sender of the payment is the counter-party of their channel `Uab`?
2b. Does Alice learn that the recipient of the payment is the counter-party of their channel `Uab`?

**Tags:** lightning-network, privacy

> **Comments:**
> **username_1**: What do you mean when you say lightning transaction? Do you mean a payment or the commitment transactions? In the same way what do you mean with destination utxo? Maybe you can edit your question with an example setup.  
> **username_0**: @username_1 Thanks for the comments! I tried to clarify the question, and added a couple of concrete example setups.  

---

## 1 answers

### Answer by username_1 on 2021-04-05. Score: 2 | Accepted answer

Let us start with the direct payment via channel `Uab`. According to BOLT 02, the payment is conducted by adding an HTLC and settling it. From a protocol perspective, Bob does not know if the payment was originated by Alice. Of course, as there was originally an invoice issued by Bob (and potentially presented out-of-band to Alice), he could deduce that Alice was the payer, but Alice might have forwarded the invoice to someone else who later routed through Alice. Thus, Bob cannot tell with certainty who paid him. All he knows is that he got money from Alice.

In that specific setting, Alice can however be sure that Bob is the one receiving the money as Bob issued the invoice. Invoices are signed by the private key corresponding to the node id, so Alice knows that Bob has requested the payment. Of course, Bob might have been a proxy in the sense that he issued an invoice with the same payment hash as someone else. In that case, Bob might have routed the payment before he was able to present the preimage. Such behavior would be impossible to distinguish for Alice.

Similarly, in the Alice-Isidore-Bob setting: Isidore only knows that Alice sent him money and that he was asked to forward to Bob. Isidore does not know if Alice is the originator nor if Bob is the final destination (this of course assumes the protocol is secure and no attacks exist that reveal such information). Like before, Bob only knows that the payment came through the channel `Uib`, but cannot tell with certainty who paid him.

In the Alice-Isidore-Bob setting, Alice is aware of all funding transactions as she chose the route and the route is encoded with `short_channel_ids` which point to funding transactions. Alice will most likely have learnt about them via the gossip protocol.


---

