Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
In questo esempio vengono utilizzate le classi Rijndael e TripleDESCryptoServiceProvider per implementare una crittografia simmetrica (a chiave privata), come descritto nell'argomento Cenni preliminari sulla crittografia.
Per ottenere esempi e istruzioni per la relativa installazione
Effettuare una delle seguenti operazioni:
Dal menu Guida, scegliere Esempi.
Il file Readme contiene informazioni sugli esempi.
Visitare il sito Web Visual Studio 2008 Samples (informazioni in lingua inglese). Su tale sito sono disponibili le versioni più recenti degli esempi.
Individuare gli esempi sul computer in cui è installato Visual Studio. Il percorso di installazione predefinito degli esempi e del file Readme relativo è unità:\Programmi\Microsoft Visual Studio 9.0\Samples\lcid. Per le versioni Express di Visual Studio tutti gli esempi sono disponibili in linea.
Per ulteriori informazioni, vedere Individuazione dei file di esempio.
Nota sulla sicurezza: |
|---|
In questo esempio di codice viene illustrato un concetto e viene presentato solo il codice rilevante. È possibile che questo esempio non soddisfi i requisiti di sicurezza per un ambiente specifico ed è opportuno non utilizzarlo così come viene riportato. È consigliabile aggiungere codice relativo alla sicurezza e alla gestione degli errori per rendere i progetti più sicuri e potenti. Microsoft fornisce questo esempio di codice "COSÌ COM'È" senza garanzie. |
Per eseguire l'esempio
- Premere F5.
Dimostrazione
La classe SampleCrypto incapsula l'algoritmo di crittografia, il valore salt e il vettore di inizializzazione (IV), nonché le routine di crittografia e decrittografia che definiscono un file crittografato. Il costruttore accetta un parametro che determina il tipo di crittografia, Rijndael o TripleDES. Il campo corrispondente nella classe, crpSym, è del tipo astratto SymmetricAlgorithm. È impostato su un'istanza della classe Rijndael o della classe TripleDESCryptoServiceProvider. Il metodo CreateSaltIVFile salva i valori salt e IV in un file DAT. I metodi Decrypt e Encrypt elaborano il file di origine specificato nella proprietà SourceFileName.
Quando viene caricato il form viene creata un'istanza della classe SampleCrypto. I controlli del form illustrano i metodi e le proprietà della classe SampleCrypto. Quando viene selezionato il controllo Encrypt with Password, la chiave non viene generata e impostata automaticamente, ma viene derivata da una password per cui è stato generato il valore salt. Inoltre, il valore salt e il vettore di inizializzazione (IV) vengono resi persistenti, in formato non crittografato, in un file DAT. In questo modo è possibile capire come inviare in modo protetto un documento a qualcuno: il documento crittografato può essere inviato lungo un collegamento non protetto e il file DAT e la password possono essere trasferiti in modo protetto utilizzando la crittografia asimmetrica (con chiave pubblica). Questa è la forma più protetta di crittografia, ma richiede molto più tempo. Per questo motivo viene di norma utilizzata per elementi piccoli, ad esempio una chiave privata, un file salt/IV o una password.
Vedere anche
Concetti
Modello di crittografia di .NET Framework
Nota sulla sicurezza: