Algoritmo standard per generatore di chiavi WEP a 64 bit [chiuso]

-3

Ho scaricato la seguente funzione da internet. È un generatore di chiavi WEP per 64 bit da una passphrase generatrice. e mi chiedo se un tale algoritmo sia un algoritmo standard? o è un algoritmo inventato dallo sviluppatore?

void wepkey64(char *passphrase, unsigned char k64[4][5])
{
    unsigned char pseed[4] = {0};
    unsigned int randNumber, tmp;
    int i, j;

    for(i = 0; i < strlen(passphrase); i++)
    {
        pseed[i%4] ^= (unsigned char) passphrase[i];
    }

    randNumber = pseed[0] | (pseed[1] << 8) | (pseed[2] << 16) | (pseed[3] << 24);

    for (i = 0; i < 4; i++)
    {
        for (j = 0; j < 5; j++)
        {
            randNumber = (randNumber * 0x343fd + 0x269ec3) & 0xffffffff;
            tmp = (randNumber >> 16) & 0xff;
            k64[i][j] = (unsigned char) tmp;
        }
    }
}
    
posta MOHAMED 09.05.2013 - 12:20
fonte

1 risposta

2

WEP è stato uno dei primi protocolli che ha cercato di proteggere le reti wireless. Era parte degli standard IEEE 802.11. E 'stato rotto quasi un decennio fa e raramente visto in questi giorni. Per i dettagli su come ha funzionato e le sue vulnerabilità si può vedere this

WEP ha fatto uso di RC4 stream cipher per la crittografia. Il problema con RC4 è che se lo stesso flusso di chiavi fosse usato ripetutamente diventa molto facile craccare la chiave sniffando un numero sufficiente di pacchetti e effettuando un attacco passivo (attacco dizionario) . Il concetto di Initialization Vector (IV) è stato utilizzato per garantire che i flussi di chiavi non vengano ripetuti. 24 bit di IV sono stati aggiunti alla chiave per renderlo casuale.

Quindi ora

64 bit WEP key = 40 bits key stream + 24 bits of IV

Il problema più grande era che la lunghezza IV era troppo piccola (in una rete occupata l'IV verrà ripetuta) e gli 802.11 standard non hanno specificato come generare la IV . Quindi, in pratica, è stato lasciato ai venditori la possibilità di generare le IV pseudo casuali. Penso che risponda alla tua domanda.

Al giorno d'oggi, viene utilizzato WPA2. Utilizza una migliore crittografia e dispone di due sapori personali (per uso domestico) e aziendale (viene utilizzato un server di autenticazione e non vi è alcuna passkey condivisa tra più utenti). per i dettagli vedi questo e questo

    
risposta data 09.05.2013 - 13:17
fonte

Leggi altre domande sui tag