begin process at 2012 02 11 09:38:54
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité

 > CRYPTAGE / DECRYPTAGE DE FICHIERS PAR MOT DE PASSE

CRYPTAGE / DECRYPTAGE DE FICHIERS PAR MOT DE PASSE


 Information sur la source

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité Classé sous :sécurité, antivol, protection, crypter, décrypter Niveau :Débutant Date de création :27/08/2006 Vu / téléchargé :30 078 / 2 388

Auteur : sivaller

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

 Description

Cliquez pour voir la capture en taille normale
Le projet est capable d'encrypter / decrypter un fichier à l'aide d'un mot de passe.
C'est trés simple à faire , en faite c'est du béhaba !
juste une dizaine de lignes pour crypter/decrypter un fichier avec mot de passe
L'utilisateur lance le projet et clique sur un des trois menus (crypter / decrypter / quitter).

ATTENTION ! Il est impossible de recupérer un mot de passe perdu.
Un conseil noter le mot de passe sur un bout de papier ou calepin.

Source

  • unit Unit1;
  • interface
  • uses
  • Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  • StdCtrls;
  • type
  • Tfprincipe = class(TForm)
  • Button1: TButton;
  • Button2: TButton;
  • Label1: TLabel;
  • epwd: TEdit;
  • OpenDialog1: TOpenDialog;
  • SaveDialog1: TSaveDialog;
  • Button3: TButton;
  • procedure Button1Click(Sender: TObject);
  • procedure Button2Click(Sender: TObject);
  • procedure Button3Click(Sender: TObject);
  • private
  • { DÚclarations privÚes }
  • public
  • { DÚclarations publiques }
  • procedure gc(encrypter : boolean);
  • end;
  • var
  • fprincipe: Tfprincipe;
  • implementation
  • {$R *.DFM}
  • uses crypt;
  • procedure Tfprincipe.gc(encrypter : boolean);
  • var source,dest : pointer;
  • f : file;
  • size : longword;
  • pwd : pchar;
  • s : string[128];
  • begin
  • if opendialog1.execute then begin
  • savedialog1.filename := opendialog1.filename+'2';
  • if savedialog1.execute then begin
  • assignfile(f,opendialog1.filename);
  • reset(f,1);
  • size := filesize(f);
  • source := nil;
  • dest := nil;
  • reallocmem(source,size);
  • reallocmem(dest,size);
  • blockread(f,source^,size);
  • closefile(f);
  • s := epwd.text+#0;
  • pwd := @s;
  • crypter(source,dest,size,pwd,encrypter);
  • assignfile(f,savedialog1.filename);
  • rewrite(f,1);
  • blockwrite(f,dest^,size);
  • closefile(f);
  • end;
  • end;
  • end;
  • procedure Tfprincipe.Button1Click(Sender: TObject);
  • begin
  • gc(true);
  • end;
  • procedure Tfprincipe.Button2Click(Sender: TObject);
  • begin
  • gc(false);
  • end;
  • procedure Tfprincipe.Button3Click(Sender: TObject);
  • begin
  • application.terminate;
  • end;
  • end.
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  Tfprincipe = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Label1: TLabel;
    epwd: TEdit;
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { DÚclarations privÚes }
  public
    { DÚclarations publiques }
    procedure gc(encrypter : boolean);
  end;

var
  fprincipe: Tfprincipe;

implementation

{$R *.DFM}

uses crypt;

procedure Tfprincipe.gc(encrypter : boolean);
var source,dest : pointer;
    f : file;
    size : longword;
    pwd : pchar;
    s : string[128];
begin
     if opendialog1.execute then begin
        savedialog1.filename := opendialog1.filename+'2';
        if savedialog1.execute then begin
        assignfile(f,opendialog1.filename);
        reset(f,1);
        size := filesize(f);
        source := nil;
        dest := nil;
        reallocmem(source,size);
        reallocmem(dest,size);
        blockread(f,source^,size);
        closefile(f);
        s := epwd.text+#0;
        pwd := @s;

        crypter(source,dest,size,pwd,encrypter);
        assignfile(f,savedialog1.filename);
        rewrite(f,1);
        blockwrite(f,dest^,size);
        closefile(f);
        end;




     end;
end;

procedure Tfprincipe.Button1Click(Sender: TObject);
begin
    gc(true);
end;

procedure Tfprincipe.Button2Click(Sender: TObject);
begin
    gc(false);
end;

procedure Tfprincipe.Button3Click(Sender: TObject);
begin
     application.terminate;
end;

end.

 Conclusion

Des pages seront mise en ligne sur le site http://sivallerstatic.no-ip.org et sivaller
prévoit la reouverture éventuelle du site http://sivaller.no-ip.org l'année prochaine

 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 Source avec une capture COMMENT REMPLIR UN POLYGONE SANS UTILISER LE GDI DE WINDOWS
Source avec Zip TRAMAGE
Source avec Zip Source avec une capture RECHANTILLONAGE D'UNE IMAGE
Source avec Zip DESELECTION
Source avec Zip DÉFINITION D'UNE PROCEDURE DYNAMIQUE SANS APPEL AU NOYAU

 Sources de la même categorie

Source avec Zip Source avec une capture EXE PROTECTOR V1 par MrClock
Source avec Zip Source avec une capture LYNX : CHIFFREMENT À BLOC/FLUX, EXEMPLE INCLUS par Bacterius
Source avec Zip FBCREATEUSER par fbalien
Source avec Zip Source avec une capture SCANNER DE MALWARES ( ßE SCANNER ) par MrClock
Source avec Zip Source avec une capture GOLDEN PASSWORDS - STOCKEZ VOS MOTS DE PASSE ! par Bacterius

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture EXE PROTECTOR V1 par MrClock
Source avec Zip OBTENIR LE PROPRIÉTAIRE D'UN FICHIER (WIN32;NTFS) par ILP
Source avec Zip Source avec une capture GOLDEN PASSWORDS - STOCKEZ VOS MOTS DE PASSE ! par Bacterius
Source avec Zip Source avec une capture KEYGENME par craftsystem
Source avec Zip COMPOSANT HASHPROTECTOR (PROTÉGEZ VOS APPLICATIONS CONTRE L... par shining

Commentaires et avis

Commentaire de CptPingu le 27/08/2006 19:58:17 administrateur CS

Tout d'abord on dit "Cryptage/Decryptage" et pas cryptation...

Ensuite, ton code se limite à utiliser une DLL dont on n'a pas la source. Ici c'est un site de partage, si tu ne donne pas la source, alors ca n'a absolument aucun interet.

Peut etre la source de la dll sera interessante (Cryptage de Vernam ? Peut etre une autre methode que celle proposé par JulioDelphi), mais pour l'instant la source du projet qui l'utilise n'est pas très utile.

Je ne note pas, j'attends la mise à jour pour donner mon avis.

Commentaire de Bidou le 27/08/2006 20:08:33 administrateur CS

J'ai renommé la source ;-)

Commentaire de Delphiprog le 27/08/2006 22:18:39 administrateur CS

Tout à fait d'accord avec toi CptPingu, en l'absence du code de la dll, aucun intérêt à ce code.
De plus, pourquoi déclarer cci_crypt dans la partie interface de l'unité crypt.pas puisque la fonction crypter est censée en faciliter l'usage ?

Commentaire de Forman le 28/08/2006 13:21:02

Bon, je n'ai pas essayé le projet car je n'ai pas les sources de la DLL et je suis parano avec les virus. J'ai par contre lu le bout de code plus haut, et j'aurais quelques remarques:

* D'abord, utilisation de:
  source:=nil;
  reallocmem(source,size);
alors que la variable source n'est utilisée qu'une fois. Il est plus simple d'utiliser GetMem. Idem pour la variable dest. De plus, tu ne libères pas cette mémoire que tu as allouée.

* Ensuite, imagine que ton fichier fasse 1 gigaoctet. Tu écris:
  size := filesize(f);
  ...
  reallocmem(source,size);
L'utilisateur a intérêt à avoir beaucoup de RAM, pour allouer un bloc de 1 giga!      ;-)
Il est préférable de découper le fichier en morceaux d'une taille plafonnée à quelques méga-octets (au maximum!), que tu cryptes séparément.

Serait-il possible d'avoir les sources de la DLL, ou au moins le nom et une description de la méthode de cryptage utilisée?

Commentaire de JulioDelphi le 29/08/2006 09:24:14 administrateur CS

Je vais même dire que sans la source de cette DLL, cette source ne survis pas.
@CptPingu: http://www.delphifr.com/codes/COMPOSANT-TDBPVERNAM-CRYPTEUR-TEXTE-FICHIER_28108.aspx
j'avais mis en composant une source de mauricio, lui meme tiré d'une source ^^
Bidou, donne nous vite la source de la dll, ils sont tous impatients là ;D

Commentaire de Bidou le 29/08/2006 09:37:21 administrateur CS

JulioDelphi> Comment ça? Je ne suis pas l'auteur lol.

Commentaire de JulioDelphi le 29/08/2006 10:18:13 administrateur CS

autant pour moi bidou.
sivaller, c'est la dll qui est interessante ici, pas une source qui l'utilise simplement. aurais tu la source de cett dll ?

Commentaire de f0xi le 30/08/2006 02:47:36 administrateur CS

Pour les gros fichier et a partir du moment ou on veut crypter et/ou compresser = TFileStream.

travailler en memoire ça bouffe trop de ressource et a 45-60Mo/s on ne voit pas la difference a moins d'avoir des DD en choux-fleurs.

en gros ça se passe comme ça :

flux disque source --> cryptage --> flux disque destination
idem pour le decryptage.


ensuite c'est bourrin de travailler encore avec AssignFile, reset et consort, LE PASCAL EST MORT! TFileStream !




Commentaire de sebolofaly le 05/03/2008 19:17:24

OU est le DLL?...peut-on mettrer un mot de passe sur un répertoire?

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Décrypter un fichier ZIP [ par kelian ] Salut salut donc mon probleme est un fichier crypter et ziper et il y a un pass donc ma question qui va etre stupide pour certain est commen décr Erreur de sécurité .net [ par grumli ] Bonjour, le lancement de mon appli génére deux erreurs, la première "Echec de la demande pour une autorisation de type System.Securit Petits soucis de sécurité avec outlook [ par tititon ] Bonjour à tous,Je souhaiterais éviter que le message de sécurité outlook n'apparaisse lorsque l'on tente d'accèder à out Fichier, Sécurité NTFS et Delphi [ par peanuts59 ] bonjour, Je suis admin donc no problem pour accéder à mes fichiers. Etant en NTFS, j'ai donc l'onglet sécurité activé. J'aime retirer le périphérique en tout sécurité [ par sachet ] Bonjour,je recherche un commande API permettant de déconnecter un périphérique de masse USB. Idéalement, j'aimerais pouvoir ouvrir Rassemblement de fichier et sécurité [ par Don0Choa ] Bonjour, je suis en train de faire un programme qui rassemble tous les fuchiers et dossiers que l'on veut en un seul. Ce fichier (Source.alb) contient Protection D'une Application [ par Rudy3212 ] Best PigVoila j'aimerai savoir comment protégé une application contre la modification.Il existe une technique c'est d'inclure le crc de l'ap Question URGENTE, merci de m'aider [ par Hamhama007 ] BonjourJe voulai d'abors vous dire que je ne connai rien en Delphi et tous ce qui est programmation...En recherchant une fois su Erreur de protection... [ par BernardLimont ] Bonjour,Quand on grave un CD (avec Néro par exemple), on a le message "Erreur de protection contre les ruptures activées".Que signifie cette phrase ? Protection et compression [ par ytillang30400 ] Bonjour.Devant l'abondance d'outils proposés pour protéger les applications, il est difficile de faire un choix. J'ai entendu parler de "Citadel par B


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

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