Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Specifica la modalità di crittografia a blocchi da usare per la crittografia.
public enum class CipherMode
[System.Serializable]
public enum CipherMode
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum CipherMode
public enum CipherMode
[<System.Serializable>]
type CipherMode =
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CipherMode =
La modalità Cipher Block Chaining (CBC) introduce feedback. Prima che ogni blocco di testo normale venga crittografato, viene combinato con il testo crittografato del blocco precedente tramite un'operazione OR esclusiva bit per bit. In questo modo, anche se il testo normale contiene molti blocchi identici, ognuno esegue la crittografia in un blocco di testo crittografato diverso. Il vettore di inizializzazione viene combinato con il primo blocco di testo normale da un'operazione OR esclusiva bit per bit prima che il blocco venga crittografato. Se un singolo bit del blocco di testo crittografato viene sbrogliato, verrà anche mangled il blocco di testo normale corrispondente. Inoltre, un po ' nel blocco successivo, nella stessa posizione del bit mangled originale, verrà mangled.
ECB
2
La modalità Electronic Codebook (ECB) crittografa ogni blocco singolarmente. Tutti i blocchi di testo normale identici e nello stesso messaggio, o che si trovano in un messaggio diverso crittografato con la stessa chiave, verranno trasformati in blocchi di testo crittografati identici.
Importante: questa modalità non è consigliata perché apre la porta per più exploit di sicurezza. Se il testo normale da crittografare contiene una ripetizione sostanziale, è possibile che il testo crittografato venga interrotto un blocco alla volta. È anche possibile usare l'analisi dei blocchi per determinare la chiave di crittografia. Inoltre, un antagonista attivo può sostituire e scambiare singoli blocchi senza rilevamento, che consente di salvare e inserire blocchi nel flusso in altri punti senza rilevamento.
OFB
3
La modalità Feedback output (OFB) elabora piccoli incrementi di testo normale in testo crittografato anziché elaborare un intero blocco alla volta. Questa modalità è simile a CFB. L'unica differenza tra le due modalità è la modalità di riempimento del registro di spostamento. Se un po' nel testo crittografato viene sbrogliato, il bit corrispondente di testo normale verrà sbrogliato. Tuttavia, se ci sono bit aggiuntivi o mancanti dal testo crittografato, il testo normale verrà sbrogliato da quel punto in poi.
CFB
4
La modalità Cipher Feedback (CFB) elabora piccoli incrementi di testo normale in testo crittografato, anziché elaborare un intero blocco alla volta. Questa modalità usa un registro di spostamento di lunghezza di un blocco ed è suddiviso in sezioni. Ad esempio, se la dimensione del blocco è di 8 byte, con un byte elaborato alla volta, il registro di turno viene diviso in otto sezioni. Se un po' nel testo crittografato viene sbrogliato, un bit di testo normale viene sbrogliato e il registro di spostamento è danneggiato. In questo modo, i successivi incrementi di testo normale vengono spostati fino a quando il bit non valido non viene spostato dal registro di turno. Le dimensioni predefinite del feedback possono variare in base all'algoritmo, ma in genere sono 8 bit o il numero di bit delle dimensioni del blocco. È possibile modificare il numero di bit di feedback usando la FeedbackSize proprietà . Gli algoritmi che supportano l'uso di QUESTA proprietà usano questa proprietà per impostare il feedback.
CTS
5
La modalità Furto testo crittografato (CTS) gestisce qualsiasi lunghezza di testo normale e produce testo crittografato la cui lunghezza corrisponde alla lunghezza del testo normale. Questa modalità si comporta come la CBC modalità per tutti gli ultimi due blocchi del testo normale.
Commenti
Gli algoritmi di crittografia a blocchi crittografano i dati in unità di blocco anziché un singolo byte alla volta. La dimensione del blocco più comune è di 8 byte. Poiché ogni blocco viene elaborato pesantemente, le crittografie a blocchi offrono un livello di sicurezza superiore rispetto alle crittografie di flusso. Tuttavia, gli algoritmi di crittografia a blocchi tendono a essere eseguiti più lentamente rispetto alle crittografie di flusso.
Le crittografie a blocchi usano lo stesso algoritmo di crittografia per ogni blocco. Per questo motivo, un blocco di testo normale restituirà sempre lo stesso testo crittografato quando viene crittografato con la stessa chiave e algoritmo. Poiché questo comportamento può essere usato per violare una crittografia, vengono introdotte le modalità di crittografia che modificano il processo di crittografia in base al feedback delle crittografie dei blocchi precedenti. La crittografia risultante offre un livello di sicurezza superiore rispetto a una semplice crittografia a blocchi.