TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Trabalho de Colisão de Hash (Forja de Assinatura)

Por:   •  12/12/2016  •  Trabalho acadêmico  •  362 Palavras (2 Páginas)  •  289 Visualizações

Página 1 de 2

Relatório do Trabalho de Forja de Assinatura

O trabalho foi realizado em três partes:

  1. Geração dos contratos
  2. Geração dos Hashs dos contratos
  3. Comparação entre os Hashs dos contratos

Cada parte do trabalho envolveu a criação de um algoritmo específico para a tarefa a ser realizada.

  1. Geração dos contratos

Para essa primeira parte foi criado algoritmo do Anexo I, que gerou pequenos contratos de apenas uma linha de texto, com pequenas variações em cada uma deles.

Os contratos foram divididos em dois grupos com textos antagônicos, cada um contendo 512 contratos, nos seguintes formatos:

Grupo A: “Esta casa está sendo vendida por R$150.000,00”

Grupo B: “Esta casa está sendo comprada por R$150.000,00”

Cada contrato apresentava uma pequena mudança no valor, tornando cada um deles diferente de todos os outros, conforme as imagens abaixo:

[pic 1]

 

[pic 2]

Esses contratos foram salvos em dois arquivos de texto: “ContratosA” e “ContratosB

  1. Geração dos Hashs

Nessa segunda parte foi implementado o algoritmo do Anexo II para gerar os Hashs dos contratos.

Para isso foi executando um algoritmo de geração de Hash SHA-1 sobre cada linha do arquivo de contratos e em seguida foi extraído de cada hash os 10 e 20 primeiros bits, como determinado.

O resultado foram hashs de três e cinco caracteres para 10 e 20 bits respectivamente, como mostrando nas imagens abaixo:

[pic 3] [pic 4]

Os Hash gerados foram gravados em quatro arquivos distintos, separados pelos dois grupos de contratos e pelos dois tamhos de hash: “ContratosAHash10”, “ContratosAHash20”, “ContratosBHash10”, “ContratosBHash20”.

  1. Verificação de Colisões

Na última etapa, foi criado o algoritmo do Anexo III para ler os arquivos dos hashs e verificar a existência de colisões, aprensentando os seguintes resultados:

  • Grupo de Contratos A, com Hash de 10 bits: 236 colisões
  • Grupo de Contratos A, com Hash de 20 bits: 1 colisão
  • Grupo de Contratos B, com Hash de 10 bits: 257 colisões
  • Grupo de Contratos B, com Hash de 10 bits: 0 colisões

Tamabém foi feita a mesclagem dos arquivos com o mesmo tamanho de hash e verificado no número de cololisões:

  • Todos os contratos com Hash de 10 bits: 992 colisões
  • Todos so contratos com Hash de 20 bits: 1 colisão

Anexo I

[pic 5]

 

Anexo II

[pic 6]

Anexo III

[pic 7]

...

Baixar como (para membros premium)  txt (2.4 Kb)   pdf (308.6 Kb)   docx (82.8 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com