1 / 15

Twofish

Twofish. Leonardo H. Furlan. Roteiro. Introdução Algoritmo Performance Criptoanálise Conclusões. Introdução. Um dos 5 finalistas do AES Baseado no Blowfish Muito lento para AES Utilização considerável de memória (smart cards)

aggie
Download Presentation

Twofish

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. Twofish Leonardo H. Furlan

  2. Roteiro • Introdução • Algoritmo • Performance • Criptoanálise • Conclusões

  3. Introdução • Um dos 5 finalistas do AES • Baseado no Blowfish • Muito lento para AES • Utilização considerável de memória (smart cards) • Criado por: Bruce Schneier (Counterpane Systems), John Kelsey (Counterpane Systems), Doug Whiting (HI/fn Inc.),David Wagner (University of California Berkley), Chris Hall (Counterpane Systems), Niels Ferguson (Counterpane Systems)

  4. Algoritmo • Cifra em blocos de 128 bits • Chave de tamanho variável • Tamanhos definidos: 128, 192 ou 256 bits • Flexível • Eficiente em HW ou SW • Projetado de forma a não conter operações que poderiam o tornar lento • Implementável em HW com menos de 20.000 portas lógicas

  5. Algoritmo • Rede de Feistel de 16 rodadas • Função bijetora F • A cada rodada entradas e saídas da rodada anterior são trocadas • 4 S-boxes • Geradas dinamicamente a partir da chave • Matriz MDS • Saída das S-boxes são multiplicadas pela matriz MDS

  6. Algoritmo • Whitening • XOR da chave com os dados antes da primeira rodada e depois da última • Key Schedule • Gera as sub-chaves utilizadas em cada rodada e nas S-boxes • Existem diferentes tipos que podem ser usados adequar a implementação • Chaves pré-computadas: + memória – processamento • Chaves computadas “on the fly”: - memória + processamento

  7. Algoritmo • PHT (Pseudo-Hadamard Transforms) • Operação de mix que roda rápido em software • Usada para difusão

  8. Performance (Chave - 128 bits)

  9. Performance (Chave - 256 bits)

  10. Criptoanálise • Autores: 1000 homens-hora • Twofish de 5 rodadas • Pode ser quebrado com 2^22.5 pares de texto plano e 2^51 computações • Ataque “Impossible-differential” pode ser usado para quebrar 6 rodadas • Não pode ser extendido para mais rodadas

  11. Criptoanálise • Knudsen • Possível distinguir entre permutação aleatória e Twofish reduzido (4 rodadas) • Murphy • Características para as 6 primeiras rodadas

  12. Conclusões • Algoritmo com 16 rodadas é seguro • Eficiente • Boa performance em uma grande variedade de plataformas • Flexível • Pode ser implementado de diversas formas • Pode ser otimizado para reduzir • Uso de memória • Processamento • Número de portas lógica • Aberto

  13. Referências • Schneier, B. , Kelsey, J. , Whiting, D.,Wagner, D., Hall, C., Ferguson, N. Twofish: A 128-Bit Block Cipher. Disponível em http://www.schneier.com/paper-twofish-paper.pdf. • Schneier, B., Whiting, D. A Performance Comparison of the Five AES Finalists Disponível em http://www.schneier.com/paper-aes-comparison.pdf. • Murphy, Sean, Robshaw, M.J.B. Diferential Cryptanalysis, Key-dependent, S-boxes, and Twofish. Disponível em http://csrc.nist.gov/CryptoToolkit/aes/round2/comments/20000515-smurphy.pdf. • Knudsen, Lars R. Trawling Twofish (revisited)Disponível em http://csrc.nist.gov/CryptoToolkit/aes/round2/comments/20000515-lknudsen-2.pdf.

  14. Referências • Ferguson, Niels, Kelsey, John, Schneier, Bruce, Whiting, Doug, A Twofish Retreat: Related-Key Attacks Against Reduced-Round Twofish Disponível em http://csrc.nist.gov/CryptoToolkit/aes/round2/comments/20000501-nferguson-1.pdf. • Ferguson, Niels. Impossible differentials in Twofish Disponível em http://csrc.nist.gov/CryptoToolkit/aes/round2/comments/20000501-nferguson-2.pdf.

More Related