Enciclopedia

Crittografia a chiave pubblica - crittografia -

Crittografia a chiave pubblica , forma asimmetrica di crittografia in cui il trasmettitore di un messaggio e il suo destinatario utilizzano chiavi (codici) diverse, eliminando così la necessità per il mittente di trasmettere il codice e rischiando la sua intercettazione.

La tabella di Vigenère Nella crittografia del testo in chiaro, la lettera cifrata si trova all'intersezione della colonna intestata dalla lettera del testo in chiaro e la riga indicizzata dalla lettera chiave. Per decifrare il testo cifrato, la lettera in chiaro si trova all'inizio della colonna determinata dall'intersezione della diagonale contenente la lettera cifrata e la riga contenente la lettera chiave. Ulteriori informazioni su questo argomento crittologia: crittografia a due chiavi Nel 1976, in una delle intuizioni più ispirate nella storia della crittografia, Sun Microsystems, Inc., l'ingegnere informatico Whitfield Diffie e ...

Nel 1976, in una delle intuizioni più ispirate nella storia della crittologia, Sun Microsystems, Inc., l'ingegnere informatico Whitfield Diffie e l'ingegnere elettrico della Stanford University Martin Hellman realizzarono che il problema della distribuzione delle chiavi poteva essere quasi completamente risolto se un crittosistema, T ( e forse un sistema inverso, T ′), potrebbe essere ideato che usasse due chiavi e soddisfacesse le seguenti condizioni:

  1. Deve essere facile per il crittografo per calcolare una coppia di chiavi, e (crittografia) e D (decodificazione), per i quali T e T ' d = I . Sebbene non essenziale, è desiderabile che Td T e = I e che T = T ′. Poiché la maggior parte dei sistemi ideati per soddisfare i punti 1–4 soddisfano anche queste condizioni, si presume che valgano in seguito, ma non è necessario.
  2. L'operazione di crittografia e decrittografia, T , dovrebbe essere (computazionalmente) facile da eseguire.
  3. Almeno una delle chiavi deve essere computazionalmente impossibile da recuperare per il crittoanalista anche quando conosce T , l'altra chiave e arbitrariamente molte coppie di testo in chiaro e testo cifrato corrispondenti.
  4. Non dovrebbe essere computazionalmente fattibile recuperare x dato y , dove y = T k ( x ) per quasi tutte le chiavi k e i messaggi x .

Dato un tale sistema, Diffie e Hellman hanno proposto che ogni utente mantenga la sua chiave di decrittazione segreta e pubblichi la sua chiave di crittografia in una directory pubblica. La segretezza non era richiesta, né nella distribuzione né nella memorizzazione di questa directory di chiavi "pubbliche". Chiunque desideri comunicare in privato con un utente la cui chiave è nella directory deve solo cercare la chiave pubblica del destinatario per crittografare un messaggio che solo il destinatario previsto può decrittografare. Il numero totale di chiavi coinvolte è solo il doppio del numero di utenti, con ogni utente che ha una chiave nella directory pubblica e la propria chiave segreta, che deve proteggere nel proprio interesse. Ovviamente la directory pubblica deve essere autenticata, altrimenti A potrebbe essere indotto a comunicare con C quando pensa di comunicare conB semplicemente sostituendo C ‘s chiave per B ‘s in A ‘s copia della directory. Dal momento che erano concentrati sul problema della distribuzione delle chiavi, Diffie e Hellman hanno chiamato la loro scoperta crittografia a chiave pubblica. Questa è stata la prima discussione sulla crittografia a due chiavi nella letteratura aperta. Tuttavia, l'ammiraglio Bobby Inman, mentre era direttore della US National Security Agency (NSA) dal 1977 al 1981, rivelò che la crittografia a due chiavi era nota all'agenzia quasi un decennio prima, essendo stata scoperta da James Ellis, Clifford Cocks e Malcolm Williamson presso il quartier generale del codice del governo britannico (GCHQ).

In questo sistema, le cifrature create con una chiave segreta possono essere decrittografate da chiunque utilizzi la chiave pubblica corrispondente, fornendo così un mezzo per identificare l'originatore a scapito di rinunciare completamente alla segretezza. Le cifrature generate utilizzando la chiave pubblica possono essere decrittografate solo dagli utenti che detengono la chiave segreta, non da altri che detengono la chiave pubblica, tuttavia, il detentore della chiave segreta non riceve informazioni sul mittente. In altre parole, il sistema garantisce la segretezza a scapito della rinuncia totale a qualsiasi capacità di autenticazione. Ciò che Diffie e Hellman avevano fatto era separare il canale di segretezza dal canale di autenticazione, un esempio lampante del fatto che la somma delle parti fosse maggiore del tutto. La crittografia a chiave singola è chiamata simmetrica per ovvi motivi.Un criptosistema che soddisfa le condizioni 1–4 di cui sopra è chiamato asimmetrico per ragioni altrettanto ovvie. Esistono sistemi crittografici simmetrici in cui le chiavi di crittografia e decrittografia non sono le stesse, ad esempio trasformazioni di matrice del testo in cui una chiave è una matrice non singolare (invertibile) e l'altra il suo inverso. Anche se questo è un sistema crittografico a due chiavi, poiché è facile calcolare l'inverso di una matrice non singolare, non soddisfa la condizione 3 e non è considerato asimmetrico.non soddisfa la condizione 3 e non è considerato asimmetrico.non soddisfa la condizione 3 e non è considerato asimmetrico.

Poiché in un sistema crittografico asimmetrico ogni utente ha un canale di segretezza da ogni altro utente a lui (usando la sua chiave pubblica) e un canale di autenticazione da lui a tutti gli altri utenti (usando la sua chiave segreta), è possibile ottenere sia la segretezza che l'autenticazione usando supercrittografia. Say A vuole comunicare un messaggio in segreto a B , ma B vuole essere sicuri che il messaggio è stato inviato da A . A prima crittografa il messaggio con la sua chiave segreta e poi sovrascrive il codice risultante con la chiave pubblica di B. Il codice esterno risultante può essere decifrato solo da B , garantendo così ad A che solo Bpuò recuperare la cifra interna. Quando B apre la cifra interno con una ‘chiave pubblica s egli è certo che il messaggio proviene da qualcuno sapendo A ‘chiave s, presumibilmente A . Per quanto semplice, questo protocollo è un paradigma per molte applicazioni contemporanee.

I crittografi hanno costruito diversi schemi crittografici di questo tipo partendo da un problema matematico "difficile" - come fattorizzare un numero che è il prodotto di due numeri primi molto grandi - e tentando di fare in modo che la crittoanalisi dello schema sia equivalente alla risoluzione del problema difficile . Se questo può essere fatto, la criptosicurezza dello schema sarà almeno tanto buona quanto il problema matematico sottostante è difficile da risolvere. Finora ciò non è stato dimostrato per nessuno dei programmi candidati, sebbene si ritenga che valga in ogni caso.

Tuttavia, una prova di identità semplice e sicura è possibile sulla base di tale asimmetria computazionale. Un utente seleziona prima segretamente due grandi numeri primi e poi pubblica apertamente il proprio prodotto. Sebbene sia facile calcolare una radice quadrata modulare (un numero il cui quadrato lascia un resto designato quando diviso per il prodotto) se i fattori primi sono noti, è difficile tanto quanto fattorizzare (di fatto equivalente a fattorizzare) il prodotto se il i numeri primi sono sconosciuti. Un utente può quindi provare la sua identità, cioè che conosce i numeri primi originali, dimostrando che può estrarre radici quadrate modulari. L'utente può essere sicuro che nessuno può impersonarlo poiché per farlo dovrebbe essere in grado di fattorizzare il suo prodotto. Ci sono alcune sottigliezze nel protocollo che devono essere osservate,ma questo illustra come la moderna crittografia computazionale dipenda da problemi difficili.

$config[zx-auto] not found$config[zx-overlay] not found