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

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

Introdução à Criptografia

Apresentações semelhantes


Apresentação em tema: "Introdução à Criptografia"— Transcrição da apresentação:

1 Introdução à Criptografia
Geradores pseudo-aleatórios Carlos Eduardo dos Santos (cesps) René Araújo (raa2)

2 Conteúdo Introdução Propriedades Geradores seguros para criptografia
Ataques a PRNG Conclusão

3 Introdução Números verdadeiramente aleatórios
Possuem real aleatoriedade, exemplo: Tempo entre desintegrações de um elemento radioativo Números pseudo-aleatórios Possuem a aparência de aleatoriedade, mas possuindo um padrão específico repetitivo. Números calculados por um computador através de processos determinísticos não podem, por definição, serem aleatórios

4 Introdução Conhecendo o algoritmo usado para os números e seu estado interno (semente), pode-se prever todos os números retornados por chamadas subsequentes ao algoritmo. Para geradores verdadeiramente aleatórios, o conhecimento de uma sequencia longa de bits não é de utilidade para se prever o proximo número a ser gerado. Teste do próximo bit Números aleatórios são gerados por algoritmos determinísticos através de geradores pseudo-aleatórios (PRNG)

5 Propriedades desejáveis dos números pseudo-aleatórios
Sequencias sem correlação – As sequencias de números aleatórios não devem possuir relação com as anteriores Período longo – O gerador deve possuir um período entre repetições muito longo (idealmente, o gerador não deve repetir) Uniformidade- A sequencia de números aleatórios deve ser uniforme. Frações iguais de números aleatórios devem cair em áreas iguais do espaço de números. Ex: Se serão gerados números no intervalo [0,1) seria uma péssima prática se mais do que metade caisse no intervalo [0, 0.1) presumindo que a quantidade de números gerados é elevada Eficiência – O gerador deve ser eficiente, gerando um baixo overhead

6 Quantidades físicas utilizadas na geração de sementes
Tempo entre digitações de teclas quando o usuário entra com um password Medição da turbulência de ar ocasionada pelo movimento das cabeças de leitura de discos rígidos Tempo de acesso a memoria sob determinadas condições de sobrecarga Medição precisa de atrasos na CPU ou outro dispositivo Captação de interferência em ondas de rádio Tempos de desintegração de átomos radioativos

7 O ciclo dos números pseudo-aleatórios
Quase todos os PRNG possuem como base, uma sequencia de inteiros pseudo-aleatorios Estes inteiros são manipulados aritmeticamente para gerar números de ponto flutuante A natureza do ciclo A sequencia tem um numero finito de inteiros Asequencia é percorrida em uma ordem particular Caso o periodo se exceda, a sequencia é repetida Os inteiros devem ser distintos

8 Geradores seguros para criptografia
Aplicações Geração de chaves Nonces Salts One-time pads

9 Geradores seguros para criptografia
Um bom gerador de números aleatórios não necessariamente é adequado à criptografia Deve-se dificultar ao adversário a previsão dos números gerados Precisa passar pelo teste do próximo bit

10 Teste do próximo bit Dado um adversário A e um oráculo O.
O oráculo conhece uma seqüência de bits s, e o adversário A é capaz de consultar o oráculo sobre o próximo bit qualquer número de vezes, contanto que reste pelo menos um bit não consultado. Depois de ter analisado os primeiros l bits, A deve adivinhar o bit l + 1. A ganhará se sua adivinhação for correta. A vantagem de A é definida por AdvA = [1/2 - Pa] , onde Pa é a probabilidade de A ter sucesso no teste. Um gerador pseudo-aleatório é seguro para criptografia se ele passa no teste do próximo bit. O parâmetro de segurança do teste pode ser estendido para além dos bits, muitas vezes são utilizados números primos neste teste.

11 Ataques a PRNGs Ataque de criptoanálise direta
Quando um adversário pode diretamente distinguir entre números pseudo-aleatórios e números aleatórios (Criptoanálise do PRNG) Ataque baseado em entradas Quando o adversário é capaz de usar seu conhecimento e controle das entradas do PRNG para fazer criptoanálise do mesmo Extensão de ataques: Quando o adversário pode adivinhar alguma informação através de uma falha de segurança. A vantagem de um ataque anterior é estendida

12 Ataque de criptoanálise direta
Quando o adversário pode usar criptoanalise diretamente no PRNG Aplicável à maioria dos PRNGs Não pode ser aplicado quando o adversário não pode ser capaz de ver diretamente a saída do gerador Ex: Seja um PRNG usado para gerar chaves para o triplo-DES. Neste caso, a saída do PRNG nunca é vista diretamente pelo adversário.

13 Ataque baseado em entradas
Usado quando o adversário utiliza-se de conhecimento ou controle das entradas para fazer criptoanálise da saída do PRNG Tipos: Entrada conhecida Se as entradas da PRNG, que são idealizadas para serem difícil ao usuário adivinhar, se tornam facilmente dedutíveis. Ex. Ltencia de disco rigido. Quando o usuário está acessando um disco da rede, o adversário pode observar a latencia Entrada escolhida Muito utilizada contra smartcards e outras aplicações em que são utilizadas informações do usuário como entropia para o PRNG Entrada repetida Similar ao de entrada escolhida, a nao ser pelo fato de exigir menos sofisticação por parte do atacante.

14 Extensão de ataques Tenta extender as vantagens dos ataques se aproveitando de brechas na segurança As brechas podem ser: Vazamento de informações Sucesso criptográfico anterior Estes ataques são bem sucedidos quando o sistema é iniciado sem entropia

15 Conclusão Números aleatórios são a base para muitas aplicações de criptografia. Não existe uma função “independente” para gerar números aleatórios. Os computadores atuais podem apenas aproximar os números aleatórios, usando os geradores de números pseudo-aleatórios. Ataques à diversas aplicações criptográficas são possíveis através de ataques a PRNGs. Aplicações computacionais cada vez mais utilizam-se de fontes físicas externas para obterem números aleatórios.


Carregar ppt "Introdução à Criptografia"

Apresentações semelhantes


Anúncios Google