begin process at 2012 02 13 01:08:18
  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é :5 101 / 346

Auteur : randriano

Ecrire un message privé
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

Source avec Zip Source avec une capture CONTACTS MANAGER par eapaceinfo
Source avec Zip Source avec une capture CONTACTES BOOK par mature
Source avec Zip Source avec une capture [C++/QT] SLIDEALWAYS, RÉALISEZ DES SLIDES POUR VOTRE SITE AV... par doderic
Source avec Zip Source avec une capture MAILLAGE 3D (VTK + QT) par ammoun007
Source avec Zip Source avec une capture CONVHTML : UN UTILITAIRE DE CONVERSION POUR FICHIERS HTML par pgl10

 Sources en rapport avec celle ci

PROJET DE CRYPTOGRAPHIE: RSA À JEU REDUIT D'INSTRUCTION par samatarahmed
Source avec Zip Source avec une capture CRYPTOSYSTÈME ELGAMAL LIBRAIRIE GMP par louelh95
Source avec Zip Source .NET (Dotnet) NOUVEL ALGORITHME D'ENCRYPTION-DÉSENCRYPTION DYNAMIQUE (INFA... par vletktol
Source avec une capture [C++] & SFML CRYPTOGRAPHIE par pop70
Source avec Zip UTILISATION DE GRANDS ENTIERS EN C++ BUILDER par randriano

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 demande info librairie de cryptographie [ par fainardi83 ] bonjour je travaille actuellement sur un projet utilisant les librairies de cryptographie, je souhaite utiliser soit la librairie polarSSL soit libcr


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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,874 sec (4)

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