Cryptology Academy · Lezione

Analisi delle frequenze e fondamenti di crittoanalisi

ViolI i cifrari classici utilizzando le statistiche sulla frequenza delle lettere.

Lezione 4 di 413 passaggi

Analisi delle frequenze e fondamenti di crittoanalisi è 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

L'analisi delle frequenze consiste nell'utilizzare gli schemi statistici del linguaggio per violare i cifrari a sostituzione. Fu scoperta nell'850 d.C. ed è ancora rilevante oggi.

Frequenze delle lettere inglesi

Le lettere inglesi più frequenti (approssimativamente) sono: E(12,7%), T(9,1%), A(8,2%), O(7,5%), I(7,0%), N(6,7%). Se nel testo cifrato vede comparire «X» il 12% delle volte, è probabile che X rappresenti E.

Costruzione di una tabella delle frequenze

from collections import Counter def freq_table(text): letters = [c for c in text.upper() if c.isalpha()] counts = Counter(letters) total = len(letters) return {k: v/total for k,v in counts.most_common()}

Bigrammi e trigrammi

Bigrammi inglesi comuni: TH, HE, IN, ER, AN. Trigrammi comuni: THE, AND, ING, ION. Questi schemi sopravvivono ai cifrari a sostituzione e accelerano la decifrazione.

Indice di coincidenza (IoC)

IoC = Σ(n_i * (n_i-1)) / (N*(N-1)). Per l'inglese IoC ≈ 0,065. Per il testo casuale IoC ≈ 0,038. Un IoC elevato indica una sostituzione monoalfabetica.

Applicazione dell'IoC a Vigenère

Provare lunghezze della chiave da 1 a 20. Per ogni lunghezza k, suddividere il testo cifrato in k gruppi. Calcolare l'IoC medio. La lunghezza effettiva della chiave produce l'IoC più vicino a 0,065.

Attacco a Cesare tramite le frequenze

Per un cifrario di Cesare: trovare la lettera più frequente nel testo cifrato (probabilmente E). Shift = (most_frequent - ord('E')) mod 26. Decifrare e verificare la leggibilità.

Schemi delle parole

Le parole brevi rivelano degli schemi: una parola di una sola lettera è generalmente «A» o «I». Una parola di tre lettere con lo schema iniziale «the_» è spesso «the». Questi indizi restringono rapidamente le possibilità della sostituzione.

Procedura manuale di attacco

1. Contare le frequenze. 2. Associare le lettere cifrate più frequenti alle lettere inglesi più frequenti (E,T,A,O,I). 3. Utilizzare bigrammi e schemi delle parole per colmare le lacune. 4. Ripetere il processo finché il testo non diventa leggibile.

Rilevanza moderna

L'analisi delle frequenze attacca la crittografia moderna quando gli sviluppatori utilizzano in modo errato le primitive (per esempio, la modalità ECB rivela gli schemi dei blocchi). Comprendere il principio previene gli errori di progettazione.

Crittoanalisi automatizzata

Strumenti come dcode.fr e quipqiup.com automatizzano gli attacchi ai cifrari a sostituzione usando schemi basati sui dizionari e algoritmi di hill climbing, riuscendo a violare in pochi secondi cifrari di 100 caratteri.

Verifica rapida

Che cosa indica su un testo cifrato un Indice di coincidenza elevato (≈0,065)?

Riepilogo

Ottimo lavoro! L'analisi delle frequenze è un pilastro della crittoanalisi. Ora passiamo alla crittografia moderna: sistemi numerici e aritmetica modulare.
Gratis per iniziare

Impara Cryptology Academy con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
67
Lezioni
261

Domande Frequenti

La lezione «Analisi delle frequenze e fondamenti di crittoanalisi» è gratuita?

Sì — il testo completo di «Analisi delle frequenze e fondamenti di crittoanalisi» è 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 «Analisi delle frequenze e fondamenti di crittoanalisi»?

ViolI i cifrari classici utilizzando le statistiche sulla frequenza delle lettere. 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 «Analisi delle frequenze e fondamenti di crittoanalisi»?

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. Meccanismi del cifrario di Cesare
  2. Cifrari Atbash e affini
  3. Cifrari di Vigenère e polialfabetici
  4. Analisi delle frequenze e fondamenti di crittoanalisi
← Torna a Cryptology Academy