Criptomonedas – Blockchain II (Cadena de bloques)

por | May 27, 2022 | Criptomonedas

En yasonlasocho estamos interesados en difundir toda la información relevante vinculada al desarrollo tecnológico. A través de este Blog, aportamos nuestro granito de arena a la divulgación de todos estos conocimientos. Esperamos que lo disfruteis tanto como nosotors lo hemos hecho creando dicho contenido.

En este artículo vamos a continuar analizando en detalle el funcionamiento de las transacciones en la Blockchain o cadena de bloques.

Recordemos el ejemplo que presentábamos en el artículo anterior: yo deseaba enviar dinero a mi hijo que se encontraba en el extranjero estudiando y analizábamos cómo las entidades bancarias se convertían en los auténticos controladores y validadores de esa transacción.

¿Cómo se desarrollaría la misma acción utilizando criptomonedas y la tecnología Blockchain?

Esa cadena de bloques tiene un requisito importante: debe haber varios usuarios (nodos) que se encarguen de verificar esas transacciones para validarlas y que así el bloque correspondiente a esa transacción se registre en ese gigantesco libro de cuentas.

El proceso es relativamente sencillo, pero implica a más personas. Ahora mi hijo y yo no estamos solos en esta transacción, formaremos parte de un gran grupo de usuarios que se encargan de comprobar que todo el proceso se realiza de manera transparente y sencilla.

Si yo deseo enviar criptomonedas de mi cuenta a la cuenta de mi hijo, primero el sistema blockchain avisa a todo el mundo en la blockchain de la transacción pero ese aviso tiene una peculiaridad: nadie sabe que Yo soy Yo y que Mi Hijo es Mi Hijo. Las identidades están protegidas. Los integrantes del sistema solo saben que desde mi cartera digital (el análogo en el mundo cripto de una cuenta bancaria) se quiere transferir esa cantidad (que sí se conoce) a otra cartera digital, la de mi hijo.

Por lo tanto para iniciar el proceso, yo aviso de mis intenciones de hacer un envío de criptomonedas, pero sin revelar mi identidad: «¡Hola a todos, quiero traspasar criptomonedas desde mi cartera a esta otra cartera, por favor, actualizad vuestros libros de cuentas!». Al enviar ese mensaje, todos los usuarios de esa red primero comprueban que yo, que permanezco en el anonimato, a través de una cartera de origen tengo suficiente dinero para enviárselo a la cartera de destino, la de mi hijo,. Si es así, todos anotan esa transacción, que pasa a completarse y a formar parte del bloque de transacciones. Eso sí: todavía no está registrada esa transacción en esa base de datos Blockchain de forma definitiva.

A medida que pasan los segundos, más y más transacciones van completándose y pasando a ese bloque, que tiene una capacidad limitada que depende de la estructura de la cadena de bloques y del tamaño de cada transacción. Cuando un bloque ya no admite más transacciones, llega un momento importante: el de «validarlo» o «sellarlo», que es lo que los usuarios hacen cuando hacen minería de bitcoin. Este proceso de adición de un bloque nuevo a la cadena, se realiza aproximadamente cada 10 minutos
Y aquí es donde advertimos el papel fundamental que tienen los mineros o los nodos.

Ese minado de bloques consiste en la realización de una serie de complejos cálculos que requieren tiempo y (cada vez más) electricidad, pero cuando el proceso concluye esos bloques quedan registrados de forma permanente en esa cadena de bloques, y no pueden ser modificados sin que se alteren todos los bloques que están enlazados con él, una operación que además necesitaría que la mayoría de los nodos la validasen.

En esa red P2P (peer to peer) los mineros reciben avisos de nuevas transacciones y las reúnen en un nuevo bloque, pero lo hacen además compitiendo con otros mineros, porque el primero que logra crear un bloque válido y lo sella recibe un pago por ese servicio en la criptomoneda que esté minando. Gracias al uso de una cadena de bloques común que se sincroniza entre todos los nodos del sistema se logra la irreversibilidad de las transacciones, lo que permite que nadie «haga trampas» al sistema o haga fraudes para beneficiarse, modificando el libro de cuentas para desviar criptomonedas de un lado a otro sin que otros se enteren.

De hecho añadir nuevos bloques es un proceso cada vez más costoso, lo que hace normalmente que los mineros trabajen agrupados (los famosos «pools» que funcionan de forma similar a una cooperativa) en lugar de trabajar por sí mismos («sólo mining», con unas probabilidades de éxito/recompensa muy bajas). Cuando uno de los mineros resuelve el problema criptográfico que representan los cálculos para «sellar» un bloque, avisa a los demás, que comprueban que efectivamente es así y añaden ese bloque a la cadena de bloques completa que tienen en sus ordenadores.

Ese libro de cuentas no sólo está distribuido y es seguro: los bloques enlazados (de ahí lo de cadena de bloques) cuentan con un puntero hash (codificado) que enlaza al bloque anterior, además de una marca de tiempo y los datos de la transacción, y esa información es pública. ¿Qué significa eso? Que la cadena de bloques, aunque protege la privacidad de sus usuarios, sí que permite controlar la trazabilidad de esas transacciones para garantizar la seguridad.

O lo que es lo mismo: permite saber todo el camino que ha seguido la criptomoneda de la cartera que pertenece a alguien (en este caso a mi, aunque mi identidad no es conocida por el resto de usuarios) antes de llegar a la cartera de otro alguien (de mi hijo, aunque su identidad tampoco sea conocida por el resto de usuarios).

El propio diseño de la cadena de bloques tiene ventajas claras, y por ejemplo confirma que cada unidad de criptomoneda sólo se ha transferido una única vez, lo que evita el tradicional problema con el doble gasto de monedas digitales (aspecto al que nos dedicaremos en otro artículo de esta serie) o con el dinero falso, que reduce la confianza de los usuarios en esa moneda y también en la propia circulación de la misma.