Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » Datei inhalt wird nicht richtig geladen...

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
09.06.2006, 21:06 Uhr
xXx
Devil


Also... ich hab ein Problem ... ... ich schreib einmal nen string in nen file... halt mit FILE net mit streams odg... Hab einen der strings vor dem schreiben in die Datei noch verschlüsselt(AES)... so weit so gut... nur wenn ich das ganze auslese, steht da purer schwachsin... selbst in den Zeilen die nicht verschlüsselt sind(sind vor der verschlüsselten stelle!)!... jemand ne Idee woran das liegen könnte?

Wenn ihr nen Codefragment braucht... sagt bescheid
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
09.06.2006, 22:58 Uhr
Bruder Leif
dances with systems
(Operator)


Bescheid
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
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;
}
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
10.06.2006, 10:57 Uhr
Bruder Leif
dances with systems
(Operator)


Auf den ersten Blick seh ich da mal eine Mischung aus C und C++. Böse. Ich schau mir mal den Rest an...
--
Mit 40 Fieber sitzt man nicht mehr vor dem PC.
Man liegt im Bett.
Mit dem Notebook.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
11.06.2006, 15:38 Uhr
xXx
Devil


Und... angeguckt? Hast nen Fehler entdeckt? Bin für jeden Hinweiß dankbar...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
11.06.2006, 18:08 Uhr
(un)wissender
Niveauwart


Ich vermute mal, dass das falsch ist: fwrite(szDataOut, 1, 256, pFile);
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
11.06.2006, 20:55 Uhr
xXx
Devil


Wie kommst du da drauf? Der Array ist ja 256 groß... ich kann ja net einfach was weg lassen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
11.06.2006, 23:11 Uhr
(un)wissender
Niveauwart


Na ja du liest fread(pSettings->cPW, 1, 256, pFile); und schreibst fwrite(szDataOut, 1, 256, pFile);. Ist sonst symmetrisch nur hier nicht.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
12.06.2006, 14:32 Uhr
xXx
Devil


Was ist daran nicht symmetrisch? aja.. szDataOut hab ich nu auch auf 256 erwhöht falls du das meintest... aber das ist es nicht... das war halt nur weil da ja eh nur 255 Zeichen max. drin sind und dann halt noch der Abschluss.. das hätte ich ja eh nicht verschlüsseln können
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: