9
2
What is the compatibility problem between script and mimblewimble usage on the main chain?
Is there a way that Bitcoin can adapt to allow both mimblewimble and features like multi sig, atomic swaps and time-lock transactions?
9
2
What is the compatibility problem between script and mimblewimble usage on the main chain?
Is there a way that Bitcoin can adapt to allow both mimblewimble and features like multi sig, atomic swaps and time-lock transactions?
6
Scripts are used in Bitcoin to prove authorization to spend the inputs in a transaction. Mimblewimble uses a quirk of CT such that only the owner of a set of inputs can create the transaction in the first place. The resulting transactions have enough structure that they can be merged and cut-through, and as @Matthieu says, after cut-through any scripts that may have been present are gone and unverifiable.
To answer your specific questions:
vH to get a Pedersen commitment. They then interactively produce a rangeproof. Doing a m-of-n version is a little more involved (the summing is replaced by some higher-degree polynomial) but essentially the same.Note that you can get payment channels with just (1) and (2); hash preimages are only needed for HTLC Lightning channels, which are more efficient and have some other nice properties.
7
The incompatibility comes down to 2 main factors:
Note that threshold transactions ("m-of-n") are still possible, just not through scripts... but by the keyholders negotiating the transaction with each other. – Pieter Wuille – 2016-08-27T22:52:21.340