Introduzione alla crittografia

Introduzione alla crittografia
L'arte di nascondere informazioni per indurre la segretezza nella comunicazione e nella trasmissione di dati sensibili è definita crittografia. Immergiti in profondità nell'etimologia della parola "crittografia" mostra che questa parola trova la sua origine nell'antico greco. Derivato dalle parole Kryptos che significa "nascosto" o "segreto" e grafica Significa "scrittura", la crittografia significa letteralmente scrivere qualcosa di segretamente.

L'idea della crittografia è quella di trasmettere un messaggio privato o un pezzo di informazione dalla parte del mittente al destinatario previsto senza l'intruso del messaggio da una parte dannosa o non attendibile. Nel mondo della crittografia, questa terza parte sospetto che sta cercando di intrufolarsi in una comunicazione privata per estrarre qualcosa di sensibile da esso è chiamato avversario.

La crittografia ci protegge da questi avversari indesiderati offrendo una gamma di algoritmi necessari per nascondere o proteggere il nostro messaggio nel miglior modo possibile e trasmetterlo comodamente su una rete non così sicura.

Criptosistema e terminologie correlate

Le terminologie comuni che si incontrano nella parola crittografia sono:

  • Viene chiamato un semplice testo, facilmente percepito da un essere umano testo in chiaro o ClearText.
  • Viene chiamato il processo di utilizzo di algoritmi matematici per mascherare le informazioni sensibili in chiaro crittografia.
  • Questi algoritmi, noti anche come cifre, sono una serie di passaggi ben definiti per rendere il messaggio segreto effettivamente infrangibile per qualsiasi avversario. Dopo la crittografia, ottieni un testo cifrato che non ha affatto senso. Questo è il passaggio in cui hai nascosto il tuo messaggio.
  • Per far funzionare l'algoritmo, hai bisogno di un chiave unico per quell'algoritmo e messaggio.
  • Ora, al fine di decrittografare il testo crittografato, la chiave e il nome dell'algoritmo devono essere conosciuti. Questa conversione di Ciphertext di nuovo in testo in chiaro è chiamata decrittografia.

Per ottenere lo stesso testo in chiaro dall'algoritmo di decryption, dobbiamo sempre fornire la stessa chiave. Se la chiave è manomessa, l'output sarebbe inaspettata, indesiderabile o solitamente indesiderata.

Quindi, ciò che in realtà deve essere protetto è la chiave. Gli aggressori possono conoscere l'algoritmo e mantenere anche il testo cifrato. Ma fintanto che non sono a conoscenza della chiave, non possono rompere il messaggio reale.

Ora, tutte queste tecniche, i protocolli e le terminologie comprendono un criptosistema. Aiuta a semplificare l'implementazione delle pratiche crittografiche per nascondere la sostanza del messaggio in modo sicuro. Quindi può essere decodificato quando necessario all'interno dell'infrastruttura di questo sistema.

Storia della crittografia?

Tutto è iniziato intorno al 2000 b.C. Laddove gli egiziani comunicano informazioni importanti attraverso i geroglifici egiziani. Quei geroglifici sono una raccolta di pittogrammi con design e simboli intricati che potrebbero essere decifrati solo da pochi ben informati. Questi primi usi della crittografia sono stati trovati incisi su un po 'di pietra.

Quindi, i sentieri della crittografia sono stati trovati in una delle epoche più popolari della storia, la civiltà romana. Julius Caesar, il grande imperatore di Roma, usò una cifra dove era solito spostare ogni alfabeto tre volte a sinistra. Quindi, D sarà scritto al posto di A e B sarà sostituito con un E. Questa cifra è stata utilizzata per la comunicazione riservata tra i generali romani e l'imperatore è stato nominato Cesare Cipher dopo Julius Cesar.

L'esercito spartano era noto per avere il riconoscimento per alcune vecchie cifre. Erano anche quelli a introdurre la steganografia, nascondendo l'esistenza di messaggi per la segretezza assoluta e la privacy. Il primo esempio noto di steganografia fu un messaggio nascosto nel tatuaggio sopra la testa rasata di un messaggero. Il messaggio è stato quindi nascosto dai capelli ricrezionati.

Più tardi, gli indiani usavano cifre di kamasutra, dove le vocali furono sostituite con alcune consonanti in base alla loro fonetica o usate in accoppiamenti per sostituire i loro reciproci. La maggior parte di questi cifre erano inclini agli avversari e alla crittanalisi fino a quando le cifre polialfabetiche non venivano portate ai riflettori dagli arabi.

I tedeschi sono stati trovati usando una macchina enigma elettromeccanica per la crittografia di messaggi privati ​​nella seconda guerra mondiale. Quindi, Alan Turing si è fatto avanti per introdurre una macchina utilizzata per rompere i codici. Questa era la base per i primi computer moderni.

Con la modernizzazione della tecnologia, la crittografia è diventata molto più complessa. Eppure, ci sono voluti alcuni decenni per servire spie e militari solo prima che la crittografia diventasse una pratica comune in ogni organizzazione e dipartimento.

L'obiettivo principale nelle antiche pratiche crittografiche era introdurre la segretezza di informazioni sensibili. Tuttavia, con l'avvento dell'era dei computer e della modernizzazione, questi cifre hanno iniziato a rendere i servizi di controllo dell'integrità, conferma dell'identità di entrambe le parti coinvolte, firme digitali e calcoli sicuri insieme alla riservatezza.

Preoccupazioni della crittografia

I sistemi informatici, non importa quanto sicuri, sono sempre inclini agli attacchi. Le trasmissioni di comunicazione e dati possono sempre essere intromesse. Questi rischi prevarranno fintanto che esiste la tecnologia. Tuttavia, la crittografia rende questi attacchi senza successo. Non è così facile per gli avversari interrompere la conversazione o estrarre informazioni sensibili con mezzi convenzionali.

Con la crescente complessità di algoritmi crittografici e progressi criptologici, i dati stanno diventando più sicuri di giorno in giorno. La crittografia riguarda la fornitura delle migliori soluzioni mantenendo l'integrità dei dati, l'autenticità e la riservatezza.

L'avanzamento e la popolarità del calcolo quantistico e la sua possibilità di rompere gli standard di crittografia hanno messo in dubbio la sicurezza degli attuali standard crittografici. NIST ha definito ricercatori della matematica e del dipartimento scientifico per migliorare e riprogettare gli standard di crittografia delle chiavi pubbliche. Le proposte di ricerca sono state avanzate nel 2017. Questo è stato il primo passo verso standard di crittografia immensamente complessi e infrangibili.

Obiettivi della crittografia

Un criptosistema affidabile deve attenersi a determinate regole e obiettivi. Qualsiasi criptosistema che soddisfi gli obiettivi menzionati di seguito è considerato sicuro e quindi può essere utilizzato per le proprietà crittografiche. Questi obiettivi sono i seguenti:

Riservatezza

Il primo obiettivo della crittografia che è sempre stato lo stesso per secoli è la riservatezza. Che afferma che nessuno oltre al destinatario previsto può comprendere il messaggio o le informazioni trasmesse.

Integrità

Il criptosistema deve garantire che le informazioni in transito tra le parti del mittente e del destinatario o in memoria non siano modificate in alcun modo. Le alterazioni, se apportate, non possono andare inosservate.

Non ripudio

Questa proprietà assicura che i mittenti non possano mai negare in modo convincente la loro intenzione di creare i dati o inviare il messaggio.

Autenticazione

Infine, è importante che il mittente e il ricevitore possano autenticare l'identità reciproca insieme all'origine e alla destinazione prevista per le informazioni.

Tipi di crittografia

Classifichiamo le pratiche crittografiche in tre tipi, considerando i tipi di algoritmi e chiavi utilizzati per proteggere le informazioni.

Crittografia a chiave simmetrica

La crittografia a chiave simmetrica ha la stessa chiave per la crittografia e la decrittografia del messaggio. Il mittente dovrebbe inviare la chiave al destinatario con il testo cifrato. Entrambe le parti possono comunicare in modo sicuro se e solo se conoscono la chiave e nessun altro ha accesso ad essa.

Cesare Cipher è un esempio molto popolare di chiave simmetrica o crittografia chiave segreta. Alcuni degli algoritmi chiave simmetrici comuni sono DES, eventi avversi e idea ecc.

I sistemi simmetrici-chiavi sono abbastanza veloci e sicuri. Tuttavia, lo svantaggio di questo tipo di comunicazione è la protezione della chiave. Trasmettere la chiave segretamente a tutti i destinatari previsti era una pratica preoccupante. Qualsiasi terza parte che conosce la tua chiave è un pensiero raccapricciante in quanto il tuo segreto non sarà più un segreto. Per questo motivo, è stata introdotta la crittografia a chiave pubblica.

Crittografia a chiave asimmetrica

La crittografia a chiave asimmetrica o di chiave pubblica coinvolge due chiavi. Uno usato per la crittografia chiamata chiave pubblica e l'altra usata per la decrittografia nota come chiave privata. Ora, solo il destinatario previsto conosce la chiave privata.

Il flusso di questa comunicazione è così: il mittente chiede alla tua chiave pubblica per crittografare il suo messaggio con l'aiuto. Quindi inoltra il messaggio crittografato al destinatario. Il destinatario riceve il testo cifrato, lo decodifica con l'aiuto della sua chiave privata e accede al messaggio nascosto.

In questo modo la gestione delle chiavi diventa molto più conveniente. Nessuno può accedere e decrittografare il testo cifrato senza la chiave privata. È una pratica avanzata della crittografia che è stata introdotta per la prima volta da Martin Hellman nel 1975. DDS, RSA e Eigamal sono alcuni esempi di algoritmi di chiave asimmetrica.

Funzioni hash

Le funzioni di hash crittografiche prendono un blocco di dati di dimensioni arbitrariamente e li crittografano in una stringa di bit di dimensioni fisse. Quella stringa è chiamata valore hash crittografico. La proprietà della funzione hash che li rende importanti nel mondo della sicurezza delle informazioni è che non ci sono due diversi pezzi o credenziali possono generare lo stesso valore di hash. Quindi, puoi confrontare il valore di hash delle informazioni con l'hash ricevuto e se sono diversi questo accerisce che il messaggio è stato modificato.

Il valore di hash viene talvolta definito come digest di messaggi. Questa proprietà rende Hash Funzioni un ottimo strumento per garantire l'integrità dei dati.

Le funzioni di hash svolgono anche un ruolo nel fornire riservatezza dei dati per le password. Non è saggio archiviare le password come testo in chiaro poiché rendono sempre incline agli utenti a furto di informazioni e identità. Tuttavia, la memorizzazione di un hash invece salverà gli utenti da una maggiore perdita in caso di violazione dei dati.

Quali problemi risolve?

La crittografia garantisce l'integrità dei dati in transito e nel riposo. Ogni sistema software ha più endpoint e più client con un server back-end. Queste interazioni client/server spesso avvengono su reti non così sicure. Questo attraversamento non così sicuro delle informazioni può essere protetto attraverso le pratiche crittografiche.

Un avversario può provare ad attaccare una rete di traversa in due modi. Attacchi passivi e attacchi attivi. Gli attacchi passivi potrebbero essere online in cui l'attaccante cerca di leggere informazioni sensibili durante l'attraversamento in tempo reale o potrebbe essere offline in cui i dati vengono mantenuti e letti dopo un po 'molto probabilmente dopo un po' di decryption. Gli attacchi attivi consentono all'attaccante che impersona un cliente per modificare o leggere il contenuto sensibile prima che venga trasmesso alla destinazione prevista.

L'integrità, la riservatezza e altri protocolli come SSL/TLS si astengono gli aggressori dall'autvampimento e dalla manomissione sospetta dei dati. I dati conservati nei database sono un esempio comune di dati a riposo. Può anche essere protetto dagli attacchi attraverso la crittografia in modo che nel caso di un mezzo fisico si perde o rubati, le informazioni sensibili non verranno divulgate.

Crittografia, criptologia o crittografia?

Alcune delle terminologie comuni che vengono utilizzate in modo improprio a causa della mancanza di informazioni sono la criptologia, la crittografia e la crittografia. Queste terminologie sono usate erroneamente in modo intercambiabile. Tuttavia, sono abbastanza diversi l'uno dall'altro. La criptologia è la filiale della matematica che si occupa di nascondere messaggi segreti e quindi decodificarli quando necessario.

Questo campo di criptologia si segrega in due sotto-rami che sono crittografia e crittografia. Laddove la crittografia si occupa di nascondere i dati e rendere la comunicazione sicura e riservata, la crittanalisi comporta decrittografia, analisi e rottura delle informazioni sicure. I criptanali sono anche chiamati aggressori.

Forza della crittografia

La crittografia può essere forte o debole considerando l'intensità della segretezza richiesta dal tuo lavoro e la sensibilità delle informazioni che si trasporta. Se vuoi nascondere un documento specifico dal tuo fratello o amico, potresti aver bisogno di una crittografia debole senza rituali seri per nascondere le tue informazioni. La conoscenza crittografica di base farebbe.

Tuttavia, se la preoccupazione è l'intercomunicazione tra grandi organizzazioni e persino governi, le pratiche crittografiche coinvolte dovrebbero essere severamente forte osservare tutti i principi delle crittografia moderna. La forza dell'algoritmo, il tempo richiesto per la decrittografia e le risorse utilizzate, determinano la forza del criptosistema utilizzato.

Principi di crittografia

Il principio più importante è quello di non creare mai il tuo criptosistema o fare affidamento sulla sicurezza solo a causa dell'oscurità. Fino a quando e a meno che un criptosistema non abbia subito un intenso controllo, non può mai essere considerato sicuro. Non presumere che il sistema non verrà intruso o gli aggressori non avrebbero mai abbastanza conoscenze per sfruttarlo.

La cosa più sicura in un criptosistema deve essere la chiave. Dovrebbero essere prese misure tempestive e ampie per proteggere la chiave ad ogni costo. Non è saggio archiviare la chiave insieme al testo cifrato. Ci sono alcune misure precauzionali per archiviare la chiave segretamente:

  • Proteggi le tue chiavi attraverso forti elenchi di controllo degli accesso.
  • Usa i tasti di crittografia dei tasti (keks) per crittografare i tasti di crittografia dei dati (DEK). Riducerà al minimo la necessità di archiviare una chiave non crittografata.
  • L'attrezzatura hardware resistente al manomissione chiamata Hardware Security Module (HSM) può essere utilizzata per archiviare in modo sicuro le chiavi. HSM utilizza le chiamate API per recuperare le chiavi o decrittarle anche su HSM ogni volta che è necessario.

Assicurati di rispettare gli standard di crittografia del mercato per gli algoritmi e la forza chiave. Usa gli eventi avversi con tasti 128, 192 o 256 bit in quanto è standard per la crittografia simmetrica. Per la crittografia asimmetrica, ECC o RSA dovrebbe essere utilizzato con tasti non meno di 2048 bit. Per motivi di sicurezza del sistema, evita modi e standard insicuri e corrotti.

Conclusione

Con i progressi nelle tecnologie e la crescente densità delle reti utilizzate per la comunicazione, sta diventando un disperato bisogno di mantenere i canali di comunicazione oltre a riservato, corretto e autentico. La crittografia si è evoluta in modo significativo con il tempo. Le moderne pratiche crittografiche aiutano a garantire i canali di comunicazione e le trasmissioni condotte tra. Insieme alla sicurezza, offrono integrità, riservatezza, non ripudio e autenticazione.