phpbar.de logo

Mailinglisten-Archive

[php] MD5 mit UFT-8 Encoding

[php] MD5 mit UFT-8 Encoding

Norbert Siebert nsiebert at mml-kiel.de
Mon Jul 4 12:10:31 CEST 2005


Hallo Sebastian,

Quoting Sebastian Mendel <lists at sebastianmendel.de>:

> 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.

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

Gruß,
Norbert

php::bar PHP Wiki   -   Listenarchive