I'm just trying to run the test.cpp file that comes with Crypto++ 5.1 to sign a file
using RSA, using the command:
CTDebug\cryptest.exe rs key_priv.txt infile.txt sign.txt
I get the error message:
CryptoPP::Exception caught: NullRNG: NullRNG should only be passed to functions
that don't need to generate random bytes
The stack trace is:
::::NullRNG::GenerateByte() line 126
CryptoPP::RandomNumberGenerator::GenerateBlock(unsigned char * 0x0031f860, unsigned
int 128) line 91 + 11 bytes
CryptoPP::Integer::Randomize(CryptoPP::RandomNumberGenerator & {...}, unsigned int
1024) line 2977
CryptoPP::Integer::Randomize(CryptoPP::RandomNumberGenerator & {...}, const
CryptoPP::Integer & {...}, const CryptoPP::Integer & {...}) line 2994
CryptoPP::Integer::GenerateRandomNoThrow(CryptoPP::RandomNumberGenerator & {...},
const CryptoPP::NameValuePairs & {...}) line 3080
CryptoPP::Integer::Randomize(CryptoPP::RandomNumberGenerator & {...}, const
CryptoPP::Integer & {...}, const CryptoPP::Integer & {...},
CryptoPP::Integer::RandomNumberType ANY, const CryptoPP::Integer & {...}, const
CryptoPP::Integer & {...}) line 3001 + 258 bytes
CryptoPP::Integer::Integer(CryptoPP::RandomNumberGenerator & {...}, const
CryptoPP::Integer & {...}, const CryptoPP::Integer & {...},
CryptoPP::Integer::RandomNumberType ANY, const CryptoPP::Integer & {...}, const
CryptoPP::Integer & {...}) line 2617 + 32 bytes
CryptoPP::InvertibleRSAFunction::CalculateInverse(CryptoPP::RandomNumberGenerator &
{...}, const CryptoPP::Integer & {...}) line 220 + 89 bytes
CryptoPP::TrapdoorFunctionInverse::CalculateRandomizedInverse(CryptoPP::RandomNumberGenerator
& {...}, const CryptoPP::Integer & {...}) line 100 + 42 bytes
CryptoPP::TF_SignerBase::SignAndRestart(CryptoPP::RandomNumberGenerator & {...},
CryptoPP::PK_MessageAccumulator & {...}, unsigned char * 0x009d0620, unsigned char 0)
line 70 + 60 bytes
CryptoPP::PK_Signer::Sign(CryptoPP::RandomNumberGenerator & {...},
CryptoPP::PK_MessageAccumulator * 0x0031e558, unsigned char * 0x009d0620) line 620 +
30 bytes
CryptoPP::SignerFilter::Put2(const unsigned char * 0x00000000, unsigned int 0, int -1,
unsigned char 1) line 723
CryptoPP::BufferedTransformation::ChannelPut2(const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > & {}, const
unsigned char * 0x00000000, unsigned int 0, int -1, unsigned char 1) line 189 + 27
bytes
CryptoPP::BufferedTransformation::ChannelMessageEnd(const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > & {}, int -1,
unsigned char 1) line 881 + 66 bytes
CryptoPP::BufferedTransformation::TransferMessagesTo2(CryptoPP::BufferedTransformation
& {...}, unsigned int & 0, const
std::basic_string<char,std::char_traits<char>,std::allocator<char> > & {}, unsigned
char 1) line 354 + 28 bytes
CryptoPP::BufferedTransformation::TransferAllTo2(CryptoPP::BufferedTransformation &
{...}, const std::basic_string<char,std::char_traits<char>,std::allocator<char> > &
{}, unsigned char 1) line 395 + 24 bytes
CryptoPP::SourceTemplate<CryptoPP::FileStore>::PumpAll2(unsigned char 1) line 647 + 47
bytes
CryptoPP::Source::PumpAll() line 616 + 28 bytes
CryptoPP::Source::SourceInitialize(unsigned char 1, const CryptoPP::NameValuePairs &
{...}) line 628
CryptoPP::FileSource::FileSource(const char * 0x00313b3c, unsigned char 1,
CryptoPP::BufferedTransformation * 0x0031c2e0, unsigned char 1) line 58 + 182 bytes
RSASignFile(const char * 0x00313b2f, const char * 0x00313b3c, const char * 0x00313b6e)
line 558 + 407 bytes
main(int 5, char * * 0x00313af0) line 167 + 26 bytes
Anyone know what the problem is?
cheers,
Colin