On Fri, Oct 04, 2019 at 11:40:53AM -0700, Jeremy wrote: > Interesting point. > > The script is under your control, so you should be able to ensure that you > are always using a correctly constructed midstate, e.g., something like: > > scriptPubKey: <-1> OP_SHA256STREAM DEPTH OP_SHA256STREAM <-2> > OP_SHA256STREAM > OP_EQUALVERIFY > > would hash all the elements on the stack and compare to a known hash. > How is that sort of thing weak to midstateattacks? Obviously with care you can get the computation right. But at that point what's the actual advantage over OP_CAT? We're limited by the size of the script anyway; if the OP_CAT output size limit is comparable to that for almost anything you could use SHA256STREAM on you could just as easily use OP_CAT, followed by a single OP_SHA256. -- https://petertodd.org 'peter'[:-1]@petertodd.org