Introducción a Blockchain, Criptografía Asimétrica y Mecanismos de Consenso

Introducción

En lo que nos metemos en el mundo de descentralización, podemos sentirnos perdidos o perdidas debido a la cantidad de nuevos—no necesariamente difíciles—conceptos. Podemos encontrarnos saturados, mezclando términos, teniendo complicaciones para explicar conceptos o ideas con claridad, o incluso sentir que todo lo que estamos aprendiendo es muy abstracto. Pero una cosa es cierta, toda aquella persona que hoy vemos como referente pasó por esto mismo, y pudieron superarlo—nosotros no vamos a ser la excepción.

En este artículo, voy a explicar qué es una blockchain, cómo funciona, y algunos temas interesantes como la Criptografía Asimétrica y los Mecanismos de Consenso.

¿Qué es una Blockchain?

Una blockchain es una base de datos descentralizada y distribuida que contiene transacciones registradas de forma segura y transparente en múltiples nodos. Se actualiza y se comparte entre muchas computadoras que forman parte de una misma red, lo que hace que sea casi imposible alterar la información existente. Se la llama “blockchain” porque cada “bloque” representa un nuevo conjunto de transacciones que se une al anterior, formando así una cadena creciente de bloques.

Las blockchains tienen características que las hacen únicas:

  • Descentralización: En lugar de depender de un intermediario, como lo es un banco tradicional, ninguna entidad única controla la red. Esto permite hacer transacciones entre pares (peer-to-peer) que son verificadas por múltiples participantes (nodos), los cuales realizan los mismos cálculos y luego comparan sus resultados para alcanzar un consenso. Esto nos da mayor autonomía, sin horarios bancarios, sin feriados, y sin necesidad de confiar en los bancos ni depender de ellos para mover nuestro dinero.

  • Inmutabilidad: Una vez que la información ha sido registrada en la blockchain, no puede ser alterada ni eliminada: es permanente, lo que asegura la integridad de los datos. Nadie puede manipular la blockchain, ni siquiera quien la creó. Esto se debe a que cada bloque está enlazado al anterior mediante funciones hash criptográficas, y modificar uno rompería toda la cadena, a menos que la mayoría de la red esté de acuerdo con ese cambio. Esto aporta mayor resistencia al fraude y a la manipulación no autorizada.

  • Transparencia: Los participantes pueden ver todo lo que ocurre en la blockchain, ya que las transacciones son públicamente visibles. Esta característica genera confianza y nos permite minimizar la dependencia de sistemas basados en la confianza.

  • Seguridad: Las transacciones están aseguradas mediante técnicas criptográficas, que previenen el fraude y la modificación no autorizada. Esto se refuerza gracias a los miles de nodos que almacenan la misma información, lo que hace que sea casi imposible alterarla sin controlar la mayoría de ellos.

¿Como funcionan las Blockchains?

Para asegurarse de que la información se registre de forma segura, verificada y compartida a través de una red distribuida, las blockchains funcionan combinando varios componentes y procesos clave. Las unidades fundamentales de este sistema son—literalmente—bloques.

Bloques

Un bloque es un conjunto de datos y transacciones enviados a la red. Una vez que se inicia una transacción, esta se transmite a todos los participantes (nodos) que forman parte de la red. Cada uno de estos nodos verifica la transacción de forma independiente para asegurarse de que sea válida, y luego la transacción pasa a formar parte de un bloque, junto con muchas otras transacciones.

Además de la información de las transacciones, un bloque también incluye: una marca de tiempo que indica cuándo fue creado, un identificador único (llamado hash) y el hash del bloque anterior en la cadena.

El hash de cada bloque se genera en función de los datos que contiene, lo que significa que dicho hash cambiará si se modifica cualquier parte del contenido del bloque. El hash del bloque anterior también se incluye en cada nuevo bloque, lo que crea un vínculo criptográfico entre todos los bloques—formando así una cadena segura y resistente a manipulaciones. Si alguien intentara alterar un bloque anterior, rompería toda la cadena.

Transacciones

Cada acción en una blockchain se registra como una transacción. Una vez iniciada, un nodo se encarga de procesarla, y una vez verificada, la transacción se agrupa junto con muchas otras dentro de un bloque.

Todas las transacciones se hashean juntas y se registran dentro del bloque al mismo tiempo. Incluso si hay docenas, cientos o miles de ellas, se mantiene un historial consistente y confiable. Esto es posible porque cada bloque hace referencia al anterior (su “bloque padre”), y ese vínculo evita el fraude: cualquier intento de alterar un bloque anterior invalidaría los siguientes, y sería detectado de inmediato por el resto de la red.

Hashing Criptográfico y Seguridad Digital

Las blockchains dependen del hashing criptográfico para garantizar la integridad y seguridad de los datos. Una función hash convierte cualquier dato en una cadena de caracteres de longitud fija (un hash). Incluso un cambio mínimo en los datos originales genera un hash completamente distinto, lo que hace muy fácil detectar manipulaciones, por más pequeñas que sean.

Este proceso hace que la blockchain sea segura, porque nadie puede descifrar la información que contiene.

Además del hash, las blockchains usan firmas digitales para verificar la autenticidad de las transacciones, lo que previene fraudes y falsificaciones. Al realizar una transacción, nuestra wallet la firma con nuestra clave privada —un código secreto que solo nosotros conocemos—. Esto genera una firma única que cualquiera puede verificar usando nuestra clave pública, demostrando que la transacción vino de nosotros y que no fue modificada.

Este sistema se llama criptografía de clave pública, y así funciona:

  1. Nuestra clave pública se genera matemáticamente a partir de nuestra clave privada, usando un método llamado multiplicación de curva elíptica —un proceso “prácticamente irreversible”, lo que significa que es casi imposible obtener la clave privada a partir de la pública o de la dirección.

  2. Nuestra dirección de blockchain (por ejemplo, en MetaMask) se genera a partir de esta clave pública.

  3. Nuestra clave privada es la que nos da control sobre nuestros activos: ya sea para acceder a nuestros fondos, autorizar transacciones o incluso retirarlos de la cuenta. Por eso nunca debemos compartir nuestra clave privada.

Nodos

Un nodo es cualquier computadora que participa en una red blockchain. Los nodos almacenan, verifican y comparten datos entre sí, haciendo posible la descentralización. En este proceso, una transacción se envía a la red para que múltiples nodos la verifiquen y aseguren que es válida. Solo cuando se alcanza consenso, se añade a la cadena.

Miles o incluso millones de nodos protegen la blockchain, lo que hace que nuestros datos estén seguros incluso si algunos se desconectan—una gran diferencia frente a los bancos tradicionales.

Existen distintos tipos de nodos:

  • Nodos Completos (Full Nodes): Mantienen una copia actualizada de los últimos 128 bloques. Verifican cada transacción y bloque.

  • Nodos Archivo (Archive Nodes): Almacenan el historial completo de la blockchain, desde el bloque génesis (el primero de todos). Suelen ser usados por desarrolladores, exploradores y herramientas como MetaMask.

  • Nodos Livianos (Light Nodes): Guardan solo una pequeña parte de los datos y se usan principalmente en apps móviles o dispositivos con pocos recursos.

Mecanismos de Consenso

Como las redes blockchain son descentralizadas—es decir, no hay una autoridad central que decida qué transacciones son válidas—es necesario que todos los participantes puedan ponerse de acuerdo sobre qué es lo verdadero. Para eso existen los mecanismos de consenso.

Estos mecanismos son conjuntos de reglas y procesos que permiten que todos los nodos se pongan de acuerdo sobre el estado actual de la blockchain.

Gracias a ellos, cada nuevo bloque añadido contiene solo transacciones válidas y aceptadas por todos, lo que previene el fraude, el doble gasto y versiones conflictivas de la cadena.

Algunos mecanismos de consenso son:

  • Proof of Work (PoW): Usado por Bitcoin. Los mineros compiten por resolver acertijos matemáticos complejos para validar transacciones. El primero en resolverlo agrega el siguiente bloque y recibe una recompensa. Este proceso requiere mucha energía y poder de cómputo, pero es altamente seguro.

  • Proof of Stake (PoS): Usado por Ethereum. En lugar de minar, los validadores son elegidos para añadir bloques según la cantidad de criptomonedas que tengan y “bloqueen” (stake). Consume mucha menos energía que PoW y se considera más amigable con el medioambiente.

Existen modelos más avanzados o alternativos de consenso, como el Delegated Proof of Stake (DPoS), Proof of Authority (PoA) y Byzantine Fault Tolerance (BFT), pero no los veremos en esta introducción.

Conclusión

Aprender sobre blockchain solo requiere curiosidad y un poco de paciencia. Ahora que entendemos cómo funcionan los bloques, las transacciones, la criptografía y el consenso, ya dimos un paso enorme.

Todavía queda muchísimo por explorar, pero con suerte este es un punto de partida sólido para seguir aprendiendo con más confianza.

0
Subscribe to my newsletter

Read articles from Huilén Canullán directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Huilén Canullán
Huilén Canullán

Front-End Dev @ noyasoftware | Builder-to-be @ dev3pack