Attacchi a Cryptosystems
Nell’era attuale, non solo gli affari, ma quasi tutti gli aspetti della vita umana sono guidati dalle informazioni. Quindi, è diventato imperativo proteggere le informazioni utili da attività dannose come gli attacchi. Consideriamo i tipi di attacchi a cui le informazioni sono tipicamente sottoposte.
Gli attacchi sono in genere classificati in base all’azione eseguita dall’attaccante. Un attacco, quindi, può essere passivo o attivo.
Attacchi passivi
L’obiettivo principale di un attacco passivo è ottenere l’accesso non autorizzato alle informazioni. Ad esempio, azioni come l’intercettazione e l’intercettazione sul canale di comunicazione possono essere considerate come attacchi passivi.
Queste azioni sono di natura passiva, in quanto non influenzano le informazioni né interrompono il canale di comunicazione. Un attacco passivo è spesso visto come rubare informazioni. L’unica differenza nel rubare beni fisici e rubare informazioni è che il furto di dati lascia ancora il proprietario in possesso di tali dati. L’attacco passivo di informazioni è quindi più pericoloso del furto di merci, poiché il furto di informazioni può passare inosservato dal proprietario.
Attacchi attivi
Un attacco attivo comporta la modifica delle informazioni in qualche modo conducendo un processo sulle informazioni. Ad esempio,
-
Modifica delle informazioni in modo non autorizzato.
-
Avvio della trasmissione non intenzionale o non autorizzata di informazioni.
-
Modifica dei dati di autenticazione come il nome dell’originatore o il timestamp associato alle informazioni
-
Cancellazione non autorizzata dei dati.
-
Negazione dell’accesso alle informazioni per gli utenti legittimi (denial of service).
La crittografia fornisce molti strumenti e tecniche per implementare crittosistemi in grado di prevenire la maggior parte degli attacchi sopra descritti.
Ipotesi di attacco
Vediamo l’ambiente prevalente intorno ai criptosistemi seguito dai tipi di attacchi impiegati per rompere questi sistemi −
Ambiente intorno al criptosistema
Mentre si considerano possibili attacchi al criptosistema, è necessario conoscere l’ambiente cryptosystems. Le ipotesi e le conoscenze dell’attaccante sull’ambiente decidono le sue capacità.
In crittografia, le seguenti tre ipotesi sono fatte circa l’ambiente di sicurezza e le capacità di attaccante.
Dettagli di Schema di Crittografia
La progettazione di un criptosistema si basa sui seguenti due algoritmi di crittografia−
-
Algoritmi Pubblici − Con questa opzione, tutti i dettagli dell’algoritmo sono di dominio pubblico, noto a tutti.
-
Algoritmi proprietari-I dettagli dell’algoritmo sono noti solo dai progettisti e dagli utenti del sistema.
Nel caso di algoritmi proprietari, la sicurezza è garantita attraverso l’oscurità. Gli algoritmi privati potrebbero non essere gli algoritmi più forti in quanto sviluppati internamente e potrebbero non essere ampiamente studiati per la debolezza.
In secondo luogo, consentono la comunicazione solo tra gruppi chiusi. Quindi non sono adatti per la comunicazione moderna in cui le persone comunicano con un gran numero di entità conosciute o sconosciute. Inoltre, secondo il principio di Kerckhoff, l’algoritmo è preferito essere pubblico con la forza della crittografia che giace nella chiave.
Pertanto, la prima ipotesi sull’ambiente di sicurezza è che l’algoritmo di crittografia sia noto all’attaccante.
Disponibilità di testo cifrato
Sappiamo che una volta che il testo in chiaro viene crittografato in testo cifrato, viene messo su un canale pubblico non protetto (ad esempio e-mail) per la trasmissione. Pertanto, l’attaccante può ovviamente presumere di avere accesso al testo cifrato generato dal criptosistema.
Disponibilità di testo in chiaro e testo cifrato
Questa ipotesi non è così ovvia come altre. Tuttavia, ci possono essere situazioni in cui un utente malintenzionato può avere accesso al testo in chiaro e al testo cifrato corrispondente. Alcune di queste possibili circostanze sono−
-
L’attaccante influenza il mittente a convertire il testo in chiaro di sua scelta e ottiene il testo cifrato.
-
Il ricevitore può divulgare il testo in chiaro all’attaccante inavvertitamente. L’attaccante ha accesso al testo cifrato corrispondente raccolto dal canale aperto.
-
In un sistema di crittografia a chiave pubblica, la chiave di crittografia è in dominio aperto ed è nota a qualsiasi potenziale attaccante. Usando questa chiave, può generare coppie di testi in chiaro e cifrati corrispondenti.
Attacchi crittografici
L’intenzione di base di un utente malintenzionato è di rompere un criptosistema e di trovare il testo in chiaro dal testo cifrato. Per ottenere il testo in chiaro, l’utente malintenzionato deve solo scoprire la chiave di decrittazione segreta, poiché l’algoritmo è già di pubblico dominio.
Quindi, applica il massimo sforzo per scoprire la chiave segreta utilizzata nel criptosistema. Una volta che l’attaccante è in grado di determinare la chiave, il sistema attaccato è considerato come rotto o compromesso.
In base alla metodologia utilizzata, gli attacchi ai crittosistemi sono classificati come segue−
-
Attacchi solo testo cifrato (COA) − In questo metodo, l’attaccante ha accesso a un insieme di testo cifrato(s). Non ha accesso al testo in chiaro corrispondente. COA si dice che abbia successo quando il testo in chiaro corrispondente può essere determinato da un dato insieme di testo cifrato. Occasionalmente, la chiave di crittografia può essere determinata da questo attacco. I moderni sistemi crittografici sono protetti dagli attacchi di solo testo cifrato.
-
Known Plaintext Attack (KPA) − In questo metodo, l’attaccante conosce il testo in chiaro per alcune parti del testo cifrato. Il compito è quello di decifrare il resto del testo cifrato utilizzando queste informazioni. Questo può essere fatto determinando la chiave o tramite qualche altro metodo. Il miglior esempio di questo attacco è la crittanalisi lineare contro i cifrari a blocchi.
-
Chosen Plaintext Attack (CPA) − In questo metodo, l’attaccante ha il testo di sua scelta crittografato. Quindi ha la coppia testo cifrato-testo in chiaro di sua scelta. Questo semplifica il suo compito di determinare la chiave di crittografia. Un esempio di questo attacco è la crittanalisi differenziale applicata ai cifrari a blocchi e alle funzioni hash. Un popolare sistema di crittografia a chiave pubblica, RSA è anche vulnerabile agli attacchi in chiaro scelti.
-
Dictionary Attack-Questo attacco ha molte varianti, che coinvolgono la compilazione di un’dizionario’. Nel metodo più semplice di questo attacco, l’attaccante costruisce un dizionario di testi cifrati e corrispondenti testi in chiaro che ha imparato per un periodo di tempo. In futuro, quando un utente malintenzionato ottiene il testo cifrato, fa riferimento al dizionario per trovare il testo in chiaro corrispondente.
-
Brute Force Attack (BFA) − In questo metodo, l’attaccante tenta di determinare la chiave tentando tutte le chiavi possibili. Se la chiave è lunga 8 bit, il numero di chiavi possibili è 28 = 256. L’attaccante conosce il testo cifrato e l’algoritmo, ora tenta tutte le 256 chiavi una per una per la decrittografia. Il tempo per completare l’attacco sarebbe molto alto se la chiave è lunga.
-
Birthday Attack – Questo attacco è una variante della tecnica della forza bruta. Viene utilizzato contro la funzione hash crittografica. Quando agli studenti di una classe viene chiesto dei loro compleanni, la risposta è una delle possibili date 365. Supponiamo data di nascita del primo studente è 3 agosto. Quindi per trovare il prossimo studente la cui data di nascita è 3rd Aug, dobbiamo chiedere 1.25 *r√365 ≈ 25 studenti.
Allo stesso modo, se la funzione hash produce valori hash a 64 bit, i possibili valori hash sono 1.8×1019. Valutando ripetutamente la funzione per diversi ingressi, si prevede che lo stesso output venga ottenuto dopo circa 5, 1×109 ingressi casuali.
Se l’attaccante è in grado di trovare due input diversi che danno lo stesso valore hash, si tratta di una collisione e si dice che la funzione hash sia interrotta.
-
Man in Middle Attack (MIM) – Gli obiettivi di questo attacco sono principalmente criptosistemi a chiave pubblica in cui lo scambio di chiavi è coinvolto prima che la comunicazione abbia luogo.
-
L’host A vuole comunicare con l’host B, quindi richiede la chiave pubblica di B.
-
Un utente malintenzionato intercetta questa richiesta e invia invece la sua chiave pubblica.
-
Pertanto, qualunque host A invii all’host B, l’attaccante è in grado di leggere.
-
al fine di mantenere la comunicazione, l’attaccante crittografa i dati, dopo la lettura, con la sua chiave pubblica e invia a B.
-
L’attaccante invia la sua chiave pubblica, come Una chiave pubblica in modo che B lo prende come se si sta prendendo da A.
-
-
a Canale Laterale di Attacco (SCA) − Questo tipo di attacco non è contro qualsiasi tipo di particolare criptosistema o algoritmo. Invece, viene lanciato per sfruttare la debolezza nell’implementazione fisica del criptosistema.
-
Timing Attacks-Sfruttano il fatto che calcoli diversi richiedono tempi diversi per calcolare sul processore. Misurando tali tempi, è possibile conoscere un particolare calcolo che il processore sta eseguendo. Ad esempio, se la crittografia richiede un tempo più lungo, indica che la chiave segreta è lunga.
-
Attacchi Power Analysis: questi attacchi sono simili agli attacchi di temporizzazione, tranne per il fatto che la quantità di consumo energetico viene utilizzata per ottenere informazioni sulla natura dei calcoli sottostanti.
-
Attacchi di analisi dei guasti – In questi attacchi, gli errori sono indotti nel criptosistema e l’attaccante studia l’output risultante per informazioni utili.
Praticità degli attacchi
Gli attacchi ai criptosistemi descritti qui sono altamente accademici, in quanto la maggior parte di essi proviene dalla comunità accademica. In effetti, molti attacchi accademici implicano ipotesi piuttosto irrealistiche sull’ambiente e sulle capacità dell’attaccante. Ad esempio, in chosen-ciphertext attack, l’utente malintenzionato richiede un numero impraticabile di coppie di testo in chiaro-cifrato volutamente scelte. Potrebbe non essere del tutto pratico.
Tuttavia, il fatto che qualsiasi attacco esista dovrebbe essere motivo di preoccupazione, in particolare se la tecnica di attacco ha il potenziale di miglioramento.