b'\n_START_ARTICLE_\nScambio di chiavi Diffie-Hellman\n_START_SECTION_\nDescrizione\n_START_PARAGRAPH_\nNell\'implementazione originale (e pi\xc3\xb9 semplice) del protocollo si considera inizialmente un numero g, generatore del gruppo moltiplicativo degli interi modulo p, dove p \xc3\xa8 un numero primo. Uno dei due interlocutori, ad esempio Alice, sceglie un numero casuale "a" e calcola il valore A = g\xe1\xb5\x83 mod p (dove mod indica l\'operazione modulo, ovvero il resto della divisione intera) e lo invia attraverso il canale pubblico a Bob (l\'altro interlocutore), assieme ai valori g e p._NEWLINE_Bob da parte sua sceglie un numero casuale "b" , calcola B = g\xe1\xb5\x87 mod p e lo invia ad Alice. A questo punto Alice calcola KA = B\xe1\xb5\x83 mod p, mentre Bob calcola KB = A\xe1\xb5\x87 mod p._NEWLINE__NEWLINE_I valori calcolati sono gli stessi, in quanto B\xe1\xb5\x83 mod p = A\xe1\xb5\x87 mod p._NEWLINE__NEWLINE_A questo punto i due interlocutori sono entrambi in possesso della chiave segreta e possono cominciare ad usarla per cifrare le comunicazioni successive. _NEWLINE__NEWLINE_Un attaccante pu\xc3\xb2 ascoltare tutto lo scambio, ma per calcolare i valori a e b avrebbe bisogno di risolvere l\'operazione del logaritmo discreto, che \xc3\xa8 computazionalmente onerosa e richiede parecchio tempo, in quanto sub-esponenziale (sicuramente molto pi\xc3\xb9 del tempo di conversazione tra i 2 interlocutori).\n_START_SECTION_\nLivello di sicurezza\n_START_PARAGRAPH_\nIl protocollo \xc3\xa8 considerato sicuro contro gli eavesdropper se g e G sono scelti in modo appropriato. "Eve" deve risolvere il problema di Diffie-Hellman ottenendo g\xe1\xb5\x83\xe1\xb5\x87. Questo oggi \xc3\xa8 considerato difficile. Un efficiente algoritmo per risolvere il problema del logaritmo discreto semplificherebbe il calcolo di a o b risolvendo il problema, e rendendo non pi\xc3\xb9 sicuri molti sistemi crittografici._NEWLINE_Purtroppo l\'algoritmo Diffie-Hellman \xc3\xa8 vulnerabile all\'attacco "Man in the middle", durante il quale un agente terzo pu\xc3\xb2 falsificare le chiavi pubbliche di Alice e Bob ed ingannare le due parti._NEWLINE_L\'algoritmo infatti attua lo scambio delle chiavi simmetriche segrete, ma con il presupposto di avere delle informazioni pubbliche condivise e si dimostra resistente nei confronti dell\'intercettamento di queste ultime (a partire dalle informazioni pubbliche non si riesce a ricostruire la chiave, \xc3\xa8 computazionalmente difficile). Ma nulla pu\xc3\xb2 impedire che le informazioni pubbliche siano state modificate o falsificate; in questo caso Alice e Bob non avrebbero modo di accorgersi della frode appoggiandosi al solo algoritmo Diffie-Hellman. Ecco perch\xc3\xa9 occorre che le informazioni pubbliche, ovvero le chiavi p e g degli esempi, possano essere autenticate tramite un algoritmo di autenticazione o da un Certification Authority._NEWLINE_Una variante del protocollo \xc3\xa8 DH-EKE, facente parte della famiglia Encrypted Key Exchange, che aggiunge allo scambio di chiavi una fase di (mutua) autenticazione basata su password.'