Análise diferencial de falhas
Ataque que provoca erros durante o cálculo de uma cifra e compara saídas corretas e defeituosas para recuperar a chave.
A análise diferencial de falhas (DFA) explora o fato de que uma operação criptográfica pode devolver um resultado errado quando alguém perturba o hardware, por exemplo com glitches de tensão, pulsos de laser ou radiação. O atacante compara o texto cifrado correto com o defeituoso. Como a falha atinge só uma pequena parte de um estado intermediário conhecido, a diferença pode revelar bits da chave.
Dois artigos de 1997 tornaram a técnica famosa. Biham e Shamir mostraram que o DES podia ser quebrado com DFA. Boneh, DeMillo e Lipton mostraram que implementações de RSA com a otimização CRT podiam vazar a chave privada inteira a partir de uma única assinatura defeituosa. Esse é o chamado ataque Bellcore, em referência ao laboratório onde o trabalho foi feito.
A lição é que um protocolo comprovadamente sólido não basta se a implementação puder ser induzida a errar. Defesas como computação redundante e verificação de erros custam desempenho, e por isso costumam aparecer onde realmente são necessárias, como em cartões de pagamento e módulos de segurança.