jl777 8 years ago
parent
commit
8b49e403d3
  1. 2
      basilisk/basilisk_bitcoin.c
  2. 8
      basilisk/basilisk_swap.c
  3. 12
      iguana/iguana_sign.c

2
basilisk/basilisk_bitcoin.c

@ -594,7 +594,7 @@ char *basilisk_bitcoinrawtx(struct supernet_info *myinfo,struct iguana_info *coi
} else oplen = datachain_opreturnscript(coin,buf,opreturn,oplen); } else oplen = datachain_opreturnscript(coin,buf,opreturn,oplen);
} }
rawtx = iguana_calcrawtx(myinfo,coin,&vins,txobj,amount,changeaddr,txfee,addresses,minconf,oplen!=0?buf:0,oplen+offset,burnamount,remoteaddr,V); rawtx = iguana_calcrawtx(myinfo,coin,&vins,txobj,amount,changeaddr,txfee,addresses,minconf,oplen!=0?buf:0,oplen+offset,burnamount,remoteaddr,V);
printf("generated.(%s) vins.(%s)\n",rawtx!=0?rawtx:"",vins!=0?jprint(vins,0):""); //printf("generated.(%s) vins.(%s)\n",rawtx!=0?rawtx:"",vins!=0?jprint(vins,0):"");
} }
if ( rawtx != 0 ) if ( rawtx != 0 )
{ {

8
basilisk/basilisk_swap.c

@ -171,7 +171,7 @@ int32_t basilisk_bobscript(uint8_t *rmd160,uint8_t *redeemscript,int32_t *redeem
*secretstartp = n + 2; *secretstartp = n + 2;
if ( 1 ) if ( 1 )
{ {
if ( 1 && bits256_nonz(privkey) != 0 ) if ( 0 && bits256_nonz(privkey) != 0 )
{ {
uint8_t bufA[20],bufB[20]; uint8_t bufA[20],bufB[20];
revcalc_rmd160_sha256(bufA,privkey); revcalc_rmd160_sha256(bufA,privkey);
@ -181,13 +181,13 @@ int32_t basilisk_bobscript(uint8_t *rmd160,uint8_t *redeemscript,int32_t *redeem
else if ( memcmp(bufB,secret160,sizeof(bufB)) == 0 ) else if ( memcmp(bufB,secret160,sizeof(bufB)) == 0 )
printf("MATCHES BUFB\n"); printf("MATCHES BUFB\n");
else printf("secret160 matches neither\n"); else printf("secret160 matches neither\n");
memcpy(secret160,bufB,20);
for (i=0; i<20; i++) for (i=0; i<20; i++)
printf("%02x",bufA[i]); printf("%02x",bufA[i]);
printf(" <- revcalc\n"); printf(" <- revcalc\n");
for (i=0; i<20; i++) for (i=0; i<20; i++)
printf("%02x",bufB[i]); printf("%02x",bufB[i]);
printf(" <- calc\n"); printf(" <- calc\n");
memcpy(secret160,bufB,20);
} }
n = bitcoin_secret160verify(redeemscript,n,secret160); n = bitcoin_secret160verify(redeemscript,n,secret160);
} }
@ -362,7 +362,9 @@ int32_t basilisk_rawtx_sign(struct supernet_info *myinfo,int32_t height,struct b
decode_hex(dest->txbytes,dest->datalen,signedtx); decode_hex(dest->txbytes,dest->datalen,signedtx);
if ( signedtx != rawtxbytes ) if ( signedtx != rawtxbytes )
free(signedtx); free(signedtx);
retval = 0; if ( dest->completed != 0 )
retval = 0;
else printf("couldnt sign transaction %s\n",rawtx->name);
} else printf("error signing\n"); } else printf("error signing\n");
free(rawtxbytes); free(rawtxbytes);
} else printf("error making rawtx\n"); } else printf("error making rawtx\n");

12
iguana/iguana_sign.c

@ -526,7 +526,7 @@ bits256 bitcoin_sigtxid(struct iguana_info *coin,int32_t height,uint8_t *seriali
revsigtxid = bits256_doublesha256(0,serialized,len); revsigtxid = bits256_doublesha256(0,serialized,len);
for (i=0; i<sizeof(revsigtxid); i++) for (i=0; i<sizeof(revsigtxid); i++)
sigtxid.bytes[31-i] = revsigtxid.bytes[i]; sigtxid.bytes[31-i] = revsigtxid.bytes[i];
char str[65]; printf("SIGTXID.(%s) numvouts.%d\n",bits256_str(str,sigtxid),dest.tx_out); //char str[65]; printf("SIGTXID.(%s) numvouts.%d\n",bits256_str(str,sigtxid),dest.tx_out);
} }
free(dest.vins); free(dest.vins);
free(dest.vouts); free(dest.vouts);
@ -976,8 +976,8 @@ int32_t bitcoin_verifyvins(struct iguana_info *coin,int32_t height,bits256 *sign
bitcoin_pubkey33(coin->ctx,vp->signers[j].pubkey,vp->signers[j].privkey); bitcoin_pubkey33(coin->ctx,vp->signers[j].pubkey,vp->signers[j].privkey);
sig[siglen++] = sighash; sig[siglen++] = sighash;
vp->signers[j].siglen = siglen; vp->signers[j].siglen = siglen;
char str[65]; printf("SIGTXID.(%s) ",bits256_str(str,sigtxid)); /*char str[65]; printf("SIGTXID.(%s) ",bits256_str(str,sigtxid));
/*int32_t i; for (i=0; i<siglen; i++) int32_t i; for (i=0; i<siglen; i++)
printf("%02x",sig[i]); printf("%02x",sig[i]);
printf(" sig, "); printf(" sig, ");
for (i=0; i<plen; i++) for (i=0; i<plen; i++)
@ -999,13 +999,13 @@ int32_t bitcoin_verifyvins(struct iguana_info *coin,int32_t height,bits256 *sign
{ {
flag++; flag++;
numsigs++; numsigs++;
int32_t z; /*int32_t z;
for (z=0; z<siglen-1; z++) for (z=0; z<siglen-1; z++)
printf("%02x",sig[z]); printf("%02x",sig[z]);
printf(" <- sig[%d]n\n",j); printf(" <- sig[%d]\n",j);
for (z=0; z<33; z++) for (z=0; z<33; z++)
printf("%02x",vp->signers[j].pubkey[z]); printf("%02x",vp->signers[j].pubkey[z]);
printf(" <- pub, SIG.%d.%d VERIFIED numsigs.%d vs M.%d\n",vini,j,numsigs,vp->M); printf(" <- pub, SIG.%d.%d VERIFIED numsigs.%d vs M.%d\n",vini,j,numsigs,vp->M);*/
} }
} }
if ( numsigs >= vp->M ) if ( numsigs >= vp->M )

Loading…
Cancel
Save