It was as part of a proposal released on May 29 that Conner Fromknecht, head of Cryptographic Engineering at the Lightning Lab, unveiled the implementation of Watchtowers for the Bitcoin Lightning Network. These third parties are responsible for monitoring Lightning network channels to locate and report potential bad actors. Take the case of Alice and Bob, who have an open Lightning Network payment channel. During the creation of this channel, 5,000 satoshis were credited on each side and, over time, Alice sent 1,000 satoshis to Bob. This transaction brings the balance to 4,000 sitting for Alice and 6,000 sitting for Bob. Let’s imagine that for whatever reason, Bob can no longer access his Lightning Network wallet: his node may be offline, he does not have access to his computer or anything else. In this case, Alice can take advantage of this absence by broadcasting the initial state of the channel as the final state transaction of the channel. Bob does not have access to his wallet. He can not therefore check Alice’s fraudulent behavior by checking the current state of the channel. Alice’s satoshis balance would then be 5,000 sitting and Bob’s too. It is to avoid these fraudulent behaviors on the Lightning network that the watchtowers have been imagined. Their mission is to monitor the payment channels and the blockchain to detect any fraud attempt. When there is a change of state of the channel (transfer between Alice and Bob), the payment produces a blob – Binary Large Object – containing the state of the channel for each of the users. To ensure confidentiality, this blob is encrypted with the public keys of both parties of the transaction. This blob, along with half of the transaction identifier – txid – from the previous state, is sent to the watchtower, which will store them in a database. If Alice or Bob had to broadcast a state prior to the current state of the chain, half of the txid available for the watchtower would match the published one. Thus, the watchtower knows that the transaction is fraudulent and can then decipher the corresponding blob, and then punish the bad actor by sending funds into the honest user’s wallet.