Home Blockchain Blockchain desde cero

Blockchain desde cero

0
Blockchain desde cero

¡Bienvenid@ seas a esta primera entrada del Blockchain Blog de TEEB Health! Aquí hablaremos de distintos temas inherentes a la tecnología, ya sean conceptuales o prácticos; buscamos aportar nuestro granito de arena en la adopción y entendimiento de la tecnología. En esta ocasión, hablaremos propiamente de lo que es una blockchain, de los elementos que la conforman y cómo interactúan entre sí.

La concepción de lo que es una blockchain comienza en el 2009 cuando se publica el famoso whitepaper (documento que explica el funcionamiento de un proyecto) bajo el seudónimo de “Satoshi Nakamoto”, del cual se desconoce la verdadera identidad de esa persona o personas hasta hoy en día. Este paper describe un sistema de pago electrónico descentralizado entre pares lo que dio pie a la primera criptomoneda: el Bitcoin.

El Bitcoin sentó las bases del Blockchain definiendo el uso de los cuatro pilares fundamentales que lo conforman: 

  1. Criptografía asimétrica
  2. Libro contable
  3. Red descentralizada
  4. Protocolo de consenso. 

Si bien estas tecnologías ya eran implementadas independientemente en otros proyectos, no existía uno que las empleara simultáneamente y propusiera lo que Nakamoto entregaba al mundo: la bendita blockchain.

 

 

Criptografía asimétrica:

La criptografía asimétrica es utilizada para la creación de cuentas dentro del proyecto. Cada cuenta se rige por un par de llaves criptográficas, una es pública, todo mundo puede verla y conocerla, y la otra privada; ésta rige el control de nuestra cuenta y las interacciones con los demás participantes de la red. 

A manera de ejemplo, podemos decir que la llave pública es como una dirección de correo electrónico gracias a la cual podemos recibir mensajes de otros usuarios y que, con nuestra contraseña, es decir nuestra llave privada, podemos acceder a nuestra bandeja de entrada y disponer de nuestros mensajes y enviar algunos nuevos.

En la blockchain, nuestra llave pública es la dirección en la cual recibimos el valor (bitcoin, ether, litecoin, etc.), y sólo con nuestra llave privada podemos acceder a esos recursos, administrar nuestro balance y crear transacciones dentro de la red.

 

Libro contable: 

El libro contable, como su nombre lo indica, es donde se registran todas las transacciones del proyecto a lo largo de la historia: de quién sale la concesión (dirección pública emisora), para quién es (dirección pública receptora) y cuánto es su valor (bitcoin, ethereum, etc.).

Imaginemos que tenemos una hoja en blanco con cierta capacidad de registros llamada, de ahora en adelante, “bloque”. En un lapso de tiempo determinado, se llena este bloque con el total de transacciones emitidas en dicho lapso, se pasa a través de un algoritmo digestor y determinista (SHA-256 caso bitcoin, SHA-3 caso ethereum), que da como resultado un número finito de caracteres a lo cuál le llamamos “hash”. Cabe mencionar que por “algoritmo digestor y determinista” nos referimos a un algoritmo computacional compresor, el cual no importa el tamaño de la entrada, siempre se dará como resultado un número finito de caracteres y determinista porque cada vez que se use con las mismas entradas deberá producir invariablemente la misma salda.

El hash obtenido por la compresión del bloque, es añadido como cabecera al siguiente bloque en blanco. A partir de ahí se repite el mismo proceso de registro de las nuevas transacciones hasta llenarse de nuevo ese bloque, momento en el que se pasará de nuevo por el algoritmo digestor y se entregará un nuevo hash que encabece el siguiente bloque en blanco y así sucesivamente. Dado que todos los bloques están referenciados uno con otro formando una especie de cadena es que surge el nombre de “cadena de bloques”, “blockchain” en inglés.

Si alguien quisiera hacer una modificación dentro de un bloque, por ejemplo, para manipular los balances a conveniencia propia y así enriquecerse, con tan sólo cambiar una letra, el hash de ese bloque cambiaría y, con ello, el bloque siguiente y el siguiente y así sucesivamente. Con ayuda de las siguientes tecnologías (los otros dos pilares del Blockchain) es fácil identificar en dónde se corrompió la cadena de bloques y quién actuó de mala fe para ser señalado y eliminado de la participación en la red.

Como nota, el primer bloque denominado “bloque génesis” tiene, como referencia en la cabecera de hash, al número 0. El bloque génesis es el estado inicial de la blockchain, el punto donde todas las transacciones comienzan.

 

Red descentralizada:

La red descentralizada es una tecnología muy popular y la cual es utilizada en un sinfín de proyectos. En el caso de la blockchain, una red descentralizada es una red de nodos interconectados en la cuál todos los nodos son iguales, nadie es mayor en rango que nadie. Además, cada nodo cuenta con un respaldo completo del libro contable, es decir, de toda la historia de transacciones de la cadena de bloques.

La red se compone de una serie de nodos. Cada nodo es un participante, el cuál está dispuesto a interactuar y/o darle soporte a la red. Mientras más nodos existan, hay una menor posibilidad de que una cadena de bloques pueda ser “apagada”.

 

Protocolo de consenso:

Por último, pero no menos importante, tenemos al protocolo de consenso. Esto es lo que algunos puristas de la tecnología consideran es lo más valioso de la blockchain, la cereza del pastel, dado que es la tecnología encargada de implementar acuerdos entre todos sus participantes (nodos), que dan soporte a la red.

Como el proyecto es descentralizado, no hay un ente “central” o propietario principal que pague por que la cadena de bloques esté en línea. A los nodos, quienes escriben y hashean los bloques,  se les paga con una recompensa en criptomoneda.

Para seleccionar qué nodo es quien tiene derecho a escribir un bloque, la red utiliza un protocolo de consenso llamado Proof Of Work (prueba de trabajo en español) cuya premisa es: “demuéstrame que trabajaste para poder darte tu recompensa”. La demostración de trabajo de los nodos con la red, se evidencia con la resolución de un problema criptográfico. El problema a resolver es encontrar un número, que de ahora en adelante denominaremos nonce, que al ser agregado a la cabecera del bloque y ser pasado por la función digestiva, de como resultado un hash con un formato en específico.

El formato del hash a encontrar (variando el nonce) debe cumplir con “N” cantidad de ceros al inicio y el número de ceros está  determinado por la dificultad de la red. Como ejemplo, si la dificultad es muy alta, se decreta que el hash debe tener los primeros 10 caracteres con ceros: 

Ejemplo: 0000000000144c502c7f5cffaafe2cc588d86079f9de88304c26b0cb99ce91c6

Sin embargo, si hay menos participantes, la dificultad baja y el formato define sólo los 4 primeros caracteres sean 0.

Ejemplo: 000087d8ff144c502c7f5cffaafe2cc588d86079f9de88304c26b0cb99ce91c6

La forma de encontrar esos formatos específicos es a través de la fuerza bruta, donde grandes cantidades de procesamiento computacional buscan incrementar el nonce de 0 hasta el infinito hasta encontrar el nonce con el cual el formato especificado se cumple.

Una vez que alguien (un nodo) encuentra el resultado, lo difunde en la red y pasa por un proceso de validación donde los demás participantes (otros nodos) verifican que sea verdad. Una vez terminadas las validaciones necesarias y correctas, el nodo ganador es quien recibe el premio en criptomoneda y es quien tiene la batuta para escribir el siguiente bloque en ella. A este proceso se le conoce comúnmente como “minado”, donde los participantes y quienes buscan la recompensa son los famosos “mineros”.

 

En conclusión, podemos definir a la blockchain como un conjunto de tecnologías que permiten la transferencia de valor de un lugar a otro de manera descentralizada y sin intermediarios a través de un protocolo de consenso.

Estos cuatro pilares son apenas las bases de la nueva revolución tecnológica que está causando el blockchain, por ello, el conjunto de estas cuatro tecnologías se clasifican como Blockchain 1.0 (envío de valor).

En TEEB Health, desarrollamos con tecnología blockchain 2.0 que, si bien tras bambalinas hace uso de estos cuatro pilares, se añade el uso de un quinto componente que nos permite definir acuerdos entre pares sin la necesidad de intermediarios, por ello te invito a que no te pierdas las siguientes entradas del blog donde nos sumergimos en temas más puntuales del Blockchain y sus implicaciones en la vida diaria y TEEB Health. Espero que esta entrada te haya sido de utilidad para comprender las bases del Blockchain y haya sido de tu agrado. ¡Nos vemos en la próxima!

 

Mauricio Piñon Islas

Sr. Blockchain y Full-Stack Developer

 

#InformaTEEB #TEEB #BlockchainBlog #ConceptosBásicos #Blockchain #CriptografíaAsimétrica #LibroContable #Nodos #Hash #Minado #Criptomoneda

 

LEAVE A REPLY

Please enter your comment!
Please enter your name here