CONSULTORÍA ESTRATÉGICA EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIONES

CONSULTORIA EN REDES Y SERVICIOS DE TELECOMUNICACIONES




Funcionamiento y aplicaciones de blockchain 2.0

Autores: Ramón Jesús Millán Tejedor

Publicado en Conectrónica nº 225, GM2 Publicaciones Técnicas, 2019

tecnologias y funciones de la red troncal 5G




Introducción

Blockchain o DLT (Distributed Ledger Technology), es un "libro de contabilidad" público de datos digital (ledger), compartido entre una red P2P (Peer-To-Peer) distribuida de nodos (ordenadores u otros dispositivos ejecutando un mismo software) independientes, sin que sea necesaria una autoridad central o intermediarios que aporten confianza a las transacciones. Más en concreto, blockchain o "cadena de bloques" es la combinación de una estructura de datos, algoritmos y tecnologías de criptografía y seguridad, que trabajando conjuntamente pueden ser utilizadas para conseguir y mantener la integridad en redes P2P "puras", independientemente de su aplicación final [1].

La asociación de blockchain con las criptomonedas [2], generó una mala reputación, que ha dañado durante años su credibilidad y confianza, relacionándola con el blanqueo de capitales, el fraude fiscal, el comercio de drogas, la especulación, la estafa, etc. De hecho, varias de estas acusaciones se han demostrado ciertas; un ejemplo, es el portal de la Ruta de la Seda (Silk Road) de la Internet profunda (Dark Web), un auténtico referente del tráfico de drogas internacional, que hasta su desmantelamiento por el FBI en el año 2013, utilizaba bitcoins para las transacciones entre compradores y vendedores.

Sin embargo, durante los últimos años la imagen de blockchain ha ido mejorando, pues aunque Bitcoin ha sido el primer uso práctico de blockhain, seguido por otras muchas monedas virtuales (Dash, Ethereum, Litecoin, Monero, Ripple, Zcash, etc.), en realidad sus casos de uso son múltiples. En la actualidad, como ocurre con otras tecnologías emergentes (5G, inteligencia artificial, etc.), se están generando muchas expectativas en torno al blockchain, algunas de ellas irrealistas o bien muy futuristas. A medida que la tecnología madure y se implemente en nuevas aplicaciones, podremos confirmar si esas expectativas eran realistas, o bien todo era una mera "burbuja". Pero sin lugar a dudas, la creación y despliegue de soluciones de blockchain va a suponer cambios importantes y muy positivos en la optimización de procesos en muchas industrias.

Funcionamiento de Bitcoin

Bitcoin comezó a funcionar en el año 2009, como un sistema de pagos P2P descentralizado y una moneda completamente digital [2]. Cabe destacar que su nacimiento se produce justo después de la crisis de confianza en el sistema financiero, salpicado por el escándalo de las hipotecas basura y otros productos financieros de escasa solvencia.

El protocolo Bitcoin y su software se publican abiertamente, es decir, cualquier programador en cualquier lugar del mundo puede revisarlo o crear su propia versión modificada del software. De la misma manera que nadie controla la tecnología detrás del correo electrónico, Bitcoin tampoco tiene propietarios, siendo controlado por todos los usuarios Bitcoin del mundo. Desde la perspectiva del usuario, Bitcoin no es más que una aplicación software, que provee un monedero bitcoin personal y permite al usuario enviar y recibir bitcoins con él. Bitcoin se compone de usuarios con carteras conteniendo claves, transacciones que se propagan a través de la red y mineros que producen -a través de cálculo computacional simultáneo y distribuido- el consenso de la cadena de bloques, que es el libro contable de todas las transacciones [2].

Esta contabilidad distribuida, puesto que contiene cada transacción procesada, permite verificar la validez de cada una de ellas. La autenticidad de cada transacción está protegida por firmas digitales correspondientes a las direcciones de envío, permitiendo a todos los usuarios tener control total al enviar bitcoins desde sus direcciones Bitcoin. En Bitcoin cualquiera puede ayudar a procesar una transacción usando sus ordenadores y conseguir por ello una recompensa en bitcoins, lo cual se conoce comúnmente como minería (mining). La prueba de trabajo (proof of work) o resolución de los complejos cálculos matemáticos del sistema "hascash" utilizado por BitCoin, es muy difícil de producir, teniendo los nodos una baja probabilidad de éxito; sin embargo, luego es fácil para otros nodos verificarla y comprobar que satisface ciertos requisitos. Una transacción en Bitcoin normalmente tarda 10 minutos en ser confirmada, pero podría llegar a tardar varias horas; es decir, cada 10 minutos de media se genera un bloque con la información de las transacciones que se han realizado durante ese período de tiempo, dicho bloque es verificado por los mineros y, si hay consenso, se almacena secuencialmente en la cadena de bloques principal, después del bloque de transferencias justo anterior.

Además de la ineficiencia energética y su impacto medioambiental, el problema fundamental para los Gobiernos, es que el Bitcoin facilita el anonimato en las transacciones. Por ejemplo, la Agencia Tributaria española desconoce en principio la identidad de los usuarios de Bitcoin; no obstante, no hay un anonimato total y con los inspectores adecuados, podría ser capaz de llegar a identificar la identidad de un determinado usuario, utilizando herramientas específicas (Blockchain.info, Blockseer, Chainanalysis, Coinfirm, Maltego, etc.) a partir las direcciones IP y bitcoin de origen y destino, los pagos realizados (cantidades y fechas), etc. En principio, nuestro patrimonio en bitcoins no es conocido por Hacienda, hasta que se vendan y el dinero pase a una cuenta bancaria, o bien se haga una compra importante. Del mismo modo que ocurre con las acciones de una empresa, si se venden los bitcoins a un precio mayor al que fueron comprados, hay que informar de la ganancia patrimonial en la Declaración de la Renta. Por otro lado, el minero de Bitcoin, es considerado una Actividad Económica, que debe ser declarada, así como sus correspondientes ingresos y gastos.

Funcionamiento de Bitcoin

Figura 1: Funcionamiento de Bitcoin.

Funcionamiento de blockchain 2.0

A partir de la aparición de Ethereum a primeros de 2014, se empezó a hablar de un "blockchain 2.0". Blockhain 2.0 facilita el intercambio de valor más allá del bitcoin o las monedas virtuales, mediante los contratos inteligentes.

En primer lugar, es importante destacar que en blockchain puede haber un intercambio de valor o de información [3]. El intercambio de valor se refiere a que mediante blockchain, es posible asegurar que un activo físico o digital es único y no se puede duplicar, a quién pertenece, si se ha permitido su transferencia, etc. En el intercambio de información, blockchain asegura que todos los usuarios acceden exactamente a los mismos datos, cuál es su procedencia y qué permisos tienen los usuarios.

Un concepto importante en este nuevo paradigma de blockchain es el de token [4]. El token puede ser un bitcoin u otra moneda virtual, o bien un contrato inteligente, representando cualquier tipo de activo o utilidad (moneda, póliza de seguros, títulos de propiedad, votos, hipotecas, herencias, opciones sobre acciones, etc.) y pudiendo ser utilizado como prueba de propiedad, licencia software, certificados de acciones, un sistema de votación, un programa de fidelidad, etc. El token está encriptado y, al irse almacenando, conforman la cadena de bloques. Más específicamente, un contrato inteligente (smart contract) es un programa informático que ejecuta acuerdos establecidos entre dos o más partes haciendo que ciertas acciones programadas con anterioridad sucedan automáticamente, como resultado de que se cumplan una serie de condiciones o clausulas específicas. Es decir, son contratos que se ejecutan y cumplen de manera automática y segura, reduciendo el fraude, los costes y la burocracia. Evidentemente, para explotar todo su potencial, se requerirían también cambios regulatorios y legales.

Blockchain utiliza un sistema criptográfico de clave pública (public key), también conocido como de clave asimétrica (asymmetric key). Cada cuenta (o dirección) de blockchain tiene dos claves, una pública (que puede ser compartida) y otra privada (que debe mantenerse en secreto) [1]. La clave privada es la que tiene la información sobre el usuario, garantizando su identidad y su anonimato, permitiéndole acceder a sus activos. Si esa clave se pierde, sus activos también. La clave pública sólo muestra lo que el usuario desea que los demás puedan ver. Por ejemplo, para enviar dinero, el usuario necesita acreditar que tiene en su poder la clave privada, demostrando así que es quién dice ser y firmar con ella la transacción; mientras que para recibir dinero basta con proporcionar la clave pública.

Función hash

Figura 2: Cálculo de la función hash con SHA-256 de "Conectrónica".

Los bloques que se almacenan digitalmente en blockchain, mezclan la información de las direcciones de las partes involucradas en la transacción, la cantidad de unidades de valor o tokens en movimiento y una marca temporal; y luego las procesa a través de una función llamada hash [4]. Esta función hash es un complejo algoritmo criptográfico que condensa en un único dígito de letras y números, con una longitud fija, información de cualquier extensión. En concreto, BitCoin en concreto utiliza el algoritmo de hash SHA-256. Esta información es la huella dactilar (fingerprint) o hash del bloque y es imposible encontrar dos entradas en el blockchain con el mismo valor. El problema es lo que todos los nodos de la red tratan de resolver con el fin de confirmar lo que contiene la transacción y enlazarla al bloque previo. Puesto que cada bloque tiene un hash enlazando al bloque previo, la información en el blockchain es fácilmente verificable e imposible de eliminar.

Funcionamiento de blockchain

Figura 3: Fragmento del vídeo "How Does a Blockchain Work – Simply" [7].

Tipos de blockchain

Existen tres grandes tipos de blockchain [1]:

Beneficios de blockchain

Blockhain ha suscitado un gran interés porque permite que un sistema distribuido puro, tenga el potencial de reemplazar los sistemas tradicionales centralizados y revolucionar múltiples industrias debido a la desintermediación. Al trabajar sobre una base de datos distribuida, los distintos usuarios de esa red hacen la labor tradicional del intermediario, ya que almacenan una copia de cada transacción en forma de bloques. Por ello, blockchain aporta seguridad, pues puesto que todos los usuarios tienen esa información, se considera cierta [3]. Por otro lado, como es un sistema distribuido, hay una gran redundancia.

El principal objetivo de blockchain es resolver el complicado reto de mantener la integridad y confianza en sistemas puramente distribuidos, con un número elevado de pares potencialmente anónimos, con desconocida reputación. La integridad implica que un sistema es seguro, completo, consistente y libre de errores [1]. El cifrado es necesario para conseguir la confianza mediante la identificación, autenticación y autorización, así como salvaguardando la seguridad de los datos. De este modo, blockchain es una de las tecnologías más seguras que existen [6]. Puesto que los datos están encriptados en una base de datos distribuida y entrelazada y se necesita el acuerdo unánime de todos los nodos para que la transacción sea validada, las posibilidades de atacar una red blockchain y tener éxito son muy bajas, ya que la capacidad de computación necesaria para comprometerla sería muy elevada.

Por otro lado, una vez introducida la información en blockchain, ésta no puede ser borrada o modificada, sólo se podrán añadir nuevos registros y no serán legitimados a menos que la mayoría de los nodos se pongan de acuerdo para hacerlo. Es decir, otra característica muy interesante de blockchain es la inalterabilidad, trazabilidad y transparencia; que permite ofrecer una visión única sincronizada de la información, agilizando y automatizando el proceso de verificación de la información y eliminando errores humanos [1].

Aplicaciones de blockchain

El "boom" mediático de los últimos años ha creado la falsa percepción de que blockchain va terminar por completo con todos los sistemas centralizados y con los intermediarios tradicionales (bancos, emisores de medios de pago, notarios, etc.). Sin embargo, ambos sistemas se complementarán, ya que también hay limitaciones inherentes a blockchain.

Entre las limitaciones, cabe destacar que los protocolos utilizados para validar transacciones en blockchain requieren de un tiempo variable y relativamente grande para ser completado, que va de minutos a horas, dependiendo de los picos de carga. Es decir, en el caso de aplicaciones que requieran una baja latencia, son generalmente mejores los sistemas centralizados. Por otro lado, blockhain es también una solución más costosa respecto a los sistemas centralizados si se va a intercambiar mucha información en la transacción, puesto que los datos tienen que ser replicados y validados por múltiples nodos de la red, aumentado las necesidades de almacenamiento y procesamiento. Además, blockchain supone un elevado consumo energético, que puede dispararse aún más en el caso de transacciones complejas.

En principio, blockchain tiene aplicaciones en todas las industrias, pero para su adopción masiva serán necesarias mejoras tecnológicas, en especial a nivel de capacidad de procesamiento y eficiencia energética. También es necesaria la adaptación del complejo marco regulatorio que realmente será específico a cada caso de uso, industria y país donde se aplique. Con el tiempo, también será necesaria la interoperabilidad entre distintos tipos de blockchain.

Habiendo ya revisado las ventajas y desventajas de blockchain, ¿sería blockchain una tecnología adecuada para implementar un sistema de pagos?... Aunque se ha estado utilizando por las monedas virtuales, no es realmente una de las aplicaciones donde blockchain aporta más ventajas. En primer lugar, aún no está generalmente aceptada. Por otro lado, en un sistema de pagos podría requerirse de mucha información colateral (bienes, factura, términos y condiciones, dirección de destino para el envío, etc.) y la transacción tiene que ser procesada casi instantáneamente; siendo la latencia difícil de predecir en blockchain, dada la necesidad de actualizar todos los nodos de la red y su continuo crecimiento y picos de transacciones. Mientras una transacción con MasterCard tarda unos pocos segundos, una con Ethreum lleva varios minutos y una con BitCoin puede tardar hasta unas horas. Además, en ocasiones, la transacción que ser cancelada y la inmutabilidad de la información en blockchain, crea retos cuando una entrada tiene que ser borrada o modificada. Del mismo modo, no es tampoco competitiva para realizar transferencias de dinero nacionales, que ya pueden ser ejecutadas actualmente por los bancos en unas pocas horas y de forma gratuita.

Sin embargo, blockchain sí que aportaría mejoras sustanciales en las transferencias de dinero internacionales. Las transferencias bancarias internacionales pueden llevar varios días, por lo que no hay restricciones en utilizar blockchain por problemas de latencia. Además, requieren de pocos datos (nombre del emisor, nombre del receptor, cuenta origen, cuenta destino, cantidad, moneda y fecha), por lo que pueden almacenarse muy fácilmente en blockchain. Finalmente, estas transferencias atraviesan varios bancos, reduciendo la confianza y acumulando comisiones que pueden aumentar el coste de la transacción por encima del 5%, con lo que la reducción de intermediarios con blockchain supone un claro beneficio económico. Blockchain también tendrá un importante papel en el mercado de capitales e inversión (acciones, bonos, derivados, etc.), productos de crédito, productos de ahorro, contabilidad y auditoría de transacciones financieras, etc.

Los bancos, aseguradoras, notarías, etc., podrían trabajar con contratos inteligentes, personalizándolos más al perfil concreto de cliente, agilizando los trámites y reduciendo sus costes. El sector público también puede beneficiarse mucho de blockchain, permitiendo una importante reducción de costes y un mejor servicio a ciudadanos y empresas. Entre las aplicaciones está el registro de títulos de la propiedad, el control de subvenciones, el voto electrónico, los registros sanitarios, la gestión de licencias, etc.

Blockchain puede aportar mejoras a la industria del entretenimiento y medios, por ejemplo, pueden lanzar servicios para manejar más eficientemente las licencias y los pagos de royalties o mejorar las medidas de audiencia y detectar y combatir el fraude. En las industrias que tienen procesos de fabricación y distribución, hay beneficios por la mejora de la transparencia en toda la cadena de suministro, gestionando mejor la información relacionada con el origen del producto, precio y ubicación, además de la gestión logística y del transporte. Estas mejoras ayudarán a optimizar las cantidades de unidades y su disponibilidad en tiendas. También es una tecnología muy prometedora para luchar contra la falsificación de productos y marcas. Blockchain puede también jugar un rol importante en el sector de las telecomunicaciones, en aspectos como la detección de fraude, la gestión de identidad, la autenticación y gestión de la seguridad en IoT, etc.

Bibliografía

  1. "Blockchain Basics. A Non-Technical Introduction in 25 Steps". Daniel Drescher. Apress, 2017.
  2. "Mastering Bitcoin: Unlocking Digital Cryptocurrencies". Andreas M. Antonopoulos. O’Reilly, segunda edición, 2017.
  3. "Blockchain for dummies". Tiana Laurence, John Wiley & Sons, 2017. (enlace)
  4. "OECD Blockchain Primer". OCDE (Organización para la Cooperación y el Desarrollo Económicos), 2018. (enlace)
  5. "How Does a Blockchain Work – Simply". Xavier Savjee, Vídeo de YouTube, 2017.
  6. "Exploración de las tecnologías blockchain desde el punto de vista de la ciberseguridad y privacidad". Javier Areitio Bertolín. Conectrónica, nº 212, GM2 Publicaciones Técnicas, 2018.

Volver al listado de artículos