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 TestSecBlock();
87 bool TestPolynomialMod2();
88 #endif
89 
90 // Coverity findings
91 template <class T, bool NON_NEGATIVE>
92 T StringToValue(const std::string& str);
93 template<>
94 int StringToValue<int, true>(const std::string& str);
95 
96 // Functions that need a RNG; uses AES inf CFB mode with Seed.
97 CryptoPP::RandomNumberGenerator & GlobalRNG();
98 
99 bool RunTestDataFile(const char *filename, const CryptoPP::NameValuePairs &overrideParameters=CryptoPP::g_nullNameValuePairs, bool thorough=true);
100 
101 #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