Il cifrario affine è una forma di cifratura monoalfabetica in cui ogni lettera del testo in chiaro viene mappata su una lettera cifrata attraverso una combinazione di funzioni matematiche affine. Questo cifrario è una variante del cifrario di sostituzione classico e può essere descritto da un'equazione matematica del tipo:
$*c= E(m)=(am+b) \\text{ } mod \\text{ } |M|$*
dove:
$*E(m)*$ rappresenta il testo cifrato → $*c*$$*m*$ rappresenta il testo in chiaro (una lettera dell'alfabeto $*M*$).$*a*$ e $*b*$ sono coefficienti nella funzione affine. $*a*$ deve essere scelto in modo che sia coprimo con $*|M|*$ (il numero di simboli nell'alfabeto), e $*b*$ è un valore intero. Se $*a*$ non fosse coprimo con $*|M|$* allora la funzione non sarebbe più iniettiva e ci sarebbe il rischio che due messaggi diversi finiscano per essere cifrati nello stesso modo rendendo impossibile la decifrazione, ossia $*E(m_1)*$ = $*E(m_2)$,* si noti che, a questo punto, non è più possibile stabilire da $*c*$ se il testo in chiaro di partenza fosse $*m_1*$ o $*m_2$.*$mod |M|$ indica l'operazione modulo, cioè il resto della divisione per $*M$.*Per decifrare il messaggio cifrato, viene utilizzata un'equazione affine inversa:
$*D(c) = a^{-1}⋅(c−b) \\text{ } mod \\text{ } |M|*$
dove:
$*D(c)*$ rappresenta il testo decifrato.$*c*$ è il testo cifrato corrispondente a $*m*$.$*a^{−1}*$ è l'inverso moltiplicativo di $*a*$ modulo $*M*$.
In altre parole, è un numero tale che $*1 = a⋅a^{−1} mod |M|*$.$*a*$ = d e $*a^{−1}*$ = j su alfabeto inglese.Alcuni punti chiave riguardo al cifrario affine:
$*a*$ e $*b*$.
Per garantire la sicurezza del cifrario, è importante scegliere una chiave robusta.$*a*$ e $*b*$, il cifrario affine ha uno spazio delle chiavi più ampio rispetto a un semplice cifrario di sostituzione, il che lo rende più resistente agli attacchi di forza bruta.Il cifrario affine è un esempio di cifrario classico che può essere utilizzato per illustrare i concetti di crittografia basata su funzioni matematiche.