2Danke
ERLEDIGT
JA
JA
ANTWORTEN
10
10
ZUGRIFFE
476
476
EMPFEHLEN
-
Hallo liebes Forum,
kann mir jemand sagen was ich benötige, um md5 in c++ zu benutzen? Ist der md5Hash der selbe wie beim PHP MD5?
Ich arbeite mit MS Visual Studio C++.
Vielen Dank
grußWer mit dem Strom schwimmt, erreicht die Quelle nie.
-
Hi
da ist eine Implementierung:
people.csail.mit.edu/rivest/Md5.c
GrußNetiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
Hi sheel,
danke für deine Antwort. Habe mir die md5.c datei runtergeladen. Kannst du mir vielleicht noch kurz sagen was ich mit der Datei machen soll? Include ich sie einfach?
DankeWer mit dem Strom schwimmt, erreicht die Quelle nie.
-
Nicht ganz.
In der Datei sind eigentlich drei, Dateien, abgegrenzt durch die großen Kommentarblöcke.
md5.h, md5.c und eine Datei mit Aufrufbeispielen für Strings, Dateien etc.
Trenn das in 3 Dateien auf.
Die erste includen, die zweite mitkompilieren, die dritte nur zum Anschauen.Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
Hmm ;-( ich kriege das irgendwie nicht hin. Ich arbeite mit MS Visual Studio C++ 2010. Es gibt eine md5lib.dll von der ständig die Rede ist. Ich frage mich nur wie ich die DLL einbinde. Leider habe ich nicht ganz verstanden wie ich die zweite Datei mitkompiliere bei MSVC C++.
grußWer mit dem Strom schwimmt, erreicht die Quelle nie.
-
Hab da nichts gesehen, was eine DLL nötig macht.
Du fügst die h- und c-Datei einfach zum Projekt dazu
und schreibst in den anderen C-Dateien ein #include<md5.h>.Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
Genau das habe ich gemacht. Nun erhalten ich folgenden Fehler:
Fehler 1 error C1853: Die vorkompilierte Header-Datei "Debug\md5.pch" stammt von einer früheren Version des Compilers, oder der vorkompilierte Header stammt von C++, und Sie verwenden Ihn von C (oder umgekehrt)Wer mit dem Strom schwimmt, erreicht die Quelle nie.
-
Schlt die vorkompilierten Header in den Projekteinstellungen aus.
Machen sowieso oft Probleme.Netiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
Danke dir. Jetzt erhalte ich keine Fehler mehr. Leider sehe ich bei der Beispieldatei nicht ganz durch. Ich möchte einfach nur einen string in md5 konvertieren. Kannst du das ein wenig vereinfachen und mir ein Beispiel geben? Vielen Dank nochmals
Wer mit dem Strom schwimmt, erreicht die Quelle nie.
-
Code cpp:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
void string2md5 (char *out, char *in) { MD5_CTX mdContext; int i; MD5Init(&mdContext); MD5Update(&mdContext, in, strlen(in)); MD5Final(&mdContext); for (int i = 0; i < 16; i++) { out[(i<<1)] = (char)(mdContext.digest[i] / 16); out[(i<<1) + 1] = (char)(mdContext.digest[i] % 16); if(out[(i<<1)] < 10) out[(i<<1)] += '0'; else out[(i<<1)] += 'a' - 10; if(out[(i<<1) + 1] < 10) out[(i<<1) + 1] += '0'; else out[(i<<1) + 1] += 'a' - 10; } out[32] = '\0'; }
Aufruf:
Ungetestet.Code cpp:1 2 3 4 5 6 7
char einagbe[1024]; gets(eingabe); ... char md5[33]; strin2md5(md5, eingabe); puts(md5);
GrußNetiquette (vA §15) und Nutzungsregeln (vA §4.8) einhalten! Programmcode in Codetags/Codeboxen.
Sehr gute Beiträge bitte Bewerten (Stern darunter oder "Danke").
"Funktioniert nicht" ist zu ungenau! Code, Fehlermeldungen, Verhalten des Programms, ...?
-
VIelen Dank, funktioniert . Und schönes WE
Wer mit dem Strom schwimmt, erreicht die Quelle nie.





Zitieren

Login






