Hi
I use c++ with crypto++ to generate a sha256 hash from this string:
"800C28FCA386C7A227600B2FE50B7CAE11EC86D3BF1FBE471BE89827E19D72AA1D"
I have the same result as
http://www.xorbin.com/tools/sha256-hash-calculator :
E2E4146A36E9C455CF95A4F259F162C353CD419CC3FD0E69AE36D7D1B6CD2C09
but the problem is I try to obtain a private key for the Bitcoin protocol:
when I use the *Bitcoin* Explorer (*bx*) command line tool.
I have a different result:
> bx sha256
800C28FCA386C7A227600B2FE50B7CAE11EC86D3BF1FBE471BE89827E19D72AA1D
8147786c4d15106333bf278d71dadaf1079ef2d2440a4dde37d747ded5403592
So I don't end up with the same private key (WIF)
Question: are there different implementations of sha256?
Thanks
JF
Here is my code using crypto++
#include <cryptopp/hex.h>
#include <cryptopp/sha.h>
#include <cryptopp/base64.h>
#include <iostream>
#include <string>
using namespace std;
string makeSHA256 (const string);
int main()
{
string myString =
"800C28FCA386C7A227600B2FE50B7CAE11EC86D3BF1FBE471BE89827E19D72AA1D";
cout << makeSHA256(myString) << endl; //
E2E4146A36E9C455CF95A4F259F162C353CD419CC3FD0E69AE36D7D1B6CD2C09
return 0;
}
string makeSHA256 (const string myString) {
string output;
CryptoPP::SHA256 hash;
byte digest[CryptoPP::SHA256::DIGESTSIZE];
hash.CalculateDigest(digest,(const byte
*)myString.c_str(),myString.size());
//hash.CalculateDigest( digest, reinterpret_cast<byte*>(&myString[0]),
myString.length() );
CryptoPP::HexEncoder encoder;
CryptoPP::StringSink *SS = new CryptoPP::StringSink(output);
encoder.Attach(SS);
encoder.Put(digest,sizeof(digest));
encoder.MessageEnd();
return output;
}
--
--
You received this message because you are subscribed to the "Crypto++ Users"
Google Group.
To unsubscribe, send an email to [email protected].
More information about Crypto++ and this group is available at
http://www.cryptopp.com.
---
You received this message because you are subscribed to the Google Groups
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.