Un criptosistema è un’implementazione di tecniche di crittografia e la loro infrastruttura di accompagnamento per fornire informazioni in materia di sicurezza. Un cryptosystem è anche indicato come un sistema di cifratura.
Discutiamo un semplice modello di un criptosistema che fornisce riservatezza alle informazioni trasmesse., Questo modello di base è raffigurato nell’illustrazionebelow-
L’illustrazione mostra un mittente che desidera trasferire alcuni dati sensibili a un destinatario in modo tale che qualsiasi parte che intercetta o origlia sul canale di comunicazione non possa estrarre i dati.
L’obiettivo di questo semplice criptosistema è che alla fine del processo, solo il mittente e il destinatario conosceranno il testo in chiaro.
Componenti di un crittosistema
I vari componenti di un crittosistema di base sono i seguenti −
-
Testo in chiaro., Sono i dati da proteggere durante la trasmissione.
-
Algoritmo di crittografia. È un processo matematico che produce un testo cifrato per qualsiasi dato testo in chiaro e chiave di crittografia. Si tratta di un algoritmo crittografico che prende testo in chiaro e una chiave di crittografia come input e produce un testo cifrato.
-
Testo cifrato. È la versione criptata del testo in chiaro prodotto dall’algoritmo di crittografia utilizzando una specifica chiave di crittografia. Il testo cifrato non è custodito. Scorre sul canale pubblico. Può essere intercettato o compromesso da chiunque abbia accesso al canale di comunicazione.,
-
Algoritmo di decrittazione, È un processo matematico, che produce un testo in chiaro unico per ogni dato testo cifrato e chiave di decrittazione. Si tratta di un algoritmo crittografico che prende un testo cifrato e una chiave di decrittazione come input e emette un testo in chiaro. L’algoritmo di decrittazione inverte essenzialmente l’algoritmo di crittografia ed è quindi strettamente correlato ad esso.
-
Chiave di crittografia. È un valore noto al mittente. Il mittente inserisce la chiave di crittografia nell’algoritmo di crittografia insieme al testo in chiaro per calcolare il testo cifrato.
-
Chiave di decrittazione., È un valore che è noto al ricevitore. La chiave di decrittografia è correlata alla chiave di crittografia, ma non è sempre identica ad essa. Il ricevitore inserisce la chiave di decrittazione nell’algoritmo di decrittazione insieme al testo cifrato per calcolare il testo in chiaro.
Per un dato criptosistema, una raccolta di tutte le possibili chiavi di decrittazione è chiamata spazio chiave.
Un intercettore (un utente malintenzionato) è un’entità non autorizzata che tenta di determinare il testo in chiaro. Può vedere il testo cifrato e può conoscere l’algoritmo di decrittazione. Egli, tuttavia, non deve mai conoscere la chiave di decrittazione.,
Tipi di sistemi di crittografia
Fondamentalmente, ci sono due tipi di sistemi di crittografia basato sul modo in cui la cifratura-decifratura è svolta nel sistema
- Crittografia a Chiave Simmetrica
- Cifratura a Chiave simmetrica
La differenza principale tra questi sistemi di crittografia è il rapporto tra la crittografia e la chiave di decodifica. Logicamente, in qualsiasi criptosistema, entrambe le chiavi sono strettamente associate. È praticamente impossibile decifrare il testo cifrato con la chiave che non è correlata alla chiave di crittografia.,
Crittografia a chiave simmetrica
Il processo di crittografia in cui vengono utilizzate le stesse chiavi per crittografare e decrittografare le informazioni è noto come crittografia a chiave simmetrica.
Lo studio dei crittosistemi simmetrici è indicato come crittografia simmetrica. I crittosistemi simmetrici sono anche a volte indicati come crittosistemi a chiave segreta.
Alcuni esempi ben noti di metodi di crittografia a chiave simmetrica sono: Digital Encryption Standard (DES), Triple-DES (3DES), IDEA e BLOWFISH.
Prima del 1970, tutti i sistemi crittografici utilizzavano la crittografia a chiave simmetrica., Ancora oggi, la sua rilevanza è molto alta e viene ampiamente utilizzata in molti criptosistemi. È molto improbabile che questa crittografia svanisca, in quanto presenta alcuni vantaggi rispetto alla crittografia a chiave asimmetrica.
Le caratteristiche salienti del criptosistema basato sulla crittografia a chiave simmetrica sono −
-
Le persone che utilizzano la crittografia a chiave simmetrica devono condividere una chiave comune prima dello scambio di informazioni.si consiglia di cambiare regolarmente i tasti
-
per prevenire qualsiasi attacco al sistema.,
-
Deve esistere un meccanismo robusto per scambiare la chiave tra le parti comunicanti. Poiché le chiavi devono essere cambiate regolarmente, questo meccanismo diventa costoso e ingombrante.
-
In un gruppo di n persone, per abilitare la comunicazione a due parti tra due persone qualsiasi, il numero di chiavi richieste per il gruppo è n × (n-1)/2.
-
La lunghezza della chiave (numero di bit) in questa crittografia è più piccola e, quindi, il processo di crittografia-decrittografia è più veloce della crittografia a chiave asimmetrica.,
-
La potenza di elaborazione del sistema informatico necessaria per eseguire l’algoritmo simmetrico è inferiore.
Sfida del sistema crittografico a chiave simmetrica
Ci sono due sfide restrittive nell’utilizzare la crittografia a chiave simmetrica.
-
Key establishment − Prima di qualsiasi comunicazione, sia il mittente che il destinatario devono concordare una chiave simmetrica segreta. Richiede un meccanismo di creazione chiave sicuro in atto.,
-
Trust Issue − Poiché il mittente e il destinatario utilizzano la stessa chiave simmetrica, esiste un requisito implicito che il mittente e il destinatario si fidino l’un l’altro. Ad esempio, può accadere che il destinatario abbia perso la chiave per un utente malintenzionato e il mittente non sia informato.
Queste due sfide sono altamente restrittive per la comunicazione moderna. Oggi, le persone hanno bisogno di scambiare informazioni con parti non familiari e non fidate. Ad esempio, una comunicazione tra venditore online e cliente., Queste limitazioni della crittografia a chiave simmetrica hanno dato origine a schemi di crittografia a chiave asimmetrica.
Crittografia a chiave asimmetrica
Il processo di crittografia in cui vengono utilizzate chiavi diverse per crittografare e decrittografare le informazioni è noto come crittografia a chiave asimmetrica. Sebbene le chiavi siano diverse, sono matematicamente correlate e, quindi, il recupero del testo in chiaro decrittografando il testo cifrato è fattibile., Il processo è raffigurato nella seguente illustrazione −
La crittografia a chiave asimmetrica è stata inventata nel 20 ° secolo per venire oltre la necessità di chiave segreta pre-condivisa tra persone comunicanti. Le caratteristiche salienti di questo schema di crittografia sono le seguenti:
-
Ogni utente in questo sistema deve avere una coppia di chiavi dissimili, chiave privata e chiave pubblica. Queste chiavi sono matematicamente correlate: quando una chiave viene utilizzata per la crittografia, l’altra può decifrare il testo cifrato nel testo in chiaro originale.,
-
Richiede di inserire la chiave pubblica nel repository pubblico e la chiave privata come segreto ben custodito. Quindi, questo schema di crittografia è anche chiamato Crittografia a chiave pubblica.
-
Sebbene le chiavi pubbliche e private dell’utente siano correlate, non è computazionalmente possibile trovarne una dall’altra. Questo è un punto di forza di questo schema.
-
Quando Host1 deve inviare dati a Host2, ottiene la chiave pubblica di Host2 dal repository, crittografa i dati e trasmette.
-
Host2 usa la sua chiave privata per estrarre il testo in chiaro.,
-
La lunghezza delle chiavi (numero di bit) in questa crittografia è grande e, quindi, il processo di crittografia-decrittografia è più lento della crittografia a chiave simmetrica.
-
La potenza di elaborazione del sistema informatico necessaria per eseguire l’algoritmo asimmetrico è superiore.
I criptosistemi simmetrici sono un concetto naturale. Al contrario, i criptosistemi a chiave pubblica sono piuttosto difficili da comprendere.
Potresti pensare, come possono la chiave di crittografia e la chiave di decrittografia essere “correlate”, eppure è impossibile determinare la chiave di decrittografia dalla chiave di crittografia?, La risposta sta nei concetti matematici. È possibile progettare un criptosistema le cui chiavi hanno questa proprietà. Il concetto di crittografia a chiave pubblica è relativamente nuovo. Esistono meno algoritmi a chiave pubblica noti rispetto agli algoritmi simmetrici.
Sfida del crittosistema a chiave pubblica
I crittosistemi a chiave pubblica hanno una sfida significativa: l’utente deve fidarsi del fatto che la chiave pubblica che sta utilizzando nelle comunicazioni con una persona sia realmente la chiave pubblica di quella persona e non sia stata falsificata da una terza parte malevola.,
Questo viene solitamente realizzato attraverso un’infrastruttura a chiave pubblica (PKI) costituita da una terza parte attendibile. La terza parte gestisce in modo sicuro e attesta l’autenticità delle chiavi pubbliche. Quando alla terza parte viene richiesto di fornire la chiave pubblica per qualsiasi persona comunicante X, è attendibile che fornisca la chiave pubblica corretta.
La terza parte si soddisfa sull’identità dell’utente con il processo di attestazione, autenticazione notarile o qualche altro processo − che X è l’unico e unico, o globalmente unico, X., Il metodo più comune per rendere disponibili le chiavi pubbliche verificate consiste nell’incorporarle in un certificato firmato digitalmente dalla terza parte attendibile.,f sistema è indicato di seguito −
sistemi di crittografia Simmetrica | sistemi di crittografia a Chiave Pubblica | |
---|---|---|
Relazione tra i Tasti | Stesso | Diverso, ma matematicamente correlate |
Chiave di Crittografia | Simmetrica | Pubblico |
Chiave di Decrittografia | Simmetrica | Privato |
Per i vantaggi e svantaggi di entrambi i sistemi a chiave simmetrica e a chiave pubblica, sistemi di crittografia sono spesso utilizzati insieme, in pratica sistemi di sicurezza delle informazioni.,
Il principio di Kerckhoff per il crittosistema
Nel 19 ° secolo, un crittografo olandese A. Kerckhoff fornì i requisiti di un buon crittosistema. Kerckhoff ha dichiarato che un sistema crittografico dovrebbe essere sicuro anche se tutto ciò che riguarda il sistema, tranne la chiave, è di dominio pubblico. I sei principi di progettazione definiti da Kerckhoff per cryptosystem sono –
-
Il cryptosystem dovrebbe essere infrangibile praticamente, se non matematicamente.,
-
La caduta del criptosistema nelle mani di un intruso non dovrebbe portare ad alcun compromesso del sistema, evitando qualsiasi inconveniente per l’utente.
-
La chiave deve essere facilmente trasmissibile, memorabile, e mutevole.
-
Il testo cifrato dovrebbe essere trasmissibile tramite telegrafo, un canale non sicuro.
-
L’apparecchio di crittografia e i documenti devono essere portatili e utilizzabili da una sola persona.,
-
Infine, è necessario che il sistema sia facile da usare, non richiede né sforzo mentale né la conoscenza di una lunga serie di regole da osservare.
La seconda regola è attualmente conosciuta come principio di Kerckhoff. Viene applicato praticamente in tutti gli algoritmi di crittografia contemporanei come DES, AES, ecc. Questi algoritmi pubblici sono considerati completamente sicuri. La sicurezza del messaggio crittografato dipende esclusivamente dalla sicurezza della chiave di crittografia segreta.
Mantenere segreti gli algoritmi può fungere da barriera significativa alla crittanalisi., Tuttavia, mantenere segreti gli algoritmi è possibile solo quando vengono utilizzati in un cerchio strettamente limitato.
Nell’era moderna, la crittografia deve soddisfare gli utenti connessi a Internet. In questi casi, l’utilizzo di un algoritmo segreto non è fattibile, quindi i principi di Kerckhoff sono diventati linee guida essenziali per la progettazione di algoritmi nella crittografia moderna.