Re: Eindeutiger Vergleich für große Dateien gesucht
Liste der Anhänge anzeigen (Anzahl: 1)
Ok, ich setze noch einen drauf und habe dir die Unit fertig gecodet. In der letzen zeit hätte ich das Ding schon 2-3 mal selber gebrauchen können.
@Bigg: was ist an der ASM so lustig ? Gruß Hagen |
Re: Eindeutiger Vergleich für große Dateien gesucht
An Assembler ist gar nicht's lustig, aber die Länge deines Codes ist es. :)
|
Re: Eindeutiger Vergleich für große Dateien gesucht
das nennt man Loop-Unrolling ;) Der MD4 Code hat wenn ich mich recht errinnere einen Durchsatz von > 250MB/sec. Das ist auch der Grund warum der binäre Dateivergleich mit Hilfe von CompareMem() so langsam ist.
Gruß Hagen |
Re: Eindeutiger Vergleich für große Dateien gesucht
Irgendwo hatte ich mal 'ne Funktion, welche zwar auch auf MD5 aufbaute, aber dennoch dateien mit "gleichen Hash's unterschied.
Dazu liegt bei mir noch 'ne hübsche MD5-Version rum, welche fast komplette in ASM geschrieben wurde ... und wenn ich mich nicht irre, ist die auch schneller als die oben gezeigten. Dazu hab ich auch mal Hagen's RipeMD320 nach dem schema meiner MD5-Version überarbeitet. Und mit dem RipeMD320 ist auch nochmal ein besserer Vergleich möglich ... da der HJash ja mehr Bits, als das MD5 hat. Ich versuche die entsprechenden Code mal nächste Woche hochzuladen, aber jetzt muß ich erstmal weiter ... tschüssili :( [add] @Hagen: ich hatte mal einige deiner Codes (DEC) von Luckies Seite runtergeladen und dort stimmte die Anzahl der Werte in der MD5-Tabelle nicht ... es sollten doch nur 256 Werte sein und nicht mehr? |
Re: Eindeutiger Vergleich für große Dateien gesucht
Zitat:
Code:
Gruß Hagen
THash_MD2 : 261.3 cycles/byte 5.74 Mb/sec
THash_MD4 : 5.9 cycles/byte 252.53 Mb/sec THash_MD5 : 9.0 cycles/byte 167.01 Mb/sec THash_SHA : 21.0 cycles/byte 71.31 Mb/sec THash_SHA1 : 20.7 cycles/byte 72.43 Mb/sec THash_SHA256 : 47.2 cycles/byte 31.76 Mb/sec THash_SHA384 : 86.1 cycles/byte 17.43 Mb/sec THash_SHA512 : 88.0 cycles/byte 17.05 Mb/sec THash_Sapphire : 55.0 cycles/byte 27.25 Mb/sec THash_Panama : 8.1 cycles/byte 185.24 Mb/sec THash_Tiger : 24.7 cycles/byte 60.81 Mb/sec THash_RipeMD128 : 15.1 cycles/byte 99.08 Mb/sec THash_RipeMD160 : 26.5 cycles/byte 56.63 Mb/sec THash_RipeMD256 : 14.8 cycles/byte 101.69 Mb/sec THash_RipeMD320 : 25.7 cycles/byte 58.31 Mb/sec THash_Haval128 : 13.9 cycles/byte 108.01 Mb/sec THash_Haval160 : 14.1 cycles/byte 106.43 Mb/sec THash_Haval192 : 33.4 cycles/byte 44.95 Mb/sec THash_Haval224 : 34.7 cycles/byte 43.28 Mb/sec THash_Haval256 : 26.2 cycles/byte 57.23 Mb/sec THash_Whirlpool : 98.9 cycles/byte 15.17 Mb/sec THash_Whirlpool1 : 99.3 cycles/byte 15.10 Mb/sec THash_Square : 46.4 cycles/byte 32.34 Mb/sec THash_Snefru128 : 168.2 cycles/byte 8.92 Mb/sec THash_Snefru256 : 250.0 cycles/byte 6.00 Mb/sec |
Re: Eindeutiger Vergleich für große Dateien gesucht
@negaH:
Zitat:
von nutzen ist deine unit aber auf alle fälle, nicht dass du mich falsch verstehst... ich verwende eben nur ungern den kompletten code von jemand anderem. wie gesagt, nochmals danke für deine mühe! @himitsu: würde mich auch interessieren. |
Re: Eindeutiger Vergleich für große Dateien gesucht
Zitat:
Das liegt daran ads THash_MD5 die Basisklasse auch für RipeMD ist, und dieser benutzt in den ersten Inits die gleichen Werte. Um mir eine überladene Methode für die verschiedenen abgeleiteten Klassen zu sparen habe ich diesen gleich in die Mutterklasse implementiert. Die überschüssigen Werte werden also für MD5 nicht benutzt. Gruß Hagen |
Re: Eindeutiger Vergleich für große Dateien gesucht
Zitat:
Für Prüfsummen erachte ich MD4 als besser, für kryptographische Belange sollte man unbedingt MD5 benutzen, da in MD4 Teilkollisionen konstruiert werden konnten (ergo gilt als unsicher-er) Den Source habe ich im Grunde erstmal für mich persönlich geschrieben, habe ja sonst nichts besseres zu tuen ;) Gruß Hagen |
Re: Eindeutiger Vergleich für große Dateien gesucht
Ich meinte meine MD5 gegenüber den obern aufgelisteten MD5's
dass MD4 schneller ist, weiß ich auch schon. Außerdem ist MD5 auch nur'n aufgemotzes/langsammeres MD4 ^^ PS: ich hab an meinen obrigen Beitrag noch was angehängt ... Ach ja, aber da ich ja die wirkliche geschwingig keit meiner Codes nicht weiß ... schicke ich sie dir irgendwann mal, dann kannst du sie ja mal auf deinem System (wegen des besseren Vergleichs) testen. @dahead: ich werd mich beeilen ... hab die Codes ja in 'ner eigenen Codesammlung und, wo ich nur noch mit einen Basics kleine Probleme hab ... Zeiltich bin ich ja auch noch etwas eingeschränkt Und wenn ich die entsprechenden Codes von einigen Funktioen meiner Lib (ohne größere Probleme) trennen kann, dann veröffentliche ich auch schon vorzeitig. @Hagen nein, ich meine die Werte für die Berechnung ... aber ich kann mich auch im Moment irren und es war bei der CRC32-Berechnung ... wenn ich daheim bin, werde ich da sicherheitshalber nochaml nachgucken. aber das mit der Initialisierung hab ich schon bemerkt (das die Initfunktion von beiden verwendet wird ^^) |
Re: Eindeutiger Vergleich für große Dateien gesucht
Zitat:
aus diesem grund bin ich auch auf himitsu's lösung gespannt. Zitat:
Zitat:
edit: @himitsu: Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz