4

I know that maybe it's a bit early to start asking Wallets to implement Lightning Network connections even if the majority don't support SegregatedWitness yet.

But how about Payment Channels? In theory they have already been out there since long ago, and as far as I understand, they are not affected by transaction malleability if not combined with other channels forming a (lightning) network. So then, is there any wallet out there that already implements them? I only find libraries (such as BitcoinJ) that have support for them, but not wallets.

1 Answer 1

0

There are two major issues when it comes to the adoption of payment channels in Bitcoin. Firstly, we have an interoperability issue, where the implementation of payment channels in one wallet may not necessarily be compatible with the implementation of payment channels in another wallet. Even if interoperability is resolved, there is still an issue with security, how do we safely communicate the parameters required to setup the payment channels between two independent wallets in a trust-less manner?

Secondly, a Jeremy Spillman style payment channel involving one consumer and one producer is still vulnerable to transaction malleability depending on how patient our hypothetical wallet user is. If the usual 6 block confirmation recommendation is adopted, there is a low chance that transaction malleability may affect the service provider of the payment channel. However, if the service provider starts providing services by accepting an unconfirmed commitment transaction to fund the payment channel, the transaction malleability exploit can be used to invalidate all subsequent payment transactions as the consumer of the service can simply mutate her sigScript for the commitment transaction, resulting in a different transaction hash. However, this is only achievable when there's a fork in the blockchain and the mutated transaction has been committed in the winning chain or when the commitment transaction is unconfirmed and the mutated transaction was committed instead of the original transaction.

1
  • thanks for your answer; I've also come to know another malleability attack that would not be fixed by waiting 6 confirmations, but using other technique (hashing): bitcointalk.org/index.php?topic=303088.0
    – knocte
    Aug 11, 2016 at 3:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.