Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie le mode de chiffrement par bloc à utiliser pour le chiffrement.
public enum class CipherMode
public enum CipherMode
[System.Serializable]
public enum CipherMode
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum CipherMode
type CipherMode =
[<System.Serializable>]
type CipherMode =
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CipherMode =
Le mode CBC (Cipher Block Chaining) introduit des commentaires. Avant que chaque bloc de texte brut ne soit chiffré, il est combiné au texte de chiffrement du bloc précédent à l'aide d'une opération de bits XOR. Cela permet de garantir que même si le texte brut contient de nombreux blocs identiques, chacun d'eux sera chiffré à l'aide d'un bloc de texte de chiffrement différent. Le vecteur d'initialisation est combiné au premier bloc de texte brut à l'aide d'une opération de bits XOR, avant que le bloc ne soit chiffré. Si un seul bit du bloc de texte de chiffrement est tronqué, le bloc de texte brut correspondant est également tronqué. En outre, un bit du bloc suivant, situé au même emplacement que le bit tronqué d'origine, est lui aussi tronqué.
CFB
4
Le mode CFB (Cipher Feedback) convertit de petits incréments de texte brut en texte de chiffrement, au lieu de convertir tout un bloc. Ce mode utilise un registre à décalage d'un bloc de longueur, qui se décompose en sections. Par exemple, si la taille du bloc est de 8 octets, et qu'un seul octet est converti à la fois, le registre à décalage se décompose en huit sections. Si un bit du texte de chiffrement est tronqué, un bit du texte brut est également tronqué ; en outre, le registre à décalage est endommagé. Par conséquent, les incréments de texte brut suivants sont tronqués jusqu'à ce que le bit incorrect soit exclu du registre à décalage. La taille des commentaires par défaut peut varier en fonction de l'algorithme, mais est généralement de 8 bits ou du nombre de bits de la taille du bloc. Vous pouvez modifier le nombre de bits des commentaires à l'aide de la propriété FeedbackSize. Les algorithmes qui prennent en charge le mode CFB (Cipher Feedback) utilisent cette propriété pour définir les commentaires.
CTS
5
Le mode CTS (Cipher Text Stealing) gère toutes les longueurs de texte brut et produit un texte de chiffrement dont la longueur correspond à celle du texte brut. Ce mode a un comportement similaire au mode CBC, sauf en ce qui concerne les deux derniers blocs de texte brut.
ECB
2
Le mode ECB (Electronic Codebook) chiffre chaque bloc individuellement. Tous les blocs de texte brut identiques qui se trouvent dans le même message, ou qui se trouvent dans un message différent chiffré à l'aide de la même clé, sont transformés en blocs de texte de chiffrement identiques.
Important : ce mode n’est pas recommandé, car il ouvre la porte à plusieurs attaques de sécurité. Si le texte brut à chiffrer contient de nombreuses répétitions, le texte de chiffrement peut être déchiffré bloc par bloc. Il est également possible d'utiliser l'analyse des blocs pour déterminer la clé de chiffrement. En outre, un adversaire suffisamment tenace peut substituer et d'échanger des blocs individuels sans être détecté, ce qui permet l'enregistrement et l'insertion de blocs dans le flux à des points différents sans risque de détection.
OFB
3
Le mode OFB (Output Feedback) convertit de petits incréments de texte brut en texte de chiffrement, au lieu de convertir tout un bloc. Ce mode est similaire au mode CFB ; la seule différence entre ces deux modes réside dans la méthode de remplissage du registre à décalage. Si un bit du texte de chiffrement est tronqué, le bit de texte brut correspondant est également tronqué. Cependant, si des bits manquent dans le texte de chiffrement, ou si ce dernier contient des bits supplémentaires, le texte brut est tronqué à partir de cet emplacement.
Remarques
Les algorithmes de chiffrement de blocs chiffrent les données en unités de blocs, plutôt qu’un seul octet à la fois. La taille de bloc la plus courante est de 8 octets. Étant donné que chaque bloc est fortement traité, les chiffrements de blocs offrent un niveau de sécurité plus élevé que les chiffrements de flux. Toutefois, les algorithmes de chiffrement de blocs ont tendance à s’exécuter plus lentement que les chiffrements de flux.
Les chiffrements de blocs utilisent le même algorithme de chiffrement pour chaque bloc. Pour cette raison, un bloc de texte brut retourne toujours le même texte de chiffrement lorsqu’il est chiffré avec la même clé et le même algorithme. Étant donné que ce comportement peut être utilisé pour déchiffrer un chiffrement, des modes de chiffrement sont introduits qui modifient le processus de chiffrement en fonction des commentaires des chiffrements de blocs antérieurs. Le chiffrement résultant offre un niveau de sécurité plus élevé qu’un simple chiffrement de bloc.
La source de ce contenu se trouve sur GitHub, où vous pouvez également créer et examiner les problèmes et les demandes de tirage (pull requests). Pour plus d’informations, consultez notre guide du contributeur.