Crypto++  5.6.3
Free C++ class library of cryptographic schemes
validate.h
1 #ifndef CRYPTOPP_VALIDATE_H
2 #define CRYPTOPP_VALIDATE_H
3 
4 #include "cryptlib.h"
5 
6 bool ValidateAll(bool thorough);
7 bool TestSettings();
8 bool TestOS_RNG();
9 bool TestAutoSeeded();
10 
11 #if (CRYPTOPP_BOOL_X86 || CRYPTOPP_BOOL_X32 || CRYPTOPP_BOOL_X64)
12 bool TestRDRAND();
13 bool TestRDSEED();
14 #endif
15 
16 bool ValidateBaseCode();
17 bool ValidateCRC32();
18 bool ValidateAdler32();
19 bool ValidateMD2();
20 bool ValidateMD4();
21 bool ValidateMD5();
22 bool ValidateSHA();
23 bool ValidateSHA2();
24 bool ValidateTiger();
25 bool ValidateRIPEMD();
26 bool ValidatePanama();
27 bool ValidateWhirlpool();
28 
29 bool ValidateHMAC();
30 bool ValidateTTMAC();
31 
32 bool ValidateCipherModes();
33 bool ValidatePBKDF();
34 bool ValidateHKDF();
35 
36 bool ValidateDES();
37 bool ValidateIDEA();
38 bool ValidateSAFER();
39 bool ValidateRC2();
40 bool ValidateARC4();
41 
42 bool ValidateRC5();
43 bool ValidateBlowfish();
44 bool ValidateThreeWay();
45 bool ValidateGOST();
46 bool ValidateSHARK();
47 bool ValidateSEAL();
48 bool ValidateCAST();
49 bool ValidateSquare();
50 bool ValidateSKIPJACK();
51 bool ValidateRC6();
52 bool ValidateMARS();
53 bool ValidateRijndael();
54 bool ValidateTwofish();
55 bool ValidateSerpent();
56 bool ValidateSHACAL2();
57 bool ValidateCamellia();
58 bool ValidateSalsa();
59 bool ValidateSosemanuk();
60 bool ValidateVMAC();
61 bool ValidateCCM();
62 bool ValidateGCM();
63 bool ValidateCMAC();
64 
65 bool ValidateBBS();
66 bool ValidateDH();
67 bool ValidateMQV();
68 bool ValidateRSA();
69 bool ValidateElGamal();
70 bool ValidateDLIES();
71 bool ValidateNR();
72 bool ValidateDSA(bool thorough);
73 bool ValidateLUC();
74 bool ValidateLUC_DL();
75 bool ValidateLUC_DH();
76 bool ValidateXTR_DH();
77 bool ValidateRabin();
78 bool ValidateRW();
79 //bool ValidateBlumGoldwasser();
80 bool ValidateECP();
81 bool ValidateEC2N();
82 bool ValidateECDSA();
83 bool ValidateESIGN();
84 
85 #if !defined(NDEBUG)
86 bool TestPolynomialMod2();
87 #endif
88 
89 // Coverity findings
90 template <class T, bool NON_NEGATIVE>
91 T StringToValue(const std::string& str);
92 template<>
93 int StringToValue<int, true>(const std::string& str);
94 
95 // Functions that need a RNG; uses AES inf CFB mode with Seed.
96 CryptoPP::RandomNumberGenerator & GlobalRNG();
97 
98 bool RunTestDataFile(const char *filename, const CryptoPP::NameValuePairs &overrideParameters=CryptoPP::g_nullNameValuePairs, bool thorough=true);
99 
100 #endif
Abstract base classes that provide a uniform interface to this library.
const NameValuePairs & g_nullNameValuePairs
An empty set of name-value pairs.
Definition: cryptlib.cpp:79