📄 driverinterfacecypher.h
字号:
// Description:
// By Sarah Dean
// Email: sdean12@sdean12.org
// WWW: http://www.FreeOTFE.org/
//
// -----------------------------------------------------------------------------
//
#ifndef _DriverInterfaceCypher_H
#define _DriverInterfaceCypher_H 1
#include "FreeOTFE4PDACypherAPI.h"
#include "FreeOTFEPlatform.h"
// =========================================================================
// Constants....
#define STR_FORMAT_FULL_CYPHER_TITLE TEXT("%ls (%ls; %d/%d)")
// =========================================================================
// Structures...
typedef struct _MODULE_DETAILS_CYPHER {
WCHAR* Filename;
HINSTANCE Lib;
PCypherDLLFnIdentifyDriver FnIdentifyDriver;
PCypherDLLFnIdentifySupported FnIdentifySupported;
PCypherDLLFnGetCypherDetails FnGetCypherDetails;
PCypherDLLFnEncrypt FnEncrypt;
PCypherDLLFnEncryptWithASCII FnEncryptWithASCII;
PCypherDLLFnDecrypt FnDecrypt;
PCypherDLLFnDecryptWithASCII FnDecryptWithASCII;
} MODULE_DETAILS_CYPHER, *PMODULE_DETAILS_CYPHER;
// =========================================================================
// Functions...
BOOL driver_CypherLoadDLL(WCHAR* Filename, MODULE_DETAILS_CYPHER* DLLDetails);
void driver_CypherUnloadDLL(MODULE_DETAILS_CYPHER* DLLDetails);
BOOL driver_CypherGetDriverDetails(WCHAR* CypherFilename, CYPHER_DRIVER_INFO* driverInfo);
void driver_CypherFreeDriverDetails(CYPHER_DRIVER_INFO* driverInfo);
BOOL driver_CypherGetImplDetails(
WCHAR* CypherFilename,
GUID* CypherImpl,
CYPHER* ImplDetails
);
BOOL driver_CypherEncryptData(
WCHAR* CypherDriverFilename,
GUID CypherGUID,
unsigned int keySize, // In *bits*
FREEOTFEBYTE* Key,
unsigned int IVSize, // In *bits*
FREEOTFEBYTE* IV,
unsigned int blockSize, // In bytes
FREEOTFEBYTE* plaintextBuffer,
FREEOTFEBYTE* encryptedBuffer
);
BOOL driver_CypherDecryptData(
WCHAR* CypherDriverFilename,
GUID CypherGUID,
unsigned int keySize, // In *bits*
FREEOTFEBYTE* Key,
unsigned int IVSize, // In *bits*
FREEOTFEBYTE* IV,
unsigned int blockSize, // In bytes
FREEOTFEBYTE* encryptedBuffer,
FREEOTFEBYTE* plaintextBuffer
);
void driver_CypherPrettyprintAlgMode(
CYPHER_MODE mode,
WCHAR* buffer
);
void driver_CypherPrettyprintAlgTitle(
CYPHER* cypherInfo,
WCHAR* buffer,
int bufferSize // In bytes
);
// =========================================================================
// =========================================================================
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -