Nacida para dar soporte a la criptomoneda bitcoin (recientemente estrenada en bolsa), la tecnología blockchain suena mucho últimamente y promete un futuro más rápido, más sencillo y más seguro.

Blockchain permite eliminar la supervisión y autenticación centralizados y delegar ese trabajo en una red distribuida, no sólo no comprometiendo la seguridad e integridad de los datos, sino fortaleciéndolas.

En palabras de Don Tapscott y Alex Tapscott, fundadores del Blockchain Research Institute:

“La tecnología blockchain es un libro contable digital incorruptible de transacciones económicas que se puede programar para registrar no sólo transacciones financieras sino virtualmente cualquier cosa que tenga valor”

¿Qué es blockchain?

Justamente lo que su nombre indica: una cadena de bloques.  

Como en toda cadena, cada bloque está enlazado al bloque anterior y al bloque siguiente.

bloques

Bloques2

Cada bloque lleva la información correspondiente (transacciones financieras en el caso de monedas virtuales) y una información de cabecera, en la que se incluye el identificador del bloque anterior.

¿Cómo funciona correctamente y de forma segura esta cadena?

Veamos las características de esta tecnología.

Base de datos replicada… en millones de nodos

La información contenida en un blockchain es una base de datos compartida, replicada en múltiples nodos (equipos), que continuamente es actualizada y validada. No existe una versión centralizada de esta información que alguien pueda robar o corromper. Los datos son accesibles y verificables para cualquier persona en Internet, o al menos, dentro de cada red blockchain, ya que existen redes blockchain públicas y privadas.

Una analogía de blockchain con respecto al sistema tradicional centralizado puede hacerse con Google Docs/Sheets y el clásico documento de texto u hoja de cálculo que los colegas de trabajo mandamos por email y sólo puede ser editado por una persona en un momento dato. Este es el mismo sistema con el que los bancos mantienen saldos y transferencias de dinero y se venden billetes de avión: se bloquea brevemente el acceso mientras se realiza una transferencia, luego se actualiza y se vuelve a abrir el acceso. Con Google Doc/Sheets, todos los usuarios  tienen acceso al mismo documento al mismo tiempo, y la versión única de ese documento siempre es visible para todos. En muchos escenarios laborales esta forma de trabajar con documentos únicos, compartidos y editables al mismo tiempo, facilita enormemente el trabajo y permite ahorrar mucho tiempo. Obviamente, no necesitamos una cadena de bloques para compartir documentos, pero esta analogía ilustra las ventajas que proporciona la base de datos replicada de blockchain.

Una red de nodos… sin nodo central

Un nodo es cualquier ordenador que se conecta a la red blockchain (red P2P) utilizando un cliente. Al conectarse a la red se descarga automáticamente una copia del blockchain.

Los nodos de la red realizan dos operaciones principales:

  • Validar bloques: la famosa “minería”. Al validar un bloque nuevo, el nodo es premiado; en la red Bitcoin gana bitcoins. Los nodos no minan por defecto, es algo que deciden hacer.
  • Retransmitir y verificar transacciones y bloques, así se consigue que todos los nodos tengan la misma información.

Cada nodo es un administrador de blockchain y se une voluntariamente a la red (en este sentido, la red está descentralizada porque nadie autoriza o deniega el acceso y todos los nodos son iguales). Cada uno tiene un incentivo para participar en la red: la posibilidad de ganar “premios” validando bloques.

En el caso de Bitcoin, una red global de computadoras utiliza la tecnología blockchain para administrar conjuntamente la base de datos que registra las transacciones de Bitcoin. Es decir, Bitcoin es administrado por su red y no por ninguna autoridad central. La descentralización significa que la red opera de usuario a usuario (o de igual a igual).

Redes

Blockchain es una red descentralizada

Validación de bloques: la prueba de trabajo

Una vez un nodo decide minar, puede crear un nuevo bloque con transacciones pendientes.

En ese momento, compite con otros millones de nodos para ver si su bloque local se convertirá en el próximo bloque de la cadena para toda la red. Esta competición se realiza “lanzando los dados”, es decir, ejecutando un algoritmo para encontrar una clave aleatoria que permita validar el bloque. Este algoritmo se conoce como “prueba de trabajo”.

La idea fundamental en la que se basa es que los nodos que intervienen en un sistema deben aportar una prueba de su interés en el sistema. Para ello tienen que demostrar que han dedicado cierta cantidad de recursos: en este caso tiempo de computación; esto es la prueba de trabajo. El coste de la verificación de dicha prueba para el resto de nodos debe ser reducida, y así lo es, ya que comprobar que la clave es correcta respecto al bloque es muy rápido.

La prueba de trabajo es un protocolo de consenso distribuido para redes distribuidas, en el que encontrar la clave aleatoria para validar un bloque es muy poco probable, por diseño. Los mineros deben invertir tiempo y esfuerzo y tener mucha suerte. Esto previene el fraude y hace que la red sea segura (a menos que un usuario malintencionado posea más de la mitad de los nodos en la red). Pese al carácter aleatorio, al ser muchos nodos minando, existe una probabilidad de que alguno acierte en un cierto tiempo y se publican nuevos bloques en la cadena en un intervalo de tiempo fijo. En Bitcoin, los bloques se publican cada 10 minutos en promedio.

Si un nodo encuentra la clave, el bloque se confirma y se envía a todos los demás nodos de la red. Todos los nodos comprueban que el bloque es correcto, lo agregan a su copia de la cadena y tratan de construir un nuevo bloque con nuevos transacciones pendientes. Obviamente más de un nodo puede generar un bloque a la vez y mandarlo al resto de nodos. Este conflicto se resuelve con regla de la cadena más larga:

  • Si un nodo recibe un bloque n y es correcto, puede empezar a trabajar el siguiente bloque n+1.
  • Si en pocos segundos aparece otro bloque n, que lleva también un segundo bloque n+1, seleccionamos este segundo bloque n como el correcto (cadena más larga) y empezamos a minar el bloque n+2.

BlockChain4

Regla de la cadena más larga

La validación de bloques se llama minería por analogía con la minería de oro, donde existía un factor aleatorio a la hora de encontrar oro y también una recompensa en caso de éxito; la minería en bloque de bitcoin trae consigo una recompensa económica en forma de bitcoins. Las personas que manejan nodos en una cadena de bloques son también llamados mineros.

¿En serio no hay ningún peligro?

Desde el punto de vista del funcionamiento de la red y de la fiabilidad de la información, hemos visto la robustez y seguridad que proporciona esta tecnología.

Desde el punto de vista de la información valiosa del usuario, que es dinero en el caso de monedas virtuales, el usuario sí debe tener a muy buen recaudo su cartera y su clave privada. No existe el botón “Olvidé mi contraseña” y no se puede llamar a ninguna puerta. Se deben tener los correspondientes backups de la cartera digital y no perder la clave privada.

Tenemos ejemplos recientes de estos fallos humanos, desde pasar meses de ansiedad por haber perdido la clave hasta pretender registrar un basurero municipal para buscar un portátil cuyo disco duro tiene guardados 100 millones de euros en Bitcoins.

¿Estamos ante una nueva web 3.0?

Al crear una nueva forma de verificar las transacciones, los controles del comercio tradicional pueden volverse innecesarios. Las operaciones bursátiles se vuelven casi simultáneas en la cadena de bloques y la descentralización es una realidad. Las transacciones de Bitcoin en 2016 supusieron una media de más de 200.000 dólares por día.

La Web gana una nueva capa de funcionalidad con la tecnología Blockchain:

Los usuarios pueden hacer transacciones
directamente entre ellos en un sistema muy seguro

Con la seguridad añadida traída por la cadena de bloques, pueden surgir nuevos negocios en Internet al margen de las instituciones financieras tradicionales. La tecnología blockchain promete futuro, pero es ya también una realidad:

  • Una prueba piloto de BBVA y la israelí Wave consigue automatizar con blockchain procesos documentales del comercio internacional, reduciendo drásticamente plazos: de unos diez días a poco más de dos horas.
  • El ‘blockchain’ seduce a las grandes empresas:
    “No es solo el BBVA. Gigantes del Ibex como el Santander, CaixaBank, Repsol, Gas Natural Fenosa, Iberdrola o Telefónica presentaron el mes pasado Alastria, el primer consorcio multisectorial basado en blockchain, en el que participan unas 70 compañías. Esta plataforma está abierta también a que se unan empresas más pequeñas, universidades y otras entidades.”
  • Contratos inteligentes: Ethereum es un proyecto de código abierto de la cadena de bloques que fue construido específicamente para contratos inteligentes.
  • Gobernanza: la tecnología blockchain podría aportar total transparencia a las elecciones o a cualquier otro tipo de votación. Los contratos inteligentes basados en Ethereum ayudan a automatizar el proceso.
  • La aplicación Boardroom permite la toma de decisiones empresariales en la cadena de bloques. En la práctica, esto significa que el gobierno de la empresa se vuelve completamente transparente y verificable cuando se gestionan activos digitales, acciones o información.
  • Múltiples aplicaciones podemos encontrar en otros sectores: registros públicos, protección de la propiedad intelectual, gestión de identidades, recaudación de impuestos, IoT (Internet de las Cosas), trazabilidad de la cadena de suministro y más ejemplos en esta página (en inglés).

El Grupo Soltel está trabajando también en la tecnología BlockChain a través de la División de I+D y la División de Ingeniería del Software. En la actualidad participa en un consorcio nacional de empresas, universidades y centros de investigación para el desarrollo de la tecnología blockchain que permita la generación de nuevos servicios. Soltel planteará nuevas soluciones en los ámbitos industrial y energético para la gestión de la identidad, confiabilidad y trazabilidad de las transacciones de bienes y servicios que aportarán mejoras significativas con respecto a otras soluciones basadas en tecnologías precedentes.

Además el consorcio en su conjunto abordará las siguientes líneas:

  • Investigar cómo una tecnología disruptiva como Blockchain puede dar respuesta a los retos y necesidades específicas de diferentes sectores estratégicos para la economía estatal.
  • Investigación industrial en mecanismos de gestión de la identidad basada en tecnología Blockchain que permita la coordinación e intercambio de información sobre clientes en diferentes dominios: banca, seguros, energía, administración pública, etc.
  • Desarrollo de tecnología para la validación del concepto de trazabilidad de activos industriales o de copias digitales de los mismos orientados a mejorar la transparencia y visibilidad de toda la cadena de valor.
  • Investigación industrial en soluciones para ejercer el derecho al olvido sobre sistemas basados en blockchain, ofreciendo mecanismos que permitan compatibilizar Blockchain con la nueva legislación GDPR.

Es difícil afirmar hoy en día si blockchain supondrá la revolución que promete o acabará siendo una burbuja especulativa, como ya sugieren algunas voces. Sin embargo, existen ya muchos proyectos reales, proyectos pilotos y, sobre todo, mucha proyección en múltiples aplicaciones. Esperemos que la tecnología continúe afianzándose y nos permita operaciones más rápidas, sencillas y seguras.