SlideShare una empresa de Scribd logo
1 de 11
Descargar para leer sin conexión
Algoritmo de hash
 Una función hash es método para generar claves o
 llaves que representen de manera casi unívoca a
 un documento o conjunto de datos.
 Es una operación matemática que se realiza sobre
 este conjunto de datos de cualquier longitud, y su
 salida es una huella digital, de tamaño fijo e
 independiente de la dimensión del documento
 original. El contenido es ilegible.
 A partir de un hash o huella digital, no podemos
  recuperar el conjunto de datos originales. Los
  más conocidos son el MD5 y el SHA-1. Cifrar
  una huella digital se conoce como firma digital.
 Una función hash es un algoritmo matemático
  que nos da un resultado B al aplicarlo a un valor
  inicial A.
Propiedades que debe cumplir un hash
 Sea cual sea la longitud del texto base A, la longitud de su
  hash resultante B siempre va a ser la misma.
 Para cada entrada A, la función generará una salida B única.
 Dado un texto base, es fácil y rápido (para un ordenador)
  calcular su número resumen.
 Es imposible reconstruir el texto base a partir del número
  resumen.
Requisitos que deben cumplir las funciones hash:

 - Imposibilidad de obtener el texto original a partir de la huella
  digital.
 - Imposibilidad de encontrar un conjunto de datos diferentes que
  tengan la misma huella digital (aunque como hemos visto
  anteriormente es posible que este requisito no se cumpla).
 - Poder transformar un texto de longitud variable en una huella
  de tamaño fijo (como el SHA-1 que es de 160bits).
 - Facilidad de empleo e implementación.
Entre los algoritmos de hash más comunes están:
SHA-1: algoritmo de hash seguro
Algoritmo de síntesis que genera un hash de 160 bits. Se
utiliza, por ejemplo, como algoritmo para la firma
digital.Es parecido al famoso MD5, pero tiene un bloque
de 160bits en lugar de los 128bits del MD5. La función
de compresión es más compleja que la función de MD5.
SHA-1 es más lento que MD5 porque el número de
pasos son de 80 (64 en MD5) y porque tiene mayor
longitud que MD5 (160bits contra 128bits). Lo que
convierte a SHA-1 más robusto y seguro, totalmente
apto para VPN’s por ejemplo.
MD5
 Esquema de hash de hash de 128 bits muy utilizado para
  autenticación cifrada. Gracias al MD5 se consigue, por ejemplo,
  que un usuario demuestre que conoce una contraseña sin necesidad
  de enviar la contraseña a través de la red.
ejemplo
 public static byte[] Encriptar(string strPassword, string strSalt, int intIter
    aciones){
       string _strPasswordSalt = strPassword + strSalt;
       SHA1 _objSha1 = SHA1.Create();
       byte[] _objTemporal = null;
       try
       {
              _objTemporal =
    System.Text.Encoding.UTF8.GetBytes(_strPasswordSalt);
              for (int i = 0; i <= intIteraciones-1; i++)
                    _objTemporal = _objSha1.ComputeHash(_objTemporal);
        }
        finally
        {
              _objSha1.Clear();
        }
        return _objTemporal;
   }
 http://www.cibernetia.com/enciclopedia/algoritmo_de_ha
  sh
 http://www.redeszone.net/2010/11/09/criptografia-
  algoritmos-de-autenticacion-hash/
 http://foro.elhacker.net/criptografia/funciones_de_hash-
  t100025.0.html

Más contenido relacionado

La actualidad más candente

Metodologías de Peter Checkland y Hall & Jenkins
Metodologías de Peter Checkland y Hall & JenkinsMetodologías de Peter Checkland y Hall & Jenkins
Metodologías de Peter Checkland y Hall & JenkinsDiego Casso
 
El sistema de actividades humana como un lenguaje de modelación unidad 5
El sistema de actividades humana como un lenguaje de modelación unidad 5El sistema de actividades humana como un lenguaje de modelación unidad 5
El sistema de actividades humana como un lenguaje de modelación unidad 5Alejandro Sanchez Rodriguez
 
T14
T14T14
T14t 2
 
Unidad 4-generacion-de-numeros-pseudoaleatorios1
Unidad 4-generacion-de-numeros-pseudoaleatorios1Unidad 4-generacion-de-numeros-pseudoaleatorios1
Unidad 4-generacion-de-numeros-pseudoaleatorios1Juan Carlos Martinez Garcia
 
Proceso de Software Personal - PSP
Proceso de Software Personal - PSPProceso de Software Personal - PSP
Proceso de Software Personal - PSPChristian Mora
 
calidad de los sistemas de informacion
calidad de los sistemas de informacioncalidad de los sistemas de informacion
calidad de los sistemas de informacionErika Vazquez
 
Metodos y herramientas para el aseguramiento de la calidad
Metodos y herramientas para el aseguramiento de la calidadMetodos y herramientas para el aseguramiento de la calidad
Metodos y herramientas para el aseguramiento de la calidadamairany
 
Cadenas de markov 1
Cadenas de markov 1Cadenas de markov 1
Cadenas de markov 1yesi arrieta
 
Decisiones matriz de pago 2015 c3
Decisiones matriz de pago 2015 c3Decisiones matriz de pago 2015 c3
Decisiones matriz de pago 2015 c3Gaston Saenz
 
Proceso de nacimiento y muerte poisson
Proceso de nacimiento y muerte poissonProceso de nacimiento y muerte poisson
Proceso de nacimiento y muerte poissonKatia Arrayales Zamora
 
“PROGRAMACIÓN LINEAL: COMO HERRAMIENTA PARA LA TOMA DE DECISIONES”
“PROGRAMACIÓN LINEAL: COMO HERRAMIENTA PARA LA TOMA DE DECISIONES”“PROGRAMACIÓN LINEAL: COMO HERRAMIENTA PARA LA TOMA DE DECISIONES”
“PROGRAMACIÓN LINEAL: COMO HERRAMIENTA PARA LA TOMA DE DECISIONES”vanessa sobvio
 
Modelado Orientado a Objetos
Modelado Orientado a ObjetosModelado Orientado a Objetos
Modelado Orientado a ObjetosRafael Miranda
 

La actualidad más candente (20)

Requerimientos del software
Requerimientos del software Requerimientos del software
Requerimientos del software
 
Metodologías de Peter Checkland y Hall & Jenkins
Metodologías de Peter Checkland y Hall & JenkinsMetodologías de Peter Checkland y Hall & Jenkins
Metodologías de Peter Checkland y Hall & Jenkins
 
Controles de desarrollo de Software
Controles de desarrollo de SoftwareControles de desarrollo de Software
Controles de desarrollo de Software
 
Propiedades y características de los sistemas 6
Propiedades y características de los sistemas  6Propiedades y características de los sistemas  6
Propiedades y características de los sistemas 6
 
Programacion por metas
Programacion por metasProgramacion por metas
Programacion por metas
 
El sistema de actividades humana como un lenguaje de modelación unidad 5
El sistema de actividades humana como un lenguaje de modelación unidad 5El sistema de actividades humana como un lenguaje de modelación unidad 5
El sistema de actividades humana como un lenguaje de modelación unidad 5
 
T14
T14T14
T14
 
Metodologia sum
Metodologia sumMetodologia sum
Metodologia sum
 
Unidad 4-generacion-de-numeros-pseudoaleatorios1
Unidad 4-generacion-de-numeros-pseudoaleatorios1Unidad 4-generacion-de-numeros-pseudoaleatorios1
Unidad 4-generacion-de-numeros-pseudoaleatorios1
 
Proceso de Software Personal - PSP
Proceso de Software Personal - PSPProceso de Software Personal - PSP
Proceso de Software Personal - PSP
 
calidad de los sistemas de informacion
calidad de los sistemas de informacioncalidad de los sistemas de informacion
calidad de los sistemas de informacion
 
Metodos y herramientas para el aseguramiento de la calidad
Metodos y herramientas para el aseguramiento de la calidadMetodos y herramientas para el aseguramiento de la calidad
Metodos y herramientas para el aseguramiento de la calidad
 
lineas de espera
lineas de esperalineas de espera
lineas de espera
 
Metodologia crystal
Metodologia crystalMetodologia crystal
Metodologia crystal
 
Cadenas de markov 1
Cadenas de markov 1Cadenas de markov 1
Cadenas de markov 1
 
Decisiones matriz de pago 2015 c3
Decisiones matriz de pago 2015 c3Decisiones matriz de pago 2015 c3
Decisiones matriz de pago 2015 c3
 
Proceso de nacimiento y muerte poisson
Proceso de nacimiento y muerte poissonProceso de nacimiento y muerte poisson
Proceso de nacimiento y muerte poisson
 
Cadenas de markov
Cadenas de markovCadenas de markov
Cadenas de markov
 
“PROGRAMACIÓN LINEAL: COMO HERRAMIENTA PARA LA TOMA DE DECISIONES”
“PROGRAMACIÓN LINEAL: COMO HERRAMIENTA PARA LA TOMA DE DECISIONES”“PROGRAMACIÓN LINEAL: COMO HERRAMIENTA PARA LA TOMA DE DECISIONES”
“PROGRAMACIÓN LINEAL: COMO HERRAMIENTA PARA LA TOMA DE DECISIONES”
 
Modelado Orientado a Objetos
Modelado Orientado a ObjetosModelado Orientado a Objetos
Modelado Orientado a Objetos
 

Similar a Algoritmo hash funciones

Gpg4 win
Gpg4 winGpg4 win
Gpg4 winguelo
 
Live usb
Live usbLive usb
Live usbguelo
 
Funcion resumen
Funcion resumenFuncion resumen
Funcion resumenG Hoyos A
 
Algoritmo De Hash
Algoritmo De HashAlgoritmo De Hash
Algoritmo De HashCamilo Ruiz
 
Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda HashBlanca Parra
 
Criptografía
CriptografíaCriptografía
CriptografíaJurt
 
Tema 2 - Introducción a la Criptografía
Tema 2 - Introducción a la CriptografíaTema 2 - Introducción a la Criptografía
Tema 2 - Introducción a la CriptografíaDaniel Pecos Martínez
 
Identificando el tipo de hash
Identificando el tipo de hashIdentificando el tipo de hash
Identificando el tipo de hashTensor
 
Encriptacion simetrica.pptx
Encriptacion simetrica.pptxEncriptacion simetrica.pptx
Encriptacion simetrica.pptxSaulTapiaAlmidon
 
Clase 3 de cifrado
Clase 3 de cifradoClase 3 de cifrado
Clase 3 de cifradoUPTM
 
La computadora digital
La computadora digitalLa computadora digital
La computadora digitalMegamovil
 
Algotirmos de criptologia
Algotirmos de criptologiaAlgotirmos de criptologia
Algotirmos de criptologiavictoriaSuro
 
3. boletines de mensajes y firmas digitales
3. boletines de mensajes y firmas digitales3. boletines de mensajes y firmas digitales
3. boletines de mensajes y firmas digitales1 2d
 
Métodos de encriptación en las redes privadas virtuales
Métodos de encriptación en las redes privadas virtualesMétodos de encriptación en las redes privadas virtuales
Métodos de encriptación en las redes privadas virtualesESPE
 

Similar a Algoritmo hash funciones (20)

Gpg4 win
Gpg4 winGpg4 win
Gpg4 win
 
Live usb
Live usbLive usb
Live usb
 
Funcion resumen
Funcion resumenFuncion resumen
Funcion resumen
 
IP-VPNs IPsec
IP-VPNs IPsecIP-VPNs IPsec
IP-VPNs IPsec
 
Apartado 3
Apartado 3Apartado 3
Apartado 3
 
Criptografía - Funciones Resumen
Criptografía - Funciones ResumenCriptografía - Funciones Resumen
Criptografía - Funciones Resumen
 
Algoritmo De Hash
Algoritmo De HashAlgoritmo De Hash
Algoritmo De Hash
 
Método de Búsqueda Hash
Método de Búsqueda HashMétodo de Búsqueda Hash
Método de Búsqueda Hash
 
Tipos algoritmos
Tipos algoritmosTipos algoritmos
Tipos algoritmos
 
Criptografía
CriptografíaCriptografía
Criptografía
 
Tema 2 - Introducción a la Criptografía
Tema 2 - Introducción a la CriptografíaTema 2 - Introducción a la Criptografía
Tema 2 - Introducción a la Criptografía
 
Criptografia
CriptografiaCriptografia
Criptografia
 
Introducción a la Criptografia
Introducción a la CriptografiaIntroducción a la Criptografia
Introducción a la Criptografia
 
Identificando el tipo de hash
Identificando el tipo de hashIdentificando el tipo de hash
Identificando el tipo de hash
 
Encriptacion simetrica.pptx
Encriptacion simetrica.pptxEncriptacion simetrica.pptx
Encriptacion simetrica.pptx
 
Clase 3 de cifrado
Clase 3 de cifradoClase 3 de cifrado
Clase 3 de cifrado
 
La computadora digital
La computadora digitalLa computadora digital
La computadora digital
 
Algotirmos de criptologia
Algotirmos de criptologiaAlgotirmos de criptologia
Algotirmos de criptologia
 
3. boletines de mensajes y firmas digitales
3. boletines de mensajes y firmas digitales3. boletines de mensajes y firmas digitales
3. boletines de mensajes y firmas digitales
 
Métodos de encriptación en las redes privadas virtuales
Métodos de encriptación en las redes privadas virtualesMétodos de encriptación en las redes privadas virtuales
Métodos de encriptación en las redes privadas virtuales
 

Algoritmo hash funciones

  • 2.  Una función hash es método para generar claves o llaves que representen de manera casi unívoca a un documento o conjunto de datos.  Es una operación matemática que se realiza sobre este conjunto de datos de cualquier longitud, y su salida es una huella digital, de tamaño fijo e independiente de la dimensión del documento original. El contenido es ilegible.
  • 3.  A partir de un hash o huella digital, no podemos recuperar el conjunto de datos originales. Los más conocidos son el MD5 y el SHA-1. Cifrar una huella digital se conoce como firma digital.  Una función hash es un algoritmo matemático que nos da un resultado B al aplicarlo a un valor inicial A.
  • 4.
  • 5. Propiedades que debe cumplir un hash  Sea cual sea la longitud del texto base A, la longitud de su hash resultante B siempre va a ser la misma.  Para cada entrada A, la función generará una salida B única.  Dado un texto base, es fácil y rápido (para un ordenador) calcular su número resumen.  Es imposible reconstruir el texto base a partir del número resumen.
  • 6. Requisitos que deben cumplir las funciones hash:  - Imposibilidad de obtener el texto original a partir de la huella digital.  - Imposibilidad de encontrar un conjunto de datos diferentes que tengan la misma huella digital (aunque como hemos visto anteriormente es posible que este requisito no se cumpla).  - Poder transformar un texto de longitud variable en una huella de tamaño fijo (como el SHA-1 que es de 160bits).  - Facilidad de empleo e implementación.
  • 7. Entre los algoritmos de hash más comunes están: SHA-1: algoritmo de hash seguro Algoritmo de síntesis que genera un hash de 160 bits. Se utiliza, por ejemplo, como algoritmo para la firma digital.Es parecido al famoso MD5, pero tiene un bloque de 160bits en lugar de los 128bits del MD5. La función de compresión es más compleja que la función de MD5. SHA-1 es más lento que MD5 porque el número de pasos son de 80 (64 en MD5) y porque tiene mayor longitud que MD5 (160bits contra 128bits). Lo que convierte a SHA-1 más robusto y seguro, totalmente apto para VPN’s por ejemplo.
  • 8.
  • 9. MD5  Esquema de hash de hash de 128 bits muy utilizado para autenticación cifrada. Gracias al MD5 se consigue, por ejemplo, que un usuario demuestre que conoce una contraseña sin necesidad de enviar la contraseña a través de la red.
  • 10. ejemplo  public static byte[] Encriptar(string strPassword, string strSalt, int intIter aciones){  string _strPasswordSalt = strPassword + strSalt;  SHA1 _objSha1 = SHA1.Create();  byte[] _objTemporal = null;  try  {  _objTemporal = System.Text.Encoding.UTF8.GetBytes(_strPasswordSalt);  for (int i = 0; i <= intIteraciones-1; i++)  _objTemporal = _objSha1.ComputeHash(_objTemporal);  }  finally  {  _objSha1.Clear();  }  return _objTemporal;  }
  • 11.  http://www.cibernetia.com/enciclopedia/algoritmo_de_ha sh  http://www.redeszone.net/2010/11/09/criptografia- algoritmos-de-autenticacion-hash/  http://foro.elhacker.net/criptografia/funciones_de_hash- t100025.0.html