Zitat von
Pseudemys Nelsoni:
mal ne dumme frage, was ist denn big/little-endian?
Little Endian ist die Angewohnheit von bestimmten Prozessoren (u.a. x86) die Bytes verkehrt herum im Speicher abzulegen ("Least significant byte first"). Beispiel: Ein Word hat den Wert 48849, was hexadezimal BE:EF wäre. Im Speicher steht jedoch EF:BE.
Zitat von
Chakotay1308:
Das Problem ist einfach, dass der "Delphi"-MD5-Hash länger ist (und anders), als das PHP-Derivat (sagt man das so?
).
Länger? Beides 16 Byte, wenn ich noch richtig zählen kann. Was die Endianess angeht: Assarbad schreibt doch, dass er den Algorihmus in
RFC 1321 übersetzt hat. In eben diesem
RFC heißt es:
Zitat von
RFC 1321:
The implementation is portable and should work on many different
plaforms. However, it is not difficult to optimize the implementation
on particular platforms, an exercise left to the reader. For example,
on "little-endian" platforms where the lowest-addressed byte in a 32-
bit word is the least significant and there are no alignment
restrictions, the call to Decode in MD5Transform can be replaced with
a typecast.
An der Endianess kann es also nicht liegen, wenn ich das richtig sehe.