O modo Encadeamento de Blocos de Criptografia (CBC) apresenta comentários.The Cipher Block Chaining (CBC) mode introduces feedback.Antes de cada bloco de texto sem formatação ser criptografado, ele é combinado com o texto criptografado do bloco anterior por uma operação OR exclusiva bit a bit.Before each plain text block is encrypted, it is combined with the cipher text of the previous block by a bitwise exclusive OR operation.Isso garante que mesmo se o texto sem formatação contiver muitos blocos idênticos, cada um criptografará para um bloco de texto criptografado diferente.This ensures that even if the plain text contains many identical blocks, they will each encrypt to a different cipher text block.O vetor de inicialização é combinado com o primeiro bloco de texto sem formatação por uma operação OR exclusiva bit a bit antes de o bloco ser criptografado.The initialization vector is combined with the first plain text block by a bitwise exclusive OR operation before the block is encrypted.Se um único bit do bloco de texto criptografado estiver danificado, o bloco de texto sem formatação correspondente também será danificado.If a single bit of the cipher text block is mangled, the corresponding plain text block will also be mangled.Além disso, um bit no bloco subsequente, na mesma posição que o bit danificado original, será danificado.In addition, a bit in the subsequent block, in the same position as the original mangled bit, will be mangled.
CFB
4
O modo Comentários de Criptografia (CFB) processa pequenos incrementos de texto sem formatação em texto criptografado, em vez de processar um bloco inteiro por vez.The Cipher Feedback (CFB) mode processes small increments of plain text into cipher text, instead of processing an entire block at a time.Esse modo usa um registrador de deslocamento que é um bloco no tamanho e é dividido em seções.This mode uses a shift register that is one block in length and is divided into sections.Por exemplo, se o tamanho do bloco é de 8 bytes, com um byte processado por vez, o registrador de deslocamento é dividido em oito seções.For example, if the block size is 8 bytes, with one byte processed at a time, the shift register is divided into eight sections.Se um bit no texto criptografado estiver danificado, um bit de texto sem formatação será danificado e o registrador de deslocamento será corrompido.If a bit in the cipher text is mangled, one plain text bit is mangled and the shift register is corrupted.Isso faz com que os próximos vários incrementos de texto sem formatação sejam danificados até que o bit incorreto seja deslocado para fora do registrador de deslocamento.This results in the next several plain text increments being mangled until the bad bit is shifted out of the shift register.O tamanho de comentários padrão pode variar de acordo com o algoritmo, mas, normalmente, é 8 bits ou o número de bits do tamanho do bloco.The default feedback size can vary by algorithm, but is typically either 8 bits or the number of bits of the block size.Você pode alterar o número de bits de comentários usando a propriedade FeedbackSize.You can alter the number of feedback bits by using the FeedbackSize property.Os algoritmos que dão suporte a CFB usam essa propriedade para definir os comentários.Algorithms that support CFB use this property to set the feedback.
CTS
5
O modo Roubo de Texto Criptografado (CTS) trata qualquer tamanho de texto sem formatação e produz texto criptografado cujo tamanho corresponde ao tamanho do texto sem formatação.The Cipher Text Stealing (CTS) mode handles any length of plain text and produces cipher text whose length matches the plain text length.Esse modo se comporta como o modo CBC para todos, exceto para os dois últimos blocos do texto sem formatação.This mode behaves like the CBC mode for all but the last two blocks of the plain text.
ECB
2
O modo Livro de Códigos Eletrônico (ECB) criptografa cada bloco individualmente.The Electronic Codebook (ECB) mode encrypts each block individually.Todos os blocos de texto sem formatação que são idênticos e estão na mesma mensagem ou que estão em uma mensagem criptografada diferente com a mesma chave, serão transformados em blocos de texto criptografado idênticos.Any blocks of plain text that are identical and in the same message, or that are in a different message encrypted with the same key, will be transformed into identical cipher text blocks.Importante: este modo não é recomendado porque abre as portas para várias explorações de segurança.Important: This mode is not recommended because it opens the door for multiple security exploits.Se o texto sem formatação a ser criptografado contiver repetição substancial, é provável que o texto criptografado será dividido em um bloco por vez.If the plain text to be encrypted contains substantial repetition, it is feasible for the cipher text to be broken one block at a time.Também é possível usar a análise de bloco para determinar a chave de criptografia.It is also possible to use block analysis to determine the encryption key.Além disso, um adversário ativo pode substituir e trocar blocos individuais sem detecção, o que permite que os blocos sejam salvos e inseridos no fluxo em outros pontos sem detecção.Also, an active adversary can substitute and exchange individual blocks without detection, which allows blocks to be saved and inserted into the stream at other points without detection.
OFB
3
O modo Comentários de Saída (OFB) processa pequenos incrementos de texto sem formatação em texto criptografado em vez de processar um bloco inteiro por vez.The Output Feedback (OFB) mode processes small increments of plain text into cipher text instead of processing an entire block at a time.Esse modo é semelhante ao CFB, a única diferença entre os dois modos é a maneira que o registrador de deslocamento é preenchido.This mode is similar to CFB; the only difference between the two modes is the way that the shift register is filled.Se um bit no texto criptografado for danificado, o bit correspondente do texto sem formatação será danificado.If a bit in the cipher text is mangled, the corresponding bit of plain text will be mangled.No entanto, se houver bits extras ou ausentes do texto criptografado, o texto sem formatação será danificado desse ponto.However, if there are extra or missing bits from the cipher text, the plain text will be mangled from that point on.
Comentários
Os algoritmos de codificação de bloco criptografam dados em unidades de bloco, em vez de um único byte por vez.Block cipher algorithms encrypt data in block units, rather than a single byte at a time.O tamanho de bloco mais comum é de 8 bytes.The most common block size is 8 bytes.Como cada bloco é processado intensamente, as codificações de bloco fornecem um nível mais alto de segurança do que as codificações de fluxo.Because each block is heavily processed, block ciphers provide a higher level of security than stream ciphers.No entanto, os algoritmos de codificação de bloco tendem a ser executados mais lentamente que as codificações de fluxo.However, block cipher algorithms tend to execute more slowly than stream ciphers.
As codificações de bloco usam o mesmo algoritmo de criptografia para cada bloco.Block ciphers use the same encryption algorithm for each block.Por isso, um bloco de texto sem formatação sempre retornará o mesmo texto cifrado quando criptografado com a mesma chave e algoritmo.Because of this, a block of plain text will always return the same cipher text when encrypted with the same key and algorithm.Como esse comportamento pode ser usado para decifrar, são introduzidos modos de codificação que modificam o processo de criptografia com base nos comentários de criptografias de bloco anteriores.Because this behavior can be used to crack a cipher, cipher modes are introduced that modify the encryption process based on feedback from earlier block encryptions.A criptografia resultante fornece um nível mais alto de segurança do que uma simples criptografia de bloco.The resulting encryption provides a higher level of security than a simple block encryption.