begin process at 2012 02 13 04:48:32
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité

 > DIFFING

DIFFING


 Information sur la source

Note :
9,33 / 10 - par 3 personnes
9,33 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité Niveau :Initié Date de création :30/06/2003 Date de mise à jour :30/06/2003 05:17:11 Vu / téléchargé :4 616 / 414

Auteur : popstatic

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

 Description

Cliquez pour voir la capture en taille normale
Cela fait (très) longtemps que je n'avais pas laissé de source, aussi ai-je décidé de mettre quelque chose de consistant et d'intéressant.
De toute maniere, c'est a vous de juger.
Bref
Voila donc la source d'un prog de DIFFING
"Mais qu'est ce que le diffing ?" me direz vous
Et bien le diffing est une méthode de protection des données.
Je m'explique: lorsque l'on "diffe" un fichier, celui ci est "haché", via une routine de hachage, technique complexe d'echantillonage de fichier.
En bref, une empreinte de 32 octets est prise sur le fichier, et celle ci ne correspondra qu'a lui et a lui seul (et cela grace a l'anti-collision poussée implémentée dans la routine de hachage MD5 utilisée ici)
Si jamais un seul des bits du fichier est modifié (que le fichier fasse 1 Ko ou 1Go), son empreinte sera différente et on pourra alors dire que le fichier a été altéré (par exemple modifié ou réenregistré).
donc si on veux protéger un repertoire sensible de son disque, il suffit de differ tous les fichiers qu'il contient, et ainsi périodiquement vérifier que ceux ci n'ont pas été modifiés.
prenons l'exemple d'une école: les fichiers de notes sont des données sensibles, donc a protéger. Si on diffe ces derniers, la moindre modification de note sera détectée, et l'élève (con) qui aura juste modifié son bulletin (et pas celui des autres) sera grillé en force.
l'avantage de la prise d'empreinte, vous l'aurez bien deviné, c'est la petite taille du fichier d'empreinte final par rapport au nombre de fichier et quelle que soit leur taille..
Je vous propose donc ici une solution de diffing complete.
A savoir:
-prise d'empreinte de fichier unique
-vérification de l'intégrité d'un fichier unique a partir du fichier d'empreinte  et du fichier a vérifier.
-prise d'empreinte d'un répertoire entier (attention, ne gère pas encore les sous-répertoires)
-vérification de l'intégrité d'un repertoire a partir du fichier d'empreinte (nommé a chaque fois "diff.emp") et du répertoire a vérifier.

le diffing d'un répertoire s'effectue de maniere suivante:
-on prend l'empreinte de chaque fichier du repertoire
-on les place toutes dans un fichier d'empreinte unique
QUE L'ON PROTEGE ABSOLUMENT (sinon tout tombe a l'eau, ce fichier NE DOIT PAS POUVOIR ETRE MODIFIE)

lors de la vérification
on prend une nouvelle empreinte de chaque fichier du repertoire
on la compare avec l'ancienne
si elle est différente => fichier non valide
si elle est identique => fichier non altéré

voila
j'ai fait en sorte de faire une interface claire et intuitive

C'est a mon avis (mais surtout contredisez moi si c pas vrai) la seule soltuion de diffing existant en VB
le diffing n'est (helas) pas tres utilisé.
le principe et la réalisation ne sont pas compliqués

L'algo de hachage est une implémentation du MD5 (hachage numérique) qui n'est pas de moi, c'est une DLL dont j'utilise une fonction
le copyright de cet algo est dans ma source et dans un fichier texte dans le zip


Network Working Group                                          R. Rivest
Request for Comments: 1321           MIT Laboratory for Computer Science
                                            and RSA Data Security, Inc.
                                                              April 1992


j'utilise d'autre part un OCX tres bien foutu ma foi de recherche de fichiers trouvé sur VBfrance et réalisé par "fou volant13" que je remercie grandement au passage.

Donc si ça vous plait, si vous détestez, si vous comprenez pas ou que j'ai fait une erreur, laissez un message!

PS: vous pouvez toujours tenter de differ tout un disque mais je garantie pas que ça plante pas
PPS: n'oubliez pas de réfferencer la dll et le composant "recherche.ocx"


 Conclusion

Merci d'avance

 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


 Sources du même auteur

Source avec Zip DLL PRIMALITÉ + SOURCE
Source avec Zip AMÉLIORATION DE LA CONSOLE LINUX DE XENTOR
CREER UN FICHIER .BAT A PARTIR D'UNE PAGE WEB!!!
Source avec Zip UN CHAT RÉSEAUX SANS WINSOCKS!!!
Source avec Zip Source avec une capture GÉNÉRATEUR DE NOMBRES PREMIERS

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) CHIFFREMENT XOR PLUS ROBUSTE par dheroux
Source avec Zip CRYPTAGE MARANT par alpha5
Source avec Zip ACCÈS PAR MOT DE PASSE À FEUILLE EXCEL par mimiZanzan
Source avec Zip CRYPTER-DÉCRYPTER UN TEXTE - TEXTE CRYPTÉ UNIQUEMENT EN MAJ... par Saintache
Source avec Zip Source avec une capture FOLDER PROTECTION par hackoo

Commentaires et avis

Commentaire de Renfield le 30/06/2003 08:14:54 administrateur CS

très bonne explication, je jetterai un oeil quand le temps me le permettera.....

Commentaire de sub-zero le 30/06/2003 10:36:48

vi c notamment utilisé pour vérifier l intégrité avant/après un téléchargement par exemple.

Commentaire de Warny le 30/06/2003 11:01:11

l'algorithme md5 est plutôt utilisé comme le fait remarque subzero pour vérifier l'intégrité des données transférés.
Comme il n'agit pas en fonction d'une clef assymétrique on ne peut pas signer un fichier. N'importe qui peut après modification d'un fichier recalculer sa clef md5.
Eventuellement, il est assez facile de signer la clef md5 d'un fichier (par rsa par exemple) ce qui est infiniment moins lourd que de signer le fichier lui-même.
Comme le md5 est un algorithme qui agit par réduction, on peut éventuellement créer 2 fichiers dont la signature serait la même. Sa longueur assure tout de même que des fichiers ayant la même signature auraient du mal à être cohérents ;)

Commentaire de doct le 30/06/2003 12:37:49

à la place d'utiliser une dll pour le calcul du hash MD5, il existe un module se trouvant sur vbfrance.

C'est une bonne idée en général, mais je reste sceptique sur certains points...
Il faut de toute façon protéger les fichiers contenant les "empreintes" MD5. Pourquoi, à ce moment là, ne pas faire la même chose avec les fichiers eux-mêmes (les portéger)...? certains sont trop gros... mais il faut de toute manière avoir une sauvegarde sous la main afin de "reconstituer" le fichier "endommagé", cette même sauvegarde doit elle aussi rester intacte.
En résumé, autant garder ses fichiers en lieu sûr une bonne fois pour toute.
bref, c'était juste une réflexion qui me venait à l'esprit en lisant ces quelques lignes...

Voilà, sinon, c'est une bonne source qui, je pense, servira à plus d'un.

Commentaire de popstatic le 30/06/2003 15:37:13

réponse au doc: parceque qu'il est beaucoup plus rapide et simple de protéger un seul fichier type texte de quelque ko que l'ensemble des fichiers, c'est pour des questions de rapidité et de gain d'espace que l'on utilise cette méthode

Commentaire de popstatic le 30/06/2003 15:43:24

réponse a Warny: T'a bien raison, en fait le MD n'est pas utilisé pour le diffing, ce sont d'autres algorithmes. Mais comme le MD5 offre une bonne protection anti-collision, j'ai pris ça. de toute façon c'est efficace et ça n'a pas vocation d'etre un truc proffessionel
merci pour vos commentaires!

Commentaire de Zeroc00l le 30/06/2003 18:33:01

Interessant  Interessant... J'ai pensé comme Doct en lisant ces lignes....
Mais il est vrai qu'il est plus simple de proteger des fichiers de quelque Ko en se les envoyant sur internet par exemple.
Il est deja plus difficile de changer les notes , hacker le compte mail de la personne, changer le diff etc ...

C'est une très bonne idée, qui change des sources que l'on trouve ici !

Je n'ai pas encore regardé le code... mais je le ferai :)

Commentaire de Jujufouq le 01/07/2003 18:54:35

Oui, cela m'intéresse beaucoup pour un projet en cours. En fait, je n'ai pas non-plus le temps de voir ça ce soir, mais c'est clair que je garde un lien vers ta source. Alors, comme ils diraient chez --- : "A bientôt !"

Commentaire de crossblade le 02/07/2003 10:54:44

super prog très bien décris même si certains ont trouvé des défauts moi je le trouve simple et utile et ça m'évite d'avoir à le créer..... 10/10 bravo
@+

Commentaire de popstatic le 08/07/2003 19:48:53

merki a tous.....

Commentaire de kickbar le 28/10/2004 17:50:35

G mis 10 puisque tout c'est cretin on oublier de mettre une note loool. Tres belle source

 Ajouter un commentaire




Nos sponsors


Sondage...

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 : 2,574 sec (4)

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