Criptografia e Segurança



Documentos relacionados
Software de Telecomunicações. Cifras clássicas

Codificação de Informação 2010/2011

Questionário de Estudo - P1 Criptografia

REDES DE COMPUTADORES E TELECOMUNICAÇÕES MÓDULO 13

Memória Cache. Prof. Leonardo Barreto Campos 1

Auditoria e Segurança de Sistemas Aula 09 Criptografia. Felipe S. L. G. Duarte Felipelageduarte+fatece@gmail.com

Porta Série. Trabalhos Práticos AM 2007/2008. Porta Série. Objectivos

Criptografia e Segurança em Redes Capítulo 9. Quarta Edição William Stallings

CRIPTOGRAFIA E SEGURANÇA DE REDES

Escola Secundária c/3º CEB José Macedo Fragateiro. Curso Profissional de Nível Secundário. Componente Técnica. Disciplina de

I Seminário sobre Segurança da Informação e Comunicações CRIPTOGRAFIA

C R I P T O G R A F I A

MICROSOFT ACCESS MICROSOFT ACCESS. Professor Rafael Vieira Professor Rafael Vieira

UNIVERSIDADE ESTADUAL DE GOIÁS UNIDADE UNIVERSITÁRIA DE JUSSARA LICENCIATURA EM MATEMÁTICA ANA PAULA ALVES MACHADO DE LIMA

Análise do Algoritmo de Cifragem LOKI. Éverton Didoné Foscarini CMP 200 Criptografia de Dados Prof. Raul Fernando Weber

Sistemas Distribuídos: Conceitos e Projeto Introdução a Criptografia e Criptografia Simétrica

Ferramentas de Modelação e Análise de Sistemas baseadas em Redes de Petri (RdP)

Busca. Pesquisa sequencial

Acadêmicos: Luís Fernando Martins Nagata Gustavo Rezende Vinícius Rezende Santos

Fabio Bento

3 Classificação Resumo do algoritmo proposto

Sistemas Operacionais e Introdução à Programação. Vetores e matrizes

Capítulo 2. Numéricos e Códigos Pearson Prentice Hall. Todos os direitos reservados.

Auditoria e Segurança da Informação GSI536. Prof. Rodrigo Sanches Miani FACOM/UFU

A importância da Senha. Mas por que as senhas existem?

Módulo III. Folhas de Cálculo

Guia de Estudo Folha de Cálculo Microsoft Excel

Sagômetro Digital. Manual de Instalação e Operação

Capítulo 4 - Roteamento e Roteadores

Soluções de Segurança em ambientes heterogêneos

Sumário. Capítulo 2 Iniciando o TR Como efetuar o login... 8

Aula 04. Código BCD, Códigos Alfa-numéricos e Sistemas de Detecção de Erros

Arquitetura de Rede de Computadores

Segurança Informática em Redes e Sistemas

AULA 01 CONCEITOS BÁSICOS DE PROGRAMAÇÃO. Eduardo Camargo de Siqueira INFORMÁTICA APLICADA TÉCNICO EM ELETRÔNICA

Projetos. Universidade Federal do Espírito Santo - UFES. Mestrado em Informática 2004/1. O Projeto. 1. Introdução. 2.

Lista de Exercícios. Vetores

UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO

PAINEL DE SENHAS RBSG4JE. Imagem ilustrativa do painel. Operação/Configuração Painel Eletrônico de Senhas / Guichê com jornal de mensagens.

Programação de Sistemas

Capacidade = 512 x 300 x x 2 x 5 = ,72 GB

Licenciatura em Engenharia Informática Sistemas Distribuídos I 2ª chamada, 6 de Julho de º Semestre, 2004/2005

Contagem. George Darmiton da Cunha Cavalcanti CIn - UFPE

Programação de Sistemas

Programação de Sistemas

NASCE A ERA DA COMUNICAÇÃO ELÉCTROMAGNÉTICA

A máscara de sub-rede pode ser usada para dividir uma rede existente em "sub-redes". Isso pode ser feito para:

CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM

PROVA DE NOÇÕES DE MICROINFORMÁTICA

TRABALHO DE MATEMÁTICA II

Figura 1 - O computador

Introdução à Transmissão Digital. Funções básicas de processamento de sinal num sistema de comunicações digitais.

Segurança em IEEE Wireless LAN

Organização de Arquivos

Entrada e Saída. Prof. Leonardo Barreto Campos 1

Introdução. Iremos procurar ver aqui alguns mecanismos de proteção mais utilizados como: criptografia e SSL. 1.0 Criptografia

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

Título. Breve descrição da aula. Competência(s) desenvolvida(s) Conteúdo(s) desenvolvido(s).

Conceitos importantes

CONCURSO PÚBLICO VESTIBULAR/2015

Batalha Naval Algoritmos de Busca. Correlações curriculares Matemática: Números: maior que, menor que, iguais a.

Pesquisa e organização de informação

Assinatura Digital: problema

Possui como idéia central a divisão de um universo de dados a ser organizado em subconjuntos mais gerenciáveis.

Curso de Instalação e Gestão de Redes Informáticas

Curso: Técnico de Informática Disciplina: Redes de Computadores. 1- Apresentação Binária

Limitações dos Computadores

Algoritmos de Busca em Tabelas

EA960 Redundância e Confiabilidade: RAID

SISTEMAS DIGITAIS. Memórias. Prof. Guilherme Arroz Prof. Carlos Sêrro Alterado para lógica positiva por Guilherme Arroz.

LIMESURVEY. Introdução à criação de inquéritos. Maio 2012 Vítor Almeida, Nuno Cruz

Arquitetura de Computadores. Tipos de Instruções

Satélite. Manual de instalação e configuração. CENPECT Informática cenpect@cenpect.com.br

TRE/MG (15/03/2008) CESPE QUESTÃO 6

Organização e Arquitetura de Computadores I

Introdução aos critérios de consulta. Um critério é semelhante a uma fórmula é uma cadeia de caracteres que pode consistir em

Contagem. Prof. Dr. Leandro Balby Marinho. Matemática Discreta. Fundamentos Inclusão/Exclusão Princípio da Casa dos Pombos Permutações Combinações

Sistemas de Numeração

Conceitos básicos de criptografia

4 Segmentação Algoritmo proposto

Programação 2ºSemestre MEEC /2011. Programação 2º Semestre 2010/2011 Enunciado do projecto

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

Manual do Utilizador

Dicas para usar melhor o Word 2007

Transcrição:

Criptografia e Segurança das Comunicações Cifras clássicas Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 1/44 Introdução Cifras clássicas baseadas em duas operações básicas: Substituição de letras. Transposição de letras, de uma posição para outra do texto. Cada letra (maiúscula ou minúscula) é transcrita para um inteiro a distância da letra A. Figura 3-8, Behrouz Forouzan, Cryptography and Network Security Sendo mais fácil memorizar texto, as chaves são dadas igualmente por caracteres. Exemplo: chave cafe transcrita por 2-0-5-4 Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 2/44

Cifras de substituição (1) [Def] Numa cifra de substituição, os símbolos são substituídos por outros símbolos. As cifras de substituição preservam a posição dos símbolos, disfarçando-os. Em comparação com as cifras de transposição Fáceis de implementar, requerem pouca memória. Fáceis de atacar, por análise de frequência. Cifras de substituição dividem-se segundo o número de símbolos substituídas de cada vez. Substituição Simples Poligráfica Homofónica Polialfabética Única Polifónica Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 3/44 Cifras de substituição (2) Simples - apenas um símbolo substituído de cada vez. São subdivididos em diversas classes: Única cada símbolo é deslocado um número fixo de posições, módulo dimensão do alfabeto (ex: cifras César e afim) Polifónica a substituição é dirigida por tabela de permutação, determinada por uma frase. Polialfabética usada uma entre várias substituições monoalfabéticas, dependendo da posição (ex: cifra Vigenère, rotor Enigma) Poligráfica a substituição envolve vários símbolos de cada vez (ex: Playfair). Homofónica cada símbolo é substituída por um entre vários símbolos de um subconjunto (um-para-muitos). Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 4/44

Substituição única (1) 1. Cifra linear (ou de César) a) Método: deslocamento circular das letras do alfabeto (chave é a distância). Admitindo alfabeto de tamanho 26 E k (p i ) = c i = (p i + k) mod 26 D k (c i ) = (c i - k) mod 26 Para k = 3 tem-se Texto plano A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Cifra D E F G H I J K L M N O P Q R S T U V W X Y Z A B C Exemplo: Texto plano: ATACAR AMANHA Criptograma: DWDFDU DPDQKD Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 5/44 Substituição única (2) b) Ataques: Força bruta: testar todas as chaves possíveis, e verificar se resultado é legível (26 hipóteses, trivial até para um Spectrum!). Frequência: Procurar letras com maior número de ocorrências num texto longo e identificar a distância. Em Inglês, as letras que ocorrem com maior frequência são: E-12.7%, T-9.1%, A-8.2%, O-7.5%. As letras que ocorrem em menor número são J, X, Q e Z-0.07% Em Português, as letras que ocorrem com maior frequência são: A-14.6%, E-12.5%, O-10.7%, S-7.8%. No exemplo, D é a letra que ocorre em maior número no texto cifrado. Sendo A a letra que ocorre em maior frequência, no Português, a chave é determinada pela distância D - A = 3. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 6/44

Substituição única (3) Figura 2.5, William Stallings, Cryptography and Network Security Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 7/44 Substituição única (4) Análise por frequência é suficiente para quebrar textos de dimensão a partir de algumas centenas de letras. Nota1: A distribuição de frequência foi usada por Morse para minimizar os pulsos eléctricos: letras mais frequentes codificadas por menor número de pulsos (E:,T: -, A: -, N: -, I:, M: --), letras menos frequentes por 4 pulsos (J: ---, X: - -, Q: -- -, Z: -- ), dígitos por 5 pulsos (0: -----, 1: ----) caracteres especiais por 6 pulsos (virgula: -- --, ponto: - - - ). Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 8/44

Substituição única (5) Nota2: A cifra ROT-13 é uma cifra linear de chave 13 (metade da dimensão do alfabeto, pelo que a decifra é feita por nova aplicação do ROT-13 sobre o criptograma). No Unix basta aplicar o comando tr ( transliterate ) $ tr A-Za-z N-ZA-Mn-za-m Usada pela primeira vez nos anos 80 por utilizadores do grupo de notícias net.jokes, para disfarçar anedotas potencialmente ofensivas. Adoptado pelo Windows XP para cifrar algumas entradas do Registry. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 9/44 Substituição única (6) 2. Cifra afim ( affine ) generalização da cifra de César E a,k (p i ) = (a*p i + k) mod M D a,k (c i ) = a -1 c i - a -1 k mod M Para que E ak tenha inversa é necessário que a seja coprimo de 26, ou seja, a {1,3,5,7,9,11,15,17,19,21,23} A descodificação de uma cifra Affine E a,k é outra cifra afim E a -1,-a-1k Nota: a -1 é o inverso de a, módulo 26. Por exemplo, 5-1 (mod 26) é 21, porque 5*21 mod 26=1 Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 10/44

Substituição polifónica (1) 3. Permutação monoalfabética a) Método: permutar as letras do alfabeto (chave é a tabela de permutação) Cifrar: E k (p i ) = c i = P(p i ) Decifrar: D k (c i ) = P -1 (c i ) Exemplo: Texto plano A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Cifra H W E D S L O T A K V J Z Y G C X M B N I Q F U R P Exemplo: Texto plano: ATACAR AMANHA Criptograma: HNHEHM HZHYTH Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 11/44 Substituição polifónica (2) b) Ataques: Força bruta: difícil, por haver 26! 4x10 6 chaves. Frequência: a substituição monoalfabética revela a mesma fraqueza da cifra linear (análise de frequência). Nota 1: A permutação monoalfabética foi usada nos meios diplomáticos nos sec XVI/XVII e no conto O escaravelho dourado ( The gold bug ) de Edgar Alan Poe. Nota 2: A permutação pode também ser usada para tornar mais legível a fala, substituido cada letra por uma palavra curta contendo vogais abertas. Esta forma, designada alfabeto fonético, é adoptada pela ICAO-International Civil Aviation Organization. Alpha Bravo Charlie Delta Echo Foxtrot Golf Hotel India Juliet Kilo Lima Mike November Oscar Papa Quebec Romeo Sierra Tango Uniform Victor Whiskey Xray Yankee Zulu Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 12/44

Espaços (1) [Def] O espaço de bloco ( blocksize ) é o logaritmo do domínio. Exemplo: espaço de bloco das substituições monoalfabéticas é 26=2 4.7 [Def] O espaço de chaves ( keysize ) é o logaritmo do número de chaves alternativas. Exemplos de espaço de chaves: Cifra linear: 26=2 4.7 Substituição monoalfabética: 26! 2 88.4 Nota: Normalmente o espaço usa a base 2, para indicar directamente o número de bits. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 13/44 Espaços (2) O espaço de chaves dá ideia do esforço de pesquisa pelo método de procura por força bruta (também designada por procura exaustiva). O espaço de blocos dá ideia do esforço de pesquisa pelo frequência dos símbolos Níveis de dificuldade em vários espaços 30 Trivial 40 Demora algum tempo-dias, mas faz-se! 50 Só com hardware paralelo 60 Apenas organizações governamentais, com muito $ 70 Por agora (2011), esqueça! Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 14/44

Espaços (3) O espaço de chaves para a mesma segurança depende do algoritmo de cifra adoptado. Para o mesmo nível de segurança, tem-se 1 Simétrica Assimétrica Validade RSA/DH ECC 80 1024 160 Até 2010 112 2048 224 Até 2030 128 3072 256?? 256 15360 512?? 1 NIST, Special Publication 800-57: Recommendation for Key Management Part 1, Jan 2003. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 15/44 Espaços (4) O espaço de chaves pode ser muito elevado, mas se o espaço de blocos for baixo, a cifra é atacável. Por exemplo, na substituição monoalfabética o espaço de chaves é 88, mas o espaço de bloco é inferior a 5! Governos impõem limitações nos espaço de chaves e de blocos. Por exemplo, nos Estados Unidos Em 1975 proibida exportação de cifras com espaço de chaves superior a 40 bits. A Netscape, que desenvolveu o SSL, tinha versões doméstica (128 bits) e internacional (40 bits). Em 1996 as restrições foram relaxadas, mantendo-se para organizações terroristas e estados párias. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 16/44

Substituição polialfabética (1) 4. Cifra Vigenère Para combater ataques por frequência, as cifras polialfabéticas aplicam diferentes cifras de substituição simples, conforme a posição do símbolo. Método descrito inicialmente pelo italiano Giovan Batista Belaso em 1553, tendo posteriormente sido atribuída ao diplomata francês Blaise Vigenère. A tabela de substituição é quadrada, cada coluna contendo a substituição de César deslocada pela número da coluna A B C D... letra (i,j) é substituída pela letra (i+j) mod 26 A A B C D B B C D E Letra da chave C C D E F. Letra a cifrar Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 17/44 Substituição polialfabética (2) a1) Cifra: 1. Identificar uma chave (idealmente sem letras repetidas) 2. Letras do texto e da chave indexam linha e coluna da tabela. Exemplo: Chave: MARE Texto plano: ATACAR AMANHA Letra da chave: MAREMA REMARE Criptograma: MTRHMR RRMNYE Nota: verificar que letra A é codificada em letras diversas (MRE) e a codificação R é resultado de letras distintas (AMR). Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 18/44

Substituição polialfabética (3) a2) Decifra: seleccionar a letra da chave e determinar a linha onde se encontra a letra do texto cifrado. Matematicamente, p i = ( A + (c i -k i )) mod 26 Exemplo: Letra da chave: V E N T O V E N T O V E Criptograma: V X N V O M E Z T B C E c i -k i : 0 19 0 3 0-9 0 12 0 13-19 0 Texto decifrado:a T A C A R A M A N H A Nota histórica : Cifra de Vigenère usada pelo exército confederado na guerra civil, com chaves: IN GOD WE TRUST, COMPLETE VICTORY, MANCHESTER BLUFF e no final COME RETRIBUTION. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 19/44 Substituição polialfabética (4) b) Ataques: necessário descobrir comprimento da chave. 1863: Padrões comuns-kasiski (major prussiano): Digramas iguais no texto plano, situados a uma distância múltipla do comprimento chave, são codificados na mesma forma. Assim, basta identificar os digramas mais comuns e determinar as distâncias para o mesmo digrama. 1920: Índice de Coincidência Wolfe Friedman* Para um texto aleatório, probabilidade de duas letras distintas coincidirem igual IC Aleatório = 26*(1/26) 2 = 3.85%. O IC é característico da língua, por depender da distribuição da frequência das letras do alfabeto, e superior a IC Aleatório IC Inglês =e(12/26) 2 +t(9/26) 2 +a(8/26) 2 +n(6/26) 2 + = 6.67% IC Português = 7.38%, IC Alemão = 7.62%. Nota: Friedman foi riptoanalista americano, nascido em Kishinev, quebrou a máquina japonesa púrpura sem ter visto uma única! A sua equipa decifrou a ordem de ataque Pearl Harbor (mas a burocracia não entregou aviso a tempo) e planos da batalha Midway, essenciais para a US Navy equilibrar poder entre os dois beligerantes. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 20/44

Substituição polialfabética (5) [Def] Para um texto de comprimento N, o índice de coincidência é calculado por IC= Σ (f i *(f i -1)) / (N*(N-1)), f i - ocorrências da letra i Exemplo: Para o texto FRASE EXPERIMENTAL, IC = [e(4.3) + a(2.1) + r(2.1) + f(1.0) + i(1.0) + l(1.0) + m(1.0) + n(1.0) + p(1.0) + s(1.0) + r(1.0) + x(1.0)] / (17.16) = 5.88% Substituição monoalfabética não altera valor de IC. Substituição polialfabética baixa valor de IC, no limite até à distribuição aleatória. O IC entre o criptograma e o criptograma deslocado será máximo quando deslocamento for múltiplo do comprimento da chave. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 21/44 Substituição polialfabética (6) O ataque pelo IC baseia-se no seguinte algoritmo: 1. Deslocar o criptograma 1,2,...,N posições e determinar a frequência de coincidências entre cada deslocamento e o texto cifrado. 2. Factorizar as posições em que a frequência de coincidências é mais elevada. Os factores comuns são os maiores candidatos ao comprimento da chave F. 3. Aplicar análise de frequência a cada uma das partições módulo F. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 22/44

Substituição polialfabética (7) Criptograma : MTRHMRRRMNYE Deslocamento 1: MTRHMRRRMNYE -----**---- [18.2%] Deslocamento 2: MTRHMRRRMNYE -----*---- [10.0%] Deslocamento 3: MTRHMRRRMNYE --*------ [11.1%] Deslocamento 4: MTRHMRRRMNYE *-*-*--- [37.5%] Deslocamento 5: MTRHMRRRMNYE --*---- [14.35%] O IC mais elevado é 4. Não se analisa o deslocamento 2, porque o IC é baixo. As partições a analisar seriam MMM, TRN, RRY e HRE (Nota: na prática, demasiado pequenas para decifrar o texto por análise de frequência) Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 23/44 Substituição polialfabética (8) 5. Cifra por rotor imune à análise de frequência Enigma, adoptada pelos Alemães em 1928, formada por uma cadeia de 3 rotores (M3), cada um fazendo uma substituição de uma letra. 3 rotores eram seleccionados entre 5. O primeiro rotor avança após cada letra. Os rotores seguintes avançam após o anterior rotor passar por uma letra, ou por duas letras nos rotores VI-VIII. No final da cadeia o sinal é reflectido e retorna a cadeia para iluminar a lâmpada da letra cifrada/decifrada. Rotores Teclado Painel de conexão Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 24/44

Substituição polialfabética (9) O reflector deve satisfazer duas propriedades, que diminui o número de combinações: Nenhuma letra pode ser reflectida nela própria Deve ser simétrico (i.e., se y=ref(x) então x=ref(y) Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 25/44 Substituição polialfabética (10) O rotor avança, em anel, os deslocamentos de cada letra. Na figura, o anel tem 7 letras: A deslocada +5 (ou 5-7=-2, para F), B deslocada 1 (ou 1+7=6, para A), C deslocada +5 (ou 2, para H), D deslocada +3 (para G), H deslocada 3 (ou 7-3=4, para E). Rodando o rotor para cima, A é agora deslocada 1 (para H), B deslocada +5 (para G), C deslocada +3 (para F), H deslocada +5 (para E). Nas versões mais avançadas do Enigma, o anel exterior dos rotores, etiquetado com 26 letras, podia rodar em relação às ligações electricas internas. Assim, a ordem substituição pode ser reposicionada à partida. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 26/44

Substituição polialfabética (11) Os pontos de avanço dos rotores I-V eram distintos: R, F, W, K, A. Em Bletchley Park usava-se a frase Royal Flags Wave Kings Above. Nota: má decisão criptográfica, porque permite identificar o rotor usado. Rotores VI-VIII avançavam nas letras A e N. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 27/44 Substituição polialfabética (12) Primeiro rotor antecedido por painel de conexões, na qual até 13 cabos- steckers trocavam pares de letras (ex: Q por E): o espaço de chaves incrementado de ( 2 C 26 x 2 C 24 x x 2 C 2 )/13!=2 42.8. Para n rotores, o espaço de chaves é 26 n. Polacos decifraram Enigma com n=3, 26 3 =17_576=2 14.1 e 10 steckers ). Nota histórica: Com base no enorme incremento no espaço de chaves, Doenitz podia controlar a frota submarina no Atlântico. A quebra do Enigma foi essencial para a sobrevivência dos Aliados (Churchill afirmou que apenas teve medo dos submarinos). Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 28/44

Substituição polialfabética (13) Para fortalecer a segurança, a marinha alemã adoptou em 1941 o M4 com as seguintes extensões: 4 rotores. Para usar a mesma caixa, o reflector foi substituído por outro mais fino e pelo 4º rotor, que nunca rodava. O 4º rotor era seleccionado entre dois, beta e gama. 3 primeiros rotores seleccionados a partir um conjunto maior, identificados por números romanos I, II,, VIII: espaço de chaves incrementado de 8x7x6=336=2 8.4. Duas tabelas de reflexão no final da cadeia-bruno e César. Nota: com 4 rotores entre 8 e painel de conexões, o espaço de chaves é 2 18.8. 2 9.4.2 42.8 = 2 71, ainda hoje indecifrável por força bruta! Nota histórica: Enigmas capturados nos submarinos U110 (Mai 41)- Gronelândia, U559 (Out 42)-Egipto e U555 (Jun 44). Os marinheiros que conseguiram recuperar o Enigma e os livros de código do U559 acabaram por morrer no afundamento do submarino. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 29/44 Substituição polialfabética (14) A chave é formada por 5 decisões: quais os rotores usados e por que ordem? qual o reflector? quais as posições dos aneis exteriores dos rotores? quais as conexões no painel? quais as posições iniciais dos rotores? Sendo impraticável mudar todas as configurações após a transmissão de cada mensagem, o procedimento de cifra especificava uma configuração-base para cada dia (registada em tinta solúvel em água) Os alemães sabiam que os Aliados poderiam apanhar algumas máquinas. Frequentemente as mensagens são iniciadas com as mesmas letras, pelo que a análise de frequência das mensagens de um dia seria suficiente. Antecipando este ataque, os alemães aplicaram procedimentos de utilização: os Ingleses deram nomes de peixes, sendo o mais complexopara submarinos com o 4º rotor- designado por Tubarão. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 30/44

Substituição polialfabética (15) A análise de frequências nas partes iniciais era combatida pelo mecanismo de inicialização vectorial. Para cada mensagem a enviar durante o dia, o operador de cifra seguia os seguintes passos: 1. Escolha de uma posição dos rotores aleatória (por exemplo "TUX"). 2. Cifrava a escolha de rotores repetida duas vezes ("TUXTUX")-por causa de eventuais erros na transmissão- obtendo, por exemplo "BESWDH". Este indicador seria transmitido no início da mensagem. 3. Mudar rotores para a sua escolha ("TUX") e cifrar a mensagem propriamente dita. 4. Por último rodar os rotores de novo até à configuração-base para cifrar a próxima mensagem. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 31/44 Substituição polialfabética (16) Fraqueza do procedimento de inicialização As seis letras iniciais de todas as mensagens dum dia usavam a mesma configuração de Enigma. Essas seis letras resultavam sempre da duplicação de três letras. Nota histórica: Fraqueza foi explorada pelo matemático polaco Marian Rejewski, que consegui decifrar 75% das mensagens por altura do início da 2ª guerra mundial (Enigma apenas com 3 rotores). Fraquezas dos operadores Operadores usavam indicadores óbvios (três letras iguais, ou QWE) 20% das mensagens iniciadas por AN (para em Alemão), seguido de X para espaço. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 32/44

Substituição polialfabética (17) Em 1940, os Alemães corrigiram a fraqueza da duplicação no indicador, com o procedimento alterado para: 1. Posicionar os rotores aleatoriamente (por exemplo WZA"). 2. Escolher uma sequência chave distinta de 3 letras (por exemplo SXT") e cifrá-las (por exemplo, o criptograma gerado é UHL ) com a configuração base. 3. Envia posição inicial dos rotores ( WZA ) 4. Posicionar rotores com a sequência chave ( SXT ), codificar e enviar a seguinte sequência: 1. Sequência chave cifrada ( UHL ) 2. Mensagem cifrada O receptor decifra a sequência chave com a posição inicial dos rotores ( WZA ) aplicada a UHL. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 33/44 Substituição polialfabética (18) Com base na informação passada pelos polacos, os Ingleses em Bletchley Park, chefiados por Alan Turing, conseguiram acompanhar evolução do Enigma por parte da marinha Alemã. O ataque reside na recolha da sequência de fragmentos codificados de textos conhecidos (denominadas cribs ) em que letras nunca são codificadas nelas próprias. As combinações possíveis que geravam os fragmentos codificados eram explorados por computadores mecânicos designados por bombe, que possibilitavam a decifra de mensagens críticas em poucas horas. Nota: período entre uma modificação do sistema e quebra pelos Ingleses, tipicamente de poucos dias, designada em Bletchley Park por blackout. Descrição do trabalho pode ser recolhida na página http://faculty.gvsu.edu/aboufade/web/enigma.htm. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 34/44

Substituição poligráfica (1) 6. Cifra Playfair Proposta em 1854, pelo cientista Charles Wheatstone, e defendida por Lord Playfair. Adoptada pelo exército Inglês na guerra dos Boers e na 1ª guerra mundial. a1) Método de cifra: 1. Dividir o texto em pares de letras maiúsculas, sem pontuação. Substituir todos os J por I, porque a cifra só admite 25 letras. Inserir X entre letras duplicadas, para reduzir repetições nos criptogramas (ex: FREEDOM passa a ser FR EX ED OM) Se o texto anterior contiver número ímpar de letras, adicionar uma letra previamente seleccionada ( padding )- ex:x Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 35/44 Substituição poligráfica (2) F I R S T A M E N D B C G H K L O P Q U V W X Y Z 2. Formar grelha 5x5 com a chave, sem letras repetidas, adicionando ordenadamente as letras que faltam na chave. Ex: chave é FIRST AMEND. 3. Substituir pares na seguint forma: Se as duas letras estiverem na mesma linha da grelha, substituir cada uma pela letra à direita. Ex: AM ME, OU PL) Se as duas letras estiverem na mesma coluna da grelha, substituir cada uma pela letra abaixo. Ex: RG EP, BV LF) Se as duas letras estiverem em colunas e linhas distintas, determinar a intersecção trocando as colunas, i.e., o par (i,j)(l,m) é substituído por (i,m)(j,j). Ex: AT DF, HA BN AT AC AR AM NA HA Texto plano: Criptograma: DF MB EF ME DM BN Nota: Tal como na cifra Vigenère, a letra A é codificada em letras diversas (DMEN) e a substituição F é aplicada em letras diversas (TR) Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 36/44

Substituição poligráfica (3) a2) Método de decifra: Simplesmente reverter o processo! O espaço de bloco é 25*25 = 625 2 9.3. Sem computadores, na época vitoriana era um valor inatingível! b) Ataques: Sendo a substituição efectuada aos pares, a cifra Playfair é imune à análise de frequência das letras simples (ex: no texto plano, A é subsituído pelas letras D,E,M,N e no criptograma D é substituição das letras A,N). Mas a cifra Playfair é atacável pela análise de frequência dos digramas. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 37/44 Substituição poligráfica (4) Os digramas - combinações de 2 letras- mais usados em Inglês TH, IN, ER, RE e NA em Português: DE, RA, AS, ES e OS Os trigramas mais usados em Inglês: THE, ING, AND e ION em Português: QUE, ENT e COM Para blocos de maior dimensão, os criptoanalistas seleccionam palavras que ocorrem com elevada probabilidade em textos. Por exemplo, PAGAMENTO e TRANSFERENCIA em documentos financeiros. FROM e TO em Email Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 38/44

Transposição (1) [Def] Uma cifra é classificada de transposição quando o criptograma possui as mesmas letras, que são trocadas entre si. 1. Cifra reflexa É o método mais simples de transposição e foi usada por Leonardo da Vinci. Método de cifra e decifra: escrever linhas do fim para o início! Exemplo: Texto plano: ATACAR AMANHA Criptograma: AHNAMA RACATA Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 39/44 Transposição (2) 2. Coluna singular a1) Método de cifra: 1. Codificar as letras de uma senha (que não deve ser maior que o tamanho das palavras), por exemplo numerando de forma ascendente as letras que ocorrem na senha. A chave é a senha. 2. Dispor o texto colunas, em número igual ao da senha. 3. Criptograma segue as colunas numeradas Nota histórica: Substituição de palavras, seguida por transposição de coluna usada pelo exército da união na guerra civil norte-americana. Exemplo: Chave: APETITE Código: 1526473 Primeira letra-a recebe código 1; Segunda letra-e recebe códigos 2 e 3; Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 40/44

Transposição (3) Distribuir o texto a cifrar em linhas debaixo do código derivado da senha. 1526473 ATACAR_ AMANHA O criptograma é obtido retirando o texto da grelha, segundo a numeração das colunas. Por exemplo, usando blocos de 3 letras AAA A_A HTM CNR A Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 41/44 Transposição (4) a2) Método de decifrar: 1. O número de colunas que não foram totalmente preenchidas é dado por #S (#T mod #S ) Inserir esse número de * no fim das colunas, a contar da coluna mais à direita. 2. Cada coluna deve ter altura #T / #S. 3. Inserir o criptograma segundo a ordem do código. 4. Ler o texto original segundo as linhas Exemplo: O criptograma e a chave têm comprimentos 13 e 7, o número de colunas não totalmente preenchidas é igual a 7 (13 mod 7) = 1. A altura de colunas é 13 / 7 = 2. Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 42/44

Transposição (5) 1526473 AAA A_A HTM CNR A?????????????* Inserir 1º triplo(aaa) Inserir 2º triplo(a_a) Inserir 3º triplo(htm) 1526473 1526473 1526473 A?A???? A?A?A?_ ATA?A?_ A?????* A?A???* AMA?H?* Inserir 4º triplo(cnr) Inserir último triplo(a) 1526473 1526473 ATACAR_ ATACAR_ AMANH?* AMANHA* Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 43/44 Transposição (6) b) Ataques: Não havendo substituição de letras, o método de transposição é facilmente determinado se as letras revelarem a mesma distribuição da língua usada. Uma vez que a sequência da coluna não é alterada, um possível ataque reside na troca de blocos e verificar se as palavras formadas pertencem ao dicionário (para combater este ataque, os espaços são retirados do texto original). Chaves próxima da senha resultam em longos pedaços de texto iguais ao texto original. As cifras tornam-se vulneráveis a ataques baseados em algoritmos genéticos. Combinação de substituições e transposições diminuem as vulnerabilidades, sendo usadas nas cifras simétricas modernas Prof RG Crespo Criptografia e Segurança das Comunicações Cifras clássicas : 44/44