kickerxy123
Erfahrenes Mitglied
Hi, mal wieder ein kleines Problem.
Ich frage mich was hier schief läuft? Das Ergebnis am Ende entspricht nicht dem Input am Anfang.
Der Hex String nach dem ersten Teil sieht eigentlich ganz gut aus, denke der zweite Teil ist fehlerhaft.
danke!
kickerxy
C++:
char hexVal[16] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
'A', 'B', 'C', 'D', 'E', 'F' };
string s = "";
//unsigned char -> hashRep string
for(int i = 0; i < shaedInLen; ++i)
{
s+= hexVal[((unsigned int)shaedIn[i]) >> 4];
s+= hexVal[((unsigned int)shaedIn[i]) & 0xF];
}
//hashRep string -> unsigned char
*pOutShaLen = s.length() / 2;
*pOutSha = new unsigned char[*pOutShaLen];
for(int i = 0; i < s.length(); i+=2)
{
(*pOutSha)[i/2] = (unsigned char)(hexVal[((unsigned int)s[i]) << 4] + hexVal[((unsigned int)s[i+1]) & 0xF]);
}
Der Hex String nach dem ersten Teil sieht eigentlich ganz gut aus, denke der zweite Teil ist fehlerhaft.
danke!
kickerxy
Zuletzt bearbeitet: