1 / 24

Seminário de Criptografia

Seminário de Criptografia. HIEROCRYPT. Análise do Algoritmo. Roberto Rodrigues Dias. Introdução. Basicamente o Hierocrypt é um algoritmo de chave simétrica. Texto Plano. Texto Cifrado. Algoritmo. Chave Secreta. Introdução. Algoritmo desenvolvido pela equipe: Kenji Ohkuma

Download Presentation

Seminário de Criptografia

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Seminário de Criptografia HIEROCRYPT Análise do Algoritmo Roberto Rodrigues Dias

  2. Introdução • Basicamente o Hierocrypt é um algoritmo de chave simétrica Texto Plano Texto Cifrado Algoritmo Chave Secreta

  3. Introdução • Algoritmo desenvolvido pela equipe: • Kenji Ohkuma • Fumihiko Sano • Hirofumi Muratani • Masahiko Motoyama • Shinichi Kawamura (Toshiba Corporation, Japan)

  4. Introdução • A Toshiba submeteu ao Nessie duas versões do Hierocrypt • Hierocrypt-3 • Hierocrypt-L1

  5. Hierocrypt-3 • Características • Cifra blocos de 128 bits • O tamanho da chave influencia o total de rodadas do algoritmo: • Chave de 128 bits: 6,5 rodadas • Chave de 192 bits: 7,5 rodadas • Chave de 256 bits: 8,5 rodadas Na última rodada temos mais um passo fixo com o uso de XOR que contabiliza como 0,5 rodadas.

  6. Hierocrypt-3 • Passos do Algoritmo • Texto plano é decomposto em 4 blocos de 32 bits • A chave secreta é decomposta em 4 blocos de 32bits chamados Caixas XS • Realizamos XOR de cada bloco da entrada com uma Caixa XS • Reagrupamos o resultado dos XORs (128bits) e aplicamos a uma Matriz de difusão (MDSH) • Reiniciamos a rodada a partir do passo 3 • Fim das rodadas • O resultado final das iterações sofre ainda mais um XOR com a chave • Texto Cifrado (Fim)

  7. Hierocrypt-3 128 bits TEXTO PLANO XOR da entrada com a chave Chave decomposta 4 x 32 bits XS XS XS XS Resultado do XOR MDSH Aplicação da Matriz de difusão no resultado XOR do resultado com a chave XS XS XS XS .... MDSH enésimo XS XS XS XS XOR do resultado Final das iterações com a chave TEXTO CIFRADO

  8. Segurança do Hierocrypt-3 (segundo seus criadores) • É seguro contra criptoanálise diferencial e linear. • Foram usadas as melhores técnicas diferenciais e lineares para testar o algoritmo no Nessie Workshop. • É seguro contra Integral Attack (square attack) a apartir de 5 rodadas no algoritmo. • Menos do que 5 pode ser suscetível aos ataques. • Em 4 rodadas no Hierocrypt-3 a probabilidade de se decifrar um bloco ao acaso é de 296

  9. Fraquezas • Barreto, Rijmen, Nakahara e Preneel durante o workshop da Nessie conseguiram fazer com sucesso um Integral Attack em apenas 3,5 rodadas. • Outra fragilidade desse tipo foi obtida pelos próprios desenvolvedores do Hierocrypt. • No segundo Workshop da Nessie, Furuya e Rijmen apresentaram fortes relações lineares entre a chave principal e muitas subchaves de rodadas posteriores. • Chamaram de “O Agendamento de Chaves da Família Hierocrypt”. • Cheon, Kim e Kim obtiveram sucesso em um ataque diferencial em apenas 3 rodadas.

  10. Hierocrypt-L1 • Características • Cifra blocos de 64 bits • Chave de 128 bits: 6 rodadas

  11. Hierocrypt-L1 • Passos do Algoritmo • Texto plano é decomposto em 2 blocos de 32 bits • A chave secreta é decomposta em 2 blocos de 32bits chamados Caixas XS • Realizamos XOR de cada bloco da entrada com uma caixa XS • Reagrupamos o resultado dos XORs (64bits) e aplicamos a uma Matriz de difusão (MDSH) • Reiniciamos a rodada a partir do passo 3 • Fim das rodadas • O resultado final das iterações sofre ainda mais um XOR com os 64 bits restantes da chave • Texto Cifrado (Fim)

  12. Hierocrypt-L1 64 bits TEXTO PLANO XOR da entrada com a chave XS XS Chave decomposta 2 x 32 bits Resultado do XOR MDSH Aplicação da Matriz de difusão no resultado XOR do resultado com a chave XS XS .... MDSH enésimo XS XS XOR do resultado Final das iterações com os 64 bits restantes da chave TEXTO CIFRADO

  13. Segurança do Hierocrypt-L1 (Segundo seus Criadores) • Os criadores do Hierocrypt-L1 deram um argumento muito bem fundamentado ao Nessie, propondo que as 6 rodadas do algoritmo seriam suficentes para manter o algoritmo seguro contra ataques diferenciais e integrais. • É seguro contra Integral Attack a partir de 5 rodadas. • Em 4 rodadas no Hierocrypt-L1 a probabilidade de se decifrar um bloco ao acaso é de 248

  14. Fraquezas • Sucesso em Integral Attacks no Hierocrypt-L1 em apenas 3 rodadas. • Criptoanalistas participantes da concorrência no Nessie estressaram o algoritmo e conseguiram praticar ataques diferenciais (Diferencial Attacks) com sucesso em 3,5 rodadas. • No segundo Workshop da Nessie, Furuya e Rijmen apresentaram fortes relações lineares entre a chave principal e muitas subchaves de rodadas posteriores. • Chamaram de “O Agendamento de Chaves da Família Hierocrypt”.

  15. Criptoanálise do Hierocrypt • Análise do Ataque ao HC-3 com 2 rodadas. .... • Pela estrutura da caixa S se invertermos a saída, redirecionando-a para a entrada da MDSLconseguimos adivinhar 8 bits dos 32 da sub-chave. S S S S XS XS XS XS 8 8 8 8 MDSL 32 32 32 32 MDSH S S S S XS XS XS XS ....

  16. Criptoanálise do Hierocrypt • Necessitamos de 232 textos planos de 128 bits, onde 3 blocos de 32 bits deverão ter sempre o mesmo valor (blocos passivos) e 1 bloco terá todas as possibilidades de valor (bloco ativo). • Usaremos sempre a mesma chave • Estes blocos se forem matematicamente balanceados após as operações do algoritmo produzirão blocos balanceados. • Os bits da chave poderão ser descobertos através da analise da probabilidade (altos índices indicam que o bit não faz parte da chave)

  17. Criptoanálise do Hierocrypt • A equipe que criptoanalisou o Hierocrypt (Paulo Barreto, Vincent Rijmen, Jorge Nakahara, Bart Preneel, Joos Vandewalle e Hae Kim) conseguiu reduzir a complexidade do algorimto de 2128 para aproximadamente 253

  18. Desempenho

  19. Desempenho Hierocrypt-3

  20. Desempenho Hierocrypt-L1

  21. Aplicação do Hierocrypt • A Toshiba documentou o seu uso em middlewares e SmartCards produzidos pela própria Toshiba (entre 2000 e 2003) • Atualmente (2007) não foram encontrados indícios de que sua aplicação tenha sido mantida.

  22. Observação Final • Aprovado pela CRYPTREC (Japão) • Reprovado pelo NESSIE (Europa) • Nenhum dos Algoritmo Hierocrypt submetidos a Nessie foram classificados para a segunda fase do mesmo.

  23. Muito Obrigado! robertodias@gmail.com

  24. Referências • Improved Square Attacks Against Reduced-Round Hierocrypt – Barreto, P.; Rijmen, V.; Nakahara, J.; Preneel, B.; Vandewalle, J.; Kim, H. • Symmetric Ciphershttp://www.users.zetnet.co.uk/hopwood/crypto/scan/cs.html • PDFs contidos no site do Nessiehttps://www.cosic.esat.kuleuven.be/nessie/deliverables/ • Methodology for security evaluation • Internal review report Year 1 • Toolbox version 2 • Security evaluation of NESSIE First Phase • Performance evaluation of NESSIE First Phase • NESSIE Phase I: Selection of primitives • Workshop on security and performance evaluation of NESSIE First Phase • Internal review report Year 2

More Related