Dynamic Commitments: Upgrading Channels Without On-Chain Transactions



Summary:

In a recent post, ZmnSCPxj proposed an idea of upgrading from a Poon-Dryja channel to a newer Decker-Russell-Osuntokun mechanism through an off-chain update. Due to the requirements of `SIGHASH_ANYPREVOUT`, a new pubkey type and Taproot construction are needed for this upgrade. Therefore, an upgrade transaction that cuts-through a mutual close of the Poon-Dryja channel and a funding open of a Decker-Russell-Osuntokun channel can be created. Once signed by both parties, the participants can revoke the latest Poon-Dryja state and keep the upgrade transaction off-chain. This means that the funding outpoint of the upgrade transaction becomes the "internal funding outpoint" for future Decker-Russell-Osuntokun updates. However, since the on-chain funding outpoint remains a Poon-Dryja, retaining the entire HTLC history of the Poon-Dryja channel is necessary for protection against theft attempts. Nonetheless, future HTLCs in the Decker-Russell-Osuntokun domain need not be recorded permanently, which limits the information liability of the upgraded channel. Furthermore, the short-channel-id of the channel is retained, which may prove useful since a provably long-lived channel implies high reliability of both channel participants. If the channel is later mutually closed, the upgrade transaction never needs to appear on-chain, potentially saving blockchain space.


Updated on: 2023-06-03T01:51:17.006177+00:00