Kerberos è un protocollo di autenticazione sviluppato presso il MIT, il cui nome evoca il famoso cane a tre teste della mitologica greca, e fornisce un meccanismo per una autenticazione reciproca (mutual authentication) tra client e server o tra due server. Il protocollo assume che le transazioni iniziali tra client e server avvengano in una rete insicura, probabilmente sotto monitor di qualche utente smaliziato, e che anche i computer non siano posti in un luogo sicuro, probabilmente saranno collegati a Internet. In un ambiente poco sicuro, sia esso Internet o una intranet, non è escluso poter trovare un attaccante in grado di intercettare le comunicazioni tra client e server e di catturare dati o, peggio, di modificarli. Il sistema di autenticazione Kerberos, così come la figura mitologica, è composto da tre elementi: il Key Distribution Center (KDC), l’utente e il server con il servizio a cui l’utente vuole accedere. Nei prossimi paragrafi si riassumeranno le caratteristiche salienti di Kerberos, ma per maggiori informazioni si suggerisce una lettura approfondita della bibliografia, in particolare del whitepaper “Kerberos: An Authentication Service for Open Network Systems”, presentato a USENIX nel 1988, e del WhitePaper “Windows 2000 Kerberos Authentication”. Continua a leggere