def generateKeys(self): ''' Genera le chiavi a partire dai pacchetti ''' #genero psk a partire dal pms (pre master secret) e dall'SSID pskGenerator = passphraseToPSKMap(self.pms,self.ssid) psk = pskGenerator.getPsk() #print 'PMK = ' + str(packet_printer.stringInHex(psk)) #estraggo i due Nonce e i due macAddress ANonce = self.getNonce(self.p1.scapyForm) SNonce = self.getNonce(self.p2.scapyForm) AA = self.getSrcAddress(self.p1.scapyForm) SPA = self.getSrcAddress(self.p2.scapyForm) #print 'AN = ' + ANonce #print 'SN = ' + SNonce #print 'AA = ' + str(AA) #print 'SA = ' + str(SPA) #genero le chiavi di sessione keyGen = keyGenerator(psk,self.mex,AA,SPA,ANonce,SNonce) [kck,kek,tk,authenticatorMicKey,supplicantMicKey] = keyGen.getKeys() self.kck = kck self.kek = kek self.tk = tk self.authenticatorMicKey = authenticatorMicKey self.supplicantMicKey = supplicantMicKey
def test_4_mia_psk(self): Passphrase = "H6x&@!1uLQ*()!12c0x\\f^\'?|s<SNgh-" SSID = 'WWWLAN' PSK = "3f4eb9a38ba03f3a28235fd038971be12845a57169c2801d729afa6711f6db96" pskGen = passphraseToPSKMap(Passphrase,SSID) psk = pskGen.getPsk() hexPsk = psk.encode("hex") self.assertEqual(PSK,hexPsk)
def test_3(self): Passphrase = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" SSID = 'ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ' PSK = "becb93866bb8c3832cb777c2f559807c8c59afcb6eae734885001300a981cc62" pskGen = passphraseToPSKMap(Passphrase,SSID) psk = pskGen.getPsk() hexPsk = psk.encode("hex") self.assertEqual(PSK,hexPsk)
def test_2(self): Passphrase = "ThisIsAPassword" SSID = 'ThisIsASSID' PSK = "0dc0d6eb90555ed6419756b9a15ec3e3209b63df707dd508d14581f8982721af" pskGen = passphraseToPSKMap(Passphrase,SSID) psk = pskGen.getPsk() hexPsk = psk.encode("hex") self.assertEqual(PSK,hexPsk)
def test_1(self): Passphrase = "password" SSID = 'IEEE' PSK = "f42c6fc52df0ebef9ebb4b90b38a5f902e83fe1b135a70e23aed762e9710a12e" pskGen = passphraseToPSKMap(Passphrase,SSID) psk = pskGen.getPsk() hexPsk = psk.encode("hex") self.assertEqual(PSK,hexPsk)
def generateKeys(self): ''' Genera le chiavi a partire dai pacchetti ''' #genero psk a partire dal pms (pre master secret) e dall'SSID pskGenerator = passphraseToPSKMap(self.pms,self.ssid) psk = pskGenerator.getPsk() #print 'PMK = ' + str(packet_printer.stringInHex(psk)) #estraggo i due Nonce e i due macAddress ANonce = self.p1.objectForm.payload.payload.key_nonce SNonce = self.p2.objectForm.payload.payload.key_nonce AA = self.p1.objectForm.header.source_address SPA = self.p1.objectForm.header.destination_address #genero le chiavi di sessione keyGen = keyGenerator(psk,self.mex,AA,SPA,ANonce,SNonce) [kck,kek,tk,authenticatorMicKey,supplicantMicKey] = keyGen.getKeys() self.kck = kck self.kek = kek self.tk = tk self.authenticatorMicKey = authenticatorMicKey self.supplicantMicKey = supplicantMicKey