Ataque deslizante - Slide attack

O slide attack é uma forma de criptanálise projetada para lidar com a ideia prevalecente de que mesmo cifras fracas podem se tornar muito fortes com o aumento do número de rodadas, o que pode repelir um ataque diferencial . O slide attack funciona de forma a tornar irrelevante o número de rodadas em uma cifra. Em vez de olhar para os aspectos de randomização de dados da cifra de bloco, o slide attack funciona analisando o cronograma de chaves e explorando suas fraquezas para quebrar a cifra. O mais comum são as teclas se repetindo de maneira cíclica.

O ataque foi descrito pela primeira vez por David Wagner e Alex Biryukov . Bruce Schneier sugeriu pela primeira vez o termo slide attack para eles, e eles o usaram em seu artigo de 1999 descrevendo o ataque.

Os únicos requisitos para que um slide attack funcione em uma cifra é que ele pode ser dividido em várias rodadas de uma função F idêntica . Isso provavelmente significa que ele tem uma programação de chave cíclica. A função F deve ser vulnerável a um ataque de texto simples conhecido . O ataque de slide está intimamente relacionado ao ataque de chave relacionada .

A ideia do slide attack tem raízes em um artigo publicado por Edna Grossman e Bryant Tuckerman em um IBM Technical Report em 1977. Grossman e Tuckerman demonstraram o ataque a uma cifra de bloco fraca chamada New Data Seal (NDS). O ataque baseou-se no fato de que a cifra tem subchaves idênticas em cada rodada, então a cifra tinha uma programação de chave cíclica com um ciclo de apenas uma chave, o que a torna uma versão inicial do ataque de slide. Um resumo do relatório, incluindo uma descrição da cifra do bloco NDS e do ataque, é fornecido em Cipher Systems (Beker & Piper, 1982).

O ataque real

Primeiro, para apresentar alguma notação. Nesta seção, suponha que a cifra tenha n blocos de bits e tenha uma programação de chave usando como chaves de qualquer comprimento.

O ataque corrediça funciona quebrando a cifra-se em funções de permutação idênticos, F . Essa função F pode consistir em mais de uma rodada da cifra; é definido pela programação-chave. Por exemplo, se uma cifra usa uma programação de chave alternada onde alterna entre a e para cada rodada, a função F consistiria em duas rodadas. Cada um dos irá aparecer pelo menos uma vez na F .

A próxima etapa é coletar pares de texto simples-texto cifrado. Dependendo das características da cifra, menos pode ser suficiente, mas pelo problema do aniversário, não mais do que deveria ser necessário. Esses pares, que são denotados como, são usados ​​para encontrar um par deslizante que é denotado . Um par deslizante tem a propriedade isso e aquilo . Depois que um par deslizante é identificado, a cifra é quebrada devido à vulnerabilidade a ataques de texto simples conhecido. A chave pode ser facilmente extraída deste emparelhamento. O par deslizou pode ser pensado para ser o que acontece com uma mensagem após uma aplicação da função F . É 'deslizado' em uma rodada de criptografia e é aí que o ataque obtém seu nome.

Slideattack.jpg

O processo de localização de um par deslizante é um pouco diferente para cada cifra, mas segue o mesmo esquema básico. Um usa o fato de que é relativamente fácil de extrair a chave de apenas uma iteração da F . Escolha qualquer par de pares de texto simples-texto cifrado e verifique quais são as chaves correspondentes e . Se essas chaves corresponderem, este é um par deslizante; caso contrário, passe para o próximo par.

Com pares de texto simples-texto cifrado, um par deslizante é esperado, junto com um pequeno número de falsos positivos, dependendo da estrutura da cifra. Os falsos positivos podem ser eliminados usando as chaves em um par diferente de mensagem-texto cifrado para ver se a criptografia está correta. A probabilidade de que a chave errada codifique corretamente duas ou mais mensagens é muito baixa para uma boa codificação.

Às vezes, a estrutura da cifra reduz muito o número de pares de texto simples-texto cifrado necessários e, portanto, também uma grande quantidade de trabalho. O mais claro desses exemplos é a cifra Feistel usando uma programação de chave cíclica. A razão para isso é dada a a pesquisa é por a . Isso reduz as possíveis mensagens emparelhadas de baixo para (já que metade da mensagem é fixa) e, portanto, no máximo , pares de texto simples-texto cifrado são necessários para encontrar um par deslizante.

Referências

  • EK Grossman & B. Tuckerman (1977). "Análise de uma cifra semelhante a Feistel enfraquecida por não ter chave rotativa". IBM Thomas J. Watson Research Report RC 6375. Cite journal requires |journal= (help)
  • Henry Beker e Fred Piper (1982). Sistemas cifrados: a proteção das comunicações . John Wiley & Sons . pp. 263–267. ISBN 978-0-471-89192-5. (contém um resumo do artigo de Grossman e Tuckerman)
  • Alex Biryukov e David Wagner (março de 1999). Ataques de slides ( PDF / PostScript ) . 6º Workshop Internacional sobre Criptografia Rápida de Software (FSE '99). Roma : Springer-Verlag . pp. 245–259 . Página visitada em 2007-09-03 .
  • Alex Biryukov e David Wagner (maio de 2000). Ataques avançados de slides (PDF / PostScript) . Advances in Cryptology, Proceedings of EUROCRYPT 2000. Bruges : Springer-Verlag. pp. 589–606 . Página visitada em 2007-09-03 .
  • S. Furuya (dezembro de 2001). Ataques de slides com uma criptoanálise de texto simples conhecido (PDF) . 4ª Conferência Internacional sobre Segurança da Informação e Criptologia (ICISC 2001). Seul : Springer-Verlag. pp. 214–225 . Página visitada em 2007-09-03 .
  • Eli Biham (1994). "Novos tipos de ataques criptanalíticos usando chaves relacionadas" (PDF / PostScript) . Journal of Cryptology . 7 (4): 229–246. CiteSeerX  10.1.1.48.8341 . doi : 10.1007 / bf00203965 . ISSN  0933-2790 . S2CID  19776908 . Página visitada em 2007-09-03 .
  • M. Ciet, G. Piret, J. Quisquater (2002). "Ataques de chave relacionada e slide: análise, conexões e melhorias" (PDF / PostScript) . Página visitada em 2007-09-04 . Cite journal requires |journal= (help)CS1 maint: multiple names: authors list (link)