{"id":3113,"date":"2014-04-10T16:10:17","date_gmt":"2014-04-10T16:10:17","guid":{"rendered":"http:\/\/kasperskydaily.com\/spain\/?p=3113"},"modified":"2021-05-04T10:29:01","modified_gmt":"2021-05-04T08:29:01","slug":"funciones-hash","status":"publish","type":"post","link":"https:\/\/www.kaspersky.es\/blog\/funciones-hash\/3113\/","title":{"rendered":"Hash: qu\u00e9 son y c\u00f3mo funcionan"},"content":{"rendered":"<p>Una funci\u00f3n hash criptogr\u00e1fica, muchas veces se llamada simplemente hash, es un algoritmo matem\u00e1tico que transforma un bloque de datos en una l\u00ednea de caracteres de una longitud fija. No importa cu\u00e1ntos datos se insertan, se tendr\u00e1 siempre como resultado un hash de la misma longitud.<\/p>\n<p>Seg\u00fan un generador de hash SHA1 que he encontrado en la Red (SHA-1 es una de las funciones hash m\u00e1s utilizadas, junto a MD5 Y SHA-2), el hash para mi nombre, Brian, ser\u00eda: 75c450c3f963befb912ee79f0b63e563652780f0. Me pasa muy a menudo que se equivoquen en escribir mi nombre y lo cambian a Brain que, como sab\u00e9is muy bien, en ingl\u00e9s significa \u201ccerebro\u201d. De hecho, en mi carn\u00e9 de conducir me llamo \u201cBrain Donohue\u201d, pero es otra historia. El hash SHA-1 para \u201cbrain\u201d, seg\u00fan mi generador online de SHA-1, es 8b9248a4e0b64bbccf82e7723a3734279bf9bbc4.<\/p>\n<p>Se nota a primera vista que se trata de dos resultados totalmente diferentes, aunque en realidad solo se hayan intercambiado las vocales. Vamos a hacer otra prueba: si pongo mi nombre sin la may\u00fascula, el generador SHA-1 me da otro resultado diferente, o sea 760e7dab2836853c63805033e514668301fa9c47.<\/p>\n<p>Todos los hash son de 40 caracteres, y sorprende obtener un resultado de este tipo para una palabra de 5 letras como Brian, Brain o lo que sea. Pero las sorpresas no acaban aqu\u00ed: si insertamos el texto entero de este art\u00edculo, vamos a obtener este hash: db8471259c92193d6072c51ce61dacfdda0ac3d7. O sea 6.162caracteres (espacios incluidos) condensados en una l\u00ednea de 40 caracteres, la misma longitud que hemos obtenido con mi nombre de 5 letras. Podr\u00edamos subir todas las obras de William Shakespeare y siempre obtendr\u00edamos como resultado los 40 caracteres. Adem\u00e1s, nunca\u00a0 vamos a tener 2 hash iguales.<\/p>\n<p>Aqu\u00ed va una imagen de Wikimedia Commons que lo explica todo; a veces, las im\u00e1genes son m\u00e1s eficaces:<\/p>\n<p><a href=\"https:\/\/media.kasperskydaily.com\/wp-content\/uploads\/sites\/88\/2014\/04\/05224810\/HASH.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-3116\" src=\"https:\/\/media.kasperskydaily.com\/wp-content\/uploads\/sites\/88\/2014\/04\/05224810\/HASH.png\" alt=\"HASH\" width=\"680\" height=\"455\"><\/a><\/p>\n<p><b>\u00bfPara qu\u00e9 sirven los hash?<\/b><\/p>\n<p>Buena pregunta. Es que las funciones hash criptogr\u00e1ficas sirven para muchas cosas.<\/p>\n<div class=\"pullquote\">Las funciones hash criptogr\u00e1ficas se utilizan en muchas ocasiones, desde el almacenamiento de contrase\u00f1as a la detecci\u00f3n de softwares maliciosos, pasando por la protecci\u00f3n de archivos.<\/div>\n<p>Para m\u00ed y para vosotros que le\u00e9is este blog, los hash tienen que ver sobre todo con <a href=\"https:\/\/www.kaspersky.es\/blog\/contrasenas-del-s-xxi\/\" target=\"_blank\" rel=\"noopener\">contrase\u00f1as<\/a>. Por ejemplo, si hab\u00e9is olvidado la clave para acceder a\u00a0 un servicio online, muy probablemente ten\u00e9is que restablecer la contrase\u00f1a. En situaciones de este tipo, normalmente no recib\u00eds un mail con la contrase\u00f1a directamente; eso pasa porque el servicio online que est\u00e1is utilizando no guarda las claves en formato de texto simple, sino protegidas por un hash. De hecho, ellos no tienen la menor idea de cu\u00e1l sea vuestra clave (a menos que no est\u00e9is utilizando una contrase\u00f1a extremadamente sencilla que en consecuencia tiene un hash bastante reconocible).<\/p>\n<p>Por cierto, si para restablecer la contrase\u00f1a os llega un mail con la clave en texto simple, significa que el servicio online no utiliza hash y es algo muy lamentable.<\/p>\n<p>Pod\u00e9is hacer una prueba con un generador inverso de hash online. Si cre\u00e1is un hash para una <a href=\"https:\/\/threatpost.com\/password-is-no-longer-the-worst-password\/103746\" target=\"_blank\" rel=\"noopener nofollow\">contrase\u00f1a d\u00e9bil<\/a> (como la palabra \u201ccontrase\u00f1a\u201d o \u201c123456\u201d) y luego lo insert\u00e1is en un generador inverso de hash online, es posible que el generador reconozca el hash y revele la contrase\u00f1a. En mi caso, el generador inverso ha reconocido los hash de \u2018brain\u2019 y \u2018Brian\u2019 pero no el que he creado para el texto de este art\u00edculo. As\u00ed que la integridad de los hash depende enteramente de los datos que se insertan, que pueden ser de cualquier tipo.<\/p>\n<p>Seg\u00fan un informe de la <a href=\"http:\/\/techcrunch.com\/2014\/03\/30\/how-dropbox-knows-when-youre-sharing-copyrighted-stuff-without-actually-looking-at-your-stuff\/\" target=\"_blank\" rel=\"noopener nofollow\">revista TechCrunch del mes pasado<\/a>, el popular servicio de almacenamiento de datos en la nube, Dropbox, bloque\u00f3 uno de sus usuarios porque compart\u00eda contenido protegido por el Digital Millennium Copyright Act, la ley estadounidense sobre los derechos de autor. Este usuario luego escribi\u00f3 en Twitter que le hab\u00edan bloqueado por haber compartido algunos contenidos; poco a poco se empez\u00f3 a hablar de la noticia en la red social y mucha gente se quej\u00f3 indignada de que Dropbox hab\u00eda tenido acceso a las cuentas de los usuarios aunque se declara contrario en la <a href=\"https:\/\/threatpost.com\/dropbox-addresses-government-surveillance-with-updated-privacy-policy\/104423\" target=\"_blank\" rel=\"noopener nofollow\">pol\u00edtica de privacidad<\/a>.<\/p>\n<p>Dropbox, claramente, no accedi\u00f3 a los contenidos del usuario. Como se lee en el art\u00edculo de TechCrunch, probablemente lo que ha pasado es esto: los que ten\u00edan los derechos de autor del archivo (probablemente la versi\u00f3n digital de una canci\u00f3n o de una pel\u00edcula) crearon una funci\u00f3n hash para el archivo. Luego agregaron el hash de 40 caracteres en una especie de \u201clista de rechazados\u201d de los materiales protegidos por derechos de autor. Cuando el usuario intent\u00f3 compartir el archivo protegido por los derechos de autor, los sistemas de an\u00e1lisis de Dropbox detectaron autom\u00e1ticamente que el hash estaba incluido en este listado y bloque\u00f3 el intento de compartir el contenido.<\/p>\n<p>Pues, se pueden crear hash para contrase\u00f1as y archivos multimedia, \u00bfpero para qu\u00e9 sirven las funciones hash criptogr\u00e1ficas? Como hemos dicho, las funciones hash sirven para muchas m\u00e1s cosas de las que sepa o entienda yo. De todas formas, hay sobre todo un uso de los hash que nos interesa: las empresas de productos antivirus como <a href=\"https:\/\/www.kaspersky.es\/\" target=\"_blank\" rel=\"noopener\">Kaspersky Lab<\/a>, utilizan las funciones hash criptogr\u00e1ficas para detectar los programas maliciosos.<\/p>\n<p>As\u00ed como las casas discogr\u00e1ficas y cinematogr\u00e1ficas crean listas negras de hash para proteger sus datos, tambi\u00e9n existen listas de hash de malware, y muchas de ellas son p\u00fablicas. Las listas de hash de malware, o firmas de malware, se componen de los valores hash de las piezas de malware o de algunas partes peque\u00f1as y reconocibles. Por un lado, si un usuario detecta una archivo sospechoso,\u00a0 puede insertar el hash correspondiente en las bases de datos p\u00fablicas de hash de malware, y el usuario sabr\u00e1 si se trata o no de un archivo malicioso. Por el otro, los productos antivirus detectan y al final bloquean un malware comparando los hash con sus propias bases de datos y con las p\u00fablicas.<\/p>\n<p>Las funciones hash criptogr\u00e1ficas se utilizan tambi\u00e9n para la llamada \u201cintegridad de los mensajes\u201d. En pocas palabras, para estar seguros \u00a0de que algunas comunicaciones o archivos no hayan sido manipulados de alguna forma, se pueden examinar los hash creados antes y despu\u00e9s de la transmisi\u00f3n de los datos. Si los dos hash son id\u00e9nticos, significa que no ha habido ninguna manipulaci\u00f3n.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Las funciones hash criptogr\u00e1ficas se utilizan en muchas ocasiones, desde el almacenamiento de contrase\u00f1as a la detecci\u00f3n de softwares maliciosos, pasando por la protecci\u00f3n de archivos.<\/p>\n","protected":false},"author":42,"featured_media":3115,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1348,10],"tags":[103,731,630,504,727,728,22,729,730],"class_list":{"0":"post-3113","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-threats","8":"category-tips","9":"tag-antivirus","10":"tag-certificados","11":"tag-criptografia","12":"tag-encriptacion","13":"tag-firmas-digitales","14":"tag-hash","15":"tag-malware-2","16":"tag-matematica","17":"tag-sha-1"},"hreflang":[{"hreflang":"es","url":"https:\/\/www.kaspersky.es\/blog\/funciones-hash\/3113\/"}],"acf":[],"banners":"","maintag":{"url":"https:\/\/www.kaspersky.es\/blog\/tag\/antivirus\/","name":"antivirus"},"_links":{"self":[{"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/posts\/3113","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/users\/42"}],"replies":[{"embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/comments?post=3113"}],"version-history":[{"count":4,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/posts\/3113\/revisions"}],"predecessor-version":[{"id":25186,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/posts\/3113\/revisions\/25186"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/media\/3115"}],"wp:attachment":[{"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/media?parent=3113"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/categories?post=3113"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.kaspersky.es\/blog\/wp-json\/wp\/v2\/tags?post=3113"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}