Apresente os conceitos básicos de cifras de bloco.
Explique o princípio de funcionamento, vantagens e desvantagens e cenários de aplicação do modo BCE.
Introdução detalhada ao princípio de funcionamento, vantagens e desvantagens e cenários de aplicação do modo CBC.
Explique o princípio de funcionamento, vantagens e desvantagens e cenários de aplicação do modo CFB.
Explique o princípio de funcionamento, vantagens e desvantagens e cenários de aplicação do modo OFB.
Resuma e dê sugestões para seleção de modo.
por que
Quando é necessário criptografar texto simples de qualquer tamanho, a iteração do grupo é necessária para a criptografia. Existem muitos modos de cifras de bloco. Se o modo não for escolhido corretamente, a confidencialidade do texto não pode ser totalmente garantida.
Conceitos básicos de cifras de bloco e cifras de fluxo
cifra de bloco : divida os dados de texto simples em blocos de comprimento fixo (geralmente 128 ou 64 bits) e depois criptografe-os bloco por bloco. Cada bloco é chamado de bloco.
cifra de fluxo: Algoritmo de criptografia para processamento contínuo de fluxos de dados, criptografia bit a bit ou byte a byte, adequado para criptografia de fluxos de dados.
o que é padrão
O padrão é um algoritmo iterativo para a cifra de bloco
Por exemplo, frequentemente usamos o modo BCE no algoritmo DES. O modo BCE é um método de dividir o texto simples em vários grupos e criptografá-los um por um. O algoritmo do BCE tem uma pequena quantidade de cálculo e alta velocidade de criptografia e descriptografia, mas agora foi comprovado que o BCE não é um modo confiável. Portanto, não use o modo BCE em ocasiões formais
Padrões comuns em cifras de bloco
1. Modo BCE (modo livro de código eletrônico)
O BCE agrupa o texto simples e o criptografa diretamente para gerar grupos de texto cifrado.
princípio de trabalho:
Divida o texto simples em vários pacotes de comprimento fixo.
Cada grupo é criptografado de forma independente.
vantagem:
O cálculo é simples e rápido.
Suporta processamento paralelo.
deficiência:
O mesmo agrupamento de texto simples produzirá o mesmo agrupamento de texto cifrado, e o padrão e a estrutura do texto simples não podem ser ocultados.
Vulnerável a ataques de análise estatística.
Cenários de aplicação:
Não é adequado para criptografia de informações confidenciais e não é recomendado para uso em ocasiões formais.
No modo BCE, o texto simples e o texto cifrado têm uma correspondência um-para-um. O mesmo texto simples deve resultar no mesmo texto cifrado.Portanto, embora o texto simples não possa ser deduzido diretamente do texto cifrado, ataques direcionados podem ser realizados com base nas características do texto cifrado.
Por exemplo: Bob envia uma mensagem de transferência para Alice:
分组1=Bob的银行账号
分组2=Alice的银行账号
分组3= 转账金额
Embora Eve não possa modificar diretamente o número e o valor da conta (porque não há dados descriptografados), Eve pode causar um ataque trocando o grupo 1 e o grupo 2.
分组1=Alice的银行账号
分组2=Bob的银行账号
分组3= 转账金额
Este método de ataque é bem sucedido porque o BCE não esconde informações em texto simples.
2. Modo CBC (modo de encadeamento de grupo de texto cifrado)
Modo de link de grupo de texto cifrado
princípio de trabalho:
O primeiro bloco de texto simples é submetido a um XOR com o vetor de inicialização (IV) e então criptografado para gerar o primeiro bloco de texto cifrado.
Cada grupo de texto simples subsequente é submetido a um XOR com o grupo de texto cifrado anterior e então criptografado para gerar o grupo de texto cifrado correspondente.
vantagem:
Capaz de ocultar padrões e estruturas de texto simples para melhorar a segurança.
Suporta descriptografia paralela.
deficiência:
O processamento paralelo não é suportado durante a criptografia e deve ser executado em série.
Se um determinado grupo de texto cifrado for danificado, isso afetará a descriptografia do grupo atual e do próximo.
A parte principal do CBC é trazer o grupo de texto cifrado anterior como uma variável para a próxima criptografia de texto simples. Desta forma, mesmo que o texto simples seja o mesmo, resultados diferentes aparecerão após a operação XOR do texto cifrado. Desta forma, o objetivo de ofuscar informações em texto simples é alcançado.
Mas não sei se você percebeu como lidar com o primeiro grupo de texto simples? Ao processar o primeiro pacote de texto simples, o XOR é 0. Em seguida, o pacote de texto cifrado A degenera no modo ECB. Para evitar esta situação, precisamos complementar artificialmente um grupo de texto cifrado inicial. Esse grupo de texto cifrado inicial é chamado de componente IV.
Cenários de aplicação:
Usado em cenários onde é necessária alta segurança e a criptografia serial pode ser tolerada, como a criptografia de arquivos.
3. Modo CFB (modo de feedback de texto cifrado)
Uma melhoria no modelo CBC
No modo CFB, apenas a operação XOR é executada entre o grupo de texto simples e o grupo de texto cifrado. Neste momento, a saída do algoritmo criptográfico tem algum significado de bloco único.
princípio de trabalho:
O primeiro bloco de texto simples é submetido a um XOR com o vetor de inicialização (IV) e então criptografado para gerar o primeiro bloco de texto cifrado.
Cada grupo de texto simples subsequente é submetido a um XOR com o grupo de texto cifrado anterior e então criptografado para gerar o grupo de texto cifrado correspondente.
vantagem:
Suporta descriptografia paralela.
Pode descriptografar qualquer grupo de texto cifrado.
deficiência:
Não imune a ataques de repetição.
Cenários de aplicação:
Criptografia de comunicações em tempo real, como transmissão de dados em rede.
4. Modo OFB (modo de feedback de saída)
Modo de feedback de saída. A saída do algoritmo criptográfico realimenta a entrada do algoritmo criptográfico
OFB não criptografa texto simples por meio de um algoritmo criptográfico, mas gera texto cifrado fazendo XOR no grupo de texto simples com a saída do algoritmo criptográfico. Portanto, OFB e CFB também são um tanto semelhantes.
princípio de trabalho:
O vetor de inicialização (IV) é inserido no algoritmo de criptografia, produzindo uma saída pseudo-aleatória.
O grupo de texto simples é submetido a um XOR com a saída pseudo-aleatória para produzir um grupo de texto cifrado.
A saída pseudo-aleatória é realimentada para o algoritmo de criptografia, que continua a gerar a próxima saída pseudo-aleatória.
vantagem:
Nenhum preenchimento é necessário.
Se o texto cifrado contiver bits errados, apenas os bits de texto simples correspondentes estarão errados.
deficiência:
A descriptografia paralela não é suportada.
Existe o risco de ataques de reversão de bits.
Cenários de aplicação:
Cenários que exigem alta tolerância a erros, como criptografia de fluxo de vídeo.
Sugestões de seleção de modo
Modo BCE: Simples e rápido, mas inseguro e não recomendado.
Modo CBC: Adequado para cenários com altos requisitos de segurança, como criptografia de arquivos, e é recomendado.
Modo CFB: Adequado para comunicação em tempo real e suporta descriptografia paralela, mas precisa evitar ataques de repetição.
Modo OFB: adequado para cenários com altos requisitos de tolerância a erros, mas não oferece suporte à descriptografia paralela.