slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
14 de Dezembro de 2009 PowerPoint Presentation
Download Presentation
14 de Dezembro de 2009

Loading in 2 Seconds...

play fullscreen
1 / 8

14 de Dezembro de 2009 - PowerPoint PPT Presentation


  • 79 Views
  • Uploaded on

Teste Diehard aplicado ao gerador da biblioteca OpenSSL. Instituto Superior Técnico. Segurança em Redes Móveis. Elaborado por: Luís Ricardo Fonseca. 14 de Dezembro de 2009. Indice. A. Objectivos B. Geração de Números ( OpenSSL ) C. Testes Diehard D. Resultados. 2 / 8.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about '14 de Dezembro de 2009' - axl


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Teste Diehard aplicado ao gerador da biblioteca OpenSSL

Instituto Superior Técnico

Segurança em Redes Móveis

Elaborado por:

Luís Ricardo Fonseca

14 de Dezembro de 2009

slide2

Indice

A. Objectivos

B. Geração de Números (OpenSSL)

C. Testes Diehard

D. Resultados

2 / 8

Teste Diehard aplicado ao gerador da biblioteca OpenSSL

slide3

A. Objectivos

O Diehard consiste numa bateria de testes estatísticos que permite aferir a qualidade de uma função geradora de números pseudo-aleatórios.

A biblioteca OpenSSL disponibiliza um gerador de números pseudo-aleatórios. Esta biblioteca é usada, essencialmente, para manter a privacidade e integridade dos dados de uma aplicação, e da informação trocada entre aplicações.

Este trabalho teve como objectivo executar os testes do Diehard sobre um ficheiro binário de números gerados utilizando a biblioteca OpenSSL, de modo a estudar a aleatoriedade da função geradora.

3 / 8

Teste Diehard aplicado ao gerador da biblioteca OpenSSL

slide4

B. Geração de Números (OpenSSL)

O ficheiro binário de input ao teste Diehard deverá ter no mínimo 10/11MB. Assim, foi gerado um ficheiro de 12MB (Num_Gerados.dh), utilizando o programa seguinte:

  • #include <stdlib.h>
  • #include <stdio.h>
  • #include <string.h>
  • #include <unistd.h>
  • #include <sys/types.h>
  • #include <sys/stat.h>
  • #include <fcntl.h>
  • #include <openssl/rand.h>
  • intmain(intargc, char * argv[])
  • {
  • int i,j=1024;
  • charstring[j];
      • intfich=open(“Num_Gerados.dh",O_WRONLY|O_CREAT|O_APPEND,S_IRUSR|S_IWUSR);
  • for (i=1;i<=12*1024;i=i+1)
  • {
        • RAND_bytes(string,j);
        • write(fich,string,j);
      • }
  • return 0;
  • }

4 / 8

Teste Diehard aplicado ao gerador da biblioteca OpenSSL

slide5

C. Testes Diehard

Os testes realizados (Diehard) foram os seguintes:

Birthday Spacings

Overlapping Permutations

Ranks of 31x31 and 32x32 matrices

Ranks of 6x8 Matrices

Monkey Tests on 20-bit Words

Monkey Tests OPSO,OQSO,DNA

Count the 1`s in a Stream of Bytes

Count the 1`s in Specific Bytes

Parking Lot Test

Minimum Distance Test

Random Spheres Test

The Sqeeze Test

Overlapping Sums Test

Runs Test

The Craps Test

5 / 8

Teste Diehard aplicado ao gerador da biblioteca OpenSSL

slide6

C. Testes Diehard

  • O Diehard retorna para cada um dos testes, valores-p que pertencem ao intervalo [0,1]. Caso se obtenha um valor-p <0.025 ou >0.975, o teste falhou.
  • De qualquer maneira, o criador dos testes, G. Marsaglia, deixa uma nota a referir que pontualmente, mesmo bons geradores, poderão falhar alguns testes.
  • Os 15 testes mencionados são de 3 tipos distintos:
  • c2 - Birthday spacing, Overlapping permutations, Rank of matrices (2), count the 1s (2), squeeze, craps;
  • KS - Minimum distance, random spheres, overlapping sums, runs;
  • N - Monkey (2), parking lot.

6 / 8

Teste Diehard aplicado ao gerador da biblioteca OpenSSL

slide7

D. Resultados

Da análise aos resultados obtidos (Resultados.txt) verifica-se que:

Legenda:

Passou

Falhou

7 / 8

Teste Diehard aplicado ao gerador da biblioteca OpenSSL

slide8

D. Resultados

  • O ficheiro utilizado como input do Diehard passou em todos os testes, com excepção do teste 2. Overlapping Permutations, podendo eventualmente existir fragilidades que poderão ser exploradas por um atacante.
  • Assim, é possível concluir que o OpenSSL é um bom gerador de números pseudo-aleatórios.
  • Em termos de desempenho de execução, foram obtidas performances excelentes:
  • Geração do ficheiro de números aleatórios com 12 MB – 20s;
  • Execução dos testes Diehard – 60s.

8 / 8

Teste Diehard aplicado ao gerador da biblioteca OpenSSL