Claves para entender qué es blockchain y cómo funciona

La tecnología Blockchain fue desarrollada en los años noventa que agrupa información codificada en bloques.

Blockchains Web

Seguro que el término blockchain o cadena de bloques no es nuevo para ti. Incluso sabrás que guarda una estrecha relación con el mundo de las criptomonedas como el Bitcoin o los tan populares NFTs, pero hoy te explicaremos cómo funciona y cómo es que está cambiando el mundo en el que vivimos. 

¿Qué es blockchain?

Se trata de una tecnología desarrollada a principios de los noventa, pensada para la digitalización de documentos y su protección contra la corrupción en los datos contenidos en los mismos. Aunque no fue hasta el 2008 cuando se usó como base para desarrollar Bitcoin, la primera y más famosa criptomoneda.  

¿Sabías que…?

La criptomoneda Bitcoin fue concebida por el mítico Satoshi Nakamoto, de quién hasta hoy desconocemos su verdadera identidad (o identidades). 

¿Dónde existe la tecnología blockchain?

Primero que todo, debemos hacer una distinción entre un sistema centralizado y uno descentralizado.

Cuando pensamos en nuestro dinero en el banco, tenemos la certeza de que está protegido y que podemos disponer de él en el momento que lo necesitemos, pues confiamos en la seguridad que nos brinda nuestra institución bancaria. Este esquema se denomina centralizado, ya que la información es almacenada en servidores privados de cada empresa. Por ejemplo, como sucede con Facebook, Twitter, o incluso un sistema de banca nacional. 

Si eres un cibernauta de la vieja escuela, recordarás con cariño al emblemático programa Ares o, en tiempos más recientes, a Torrent. Y bien, ambos sistemas funcionan mediante conexiones directas entre los usuarios para compartir cualquier tipo de archivos. Estos no se almacenan en un solo servidor central como podría ser en el caso de Youtube o WhatsApp; estos “existen” en cualquier computadora encendida y conectada a la red y están disponibles para cualquier miembro del sistema. 

Los protocolos son llamados peer to peer o P2P por sus siglas, lo que significa que  se aloja en cada nodo y la información es compartida en toda la red de manera rápida, por lo tanto se trata de un sistema descentralizado.

Este punto es bastante importante porque nos asegura en gran medida que el sistema es casi imposible de hackear, como veremos más adelante. 

Pero primero analicemos el contenido de los bloques, cada uno de ellos está conformado por 3 elementos

  • Información
    Cada bloque es responsable de resguardar información, esta puede ser de todo tipo. En el caso de Bitcoin, por ejemplo, utiliza cada bloque para escribir una larga lista de transacciones. Sin embargo, dentro de otras tecnologías como Ethereum, esta información encriptada podría ser una obra de arte, un contrato digital o tu propio
    historial médico. Las posibilidades son infinitas. 
  • Hash
    Un código alfanumérico único que ha sido generado con base en la información contenida, por lo que cualquier intento de modificación, por mínima que sea, en la estructura del bloque, resultará en la generación de un hash totalmente diferente. 
  • Por último, el hash anterior:
    Esta es la razón para concebir el sistema entero como una cadena, pues cada bloque, incluye un registro del hash del bloque anterior, por lo que la posición de cada bloque es única y está relacionada con su predecesor y antecesor. 

cirptomonedas

Una cadena para seguir el rastro

Vamos a imaginar que decides formar una comunidad con tus amigos en la que cada miembro registrará en una libreta todos sus movimientos financieros. Todos.  Tanto el dinero que ingresa como los pagos que realiza, esto con el fin de que cada uno de los integrantes tenga un balance financiero.  Si conocemos el historial completo de todas las transacciones, podríamos conocer el rastro exacto por donde ha circulado el dinero, en qué lo ha gastado cada quién, a qué cuenta fue depositado y, por consiguiente, el balance actual de cada miembro. 

Ahora imaginemos que cada integrante tiene una copia de la libreta y esta se actualiza casi al instante mediante una conexión a internet.  Con esto se logran dos cosas: por un lado, tener un panorama claro de las finanzas de todos los miembros de la comunidad y, por el otro, nos garantiza que sea imposible manipular las finanzas, pues al modificar un bloque cambiaría su hash, lo que resultaría en un nuevo bloque diferente al de la cadena original. Es por ello que la comunidad dará como válida la cadena con más bloques, conservando así los que están sin modificar. 

Lo cierto es que en una comunidad muy grande es probable que sucedan transacciones al mismo tiempo o que la información llegue en distintos momentos. Y este problema se soluciona con una prueba de trabajo

¿Quién empaqueta la información en las cadenas de bloques?

Seguro te estarás preguntando “si la blockchain es descentralizada, ¿quién se encarga de gestionarla?”.

Pues bien, aquí, entran en el juego los “mineros”. Cada minero, recibe una recompensa con cada transacción realizada en todo el sistema, lo que los incentiva a mantener el sistema activo. 

Como todo en la vida, esta tecnología tiene un costo y, en este caso, se trata de potencia computacional. Es decir, la capacidad de procesamiento que ofrece una computadora o un servidor dependiendo de sus componentes.  Actualmente, escribir un bloque no es precisamente barato, ya que es necesario resolver un complejo algoritmo matemático al mismo tiempo que transcribimos el creciente historial de transacciones, haciendo que cada bloque necesite de mayor poder que el anterior. De esta forma el sistema se autorregula y evita el fenómeno de inflación.

cadena de bloques

Proof of Work o prueba de trabajo

Uno de los elementos distintivos del sistema blockchain es la implementación de un protocolo llamado prueba de trabajo, diseñado para hacer lento el proceso de compilación de bloques.  

Sabemos que hoy en día es muy fácil navegar en la red enmascarando nuestra dirección IP. Incluso es posible crear una serie de IPs virtuales para manipular algunos sistemas, como esas molestas cuentas bot en Twitter. 

En el caso de blockchain, esto no es posible, debido a que cada nodo es responsable de cumplir con dicho protocolo que consiste en la compilación y verificación de la información de cada transacción. De esta manera se demuestra que se trata de software real y no simulado, una de las razones por las que es un sistema tan seguro.

¿Es posible hackear una blockchain?

Cómo hemos visto, no es posible modificar un bloque sin romper la cadena, por lo que la cadena válida en la comunidad será siempre la que contenga mayor número de bloques verificados. 

No es posible modificar un bloque sin romper la cadena.

Esto significa que, si alguien intenta modificar uno de los bloques, tendrá la necesidad de modificar todos los siguientes, escribiendo cada hash y realizando sus respectivas proof of work.  Por lo que resultaría sumamente complicado contar con la misma capacidad computacional que el resto de la comunidad y sería imposible alcanzar a la cadena original, convirtiendo así a cada miembro de la comunidad en guardián de la cadena.

Ataque del 51%

Este ataque sería el único con la capacidad de instaurar una cadena alterada superando el filtro de la comunidad y consiste en lo siguiente.

Supongamos que un proyecto cripto tiene mil usuarios en su red, cada uno de ellos aportando el total de su capacidad computacional. Un ataque del 51% deberá superar el poder de la red en más del doble, por lo que será necesario contar con la capacidad computacional de más de mil usuarios y llevar la red a más de dos mil y de esta forma modificar la cadena completa. 

Con esto podemos inferir que en proyectos pequeños será más fácil realizar un hackeo a diferencia de tecnologías que cuentan con el respaldo de millones de usuarios como Bitcoin o Ethereum. Por lo que en todos los casos entra en juego el balance entre el trabajo requerido para hackear y el beneficio derivado del hackeo. 

Aunque siempre es posible proteger tus activos utilizando una cold wallet y aquí te mostramos cómo.