Mailinglisten-Archive |
Norbert Siebert wrote: > Hallo Sebastian, > >> lass dir doch in deinem C#-Client mal den UTF8-Codierten String ausgeben >> (vor der MD5-Kodierung) und vergleich ihn mit dem von PHP erstellten >> UFT8-Kodierten String - oder poste die beiden dann mal hier. > > Die habe ich mir ausgeben lassen. Allerdings ist das in C# etwas > schwieriger, da > der String vor dem generieren des Schlüssel nur in als byte array vorliegt. > Bevor sie in dieses byte array geschrieben werden, sind ist gleich. hast du es schon mal mit recode_string() oder iconv() probiert? > Stelle ich im C# Client die Kodierung auf ASCII um, dann erhalte ich > identische > Schlüssel. Die liegt halt an der Kodierung der Zeichen. > > Kann du dir die Ausgabe von folgendem vielleicht erklären? > > <?php > echo str_pad("String 'test' nur mit MD5 Kodiert:",40) > . md5("test") . "\n"; > echo str_pad("String 'test' mit MD5 und UTF-8 kodiert:",40) > . md5(utf8_encode("test")) . "\n"; > echo str_pad("String 'täst' nur mit MD5 kodiert:",40) > . md5("täst") . "\n"; > echo str_pad("String 'täst' mit MD5 und UTF-8 kodiert:",40) > . md5(utf8_encode("täst")) . "\n"; > ?> > > Ausgabe: > String 'test' nur mit MD5 Kodiert: 098f6bcd4621d373cade4e832627b4f6 > String 'test' mit MD5 und UTF-8 kodiert:098f6bcd4621d373cade4e832627b4f6 > String 'täst' nur mit MD5 kodiert: 82d29ac2844d27fc2722ad97c9d2c064 > String 'täst' mit MD5 und UTF-8 kodiert:109623cd486dccc1c2a2601b1144305f ja, weil nur das 'ä' UTF8-kodiert wird, die anderen Zeichen sind innerhalb der allgemein gültigen Zeichen, diese müssen nicht kodiert werden p.s. schreib bitte an die Liste -- Sebastian Mendel www.sebastianmendel.de www.sf.net/projects/phpdatetime | www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive