So the question becomes: Should we let people store data in multisig transactions or provide a cleaner way to do it?
A less abusive way was already provided.
With OP_RETURN, the data is still in the blockchain, but at least it is not in the UTXO database of unspent outputs like Generation-1 mastercoin/counterparty designs.
If the desire is for these projects to use OP_RETURN, as it seems you are stating here, then why personally introduce a pull request (
https://github.com/bitcoin/bitcoin/pull/3737) to reduce its size down to 40 bytes, which makes it that much less useful to the projects that were to be some of its biggest users in the first place? And then, for justification of the change, provide reasons that have nothing to do with how these projects are actually storing data (i.e. we don't use hashes and side-chains for reasons we explained earlier).
The blockchain itself would be most benefited by the use of OP_RETURN here, but it seems to me at least that there is a disconnect in the logic of why the size was halved among some, pointing to theoretical reasons as justification on why that would be a good idea instead of the *
actual real world current uses*. While the optimal solution in your mind for Counterparty and others may be to move to their own side chains and store hashes in the Bitcoin blockchain using OP_RETURN, you have to understand that doing so is highly complex, rife with potential security issues, and that the only evidence supporting this is (as far as I know) essentially a theoretical-type thread on the Bitcoin developers mailing list. This would be a bit like me telling the Bitcoin devs that Bitcoin should move to using GHOST (
https://eprint.iacr.org/2013/881.pdf) immediately as it's technically the optimal solution over the longer block times today. While the latter could be argued to be the case, it is a proposal that has not been fully vetted in the real world, and would introduce major protocol-level changes that could cause potential security and usability problems.
Jeff, our intentions are be good stewards of the blockchain, while accomplishing our goals of adding valuable financial functionality to Bitcoin in a stable, scalable and secure manner. This whole OP_RETURN thing is like saying you have a great feature that would solve a need, but that no one should actually use it.