Un primo modo per complicare le cose:

Invece di modificare l'alfabeto spostando le lettere a destra di n posti (cioè con una permutazione circolare), potremmo modificare l'alfabeto riordinando le lettere in un modo qualsiasi. Per esempio:

X B Y M O P W C E D F G H U S A Q Z R V T N J K I L

Questo aumenta in modo notevole il numero degli alfabeti possibili. Infatti in questo modo abbiamo a disposizione 1x2x3x4x...x25x26 alfabeti (contro i 26 alfabeti di Cesare possibili).

Siccome s'incontrano spesso dei numeri del tipo 1x2x3x..x(n-1)xn, è stata introdotta una notazione speciale per indicarli: n! := 1x2x3x...x(n-1)xn (si legge n fattoriale).

E' chiaro che 26! è molto più grande di 26. Questo però non ci mette a riparo dalla crittoanalisi sulla frequenza delle lettere e non risolve il problema della trasmissione della chiave segreta.

Un secondo modo per complicare le cose:

Torniamo agli alfabeti di Cesare. La chiave questa volta non sarà un numero ma una parola, per esempio "poco". Sotto il testo da cifrare si ricopia la parola chiave, tante volte quanto è necessario per coprire tutto il testo:

M a n d a r e  i  r i n f o r z i  d o m a n i   s e r a

p o c o p o c  o p o c o p o  c o p o c o  p o c o

Si cifra ogni lettera del messaggio con l'alfabeto di Cesare che inizia con la lettera della parola chiave che compare sotto ad essa.

Per complicare ulteriormente, come parola chiave si può usare una successione casuale di lettere. Possiamo poi usare anche altri alfabeti oltre quelli di Cesare (introducendo dei simboli nella chiave, per esempio "poco+" dove + indica un determinato alfabeto non di Cesare). Un tale codice è più sicuro di un codice di Cesare (rimane sempre il problema della sicurezza nella trasmissione della chiave).avanti02.gif (9574 bytes)

fleche_retour.gif (1377 bytes)