Con el auge de las criptomonedas, especialmente Bitcoin y Ethereum, ha florecido una tecnología de la que no se para de hablar: blockchain. Cada vez más empresas están estudiando las posibles aplicaciones del blockchain. Sin ir más lejos, a mediados de este mes hemos visto como Microsoft ha implementado esta tecnología en su aplicación de autentificación de identidad, algo que no ha dejado indiferente a nadie.

Pues bien, el blockchain (o cadena de bloques en español) se basa en un concepto básico: “si todos tenemos la misma información es que esa información es verdad”. En consecuencia, lo que busca es la descentralización de la información. Esto quiere decir que la información, a diferencia de ahora, no se encuentra únicamente en un servidor, se encuentra en muchos servidores y cada uno contiene la información completa.

Pongamos un ejemplo

José y Pepe firman un contrato de compraventa y, para que quede constancia de lo que han firmado, llaman a María para que haga de testigo y lo guarde. Este sería un modelo de información centralizada: un único servidor (María) posee toda la información (el contrato).

El problema de que la información se encuentre en un único servidor es que, si el que posee la información decide falsearla, es muy difícil detectarlo. Por ejemplo: Un día, Pepe decide incumplir el contrato y José acude a María para demostrar que lo está incumpliendo. Sin embargo, María, que era amiga de Pepe, cambió el contrato para que José no pudiera reclamarle nada a Pepe.

Sin embargo, descentralizando esta información, es decir, en vez de darle el contrato a María hacemos copias y las repartimos entre todos los amigos de ambos, es prácticamente imposible que Pepe pueda falsear el contrato. Como hemos dicho, “si todos tenemos la misma información es que esa información es verdad” y en blockchain se considera que “todos” es la mayoría. Por lo tanto, Pepe tendría que poner de acuerdo al 51% de las personas que tienen una copia del contrato para que lo falseen, tarea muchísimo más difícil.

Una vez sabemos el concepto base del blockchain, todavía nos queda por saber el por qué del nombre. Este proceso que hemos descrito anteriormente con un contrato entre José y Pepe se puede dar con muchas mas personas, por lo que se van creando muchos contratos. Para organizar todo esto, se van creando paquetes o “bloques” de contratos. Estos bloques tienen un límite de almacenamiento de contratos, por lo que cuando se completa uno se crea otro bloque y se empieza a llenar.

A su vez, según se van llenando y creando nuevos bloques, estos se van uniendo formando una cadena. La peculiaridad de esta cadena es que cada bloque únicamente encaja con el bloque anterior y con el siguiente, por lo que no se puede reemplazar ese bloque por otro cualquiera.

Imaginemos piezas de Lego y cada pieza es un contrato, de tal forma que cuando juntamos muchas piezas de lego formamos un bloque.

Pongamos que 10 piezas de lego forman un bloque. Cuando juntemos 10 piezas de Lego se termina el primer bloque (bloque 1) y el sistema crea una pieza de Lego adicional, diferente del resto, que llamaremos “pieza llave”. Esta pieza llave tiene como función servir de conexión para el siguiente bloque. Por lo tanto, cuando comencemos a juntar nuevas piezas de lego para formar el bloque 2, necesitaremos poder conectar ambos bloques, por lo que el sistema crea una pieza inicial, que llamaremos “pieza cerradura”.

Como hemos dicho, cada bloque es irremplazable por otro bloque, lo que se traduce en que cada pieza llave y cada pieza cerradura son únicas. Por lo que únicamente con una pieza llave podremos conectar con una pieza cerradura.

Ya sabemos cómo se crea la cadena de bloques y volvemos al concepto de descentralización de la información. Según se van creando y llenando los bloques, se hacen copias de los mismos y se transfieren estas copias a todos los usuarios, para que así tengan todos la misma información.

Esperamos que esta explicación os haya dejado el concepto de blockchain un poco más claro. Si tenéis alguna duda no dudéis en preguntar en los comentarios. Por supuesto, estáis invitados a compartir este post en vuestras redes sociales y con algún amigo que veáis perdido en esto del blockchain.

Links: https://es.cointelegraph.com/news/microsoft-to-implement-blockchain-based-id-system