A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

MARS The IBM Candidate Cipher for AES

Apresentações semelhantes


Apresentação em tema: "MARS The IBM Candidate Cipher for AES"— Transcrição da apresentação:

1 MARS The IBM Candidate Cipher for AES
Daniel Barcelos CMP200 – Criptografia de Dados

2 MARS Cifra da IBM Cifra de Bloco AES Finalista Don Coppersmith (DES)
128 bits Tamanho de chave entre 128 e 448 bits 32 rodadas AES Finalista 5º lugar

3 Os autores com a palavra
Mais seguro que o triplo DES Mais rápido que o DES simples Seguro diante dos tipos de criptoanálise que ainda estão para ser inventados The cryptographic core rounds provide strong resistance to all known cryptanalytical attacks, while the mixing rounds provide good avalanche and offer very wide security margins to thwart new (yet unknown) attacks.

4 Algoritmo Dividido em três fases Orientado a palavra
Operações de 32 bits Rede Feistel Tipo-3 Decifragem é o inverso da cifragem

5 Algoritmo Tudo-junto-ao-mesmo-tempo-agora OU-exclusivos Somas
Subtrações Multiplicações Rotações Fixas Rotações dependentes de dados Caixas de substituição Pseudo-random fashion

6 Algoritmo 32 bits Texto Claro Add Round Key Subchaves [K0-K3] Forward
Mixing x8 Forward Mixing Cryptographic Core x16 Cryptographic Core x8 Backwards Mixing Backwards Mixing Sub Round Key Subchaves [K36-K39] Texto Cifrado

7 Add Round Key 32 bits Texto Claro Subchaves [K0-K3] + = + = + = + =

8 Forward Mixing + + + + + + + Notação: A B C D OU-exclusivo Adição
S-box 0 S-box 1 + + S0 + S0 S1 + S1 S0 + S1 + Soma com B se estiver na rodada 1 ou 5 Soma com D se estiver na rodada 0 ou 4 Senão passa direto +

9 Cryptographic Core + + + + + Kn; Kn+1 Notação: A B C D E i ≥ 8
13 19

10 Cryptographic Core + + + + + x <<< x + + <<< +
Kn; Kn+1 Notação: A B C D + + E i ≥ 8 + + + i < 8 13 19 x Multiplicação y Rotate x left y times x <<< 13 19 10 22 5 27 S x L A + + <<< 5 LSB R Kn+1 M Kn + <<<

11 Cryptographic Core + + + + + x <<< x + + <<< +
Kn; Kn+1 Notação: A B C D + + E i ≥ 8 + + + i < 8 13 19 x Multiplicação y Rotate x left y times x <<< 13 19 10 22 5 27 S x L A M vai para C Para i < 8: Para i ≥ 8: L vai para B L vai para D R vai para D R vai para B + + <<< 5 LSB R Kn+1 M Kn + <<<

12 Backwards Mixing - - + - - + Notação: A B C D Subtração S1 S0 S1 S0
Subtrai B se estiver na rodada 3 ou 7 Subtrai D se estiver na rodada 2 ou 6 Senão passa direto

13 - = - = - = - = Sub Round Key 32 bits From Backwards Mixing
Subchaves [K36-K39] Texto Cifrado - = - = - = - =

14 Geração de Chaves Versão tweaked São geradas 10 subchaves por vez
Tamanho da Chave Zeros (0x0000) Inicialização ... 14

15 Geração de Chaves (cont.)
i i-7 i-2 + 3 29 0 ≤ i ≤ 14 (15x) 0 ≤ j ≤ 3 (4x) 0 ≤ t ≤ 3 (4x) O processo se repete para cada conjunto de 10 subchaves i + 2 30 i + j + j i i+1 i t 9 MSB S +

16 Curiosidades Melhor criptoanálise conhecida: Duas versões
John Kelsey, Bruce Schneier, MARS Attacks! Preliminary Cryptanalysis of Reduced-Round MARS Variants Full Mixing e 5 rodas de Núcleo 3 FM, 3BM, 6CC Duas versões Tweaked Alteração na geração das subchaves

17 Desempenho Sistemas com restrições de memória Fonte: NIST

18 Relação Área vs. Desempenho (FPGA)
Fonte: NIST

19 Desempenho Lento mesmo Fonte: NIST

20 Desempenho Lento mesmo Fonte: NIST

21 Resumo NIST Segurança: OK.
Imp. Software: Desempenho médio. Depende de como o processador/compilador implementa multiplicação e rotação variável. Smartcards: Desempenho ruim (not well suited). Requer muita ROM. Imp. Hardware: Desempenho Ruim. Mas independe do tamanho da chave. Ataques: Difícil de defender contra ataques de power e timing. Devido à multiplicação. Cifragem vs. Decifragem: Bom. Funções similares (10%). Geração de chaves: Necessário o armazenamento de 10 subchaves. Flexibilidade: Bom, suporta tamanho de chaves variáveis. Paralelismo: Pouco paralelizável.

22 Referências Bibliográficas
[Bur99a] Burwick C. et all. The MARS Encryption Algorithm. Agosto, 1999. [Bur99b] Burwick C. et all. MARS – A candidate cioher for AES. Agosto, 1999. [NIS00] NIST. Report on the Development of the Advanced Encryption Standard (AES), NIST, 2000. [Pre00] Preneel B. et al., Comments by the NESSIE Project on the AES Finalists, NIST, 2000. [IBMxx] MARS Source Code. Acessado em 29/4/2007. [Wik07] Wikipedia. Acessado em 29/4/2007.

23 MARS The IBM Candidate Cipher for AES
Daniel Barcelos CMP200 – Criptografia de Dados

24 + Algoritmo Subchaves Texto Claro K0 K1 K2 K3 128 bits 128 bits
To Feistel Network

25 Algoritmo Pseudo-código


Carregar ppt "MARS The IBM Candidate Cipher for AES"

Apresentações semelhantes


Anúncios Google