begin process at 2012 05 27 15:16:53
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

.Net

 > CRYPTAGE D'UN TEXTE

CRYPTAGE D'UN TEXTE


 Information sur la source

Note :
5,25 / 10 - par 4 personnes
5,25 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :.Net Niveau :Débutant Date de création :24/03/2003 Date de mise à jour :26/03/2003 03:02:47 Vu :5 236

Auteur : THEREALKILLER

Ecrire un message privé
Site perso
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

 Description

Ca crypte et decrypte  

Source

  • #include <stdio.h> //scanf et printf
  • #include <string.h> // //strcpy copie une chaine meme le caractere nul
  • #include <stdlib.h> //exit
  • #include <fstream.h> //fichier ouverture fermeture
  • #include <iostream.h> //cin.get
  • #include <windows.h> //sleep
  • #include <time.h> // l'heure
  • #define tompon while (cin.get()!='\n');
  • void sortir(); //quitter le prog
  • void erreur(char *message);
  • void decrypte();
  • void suprime();
  • void cryptealpha();
  • void crypteascii();
  • void crerfichier();
  • void crerfichiercrypter();
  • char sauvnomfichierascii[30];
  • char sauvnomfichier[30];
  • char fichier[30]; //nom des fichiers
  • char txt[100]; //txt a crypte
  • char crypte[100]; //txt crypte
  • char cryptage[20]; //cle de crypatge
  • int veriftypefichier=0;
  • void main()
  • {
  • char reponse;
  • printf("Faites votre choix \n");
  • do
  • {
  • printf("(1) Cryptage en mode alphanumerique\n");
  • printf("(2) Cryptage en mode ascii\n");
  • printf("(3) Decrypte\n");
  • printf("(4) Quitter le prog\n");
  • printf("(5) Suprimer le fichier non crypter \n");
  • printf("Choix : ");
  • cin.get(reponse);
  • tompon;
  • switch (reponse)
  • {
  • case '1':
  • cryptealpha();
  • break;
  • case '2':
  • crypteascii();
  • break;
  • case '3':
  • decrypte();
  • break;
  • case '4' :
  • sortir();
  • break;
  • case '5':
  • suprime();
  • break;
  • }
  • }while(1);
  • }
  • void cryptealpha()
  • {
  • veriftypefichier=1;
  • int i, j, x, y, z, longueur, lon;
  • printf("Saisir le nom du fichier :");
  • cin.getline(fichier,20);
  • strcpy(sauvnomfichier,fichier);
  • printf("Entrez la phrase a coder : ");// saisie des données à coder
  • gets(txt);
  • crerfichier();
  • printf("Entrez la clef de cryptage : "); // saisie de la clef de codage
  • gets(cryptage);
  • longueur = strlen(txt); // prend la longueur de la phrase tappée
  • lon=strlen(cryptage); // prend la longueur de la clef
  • j=-1;
  • for ( i=0; i<longueur; i++ ) // boucle qui code
  • {
  • if ( j >= lon-1 ) // reprend au debut de la clef
  • {
  • j=-1;
  • }
  • if(txt[i]!=' ') // code un caractère
  • {
  • j++;
  • y = int(cryptage[j])-97;
  • z = int(txt[i])-97;
  • x = y+z; // donne la valeur entière
  • if ( x > 25 )
  • {
  • x = x-26;
  • }
  • txt[i] = char(x)+97;
  • }
  • }
  • strcpy(crypte,txt);
  • printf("voici la chaine codee : %s",crypte);
  • tompon;
  • crerfichiercrypter();
  • }
  • void crerfichier()
  • {
  • if(veriftypefichier==1)
  • {
  • strcat(sauvnomfichier,"alpha.txt");
  • ofstream sav=(sauvnomfichier);
  • if (fichier==NULL)
  • {
  • erreur(" d'ecriture dans le fichier ");
  • }
  • sav<<txt;
  • sav.close(); //fermeture du fichier
  • }
  • else
  • {
  • strcat(fichier,"ascii.txt");
  • ofstream sav=(fichier);
  • if (fichier==NULL)
  • {
  • erreur(" d'ecriture dans le fichier ");
  • }
  • sav<<txt;
  • sav.close(); //fermeture du fichier
  • }
  • //creation de l'objet sav puis ouvre le fichier
  • }
  • void crerfichiercrypter()
  • {
  • if(veriftypefichier==1)
  • {
  • strcat(fichier,"cryptealpha.txt");
  • ofstream cry=(fichier);
  • cry<<crypte;
  • cry.close();
  • }
  • else
  • {
  • strcat(sauvnomfichierascii,"crypteascii.txt");
  • ofstream cry=(sauvnomfichierascii);
  • cry<<crypte;
  • cry.close();
  • }
  • }
  • void crypteascii()
  • {
  • int z=0;
  • int cpt=0;
  • int i,j;
  • i=j=0;
  • printf("Saisir le nom du fichier\n");
  • cin.getline(fichier,20);
  • strcpy(sauvnomfichierascii,fichier);
  • printf("Entrez la phrase a coder : "); // saisie des données à coder
  • gets(txt);
  • crerfichier();
  • printf("Saisir la cle de cryptage :");
  • gets(cryptage);
  • cpt=strlen(txt);
  • for(i=0,j=0;i<cpt;i++,j++)
  • {
  • if(cryptage[j]=='\0')
  • {
  • j=0;
  • }
  • crypte[i]=txt[i]+cryptage[j];
  • }
  • crypte[i]='\0';
  • printf("Texte cryptee ===>>> %s\n",crypte);
  • crerfichiercrypter();
  • }
  • void decrypte()
  • {
  • int longueur=0;
  • int lon=0;
  • int y,z,x;
  • int strcyptage=0;
  • int cpt=0;
  • char c;
  • int i,j,l;
  • int a=0;
  • int mode=0;
  • i=j=l=0;
  • printf("Quel fichier voulez ouvrir? Fichier :");
  • scanf("%s",&fichier);
  • l=strlen(fichier);
  • printf("(1)Mode Alphabetique (2)Mode Ascii :");
  • scanf("%d",&mode);
  • if(mode==1)
  • {
  • strcat(fichier,"cryptealpha.txt");
  • ifstream charg (fichier);
  • if (fichier==NULL)
  • {
  • erreur("de lecture");
  • }
  • while((c = charg.get()) != EOF)
  • {
  • crypte[cpt] = c;
  • cout.put(c);
  • cpt++;
  • }
  • tompon;
  • charg.close();
  • printf("saisir la clef de decodage : ");// saisie de la clef de décodage
  • scanf("%s",&cryptage);
  • //longueur = strlen(crypte);
  • lon = strlen(cryptage); // prend la longueur de la clef
  • j=-1;
  • for ( i=0; i<cpt; i++ ) // boucle qui décode
  • {
  • if ( j >= lon-1 ) // reprend au debut de la clef
  • {
  • j=-1;
  • }
  • if(crypte[i]!=' ') // décode un caractère
  • {
  • j++;
  • y = int(cryptage[j])-97;
  • z = int(txt[i])-97;
  • x = z-y;
  • if ( x < 0 )
  • {
  • x = 26+x;
  • }
  • crypte[i] = char(x)+97; // affecte la valeur décodée dans le tableau
  • }
  • }
  • printf("code dechiffre : ");
  • printf("%s \n", crypte); // affiche les données décodées
  • }
  • else
  • {
  • strcat(fichier,"crypteascii.txt");
  • ifstream charg (fichier);
  • if (fichier==NULL)
  • {
  • erreur("de lecture");
  • }
  • while((c = charg.get()) != EOF)
  • {
  • crypte[cpt] = c;
  • cout.put(c);
  • cpt++;
  • printf("%s",&crypte);
  • }
  • tompon;
  • charg.close();
  • printf("Saisir cle de decryptage : ");
  • scanf("%s",&cryptage);
  • strcyptage=strlen(cryptage);
  • for(i=0,j=0;i<cpt;i++,j++)
  • {
  • if(cryptage[j]=='\0')
  • {
  • j=0;
  • }
  • crypte[i]-=cryptage[j];
  • }
  • printf("Texte decrypte ===)->> %s",&crypte);
  • printf("\n\n\n");
  • for(a=0;a<strcyptage;a++)
  • cryptage[a]='\0';
  • for(a=0;a<cpt;a++)
  • crypte[a]='\0';
  • }
  • }
  • void erreur(char *message)
  • {
  • printf("Erreur",message);
  • exit(-1);
  • }
  • void suprime()
  • {
  • char filename[30];
  • printf("Saisir le nom du fichier a effacer :\n");
  • gets(filename);
  • if(veriftypefichier==1)
  • {
  • strcat(filename,"cryptealpha.txt");
  • }
  • else
  • {
  • strcat(filename,"crypteascii.txt");
  • }
  • remove(filename); //Suppression du fichier
  • }
  • void sortir()
  • {
  • time_t H;
  • time(&H);
  • cout<<""<<(ctime(&H));
  • int i=0;
  • printf("A la prochaine |:p)[< \n");
  • for(i=0;i<30000;i++)
  • {
  • Sleep(50/100);
  • printf("/\r");
  • Sleep(50/100);
  • printf("-\r");
  • Sleep(50/100);
  • printf("|\r");
  • printf("-\r");
  • }
  • exit(-2);
  • }
#include <stdio.h> //scanf et printf
#include <string.h> // //strcpy copie une chaine meme le caractere nul
#include <stdlib.h> //exit
#include <fstream.h>    //fichier ouverture fermeture
#include <iostream.h>  //cin.get
#include <windows.h>	  //sleep
#include <time.h>   // l'heure


#define tompon while (cin.get()!='\n');

void sortir(); //quitter le prog
void erreur(char *message);
void decrypte();
void suprime();
void cryptealpha();
void crypteascii();
void crerfichier();

void crerfichiercrypter();

char sauvnomfichierascii[30];
char sauvnomfichier[30];
char fichier[30]; //nom des fichiers
char txt[100]; //txt a crypte
char crypte[100]; //txt crypte
char cryptage[20]; //cle de crypatge
int  veriftypefichier=0;


void main()
{



	char reponse;



        printf("Faites votre choix \n");


         do
        {
         printf("(1) Cryptage en mode alphanumerique\n");

        printf("(2) Cryptage en mode ascii\n");

	printf("(3) Decrypte\n");

	printf("(4) Quitter le prog\n");

	printf("(5) Suprimer le fichier non crypter \n");

	printf("Choix : ");

        cin.get(reponse);

	    tompon;

        switch (reponse)
		{
		                case '1':
			cryptealpha();
			break;

			 case '2':
			 crypteascii();
			 break;


			case '3':
			decrypte();
			break;

			case '4' :
			sortir();
			break;

			case '5':
			suprime();
			break;

		}

        }while(1);



}


void cryptealpha()
{
	veriftypefichier=1;

	int i, j, x, y, z, longueur, lon;

	printf("Saisir le nom du fichier :");

    cin.getline(fichier,20);


	strcpy(sauvnomfichier,fichier);


	printf("Entrez la phrase a coder : ");// saisie des données à coder
	gets(txt);



	crerfichier();
	printf("Entrez la clef de cryptage : "); // saisie de la clef de codage
	gets(cryptage);

	longueur = strlen(txt); // prend la longueur de la phrase tappée
	lon=strlen(cryptage); // prend la longueur de la clef
	j=-1;

	for ( i=0; i<longueur; i++ ) // boucle qui code
	{
		if ( j >= lon-1 ) // reprend au debut de la clef
		{
			j=-1;
		}


		 if(txt[i]!=' ') // code un caractère
		 {
			j++;
			y = int(cryptage[j])-97;

			z = int(txt[i])-97;

			x = y+z; // donne la valeur entière
			if ( x > 25 )
			{
				x = x-26;
			}
			txt[i] = char(x)+97;
			
		}

	}
		strcpy(crypte,txt);
	
	printf("voici la chaine codee : %s",crypte); 

	tompon;
	crerfichiercrypter();

}






void crerfichier()
{

	if(veriftypefichier==1)
	{
	strcat(sauvnomfichier,"alpha.txt");
	ofstream sav=(sauvnomfichier);
		if (fichier==NULL)
		{
			erreur(" d'ecriture dans le fichier ");
		}
		sav<<txt;


		sav.close(); //fermeture du fichier

	}
	else
	{
	strcat(fichier,"ascii.txt");
	ofstream sav=(fichier);
	if (fichier==NULL)
	{
		erreur(" d'ecriture dans le fichier ");
	}
	sav<<txt;


	sav.close();		//fermeture du fichier

	}

	//creation de l'objet sav puis ouvre le fichier

	

	
}

void crerfichiercrypter()
{
	if(veriftypefichier==1)
	{
	strcat(fichier,"cryptealpha.txt");
	ofstream cry=(fichier);
	cry<<crypte;
	cry.close();
	
	}
	else
	{
	strcat(sauvnomfichierascii,"crypteascii.txt");
	ofstream cry=(sauvnomfichierascii);
	cry<<crypte;
	cry.close();
	}

		

		

}

void crypteascii()
{

	int z=0;
	int cpt=0;
	int i,j;
	i=j=0;



	printf("Saisir le nom du fichier\n");

    cin.getline(fichier,20);
	strcpy(sauvnomfichierascii,fichier);
	

	printf("Entrez la phrase a coder : "); // saisie des données à coder
	gets(txt);

	crerfichier();

	printf("Saisir la cle de cryptage :");
	gets(cryptage);



		cpt=strlen(txt);


	for(i=0,j=0;i<cpt;i++,j++)
	{
		if(cryptage[j]=='\0')
		{
			j=0;
		}

		crypte[i]=txt[i]+cryptage[j];

	}



	crypte[i]='\0';



	printf("Texte cryptee  ===>>> %s\n",crypte);

	crerfichiercrypter();
}





void decrypte()
{
	int longueur=0;
	int lon=0;
	int y,z,x;

	int strcyptage=0;
    int cpt=0;
	char c;
	int i,j,l;

	int a=0;
	int mode=0;

	i=j=l=0;
	


	printf("Quel fichier voulez ouvrir? Fichier :");


	scanf("%s",&fichier);
	l=strlen(fichier);


	printf("(1)Mode Alphabetique  (2)Mode Ascii :");
	
	scanf("%d",&mode);
	
	if(mode==1)
	{

	strcat(fichier,"cryptealpha.txt");
		
		ifstream charg (fichier);

			if (fichier==NULL)
			{
			erreur("de lecture");
			}
				while((c = charg.get()) != EOF)
				{
				crypte[cpt] = c;
				cout.put(c);
				cpt++;
				}

				tompon;
				charg.close();

printf("saisir la clef de decodage : ");// saisie de la clef de décodage

				
	scanf("%s",&cryptage);
			

		//longueur = strlen(crypte);

	lon = strlen(cryptage); // prend la longueur de la clef
				j=-1;

	for ( i=0; i<cpt; i++ ) // boucle qui décode
				{
	if ( j >= lon-1 ) // reprend au debut de la clef
			{
			j=-1;
			}
		if(crypte[i]!=' ') // décode un caractère
		{
							j++;
							y = int(cryptage[j])-97;
							z = int(txt[i])-97;
							x = z-y;
							if ( x < 0 )
								{
									x = 26+x;
								}
crypte[i] = char(x)+97; // affecte la valeur décodée dans le tableau
						
		}
}

				
printf("code dechiffre : ");

printf("%s \n", crypte); // affiche les données décodées

	}
	else
	{
		strcat(fichier,"crypteascii.txt");


		ifstream charg (fichier);

		if (fichier==NULL)
		{
		erreur("de lecture");
		}



	while((c = charg.get()) != EOF)
	{
		crypte[cpt] = c;
		cout.put(c);
		cpt++;
		printf("%s",&crypte);
	}

		tompon;
	charg.close();

	printf("Saisir cle de decryptage : ");
	
	scanf("%s",&cryptage);
	strcyptage=strlen(cryptage);

	for(i=0,j=0;i<cpt;i++,j++)
	{
		if(cryptage[j]=='\0')
		{
			j=0;
		}

		crypte[i]-=cryptage[j];


	}
		printf("Texte decrypte ===)->> %s",&crypte);
		printf("\n\n\n");

		for(a=0;a<strcyptage;a++)
			cryptage[a]='\0';
		for(a=0;a<cpt;a++)
			crypte[a]='\0';

}

}

void erreur(char *message)
{
    printf("Erreur",message);
        exit(-1);
}



void suprime()
{
	char filename[30];

	printf("Saisir le nom du fichier a effacer :\n");
	gets(filename);

	if(veriftypefichier==1)
	{
	strcat(filename,"cryptealpha.txt");
	}
		else
		{
		strcat(filename,"crypteascii.txt");
		}

	
	remove(filename); //Suppression du fichier
}




void sortir()
{

	time_t H;
	time(&H);

    cout<<""<<(ctime(&H));



	int i=0;
    printf("A la prochaine |:p)[< \n");

	for(i=0;i<30000;i++)
	{
		Sleep(50/100);
		printf("/\r");
		Sleep(50/100);
		printf("-\r");
		Sleep(50/100);
		printf("|\r");
		printf("-\r");

	}

    exit(-2);
}



 Conclusion

Ya encore qqs modif a faire bien sur mais ca tourne au moin . C deja ca !


 Sources du même auteur

TUTORIAL BTS 2EME ANN&#201;E
Source avec Zip REPERTOIRE V2
MOYENNE
HEURE ET LA DATE
CALCULETTE

 Sources de la même categorie

Source avec Zip Source avec une capture ANALYSEUR LEXICAL par Donald180v
Source avec Zip Source avec une capture MAP_MAKER_JEU par seekplus
Source avec Zip Source avec une capture Source .NET (Dotnet) EMISSION D'UN OCTET SUR LE PORT SÉRIE - CLASSE SERIALPORT par jmchatelet01
Source avec Zip Source .NET (Dotnet) RESOLV EQU DE DEGRES N par darckangel731
Source avec Zip Source avec une capture Source .NET (Dotnet) INTEROP XCHAT / .NET : CHARGEUR DE PLUGINS MANAGÉS par TeBeCo

Commentaires et avis

Commentaire de BlackGoddess le 03/04/2003 23:57:34

jy pige rien, tu utilise quel algo de codage/decodage ?

Commentaire de THEREALKILLER le 04/04/2003 01:00:37

un algo bidon . En fait il y en a deux . Un ki crypte en alphabétique et lautre en ascii. Le nom des fonctions est qd meme asssez explicite non ? :) Tu utlise une clé pour crypte, ke tu saisie . C'est une substitution par clé sa s'appel. par exmple : a=97 en ascci la clé :b=98 ca va donne c par exemple ! f le test tu verra ce ke ca donne . Si ta dautre kestion nesite pas au cas ou je fus pas clair.

Commentaire de larsson le 27/04/2003 03:48:20

bonne idee pas mal au faite tu peut mieux faire en utilisant la crypto symetrique la même cle qui crypte et qui decrypte!

Commentaire de pdq le 21/01/2004 03:14:14

merci ta source ma ete d'un utiliser folle pour un programme

simple mais eficace ;-)

Commentaire de THEREALKILLER le 03/03/2004 01:05:55

No pb pdq . Ca fait toujours plaisir les feelback , merci .
Et larsson c  la meme clef ki crypte et decrypte , ta du te gourer qqpart ...

Commentaire de StevenJLMunn le 28/05/2004 23:42:47

YA RIEN QUI MARCHE CHEZ MOI!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
J'ai compilé ton prog en Visual C++.
Et la cypteur et decodeur ne marche pas du tout.

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,702 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales