Here are two BIP drafts that specify a proposal for a Taproot softfork. A number of ideas are included: * Taproot to make all outputs and cooperative spends indistinguishable from eachother. * Merkle branches to hide the unexecuted branches in scripts. * Schnorr signatures enable wallet software to use key aggregation/thresholds within one input. * Improvements to the signature hashing algorithm (including signing all input amounts). * Replacing OP_CHECKMULTISIG(VERIFY) with OP_CHECKSIGADD, to support batch validation. * Tagged hashing for domain separation (avoiding issues like CVE-2012-2459 in Merkle trees). * Extensibility through leaf versions, OP_SUCCESS opcodes, and upgradable pubkey types. The BIP drafts can be found here: * https://github.com/sipa/bips/blob/bip... specifies the transaction input spending rules. * https://github.com/sipa/bips/blob/bip... specifies the changes to Script inside such spends. * https://github.com/sipa/bips/blob/bip... is the Schnorr signature proposal that was discussed earlier on this list (See https://lists.linuxfoundation.org/pip...) https://lists.linuxfoundation.org/pip... https://twitter.com/pwuille