ciao
usa una chiave numerica che non va salvata nel db (ma ricordata)
ti faccio un esempio che forse è meglio
sia la chiave 3456
la parola MRWM
prende il primo carattere M codice asci 77, il primo numero della chiave è 3 => 77+3=80 corrispondente a P
R asci 82 => 82+4= 86 => W
W asci 87 => 87+5=92 essendo maggiore di 90 salta 97 => a
per cui MRWM diventa PWaP
se lo ritrovo avevo fatto anche per testi lunghi (es divina commedia) e lo posto, con questo la lunghezza della chiave deve essere uguale alla lunghezza della parola e senza salti, in pratica con quello che non trovo usato l'ultimo numero della chiave riparte a "spostare" dal primo.
è una codifica un po' piu difficile da decodificare di quella per semplice sostituzione in quanto, osere dire casualmente, es. la E una volta risulta G e un'altra L, cioè non è detto che alla E corrisponda sempre lo stesso carattere