Hi all,

I have an issue which I believe may be a bug. I followed the instructions 
from the "Bug Report" page on the cryptopp wiki and all tests in 
cryptest.exe are passing, so figured I should post here first and make sure 
it isn't a build related issue.

I built cryptopp 8.5.0 as a static library, x64 multi-threaded debug (\MTd) 
using Visual Studio 2019 v16.10.0, on Windows 10 Pro v10.0.19043, using the 
.sln file provided with the cryptopp source code.

I used two different machines for this test. One is the machine I built the 
cryptopp library with. Both are running the same version of Windows 10. One 
machine has a Ryzen 3700X, the other has an i7-990X. The Ryzen supports 
AVX, the i7 does not.

I am VERY rarely finding that files encrypted with the chacha cipher by 
these two machines have differing sha256 hashes. If I do a hex diff against 
the files, there is a single flipped bit at 0x1EBB4 (0xD8 vs 0xD9).

I am able to reproduce this consistently with a specific key, nonce, and 
input file, after test encrypting ~50GB of 1MB garbage files on each 
machine. 

If I disable AVX when building cryptlib by defining CRYPTOPP_DISABLE_AVX 
and CRYPTOPP_DISABLE_AVX2, the machine with the Ryzen will encrypt the file 
the same as the i7.

Source code for a minimal reproducible example is here:
https://github.com/austin-clifton/cryptopp-chacha-asm-test/blob/main/src/main.cpp#L208

That repository includes a ready-to-build test case with Visual Studio, 
minus a built cryptlib.lib which should be added to libs/debug/ before 
building.

Thanks,
Austin

-- 
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/bf3e9626-ac2b-4821-b158-7c9786ffb17dn%40googlegroups.com.

Reply via email to