Does P2SH unlocking script only consist of operants?

1

I have a question about the P2SH unlocking script. Can I put common operants and operators in the P2SH unlocking script? And if yes, how can I create such script?

e.g.

unlocing script: <sig1> <pk1> CHECKSIG <pk1> <redeem script>

redeem script: HASH160 <address> EQUALVERIFY <sig2> <pk2> CHECKSIG

Xiaoyang Zhu Simon Zhu

Posted 2018-09-15T09:32:26.210

Reputation: 21

Answers

0

Can I put common operants and operators in the P2SH unlocking script?

No, you can not.

1) Unlocking script ( scriptSig ) should contain only push operations, yours contains OP_CHECKSIG

2) It has no sense to put signature sig2 into the redeem script and check it with OP_CHECKSIG because such script definetely fail on execution. If you want to put any data in the redeem script - you can do it in other way.

amaclin

Posted 2018-09-15T09:32:26.210

Reputation: 5 763

Thanks your answer. I appreciate it. But for your second point, you mean, signature values can't be included in redeem script?Xiaoyang Zhu Simon Zhu 2018-09-15T13:49:19.507

Trivia: If you can mine nonstandard transactions, you can put non-push operations in unlock script.MCCCS 2018-09-15T16:08:09.470

theoretically yes, but do you have an tutorial of building my previous transactions?Xiaoyang Zhu Simon Zhu 2018-09-15T16:39:40.860

1@MCCCS Pushonly is actually consensus mandatory for P2SH and P2WSH. For non-wrapped scripts it is just a standardness rule.Pieter Wuille 2018-09-15T19:39:34.290