I protocolli crittografici utilizzati nei sistemi distribuiti per autenticazione e scambio di chiavi condivise non sono immuni da errori. Negli ultimi anni sono stati proposti diversi formalismi per l'analisi e la verifica di tali protocolli. Risulterebbe comunque meno costoso e piu' efficiente prevenire gli errori mediante l'uso di alcuni semplici principi di progettazione, che verranno descritti durante questa presentazione. Tali principi non sono pero' condizione ne' sufficiente ne' necessaria per la creazione di un protocollo inattaccabile. Alcuni esempi ne mostreranno i limiti.