As Cifras de fluxo são um tipo de Algoritmos de chave simétrica. Neste tipo de cifras, os bits originais são combinados com uma corrente de bits de cifragem (chamados de fluxo de chave) vindos de um gerador de dígitos pseudo-aleatório. Normalmente esta combinação é feita através de uma operação de disjunção exclusiva ou XOR.[1]
Segurança
- Artigo principal: Ataques a Cifras de Fluxo
Para que uma cifra de fluxo seja segura, o fluxo de dígitos pseudo-aleatórios deve ter um período grande. De preferência, este período deve ser maior que o tamanho da mensagem. Caso contrário, os ciclos deste fluxo de dígitos pseudo-aleatório vão facilitar a tarefa de criptoanálise se forem conhecidas amostras do conteúdo original.
Deve ainda ser impossível recuperar a chave ou o estado interno a partir do fluxo de dígitos.
Os criptógrafos exigem que estes fluxos de dígitos pseudo-aleatórios sejam livres de padrões que permitam aos atacantes distinguir o fluxo de simples ruído aleatório. Não deve ser possível detectar relações entre fluxos que sejam gerados a partir de chaves relacionadas. Isto deve acontecer para todas as chaves (não deve haver chaves fracas) mesmo que o atacante consiga saber ou escolher alguma parte da mensagem original ou cifrada.
Para que seja mantida a segurança, quando se usa uma cifra de fluxo sincronizada, exige-se que nunca se reutilize o mesmo fluxo de dígitos. Isso significa, geralmente, que a cifra deve ser invocada com uma chave diferente.
Os programadores de aplicações devem reconhecer que a maioria das cifras de fluxo não garantem autenticidade, apenas privacidade. As mensagens cifradas podem ter sido modificadas durante a transmissão.
Referências
- ↑ «Cifra de fluxo». Encyclopædia Britannica Online (em inglês). Consultado em 26 de agosto de 2020