¿Cómo funciona la blockchain?
¿Cómo funciona la blockchain?
InicioArtículos
¿Cómo funciona la blockchain?

¿Cómo funciona la blockchain?

Intermedio
Publicación: Dec 9, 2018Actualización: Jun 29, 2022
5m

¿Qué es una blockchain?

En pocas palabras, una blockchain es un listado de registros de datos que funciona como ledger digital descentralizado. Los datos se organizan en bloques ordenados cronológicamente y protegidos por criptografía
El modelo más antiguo de una blockchain fue creado a principios de la década de 1990, cuando el científico informático Stuart Haber y el físico W. Scott Stornetta emplearon técnicas criptográficas en una cadena de bloques como una manera de proteger documentos digitales frente a la manipulación de datos. 
Sin duda el trabajo de Haber y Stornetta fue una inspiración para el de muchos otros científicos informáticos y entusiastas de la criptografía, lo que finalmente dio lugar a la creación de Bitcoin como primer sistema de dinero efectivo digital descentralizado (o en pocas palabras, la primera criptomoneda).

Si bien la tecnología blockchain es más antigua que las criptomonedas, no fue sino hasta después de la creación de Bitcoin en 2008 que empezó a reconocerse su potencial. Desde entonces, el interés por la tecnología blockchain ha crecido gradualmente, y las criptomonedas ahora son reconocidas a mayor escala.

La tecnología blockchain se utiliza mayoritariamente para el registro de transacciones de criptomonedas, pero es apta para muchos otros tipos de datos digitales y puede aplicarse a una amplia gama de casos de uso. La red blockchain más antigua, segura y grande es la de Bitcoin, que fue diseñada siguiendo una equilibrada y cuidadosa combinación de criptografía y teoría de juegos.


¿Cómo funciona una blockchain?

En el contexto de las criptomonedas, una blockchain está formada por una cadena estable de bloques, cada uno de los cuales almacena una lista de transacciones previamente confirmadas.  Dado que la red blockchain se mantiene por una infinidad de ordenadores distribuidos por todo el mundo, funciona como una base de datos descentralizada (o ledger). Esto significa que cada participante (nodo) mantiene una copia de los datos de la blockchain, y los nodos se comunican entre sí para garantizar que todos están en sintonía (o en el mismo bloque).
Por lo tanto, las transacciones de blockchain se producen dentro de una red global peer-to-peer, y esto es lo que convierte a Bitcoin en una moneda digital descentralizada, sin fronteras y resistente a la censura. Además, la mayoría de los sistemas blockchain son considerados trustless porque no requieren ningún tipo de confianza en terceros. Ninguna autoridad única controla Bitcoin.
Un componente central de casi todas las blockchains es el proceso de minería, que depende de algoritmos de hashing. Bitcoin utiliza el algoritmo SHA-256 (Algoritmo de Hash Seguro de 256 bits). Toma una entrada de cualquier longitud y genera una salida que siempre tendrá la misma longitud. La salida producida se denomina "hash" y, en este caso, siempre está compuesta por 64 caracteres (256 bits).

La misma entrada siempre dará como resultado la misma salida, sin importar la cantidad de veces que el proceso se repita. Pero si un pequeño cambio se aplica a la entrada, la salida cambiará por completo. Por lo tanto, las funciones hash son determinísticas y, en el mundo de las criptomonedas, la mayoría de ellas son diseñadas como funciones hash unidireccionales.

Que una función sea unidireccional significa que es prácticamente imposible calcular cuál fue la entrada a partir de la salida. Podrías tratar de adivinar cuál fue la entrada, pero la probabilidad de acertar correctamente es extremadamente baja. Esta es una de las razones por las que, en el caso de Bitcoin, la blockchain es segura.

Ahora que sabemos qué hace el algoritmo, veamos cómo funciona una blockchain con un simple ejemplo de una transacción.

Imagina que tenemos a Alicia y a Julio, y ambos tienen su balance en Bitcoin. Digamos que Alicia le debe a Julio 2 Bitcoin.

Para a enviarle a Julio esos 2 Bitcoin, Alicia transmite un mensaje a todos los mineros de la red con la transacción que desea realizar.
En la transacción, Alicia le da a los mineros la dirección de Julio y la cantidad de Bitcoin que quiere enviar, junto con una firma digital y su clave pública. La firma está compuesta por la clave privada de Alicia, y los mineros pueden validar que Alicia, en efecto, es la propietaria de esas monedas.

En cuanto los mineros están seguros de que la transacción es válida, pueden colocarla en un bloque junto con muchas otras transacciones y tratar de minar el bloque. Esto se lleva a cabo haciendo pasar el bloque por el algoritmo SHA-256. La salida debe contener en su inicio cierta cantidad de ceros (0) para poder ser considerada válida. La cantidad de ceros necesarios depende de la denominada "dificultad", la cual cambia en función de la cantidad de potencia informática que hay en la red.

Para producir un hash de salida con la cantidad de ceros al inicio deseada, los mineros agregan lo que se denomina un "nonce" en el bloque, antes de pasarlo por el algoritmo. Dado que un pequeño cambio en la entrada modifica completamente la salida, los mineros prueban nonces aleatorios hasta que encuentran un hash de salida válido.

Una vez se ha minado el nuevo bloque, el minero lo transmite a todos los otros mineros. A continuación, revisan el bloque para asegurarse de que sea válido y así poder agregarlo a su copia de la blockchain, y la transacción se completa. Pero en el nuevo bloque, los mineros también deben incluir el hash de salida del bloque previo para que todos los bloques estén enlazados; de ahí el nombre de blockchain, en español, "cadena de bloques". Esta es una parte importante debido a la forma en que funciona la confianza en el sistema.

Cada minero tiene su propia copia de la blockchain en su computadora, y todo el mundo confía en la blockchain que ha acumulado más potencia informática, es decir, la blockchain más larga. Si un minero modifica una transacción en un bloque previo, el hash de salida de dicho bloque cambiará, lo que provocará que todos los hashes posteriores también cambien como resultado de la vinculación de todos los bloques mediante hashes. El minero tendría que rehacer todo el trabajo para lograr que todo el mundo aceptara su blockchain como la correcta. Por lo tanto, si un minero quisiera hacer trampa, necesitaría más del 50% de la potencia informática de la red, lo que es muy poco probable. Los ataques de red de este tipo se denominan ataques del 51%.
El modelo que hace trabajar a las computadoras para que produzcan bloques se llama Proof-of-Work (PoW), aunque hay otros modelos como Proof-of-Stake (PoS) que no requieren tanta potencia informática ni tanta electricidad, a la vez que permiten escalar a un mayor número de usuarios.