OK... and it seems like MASM_RDSEED_GenerateBlock is a function written in 
assembler in rdrand.asm.

Since my assembler knowledge is very limited, I'm lost here.  So it looks 
like the fact that I'm running this using VS2019 causes that assembler code 
to throw an exception or something?

Will try again with VS2015 and see if I have the same problem there...

Kind regards,
Bart

On Thursday, March 18, 2021 at 5:19:49 PM UTC+1 Bart Vandewoestyne wrote:

> OK, when debugging with the VS2019 debugger, I found out that an exception 
> is being thrown in the call to MASM_RDSEED_GenerateBlock in
>
> void RDSEED::GenerateBlock(byte *output, size_t size)
> {
>     CRYPTOPP_ASSERT((output && size) || !(output || size));
>     if (size == 0) return;
>
> #if defined(MASM_RDSEED_ASM_AVAILABLE)
>
>     MASM_RDSEED_GenerateBlock(output, size);
>
>     .... not relevant ...
> }
>
> Will look a bit further into this, but in the meanwhile: any ideas on how 
> to fix this are highly appreciated :-)  I want all the tests to pass!
>
> Kind regards,
> Bart
>
> On Thursday, March 18, 2021 at 5:11:16 PM UTC+1 Bart Vandewoestyne wrote:
>
>> Hmm... I just discovered that the cryptest.exe v output for my VS2019 
>> build is not complete.  It stops at
>>
>> Testing RDSEED generator...
>>
>> But a colleague of mine who used VS2015 to build it (also debug build), 
>> has a much longer output for 'cryptest v'...
>> So it seems that the RDSEED generator test fails somehow...
>>
>> Any ideas on what I can do to find out why this fails?  Is there anybody 
>> using VS2019 who can confirm this behavior?
>>
>> Regards,
>> Bart
>>
>> On Thursday, March 18, 2021 at 4:46:27 PM UTC+1 Bart Vandewoestyne wrote:
>>
>>> Hello,
>>>
>>> I have built Crypto++ 8.20 on Windows using Visual Studio 2019 in both 
>>> Debug and Release configuration using something like
>>>
>>> msbuild cryptest.sln /t:cryptlib;cryptest 
>>> /p:Configuration="Debug";Platform=Win32;PlatformToolset=v142;WholeProgramOptimization="false""
>>>
>>> For both the Debug and Release build, when I run the cryptest.exe as 
>>> follows:
>>>
>>> cryptest.exe v
>>>
>>> it seems to run fine because I get:
>>>
>>>
>>> -------------------------------------------------------------------------------------------------------------------------------------
>>> Using seed: 1616082124
>>>
>>> Testing Settings...
>>>
>>> passed:  Your machine is little endian.
>>> passed:  Aligned data access.
>>> passed:  sizeof(byte) == 1
>>> passed:  sizeof(word16) == 2
>>> passed:  sizeof(word32) == 4
>>> passed:  sizeof(word64) == 8
>>> passed:  sizeof(hword) == 2, sizeof(word) == 4, sizeof(dword) == 8
>>> passed:  cacheLineSize == 64
>>> hasSSE2 == 1, hasSSSE3 == 1, hasSSE4.1 == 1, hasSSE4.2 == 1, hasAVX == 
>>> 1, hasAVX2 == 1, hasAESNI == 1, hasCLMUL == 1, hasRDRAND == 1, hasRDSEED == 
>>> 1, hasSHA == 0, isP4 == 0
>>>
>>> Testing operating system provided nonblocking random number generator...
>>>
>>> passed:  10240 generated bytes compressed to 10245 bytes by DEFLATE
>>> passed:  IncorporateEntropy with 128 bytes
>>> passed:  GenerateWord32 and Crop
>>> passed:  DiscardBytes with 1024 bytes
>>>
>>> Testing RandomPool generator...
>>>
>>> passed:  10240 generated bytes compressed to 10245 bytes by DEFLATE
>>> passed:  IncorporateEntropy with 128 bytes
>>> passed:  GenerateWord32 and Crop
>>> passed:  DiscardBytes with 1024 bytes
>>>
>>> Testing AutoSeeded RandomPool generator...
>>>
>>> passed:  10240 generated bytes compressed to 10245 bytes by DEFLATE
>>> passed:  IncorporateEntropy with 128 bytes
>>> passed:  GenerateWord32 and Crop
>>> passed:  DiscardBytes with 1024 bytes
>>>
>>> Testing OldRandomPool generator...
>>>
>>> passed:  10240 generated bytes compressed to 10245 bytes by DEFLATE
>>> passed:  IncorporateEntropy with 128 bytes
>>> passed:  GenerateWord32 and Crop
>>> passed:  DiscardBytes with 1024 bytes
>>> passed:  Expected sequence from PGP-style RandomPool (circa 2007)
>>>
>>> Testing AutoSeeded X917 generator...
>>>
>>> passed:  10240 generated bytes compressed to 10245 bytes by DEFLATE
>>> passed:  IncorporateEntropy with 128 bytes
>>> passed:  GenerateWord32 and Crop
>>> passed:  DiscardBytes with 1024 bytes
>>>
>>> Testing Padlock RNG generator...
>>>
>>> Padlock RNG generator not available, skipping test.
>>>
>>> Testing RDRAND generator...
>>>
>>> passed:  10240 generated bytes compressed to 10245 bytes by DEFLATE
>>> passed:  IncorporateEntropy with 128 bytes
>>> passed:  GenerateWord32 and Crop
>>> passed:  DiscardBytes with 1024 bytes
>>> passed:  Maurer Randomness Test returned value 1.000000
>>>
>>> Testing RDSEED generator...
>>>
>>> -------------------------------------------------------------------------------------------------------------------------------------
>>> However, when (in a script or on my windows cmd prompt) I try to 
>>> redirect the output to a file using
>>>
>>> cryptest.exe v > output.txt
>>> or
>>> cryptest.exe v > output.txt 2>&1
>>>
>>> then i get my cmd prompt back, but the output.txt file only contains
>>>
>>> Using seed: 1616082222      
>>>
>>> and that's it.  What am I doing wrong here?
>>>
>>> Regards,
>>> Bart
>>>
>>

-- 
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 cryptopp-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/cryptopp-users/ad108f8d-52aa-4cf3-b04c-261fa1d9d9e5n%40googlegroups.com.

Reply via email to