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

Code

 > 

Sécurité & Cryptage

 > CRYPTAGE SIMPLE

CRYPTAGE SIMPLE


 Information sur la source

Note :
Aucune note
Catégorie :Sécurité & Cryptage Classé sous :cryptagetexte, clé, securité Niveau :Débutant Date de création :30/12/2007 Date de mise à jour :31/12/2007 20:11:27 Vu / téléchargé :6 280 / 338

Auteur : TrD_

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

 Description

Cryptage simple basé sur la méthode César.
Le programme crypte chaque caractères et octets du fichier selon la méthode césar.
Il se différencie d' un autre code par cette spécialité, de plus la sécurité apporté est augmentez par rapport a la méthode de base.


Source

  • --Tout es dans le ZIP--
--Tout es dans le ZIP--

 Conclusion

Je compte dans les prochains jours améliorez la source en ajoutant une fonction qui permettrait de réaliser le cryptage de ma source plusieurs fois de suite, a l' échelle de 100 et plus, pour que le décryptage par Brute Force soit rendu très long dans le temps.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • fct.cTélécharger ce fichier [Réservé aux membres club]Voir ce fichier1 447 octets
  • fct.hTélécharger ce fichier [Réservé aux membres club]Voir ce fichier124 octets
  • main.cTélécharger ce fichier [Réservé aux membres club]Voir ce fichier6 748 octets
  • Projet1.devTélécharger ce fichier [Réservé aux membres club]1 072 octets

Télécharger le zip


 Historique

30 décembre 2007 00:17:44 :
Explications suplémentaires...
31 décembre 2007 14:30:27 :
Prise en compte des conseils de BruNews et acx01b !
31 décembre 2007 20:11:27 :
Prise ne compte des conseils de SAKingdom !

 Sources de la même categorie

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 Zip A2DCRYPT - CRYPTAGE 2048 BITS par darkor
Source avec Zip Source avec une capture CRYPTEUR-DÉCRYPTEUR-IP par antho974

 Sources en rapport avec celle ci

CALCUL DE CLEF RIB par Renfield
Source avec une capture GÉNÉRATEUR DE CLÉS SUR 26 DIGITS AU FORMAT HEXADÉCIMAL par besilent
Source avec Zip CRYPTAGE/DÉCRYPTAGE/CASSAGE DE CLÉ VIGENÈRE par psyckachu
Source avec Zip Source avec une capture SAVESCREEN par ncoder
Source avec Zip Source avec une capture CRYPTAGE DE FICHIER EN XOR, INTERFACE WIN32 (DEV-CPP) par neoreturn

Commentaires et avis

Commentaire de acx01b le 30/12/2007 11:32:52

le fichier contenant la clé il faut le crypter aussi :)

Commentaire de BruNews le 30/12/2007 20:13:53 administrateur CS

Ceci relève de l'exercice perso qui n'apporte rien à ceux qui le liront si ce n'est de mauvaises habitudes.
Un fichier ne se lit pas octet par octet, ça se traite par bloc dans un buffer.

Commentaire de TrD_ le 30/12/2007 22:43:07

Pouvez vous préciser les erreurs et les corrections que je dois apporter.
La lecture par octet étant mauvaise quelle mauvaise quelle fonctions aurais je du utiliser (fscanf(), fgets(), ...).
Merci, pour la remarque elle permet de m' améliore, pour ce qui est du commentaires de ACX01B est t' il vraiment nécessaire de crypter la clé sachant que celle ci doit être préservé uniquement par l' utilisateur?
J' attend de nouvelles informations pour modifier et améliorer au mieu ma source merci.

Commentaire de BruNews le 30/12/2007 23:08:04 administrateur CS

char *pbuf;
pbuf = (char*) malloc(32KoParExemple);
if(!pbuf) return;
fread sait lire autant que tu veux et non 1 seul octet.
fread(pbuf, sizeof(char), QuantiteIci, f1);
...
free(pbuf); // QUAND PLUS BESOIN

Commentaire de TrD_ le 31/12/2007 11:40:07

Désolé, lol, j' ai vraiment honte j' ai bien saisie l' utilisation de l' allocution dynamique mais ceci
"fread(pbuf, sizeof(char), QuantiteIci, f1);" me pose quelque souci la fonction lit tant d' octet comme prévu mais s' arrête j' ai réfléchi et j' ai abouti sur la solution que il me faut la taille du fichier en Octets pour pouvoir l' assigner a la variable, ici, "QuantiteIci".
Donc, j' ai cherché comment connaître la taille du fichier mais je n' ai toujours pas compris comment faire.
D' un coté je n' ai pas trouvé car je ne veut pas d' une fonctions toute faite d' une fonctions API WIN32 .
Si quelqu' un peut m' axer dans mes recherches merci.

Commentaire de acx01b le 31/12/2007 11:52:40

regarde ce que la fonction fread renvoie

sinon pour avoir la taille du fichier il y a fseek ftell

fseek(f,0,SEEK_END);
int taille = ftell(f);
fseek(f,0,SEEK_SET);

Commentaire de BruNews le 31/12/2007 11:52:40 administrateur CS

Si tu utilises API Windows alors sera tout API, exit fread() et toute autre fonction libc standard.

CreateFile()
GetFileSize[Ex]()
ReadFile()
WriteFile()
CloseHandle()

A mettre tout le fichier dans un buffer, il y a risque de taille.

#define BUFSIZE 4096
pbuf = (char*) malloc(BUFSIZE);
et tu boucles sur taille buffer tant qu'il reste des octets non lus du fichier source. C'est assurance d'aller au bout sans risque d'erreur mémoire.

Commentaire de TrD_ le 31/12/2007 14:35:09

Merci des conseils et de l' informations (taille), j' en ai tenu compte et j' ai améliorez ma source. Dites moi si d' autre problèmes persiste et si le cryptage utilisé est sécurisé et sinon comment le "craqué" par un programme.
Merci.

Commentaire de SAKingdom le 31/12/2007 17:20:09

for(i = 0 ; i < strlen(pbuf) ; i++)

1. Ne jamais mettre strlen dans une boucle quand la taille ne change jamais. Calcule la taille de la chaine avant.

2. Même en calculant avant, je vois mal comment strlen pourra te donner la taille puisque strlen cherche le 0 de fin de chaine et ta chaine n'en contient tout simplement pas.

3. Aucun besoin de strlen. fread te retourne le nombre d'éléments qu'elle à lu.

4. Tu fais quoi si ton fichier fait plus que 32000 octets ?

char *pbuf = (char*)malloc(32000);
int j, i;
while((j = fread(pbuf, sizeof(char), 32000, f1)))
   for(i = 0 ; i < j ; i++)
   {
      printf("%ld ", n);

      pbuf[i] -= n;
   }

Commentaire de TrD_ le 31/12/2007 20:18:01

SAKingdom j'ai saisie ton message bien que ton petit 4 était douteux, bref je ne comprend pas pourquoi cela marchait avant mais bon cela a améliorez ma source et je tant remercie.
Si jamais tu rencontre d' autre erreur fais moi en part.

Si quelqu'un peut me dire comment craqué un fichier crypter par cette fonctions j'aimerai bien créer un contre programme pour cette techniques j'ai déjà quelque projets mais tous n'aboutissent pas pourtant mon programme est loin de sécuriser un fichier aussi bien que XOR ou PGP ...

Commentaire de SAKingdom le 31/12/2007 21:52:00

Le 4 c'est que tu allouais 32000 octets de mémoire mais tu mettais tout le fichier dedans sans tester quoi que ce soit.
Résultat, si tu avais eu un fichier plus gros que 32000, ton programme se serait terminé par un débordement tampon.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

comment créer une chaîne dans une clé dans la base registre ? [ par wres ] salut,je voulais savoir comment créer une chaîne, une valeur binaire ou un DWORD dans une clé de la base de registre ?car j'arrive à créer une clé mai URGENT:securité client\serveur en C [ par iup3 ] il n'y a personne pour m'aiderje cherche a securisé mon application avec les dll d'OpenSSL personne ne sait comment faire ? WriteBinaryData [ par ideosphere ] Bonjour voila je debute et là je m'interresse au creation de clé dans le registre.J'aimerais savoir comment creer une clé avec une valeur binaire, par encor un pti pb avec cette cher base de registre [ par ChrOnOs83 ] bjr @ ts,bon ben voila aprés avoir reglé le pb de lire une clé et de mettre sa valeur ds une variable g un otre pb...cette fois si c pr ecrir une clé: recherche d'aide [ par bifaka ] je suis coincée par un projet je ne sais pas si j'ai le droit de vous le soummettre mais je vais quand même essayer pour des fois où il y'aurait quelq clé de registre [ par grems ] Bonjour !Y a-t-il des instructions permettant de créer une clé de registre et de modifier sa valeur ????merci d'avanceAttention !! ne me mouillez po ! clé de registre [ par grems ] Bonjour !J'ai étudié la source sur les clé de registre de DEATHCRASH, et je m'en suis inspiré, mai j'ai un pb sur mon prgm :Au lancement du prgm, je r Ecrire une valeur et sa clé dans un fichier XML en c++ ? [ par Armandopoulos ] Salut !! J ai bien savoir comment je peux ecrire un parser en c++ pour y mettre des valeurs et leurs clés pour pouvoir les lire apres.Je serais vraime [registre] lancez un programme au demarrage [ par lombredudragon ] bonjour je debute en c++ , j'ai fait une recherche sur le site et j'ai trouver ce bout de code pour ecrire dans le registre:#include &lt;registry.hpp& Problem avec les .INI [ par Tidam ] voila je debute en c++ et je commence a me servir des .inij'utilise les WritePrivateProfileString , GetPrivateProfileString , etc... de windows.h mais


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

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