220 likes | 312 Views
Criptográfia e segurança na rede Capitulo 12. Quarta edição by William Stallings Lawrie Brown. Chapter 12 – Algoritimos de HASH e MAC.
E N D
Criptográfia e segurançanaredeCapitulo 12 Quarta edição by William Stallings Lawrie Brown
Chapter 12 – Algoritimos de HASH e MAC Cada uma das mensagens, como todas que ele já tinha lido dos comandos de Stern, Começava com um numero Terminava com um numero ou sequencia de numeros. Nenhum esforço de mungo ou de qualquer um de seus especialistas tinha sido capaz de quebrar o código de Stern, Não havia qualquer pista quanto ao significado do numero inicial e dos numeros finais. —Talking to Strange Men, Ruth Rendell
Algoritimos de Hash e MAC • Funções Hash • Restringe em tamanho fixo o tamanho da mensagem • O processamento e feito em blocos • É feito atraves de alguma forma de compressão • Sendo personalizado ou baseado em cifra de bloco • Código de autenticação de mensagem (MAC) • Autenticador de tamaho fixo para algumas mensagens • Fornece autenticação de mensagem • Tanto ultilizando cifra de bloco ou função hash
Algoritimo Hash de Segurança • SHA desenvolvido originalmente pelo NIST & NSA in 1993 • Foi revisto em 1995 por SHA-1 • Esse foi um padrão americano de assinatura adotado para uso em DSA • A norma é FIPS 180-1 1995, e tambem para Internet RFC3174 • nb. the algorithm is SHA, the standard is SHS • Baseado no modelo MD4 com chaves diferentes • Produz 160 bits de valores hash • Em 2005 resultados recentes sobre segurança do SHA-1 Foram levantadas preocupações sobre sua ultilização futura
O padrão de segurança hash revisado • NIST emitiu uma revisão FIPS 180-2 in 2002 • Acresentou 3 versões adicionais de SHA • SHA-256, SHA-384, SHA-512 • Moldados para assegurar a compatibilidade com o aumento da segurança proporcionada pela cifra AES • A estrutura e os detalhes são parecidos com SHA-1 • A analise deve ser semelhante • Os niveis de segurança são bastante elevados
Função de compactação SHA-512 • Coração do algoritimo • Processando mensagens de blocos de 1024-bit • Consiste em 80 rodadas • Atulização do buffer 512-bit • utilizando um valor de 64 bits Wt derivadas da mensagem do bloco atual • E rodadas constantes baseada no cubo de raiz dos 80 primeiros numeros primos
Whirlpool • Agora veremos a função hash Whirlpool • Apoiado pelo projeto europeu NESSIE • É baseado no uso de cifra de bloco como método de compressão • addressing concerns on use of block ciphers seen previously • Com performance comparada a algoritimos dedicados como SHA
Whirlpool Block Cipher W • Projetada especificamente para funções hash • Com segurança e eficacia AES • Porem com blocos 512-bit • Estrutura e função semelhante do AES but • Linha de entrada é bem mapeada • Tem 10 rounds • um polinómio primitivo diferentes para GF(2^8) • Usa um S-box de projeto e valores diferentes
Whirlpool Performance & Security • Whirlpool é uma nova proposta • Porisso a pequenaexperiencia com seuuso • Porempodeencontrarcifras de AES ondepode ser aplicado • Não é necessariomaiorpoder de hardware que SHA, e ainda tem uma performance boa
Introduzindofuncções Hash e MAC • Obtendo MAC baseadoemumafunção hash • As funções hash sãogeralmentemaisrápida • Código de funções criptográficas hash amplamente disponível • hash inclui uma chave junto a mensagem • Proposta original: KeyedHash = Hash(Key|Message) • Algumasfalhasforamencontradas • Eventualmentelevouaodesenvolvimento do HMAC
HMAC • especificada como padrão Internet RFC2104 • utiliza função hash sobre a mensagem : HMACK = Hash[(K+ XOR opad) || Hash[(K+ XOR ipad)||M)]] • Onde K+ é a chavealocadafora de tamanho • E opad, ipadsãoespecificadasalocadasconstantes • overhead são apenas mais 3 cálculos hashdo que a mensagemsozinhaprecisa • E a função hash pode ser usada • eg. MD5, SHA-1, RIPEMD-160, Whirlpool
HMAC Security • A prova de segurança do HMAC é mostradapeloalgorítimo hash subjacente • Para atacar o HMAC exige: • Ataque de forçabruta de chaveutilizada • birthday attack Criptoanaliticoporestátistica (Desdeque fosse observado um grandenumero de chaves) • escolher função hash utilizada baseada na velocidade versos segurança
CMAC • Vista anteriormenteem DAA (CBC-MAC) • Amplamenteusadaporgovernos e industrias • Porem a mensagem tem tamanho limitado • Pode ser usando 2 chaves & padding • formando assim o Cifra baseada em código de autenticação de mensagem • (CMAC) • Adotadopelo NIST SP800-38B
Summary • Foivisto: • Algunsalgoritimos de hash • SHA-512 & Whirlpool • Autenticação HMAC Usandofunção Hash • Autenticação CMAC Usandocifra de bloco