0Pricing
Cryptology Academy · Lezione

XOR dentro AES e nei cifrari a flusso

Segua l'uso di XOR negli algoritmi di cifratura reali.

XOR dentro AES e nei cifrari a flusso è una lezione Cryptology Academy gratuita su CoddyKit. Questa è la lezione 4 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 Cryptology Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cryptology Academy include 4 lezioni in totale.

Benvenuto

XOR è un componente fondamentale di ogni cifrario moderno. In questa lezione analizzeremo come XOR compare in AddRoundKey di AES e nella combinazione con il keystream dei cifrari a flusso.

XOR in AES: AddRoundKey

AES ha da 10 a 14 round. Ogni round inizia con AddRoundKey: lo stato di 16 byte viene sottoposto a XOR con la chiave di round di 16 byte. Questo è l'unico passaggio che introduce effettivamente la chiave segreta.

Derivazione della chiave di round AES

La chiave originale da 128, 192 o 256 bit viene espansa in 11, 13 o 15 chiavi di round tramite il key schedule. Ogni passaggio AddRoundKey usa una chiave di round derivata diversa.

Perché XOR funziona all'interno di AES

In AES, XOR viene eseguito nell'aritmetica di GF(2^8). Le operazioni non lineari circostanti (SubBytes, MixColumns) conferiscono a XOR le proprietà di diffusione e confusione descritte da Claude Shannon.

Keystream dei cifrari a flusso

Un cifrario a flusso genera un keystream pseudocasuale da una chiave e da un nonce: keystream = CSPRNG(key, nonce) ciphertext = plaintext XOR keystream ChaCha20 produce il keystream in blocchi di 64 byte usando la propria funzione quarter-round.

Quarter-round di ChaCha20

Funzione di miscelazione di ChaCha20: a += b; d ^= a; d <<<= 16 c += d; b ^= c; b <<<= 12 a += b; d ^= a; d <<<= 8 c += d; b ^= c; b <<<= 7 XOR (^) e rotazione (<<<) sono le operazioni fondamentali.

Nonce e contatore nei cifrari a flusso

ChaCha20 usa: chiave da 256 bit + nonce da 96 bit + contatore da 32 bit. Contatori diversi producono blocchi di keystream diversi. Riutilizzare la coppia (key, nonce) è catastrofico: non lo faccia mai.

Modalità AES-CTR: cifrario a blocchi come cifrario a flusso

AES-CTR cifra con AES valori consecutivi del contatore, quindi applica XOR al risultato con il plaintext. In questo modo trasforma AES, un cifrario a blocchi, in un cifrario a flusso, consentendo di produrre un output di lunghezza arbitraria.

XOR nelle modalità OFB e CFB

OFB: keystream = AES(AES(AES(IV)...)). Plaintext XOR keystream = ciphertext. CFB: ciphertext block = plaintext XOR AES(previous_ciphertext). Entrambe usano XOR come passaggio di miscelazione.

Confusione e diffusione tramite XOR + S-Box

La confusione di Shannon: le S-box (SubBytes) rendono complessa la relazione tra chiave e ciphertext. La diffusione: ShiftRows+MixColumns distribuisce l'influenza di ogni byte. XOR collega entrambe le proprietà alla chiave.

Non crei mai la tua crittografia

Comprendere il ruolo di XOR spiega perché i progetti amatoriali di cifrari falliscono: usano XOR senza livelli non lineari. Senza S-box e diffusione, i cifrari basati su XOR sono algebricamente semplici da compromettere.

Verifica rapida

Quale operazione AES applica direttamente XOR allo stato con la chiave di round?

Riepilogo

Ora comprende il ruolo di XOR nei cifrari reali. Nel prossimo argomento studieremo le funzioni hash, iniziando da MD5 fino ad arrivare a SHA-256.

Domande Frequenti

La lezione «XOR dentro AES e nei cifrari a flusso» è gratuita?

Sì — il testo completo di «XOR dentro AES e nei cifrari a flusso» è 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 Cryptology Academy, passa a CoddyKit PRO. Il corso Cryptology Academy include 4 lezioni in totale.

Cosa imparerò in «XOR dentro AES e nei cifrari a flusso»?

Segua l'uso di XOR negli algoritmi di cifratura reali. Eserciti Cryptology 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 Cryptology Academy?

Non è richiesta alcuna esperienza precedente. Cryptology 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 4 di 4.

Quanto tempo richiede la lezione «XOR dentro AES e nei cifrari a flusso»?

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 Cryptology Academy?

Sì. Ogni lezione Cryptology 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. Ripasso delle operazioni bitwise
  2. Cifratura XOR e one-time pad
  3. Perché XOR da solo non è sicuro
  4. XOR dentro AES e nei cifrari a flusso
← Torna a Cryptology Academy