1

I've created the following script on testnet:

OP_IF 
    2 <pubkey1> <pubkey2> <pubkey3> 3 
    OP_CHECKMULTISIG 
OP_ELSE 
    1 OP_CHECKSEQUENCEVERIFY 
    OP_DROP 
    <pubkey1> OP_CHECKSIG 
OP_ENDIF

I am currently able to unlock the funds when I satisfy the 2 of 3 multisig condition.

However, when I attempt to unlock the funds using the else condition, I get the following error: 64: non-mandatory-script-verify-flag (Locktime requirement not satisfied)

This confuses me, because I thought I was setting the lock time to a block height of 1, which should have already passed.

I have also tried using OP_CHECKLOCKTIMEVERIFY as well.

Any help on this would be greatly appreciated! Thanks so much!

  • What is the nSequence of the transaction input? – JBaczuk Sep 21 '18 at 13:51
  • warning ! if OP_CHECKSEQUENCEVERIFY is successful, anyone, with any private key, can spend from the above address. you should use the combination of "OP_DUP OP_HASH160 <Public Key Hash> OP_EQUALVERIFY OP_CHECKSIG" – youssef Oct 21 '18 at 18:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.