this can't be "fixed" due to the way merkle trees work, any "fix" would undoubtedly break real p2tr scripts
Discussion
If we can't yet come up with a solusolution to our past mistakes, we can at least try not to make new mistakes.
If we can't yet come up with a solution to our past mistakes, we can at least try not to make new mistakes.
I think there is a way to fix it without breaking real p2tr scripts. Create a filter that checks if a control block, when parsed as a single hexadecimal string, contains a valid image format. If so, filter that transaction. Done.
easy to have false positives, and easy to counter.
shift everything 1 bit, literally and suddenly the control block doesn't get filtered but any client can still render the image
if that gets stopped somehow, you just xor the block with some value, or a bunch of other similar things
it is not possible to stop this.
if you shift 1 bit, we add that to the filter
if you xor by some value, we add it to the filter
it's not possible to stop filters