As duas principais abordagens para atacar uma cifra são:
1.
Cryptanálise: Isso envolve tentar quebrar a cifra analisando sua estrutura e propriedades sem conhecer a chave. Isso depende da exploração de fraquezas no design ou implementação do algoritmo. As técnicas incluem análise de frequência, ataques de planagem conhecida, ataques escolhidos por planagem, ataques escolhidos por texto e criptonálise diferencial/linear.
2.
ataque de força bruta: Isso envolve sistematicamente tentar todas as teclas possíveis até que a correta seja encontrada. Isso é computacionalmente caro e sua viabilidade depende fortemente do comprimento da chave. As teclas mais curtas são vulneráveis a ataques de força bruta mais prontamente do que as teclas mais longas.