Criptare e decriptare file



Creare un progetto con due Button. Creare e salvare nella cartella c:\Temp\ un file di testo che chiamiamo test.txt.
L’applicazione cripta il file test.txt e lo salva come testcrip.txt, quindi lo decripta salvandolo
come test.txt. Dopo essere stato criptato, il file in ASCI originale viene eliminato.
Anche il file criptato, una volta decriptato, viene eliminato.


Imports System.IO
Imports System.Security.Cryptography
Imports System.TextPublic

Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 'Cripta il file

Try

Dim myDESProvider As DESCryptoServiceProvider = New DESCryptoServiceProvider()
myDESProvider.IV = ASCIIEncoding.ASCII.GetBytes("00345678")
myDESProvider.Key = ASCIIEncoding.ASCII.GetBytes("00345678")
Dim myICryptoTransform As ICryptoTransform = myDESProvider.CreateEncryptor(myDESProvider.Key, _myDESProvider.IV)
Dim ProcessFileStream As FileStream = New FileStream("c:\Temp\test.txt", FileMode.Open, _ FileAccess.Read)
Dim ResultFileStream As FileStream = New FileStream("c:\Temp\testCrip.txt", FileMode.Create, _FileAccess.Write)
Dim myCryptoStream As CryptoStream = New CryptoStream(ResultFileStream, myICryptoTransform, _CryptoStreamMode.Write)
Dim bytearrayinput(ProcessFileStream.Length - 1) As Byte
ProcessFileStream.Read(bytearrayinput, 0, bytearrayinput.Length)
myCryptoStream.Write(bytearrayinput, 0, bytearrayinput.Length)
myCryptoStream.Close()
ProcessFileStream.Close()
ResultFileStream.Close()
My.Computer.FileSystem.DeleteFile("c:\Temp\test.txt")

Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub


Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click 'Deripta il fileTry
Dim myDESProvider As DESCryptoServiceProvider = New DESCryptoServiceProvider()
'Le cifre della stringa devono essere otto ma possono essere cambiate

myDESProvider.Key = ASCIIEncoding.ASCII.GetBytes("00345678")
myDESProvider.IV = ASCIIEncoding.ASCII.GetBytes("00345678")
Dim DecryptedFile As FileStream = New FileStream("c:\Temp\testCrip.txt", FileMode.Open, _FileAccess.Read)
Dim myICryptoTransform As ICryptoTransform = myDESProvider.CreateDecryptor(myDESProvider.Key, _myDESProvider.IV)
Dim myCryptoStream As CryptoStream = New CryptoStream(DecryptedFile, myICryptoTransform, _CryptoStreamMode.Read)
Dim myDecStreamReader As New StreamReader(myCryptoStream)
Dim myDecStreamWriter As New StreamWriter("c:\Temp\test.txt")
myDecStreamWriter.Write(myDecStreamReader.ReadToEnd())
myCryptoStream.Close()
myDecStreamReader.Close()
myDecStreamWriter.Close()
My.Computer.FileSystem.DeleteFile("c:\Temp\testCrip.txt")
Catch ex As Exception
End Try
End Sub

End Class










(criptareedecriptarefile.html)- by Paolo Puglisi - Modifica del 1/5/2020