Sto cercando di implementare una funzione, diciamo in Python per calcolare l'identificatore chiave Master Pairwise ( PMKID ) dopo aver letto il bug precedentemente rilevato in WPA2. Googling mi ha dato questa affermazione logica:
PMKID = HMAC-SHA1-128(PMK, "PMK Name" | MAC_AP | MAC_STA)
Tuttavia, il problema è che non sono in grado di calcolare l'hash giusto. Ho provato varie possibilità, ho provato a convertire i dati in binario, ho provato varie versioni di MAC ma ancora nessuna possibilità.
La domanda è come implementare la funzione per calcolare PMKID, preferibilmente in Python. Ecco cosa ho fatto un po ':
import hashlib, binascii, hmac
from pbkdf2 import PBKDF2
print "Required hash: 2a416a999af0a6bf454684269afb06ef"
apmac = '34:bf:90:4a:bb:57'
clmac = '98:de:d0:1a:97:c2'
pmk = PBKDF2('786 5555', 'unknown', 4096).read(32)
print "PMK: "+binascii.hexlify(pmk)
pmkid = hmac.new(pmk, "PMK Name"+apmac+clmac, hashlib.sha1).hexdigest()
print pmkid