002
10.06.2006, 01:34 Uhr
xXx
Devil
|
Die Verschlüssellung wird in dem Auskommentierten Teil ausgeführt!
C++: |
bool CVokabelSolutionAdminSettings::WriteSettings(LPCSTR lpszFile, Settings_t* pSettings, char const* lpszPassword) { if(pSettings == NULL || lpszFile == NULL) return false;
char szBuffer[MAX_PATH+2]; char szPfad[MAX_PATH+2]; char* pFilename; CString strPfad;
GetModuleFileName (NULL, szBuffer, MAX_PATH); GetFullPathName (szBuffer, sizeof (szBuffer), szPfad, &pFilename); szPfad[pFilename-szPfad] = '\0'; strPfad.Format("%s\\%s", szPfad, lpszFile); FILE* pFile = fopen(strPfad, "wb");
if(pFile == NULL) return false;
if(!lpszPassword || strlen(lpszPassword) != 16) return false; // MakeKey(lpszPassword, CVokabelSolutionAdminSettings::sm_cChain0, 16, 16);
// char szDataIn[256]; // char szDataOut[256]; // memset(szDataIn, 0, 256); // memset(szDataOut, 0, 256);
// strcpy(szDataIn, pSettings->cPW); // memset(szDataOut, 0, 255); // Encrypt(szDataIn, szDataOut, 255, ECB);
fwrite(pSettings->cDB, 1, 256, pFile); fwrite(szDataOut, 1, 256, pFile); fwrite(pSettings->cHost, 1, 256, pFile); fwrite(pSettings->cUser, 1, 256, pFile); fwrite(&pSettings->bSSL, 1, 1, pFile); // Hier hab ich mir nur nochmal das entschlüsselte Ergebnis ausgeben lassen... es stimmt! // memset(szDataIn, 0, 256); // Decrypt(szDataOut, szDataIn, 256, ECB); // szDataIn[256] = '\0'; // MessageBox(NULL, szDataIn, szDataOut, MB_OK | MB_ICONINFORMATION);
fclose(pFile);
return true; }
|
Auskommentierte Teil ist die Entschlüsselung.
C++: |
bool CVokabelSolutionAdminSettings::ReadSettings(LPCSTR lpszFile, Settings_t* pSettings, char const* lpszPassword) { if(pSettings == NULL || lpszFile == NULL) return false;
char szBuffer[MAX_PATH+2]; char szPfad[MAX_PATH+2]; char* pFilename; CString strPfad;
GetModuleFileName (NULL, szBuffer, MAX_PATH); GetFullPathName (szBuffer, sizeof (szBuffer), szPfad, &pFilename); szPfad[pFilename-szPfad] = '\0'; strPfad.Format("%s\\%s", szPfad, lpszFile);
FILE *pFile = fopen(lpszFile, "rb"); if(pFile == NULL) return false;
if(!lpszPassword) return false;
// MakeKey(lpszPassword, CVokabelSolutionAdminSettings::sm_cChain0, 16, 16);
fread(pSettings->cDB, 1, 256, pFile); fread(pSettings->cPW, 1, 256, pFile); fread(pSettings->cHost, 1, 256, pFile); fread(pSettings->cUser, 1, 256, pFile); fread(&pSettings->bSSL, 1, 1, pFile);
// char szPW[256]; // memset(szPW, 0, 256); Decrypt(pSettings->cPW, szPW, 256, ECB); // szPW[256] = '\0'; // MessageBox(NULL, szPW, pSettings->cPW, MB_OK | MB_ICONINFORMATION); // _snprintf(pSettings->cPW, 256, "%s", szPW); // oder strcpy(pSettings->cPW, szPW);
fclose(pFile);
return true; }
|
|