mirror of
https://github.com/shadps4-emu/ext-cryptopp.git
synced 2024-11-23 18:09:48 +00:00
add word128
This commit is contained in:
parent
d2510f30c7
commit
240a14e561
10
config.h
10
config.h
@ -135,6 +135,8 @@ typedef unsigned int word32;
|
||||
typedef word32 hword;
|
||||
typedef word64 word;
|
||||
typedef __uint128_t dword;
|
||||
typedef __uint128_t word128;
|
||||
#define CRYPTOPP_WORD128_AVAILABLE
|
||||
#else
|
||||
// if we're here, it means we're on a 64-bit CPU but we don't have a way to obtain 128-bit multiplication results
|
||||
typedef word16 hword;
|
||||
@ -277,6 +279,14 @@ NAMESPACE_END
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if !defined(CRYPTOPP_DISABLE_ASM) && defined(_MSC_VER) && defined(_M_X64)
|
||||
#define CRYPTOPP_X64_MASM_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if !defined(CRYPTOPP_DISABLE_ASM) && defined(__GNUC__) && defined(__x86_64__)
|
||||
#define CRYPTOPP_X64_ASM_AVAILABLE
|
||||
#endif
|
||||
|
||||
#if !defined(CRYPTOPP_DISABLE_SSE2) && (defined(CRYPTOPP_MSVC6PP_OR_LATER) || defined(__SSE2__))
|
||||
#define CRYPTOPP_BOOL_SSE2_INTRINSICS_AVAILABLE 1
|
||||
#else
|
||||
|
27
validat1.cpp
27
validat1.cpp
@ -2,7 +2,7 @@
|
||||
|
||||
#include "pch.h"
|
||||
|
||||
#define CRYPTOPP_ENABLE_NAMESPACE_WEAK
|
||||
#define CRYPTOPP_ENABLE_NAMESPACE_WEAK 1
|
||||
#include "files.h"
|
||||
#include "hex.h"
|
||||
#include "base32.h"
|
||||
@ -92,6 +92,7 @@ bool ValidateAll(bool thorough)
|
||||
pass=ValidateCamellia() && pass;
|
||||
pass=ValidateSalsa() && pass;
|
||||
pass=ValidateSosemanuk() && pass;
|
||||
pass=ValidateVMAC() && pass;
|
||||
|
||||
pass=ValidateBBS() && pass;
|
||||
pass=ValidateDH() && pass;
|
||||
@ -199,6 +200,17 @@ bool TestSettings()
|
||||
cout << "passed: word64 not available" << endl;
|
||||
#endif
|
||||
|
||||
#ifdef CRYPTOPP_WORD128_AVAILABLE
|
||||
if (sizeof(word128) == 16)
|
||||
cout << "passed: ";
|
||||
else
|
||||
{
|
||||
cout << "FAILED: ";
|
||||
pass = false;
|
||||
}
|
||||
cout << "sizeof(word128) == " << sizeof(word128) << endl;
|
||||
#endif
|
||||
|
||||
if (sizeof(word) == 2*sizeof(hword)
|
||||
#ifdef CRYPTOPP_NATIVE_DWORD_AVAILABLE
|
||||
&& sizeof(dword) == 2*sizeof(word)
|
||||
@ -501,15 +513,13 @@ bool ValidateDES()
|
||||
|
||||
bool TestModeIV(SymmetricCipher &e, SymmetricCipher &d)
|
||||
{
|
||||
SecByteBlock lastIV;
|
||||
SecByteBlock lastIV, iv(e.IVSize());
|
||||
StreamTransformationFilter filter(e, new StreamTransformationFilter(d));
|
||||
byte plaintext[20480];
|
||||
|
||||
for (unsigned int i=1; i<sizeof(plaintext); i*=2)
|
||||
{
|
||||
SecByteBlock iv(e.IVSize());
|
||||
e.GetNextIV(iv);
|
||||
|
||||
e.GetNextIV(GlobalRNG(), iv);
|
||||
if (iv == lastIV)
|
||||
return false;
|
||||
else
|
||||
@ -1330,6 +1340,11 @@ bool ValidateSalsa()
|
||||
bool ValidateSosemanuk()
|
||||
{
|
||||
cout << "\nSosemanuk validation suite running...\n";
|
||||
|
||||
return RunTestDataFile("TestVectors/sosemanuk.txt");
|
||||
}
|
||||
|
||||
bool ValidateVMAC()
|
||||
{
|
||||
cout << "\nVMAC validation suite running...\n";
|
||||
return RunTestDataFile("TestVectors/vmac.txt");
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user