Implementación de la función de cálculo PMKID

0

Estoy intentando implementar una función, digamos en Python para calcular el Identificador de clave maestra de Pairwise ( PMKID ) después de leer el error descubierto anteriormente en WPA2. Google me dio esta declaración lógica:

PMKID = HMAC-SHA1-128(PMK, "PMK Name" | MAC_AP | MAC_STA)

Sin embargo, el problema es que no puedo calcular el hash correcto. He intentado varias posibilidades, intentado convertir datos a binarios, probé varias versiones de MAC pero todavía no tengo oportunidad.

La pregunta es cómo implemento la función para calcular PMKID, preferiblemente en Python. Esto es lo que he estado haciendo un poco:

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
    
pregunta Shiri 18.08.2018 - 17:30
fuente

1 respuesta

0

Su código está bien, pero necesita poner los MAC en hexadecimal:

'\ x34 \ xbf \ x90 \ x4a \ xbb \ x57' en lugar de '34: bf: 90: 4a: bb: 57 '

    
respondido por el Jdoe 24.08.2018 - 11:48
fuente

Lea otras preguntas en las etiquetas