Gamificación para aprender a calcular un simple hash usando un papel y un lapicero.

Stamping.io
Nov 5 · 3 min read

AVISO LEGAL
Extraído con autorización del libro: “Blockchain el algoritmo de la confianza” escrito por los fundadores Stamping.io.
Con derecho a ser reproducido mencionando a los creadores.

Objetivo de esta dinámica

A veces, enseñar la funcionalidad y cálculo de los resúmen criptográficos conocidos como “hash”, no es fácil de lograr. La mayoría ver a los “hash” como una función que vota un resultado sin entender las diferentes operaciones matemáticas que se esconden detrás de esa función.

Este juego puede ser usado para explicar su funcionalidad y la forma como se calcula, demostrando que el resultado es irreversible y que además ayuda a que se entienda las colisiones.

Empecemos por realizar un hash sencillo de calcular, que ha sido inventado por los creados del libro “La Blockchain, el algoritmo de la confianza”, al que le llamaremos HASH-ASCII.

Empecemos haciendo el cálculo del hash de la palabra “ATACAR”, los pasos a seguir son los siguiente:

Paso 1: Calcular la suma de valores ASCII

Antes de iniciar el cálculo se debe contar con la tabla de códigos ASCII de Letras y Números. Para este ejemplo no vamos a diferenciar entre mayúsculas ni minúsculas. Calculemos el código ASCII de cada letra y suma el resultado, tal como se muestra en la siguiente imagen:

Paso 2: Calcular el Hash

El resultado le dará un número de varios dígitos, los cuales se deben buscar en la tabla ASCII de números y colocar su valor ASCII de cada número, por ejemplo, si el mensaje fuera “Atacar”, el resultado de la suma de los códigos ASCII sería 428, se buscaría el código ASCII de cada dígito y se suman, de la siguiente forma:

En este caso ya tenemos el código HASH-ASCII de la palabra Atacar = 158.

Pero si se calcular el hash de atacar, racata, aatcar, o cualquier palabra formada por la combinación de las letras de la palabra: a-t-a-c-a-r verá que le dá el mismo resultado, a esto se le conoce como colisión, es decir, palabras distintas dan el mismo resultado. Sin embargo, este algoritmo de hash puede ser mejorado usando algunas técnicas como por ejemplo: Haciendo este cálculo que el cálculo esté relacionado con la posición de la letra dentro de la palabra.

Conclusión

Los algoritmos de hashsing realmente son mucho más complejo que este ejemplo, lo que se trata de demostrar es que toma un tiempo calcularlo para realizar operaciones matemáticas, por lo general los hash más usados en criptografía son funciones que realizan varias interacciones que hacen matemáticamente imposible que se pueda reconocer un contenido que genera un determinado resultado, sin recurrir a la prueba y error o fuerza bruta.

Si deseas enseñar cómo funciona la blockchain usando papel y lápiz puedes ingresar a este enlace.

Espero que este post te haya ayudado a entender cómo calcular un hash-ascii, próximamente estaremos publicando una dinámica para aprender el problema de los generales bizantinos. Síguenos en nuestras redes sociales para estar atento cuando se publique.

Si deseas recibir un taller de este curso completo y el material formal de Stamping.io, puedes contactarnos a jose.zarate@stamping.io whatsapp: +51995718026 o ingresar a www.stamping.io

Stamping.io

Written by

Stamping.io es una red de nodos Blockchain que permiten estampar evidencias digitales para demostrar su existencia en un momento del tiempo.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade