Outras curiosidades dos algoritmos GOST Grasshopper e Stribog

Olá% username%!

Os algoritmos criptográficos na Rússia não passam por competições abertas, eles simplesmente nos decepcionam. E mais cedo ou mais tarde ele voltará para nós. Este artigo é sobre o próximo estudo de nossos GOSTs.


Em 2016, os pesquisadores mostraram que a tabela de permutação nos algoritmos de criptografia e hash russos Kuznechik e Stribog tem uma estrutura que está longe de ser aleatória. Isso ocorre depois que um erro trivial foi encontrado no Stribog, reduzindo sua durabilidade de 2 512 para 2.266 .

Em 29 de janeiro de 2019, foi publicado um novo estudo , Partições no S-Box de Streebog e Kuznyechik, que sugere claramente a possibilidade teórica de um backdoor nesses algoritmos.

Portanto, o S-Box - ou a tabela de substituição, é um elemento essencial de segurança em muitos algoritmos de criptografia e hash simétricos. Um exemplo dessa tabela é mostrado na figura.



Em geral, esta tabela mapeia uma sequência de bits para outra. Mas por que princípio é sempre uma grande questão.

As agências governamentais costumam se limitar a publicar sem nenhuma explicação racional. No caso do DES, a NSA propôs mudar o S-Box antes que o algoritmo se tornasse padrão. Somente após muitos anos ficou claro que essa mudança realmente aumentou a resistência do DES à criptoanálise diferencial.

No caso dos novos GOSTs, nem tudo é tão otimista. Os autores declararam que a tabela de substituição foi selecionada aleatoriamente. Aqui está um slide da apresentação do algoritmo, que indica que os autores selecionaram aleatoriamente a tabela. Para que ele não tenha uma estrutura explícita que ajudaria a produzir uma criptoanálise eficaz. (Vermelho é o que eles escolheram)



Esta tabela



Mas, primeiro, como se viu, não foi gerado aleatoriamente, mas com a ajuda de um algoritmo astuto, que foi adotado em 2015.



Em segundo lugar, os autores não abandonaram as tentativas de descobrir o motivo dessa abordagem para o design do S-Box e encontraram resultados muito interessantes.

Acontece que os algoritmos que formam a tabela de substituição são mais de um. Diferentes grupos de pesquisadores descreveram algoritmos completamente diferentes que não têm quase nada em comum, mas que chegam à mesma tabela.

Isso levou os autores do estudo original a aprofundar a estrutura desses algoritmos e a encontrar elementos comuns de sucesso.

Tklog


TKlog é um construto de permutação que os autores da análise criptográfica receberam o nome do escritório russo do TK-26, onde foram criados Grasshopper e Stribog. Sua descrição está muito além do escopo deste artigo; aqueles que desejam podem consultar o original . Em poucas palavras, sua propriedade chave é o uso de logaritmos discretos, assim como na criptografia assimétrica.

O que é importante é o fato de que ambas as versões da função de substituição dos algoritmos GOST são um caso especial do design do TKlog. Bem como outra função de substituição do algoritmo BelT Belarusian . As funções são diferentes, mas se resumem a uma.

Texto oculto



O fato de haver muito poucas opções diferentes de conversão de TKlog sugere o uso intencional dessa estrutura não aleatória específica em vez da aleatória mostrada para nós no slide.

Partições em classes adjacentes


Uma propriedade chave da conversão TKlog é que ela funciona com os chamados cosets. E compara um ao outro.

O problema é que essas classes adjacentes são multiplicativas, como em todos os algoritmos convencionais. E eles são aditivos.

Portanto, o único caso conhecido quando classes adjacentes aditivas foram usadas na função de substituir as cifras de bloco é a criação especial de um backdoor . Informações sobre isso estão em 2016.

Tais backdoors são chamados NOBUS, abbr. from NObody Mas nos EUA, essas são vulnerabilidades que só podem ser exploradas pelos autores dos algoritmos.

Em vez de uma conclusão


Os autores da análise criptográfica não apresentaram novos ataques aos algoritmos GOST existentes, mas fizeram uma pergunta justa sobre a adequação de todo esse circo com uma tabela de permutação supostamente aleatória.

A NSA recentemente tentou introduzir seus algoritmos simétricos leves, Simon e Speck, nos padrões. E o próprio fato de ter mesas de substituição com um design, cuja descrição não foi fornecida, foi suficiente para expulsá-las com panos irritados de todos os lugares.

Não temos essa oportunidade.

Os PS não esquecem que o Stribog foi usado para gerar os parâmetros das novas curvas elípticas GOST. Usando-o, a constante mística W foi dividida em hash.

Source: https://habr.com/ru/post/pt439788/


All Articles