Ich lerne gerade Python und lerne über Verschlüsselungsmethoden in dieser Sprache. Dort fand ich die Funktion pbkdf2_hmac (Hash-Name, Passwort, Salz, Iterationen, Dklen = None) aus der hashlib-Bibliothek.Iteration in passwortbasierter Schlüsselableitungsfunktion 2
Der Parameter "Iterationen" funktioniert jedoch nicht so, wie ich es erwarte. Wie der folgende einfache Code zeigt, wenn ich versuche, die Funktion zweimal mit einer Iteration aufzurufen, bekomme ich eine andere Antwort, als wenn ich sie einmal mit zwei Iterationen anrufe. Da Hashing-Funktionen deterministisch sind, sollten beide Methoden das gleiche Ergebnis liefern.
import hashlib
a=hashlib.pbkdf2_hmac("sha256",b"hallo",b"salt",1)
b=hashlib.pbkdf2_hmac("sha256",a,b"salt",1)
c=hashlib.pbkdf2_hmac("sha256",b"hallo",b"salt",2)
print(b)
print(c)
Kann mir jemand sagen, was schief gelaufen ist?