Questão nº 55
Questão de Análise de Sistemas · FGV TJDFT 2022 (nº 55)
O departamento de segurança da informação do TJDFT vinha percebendo que suas mensagens cifradas não eram computacionalmente seguras, por isso resolveram alterar o modo de operação do algoritmo utilizado para o modo counter (CTR).
Para melhorar os níveis de segurança no trâmite das mensagens, as características do CTR que devem ser selecionadas são:
- Aa não utilização do preenchimento, operação em tempo real, texto cifrado com mesmo tamanho do texto em claro, e cifra e decifra com o mesmo algoritmo;
- Balgoritmo de cifração e decifração diferentes, paralelismo de múltiplos blocos, trocar as chaves com segurança;
- Cdisponibilidade de um valor de nonce, não utilização de preenchimento, paralelismo de múltiplos blocos e pré-processamento de dados; (alternativa correta)
- Dcifração e decifração com o mesmo algoritmo, um valor inicial de nonce disponível, a saída da encriptação em um bloco é entrada do próximo bloco;
- Ealgoritmo de cifração e decifração diferentes, o bloco seguinte depende da cifração anterior e remoção dos padrões do texto em claro.
Resposta comentada
Gabarito Alternativa C
O modo CTR (Counter) transforma um cifra de bloco em uma cifra de fluxo: ele gera um fluxo de chave (keystream) cifrando um contador que é incrementado a cada bloco, e depois faz um XOR desse fluxo com o texto claro. Por isso, ele não precisa de preenchimento (padding), pode ser processado em paralelo (cada bloco é independente) e permite pré-processar o keystream antes mesmo de ter o texto claro.
- (A) Incorreta: Apesar de o CTR realmente não usar preenchimento e operar em tempo real, a parte final "cifra e decifra com o mesmo algoritmo" é verdadeira, mas a alternativa omite o nonce (essencial no CTR) e inclui "texto cifrado com mesmo tamanho do texto em claro" como se fosse exclusividade — o que é consequência, não característica distintiva. A pegadinha: mistura verdades, mas não lista o requisito crítico do nonce.
- (B) Incorreta: CTR usa o mesmo algoritmo para cifrar e decifrar (a operação é idêntica, apenas muda a entrada). A banca tenta confundir com o modo CBC, onde a decifração usa o inverso da cifra. Além disso, "trocar as chaves com segurança" não é uma característica do modo de operação, mas um procedimento de gerenciamento de chaves.
- (C) Correta: O CTR exige um nonce (número usado uma única vez) para evitar reutilização do keystream; não usa preenchimento (o fluxo de chave é truncado no último bloco); permite paralelismo total (cada bloco cifra o contador independentemente); e permite pré-processamento (o keystream pode ser calculado antes de receber o texto claro, pois só depende do nonce e da chave).
- (D) Incorreta: A frase "a saída da encriptação em um bloco é entrada do próximo bloco" descreve o modo CBC, não o CTR. No CTR, cada bloco cifra um valor de contador independente (nonce + contador), sem encadeamento. A pegadinha: o examinador inverte a característica de um modo para outro.
- (E) Incorreta: CTR usa o mesmo algoritmo para cifrar e decifrar (não algoritmos diferentes). A frase "o bloco seguinte depende da cifração anterior" também é típica do CBC/CFB, não do CTR. E "remoção dos padrões do texto em claro" é um conceito vago, não uma propriedade formal do modo.
Resumo para fixar: no CTR, pense em "contador + nonce" → cifra → XOR com o texto. Como cada bloco é independente, você pode calcular tudo em paralelo e até antes de ter a mensagem. Se a alternativa falar em "dependência entre blocos" ou "algoritmos diferentes", é pegadinha de outro modo (CBC/CFB).
Fonte: FGV TJDFT 2022 Analista Judiciário - Análise de Sistemas (Caderno Tipo 1). Reproduzida para fins de estudo.