hi, ich benutze den sha-1 hash algo, um einen PSK für WLAN (WPA) zu erzeugen. das ganze läuft auf einem freescale s12x mit 40mhz und braucht da dummerweise ca. 3 minuten. meine frage: kennt einer von euch eine speedoptimierte sha-1 implementation für 16bittige big-endian cpu's? danke im voraus...
Welche Datenmenge soll denn gehasht werden? Das müssen ja riesige Mengen sein, wenn es drei Minuten dauert. (Zum Vergleich: Auf einem AVR [8-bit MCU] mit 1MHz schaffe ich gut 1kiByte/s.)
hallo christian. es ist von dort: https://svn.binaervarianz.de/kismac/trunk/Sources/Crypto/WPA.m die funktion 'wpaPasswordHash'. die ruft ca. 16000 mal die sha1 hashroutinen auf...
Du kannst natürlich gerne meine GPL-Implementierung des SHA-1 probieren: http://www.chzsoft.com.ar/cms/downloads/sha1.zip Allerdings ist die eher auf Codegröße als auf Geschwindigkeit optimiert. Es würde mich trotzdem mal interessieren, wie die sich auf einer 16-bit-CPU schlägt. Du müsstest das "#define SHA_LITTLE_ENDIAN" rausnehmen und je nach Compiler die uintxx_t-Typen definieren.
hallo, danke für den code. ich hab' ihn noch nicht ausprobiert aber von der 'optik' her sieht's so aus als würde er tatsächlich schneller arbeiten als diese referenzimplementation. btw: MeBiByte und KiBiByte hab' ich auch noch nicht gekannt ;)
Kleines Update: Unter http://www.chzsoft.com.ar/cms/downloads/sha1.zip gibt es jetzt auch eine für Mikrocontroller optimierte C-Implementierung des HMAC-SHA-1 (keyed-hash message authentication code), die auch unter der GPL steht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.