Ejemplo n.º 1
0
SecureBinaryData CryptoECDSA::SerializePrivateKey(BTC_PRIVKEY const & privKey)
{
   CryptoPP::Integer privateExp = privKey.GetPrivateExponent();
   SecureBinaryData privKeyData(32);
   privateExp.Encode(privKeyData.getPtr(), privKeyData.getSize(), UNSIGNED);
   return privKeyData;
}
Ejemplo n.º 2
0
bool UserDatabase::putUserKeys(unsigned long uid,const std::string& pubKey,const std::string& privKey)
{
    Dbt key,data;
    init_DBT(&key,&data);
    int ret;
    
    const int BUFSZ=512;
    char buf[BUFSZ];
    
    RawData pubKeyData(pubKey.c_str(),pubKey.length());
    RawData privKeyData(privKey.c_str(),privKey.length());
    
    int offset=pubKeyData.serialize(buf,BUFSZ);
    offset+=privKeyData.serialize(buf+offset,BUFSZ-offset);
    
    key.set_data( &uid );
    key.set_size( sizeof(uid) );
    data.set_data( buf );
    data.set_size( offset );
    
    ret = m_pkeyDB->put(NULL, &key, &data, 0);
	if(ret != 0)
	{
	    debug("putUserKeys  error : "<<uid);
	}
	
	return true;
}