Seguridad Informtica - PowerPoint PPT Presentation

1 / 7
About This Presentation
Title:

Seguridad Informtica

Description:

Un resumen es una huella dactilar digital de un mensaje o documento. ... digital fingerprint. checksum. Se construye usando un algoritmo de resumen de mensajes ... – PowerPoint PPT presentation

Number of Views:29
Avg rating:3.0/5.0
Slides: 8
Provided by: mic4152
Category:

less

Transcript and Presenter's Notes

Title: Seguridad Informtica


1
Seguridad Informática
Resúmenes de Mensajes Java SE Security Micael.Gal
lego_at_urjc.es
Seguridad en Java
2
Introducción
  • Un resumen es una huella dactilar digital de un
    mensaje o documento. Es una pequeña secuencia de
    bytes que resume el mensaje o documento
  • Se le conoce como
  • Message Digest
  • Digest
  • Hash Value
  • digital fingerprint
  • checksum
  • Se construye usando un algoritmo de resumen de
    mensajes (message digest algorithm), también
    llamado función hash criptográfica (cryptographic
    hash function)

3
Introducción
  • Este tipo de resúmenes tienen ciertas propiedades
  • Pequeñas variaciones en el documento, hacen que
    el resumen sea completamente diferente
  • Partiendo de un resumen no se puede obtener el
    documento original
  • Dado un resumen concreto, no se puede crear un
    documento que tenga ese mismo resumen
  • Ejemplos de algoritmos de resúmenes
  • SHA-1, MD5, RIPEMD-160

Es computacionalmente muy costoso y por tanto se
considera improbable
4
Resumen en Java
  • Para crear un resumen en Java se usa la clase
    MessageDigest
  • Se usa el método update() por cada array de
    bytes
  • Se consulta el valor del resumen con el método
    byte digest()

5
Resumen en Java
File file FileInputStream fis new
FileInputStream(file) MessageDigest md
MessageDigest.getInstance("MD5") byte data
new byte2048 int leidos while ((leidos
fis.read(data)) ! -1) md.update(data, 0,
leidos) byte digest md.digest()
6
Resumen en Java
  • Es muy habitual mostrar el resumen en formato
    hexadecimal

private static String toHexString(byte digest)
StringBuffer buf new StringBuffer()
for (byte b digest) buf.append(String.for
mat("02x", b)).append(" ") return
buf.toString()
7
Ejercicio 1
  • Implementa un programa en Java que compruebe si
    el MD5 pasado en la línea de comandos corresponde
    al MD5 de un fichero determinado
  • Este programa permite comprobar la validez de la
    descarga de un fichero desde la web
  • Ejemplo http//tomcat.apache.org/download-60.cgi

Resumen MD5 del fichero
Write a Comment
User Comments (0)
About PowerShow.com