Ataques a criptossistemas
Na era atual, não apenas os negócios, mas quase todos os aspectos da vida humana são movidos pela informação. Portanto, tornou-se imperativo proteger informações úteis de atividades maliciosas, como ataques. Vamos considerar os tipos de ataques aos quais as informações normalmente estão sujeitas.
Os ataques são normalmente categorizados com base na ação realizada pelo invasor. Um ataque, portanto, pode serpassive ou active.
Ataques passivos
O principal objetivo de um ataque passivo é obter unauthorized access to the information. Por exemplo, ações como interceptar e espionar no canal de comunicação podem ser consideradas ataque passivo.
Essas ações são de natureza passiva, pois não afetam as informações nem interrompem o canal de comunicação. Um ataque passivo costuma ser visto como roubo de informações. A única diferença em roubar bens físicos e roubar informações é que o roubo de dados ainda deixa o proprietário na posse desses dados. O ataque passivo de informações é, portanto, mais perigoso do que o roubo de mercadorias, pois o roubo de informações pode passar despercebido pelo proprietário.
Ataques Ativos
Um ataque ativo envolve alterar as informações de alguma forma, conduzindo algum processo nas informações. Por exemplo,
Modificando as informações de maneira não autorizada.
Iniciar a transmissão não intencional ou não autorizada de informações.
Alteração de dados de autenticação, como nome do originador ou carimbo de data / hora associado às informações
Exclusão não autorizada de dados.
Negação de acesso às informações para usuários legítimos (negação de serviço).
A criptografia fornece muitas ferramentas e técnicas para implementar sistemas de criptografia capazes de prevenir a maioria dos ataques descritos acima.
Suposições do invasor
Vejamos o ambiente predominante em torno dos criptossistemas, seguido pelos tipos de ataques empregados para quebrar esses sistemas -
Ambiente em torno do criptossistema
Ao considerar possíveis ataques ao criptossistema, é necessário conhecer o ambiente do criptossistema. As suposições e o conhecimento do invasor sobre o ambiente decidem suas capacidades.
Na criptografia, as três suposições a seguir são feitas sobre o ambiente de segurança e os recursos do invasor.
Detalhes do esquema de criptografia
O projeto de um criptosistema é baseado nos seguintes dois algoritmos de criptografia -
Public Algorithms - Com esta opção, todos os detalhes do algoritmo são de domínio público, conhecidos por todos.
Proprietary algorithms - Os detalhes do algoritmo são conhecidos apenas pelos projetistas e usuários do sistema.
No caso de algoritmos proprietários, a segurança é garantida através da obscuridade. Os algoritmos privados podem não ser os algoritmos mais fortes, pois são desenvolvidos internamente e não podem ser investigados extensivamente quanto a fraquezas.
Em segundo lugar, eles permitem a comunicação apenas entre grupos fechados. Portanto, eles não são adequados para a comunicação moderna, onde as pessoas se comunicam com um grande número de entidades conhecidas ou desconhecidas. Além disso, de acordo com o princípio de Kerckhoff, o algoritmo é preferível para ser público, com a força da criptografia na chave .
Assim, a primeira suposição sobre o ambiente de segurança é que o encryption algorithm is known to the attacker.
Disponibilidade de texto cifrado
Sabemos que, uma vez que o texto simples é criptografado em texto cifrado, ele é colocado em um canal público não seguro (digamos e-mail) para transmissão. Assim, o invasor pode obviamente assumir queaccess to the ciphertext generated by the cryptosystem.
Disponibilidade de texto simples e texto cifrado
Essa suposição não é tão óbvia quanto a outra. No entanto, pode haver situações em que um invasor pode teraccess to plaintext and corresponding ciphertext. Algumas dessas possíveis circunstâncias são -
O invasor influencia o remetente a converter o texto simples de sua escolha e obtém o texto cifrado.
O receptor pode divulgar o texto simples ao invasor inadvertidamente. O invasor tem acesso ao texto cifrado correspondente obtido do canal aberto.
Em um criptosistema de chave pública, a chave de criptografia está em domínio aberto e é conhecida por qualquer invasor em potencial. Usando essa chave, ele pode gerar pares de textos simples e cifrados correspondentes.
Ataques criptográficos
A intenção básica de um invasor é quebrar um criptosistema e encontrar o texto simples do texto cifrado. Para obter o texto simples, o invasor precisa apenas descobrir a chave de descriptografia secreta, pois o algoritmo já é de domínio público.
Portanto, ele se esforça ao máximo para descobrir a chave secreta usada no criptosistema. Depois que o invasor consegue determinar a chave, o sistema atacado é considerado quebrado ou comprometido .
Com base na metodologia utilizada, os ataques a criptosistemas são categorizados da seguinte forma -
Ciphertext Only Attacks (COA)- Nesse método, o invasor tem acesso a um conjunto de texto (s) cifrado (s). Ele não tem acesso ao texto simples correspondente. O COA é considerado bem-sucedido quando o texto simples correspondente pode ser determinado a partir de um determinado conjunto de texto cifrado. Ocasionalmente, a chave de criptografia pode ser determinada a partir deste ataque. Os criptossistemas modernos são protegidos contra ataques apenas de texto cifrado.
Known Plaintext Attack (KPA)- Nesse método, o invasor conhece o texto simples de algumas partes do texto cifrado. A tarefa é descriptografar o restante do texto cifrado usando essas informações. Isso pode ser feito determinando a chave ou por algum outro método. O melhor exemplo desse ataque é a criptoanálise linear contra cifras de bloco.
Chosen Plaintext Attack (CPA)- Neste método, o atacante tem o texto de sua escolha criptografado. Portanto, ele tem o par texto cifrado-texto simples de sua escolha. Isso simplifica sua tarefa de determinar a chave de criptografia. Um exemplo desse ataque é a criptoanálise diferencial aplicada contra cifras de bloco, bem como funções hash. Um criptosistema de chave pública popular, o RSA também é vulnerável a ataques de texto simples escolhido.
Dictionary Attack- Este ataque tem muitas variantes, todas envolvendo a compilação de um 'dicionário'. No método mais simples desse ataque, o invasor constrói um dicionário de textos cifrados e textos planos correspondentes que ele aprendeu ao longo de um período de tempo. No futuro, quando um invasor obtém o texto cifrado, ele consulta o dicionário para encontrar o texto simples correspondente.
Brute Force Attack (BFA)- Neste método, o invasor tenta determinar a chave tentando todas as chaves possíveis. Se a chave tiver 8 bits, então o número de chaves possíveis é 2 8 = 256. O invasor conhece o texto cifrado e o algoritmo, agora ele tenta todas as 256 chaves uma por uma para descriptografar. O tempo para completar o ataque seria muito alto se a chave fosse longa.
Birthday Attack- Este ataque é uma variante da técnica de força bruta. É usado na função hash criptográfica. Quando os alunos de uma classe são questionados sobre seus aniversários, a resposta é uma das 365 datas possíveis. Vamos supor data de nascimento do primeiro estudante é de 3 rd agosto Depois de encontrar o próximo aluno cuja data de nascimento é de 3 rd Ago precisamos perguntar 1,25 * ?? √365 ≈ 25 alunos.
Da mesma forma, se a função hash produz valores de hash de 64 bits, os valores de hash possíveis são 1,8x10 19 . Ao avaliar repetidamente a função para diferentes entradas, espera-se que a mesma saída seja obtida após cerca de 5,1x10 9 entradas aleatórias.
Se o invasor conseguir encontrar duas entradas diferentes que fornecem o mesmo valor de hash, é um collision e essa função hash está quebrada.
Man in Middle Attack (MIM) - Os alvos desse ataque são principalmente criptosistemas de chave pública, onde a troca de chaves é envolvida antes que a comunicação ocorra.
Anfitrião Um quer se comunicar com o host B , portanto, solicita a chave pública de B .
Um invasor intercepta essa solicitação e envia sua chave pública.
Assim, qualquer que seja o host A enviar ao host B , o invasor pode ler.
A fim de manter a comunicação, o atacante re-criptografa os dados após a leitura com a sua chave pública e envia para B .
O atacante envia sua chave pública como uma chave pública para que B leva-lo como se estivesse tirando-a de A .
Side Channel Attack (SCA)- Este tipo de ataque não é contra nenhum tipo particular de criptosistema ou algoritmo. Em vez disso, ele é lançado para explorar a deficiência na implementação física do criptossistema.
Timing Attacks- Eles exploram o fato de que cálculos diferentes levam tempos diferentes para serem computados no processador. Ao medir esses tempos, é possível saber sobre um determinado cálculo que o processador está realizando. Por exemplo, se a criptografia demorar mais, isso indica que a chave secreta é longa.
Power Analysis Attacks - Esses ataques são semelhantes aos ataques de temporização, exceto que a quantidade de consumo de energia é usada para obter informações sobre a natureza dos cálculos subjacentes.
Fault analysis Attacks - Nesses ataques, os erros são induzidos no criptosistema e o invasor estuda a saída resultante para obter informações úteis.
Praticidade dos ataques
Os ataques a criptosistemas descritos aqui são altamente acadêmicos, pois a maioria deles vem da comunidade acadêmica. Na verdade, muitos ataques acadêmicos envolvem suposições pouco realistas sobre o ambiente e também sobre as capacidades do invasor. Por exemplo, em um ataque de texto cifrado escolhido, o invasor exige um número impraticável de pares de texto simples e texto cifrado deliberadamente escolhidos. Pode não ser totalmente prático.
No entanto, o fato de que existe qualquer ataque deve ser uma causa de preocupação, especialmente se a técnica de ataque tiver potencial para melhoria.