0Pricing
Ethical Hacking Academy · Lezione

Crittografia simmetrica e asimmetrica

AES e RSA

Crittografia simmetrica e asimmetrica è una lezione Ethical Hacking Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Ethical Hacking Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Ethical Hacking Academy include 4 lezioni in totale.

Due famiglie di cifratura

La cifratura moderna si divide in due famiglie, in base al funzionamento delle chiavi:

  • Simmetrica: la stessa chiave cifra e decifra. Esempio: AES.
  • Asimmetrica: utilizza una coppia di chiavi, una per cifrare e un'altra per decifrare. Esempio: RSA.

I sistemi reali le combinano entrambe. Comprendere i relativi compromessi è essenziale per attaccare e difendere i sistemi crittografici.

Cifratura simmetrica

Nella cifratura simmetrica, entrambe le parti condividono una chiave segreta. La stessa chiave protegge e sblocca i dati.

  • Vantaggio: è molto veloce, ideale per grandi quantità di dati.
  • Svantaggio: è necessario condividere prima la chiave in modo sicuro. Questo è il problema della distribuzione delle chiavi.

AES

AES (Advanced Encryption Standard) è il cifrario simmetrico dominante. È un cifrario a blocchi che opera su blocchi di 128 bit, con chiavi da 128, 192 o 256 bit.

AES è veloce, dispone di accelerazione hardware sulle CPU moderne ed è considerato sicuro se usato correttamente. AES-256 è la scelta comune per un livello di sicurezza elevato.

openssl enc -aes-256-cbc -salt -in secret.txt -out secret.enc
# Prompts for a password used to derive the key

Modalità dei cifrari a blocchi

Un cifrario a blocchi necessita di una modalità operativa per gestire dati più grandi di un singolo blocco:

  • ECB: non sicura; blocchi identici producono testi cifrati identici, rivelando dei pattern. Da evitare.
  • CBC: concatena i blocchi con un vettore di inizializzazione (IV). È migliore, ma richiede attenzione.
  • GCM: fornisce sia cifratura sia autenticazione (AEAD). È la modalità moderna consigliata.

Il pinguino in modalità ECB

Una dimostrazione famosa: cifrando un'immagine di un pinguino con AES in modalità ECB, il contorno del pinguino rimane visibile. ECB cifra i blocchi di testo in chiaro identici in blocchi di testo cifrato identici, perciò la struttura dei dati rimane visibile.

Per questo, durante le valutazioni, dovrebbe riconoscere ECB come un problema. Il cifrario è robusto; la debolezza è nella modalità.

Cifratura asimmetrica

La cifratura asimmetrica utilizza una coppia di chiavi matematicamente collegate:

  • Chiave pubblica: condivisa liberamente. Chiunque può cifrare un messaggio destinato a Lei usando questa chiave.
  • Chiave privata: mantenuta segreta. Solo Lei può decifrare usando questa chiave.

Questo risolve il problema della distribuzione delle chiavi: può pubblicare liberamente la Sua chiave pubblica senza compromettere la sicurezza.

RSA

RSA è il classico algoritmo asimmetrico. La sua sicurezza si basa sulla difficoltà di scomporre il prodotto di due grandi numeri primi.

Oggi sono comuni chiavi da 2048 bit; 3072 o 4096 bit offrono un margine maggiore. RSA è lento rispetto ad AES, quindi viene usato raramente per cifrare direttamente grandi quantità di dati.

openssl genrsa -out private.pem 2048
openssl rsa -in private.pem -pubout -out public.pem

Cifratura e firma a confronto

Le chiavi asimmetriche svolgono due funzioni distinte:

  • Riservatezza: cifri con la chiave pubblica del destinatario; solo la sua chiave privata consente di decifrare.
  • Autenticità (firma): firmi con la tua chiave privata; chiunque può verificare usando la tua chiave pubblica, dimostrando che il messaggio proviene da te.

Noti che le chiavi vengono utilizzate con ruoli opposti per questi due scopi.

Cifratura ibrida

I protocolli reali come TLS combinano entrambi i metodi. Il flusso è il seguente:

  • Utilizzi una volta la crittografia asimmetrica, più lenta, per scambiare in modo sicuro una chiave di sessione casuale.
  • Utilizzi il veloce AES simmetrico con quella chiave di sessione per i dati effettivi.

In questo modo ottiene la velocità della cifratura simmetrica insieme alla praticità, nella distribuzione delle chiavi, della cifratura asimmetrica.

Scambio di chiavi: Diffie-Hellman

Diffie-Hellman consente a due parti di concordare un segreto condiviso su un canale non sicuro senza inviare mai il segreto stesso. È alla base dello scambio di chiavi TLS moderno.

Le varianti basate sulle curve ellittiche (ECDH, ECDSA) offrono la stessa sicurezza di RSA con chiavi molto più piccole, risultando più veloci e diventando sempre più spesso la scelta predefinita.

Debolezze crittografiche comuni

Gli algoritmi robusti falliscono a causa di un uso scorretto. Presti attenzione a questi problemi:

  • La modalità ECB rivela pattern del testo in chiaro.
  • IV/nonce riutilizzati o prevedibili in CBC o GCM.
  • Chiavi codificate direttamente nel codice sorgente o nei file di configurazione.
  • Chiavi RSA troppo piccole (512 o 1024 bit), che possono essere scomposte.
  • Comportamenti da padding oracle che rivelano il testo in chiaro un byte alla volta.

Raramente è la matematica a essere compromessa; di solito lo è l'implementazione.

Verifica rapida

Applichi ciò che ha imparato sulle chiavi pubbliche e private.

Riepilogo

Ha confrontato le due famiglie di cifratura:

  • Simmetrica (AES): una chiave condivisa, veloce, ma la distribuzione delle chiavi è difficile. Utilizzi la modalità GCM, mai ECB.
  • Asimmetrica (RSA, ECC): coppia di chiavi pubblica/privata, risolve il problema della distribuzione, ma è lenta.
  • Cifri con la chiave pubblica del destinatario; firmi con la tua chiave privata.
  • I sistemi ibridi e Diffie-Hellman combinano i vantaggi di entrambi in TLS.

Successivamente: identificazione e cracking degli hash nella pratica.

Domande Frequenti

La lezione «Crittografia simmetrica e asimmetrica» è gratuita?

Sì — il testo completo di «Crittografia simmetrica e asimmetrica» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Ethical Hacking Academy, passa a CoddyKit PRO. Il corso Ethical Hacking Academy include 4 lezioni in totale.

Cosa imparerò in «Crittografia simmetrica e asimmetrica»?

AES e RSA Eserciti Ethical Hacking Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Ethical Hacking Academy?

Non è richiesta alcuna esperienza precedente. Ethical Hacking Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Crittografia simmetrica e asimmetrica»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Ethical Hacking Academy?

Sì. Ogni lezione Ethical Hacking Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Codifica e cifratura a confronto
  2. Hashing
  3. Crittografia simmetrica e asimmetrica
  4. Cracking degli hash
← Torna a Ethical Hacking Academy