test
This commit is contained in:
@@ -959,7 +959,7 @@ uint256 komodo_kvsig(uint8_t *buf,int32_t len,uint256 _privkey)
|
|||||||
pubkey = curve25519(privkey,curve25519_basepoint9());
|
pubkey = curve25519(privkey,curve25519_basepoint9());
|
||||||
sig = curve25519_shared(privkey,otherpub);
|
sig = curve25519_shared(privkey,otherpub);
|
||||||
checksig = curve25519_shared(hash,pubkey);
|
checksig = curve25519_shared(hash,pubkey);
|
||||||
int32_t i; for (i=0; i<len; i++)
|
/*int32_t i; for (i=0; i<len; i++)
|
||||||
printf("%02x",buf[i]);
|
printf("%02x",buf[i]);
|
||||||
printf(" -> ");
|
printf(" -> ");
|
||||||
for (i=0; i<32; i++)
|
for (i=0; i<32; i++)
|
||||||
@@ -967,7 +967,7 @@ uint256 komodo_kvsig(uint8_t *buf,int32_t len,uint256 _privkey)
|
|||||||
printf(" -> ");
|
printf(" -> ");
|
||||||
for (i=0; i<32; i++)
|
for (i=0; i<32; i++)
|
||||||
printf("%02x",((uint8_t *)&pubkey)[i]);
|
printf("%02x",((uint8_t *)&pubkey)[i]);
|
||||||
printf(" pubkey\n");
|
printf(" pubkey\n");*/
|
||||||
memcpy(&usig,&sig,sizeof(usig));
|
memcpy(&usig,&sig,sizeof(usig));
|
||||||
return(usig);
|
return(usig);
|
||||||
}
|
}
|
||||||
@@ -980,7 +980,7 @@ int32_t komodo_kvsigverify(uint8_t *buf,int32_t len,uint256 _pubkey,uint256 sig)
|
|||||||
{
|
{
|
||||||
vcalc_sha256(0,hash.bytes,buf,len);
|
vcalc_sha256(0,hash.bytes,buf,len);
|
||||||
checksig = curve25519_shared(hash,pubkey);
|
checksig = curve25519_shared(hash,pubkey);
|
||||||
int32_t i; for (i=0; i<len; i++)
|
/*int32_t i; for (i=0; i<len; i++)
|
||||||
printf("%02x",buf[i]);
|
printf("%02x",buf[i]);
|
||||||
printf(" -> ");
|
printf(" -> ");
|
||||||
for (i=0; i<32; i++)
|
for (i=0; i<32; i++)
|
||||||
@@ -994,10 +994,10 @@ int32_t komodo_kvsigverify(uint8_t *buf,int32_t len,uint256 _pubkey,uint256 sig)
|
|||||||
printf(" sig vs");
|
printf(" sig vs");
|
||||||
for (i=0; i<32; i++)
|
for (i=0; i<32; i++)
|
||||||
printf("%02x",((uint8_t *)&checksig)[i]);
|
printf("%02x",((uint8_t *)&checksig)[i]);
|
||||||
printf(" checksig\n");
|
printf(" checksig\n");*/
|
||||||
if ( memcmp(&checksig,&sig,sizeof(sig)) != 0 )
|
if ( memcmp(&checksig,&sig,sizeof(sig)) != 0 )
|
||||||
return(-1);
|
return(-1);
|
||||||
else printf("VALIDATED\n");
|
//else printf("VALIDATED\n");
|
||||||
}
|
}
|
||||||
return(0);
|
return(0);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -76,10 +76,10 @@ int32_t komodo_kvsearch(uint256 *pubkeyp,int32_t current_height,uint32_t *flagsp
|
|||||||
*flagsp = ptr->flags;
|
*flagsp = ptr->flags;
|
||||||
int32_t i; for (i=0; i<32; i++)
|
int32_t i; for (i=0; i<32; i++)
|
||||||
{
|
{
|
||||||
printf("%02x",((uint8_t *)&ptr->pubkey)[31-i]);
|
//printf("%02x",((uint8_t *)&ptr->pubkey)[31-i]);
|
||||||
((uint8_t *)pubkeyp)[i] = ((uint8_t *)&ptr->pubkey)[31-i];
|
((uint8_t *)pubkeyp)[i] = ((uint8_t *)&ptr->pubkey)[31-i];
|
||||||
}
|
}
|
||||||
printf(" ptr->pubkey\n");
|
//printf(" ptr->pubkey\n");
|
||||||
memcpy(pubkeyp,&ptr->pubkey,sizeof(*pubkeyp));
|
memcpy(pubkeyp,&ptr->pubkey,sizeof(*pubkeyp));
|
||||||
if ( (retval= ptr->valuesize) != 0 )
|
if ( (retval= ptr->valuesize) != 0 )
|
||||||
memcpy(value,ptr->value,retval);
|
memcpy(value,ptr->value,retval);
|
||||||
@@ -165,12 +165,12 @@ void komodo_kvupdate(uint8_t *opretbuf,int32_t opretlen,uint64_t value)
|
|||||||
memcpy(ptr->value,valueptr,valuesize);
|
memcpy(ptr->value,valueptr,valuesize);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (i=0; i<32; i++)
|
/*for (i=0; i<32; i++)
|
||||||
printf("%02x",((uint8_t *)&ptr->pubkey)[i]);
|
printf("%02x",((uint8_t *)&ptr->pubkey)[i]);
|
||||||
printf(" <- ");
|
printf(" <- ");
|
||||||
for (i=0; i<32; i++)
|
for (i=0; i<32; i++)
|
||||||
printf("%02x",((uint8_t *)&pubkey)[i]);
|
printf("%02x",((uint8_t *)&pubkey)[i]);
|
||||||
printf(" new pubkey\n");
|
printf(" new pubkey\n");*/
|
||||||
memcpy(&ptr->pubkey,&pubkey,sizeof(ptr->pubkey));
|
memcpy(&ptr->pubkey,&pubkey,sizeof(ptr->pubkey));
|
||||||
ptr->height = height;
|
ptr->height = height;
|
||||||
ptr->flags = flags;
|
ptr->flags = flags;
|
||||||
|
|||||||
@@ -512,19 +512,19 @@ Value kvupdate(const Array& params, bool fHelp)
|
|||||||
if ( (n= (int32_t)params.size()) >= 3 )
|
if ( (n= (int32_t)params.size()) >= 3 )
|
||||||
{
|
{
|
||||||
flags = atoi(params[2].get_str().c_str());
|
flags = atoi(params[2].get_str().c_str());
|
||||||
printf("flags.%d (%s) n.%d\n",flags,params[2].get_str().c_str(),n);
|
//printf("flags.%d (%s) n.%d\n",flags,params[2].get_str().c_str(),n);
|
||||||
} else flags = 0;
|
} else flags = 0;
|
||||||
if ( n >= 4 )
|
if ( n >= 4 )
|
||||||
privkey = komodo_kvprivkey(&pubkey,(char *)(n >= 4 ? params[3].get_str().c_str() : "password"));
|
privkey = komodo_kvprivkey(&pubkey,(char *)(n >= 4 ? params[3].get_str().c_str() : "password"));
|
||||||
haveprivkey = 1;
|
haveprivkey = 1;
|
||||||
flags |= 1;
|
flags |= 1;
|
||||||
for (i=0; i<32; i++)
|
/*for (i=0; i<32; i++)
|
||||||
printf("%02x",((uint8_t *)&privkey)[i]);
|
printf("%02x",((uint8_t *)&privkey)[i]);
|
||||||
printf(" priv, ");
|
printf(" priv, ");
|
||||||
for (i=0; i<32; i++)
|
for (i=0; i<32; i++)
|
||||||
printf("%02x",((uint8_t *)&pubkey)[i]);
|
printf("%02x",((uint8_t *)&pubkey)[i]);
|
||||||
printf(" pubkey, privkey derived from (%s)\n",(char *)params[3].get_str().c_str());
|
printf(" pubkey, privkey derived from (%s)\n",(char *)params[3].get_str().c_str());
|
||||||
//printf("flags.%d (%s)\n",flags,params[2].get_str().c_str());
|
*/
|
||||||
LOCK2(cs_main, pwalletMain->cs_wallet);
|
LOCK2(cs_main, pwalletMain->cs_wallet);
|
||||||
if ( (keylen= (int32_t)strlen(params[0].get_str().c_str())) > 0 )
|
if ( (keylen= (int32_t)strlen(params[0].get_str().c_str())) > 0 )
|
||||||
{
|
{
|
||||||
@@ -539,7 +539,7 @@ Value kvupdate(const Array& params, bool fHelp)
|
|||||||
{
|
{
|
||||||
if ( (tmpflags & KOMODO_KVPROTECTED) != 0 )
|
if ( (tmpflags & KOMODO_KVPROTECTED) != 0 )
|
||||||
{
|
{
|
||||||
if ( refpubkey != pubkey )
|
if ( memcmp(&refpubkey,&pubkey,sizeof(refpubkey)) != 0 )
|
||||||
{
|
{
|
||||||
ret.push_back(Pair("error",(char *)"cant modify write once key without passphrase"));
|
ret.push_back(Pair("error",(char *)"cant modify write once key without passphrase"));
|
||||||
return ret;
|
return ret;
|
||||||
@@ -549,13 +549,16 @@ Value kvupdate(const Array& params, bool fHelp)
|
|||||||
{
|
{
|
||||||
sig = komodo_kvsig(keyvalue,keylen+refvaluesize,privkey);
|
sig = komodo_kvsig(keyvalue,keylen+refvaluesize,privkey);
|
||||||
if ( komodo_kvsigverify(keyvalue,keylen+refvaluesize,refpubkey,sig) < 0 )
|
if ( komodo_kvsigverify(keyvalue,keylen+refvaluesize,refpubkey,sig) < 0 )
|
||||||
|
{
|
||||||
|
ret.push_back(Pair("error",(char *)"error verifying sig, passphrase is probably wrong"));
|
||||||
printf("VERIFY ERROR\n");
|
printf("VERIFY ERROR\n");
|
||||||
else printf("verified immediately\n");
|
return ret;
|
||||||
|
} // else printf("verified immediately\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (i=0; i<32; i++)
|
//for (i=0; i<32; i++)
|
||||||
printf("%02x",((uint8_t *)&sig)[i]);
|
// printf("%02x",((uint8_t *)&sig)[i]);
|
||||||
printf(" sig for keylen.%d + valuesize.%d\n",keylen,refvaluesize);
|
//printf(" sig for keylen.%d + valuesize.%d\n",keylen,refvaluesize);
|
||||||
ret.push_back(Pair("coin",(char *)(ASSETCHAINS_SYMBOL[0] == 0 ? "KMD" : ASSETCHAINS_SYMBOL)));
|
ret.push_back(Pair("coin",(char *)(ASSETCHAINS_SYMBOL[0] == 0 ? "KMD" : ASSETCHAINS_SYMBOL)));
|
||||||
height = chainActive.Tip()->nHeight;
|
height = chainActive.Tip()->nHeight;
|
||||||
if ( memcmp(&zeroes,&refpubkey,sizeof(refpubkey)) != 0 )
|
if ( memcmp(&zeroes,&refpubkey,sizeof(refpubkey)) != 0 )
|
||||||
|
|||||||
Reference in New Issue
Block a user