<p>Unlike onchain transactions Lightning nodes do not get a global view of all transactions. They only see transactions that they send, they receive and they route across the network for others. When they help route a payment they don't even see the final destination of the payment, merely the next node along the route.</p>
<blockquote>
<p>I'd like all payment transactions sent to a given recipient via the LN protocol to be publicly indexed and independently verifiable.</p>
</blockquote>
<p>You would only be able to index a recipient's transactions if that recipient published this information. There is no obligation to do so and no alternative.</p>
<blockquote>
<p>Is it possible to get this information from the Lightning Network protocol? Is it already stored/indexed on the sender/recipient's node (so the sender and/or the recipient could relay to a node for inclusion)?</p>
</blockquote>
<p>Not from the normal running of the protocol. As I said you would need the sender and recipient to make this information public.</p>
<blockquote>
<p>What LN transaction information is usable to provide a verifiable public index of received payments? I am thinking the invoice and related pre-image &quot;receipt&quot; could work. Or am I barking up the wrong tree?</p>
</blockquote>
<p>The network topology and channel capacities are public and gossiped across the network. But the channel balances and payments that are routed across the network are not public. The receiver generates the invoice and the sender constructs the route so this data could theoretically be made public. The hash preimage that is revealed across the route from the receiver back to the sender could also theoretically be made public. However, in practice this would be a significant privacy leak and it would be difficult to convince Lightning nodes to do this without any obvious gain for them.</p>

CC BY-SA 4.0
2022-09-07T08:38:06.440Z
Thank you. Is the tx information potentially published by the recipient sufficient to allow a third party to verify that the payment was made? You say tx indexing doable only if recipient publishes info; presumably sender could publish it too?
Lee
CC BY-SA 4.0
2022-09-07T10:52:30.997Z
The recipient can prove they received an amount but it depends on whether the invoice was generated specifically for the sender or not (e.g. BOLT12 has payer proofs) if you want to prove the paid invoice came from a particular sender.
Michael Folkson
CC BY-SA 4.0
2022-09-07T10:55:44.533Z
I guess if you could identify all the senders that sent money to a recipient and asked them all to publish their data it would be doable. But I don't know how you would identify the senders without requesting that information from the recipient (unless you were the sender of the payment)
Michael Folkson
CC BY-SA 4.0
2022-09-06T21:51:12.017Z
2022-09-06T21:51:12.017Z
Michael Folkson
<p>I have in mind a protocol architecture that includes value transfer, where BTC is the unit of account.</p>
<p>To make the protocol scalable I could specify use of the Lightning Network protocol.</p>
<p>In this case, I'd like <strong>all payment transactions sent to a given recipient via the LN protocol to be publicly indexed and independently verifiable</strong>. Let's say if you run a <em>FancyNewProtocol</em> node you end up storing some or all of these transactions.</p>
<p>Is it possible to get this information from the Lightning Network protocol? Is it already stored/indexed on the sender/recipient's node (so the sender and/or the recipient could relay to a node for inclusion)?</p>
<p><strong>What LN transaction information is usable to provide a verifiable public index of received payments?</strong> I am thinking the invoice and related pre-image &quot;receipt&quot; could work. Or am I barking up the wrong tree?</p>

<lightning-network><transaction-verification><verification><hash-time-locked-contract><reindex>
What Lightning Network transaction information is usable to provide a verifiable public index of received payments?
Lee
# What Lightning Network transaction information is usable to provide a verifiable public index of received payments?

(Asked by: username_0 on 2022-09-06)

I have in mind a protocol architecture that includes value transfer, where BTC is the unit of account.

To make the protocol scalable I could specify use of the Lightning Network protocol.

In this case, I'd like **all payment transactions sent to a given recipient via the LN protocol to be publicly indexed and independently verifiable**. Let's say if you run a *FancyNewProtocol* node you end up storing some or all of these transactions.

Is it possible to get this information from the Lightning Network protocol? Is it already stored/indexed on the sender/recipient's node (so the sender and/or the recipient could relay to a node for inclusion)?

**What LN transaction information is usable to provide a verifiable public index of received payments?** I am thinking the invoice and related pre-image "receipt" could work. Or am I barking up the wrong tree?

**Tags:** lightning-network, transaction-verification, verification, hash-time-locked-contract, reindex


---

## 1 answers

### Answer by username_1 on 2022-09-06. Score: 2

Unlike onchain transactions Lightning nodes do not get a global view of all transactions. They only see transactions that they send, they receive and they route across the network for others. When they help route a payment they don't even see the final destination of the payment, merely the next node along the route.

> I'd like all payment transactions sent to a given recipient via the LN protocol to be publicly indexed and independently verifiable.

You would only be able to index a recipient's transactions if that recipient published this information. There is no obligation to do so and no alternative.

> Is it possible to get this information from the Lightning Network protocol? Is it already stored/indexed on the sender/recipient's node (so the sender and/or the recipient could relay to a node for inclusion)?

Not from the normal running of the protocol. As I said you would need the sender and recipient to make this information public.

> What LN transaction information is usable to provide a verifiable public index of received payments? I am thinking the invoice and related pre-image "receipt" could work. Or am I barking up the wrong tree?

The network topology and channel capacities are public and gossiped across the network. But the channel balances and payments that are routed across the network are not public. The receiver generates the invoice and the sender constructs the route so this data could theoretically be made public. The hash preimage that is revealed across the route from the receiver back to the sender could also theoretically be made public. However, in practice this would be a significant privacy leak and it would be difficult to convince Lightning nodes to do this without any obvious gain for them.

> **Comments:**
> **username_0**: Thank you. Is the tx information potentially published by the recipient sufficient to allow a third party to verify that the payment was made? You say tx indexing doable only if recipient publishes info; presumably sender could publish it too?  
> **username_1**: The recipient can prove they received an amount but it depends on whether the invoice was generated specifically for the sender or not (e.g. BOLT12 has payer proofs) if you want to prove the paid invoice came from a particular sender.  
> **username_1**: I guess if you could identify all the senders that sent money to a recipient and asked them all to publish their data it would be doable. But I don't know how you would identify the senders without requesting that information from the recipient (unless you were the sender of the payment)  

---

