Qué es la Cadena de Bloques o Blockchain

En su núcleo, la cadena de bloques es un ledger distribuido. Pero, ¿qué significa eso? ¿Y en qué se diferencia de un libro de contabilidad centralizado? ¿Qué es exactamente una cadena de bloques?

Vamos a explicarlo comparando una cadena de bloques con un banco.

Tu banco mantiene una base de datos central, es decir un «libro mayor», de todos tus datos de cliente. Esto puede almacenar números de cuenta, saldos, transacciones y más. Cada vez que interactúas con tu cuenta, por ejemplo, retirando dinero o haciendo una transferencia a otra persona o entidad, tu banco actualiza los registros.

Sólo el banco tiene acceso al libro mayor, así que si deciden hacer un cambio, no hay mucho que el usuario pueda hacer al respecto.

Ahora imagina que un hacker tuviera acceso a esta base de datos. Podrían modificar saldos, borrar operaciones y mucho más. Tu banco puede ser capaz de restaurar los datos de las copias de seguridad, y puede haber muchas bases de datos que sirven estos datos, pero en última instancia está controlado por una entidad central.

Los ledgers distribuidos son mucho más inteligentes. En lugar de que una persona o empresa sea la única responsable del libro mayor, muchas personas tienen copias de un libro mayor distribuido, y a menudo hay pocas restricciones sobre quién puede unirse.

Cada usuario, conocido como «nodo», almacena una copia de los datos, desde el principio del libro hasta el presente. Todo el lote. Para cada transacción, varios nodos la verifican, y luego todos los nodos actualizan sus registros para que todo se mantenga actualizado y sincronizado.

Cada nueva transacción se agrupa con muchas otras transacciones en un «bloque». Estos bloques proporcionan algunos beneficios. No hay una autoridad centralizada que pueda manipular el registro. Si un hacker o nodo nefasto comenzara a cambiar registros en un libro, todos los demás nodos lo rechazarían ya que los nuevos registros no coincidirían con los datos almacenados por todos los demás.

La única manera de manipular los datos es que cada nodo conspire entre sí, lo que es muy poco probable. En el caso de Bitcoin, hay aproximadamente 10.000 nodos Bitcoin diferentes repartidos por todo el mundo en el momento de escribir este artículo.

La cadena de bloques es un libro de datos seguro y colaborativo

Vamos a explicarlo de otra manera. El cifrado se utiliza normalmente para bloquear archivos, de modo que sólo pueden ser accedidos por personas específicas. Pero, ¿qué si tienes información que necesita ser vista por todos, como, por ejemplo, la información contable de una agencia gubernamental que tiene que ser pública por ley, y aún así necesita estar segura? Ahí hay un problema: cuanta más gente pueda ver y editar información, menos segura será.

Las cadenas de bloques se desarrollaron para satisfacer las necesidades de seguridad de estas situaciones específicas. En una cadena de bloques, cada vez que se accede a la información y se actualiza, el cambio se registra y verifica, y luego se sella mediante encriptación, sin posibilidad de volver a ser editado. El conjunto de cambios se guarda y se añade al registro total. La próxima vez que alguien hace cambios, todo comienza de nuevo, preservando la información en un nuevo «bloque» que está encriptado y conectado al bloque anterior, de ahí la «cadena de bloques». Este proceso de repetición conecta la primera versión del conjunto de información con la última, de modo que todos pueden ver todos los cambios realizados, pero sólo pueden contribuir y editar la última versión.

Esta idea es un poco resistente a las metáforas, pero imagina que estás en un grupo de diez personas montando un juego de LEGO. Sólo se puede añadir una pieza a la vez, y no se puede quitar ninguna pieza en absoluto. Cada miembro del grupo debe ponerse de acuerdo sobre dónde va a parar la siguiente pieza. De esta manera, puedes ver todas las piezas en cualquier momento, desde la primera pieza del proyecto, pero sólo puedes modificar la última pieza.

Para algo un poco más relevante, imagina un documento colaborativo, como una hoja de cálculo en Google Docs u Office 365. Todos los que tienen acceso al documento pueden editarlo, y cada vez que lo hacen, el cambio se guarda y se registra como una nueva hoja de cálculo, y luego se bloquea en el historial del documento. Así que puedes volver atrás, paso a paso, a través de los cambios realizados, pero sólo puedes añadir información a la última versión, no modificar las versiones anteriores de la hoja de cálculo que ya han sido bloqueadas.

Como probablemente habrás oído, esta idea de un «libro mayor» seguro y constantemente actualizado se está aplicando principalmente a los datos financieros, donde tiene más sentido. Las monedas digitales distribuidas como Bitcoin son el uso más común de las cadenas de bloques; de hecho, la primera fue hecha para Bitcoin y la idea se extendió desde allí.

Validación de la blockchain: Claves públicas y privadas

Como se ha visto anteriormente, una cadena de bloques es un almacén de datos descentralizado, y el tipo más común de datos almacenados son las transacciones.

Si un usuario envia a otro un BTC, le dice a cada nodo que eso es lo que está haciendo, y todos ellos registran la transacción si está permitida. Al revisar los libros de contabilidad, los nodos pueden rechazar la transacción si no el usuario no tiene suficiente Bitcoin para enviar, o si no es el titular de la cuenta.

Cada transacción debe pasar la validación, y ahí es donde la tecnología de bloques se vuelve un poco más complicada. Cada «billetera» de cadena de bloques, piensa en esto como una cuenta bancaria de cadena de bloques, tiene una clave pública y una clave privada.

La clave pública no es sensible, pero la clave privada sí. Sólo el verdadero titular de la cuenta debe tener acceso a la clave privada y si alguien se apodera de ella, lu cuenta podría ser secuestrada. Si quieres mantener tus criptomonedas bien seguras, entonces echa un vistazo a este artículo donde describimos las mejores carteras frías de criptomonedas.

Al enviar a u usuario la BTC mencionada anteriormente, la cartera del que lo envía presenta la clave pública junto con una firma digital. Esta firma digital es única y se genera únicamente con la clave privada. Utilizando la firma y la clave pública, otros nodos pueden verificar que se trata de una transacción legítima, todo ello sin revelar nunca la clave privada.

Este es un ejemplo simplificado: la criptografía detrás del sistema de clave pública/privada es mucho más compleja. Las claves públicas y privadas no son números como las cuentas bancarias. En su lugar, utilizan el algoritmo Secure Hash Algorithm 256 (SHA-256) y el RACE Integrity Primitives Evaluation Message Digest 160 (RIPEMD-160).

Si nunca has oído hablar de estos algoritmos no te preocupes. Un usuario medio no necesita entenderlos en profundidad para usar criptomonedas. Sólo hay que saber que estos algoritmos hacen funcionar a Internet tal como lo conocemos, encriptando páginas web a través de SSL y TLS y mucho más. En el futuro, es posible que se utilicen otros algoritmos de cifrado para cadenas de bloques.

Sólo debes saber que toda esta encriptación y verificación tiene un coste. Cada nodo necesita mucha potencia de cálculo para verificar todas las transacciones que se realizan y actualizar su libro mayor en consecuencia. Aquí es donde entra en juego la minería: los usuarios pueden ganar pequeñas cuotas de transacción como pago por esa verificación. Al ejecutar el libro de esta manera, se paga a los mineros que ejecutan nodos y se verifica cada transacción. Es un sistema más bien simple. Pero no todo es perfecto.

Durante los períodos de alta demanda de transacciones, las tarifas pueden subir. Si no hay suficientes nodos para todos, los usuarios pueden pagar más para que sus transacciones sean procesadas antes que otras, y los mineros terminan favoreciendo las transacciones de mayor pago. Aquellos que pagan cuotas más bajas seguirán siendo procesados, pero a un ritmo mucho más lento, a menos que la cuota sea demasiado baja, en cuyo caso nadie se molestará en verificar la transacción.

Además de las tasas de transacción, los mineros también pueden cobrar en nuevos y brillantes Bitcoins. Al pagar a los mineros una fracción de una BTC además de la tasa de transacción, los nuevos Bitcoins se introducen por goteo en el mercado. Estos Bitcoins no minados se vuelven más difíciles de extraer a medida que pasa el tiempo, hasta que un día ya no queden monedas no minadas, y los mineros sólo recibirán el pago en concepto de comisiones de transacción.

Las Cosas Técnicas: Paso a paso, bloque a bloque

¿Cómo se desarrolla todo esto en un ordenador? Es una combinación de criptografía y redes peer to peer.

Es posible que estés familiarizado con el uso compartido de archivos entre pares: servicios como BitTorrent que permiten a los usuarios cargar y descargar archivos digitales desde varias ubicaciones de forma más eficaz que desde una única conexión. Imagina los «archivos» como los datos centrales en una cadena de bloques, y el proceso de descarga como la criptografía que los mantiene actualizados y seguros.

O, para volver al ejemplo de Google Docs anterior: imagina que el documento colaborativo en el que estás trabajando no está almacenado en un servidor. En su lugar, está en el ordenador de cada individuo, que se comprueban y actualizan constantemente entre sí para asegurarse de que nadie ha modificado los registros anteriores. Esto lo hace «descentralizado».

Esa es la idea central detrás de la cadena de bloques: son datos criptográficos a los que se accede de forma continua y segura al mismo tiempo, sin ningún servidor o almacenamiento centralizado, con un registro de cambios que se incorpora a cada nueva versión de los datos.

Así que tenemos tres elementos que considerar en esta relación. Uno, la red de usuarios peer-to-peer que almacenan todas las copias del registro de la cadena de bloques. En segundo lugar, los datos que estos usuarios añaden al último «bloque» de información, lo que permite actualizarlos y añadirlos al registro total. En tercer lugar, las secuencias criptológicas que los usuarios generan para acordar el último bloque, fijándolo en la secuencia de datos que forman el registro.

Es la última parte que es la salsa secreta de todo lo relatico a la cadena de bloques. Usando criptografía digital, cada usuario contribuye con la potencia de su ordenador para ayudar a resolver algunos de esos problemas matemáticos súper complejos que mantienen el registro seguro. Estas soluciones extremadamente complejas, conocidas como «hash», resuelven partes centrales de los datos en el registro, como qué cuenta sumó o restó dinero en un libro de contabilidad, y de dónde fue o de dónde vino ese dinero. Cuanto más densos sean los datos, más compleja será la criptografía y mayor será la potencia de procesamiento necesaria para resolverla. Aquí es donde entra en juego la idea de la «minería» en Bitcoin, que hemos citado más arriba.

Así que, para resumir, podemos pensar que una cadena de bloques es un fragmento de datos que es:

  • Actualizado constantemente. Los usuarios de Blockchain pueden acceder a los datos en cualquier momento y añadir información al bloque más reciente.
  • Distribuido. Las copias de los datos de la cadena de bloques son almacenadas y aseguradas por cada usuario, y todos deben estar de acuerdo en nuevas adiciones.
  • Verificado. Tanto los cambios en los bloques nuevos como las copias de los antiguos deben ser acordados por todos los usuarios mediante verificación criptográfica.
  • Seguro. La manipulación de los datos antiguos y la alteración del método de seguridad de los nuevos datos se evita tanto por el método criptográfico como por el almacenamiento no centralizado de los propios datos.

Y aunque no lo creas, se vuelve aún más complicado que esto, pero esa es la idea básica.

¿Cuándo una cadena de bloques no es una cadena de bloques?

Mientras que muchas cadenas de bloques sólo almacenan detalles de transacciones, es posible almacenar todo tipo de datos en una cadena de bloques: registros médicos, mensajes seguros, contratos inteligentes y mucho más.

También es posible construir tu propia Blockchain, incluso una que sea privada, siempre y cuando tengas suficientes nodos para ejecutarla. Puedes eliminar el cifrado, cambiar las reglas o descentralizarlo.

Muchos argumentarían que estos cambios significarían que el sistema ya no es una cadena de bloques, pero ahí está el problema: sin una especificación o definición formal de «cadena de bloques, o Blockchain», no hay confianza en el sistema. Muchos proyectos de cadenas de bloques existen únicamente para estafar a la gente. Otros proyectos de la cadena de bloques utilizan el nombre de la cadena de bloques, utilizándolo para mejorar sus resultados finales sin ninguna innovación real. El modelo tradicional de Bitcoin es el mejor camino a seguir: una cadena de bloques pública, accesible para todos, y no centralizada.

¿Qué más pueden hacer las cadenas de bloques?

La tecnología de la cadena de bloques comenzó con Bitcoin, pero es una idea tan importante que no se quedo ahí por mucho tiempo. Un sistema que se actualiza constantemente, accesible para todos, verificado por una red no centralizada e increíblemente seguro, tiene muchas aplicaciones diferentes. Instituciones financieras como JP Morgan Chase y la Bolsa de Valores de Australia están desarrollando sistemas de cadenas de bloques para asegurar y distribuir datos financieros, para dinero convencional, no para criptocurrency como Bitcoin. La fundación Bill & Melinda Gates espera utilizar sistemas de cadenas de bloques para proporcionar servicios bancarios gratuitos y distribuidos a miles de millones de personas que no pueden pagar una cuenta bancaria regular.

Las herramientas de código abierto como Hyperledger están tratando de hacer que las técnicas de cadenas de bloques estén disponibles para una gama más amplia de personas, en algunos casos sin necesitar las cantidades monstruosas de potencia de procesamiento que se necesitan para asegurar otros diseños. Los sistemas de trabajo colaborativo pueden ser verificados y registrados con técnicas de cadena de bloques. Prácticamente cualquier cosa que necesite ser constantemente grabada, accedida y actualizada puede ser usada de la misma manera.

También te puede interesar:

Por Favor evalua el artículo