Weverton Luis da Costa Cordeiro

Slides:



Advertisements
Apresentações semelhantes
Chapter Six Pipelining
Advertisements

THE PASSIVE VOICE. Para enfatizar a ação praticada, e não quem a praticou. Television was invented in Quando a mensagem (em geral escrita) tem tom.
Circuitos Lógicos e Organização de Computadores Capítulo 6 – Blocos com Circuitos Combinacionais Ricardo Pannain
Simple Present.
Copyright no direito americano: o caso Leslie Kelly v. Arriba Soft Corp. 1.
RELATIVE CLAUSE / RELATIVE PRONOUNS
Going to.
III REUNIÃO DE COORDENAÇÃO REGIONAL DA BVS Lewis Joel Greene Editor Brazilian Journal of Medical and Biological Research Medical School of Ribeirão Preto.
Aulas 11 e 12 Keynes e a síntese
ANÁLISE DA PRODUÇÃO EM PERIÓDICOS ( ) SEGUNDO NOVOS ESTRATOS VITÓRIA, ES – OUTUBRO 2008 Kenneth Camargo – IMS/UERJ Cláudia Medina – IESC/UFRJ.
Meeting 17 Chapter & 6-6.
The indefinite Pronouns
FUTURE SIMPLE Futuro Simples.
Indirect Speech By Laecio Miranda.
MODAL VERBS.
DIRETORIA ACADÊMICA NÚCLEO DE CIÊNCIAS HUMANAS E ENGENHARIAS DISCIPLINA: INGLÊS FUNDAMENTAL - NOITE PROFESSOR: JOSÉ GERMANO DOS SANTOS PERÍODO LETIVO
DIRETORIA ACADÊMICA NÚCLEO DE CIÊNCIAS HUMANAS E ENGENHARIAS DISCIPLINA: INGLÊS FUNDAMENTAL - NOITE PROFESSOR: JOSÉ GERMANO DOS SANTOS PERÍODO LETIVO
DIRETORIA ACADÊMICA NÚCLEO DE CIÊNCIAS HUMANAS E ENGENHARIAS DISCIPLINA: INGLÊS FUNDAMENTAL - NOITE PROFESSOR: JOSÉ GERMANO DOS SANTOS PERÍODO LETIVO.
Sistemas Distribuídos Introdução: Modelos de Arquitetura de Sistemas Distribuídos Instituto de Informática – UFG Verão 2005 Baseado em: Coulouris, Cap.
A.4. Trabalhando com elementos de biblioteca STL – Standard Template Libraby Disponibiliza um conjunto de classes templates, provendo algoritmos eficientes.
Estruturas de Dados para projeto de SGBD. Estruturas de dados analisadas Estruturas de nível Esparso Denso Combinadas Arvore B+ Tabela de hash.
1. Equivalência entre portas 2. Derivação de expressões booleanas 3
Criptografia de chave única
Criptografia de chave única
Criptografia Raul Fernando Weber Instituto de Informática
Universidade Federal do Rio Grande do Sul PGCC - Pós-graduação em Computação Considerações sobre o algoritmo RC4. Ricardo Goulart
Algoritmo CAST Rodrigo Boccasius.
Twofish Leonardo H. Furlan.
Criptoanálise Integral Criptoanálise diferencial: diferença (subtração) entre duas cifragens Criptoanálise integral: efeito cumulativo (soma) entre várias.
MARS The IBM Candidate Cipher for AES
Serpent-1 O Serpent-0 refinado Paulo Estima Mello
1 Seja o resultado de um experimento aleatório. Suponha que uma forma de onda é associada a cada resultado.A coleção de tais formas de ondas formam um.
FLUP - Elena Zagar Galvão Faculdade de Letras da Universidade do Porto INFORMÁTICA DE TRADUÇÃO FALL SEMESTER 2008 Lesson December 2009 Teacher: Elena.
Acção de Formação A Biblioteca Escolar: Leitura e Literacia no 2º e 3º ciclos do Ensino Básico e Secundário Centro de Formação Júlio Brandão
Indirect Object Pronouns - Pronomes Pessoais Complemento Indirecto
Tópicos Especiais em Aprendizagem Reinaldo Bianchi Centro Universitário da FEI 2012.
Fazendo e Brincando: Confecção de Materiais para as Aulas de Inglês
Sincronização com Locks. Locks É um mecanismo de sincronização de processos/threads em que estas devem ser programadas de modo que seus efeitos sobre.
SIMPLE PAST Os verbos regulares recebem o acréscimo de -ed ao infinitivo para formar o simple past (passado simples) Em alguns verbos, é necessário seguir.
INPE / CAP-315 Airam J. Preto, Celso L. Mendes Aula 30 (1) Empacotamento de Dados em MPI Tópicos: Buffer de Mensagem Empacotamento/Desempacotamento.
Definição do MoC Subjacente a Aplicação Prof. Dr. César Augusto Missio Marcon Parcialmente extraído de trabalhos de Axel Jantch, Edward Lee e Alberto Sangiovanni-Vincentelli.
PROF.ª DANIELLE CACERES DA SILVA
Universidade de Brasília Laboratório de Processamento de Sinais em Arranjos 1 Adaptive & Array Signal Processing AASP Prof. Dr.-Ing. João Paulo C. Lustosa.
The Present Perfect Tense
T HE F UTURE V ERB T ENSE Subject: English Teacher: Andreia Deluca.
Análise Sintática – Parte 1
Introdução à Criptografia Moderna – 2ª Lista de Exercícios
Brenda Lee I’m sorry.
Verb to have Present tense Negative.
Kiss and Say Goodbye Barry White This is got to be the saddest day of my life Esse vai ser o dia mais triste de minha vida I called you here today for.
Verb to be Equivale aos verbos SER e ESTAR.
Hoje é domingo, 14 de setembro de 2014 Agora mesmo são 22:54 h. Relaxe por uns momentos e aprecie … Com som Today is Monday, 1 st December Relax.
Instituto de Engenharia de Sistemas e Computadores Investigação e Desenvolvimento em Lisboa Understanding Epidemic Quorum Systems INESC-ID Lisbon/Technical.
English Classes Relative Pronouns.
Prof. Eng. Alexandre Dezem Bertozzi
Prof Afonso Ferreira Miguel
RELATÓRIO CEMEC 06 COMPARAÇÕES INTERNACIONAIS Novembro 2013.
Microprocessadores 8051 – Aula 3 Interrupção
Unit l Verb to be.
VOCÊ JÁ FALA INGLÊS FLUENTEMENTE?
Importância da Meditação para Promover Qualidade de Vida
Este fotógrafo Indonésio, nasceu em Jakarta. A Indonésia é um dos melhores locais do planeta para qualquer amante da fotografia, afirma Rarindra Prakarsa.
How do you identify passives in Portuguese? Os jogos olímpicos são disputados a cada 4 anos. Mais um carro foi incendiado no Rio. O novo ar condicionado.
Pronomes Relativos.
© 2007 IBM Corporation Academic Initiative 07/05/07 Aula 2 – Parte 1: Java Basics Autores: Argemiro José de Juliano Marcos
Three analogies to explain reactive power Why an analogy? Reactive power is an essential aspect of the electricity system, but one that is difficult to.
Wondershare software On the [View] menu, point to [Master], and then click [Slide Master] or [Notes Master].
Tópicos Avançados em Engenharia de Software
Verbs followed by infinitive and gerund- page 24.
Introduction to density estimation Modelação EcoLÓGICA
Transcrição da apresentação:

Weverton Luis da Costa Cordeiro weverton.cordeiro@inf.ufrgs.br Blowfish Weverton Luis da Costa Cordeiro weverton.cordeiro@inf.ufrgs.br

Agenda Introdução Funcionamento Criptoanálise Principais Usuários Curiosidades Considerações Finais Referências

Blowfish Projetista: Bruce Schneier Algoritmo criptográfico de chave simétrica Melhor desempenho que DES e IDEA Primeiramente publicado em 1994 Description of a New Variable-Length Key, 64-Bit Block Cipher (Blowfish) Publicação: Fast Software Encryption, Cambridge Security Workshop Proceedings (December 1993), Springer-Verlag, 1994, pp. 191-204.

Blowfish Principais Características Estrutura: Rede de Feistel 16 rounds Cifragem de Bloco Tamanho: 64 bits Tamanho da chave: 32 até 448 bits (passos de 8 bits) Caixas de substituição: dependente da chave Algoritmo de agendamento de chaves: “complexo” Decriptação é identica à encriptação exceto pela ordem das chaves da rodada Mesma abordagem do Data Encription Standard

Blowfish Consiste em duas partes Expansão de Chave Converte uma chave de até 448 bits em um P array contendo 18 sub-chaves e 4 caixas de substituição com 256 entradas, representando um processamento de 4168 bytes Encriptação de Dados Utilizando uma função simples iterada 16 vezes

Blowfish: Funcionamento Modos de Funcionamento (Alguns...) ECB (Electronic Code Book) Cada bloco é criptografado independentemente Blocos de texto idênticos são criptografados para o mesmo bloco cifrado Reordenação do texto plano resulta na mesma reordenação dos blocos cifrados Erros de encriptação apenas afetam o bloco onde o mesmo ocorreu CBC (Cipher Block Chaining) (Bloco cifrado no passo anterior) XOR (Bloco de texto plano do passo atual) = (Bloco de texto a ser cifrado no passo atual)

Blowfish: Rede de Feistel

Blowfish: Algoritmo Principal

Blowfish: Algoritmo Principal Sub-chaves Array com 18 sub-chaves Sub-chave Pi utilizada na i-ésima rodada Sub-chaves P17 e P18 utilizadas no último passo, numa operação de XOR com uma das metades xR e xL

Blowfish: Round Function Inconsistência (de acordo com o código): ((S1[a] + S2[b]) XOR S3[c]) + S4[d]

Blowfish: Round Function Caixas de substituição 4 caixas Possuem 256 entradas cada Recebem 8 bits como entrada e produzem 32 bits de saída

Blowfish: Key Schedule

Blowfish: Key Schedule Notas Para inicializar 18 sub-chaves e 4 tabelas de substituição, são necessários 18*32 + 4*256*32 = 576 + 32768 = 33344 dígitos binários de PI Para finalizar 18 sub-chaves e 4 tabelas de substituição, é necessário aplicar o algoritmo Blowfish (18+4*256)/2 = 1042/2 = 521 vezes. É utilizada a chave secreta para a geração das mesmas Cada nova chave requer o processamento equivalente à encriptação de 4KB de texto

Blowfish: Criptoanálise Nenhum estudo efetivo publicado até o ano de 2006 (Bruce Schneier, Wikipédia) No entanto Bloco de 64 bits considerado pequeno, suscetível a ataque de aniversário (birthday attack)

Blowfish: Criptoanálise Artigos Publicados On the Weak Keys of Blowfish (1996) Proceedings of the Third International Workshop on Fast Software Encryption table of contents Autores: Serge Vaudenay Abstract: There is a class of keys that can be detected--although not broken- -in Blowfish variants of 14 rounds or less.

Blowfish: Criptoanálise Artigos Publicados On Weaknesses of Non–surjective Round Functions (1997) Journal: Designs, Codes and Cryptography Autores: Vincent Rijmen, Bart Preneel, Erik De Win Abstract: We propose a new attack on Feistel ciphers with a non-surjective round function. CAST and LOKI91 are examples of such ciphers. On the Key Schedule of Blowfish (2005) Disponível em: http://citeseer.ist.psu.edu/schmidt05key.html Autores: Dieter Schimidt Abstract: In this article the author shows that for the block cipher Blowfish, the subkeys for the third and fourth round do not depend on the first 64 bits of the userkey.

Blowfish: “Principais” “Usuários” PuTTY

Blowfish: Curiosidades The software magazine Dr. Dobb's Journal is sponsoring $1000 contest for the best cryptanalysis of Blowfish received before April 1995. Please contact me for details.

Blowfish: Curiosidades Blowfish on "24" (On April 27, 2005) Two nights ago, my encryption algorithm Blowfish was mentioned on the Fox show "24." An alleged computer expert from the fictional anti-terror agency CTU was trying to retrieve some files from a terrorist's laptop. This is the exchange between the agent and the terrorist's girlfriend: They used Blowfish algorithm. How can you tell? By the tab on the file headers. Can you decrypt it? CTU has a proprietary algorithm. It shouldn't take that long. We'll start by trying to hack the password. Let's start with the basics. Write down nicknames, birthdays, pets -- anything you think he might have used. Quote: “I just tried explaining to my wife why this was funny and she said "I didn't understand anything you just said". Nevermind.”

Considerações Finais Blowfish Grande popularidade alcançada a partir da sua distribuição sob domínio público Não existe criptoanálise eficiente conhecida Vulnerável a ataque de aniversário, portanto não recomendado para criptografia de grandes quantidades de dados Resistente à criptoanálise linear, diferencial e integral Continua em largo uso, para a criptografia de pequenas quantidades de dados

Referências Schneier, B. (1994) “Description of a New Variable-Length Key, 64-Bit Block Cipher (Blowfish)”. In: Fast Software Encryption, Cambridge Security Workshop Proceedings (December 1993), Springer-Verlag, 1994, pp. 191- 204. Cryptography Tutorials - Herong's Tutorial Notes. Disponível em: http://www.herongyang.com/crypto/cipher_blowfish.html. Acesso em: Abril, 2007. Blowfish (cipher). Disponível em: http://en.wikipedia.org/wiki/Blowfish_(cipher). Acesso em: Abril, 2007. The Blowfish Encryption Algorithm. Disponível em: http://www.schneier.com/blowfish.html. Acesso em: Abril, 2007. [Courses] [C] A tutorial on Blowfish. Disponível em: http://mailman.linuxchix.org/pipermail/courses/2002-December/001120.html. Acesso em: Abril, 2007.