begin process at 2010 03 15 06:40:58
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Application

 > CRYPTOGRAPHIE PAR SUBSTITUTION POLYALPHABETIQUE (RANDRIANO)

CRYPTOGRAPHIE PAR SUBSTITUTION POLYALPHABETIQUE (RANDRIANO)


 Information sur la source

Note :
Aucune note
Catégorie :Application Classé sous :polyalphabetique, randriano, cryptographie Niveau :Initié Date de création :19/04/2007 Date de mise à jour :05/05/2007 16:35:55 Vu / téléchargé :3 806 / 279

Auteur : randriano

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note


 Description

J'ai beau cherché un programme de cryptographie par substitution alphabétique mais j'ai pas trouvé, il y en a beaucoup sur Vigénère et RSA.
Programmé sous C++ Builder
1) Primo, il permet de crypter/décrypter une chaîne de caractères
2) Secundo, il permet de crypter/décrypter des fichiers texte (*.txt)

Pour ceux qui ne connaissent pas cet algorithme, il est basé sur une matrice appelée abaque:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
B C D E F G H I J K L M N O P Q R S T U V W X Y Z A
C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
E F G H I J K L M N O P Q R S T U V W X Y Z A B C D
F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
G H I J K L M N O P Q R S T U V W X Y Z A B C D E F
H I J K L M N O P Q R S T U V W X Y Z A B C D E F G
I J K L M N O P Q R S T U V W X Y Z A B C D E F G H
J K L M N O P Q R S T U V W X Y Z A B C D E F G H I
K L M N O P Q R S T U V W X Y Z A B C D E F G H I J
L M N O P Q R S T U V W X Y Z A B C D E F G H I J K
M N O P Q R S T U V W X Y Z A B C D E F G H I J K L
N O P Q R S T U V W X Y Z A B C D E F G H I J K L M
O P Q R S T U V W X Y Z A B C D E F G H I J K L M N
P Q R S T U V W X Y Z A B C D E F G H I J K L M N O
Q R S T U V W X Y Z A B C D E F G H I J K L M N O P
R S T U V W X Y Z A B C D E F G H I J K L M N O P Q
S T U V W X Y Z A B C D E F G H I J K L M N O P Q R
T U V W X Y Z A B C D E F G H I J K L M N O P Q R S
U V W X Y Z A B C D E F G H I J K L M N O P Q R S T
V W X Y Z A B C D E F G H I J K L M N O P Q R S T U
W X Y Z A B C D E F G H I J K L M N O P Q R S T U V
X Y Z A B C D E F G H I J K L M N O P Q R S T U V W
Y Z A B C D E F G H I J K L M N O P Q R S T U V W X
Z A B C D E F G H I J K L M N O P Q R S T U V W X Y
Le code vous l'expliquera!
Ce programme est aussi un moyen d'apprendre à utiliser un SPLASHSCREEN (voir le fichier Crypto.cpp).


 Conclusion

Il y a deux classes employées ici
1) PolyAlphabetique.h => pour le chiffrement de chaînes
2) PolyAlphabetique2.h => pour le chiffrement des fichiers texte
Cette 2ème classe est plus riche car son abaque est une matrice 162x162 des caractères reconnus (accentués, cedille).

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

19 avril 2007 12:54:45 :
J'ai posté le code sans le zip donc je le reposte!
05 mai 2007 16:35:56 :
Classe TAbaque et utilisation Ansistring!

 Sources du même auteur

Source avec Zip PETIT CODE DE LEÇON D'ANGLAIS
Source avec Zip Source avec une capture CHAT UTILISANT 2 SERVEURS
Source avec Zip TRANSLATION HOMOTHETIE ROTATION
Source avec Zip PINGER DES HOTES D'UNE BD MYSQL + GRAPHIQUE
Source avec Zip CUBIC SPLINE

 Sources de la même categorie

CONSTRUCTION D'UNE AUTOMATE FINIS DETERMINISTE par skible
COMPILATEUR BF VERS BF-BYTECODE par Davy974
GESTIONNAIRE DE BIBLIOTHEQUE par eishtein
FICHIER ALBUM MUSICAL par imenouuuuuuuuuche
LOUISDU81 HTTP EDITOR par louisdu81

 Sources en rapport avec celle ci

Source avec Zip UTILISATION DE GRANDS ENTIERS EN C++ BUILDER par randriano
Source avec Zip CRYPTOGRAPHIE DES FICHIERS par n2klinux
Source avec une capture CODAGE RSA SUR 1024 BITS par jourgun
Source avec Zip Source avec une capture CRYPTAGE DE FICHIER EN XOR, INTERFACE WIN32 (DEV-CPP) par neoreturn
Source avec Zip METHODE SIMPLE DE CRYPTAGE par professeurr

Commentaires et avis

Commentaire de randriano le 19/04/2007 12:58:23

Initiez-vous à la programmation sur les chiffrements avec cela, fini la cryptographie de Jules césar passons à un niveau plus élevé.

je promets qu'il y aura une amélioration comme: classe TAbaque, abaque qui traite les 256 caractères.

Commentaire de BruNews le 19/04/2007 15:03:22 administrateur CS

Bien de vouloir s'élever mais faudra d'abord coder correctement.

void PolyAlphabetique::buildstrkey()
{
  int lk = strlen(cle);
  int ltxt;
  char *tmp = new char[255];
  if(strlen(textclair) > strlen(textcrypte)) ltxt = strlen(textclair);
  else ltxt = strlen(textcrypte);
  int d = ltxt / lk;
  int m = ltxt % lk;
  for(int i = 0; i < d; i++) strcat(chainecle, cle);
  if(m > 0) strncpy(tmp, cle, m);
  strcat(chainecle, tmp);
  chainecle[ltxt] = 0; //finir chainecle par le kre nul
}

char *tmp = new char[255];
Où est le delete correspondant ???

if(strlen(textclair) > strlen(textcrypte)) ltxt = strlen(textclair);
else ltxt = strlen(textcrypte);
strcat est une boucle, pas la peine de les REfaire inutilement.

for(int i = 0; i < d; i++) strcat(chainecle, cle);
d fois le reparcours complet de chainecle, contreproductif absolu.
char *c, *d;
d = chainecle;
for(int i = 0; i < d; i++) {
  c = cle;
  while(*d = *c++) d++;
}
Voila sans aucun reparcours stérile de chainecle.

Bonne continuation.

Commentaire de yoyo269 le 19/04/2007 17:18:32

Une petite question. C'est pas ce qu'on appelle le code Rome ce mode de cryptage ?

YOYO, @+.

Commentaire de BruNews le 19/04/2007 18:39:34 administrateur CS

"strcat est une boucle, pas la peine de les REfaire inutilement."
Je parlais bien entendu de "strlen".

Commentaire de randriano le 22/04/2007 16:05:31

En effet, j'avoue Brunews que j'ai oublié delete.
La version 2.0 est proche mais un problème:

[C++ Erreur fatale] sysmac.h(8): F1003 Erreur de directive : Do not include this file directly.  Include 'system.hpp'.

J'ai créé une classe TAbaque qui sera un membre statique de la classe TPolyAlphabetique:
cette erreur apparaît à la définition de cette membre:
TAbaque * TPolyAlphabetique::abaque=new TAbaque();

Commentaire de randriano le 05/05/2007 16:37:49

J'ai apporté une grande modification à ce code comme la classe TAbaque et l'utilisation de AnsiString!

Je vais vous demander les amis:
Qu'est ce que c'est vraiment les erreurs C++ E2129, E...
Elles ne sont pas claires car n'indiquent pas précisement la ligne de code ou l'identificateur qui cause l'erreur.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Cryptographie [ par mayouma ] Je veux bien avoir des codes sources des algorithmes RSA, 3DES, AES, IDEA en C++ .Net si cela est possible. C'est tr&#233;s important pour moi;&nbsp; cryptographie [ par AHUON ] Bonjour,je suis entrain de r&#233;aliser une application de cryptage/d&#233;cryptage+g&#233;n&#233;ration de cl&#233;s+signature &#233;lectronique.Je cryptage et cryptographie [ par H_lecteur ] bonjour,j besoin de la documentation sur le cryptage et la cryptographie svp....&nbsp;merci de bien vouloir m'aider...... cryptographie avec C sur UNIX [ par xheo ] bonjour a tous je dois developper une petite application de securité en C sur UNIX et je voudrais savoir oû puis-je trouver les codes source de AES Cryptographie + Courbes elliptiques [ par africanbeauty ] Bonjour j'aimerais s'avoir si quelqu'un aurait deja utilisé les courbes elliptiques provenant de la bibliothèque d'OPENSSL? en fait je dois utilser ce


Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
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,858 sec (3)

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