BTC
ETH
LTC
SOL
BCH
USDC
USDT

Cómo funciona la Blockchain y sus partes

blockchain
SHARE
ÍNDICE

Blockchain es el libro y los bloques son las páginas de ese libro

Para explicarlo de forma sencilla compararemos la blockchain (recomendamos seguir este enlace si aún no tienes claras sus bases) con un libro, y cada uno de sus bloque, con una página.

Cada miembro que participa en la Blockchain necesita tener en su ordenador una copia actualizada de este libro que lleva el registro de todos los acontecimientos -transacciones- dentro de la cadena de bloques.

blockchain-es-como-un-libro

Cada una de esas transacciones añade un bloque nuevo a la Blockchain.

Como en un libro normal y corriente, cada página -bloque- tiene un número de página asociado a ella. De esta forma se sigue un orden cronológico.

Si se diera el caso de que se arrancaran las hojas de un libro, a través del número de página se podría reconstruir en el orden correcto. Además, cada página está basada en la anterior, es decir, el contenido de la página 5 se basa en lo que se venía contando en la página 4, y el contenido de la página 6 se construirá en base al contenido de la página 5.

En el caso de la cadena de bloques, cada bloque también hace referencia al bloque anterior, pero no lo hace a través de simples números sino por una huella dactilar del bloque llamada ‘fingerprint’ o ‘hash’ del bloque.

Esto es posible gracias a un algoritmo matemático que toma los datos del bloque (todos los que veremos más adelante) y los convierte en una salida de longitud fija (el hash).

hash-funcion

Este hash representa la huella dactilar de los datos (el fingerprint), por lo que muchas veces usaremos tanto hash como fingerprint para referirnos a esa huella dactilar.

Esos datos de entrada a los que hacíamos alusión en el párrafo anterior pueden ser cualquier cosa, desde el libro de ‘El Quijote’ entero hasta el simple número ‘1’.

Por ejemplo, si los datos de entrada son la frase “miethereum.com”, el algoritmo matemático lo puede convertir en la salida hash “0x25ds4ds6sd64fd654fd654fdasd64”, que representa la huella dactilar de la frase “miethereum.com”.

Este dato hash es marcado temporalmente para saber la fecha y hora de cuando se procesó ese bloque, así como las transacciones incluidas en el bloque (una venta de 3.2 Bitcoins por ejemplo).

EL BLOQUE Y SUS PARTES

Aparte del número de página, cada hoja del libro (bloque) aporta más información, como por ejemplo un título, un subapartado o un texto.

En la blockchain, a parte de esa huella dactilar (hash) cada bloque también lleva incluida cierta información de relevancia. Nosotros partiremos de un bloque de Etereum para nuestra explicación. No obstante, debemos mencionar que dependiendo de cada plataforma, el bloque lleva una información u otra, aunque en líneas generales hay campos que siempre se repiten.

ejemplo-bloque-blockchain

Echemos un ojo a las imágenes de los portales Etherscan.io y Etherchain.org, las cuales nos muestran al desnudo cómo es un bloque en Ethereum (es el mismo bloque en ambas imágenes: el bloque número 4588225). Después pasaremos a explicar cada parte del bloque.

bloque-en-etherscan

bloque-en-etherchain


Seguiremos el orden de la primera imagen y luego continuaremos con las partes que falten de la segunda imagen:

Height: Número de bloque

Height es una palabra inglesa que significa ‘altura’ y se refiere a la altura a la que la blockchain se encuentra, es decir, al número de bloque.

La blockchain tiene un carácter ascendente, es decir, que cada bloque es un número más que el anterior. Por ejemplo, si un bloque es el número 45, el anterior es el 44 y el siguiente será el 46.

Timestamp: Marca temporal

Como podemos observar, cada bloque está minuciosamente controlado en lo que al carácter temporal se refiere.

Este bloque en concreto se creó el 20 de Noviembre de 2017 a las 11:51 y 49 segundos AM (de la mañana) de la zona horaria +UTC, que significa +0 horas de la Hora Universal Coordinada (UTC, del inglés ‘Universal Time Coordinated’).

Sobran las palabras: precisión al segundo.

Como dato decir que ese horario (+0 UTC) se corresponde con la hora de Greenwich (Londres) y de las Islas Canarias. En España estamos en +1 UTC, una hora más.

Transactions: Transacciones

Son las operaciones realizadas en la cadena de bloques. De forma más concreta, una transacción es un mensaje firmado digitalmente que autoriza alguna acción particular asociada a la blockchain.

En una criptomoneda, el tipo de transacción dominante es enviar o recibir monedas digitales o tokens. En otros sistemas como Ethereum, a parte de poder enviar tokens, también se pueden dar otros tipos de transacción válidos como registrar nombres de dominio, crear ÐApps y cumplir contratos inteligentes.

De hecho, si nos fijamos en la primera imagen, nos da el dato de que se han procesado 128 transacciones y 36 ‘contract internal transactions’, que significa ‘transacciones internas de contratos’ y vienen a ser transacciones que se dan cuando un smart contract se cumple y se ejecuta a sí mismo.

Si observamos la segunda imagen, en la parte inferior pone “Transactions” y algunas de ellas tienen una flecha negra a la izquierda. Esas son las transacciones internas de contratos.

Hash

Como hemos explicado anteriormente, el hash (o algoritmo hash) es un proceso por el cual una pieza de datos (puede ser cualquier cosa; un texto, una imagen, una lista de transacciones…) se procesa en otra pequeña pieza de datos (normalmente 32 bytes) que luce diferente y completamente aleatoria.

Los hashes se utilizan generalmente como una manera de crear un identificador acordado en toda la plataforma para un documento en particular que no puede ser falsificado. Es de vital importancia que computacionalmente sea inviable encontrar dos documentos que tengan el mismo hash.

Generalmente, cambiar incluso una letra en un documento puede aleatorizar completamente el hash.

Por ejemplo, el hash SHA3 de “vaca” podría ser c38bbc8e93c09c09f6ed3fe39b5135da91ad1a99d397d397ef16948606cdcbd14929f9d, mientras que el hash SHA3 de “baca” podría ser b4013c0eed56d5a0b448b02ec1d10dd18c1b3832068fbbdc65b98fa9b14b6dbf.

Como podemos ver, algo totalmente diferente para un cambio tan sencillo.

Parent Hash: Hash Padre

Este dato se refiere al hash del bloque anterior y sirve para seguir ese orden dentro de la cadena de bloques. Cuando explicamos el ejemplo de tomarse la blockchain como un libro y los bloques como hojas del libro dijimos que los números de página nos dan el orden del libro, es decir, la hoja 5 viene dada de la hoja 4, la hoja 6 viene dada de la hoja 5, y así sucesivamente.

En la cadena de bloques, el ‘parent hash’ nos dice en cierto modo “este bloque viene de la hoja 4” y el hash del bloque nos viene a decir “soy la hoja 5”. En el siguiente bloque, el ‘parent hash’ será el mismo que el hash del bloque anterior, es decir, el ‘parent hash’ nos dirá “este bloque viene de la hoja 5” y el hash nos dirá “soy la hoja 6”, y así sucesivamente.

Tal y como pusimos en el título de esta parte del bloque, ‘parent hash’ significa ‘hash padre’ por lo que el bloque anterior será el bloque padre, y el bloque actual será el bloque hijo de ese bloque padre.

PARENT-HASH-grafico

Sha3 Uncles / Uncle Hash: Hash tío

Si lo pensamos en términos de un árbol genealógico, un tío está muy cerca de ser tu padre, pero tú serías diferente si hubieras nacido de los genes de tu tío.

El árbol árbol genealógico es como la cadena de bloques: el bloque hijo y el bloque padre podríamos decir que son los bloques “correctos”. Los bloques tíos son bloques que estaban muy cerca de ser el siguiente bloque “correcto” en la cadena de bloques, pero no lo son porque el actual bloque padre fue verificado primero. De ahí que son llamados bloques tíos: cercano a ser el padre, pero sin serlo.

Estos bloques tíos no forman parte de la blockchain ya que constituyen una bifurcación en la cadena de bloques, y por lo tanto no son válidos. Sin embargo ayudan a asegurar la red haciéndola más sólida y, por ello, los mineros que verifican esos bloques también son recompensados.

Existen a su vez bloques primo (cousin block), que son los bloques hijos del bloque tío, pero estos son aún más inútiles dentro de la cadena de bloques y por lo tanto, no se recompensa por minarlos.

Después de esta explicación necesaria y de la ya mencionada definición de lo que era un hash, el ‘sha3 uncle’ o el ‘uncle hash’ no es ni más ni menos que la huella dactilar de ese bloque tío del que hemos hablado.

Hash-tio-grafico

Mined by / Miner: Minado por / Minero

Este campo se refiere al minero o grupo de mineros que se ha encargado de minar o verificar el bloque y añadirlo a la cadena de bloques. En este caso la dirección del minero es 0x5A0b54D5dc17e0AadC383d2db43B0a0D3E029c4c.

A continuación de ese hash de la dirección encontramos que pone entre paréntesis “ethfans.org_2”, lo cual se refiere a una piscina minera (del inglés ‘mining pool’), es decir, a un grupo de mineros (si entramos a su web -está en chino- podemos ver que efectivamente, de eso se trata).

También nos dan el dato de que han tardado 2 segundos en verificar ese bloque, un tiempo muy por debajo de la media, 15 segundos.

Difficulty: Dificultad

La minería es como tener a mucha gente lanzando monedas y reportando cada vez que sale cara. Pongamos el ejemplo de que 1 millonésima parte de las veces sale cara. Si la frecuencia a la que alguien reporta que ha salido cara es de 15 segundos -tiempo medio de validación de un bloque-, se puede hacer una estimación muy precisa de cuántas veces por segundo se están lanzando las monedas.

En este ejemplo: (1,000,000 lanzamientos/cara) / (15 segundos/cara) ~= 66.667 lanzamientos/segundo.

La dificultad de la red es cómo se ajusta esta cifra de 1.000.000 para que la cifra de 15 segundos permanezca constante a medida que cambia la potencia del minado total de la red, también llamada potencia de hash (66.667). En otras palabras, en este ejemplo el dato de la dificultad es de 1.000.000.

Cambiando los datos, por los datos del bloque que estamos analizando, la dificultad es de 1.551.114.309.045.339, los 15 segundos por bloque siguen siendo la media por lo que la potencia de minado o potencia de hash para ese bloque es:

1.551.114.309.045.339 “lanzamientos” / 15 segundos = 103.407.620.603.022,6 hashes por segundo, o lo que es lo mismo, 103.407,6 Tera hashes / segundo (THs/seg).

Total difficulty: Dificultad total

Explicado el dato de la dificultad, la dificultad total se refiere a la dificultad total de la cadena desde su comienzo hasta el bloque actual.

Poniéndonos en el caso particular que venimos analizando, la dificultad total es de 1.512.991.409.791.525.810.638.

Esta dificultad va variando con el paso del tiempo (como podéis observar en este gráfico): se va aumentando con el objetivo de complicar la minería hasta niveles en los que no sea rentable, forzando así la llamada “Edad de Hielo” de Ethereum.

Cuando esta época llegue, será el momento del cambio en el sistema de procesado de bloques en Ethereum en el que se pasará de Prueba de trabajo (Proof of Work, PoW) a Prueba de participación (Proof of Stake, PoS).

Size: Tamaño

En informática, todo lo que tenga datos tiene un peso, un tamaño. Este tamaño se mide en bytes, aunque posiblemente nos suene más familar las medidas Megabytes (MBs), Gigabytes (GBs) o Terabytes (TBs).

En Ethereum y en su cadena de bloques, cada bloque tiene un peso que dependerá del número de transacciones procesadas en cada bloque. En este bloque en concreto, el tamaño es de 20323 bytes, o lo que es lo mismo, 20,32 MBs.

Gas limit and Gas used: Límite de Gas y Gas usado

En Ethereum existe un método diferente al resto de criptodivisas para calcular el coste de las transacciones. Esto depende directamente de la complejidad computacional de la transacción y las necesidades de almacenamiento. Este coste computacional se llama ‘Gas’.

Las transacciones requieren un determinado número de Gas para procesarlas, el cual es variable (‘Gas used’). En cada bloque existe el otro dato llamado ‘Gas Limit’ que indica el límite de Gas para ser verificado.

La cantidad de transacciones incluidas en un bloque dependerá directamente de ambos datos, siempre y cuando el total de Gas requerido por las transacciones nunca supere el límite de Gas del bloque.

El límite de Gas de este bloque en cuestión era de 6.712.392 y el conjunto de transacciones solo usó el 75,72% de ese límite de Gas establecido, es decir 5.082.608.

Nonce / Poof of Work Nonce: Nonce de la prueba de trabajo

En sí, el valor nonce es un hash de 64 bits que demuestra que se ha realizado una cantidad suficiente de cálculo en el bloque. Es un valor sin sentido dentro del bloque, el cual se puede ajustar para tratar de satisfacer la condición del sistema PoW (prueba de trabajo).

Cuando se crea un bloque a través del sistema de Prueba de trabajo, se deben probar diferentes valores ‘nonce’ hasta que se encuentre uno compatible con la dificultad del minado y el conjunto de datos actual.

Cuando hablábamos de la minería, contábamos que los mineros necesitaban potentes equipos para realizar operaciones matemáticas de gran dificultad. Cuando encontraban una solución a esos problemas matemáticos, se daba por validado el bloque y se pasaba a procesar el siguiente. Por lo tanto podemos decir que el valor nonce es, de alguna forma, esa solución al problema matemático.

El valor nonce de este bloque 4588225 es el hash 0x885123024c1881fa35.

A veces podemos encontrarnos dentro de un bloque el dato de ‘mixhash’. Este hash de 256 bits, combinado con el valor nonce, permite verificar que el bloque ha sido realmente extraído criptográficamente, por lo que, desde este aspecto, es válido.

Block reward: Recompensa del bloque

Sabemos la función de los mineros: validar transacciones, validar bloques y añadirlos a la cadena de bloques. Por ese trabajo, el minero recibe una recompensa.

Cuando se trata de un bloque, el minero o grupo de mineros que han logrado validar el bloque se lleva una recompensa que ahora es de 3 Ether (desde el comienzo hasta la introducción de la etapa Metrópolis ha sido de 5 Ether por bloque).

A veces la recompensa no es exáctamente 3 Ether, sino que hay una pequeña cantidad añadida. Como vemos en el bloque que estamos analizando, la recompensa es de 3,098864354 Ether, y entre paréntesis pone “3 + 0,098864354”.

Estos decimales se refieren a todo el Gas generado a partir de las transacciones incluidas en el bloque. En cada transacción hay un dato que se llama ‘Gas price’ o precio del Gas, el cual se da en Ether.

Este precio del Gas se multiplica por el Gas usado en la transacción y nos da el coste de la transacción en Ether. Si sumamos los costes de todas las transacciones nos dará como resultado esos decimales añadidos a los 3 Ether por bloque recibidos como recompensa (0,098864354 Ether).

Uncles reward: Recompensa tío

Después de haber explicado lo que era un bloque tío, podemos entender lo que es una recompensa tío.

Los mineros de los bloques tío válidos son recompensados para detener el retardo de propagar un bloque válido a toda la plataforma, es decir, a cada ordenador de la red Ethereum. Se recibe 7/8 de la recompensa estática del bloque, lo que es igual a 2,625 Ether por cada bloque tío, con un máximo de dos bloques tío permitidos por cada bloque válido.

Sin embargo, los mineros del bloque válido también recibirán una recompensa por cada bloque tío incluido de 1/32 sobre esos 3 Ether por bloque.

Exta data: Datos extra

Es una opción libre de usarse o no y se puede escribir lo que se quiera para conservarlo eternamente en la blockchain. La idea es escribir algo de información relevante para el bloque.

Tiene la limitación de que lo que se ponga tiene que tener máximo 32 bytes de espacio, es decir, no podemos usar más de 256 caracteres.

Minimum Gas price: Precio mínimo del Gas

Este campo (y los siguientes) aparecen en la segunda imagen del bloque, la del portal Etherchain.org.

Antes hablamos de que había un dato en las transacciones que se llamaba ‘Gas price’ o precio del Gas, el cual estaba expresado en Ether o submedidas de Ether.

En este bloque tenemos este dato el cual expresa el mínimo precio que se le puede poner al Gas usado, que es de 1 GWei (1 Gigawei), que viene a ser 1.000.000.000 de Wei.

Si recordamos bien, en el artículo en el que hablamos del Ether y sus submedidas, contábamos que el Wei era la sub medida mínima del Ether: 1 Wei = 0,000000000000000001 Ether (1 x 10-18).

Root / State root: Ruta / Ruta del estado

En este campo, aunque leamos la palabra ‘root’ que significa ruta, se refiere a ‘state root’ que se refiere la ruta del estado de la cadena de bloques. Para entenderlo mejor, vamos a explicar qué es el estado.

El estado es el conjunto de datos que una red basada en blockchain necesita para mantener un seguimiento, y que representan a su vez datos relevantes para las aplicaciones de la blockchain.

Por ejemplo, en una moneda digital, estos datos serían simplemente saldos, y en aplicaciones más complejas como las de Ethereum, esto podría referirse a quién tiene un nombre de dominio determinado o cuál es el estado de un determinado contrato, entre otros.

El post-estado de un bloque es el estado que tiene después de ejecutar todas las transacciones pendientes en los bloques anteriores al bloque actual, que parte desde la génesis (el primer bloque creado en la cadena) y que va incluyendo las transacciones hasta el bloque actual.

Como podemos observar, este dato ‘root’ tiene forma de hash (0x915fb1ccf6fdc52bd504e740ef5e6f12d3ffb85b3f00c47471969b31c262a553).

Por lo tanto podemos decir que en la cadena de bloques de Ethereum, una sola vez por bloque se incluye esta ruta de estado (root state) en forma de hash y que almacena el estado de todo el sistema al momento en el que el bloque fue generado.

Tx Hash: Hash de la transacción

Si recordamos lo mencionado anteriormente, un hash es un identificador de un conjunto de datos. Al igual que podemos recoger los datos de una transacción en un hash, también podemos recoger como datos los hashes de todas las transacciones de un bloque y englobarlos en un solo hash.

Precisamente a eso se refiere este dato que aparece en la imagen de Etherchain.org. No obstante a continuación os dejamos un dibujo explicativo.

Tx-Hash-grafico

LA TRANSACCIÓN Y SUS PARTES

Una vez explicadas todas las partes de un bloque, ahora pasamos a explicar las partes de una transacción.

Como sabemos, cada bloque está compuesto por un número variable de transacciones, que son las operaciones que se realizan en la Blockchain.

Al igual que hicimos para explicar el bloque, aquí adjuntamos las capturas de pantalla de cómo luce una transacción determinada en los portales Etherscan.io y Etherchain.org. Después de ello, pasaremos a explicar cada parte de la transacción tal y como hicimos con las partes del bloque.

Transaccion-Ethereum-Etherscan

Transaccion-Ethereum-Etherchain

Hash / Tx Hash: Hash / Hash de la transacción

Del mismo modo que un bloque tiene un hash propio y que es el que le identifica dentro de la cadena de bloques, con una transacción ocurre lo mismo.

Tx Receipt Status: Estado del recibo de la transacción

Cuando vamos a un banco y realizamos una operación, se nos da un recibo de que ha sido efectuada correctamente.

En la cadena de bloques ocurre de igual forma. Este dato se refiere a si la transacción se ha llevado a cabo correctamente o no. En este caso pone ‘Success’ en verde, que nos da a entender que ha sido exitosa.

Si hubiera sido lo contrario, hubiera puesto la palabra ‘Failed’ en rojo, que significa ‘fallida’.

Block Height: Altura del bloque

Este dato también lo teníamos en el bloque y se refiere a lo mismo: el número de bloque en el que esa transacción se encuentra, o en otras palabras, la altura de la blockchain a la que se encuentra esta transacción.

Podemos observar que se refiere al bloque del que hemos hablado anteriormente (bloque 4588225). También prestaremos atención al dato entre paréntesis: ‘12124 block confirmations’. Estas son las confirmaciones que ha tenido este bloque en concreto por parte de los mineros de toda la red Ethereum.

Timestamp: Marca temporal

También hemos hablado de este dato en la explicación del bloque. En este caso, se refiere a cuando fue validada concretamente esta transacción.

En la primera imagen nos pone que fue hace 1 día y 23 horas y en la otra hace 2 días, pero esto se refiere al momento en el que las capturas de pantalla fueron realizadas con respecto a cuando se validó la transacción.

Si nos fijamos más a fondo, podemos saber a ciencia cierta que la transacción fue validada el 20 de Noviembre de 2017 a las 12 horas, 51 minutos y 49 segundos de la zona horaria +UTC (Hora de Londres).

From: Desde dónde o por quién fue realizada la transacción

Este dato se refiere al punto de partida de la transacción, desde donde se realiza, o quién la realiza. En este caso, nos enseña el hash de la dirección desde donde se realiza y entre paréntesis nos muestra que ha sido Bittrex, un intercambiador de criptodivisas.
<

To: Hacia quién se realiza la transacción

Si el campo anterior nos mostraba quién hizo la transacción, este campo nos muestra quién recibió la transacción. Al igual que en el caso anterior, se nos muestra una dirección hash hacia la cual fue realizada la operación.

En este caso particular, fue realizada a un contrato inteligente para traspasar algo llamado ‘Time token’ o token de tiempo. Al parecer el contrato se cumplió (por el tick verde que sale a la derecha del hash) y este hecho hace que se tenga que traspasar 56,39086269 Time token de una dirección a otra (podemos ver los hashes de las direcciones implicadas en ese traspaso).

En la imagen de Etherchain no dan tantos datos, sino que se limitan a dar el hash de la dirección a la que se realiza la transacción en cuestión.

Value: Valor transferido

Este campo nos indica cuanto Ether se traspasa de una cuenta a otra. En este caso, al tratarse de una transacción en la que no hay Ether de por medio, el dato ‘value’ es 0 Ether.

Gas limit and Gas used by Tx: Límite de Gas y Gas usado por la transacción

Otro par de datos que ya fueron explicados anteriormente en las partes del bloque, así que lo resumiremos rápidamente.

Gas used by Tx’ es el Gas que ha necesitado la transacción para ser procesada. En nuestra transacción es de 80.373.

El ‘Gas Limit’ es el límite de Gas que se puede usar para que la transacción sea procesada. En nuestra transacción es de 232.400, por lo que el Gas usado no supera el límite de Gas.

Gas price: Precio del Gas

Al igual que los anteriores, también podemos encontrar su explicación en las partes del bloque.

Se refiere a cuánto Ether cuesta cada unidad de Gas. En nuestra transacción es de 20 GWei, o lo que es lo mismo, 0,00000002 Ether.

Este precio se puede consultar, al igual que su precio histórico, a través de esta gráfica.

Actual Tx Cost / Fee: Coste actual de la transacción / Comisión

Es lo que ha costado el procesar la transacción. Este dato se saca multiplicando el Gas usado para la transacción por el precio del Gas: ‘Gas used by Tx’ x ‘Gas Price’.

En nuestra transacción: 80.373 x 0,00000002 = 0,00160746 Ether. También nos muestra entre paréntesis su equivalente en Dólares americanos en el mismo momento en el que se realizó la transacción: $0.59.

Cumulative Gas used: Acumulación de Gas usado

Este dato que aparece en la transacción de Etherscan.io pero que no aparece en la de Etherchain.org

Se puede decir que es la suma de Gas utilizado por esta transacción y todas las transacciones anteriores del mismo bloque.

Nonce

Para ser válida, una transacción debe proporcionar un nonce. El nonce que se necesita suministrar para la siguiente operación se puede calcular normalmente mirando la cadena de bloques.

La mayoría de las Wallets (carteras referidas a criptodivisas) y demás software que realiza transacciones calculará por nosotros este valor nonce y lo añadirá a la transacción sin que nos demos cuenta, por lo que no necesitaremos proporcionar este dato nosotros mismos..

Input data: Datos de entrada

Este campo puede ser un mensaje arbitrario, es decir, un mensaje puesto por la persona que envía la transacción. También puede ser una llamada de función hacia un contrato o hacia el código concreto para crear un contrato.

Se podría decir que es parecido y cumple funciones parecidas al campo ‘Extra data’ de un bloque (explicado anteriormente).

LOS NODOS: EL MOTOR DE LA BLOCKCHAIN

Después de hacer los símiles de la blockchain como un libro de cuentas, los bloques como hojas de ese libro y las transacciones como párrafos de cada hoja, podríamos decir que los nodos son cada lugar del mundo donde se encuentra una copia de ese libro.

En Ethereum, un nodo es cualquier ordenador conectado a la red que se ha descargado una copia actualizada de la blockchain o cadena de bloques.

nodos-blockchain

Esto se realiza por medio de un software que se llama “cliente”. Un cliente es un programa que permite al nodo (ordenador) de un usuario interactuar con la cadena de bloques y participar en transacciones, minería o almacenamiento de datos. Los clientes más usados en Ethereum son Geth (tambien llamado ‘Go Ethereum’) y Parity.

Una vez descargada la Blockchain, el ordenador pasa a ser un nodo completo de la red, y las tareas que puede realizar, entre otras, son:

  • Validar bloques y transacciones
  • Almacenar de la cadena de bloques y el listado de transacciones
  • Minar bloques: agregar transacciones a un bloque.
  • Añadir bloques a la cadena de bloques


Cada nodo mantiene viva la blockchain y su plataforma. Cuantos más nodos haya en la plataforma más segura será, más rápida, más futuro tendrá y más subirá el valor de su criptomoneda, entre otros muchos beneficios.

¿CÓMO FUNCIONA LA BLOCKCHAIN?

Imaginemos un estadio olímpico lleno de gente, en el que se están realizando diferentes actividades deportivas al mismo tiempo:

  1. Una carrera de 2.000 metros lisos en la pista de atletismo
  2. Un salto de longitud en el foso de arena
  3. Un lanzamiento de martillo en la jaula de seguridad

Estas actividades se realizan en bloques de una hora, es decir, cada hora se dan esas tres actividades.

A medida que las carreras y los eventos concluyen, todos los presentes en el estadio deben reportar inmediatamente los resultados en perfecto detalle.

Imaginemos que prácticamente todas las personas en el estadio reportan uniformemente los mismos hechos:

“La última competidora completó su salto de longitud a las 2:40pm”,

“La carrera de 2000 metros lisos acabó hace 35 segundos”,

“El lanzamiento de martillo alcanzó 75,23 metros y acabó hace una hora”.

El mecanismo de consenso o “detector virtual de mentiras” verifica que todo lo registrado es cierto.

Cada reporte es examinado para comprobar su exactitud y, los que se consideren inexactos, son eliminados de ese registro que se está llevando a cabo.

Un consenso sobre los datos reinaría sobre todo el estadio como si cada una de las personas estuvieran conectadas entre sí, formando así una unidad, un conjunto.

Una vez que este informe haya sido registrado, se premiará con un coche a una de las personas del público y con una moto a otra persona.

Después de esto, empieza otro bloque de actividades deportivas en el que se debe repetir el proceso anterior, al igual que la repartición de los premios del coche y la moto.

En relación con una Blockchain o cadena de bloques:

  • Los eventos deportivos simbolizan las transacciones procesadas en la plataforma.
  • Los bloques de actividades cada hora simbolizan los bloques de transacciones en la red.
  • Las personas que informaron de las actividades deportivas son los nodos o participantes de la red.
  • El coche y la moto simbolizan las recompensas que los nodos reciben por validar transacciones y bloques.
  • La prueba del detector de mentiras es el mecanismo de consenso y simboliza el proceso criptográfico para probar que se llegó al resultado correcto de la manera correcta.

Esperamos que con este símil se haya hecho más sencillo entender el funcionamiento básico de una cadena de bloques.

Si quieres profundizar aun más en ella y sus aspectos técnicos, recomendamos comprar este libro titulado ‘Blockchain: La revolución de Internet‘ a través de Amazon.

Recent Articles

How to Get Your First Job in Crypto