//+------------------------------------------------------------------------- // // Microsoft Windows // // Copyright (C) Microsoft Corporation, 1997 - 1999 // // File: pfxcrypt.h // //-------------------------------------------------------------------------- #define RC4_128 1 #define RC4_40 2 #define TripleDES 3 #define RC2_128 4 #define RC2_40 5 BOOL _stdcall PFXPasswordEncryptData( int iEncrType, LPCWSTR szPassword, int iPKCS5Iterations, // pkcs5 data PBYTE pbPKCS5Salt, DWORD cbPKCS5Salt, PBYTE* pbData, DWORD* pcbData); BOOL _stdcall PFXPasswordDecryptData( int iEncrType, LPCWSTR szPassword, int iPKCS5Iterations, // pkcs5 data PBYTE pbPKCS5Salt, DWORD cbPKCS5Salt, PBYTE* pbData, DWORD* pcbData); BOOL NSCPPasswordDecryptData( int iEncrType, LPCWSTR szPassword, PBYTE pbPrivacySalt, DWORD cbPrivacySalt, int iPKCS5Iterations, PBYTE pbPKCS5Salt, DWORD cbPKCS5Salt, PBYTE* ppbData, DWORD* pcbData); BOOL FGenerateMAC( LPCWSTR szPassword, PBYTE pbPKCS5Salt, DWORD cbPKCS5Salt, DWORD iterationCount, PBYTE pbData, // pb data DWORD cbData, // cb data BYTE rgbMAC[]); // A_SHA_DIGEST_LEN ////////////////////////////////////////////////// // begin tls1key.h BOOL PKCS5_GenKey ( int iIterations, PBYTE pbPW, DWORD cbPW, PBYTE pbSalt, DWORD cbSalt, BYTE rgbPKCS5Key[] // A_SHA_DIGEST_LEN ); BOOL P_Hash ( PBYTE pbSecret, DWORD cbSecret, PBYTE pbSeed, DWORD cbSeed, PBYTE pbKeyOut, //Buffer to copy the result... DWORD cbKeyOut, //# of bytes of key length they want as output. BOOL fNSCPCompatMode ); BOOL FTestPHASH_and_HMAC(); BOOL F_NSCP_TestPHASH_and_HMAC();