Cifrari di….Cesare e Vigenere

Cesare

In crittografia il cifrario di Cesare è uno dei più antichi algortmi crittografici di cui si abbia traccia storica. È un cifrario a sostituzione monoalfabetica in cui ogni lettera del testo in chiaro è sostituita nel testo cifrato dalla lettera che si trova un certo numero di posizioni dopo nell’alfabeto. Questi tipi di cifrari sono detti anche cifrari a sostituzione o cifrari a scorrimento a causa del loro modo di operare: la sostituzione avviene lettera per lettera, scorrendo il testo dall’inizio alla fine.

esempio in c++

#include <stdio.h>
#include <string.h>
void cesare (char s,int salto)
{
char alfabeto[21]={‘a’,’b’, ‘c’, ‘d’ ,’e’ ,’f’ ,’g’ ,’h’ ,’i’ ,’l’ ,’m’ ,’n’, ‘o’, ‘p’ ,’q’, ‘r’, ‘s’ ,’t’ ,’u’, ‘v’ ,’z’} ;
int i;
for(i=0;i<21;i++)
{
if(s==alfabeto[i])
{
printf (“%c”,alfabeto[i+salto]);
break;
}
}
}
int main()

{
char cript[100];
int S,lung,i;
printf(“Inserisci la parola da criptare > “);
scanf(“%­s”,cript);
S=rand()%21; //S è il salto che dovrà eseguire nella criptazione
lung=strlen(cript);
for (i=0;i<lung;i++)
{
cesare(cript[i],S);
}
return 0;
}

 

Vigenere

Il cifrario di Vigenere è un metodo per crittografare caratteri. Consiste nel far valere come salto la somma dei numeri dei caratteri presenti nella parola da crittografare. Di conseguenza ogni carattere avrà un salto diverso.