Come crittografare un file con VB

November 10

Come crittografare un file con VB


Il linguaggio di programmazione Visual Basic, pubblicato da Microsoft, viene fornito con una libreria built-in per la gestione di crittografia e crittografia. Anche se la libreria di crittografia si prende cura delle parti più difficili di crittografia di un file, non è ovvio come utilizzare gli strumenti forniti per crittografare un file. L'inizio più importante è, che per crittografare il file, è necessario prima leggere come un array di byte, non di testo o altri tipi di dati.

istruzione

1 Creare un nuovo progetto in Visual Basic facendo clic su "File" e "Nuovo progetto". Selezionare l'opzione "Applicazione console". In seguito, è possibile applicare lo stesso codice utilizzato in questo tutorial per ogni interfaccia di applicazione (GUI) Graphical User si decide di costruire.

2 Importare la libreria crittografica incollando la seguente riga di codice nella parte superiore della vostra applicazione:

Le importazioni System.Security.Cryptography

3 Leggere i dati dal file che si desidera crittografare come un array di byte utilizzando il seguente comando:

byte Dim () = My.Computer.FileSystem.ReadAllBytes ( "C: \ file.dat")

Sostituire "C: \ file.dat" con il percorso e il nome del file che si desidera crittografare.

4 Incollare il seguente comando per dichiarare il vettore di chiave e l'inizializzazione per la funzione di crittografia. Avrete bisogno di queste informazioni allo scopo di decifrare il file:

chiave Dim () come Byte = {24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4, 3,2,1}

init_vector Dim () come Byte = {8,7,6,5,4,3,2,1}

Naturalmente, è necessario sostituire tutti i numeri sia la chiave e il vettore di inizializzazione con altri numeri. Chi conosce questi numeri in grado di decifrare il file, in modo da renderle difficile da indovinare. I numeri dovrebbero essere tutti byte validi: da 0 a 255.

5 Inizializzare il criptato, un flusso di crittografia e un flusso di memoria per contenere i dati crittografati mentre si decide cosa fare con esso. Incollare il seguente codice:

dim tdescsp = Nuovo TripleDESCryptoServiceProvider ()

dim criptato = tdescsp.CreateEncryptor (chiave, init_vector)

dim memStream = new System.IO.MemoryStream

dim encryptionStream = new CryptoStream (memStream, criptato, CryptoStreamMode.Write)

6 Crittografare l'array di byte dall'alto incollando il seguente:

encryptionStream.Write (byte, 0, bytes.Length)

encryptionStream.FlushFinalBlock ()

memStream.Position = 0

7 Leggere i dati crittografati di nuovo nella vostra memStream:

encrypted_bytes Dim (memStream.Length - 1) come Byte

memStream.Read (encrypted_bytes, 0, memStream.Length)

memStream.Close ()

8 Incollare il seguente per stampare i dati crittografati alla console:

per ogni x in encrypted_bytes

Console.Write(x)

Console.Write ( "")

prossimo

Console.ReadKey ()

9 Premere la freccia verde per eseguire l'applicazione.