jl777 7 years ago
parent
commit
079a700e52
  1. 12
      iguana/exchanges/LP_privkey.c
  2. 15
      iguana/exchanges/LP_transaction.c

12
iguana/exchanges/LP_privkey.c

@ -552,14 +552,14 @@ uint8_t *JPG_decrypt(uint16_t *indp,int32_t *recvlenp,uint8_t space[JPG_ENCRYPTE
cipherlen = msglen - (len + crypto_box_NONCEBYTES);
if ( cipherlen > 0 && cipherlen <= JPG_ENCRYPTED_MAXSIZE + crypto_box_ZEROBYTES )
{
int32_t i; for (i=0; i<cipherlen; i++)
printf("%02x",cipher[i]);
printf(" cipherlen\n");
//int32_t i; for (i=0; i<cipherlen; i++)
// printf("%02x",cipher[i]);
//printf(" cipherlen\n");
if ( (extracted= _SuperNET_decipher(nonce,cipher,space,cipherlen,pubkey,privkey)) != 0 )
{
int32_t i; for (i=0; i<msglen; i++)
printf("%02x",encoded[i]);
printf(" restored\n");
//int32_t i; for (i=0; i<msglen; i++)
// printf("%02x",encoded[i]);
//printf(" restored\n");
msglen = (cipherlen - crypto_box_ZEROBYTES);
*recvlenp = msglen;
*indp = ind;

15
iguana/exchanges/LP_transaction.c

@ -1436,7 +1436,7 @@ char *LP_createrawtransaction(cJSON **txobjp,int32_t *numvinsp,struct iguana_inf
char *LP_opreturndecrypt(void *ctx,char *symbol,bits256 utxotxid,char *passphrase)
{
cJSON *txjson,*vouts,*opret,*sobj,*retjson; uint16_t utxovout; char *opretstr; uint8_t *opretdata,*databuf,*decoded; uint16_t ind16; uint32_t crc32; int32_t len,numvouts,opretlen,datalen; struct iguana_info *coin;
cJSON *txjson,*vouts,*opret,*sobj,*retjson; uint16_t utxovout; char *opretstr,*hexstr; uint8_t *opretdata,*databuf,*decoded; uint16_t ind16; uint32_t crc32; int32_t i,len,numvouts,opretlen,datalen; struct iguana_info *coin;
if ( (coin= LP_coinfind(symbol)) == 0 )
return(clonestr("{\"error\":\"cant find coin\"}"));
retjson = cJSON_CreateObject();
@ -1493,6 +1493,19 @@ char *LP_opreturndecrypt(void *ctx,char *symbol,bits256 utxotxid,char *passphras
if ( (crc32 & 0xffff) == ind16 )
{
jaddstr(retjson,"result","success");
hexstr = malloc(len*2+1);
init_hexbytes_noT(hexstr,decoded,len);
jaddstr(retjson,"decrypted",hexstr);
for (i=0; i<len; i++)
if ( isprint(decoded[i]) == 0 )
break;
if ( i == len )
{
decode_hex((uint8_t *)hexstr,len>>1,(char *)decoded);
hexstr[len>>1] = 0;
jaddstr(retjson,"original",hexstr);
}
free(hexstr);
} else jaddstr(retjson,"error","decrypt crc16 error");
}
free(decoded);

Loading…
Cancel
Save