Saltar al contenido

Blockchain Pt.1 : Ah, Que ?

Estuvo de moda hace un tiempo. Y aún lo esta, sólo que no de la misma forma.

La mayoría ha escuchado acerca del tema. Y usualmente tienen una idea vaga de como funciona Bitcoin y las Criptomonedas.

No soy un experto del tema. Pero intentare explicar lo basico de la mejor forma posible. Si terminas confundido o mas perdido, no te preocupes. Ha pasado tiempo desde la ultima vez que enseñe, o que programe algo similar.
Eso si, hay que notar que esto es un trabajo para largo, y me comprometí a hacerlo por que es entretenido examinar todo el concepto. Por ello haré varios post informativos a medida avance con el trabajo. Si quieres preguntar o corregir algo, dejame un comentario.

Blockchain es una base de datos descentralizada, distribuida y (muchas veces) pública que consiste de registros denominados ¨bloques¨. Usando una red de clientes P2P esta base de datos se comparte (en parte o totalidad) entre los clientes quienes también participan en actualizar y auditar los nuevos registros que se agregan a dicha base de datos, ejecutando un trabajo que se conoce como ¨minar¨. Este trabajo te entrega recompensas cuando es completado, lo que ¨descubre¨ un nuevo bloque que se agrega a la base de datos. Esa recompensa son las llamadas criptomonedas, y para almacenarlas se requiere una ¨billetera¨, que es básicamente tu tarjeta de débito en la red de la criptomoneda.

Eso es mas bien una explicación condensada. Si la entendiste, quizás ya sabes algo (o todo) de este tema. Pero para muchos, esto suena como ciencia ficción, por lo que explicare la mayoría de los conceptos que probablemente no recuerdas, o nunca supiste.

Glosario

Red Peer to Peer (P2P)

Recuerdas Napster ? Quizas es muy viejo.
Que tal e-Donkey, Emule, Kazaa, o BitTorrent ? De seguro escuchaste el último.

Usualmente la comunicación en internet se realiza estableciendo una comunicación desde el cliente (tu) a un servidor. Ese servidor ademas comunica con varios otros clientes. Esto tiene varias cosas a favor y en contra, pero lo principal en contra es la centralización, dado que la información ES controlada por ese servidor.
En una red P2P, los clientes no se comunican directamente con un servidor. En vez de ello, se comunica con uno o mas clientes de la red, directa o indirectamente. De esa forma Blockchain logra funcionar de forma descentralizada y distribuida. Cada cliente de la red comparte (en parte o totalidad) la información de la base de datos.

Hash

 «Una secuencia de caracteres obtenida a partir de una función aplicada a información de cualquier tamaño.» – https://es.bitcoinwiki.org/wiki/Hash

Un Hash se utiliza para identificar de forma única la información desde la cual fue generada. Esto significa que cada vez que apliques dicha función, obtendrás el mismo Hash, pero no puedes derivar la información a partir del hash.

Base de datos

«Almacén de datos»

Exactamente lo que parece decir. Es un archivo que almacena diversos tipos de información de acuerdo a una estructura predefinida. Para el caso de Blockchain, es un almacén donde se deja cada bloque enlazado al que lo precede. Puedes imaginarlo como un diario de vida, o un archivo de registro/log.

Bloque

Un bloque es un set de datos que se almacena en la base de datos, que se identifica mediante un hash que se calcula a partir de su contenido. El bloque contiene un listado de transacciones que han ocurridos hasta el momento del descubrimiento del bloque, y ademas contiene una referencia al hash del bloque anterior. De esa forma, desde cada bloque puedes recorrer la base en orden hasta llegar al primer bloque.
Cuando alguien ¨mina¨ un bloque nuevo, se le entrega una recompensa en forma de ¨criptomonedas¨ (coin, o cryptocoin), y esa es una transacción que sera la primera en el siguiente bloque.

Billetera

Asi como recibes criptomonedas, debes almacenarlas en algún lugar. Esto se logra mediante una Billetera, la cual se genera usando funciones criptográficas*.

Cuando transfieres monedas, la transacción se firma digitalmente con tu billetera. Esto permite que cualquier usuario de la red pueda trazar el movimiento de una moneda a través de la red, y comprobar donde se origino y termino dicha moneda. (Al menos para Bitcoin y otros. También existen criptomonedas que utilizan transacciones privadas o anónimas, como Monero/XMR).

La firma digital es una forma única de identificar tu billetera, y no permite que otros hagan uso de ella.

*El funcionamiento de la criptografía sera examinado a futuro

Minar / Mineros

Al ser parte de la red, realizas trabajo. Ese trabajo se conoce como ¨minar¨, y tu como cliente eres conocido como un ¨minero¨.

El trabajo consiste en validar/auditar todas las transacciones que han ocurrido hasta ahora, e intentar resolver problemas que entrega la red. Cuando eres el primero en resolver el problema, ¨descubres¨ un bloque nuevo, y le avisas a otros clientes de ello para que validen si el trabajo es correcto. Cuando suficientes clientes confirman que el trabajo es correcto, se entrega una recompensa en forma de ¨criptomonedas¨.
Esa recompensa genera una transaccion que sera la primera anotada en el siguiente bloque.

Moneda / Criptomoneda

Una moneda es solo informacion asociada a tu billetera, y puedes transferirla a otros generando nuevas transacciones para la base de datos, lo que favorece el descubrimiento de bloques nuevos.

Y, cómo funciona ?

Ahora con imágenes :

  • Imagina Blockchain como un gabinete de documentos. Cada cajón con documentos es un bloque (uno arriba del otro, enlazados), y cada documento contiene información de una transacción.
    Cada vez que se descubre un bloque, se coloca ¨arriba¨ del ultimo enlazado por su ID. Esto asegura que un bloque no se pueda eliminar o cambiar sin destruir toda la secuencia.
    Un bloque puede contener diversas transacciones. En el caso de Bitcoin, un bloque se descubre cada 10 minutos aproximadamente, y puede contener hasta 3.500 transacciones.
    Cuando descubres un bloque, se te entrega una recompensa en forma de ¨criptomonedas¨. En Bitcoin a la fecha (Agosto/2020) cada bloque nuevo entrega 6.25 monedas, recompensa que se reduce a la mitad cada cierto tiempo hasta que se minen todas las monedas (21 millones).

Si logré explicar correctamente estos conceptos, ya deberías tener una idea de como funciona todo en conjunto :

  • Tu y cada otro miembro de la red esta trabajando para encontrar la solución a un problema. Esto usa tiempo de proceso en tu equipo, y al encontrar la solución envías la respuesta como ¨Prueba de trabajo¨ y se te recompensa con criptomonedas luego que otros miembros confirmen la validez de tu trabajo.
  • Esas criptomonedas se transfieren a tu billetera, y esa transacción queda almacenada en un bloque en la base de datos. Así como las transacciones se almacenan, puedes revisar quien descubrió un bloque, recibió recompensa, y seguir cada criptomoneda hasta la billetera donde terminen (dependiendo del Blockchain):
  • Esto proporciona un registro indeleble de todo. No puedes borrar un bloque dado que todos referencian al anterior, y como la información es compartida por todos los usuarios de la red, no puedes tan solo modificar le base de datos. Cada miembro validara esta modificación y al fallar la validación se desestimara el cambio.
  • Esto hace que el descubrimiento de los bloques y las criptomonedas recibidas piezas únicas de información cuya historia se registra desde el nacimiento en una base de datos que se comparte y valida (ojala) por un gran grupo de miembros de la red. El ser tan únicas y mantener la integridad del registro a lo largo del tiempo es lo que les da valor a estas criptomonedas.

Busca por ahí.. El valor de Bitcoin ha explotado desde que fue creado. Como ejemplo, en 2010 un tipo pago 10.000 Bitcoins por 2 pizzas. Viste el valor actual de Bitcoin ? Esas fueron las pizzas mas caras del mundo ! Millones de dólares (precio actual, claro)!

Has visto noticias de gente que ha perdido su billetera (de criptomoneda) y ofrecen recompensas enormes para quien pueda recuperar el acceso ?
Eso un testamento a cuan seguro es el sistema protegiendo acceso a información privada, y como si no eres cuidadoso puedes perderla PARA SIEMPRE.

Continuará ……

Publicado enCodigo

Sé el primero en comentar

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ivn Systems/Software ©2020