Sub EncryptFile(ByVal sInputFilename As String, _
ByVal sOutputFilename As String, _
ByVal sKey As String)
Try
Dim fsInput As New FileStream(sInputFilename, _
FileMode.Open, FileAccess.Read)
Dim fsEncrypted As New FileStream(sOutputFilename, _
FileMode.Create, FileAccess.Write)
Dim DES As New DESCryptoServiceProvider()
'Définit la clé secrète pour l'algorithme DES.
'Une clé de 64 bits et un vecteur d'initialisation sont requis pour ce fournisseur
DES.Key = ASCIIEncoding.ASCII.GetBytes(sKey)
'Définit le vecteur d'initialisation.
DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey)
'crée un crypteur DES à partir de cette instance
Dim desencrypt As ICryptoTransform = DES.CreateEncryptor()
'Crée un flux de cryptage qui transforme le flux de fichier à l'aide du cryptage DES
Dim cryptostream As New CryptoStream(fsEncrypted, _
desencrypt, _
CryptoStreamMode.Write)
'Lit le texte du fichier dans le tableau d'octets
Dim bytearrayinput(fsInput.Length - 1) As Byte
fsInput.Read(bytearrayinput, 0, bytearrayinput.Length)
'écrit le fichier crypté à l'aide de DES
cryptostream.Write(bytearrayinput, 0, bytearrayinput.Length)
cryptostream.Close()
fsInput.Close()
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
DecryptFile(access_file, access_file_open, sSecretKey)
End Sub
Sub DecryptFile(ByVal sInputFilename As String, _
ByVal sOutputFilename As String, _
ByVal sKey As String)
Try
Dim DES As New DESCryptoServiceProvider()
'Une clé de 64 bits et un vecteur d'initialisation sont requis pour ce fournisseur.
'Définit la clé secrète pour l'algorithme DES.
DES.Key() = ASCIIEncoding.ASCII.GetBytes(sKey)
'Définit le vecteur d'initialisation.
DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey)
'crée un flux de fichier pour lire le fichier crypté de retour
Dim fsread As New FileStream(sInputFilename, FileMode.Open, FileAccess.Read)
'crée un décrypteur DES à partir de l'instance DES
Dim desdecrypt As ICryptoTransform = DES.CreateDecryptor()
'crée un flux de cryptage, défini pour lire et effectuer une transformation
'de décryptage DES sur les octets entrants
Dim cryptostreamDecr As New CryptoStream(fsread, desdecrypt, CryptoStreamMode.Read)
'imprime le contenu du fichier décrypté
Dim fsDecrypted As New StreamWriter(sOutputFilename)
fsDecrypted.Write(New StreamReader(cryptostreamDecr).ReadToEnd)
fsDecrypted.Flush()
fsDecrypted.Close()
fsread.Close()
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub