Tutti gli articoli

Analisi di frequenza del testo: a cosa serve contare le ripetizioni delle parole

L'analisi di frequenza del testo conta quante volte ogni parola o carattere compare in un testo. La crittografia moderna, comprese le tecniche pensate per resistere proprio a questo tipo di analisi, nasce in buona parte nell'Italia del Rinascimento.

Leon Battista Alberti e il cifrario polialfabetico

L'architetto e umanista fiorentino Leon Battista Alberti descrisse nel XV secolo un disco cifrante che alternava più alfabeti di sostituzione all'interno dello stesso messaggio — il primo cifrario polialfabetico documentato. Cambiando alfabeto durante la cifratura, il metodo di Alberti appiattisce la distribuzione di frequenza delle lettere, rendendo l'analisi di frequenza classica molto meno efficace rispetto a un semplice cifrario a sostituzione monoalfabetica. Per questo Alberti è spesso definito "il padre della crittografia occidentale".

Perché la "E" resta comunque un buon punto di partenza

Nei testi italiani ordinari, non cifrati con tecniche polialfabetiche, la "E" resta la lettera più frequente, seguita da vocali come "A" e "I" — una conseguenza delle tante desinenze verbali e nominali che terminano in vocale. È proprio questa regolarità prevedibile che un cifrario monoalfabetico lascia intatta, ed è quello che Alberti cercò di eliminare secoli prima che l'analisi di frequenza diventasse una disciplina formalizzata.

Frequenza delle lettere e crittoanalisi classica

I cifrari a sostituzione semplici non cambiano questa distribuzione di frequenze, ma riordinano solo quali lettere corrispondono a quali. Confrontando la distribuzione di frequenza di un testo cifrato con quella nota della lingua originale, si può recuperare la corrispondenza dei caratteri e violare il cifrario senza provare tutte le chiavi possibili — a patto che il cifrario sia monoalfabetico, non polialfabetico come quello di Alberti.

A cosa serve

  • Cogliere rapidamente i temi principali di un documento lungo dalle sue parole più frequenti.
  • Verificare se un testo ha una distribuzione naturale delle lettere (esercizi didattici di crittografia).
  • Analizzare la ripetizione delle parole per l'ottimizzazione SEO del testo di una pagina.

La legge di Zipf

Nelle lingue naturali, la frequenza di una parola è inversamente proporzionale al suo rango nell'elenco ordinato per frequenza decrescente: la parola più frequente ricorre circa il doppio della seconda per frequenza, il triplo della terza, e così via. Questa regolarità (legge di Zipf) è talmente stabile per un testo normale che una deviazione significativa da essa è un segnale: il testo potrebbe essere generato artificialmente, fortemente spam di parole chiave, o scritto in una lingua diversa da quella prevista.

Prova lo strumento