# fips140.h File Reference

## Detailed Description

FIPS 140 related functions and classes.

Definition in file fips140.h.

`#include "cryptlib.h"`
`#include "secblock.h"`

Go to the source code of this file.

## Classes
class | SelfTestFailure
| exception thrown when a crypto algorithm is used after a self test fails More...
## Defines
#define | CRYPTOPP_DUMMY_DLL_MAC "MAC_51f34b8db820ae8"
## Typedefs
typedef PowerUpSelfTestStatus(__cdecl * | PGetPowerUpSelfTestStatus )()
## Enumerations
enum | PowerUpSelfTestStatus { POWER_UP_SELF_TEST_NOT_DONE, POWER_UP_SELF_TEST_FAILED, POWER_UP_SELF_TEST_PASSED }
| enum values representing status of the power-up self test
## Functions
bool __cdecl | FIPS_140_2_ComplianceEnabled ()
| returns whether FIPS 140-2 compliance features were enabled at compile time
void __cdecl | DoPowerUpSelfTest (const char *moduleFilename, const byte *expectedModuleMac)
| perform the power-up self test, and set the self test status
void __cdecl | DoDllPowerUpSelfTest ()
| perform the power-up self test using the filename of this DLL and the embedded module MAC
void __cdecl | SimulatePowerUpSelfTestFailure ()
| set the power-up self test status to POWER_UP_SELF_TEST_FAILED
PowerUpSelfTestStatus __cdecl | GetPowerUpSelfTestStatus ()
| return the current power-up self test status
MessageAuthenticationCode *__cdecl | NewIntegrityCheckingMAC ()
bool __cdecl | IntegrityCheckModule (const char *moduleFilename, const byte *expectedModuleMac, SecByteBlock *pActualMac=NULL, unsigned long *pMacFileLocation=NULL)
bool | PowerUpSelfTestInProgressOnThisThread ()
void | SetPowerUpSelfTestInProgressOnThisThread (bool inProgress)
void | SignaturePairwiseConsistencyTest (const PK_Signer &signer, const PK_Verifier &verifier)
void | EncryptionPairwiseConsistencyTest (const PK_Encryptor &encryptor, const PK_Decryptor &decryptor)
void | SignaturePairwiseConsistencyTest_FIPS_140_Only (const PK_Signer &signer, const PK_Verifier &verifier)
void | EncryptionPairwiseConsistencyTest_FIPS_140_Only (const PK_Encryptor &encryptor, const PK_Decryptor &decryptor)