diff --git a/basilisk/basilisk_swap.c b/basilisk/basilisk_swap.c index 021fd19ee..b464792d2 100755 --- a/basilisk/basilisk_swap.c +++ b/basilisk/basilisk_swap.c @@ -24,24 +24,42 @@ e) BEFORE Bob broadcasts deposit, Alice broadcasts BTC denominated fee in cltv so if trade isnt done fee is reclaimed */ +#define DISABLE_CHECKSIG + /* both fees are standard payments: OP_DUP OP_HASH160 FEE_RMD160 OP_EQUALVERIFY OP_CHECKSIG Alice altpayment: OP_2 OP_2 OP_CHECKMULTISIG Bob deposit: + #ifndef DISABLE_CHECKSIG OP_IF OP_CLTV OP_DROP OP_CHECKSIG OP_ELSE OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG OP_ENDIF + #else + OP_IF + OP_CLTV OP_DROP OP_SHA256 OP_EQUAL + OP_ELSE + OP_HASH160 OP_EQUALVERIFY OP_SHA256 OP_EQUAL + OP_ENDIF +#endif Bob paytx: + #ifndef DISABLE_CHECKSIG OP_IF OP_CLTV OP_DROP OP_CHECKSIG OP_ELSE OP_HASH160 OP_EQUALVERIFY OP_CHECKSIG OP_ENDIF + #else + OP_IF + OP_CLTV OP_DROP OP_SHA256 OP_EQUAL + OP_ELSE + OP_HASH160 OP_EQUALVERIFY OP_SHA256 OP_EQUAL + OP_ENDIF + #endif Naming convention are pubAi are alice's pubkeys (seems only pubA0 and not pubA1) pubBi are Bob's pubkeys @@ -83,7 +101,6 @@ void revcalc_rmd160_sha256(uint8_t rmd160[20],bits256 revhash) #define SCRIPT_OP_IF 0x63 #define SCRIPT_OP_ELSE 0x67 #define SCRIPT_OP_ENDIF 0x68 -#define DISABLE_CHECKSIG bits256 basilisk_revealkey(bits256 privkey,bits256 pubkey) { diff --git a/iguana/iguana_scripts.c b/iguana/iguana_scripts.c index 9703e2067..7a79fed39 100755 --- a/iguana/iguana_scripts.c +++ b/iguana/iguana_scripts.c @@ -49,7 +49,7 @@ int32_t bitcoin_secret256spend(uint8_t *script,int32_t n,bits256 secret) script[n++] = SCRIPT_OP_SHA256; script[n++] = 0x20; memcpy(&script[n],secret.bytes,0x20); - n += 0x14; + n += 0x20; script[n++] = SCRIPT_OP_EQUAL; return(n); }