Un ejemplo tonto
Estas cosas se entienden mejor con un ejemplo tonto. Supongamos que debo mandar instrucciones a uin banco en otro país que diga así:
"Pagar a Pedro López 100 dólares y a Juan Pérez 500 dólares", esa instrucción la mando en un mail, un pendrive o un simple texto por Whatsapp.
Pero Pedro López tiene un amigo en el banco y -como el mensaje es un simple texto que puede alterarse-cambia dos caracteres del mensaje de esta manera;
"Pagar a Pedro López 500 dólares y a Juan Pérez 100 dólares"
El banco solo no se puede comunicar directamente conmigo para verificarlo. solo puede ver este mail. ¿Cómo podría darse cuenta que no alteraron el mensaje? Muy simple, en el mismo mail donde mando la instrucción le agrego la siguiente nota:
Hash MD5 e9563acc7ce7aa468a92b6fe34c19b72
En Internet está lleno de sitios donde se puede probar online funciones Hash, como por ejemplo este. en el casillero de arriba por ejemplo escribo: Pagar a Pedro López 500 dólares y a Juan Pérez 100 dólares (el mensaje falsificado) y le pedimos que calcule el Hash MD5, el resultado es:
728024fb25609e2619e2a2ce5bbd80c7
¡Un número de Hash distinto al que nos enviaron en el mail! Eso nos asegura que el mensaje fue falsificado, porque de ser legítimo el Hash debió dar e9563acc7ce7aa468a92b6fe34c19b72
Eso es una firma digital
Tomémos un minuto para pensar en esta maravilla. Todos sabemos que un texto que se envía por Internet no cuesta nada modificarlo, pero si conocemos su Hash podemos comprobar enseguida si es el texto original escrito o si alguien le cambió, aunque sea un caracter.
Una función no reversible
El Hash es una aplicación muy típica de la criptografía, tal vez la más útil de todas. Tomas cualquier archivo, no importa que sea gigantesco y con un procedimiento relativamente simple calcula esta "huella digital electrónica" que es siempre un número fijo de caracteres: letras y números, como muestra la imágen al principio de esta entrada.
No solo para mensajes de texto
El Hash se describe como un "digest", "resumen" o "firma digital" de cualquier texto o archivo, aunque no sea de texto. Podemos obtener la firma digital de cualquier archivo, aunque sea enorme y obtener su valor Hash,
En este link, de la misma página que les puse antes, pueden subir cualquier archivo y obtener su firma. Si en algún sitio web ese archivo está para descargar y tiene el valor Hash, pueden chequear la descarga para asegurarse que nadie lo haya modificado.
Para los passwords
Pero el cálculo de Hash tiene muchos otros usos, que son indispensables en los computadores para asegurar la confidencialidad y descubrir fraudes.
Uno de esos es muy simple, por ejemplo usando la página que calcula los Hash, yo podría colocar algo así como "mi contraseña" y obtener su Hash que es 686c5c18184fce70950f2dcf1ed83d37
Luego puedo usar ese chorizo como un password mucho más seguro. Pero eso no es todo ¿saben cómo almacenan los bancos y todos los sitios nuestras contraseñas en sus servidores? Como deben haber imaginado, no las guardan en texto sino que guardan su valor Hash
Así es que si un funcionario con acceso a los servidores o un hacker se roba el archivo de contraseñas no le sirve para nada, porque los Hash no son reversibles, esa es la base de todo esto: es muy fácil convertir un texto en Hash, pero es endiabladamente difícil recuperar el texto a partir del Hash.
El reverso del Hash se basa en un problema matemático que hasta hoy no tiene solución conocida y que si se intenta resolver por fuerza bruta (probando todas las combinaciones) el tiempo de computación necesario es ridículamente alto: la edad de la tierra y cosas así.
Los bitcoin se basan en Hash
El funcionamiento de las cadenas de bloques y la minería de bitcoin se basan en crear y resolver funciones Hash. Por ejemplo cada bloque con los datos de una transacción en bitcoin es un texto al que se le calcula su Hash y se agrega a una cadena de bloques: el blockchain.
El blockchain es una planilla donde se registran todas las transacciones en todo el mundo, un gigantesco libro de contabilidad que se distribuye entre todos los usuarios, pero al que nadie puede cambiar ni un solo caracter, porque el Hash lo delataría enseguida.
Y los bitcoin se crean (o "minan") en uno o más computadores que reselven "pruebas de trabajo", que consisten en encontrar textos que produzcan un cierto valor Hash, es decir que rompan esta irreversibilidad.
¿Y no dijimos que los Hash eran irreversibles? Claro, pero si se les deja una marca -por ejemplo los que empiezan con ocho ceros seguidos- el problema se facilita y usando fuerza bruta, es decir probando todas las combinaciones posibles se puede encontrar la solución después de un largo tiempo de cálculo.
¿Y qué pasaría si encuentran como revertir un Hash?
Que todos los que tienen bitcoin en el mundo los perderían, sus fortunas equivalentes a miles de millones de dólares se vaporizarían en un segundo. Todas las contraseñas almacenadas en bancos, sitios del gobierno, correos, sitios porno, etc. quedarían expuestas.
Eso para que vayan dimensionando el tamaño de la cagada que quedaría. Es verdad que hasta el momento, con la potencia de los computadores actuales son aplicaciones seguras, pero con los años y el aumento de poder de los computadores se han tenido que ir subiendo el tamaño de las claves.
Por eso existen varias versiones como SHA-1, SHA-256, SHA-384 y SHA-512. Si la cosa es tan segura ¿por qué salen versiones con valores cada vez más largos? Como para pensarlo.
En fin, un motivo más para desconfiar del bitcoin. A mi no me haría maldita gracia pensar que toda mi inmensa fortuna es solo una serie de anotaciones con números codificados que se podrían borrar o algún genio matemático podría encontrar la manera de que pierdan todo su valor.
Hace poco Google presento un chip cuantico https://www.bbc.com/mundo/articles/c5y4vy866eeo
ResponderBorrarEvidentemente falta mucho... pero cada dia menos
Detesto el bicho de identificacion , creo que es reciproco :-)
BorrarAnónimo, tal vez no se encuentre la forma con la "computación cuática", los algoritmos hash tienen un problema llamado "colisiones" que generan un mismo digest para dos entradas distintas, tal vez por ahí un buen matemático podría atacar. Yo no se bien pero creo que por eso no se quedaron tranquilos con al SHA-1
BorrarWilson ¿te refieres al nuevo carnet de identidad? Yo estoy esperando que aparezca para cambiar el mío, creo que podría ayudar mucho con la firma electrónica, que hoy es un negociado de los notarios
No me referia a el identificador de tu blog, que me anonimiza cuando ando poco atento.
Borrar¡Que raro es eso! Yo tengo desactivada la moderación y el captcha no debería dar problemas. Tal vez estás usando dos cuentas de Google en simultáneo, revisa tu Gmail (si tienes) para chequear en que cuenta estás logueandote, debería ser la misma que te reconoce Blogger
Borrarayer estuve en un recinto de salud deportiva, una niña bien linda, pero gordita así como mia sanz, pero blanquita, ojos claros y casi perfecta salvo por los kilos de más, le intentaba coquetear a un profesional de la salud, ella también trabaja ahí, pero varias gradas más abajo en el escalafón, me dice a mi: "3 meses coqueteando y este bruto na que me da bola", le expliqué que la cosa está difícil para los hombres por las posibles denuncias, que se dio cuenta el primer día y que probablemente saltaría encima si no hubiese tanta ley absurda, dijo que no había pensado en eso, le dije que se olvidara y que buscara por fuera, ahí me ofrecí yo a hacer compañía mientras encuentra al apropiado, veremos cómo se dan las cosas, la suerte está echada
ResponderBorrarEsas son las consecuencias de la Ley Emilia y todas esas estupideces. Yo que tu le pediría que te mande un mail con una carta de consentimiento dirmada con MD-5, eso después no podría desconocerlo, "Juan Segura vivió muchoc años"
BorrarAlgo así como
"Mediante el presente mail, autorizo al señor xxxx para que me haga el delicioso con todas sus variantes conocidas y de común aceptación entre las xx y las xx horas en el motel El Eden",
Con eso ya no podría echarse para atrás ni denunciarte después.
Así quedaría
BorrarMediante el presente mail, autorizo al señor xxxx para que me haga el delicioso con todas sus variantes conocidas y de común aceptación entre las xx y las xx horas en el motel El Eden
0f55d988ca1d19189589fb8035e332a5
Claro que cuando le ponga los datos reales le debe calcular un nuevo MD-5