HashCash fue una solución desarrollada para combatir el spam produciendo una prueba de trabajo que dejaba contrastar que un determinado e-mail no era correo no deseado.

El nombre de HashCash hace mención a una tecnología de Prueba de Trabajo (PoW) que se empleó para disminuir al mínimo el correo no deseado (spam) y los ataques de denegación de servicio (conocidos como DoS o bien DDoS). Esta tecnología ganó extensa popularidad merced a su implementación en el Bitcoin y otras muchas criptomonedas. Su función en exactamente las mismas, era ser parte del algoritmo de validación de los bloques. Todo ello a través de el proceso de minería de las criptomonedas.

Conoce el origen del termino SPAM

Proviene de la Segunda Guerra Mundial cuando los familiares mandaban a los soldados comida envasada. Entre esta comida se hallaba una lata de carne precocinada muy habitual en USA que se llamaba Spam. En mil novecientos setenta, en un sketch de la serie televisiva Monty Python’s Flying Circus (protagonizada por los humoristas británicos Monty Python) se servían unos platos que contenían spam a unos comensales. Fue bastante popular en la temporada y llegó al campo de la informática. Una vez allá, sirvió para hacer referencia a los correos no deseados mandados de forma indiscriminada.

Desarrollo de HashCash

El desarrollo de HashCash viene de la mano de Adam Back en el año mil novecientos noventa y siete. Back es un reputado especialista en criptografía y pirata informático informático. Él desarrolló el sistema de prueba de trabajo. Esto como una contramedida contra el spam en mails y asimismo en weblogs (el spam son mensajes no deseados). Back inventó este tecnología basándonos en un trabajo llamado; “Valoración a través del procesamiento o bien combate al correo no deseado”. Un documento presentado en mil novecientos noventa y dos por los especialistas en informática Cynthia Dwork y Moni Naor.

El objetivo de HashCash, es requerir un trabajo de computación a fin de que este sea verificado. Una vez verificado dicho trabajo, se le deja al usuario hacer empleo del recurso. El empleo en el correo mail, se fundamenta en agregar un encabezado codificado al correo. Dicha encabezado tiene la información generada por el usuario usando el sistema HashCash. Esto es una suerte de sello que asegura que el correo ha pasado por la prueba de trabajo. Dicho sello, es un identificador que prueba que el expedidor ha usado el procesador a lo largo de una pequeña cantidad de tiempo. Puesto que es la única forma de producir un sello auténtico para cada e mail que se desee mandar.

¿De qué forma marcha HashCash?

Se fundamenta en la idea de que si, un determinado usuario ha utilizado su procesador para producir este sello resulta poco probable que sea un spammer. Los receptores con un costo computacional muy reducido prácticamente intrascendente lo pueden contrastar. De esta manera podemos asegurar de que no se trata de un correo no deseado.

Para descifrar el sello y asegurar que no es correo no deseado se requiere la fuerza salvaje de computación. O bien lo que es exactamente lo mismo, precisamos el procesador a fin de que busque la contestación a través de prueba y fallo. Esencialmente, el procesador va a ir probando combinaciones conforme unos criterios ciertos hasta el momento en que halla la contestación adecuada. Esto probaría que no es spam.

Los spammers fundamentan su modelo de negocio en enviar cientos, miles e inclusive millones de mails de forma veloz. Todo ello con un bajo costo de recursos por mensaje. Por ejemplo; si se solicita un trabajo de cinco segundos ya antes de expedir un e-mail, el costo por mandar miles y miles de correos sería inasumibles por el spammer. Por su lado, el receptor puede contrastar de manera rápida si hay un trabajo de verificación anterior a la recepción del correo. Con esto, puede filtrar y clasificar velozmente los correos legales de los intentos de spam.

Casos de empleo de HashCash

La creación de HashCash dejó plantear un mecanismo para supervisar los ataques de spam en los servicios de correo. Este sería su primordial y mayor empleo en la informática. No obstante, esta herramienta asimismo sentó las bases para otros sistemas, entre aquéllos que podemos destacar:

Protección de conexiones

Uno de los eslabones más enclenques de toda infraestructura en red, es la conexión entre el cliente del servicio y el servidor. Esta puede ser vulnerada de diferentes formas, llevando al cierre de la conexión o bien el hurto de sesión. Los dos casos rechazan el servicio al usuario, mas asimismo presentan otros peligros de seguridad. Para eludir esto, se puede utilizar HashCash.

Esto con el propósito de crear un token de conexión generado por una función de costo de HashCash interactiva. Con esta defensa, las conexiones usuario-servidor se resguardan con un hash asegurando que exactamente las mismas no puedan ser “robadas” o bien “rotas” por actores aviesos.

Sistemas de ficheros informáticos

Otro empleo en informática de HashCash está en la utilización en sistemas de ficheros. Esto por medio de funciones hash para crear una firma única para cada bloque de datos guardados. Merced a esta firma, el sistema es capaz de contrastar la autenticidad de exactamente los mismos. Esto deja crear sistemas de ficheros tolerantes a fallos como la humillación. Entre los sistemas de ficheros capaces de hacer esto están ZFS, btrfs o bien SFS.

¿Cuánto sabes, criptonauta?

¿El desarrollo de HashCash abrío las puertas al desarrollo de los sistemas Proof of Work (PoW)?

HashCash y el Bitcoin

Bitcoin usa la función hashcash como una parte de su núcleo de minería. Todos y cada uno de los mineros de bitcoin, así sea CPU, GPU, FPGA o bien ASIC, están dedicando su esmero a crear comprobantes de trabajo de HashCash. De la misma manera que muchos algoritmos criptográficos, HashCash usa una función hash como bloque de construcción. Es merced a la utilización de HashCash, que la minería Bitcoin es posible. Sin este software, la presente estructura de minería y seguridad de Bitcoin no sería posible.