Damn it Hal, that's very mean. Now we have to work on this or we'll look like fools.
I think I could manage to do that by tweaking the bitcoin code and recompiling. But I'd have to use a brand new wallet cause I don't like to mess with my wallet.
PS. pff I give up. I've tried to tweak the code for generating a new address.
vector<unsigned char> GenerateNewKey()
{
RandAddSeedPerfmon();
CKey key;
key.MakeNewKey();
if (!AddKey(key))
throw runtime_error("GenerateNewKey() : AddKey failed");
/ this is what I tried
unsigned int nSize = i2d_ECPrivateKey(key.pkey, NULL); / I had to set pkey public in Ckey
if (!nSize)
throw key_error("CKey::GetPrivKey() : i2d_ECPrivateKey failed");
CPrivKey vchPrivKey(nSize, 0);
unsigned char* pbegin = &vchPrivKey[0];
vector<unsigned char>& vchRet;
DecodeBase58("2qy6pGXd5yCo9qy3vxnN7rALgsXXcdboReZ9NZx5aExy", vchRet);
strcpy(pbegin, vchRet);
key.SetPrivKey(vchRet);
/ end of what I tried
return key.GetPubKey();
}
The idea was to create the private key with the getnewaddress command.
It doesn't compile since vchRet is not a CPrivKey object. I don't understand well enough what CPrivKey is.
Good luck to other people who will try.