Post
Topic
Board Development & Technical Discussion
Re: Trace transactions
by
ETFbitcoin
on 29/01/2020, 07:06:06 UTC
Taproot can make all different types of transactions look identical, including simple payments. Assuming enough of the network updates to incorporate Taproot, there will never be much certainty of proximity to CoinJoin or centralized mixer transactions.
Taproot only hide the inputs & part of the unlocking script which isn't used when spending the input, so some difference still exist between transaction. IIRC only Monero blockchain which could make all different types of transactions look identical.

Help me dissect these explanations from Pieter Wuille:

Quote
It's a bit unfair to use the term anonymity set here; Taproot doesn't directly break transaction linkage.

What it does is make simple payments and multisig transactions and Lightning channels and many more things policy indistinguishable from each other; you won't be able to tell from just blockchain data which is which.
https://www.reddit.com/r/Bitcoin/comments/esergl/pull_request_opened_for_bip_340_341_342_schnorr/ffaxt53/

Quote
If all goes well, a Taproot transaction on chain looks like a single (random) public key, and a single signature on chain.
https://www.reddit.com/r/Bitcoin/comments/etagx4/please_explain_taproot_and_schnorr_signatures/

I know it doesn't apply to every case, but I was under the impression that obfuscating transaction type was the primary privacy gain in the Taproot proposal.

achow101 made clear explanation (on same posts you linked) at https://www.reddit.com/r/Bitcoin/comments/etagx4/please_explain_taproot_and_schnorr_signatures/fffimoy/

I'll quote it since reddit is banned on few country

Everything that you can do in Bitcoin right now can be done using taproot (and thus schnorr signatures) with less space and increased privacy.

Suppose you had a contract codified as a Bitcoin script, and this contract (i.e. script) has a few different outcomes depending on some conditions. Bitcoin as it is now would reveal all of those outcomes and their conditions. Under taproot, only the outcome and condition that is actually in effect is revealed. All other outcomes and conditions become hidden. This increases privacy (by hiding other outcomes and conditions) and saves space (the other outcomes and conditions are "compressed" into hashes.

There is also the top level "expected" outcome and condition. When this is used (and it should be usually used as it is the expected outcome), the spending transaction will appear as if there was no contract in the first place. So none of the alternative outcomes and none of the actual conditions for spending are revealed.

Schnorr signatures are merely a means to an end: taproot. There is no need to distinguish between taproot and Schnorr signatures as taproot requires Schnorr signatures, and Schnorr signatures will only be used in taproot.