begin process at 2012 02 09 23:56:27
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité

 > CRYPTAGE DE FICHIERS (TOUT TYPES)

CRYPTAGE DE FICHIERS (TOUT TYPES)


 Information sur la source

Note :
8,67 / 10 - par 3 personnes
8,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité Niveau :Débutant Date de création :01/07/2002 Date de mise à jour :01/07/2002 16:04:01 Vu :5 200

Auteur : DivXPVobD

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

 Description

Ce code est un module, paru sur une Liste de discussions VB permettant de crypter tout type de fichiers (binaire ou ascii), il inclut aussi le decryptage de ces fichiers... Je rapelle que la legislation en France interdit des clefs supérieures à 128 Bits...

La fonction IsCrypted renvoie True ou False selon que le fichier à été crypté ou pas...

La fonction IsVersionCompatible permet de savoir si le fichier à été crypté avec cette version de cryptage, elle renvoye bien sur True ou False selon les cas...

Crypt_69 Prend pour paramètres le fichier source, puis le fichier cible et enfin le mot de pass (ou clef) de cryptage

Decrypt_69 prend les même paramètres (avec source et cible inversé bien sur)...

Notez que si la taille de la clef est identique au fichier à crypter, le décryptage par bruteforce est alors inutile...  

Source

  • Option Explicit
  • ' Mis en ligne par 69VobD3 (DivX-Paradise.net)
  • Public Function Crypt_69(Fichier As String, _
  • FichierCrypte As String, MotPasse As String)
  • ' On definit les variables locales
  • Dim fs As Integer, fd As Integer
  • Dim OS As Byte, OD As Byte
  • Dim PtrMotPasse As Integer
  • Dim CheckSumMP As String * 10
  • Dim i As Double
  • Dim cle As Byte
  • ' Init pointeur clé de cryptage à 1
  • PtrMotPasse = 1
  • ' Ouverture des fichiers
  • ' On efface le fichier destination si il existe déjà
  • If Dir(FichierCrypte, vbNormal) <> "" Then Kill FichierCrypte
  • 'Ouverture du fichier de destination
  • fd = FreeFile
  • Open FichierCrypte For Binary Access Write As fd
  • 'Ouverture du fichier source
  • fs = FreeFile
  • Open Fichier For Binary Access Read As fs
  • ' Sablier
  • Screen.MousePointer = 11
  • ' Ecriture du numéro de version
  • Put #fd, , "69"
  • ' On ajoute le mot 'CRYPT69'
  • Put #fd, , "CRYPT69"
  • ' Checksum de la clé de cryptage
  • CheckSumMP = String$(10, " ")
  • For i = 1 To Len(MotPasse)
  • CheckSumMP = Format(Val(CheckSumMP) + Asc(Mid$(MotPasse, i, 1)))
  • Next i
  • Put #fd, , CheckSumMP
  • ' Boucle sur le fichier source
  • For i = 0 To LOF(fs) - 1
  • Get #fs, , OS
  • cle = 255 - Asc(Mid$(MotPasse, PtrMotPasse, 1))
  • If (CInt(OS) + CInt(cle)) > 255 Then
  • OD = CInt(OS) + CInt(cle) - 256
  • Else
  • OD = OS + cle
  • End If
  • Put #fd, , OD
  • PtrMotPasse = PtrMotPasse + 1
  • If PtrMotPasse > Len(MotPasse) Then
  • PtrMotPasse = 1
  • End If
  • Next i
  • 'Fermeture des fichiers
  • Close fs
  • Close fd
  • 'Remise de la souris normale
  • Screen.MousePointer = 0
  • End Function
  • Public Function DeCrypt_69(Fichier As String, _
  • FichierCible As String, MotPasse As String)
  • Dim fs As Integer, fd As Integer
  • Dim OS As Byte, OD As Byte
  • Dim PtrMotPasse As Integer
  • Dim CheckSumMP As Long
  • Dim i As Double
  • Dim cle As Byte
  • Dim Header As String * 19
  • ' Init pointeur clé de cryptage à 1
  • PtrMotPasse = 1
  • ' Ouverture fichier source
  • fs = FreeFile
  • Open Fichier For Binary Access Read As fs
  • Get #fs, , Header
  • ' Vérif checksum clé de cryptage
  • For i = 1 To Len(MotPasse)
  • CheckSumMP = CheckSumMP + Asc(Mid$(MotPasse, i, 1))
  • Next i
  • If CheckSumMP <> Val(Mid$(Header, 10, 10)) Then
  • MsgBox "Decryptage Echoué !"
  • Close fs
  • Exit Function
  • End If
  • ' Ouverture fichier destination
  • Kill FichierCible
  • fd = FreeFile
  • Open FichierCible For Binary Access Write As fd
  • ' Sablier
  • Screen.MousePointer = 11
  • ' Boucle sur le fichier source ( -entete)
  • For i = 0 To LOF(fs) - 1 - 19
  • Get #fs, , OS
  • cle = 255 - Asc(Mid$(MotPasse, PtrMotPasse, 1))
  • If (CInt(OS) - CInt(cle)) < 0 Then
  • OD = CInt(OS) - CInt(cle) + 256
  • Else
  • OD = OS - cle
  • End If
  • Put #fd, , OD
  • PtrMotPasse = PtrMotPasse + 1
  • If PtrMotPasse > Len(MotPasse) Then
  • PtrMotPasse = 1
  • End If
  • Next i
  • 'Fermeture des fichiers
  • Close fs
  • Close fd
  • 'Remise en placede la souris normale
  • Screen.MousePointer = 0
  • End Function
  • Private Function IsCrypted(Fichier As String) As Boolean
  • 'Definit les variables
  • Dim f As Integer
  • Dim Header As String * 19
  • 'Ouverture du fichier
  • f = FreeFile
  • Open Fichier For Binary Access Read As f
  • Get #f, , Header
  • Close f
  • If Mid(Header, 3, 7) = "CRYPT69" Then
  • IsCrypted = True
  • Else
  • IsCrypted = False
  • End If
  • End Function
  • Private Function IsVersionCompatible(Fichier As String) As Boolean
  • Dim f As Integer
  • Dim Header As String * 19
  • f = FreeFile
  • Open Fichier For Binary Access Read As f
  • Get #f, , Header
  • Close f
  • If Val(Mid(Header, 1, 2)) = 69 Then
  • IsVersionCompatible = True
  • Else
  • IsVersionCompatible = False
  • End If
  • End Function
Option Explicit

' Mis en ligne par 69VobD3 (DivX-Paradise.net)

Public Function Crypt_69(Fichier As String, _
FichierCrypte As String, MotPasse As String)
    ' On definit les variables locales
    Dim fs As Integer, fd As Integer
    Dim OS As Byte, OD As Byte
    Dim PtrMotPasse As Integer
    Dim CheckSumMP As String * 10
    Dim i As Double
    Dim cle As Byte
    ' Init pointeur clé de cryptage à 1
    PtrMotPasse = 1
    ' Ouverture des fichiers
    ' On efface le fichier destination si il existe déjà
    If Dir(FichierCrypte, vbNormal) <> "" Then Kill FichierCrypte
    'Ouverture du fichier de destination
    fd = FreeFile
    Open FichierCrypte For Binary Access Write As fd
    'Ouverture du fichier source
    fs = FreeFile
    Open Fichier For Binary Access Read As fs
    ' Sablier
    Screen.MousePointer = 11
    ' Ecriture du numéro de version
    Put #fd, , "69"
    ' On ajoute le mot 'CRYPT69'
    Put #fd, , "CRYPT69"
    ' Checksum de la clé de cryptage
    CheckSumMP = String$(10, " ")
    For i = 1 To Len(MotPasse)
        CheckSumMP = Format(Val(CheckSumMP) + Asc(Mid$(MotPasse, i, 1)))
    Next i
    Put #fd, , CheckSumMP
    ' Boucle sur le fichier source
    For i = 0 To LOF(fs) - 1
        Get #fs, , OS
        cle = 255 - Asc(Mid$(MotPasse, PtrMotPasse, 1))
        If (CInt(OS) + CInt(cle)) > 255 Then
            OD = CInt(OS) + CInt(cle) - 256
        Else
            OD = OS + cle
        End If
        Put #fd, , OD
        PtrMotPasse = PtrMotPasse + 1
        If PtrMotPasse > Len(MotPasse) Then
            PtrMotPasse = 1
        End If
    Next i
    'Fermeture des fichiers
    Close fs
    Close fd
    'Remise de la souris normale
    Screen.MousePointer = 0
End Function

Public Function DeCrypt_69(Fichier As String, _
FichierCible As String, MotPasse As String)
    Dim fs As Integer, fd As Integer
    Dim OS As Byte, OD As Byte
    Dim PtrMotPasse As Integer
    Dim CheckSumMP As Long
    Dim i As Double
    Dim cle As Byte
    Dim Header As String * 19
    ' Init pointeur clé de cryptage à 1
    PtrMotPasse = 1
    ' Ouverture fichier source
    fs = FreeFile
    Open Fichier For Binary Access Read As fs
    Get #fs, , Header
    ' Vérif checksum clé de cryptage
    For i = 1 To Len(MotPasse)
        CheckSumMP = CheckSumMP + Asc(Mid$(MotPasse, i, 1))
    Next i
    If CheckSumMP <> Val(Mid$(Header, 10, 10)) Then
        MsgBox "Decryptage Echoué !"
        Close fs
        Exit Function
    End If
    ' Ouverture fichier destination
    Kill FichierCible
    fd = FreeFile
    Open FichierCible For Binary Access Write As fd
    ' Sablier
    Screen.MousePointer = 11
    ' Boucle sur le fichier source ( -entete)
    For i = 0 To LOF(fs) - 1 - 19
        Get #fs, , OS
        cle = 255 - Asc(Mid$(MotPasse, PtrMotPasse, 1))
        If (CInt(OS) - CInt(cle)) < 0 Then
            OD = CInt(OS) - CInt(cle) + 256
        Else
            OD = OS - cle
        End If
        Put #fd, , OD
        PtrMotPasse = PtrMotPasse + 1
        If PtrMotPasse > Len(MotPasse) Then
            PtrMotPasse = 1
        End If
    Next i
    'Fermeture des fichiers
    Close fs
    Close fd
    'Remise en placede la souris normale
    Screen.MousePointer = 0
End Function

Private Function IsCrypted(Fichier As String) As Boolean
    'Definit les variables
    Dim f As Integer
    Dim Header As String * 19
    'Ouverture du fichier
    f = FreeFile
    Open Fichier For Binary Access Read As f
        Get #f, , Header
    Close f
    If Mid(Header, 3, 7) = "CRYPT69" Then
        IsCrypted = True
    Else
        IsCrypted = False
    End If
End Function

Private Function IsVersionCompatible(Fichier As String) As Boolean
    Dim f As Integer
    Dim Header As String * 19
    f = FreeFile
    Open Fichier For Binary Access Read As f
        Get #f, , Header
    Close f
    If Val(Mid(Header, 1, 2)) = 69 Then
        IsVersionCompatible = True
    Else
        IsVersionCompatible = False
    End If
End Function  

 Conclusion

Attention, ce code ne m'appartient pas et je n'en suis pas l'auteur, je partage seulement cette ressource que je trouve formidable...  


 Sources du même auteur

LIRE UN FICHIER SUR INTERNET - 69VOBD3
FEUILLE TOUJOURS VISIBLE - MODTOUJOURSVISIBLE - 69VOBD3
OUVRIR UN LECTEUR CD (AVEC CHOIX DU LECTEUR PAR SA LETTRE)
CONNAITRE LES DIMENSIONS (LARGEUR ET HAUTEUR) UTILISABLES DE...
EFFACER UNE URL DU CACHE (TEMPORARY INTERNET FILE)

 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 Sirocooo le 01/07/2002 21:10:02

comment ca la legislation nous impose de crypter d'une certaine façon et pas d'une autre. Elle n'à q'a nous imposer aussi la clef pendant que tu y es !

Commentaire de SyDaze le 02/06/2003 10:22:11

A noter qu'il faut supprimer la ligne kill fichiercible dans la fonction decrypt_69 car elle essaye de detruire un fichier qui n'a pas encors été créé

Commentaire de DETCH le 11/01/2004 22:43:40

C'est le code qu'il me faut. C'est quoi le MotPasse. Comment est-il défini ? Merci de votre aide.

Commentaire de petit_mateo le 09/06/2004 12:20:56

C bien sympa cette source, mais elle fonctionne comment ? j'arrive pas à la lancer !!!! c dingue ça !

Commentaire de niluje le 15/07/2004 10:12:07

ca marche nickel :D
bravo et merci

Commentaire de VacheAlsacienne le 24/08/2004 11:57:20

Hello...
D'après niluje cette source fonctionne bien ( je le crois sur parole ) mais comment l'utiliser ???

Commentaire de micky2be le 22/11/2004 15:37:06

j'aimerais utilisé ce module sur un projet vb.net, mais la fonction sting$() n'est pas reconnu
est-ce que quelqu'un sait quel est la fonction qui la remplace

merci

Commentaire de Yassan le 19/12/2004 04:05:36

A noter qu'il faut supprimer la ligne kill fichiercible dans la fonction decrypt_69 car elle essaye de detruire un fichier qui n'a pas encors été créé
---
Pour ceux qui ont toujours pas compris ca kill que si le fichier destination existe déjà ^^

Commentaire de YannGotti le 28/11/2007 12:47:22 10/10

Bonne source

Commentaire de gotakk le 26/01/2010 13:18:40

Je cherche ça depuis je ne sais combien de temps ! Mais il est possible de décrypter le fichier dans un autre dossier par exemple C:\WINDOWS\Temp

Merci d'avance pour votre aide

 Ajouter un commentaire




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

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