Seite 2 von 2

Re: Endianness (Bytereihenfolge) und Fingerprints

Verfasst: 21.12.2012 17:40
von DarkDragon
STARGÅTE hat geschrieben:
DarkDragon hat geschrieben:Ich bezweifle, dass du einen kompletten Speicherbereich swappen musst, sondern eher die einzelnen Worte. D.h. wenn du einen Fingerprint in einer durch 16Bit Worte aufgeteilten Struktur hast musst du jedes 16Bit Wort einzeln byteweise swappen.
Soll heißen: In einem MD5 wo mit der Wortgröße 32Bit ein 128Bit Fingerprint erstellt wird, bleibt die Wortreihenfolge egal ob Littel oder Big-Endian die selbe? Es wird also immer nur das Wort selbst gedreht?
Je nach dem ob du es als ByteArray oder als Word-/Long-/QuadArray speicherst kanns da schon zu Diskrepanzen kommen. Allerdings speichert man MD5 als String bzw. ByteArray, wo der Endian eigentlich Banane ist (man könnte mit Gewalt was anderes erzwingen, aber wer will das schon?). Interessant wird der Endian bei Wörtern, die in ein Register des Prozessors passen und größer als die kleinste Wortgröße (bzw. Byte) sind. Bei UTF16 ist dies z.B. der Fall. Die BOM gibt direkt einen Hinweis darauf, in welchem Endian sich die Daten befinden.