Blockchain se ha convertido en el término más de moda últimamente dentro del sector tecnológico. Ya sea para entidades financieras que estén procesando transacciones bancarias en milisegundos o empresas transportando productos perecederos entre países, parece que cualquier compañía que no esté investigando esta tecnología, la misma tecnología que alimenta criptomonedas como Bitcoin, seguramente seguirá el camino del inevitable desplazo disruptivo. Pero, ¿qué es esta mágica «cadena de bloques» y cómo se puede utilizar una tecnología comúnmente asociada con criptomonedas para cambiar industrias enteras tal y como las conocemos? ¡Descubrámoslo!
Blockchain
Al igual que el término cloud el término blockchain está muy sobrecargado y muchas veces se usa incorrectamente. Sin profundizar en los orígenes históricos detrás de la confusión sobre el término en sí, comprendamos exactamente qué es una cadena de bloques.
Una blockchain no es más que una lista de transacciones almacenadas en muchas máquinas diferentes. También llamado distributed ledger (de ahí las tecnologías DLT) o «libro mayor distribuido», las modificaciones en esta lista transaccional se replican a todas las máquinas conectadas, conocidos como peers o «pares», muy rápidamente. Una blockchain se implementa como una pieza de software. En teoría, este software contiene una base de datos local con su propio conjunto de datos replicado, capaz de notificar a otros pares cuando se modifican los datos y garantizar que todos los pares mantengan los mismos datos. Por lo tanto la primera funcionalidad es servir de sistema de comunicación.
Si bien cada implementación de blockchain es diferente, la mayoría proporciona piezas clave de funcionalidades más allá de la capacidad de almacenar una lista idéntica de transacciones en múltiples máquinas. Así pueden proporcionar diferentes sistemas de permiso para establecer quién puede leer y escribir transacciones, y quizás lo más importante es que pueden garantizar criptográficamente la validez de las transacciones, haciendo que las modificaciones maliciosas sean notoriamente obvias o absolutamente imposibles.
Es importante entender que no existe una sola «cadena de bloques» igual que no existe una única «nube», más bien, una blockchain es una red peer-to-peer con un ledger distribuido que se crea al ejecutar el mismo software en muchos ordenadores diferentes.
¿Y Bitcoin?
La idea de una cadena de bloques como un libro mayor descentralizado que puede garantizar la validez de cada transacción se presta perfectamente al caso de uso de transmisión de valor y pagos monetarios. Bitcoin es una forma de moneda digital, una forma de enviar, recibir y almacenar valor, que usa una cadena de bloques para todos los pagos. En realidad en el whitepaper de Bitcoin de su creador Sastoshi Nakamoto, lo definió como digital cash, aunque con el tiempo se ha transformado de una forma de dinero y forma de pago en una forma de activo digital capaz de conservar e incluso aumentar de valor con el tiempo.
La blockchain sobre el que se construye Bitcoin tiene la misma arquitectura que la descrita anteriormente: muchas computadoras individuales ejecutan el software oficial de Bitcoin y tienen listas idénticas de todas las transacciones de bitcoins que han ocurrido hasta la fecha. A medida que se cierran nuevas transacciones, por ejemplo cuando un usuario envía bitcoins a otro usuario, las transacciones son validadas de manera independiente por cada ordenador que ejecuta el software, utilizando algoritmos complejos y de elevado coste computacional. Estos algoritmos de validación verifican nuevas transacciones utilizando técnicas criptográficamente seguras que se basan en todas las transacciones anteriores. Por lo tanto, dado que cada par verifica de forma independiente y simultánea las nuevas transacciones, y debido a que esta verificación depende de la criptografía de todas las transacciones anteriores, es muy difícil para un solo par crear, destruir o modificar transacciones maliciosamente. Esta seguridad con garantía matemática es la razón por la cual cada una de las transacciones de bitcoin realizadas desde el principio pueden verse públicamente de forma segura. De anonimidad podemos hablar en otro artículo.
Es fundamental tener una comprensión básica de cómo funciona la cadena de bloques bitcoin para responder a su pregunta más común: «¿De dónde vienen los bitcoins?». Las computadoras que ejecutan el software de código abierto de Bitcoin, y verifican la validez transaccional, reciben una cantidad fraccionaria de bitcoin por cada transacción que verifican, un proceso comúnmente conocido como «minería» de bitcoins. El cálculo involucrado en la verificación y adición de transacciones es muy difícil y, por lo tanto, requiere computadoras potentes que consumen grandes cantidades de electricidad. Por diseño, la dificultad de estos algoritmos aumenta a medida que más pares instalan el software Bitcoin con la esperanza de verificar transacciones para extraer bitcoin. Esto significa que el costo monetario de extraer un solo bitcoin en términos de electricidad y espacio físico (más de 1.000 dólares en el momento de esta publicación) aumenta a medida que aumenta el uso de la red. Este hecho importante, la prueba de trabajo realizado, junto con la inevitable especulación de los inversores, impulsa directamente el valor fiduciario de cada bitcoin.
Blockchain en los negocios
Bitcoin ha demostrado ser un método eficaz de transferir valor debido a ciertas ventajas clave que ofrece sobre los sistemas de pago tradicionales: las transacciones son instantáneas (o eran en un principio pero debido a varios factores el embotellamiento reciente hace dilatar y encarecer las transacciones, pero esto es debate para otro futuro post), no involucran bancos (permite acceder a pagos internacionales a más de 3 mil millones de personas sin acceso a servicios bancarios), los registros de transacciones son permanentes y las transacciones pueden ser probadas. Pero aunque Bitcoin consigue más titulares y noticias sensacionalistas en los medios, su tecnología blockchain subyacente es el foco de las empresas de todo el plantea por las mismas ventajas comerciales potenciales: descentralización, inmutabilidad y capacidad de prueba. Aunque no falte vaporware que recuerde la era de las primeras puntocom, prometiendo resolver problemas que los usuarios nunca supieron que tenían usando el «poder de la cadena de bloques», los casos de uso reales para blockchains en los negocios existen también fuera de las finanzas y tienen un gran futuro. Veamos las ventajas una por una.
Descentralización
Hasta la irrupción de blockchain las empresas confíaban en un modelo de servicio centralizado donde los datos son almacenados o procesados por una sola entidad. Pensemos en los servicios de redes sociales donde los datos de millones de usuarios son almacenados en bases de datos centralizadas: los usuarios dependen exclusivamente del servicio de las redes sociales para la integridad y longevidad de sus datos. ¿Qué sucede si el servicio deja de funcionar, experimenta una violación de datos o se elimina inexplicablemente el contenido del usuario? Al serializar ciertos datos y almacenarlos como transacciones en una cadena de bloques pública en lugar de en una base de datos centralizada tradicional, los riesgos de alteración de datos maliciosos podrían reducirse en gran medida. Por ejemplo, si un usuario se ha visto comprometido y se modifican maliciosamente sus datos, todos los demás participantes rechazarían el cambio, lo que limitaría drásticamente el efecto que los hackers puede tener en una red social. Del mismo modo, si un par se bloquea por completo, todos los demás pares continuarán operando de forma transparente para los usuarios finales. Un ejemplo real y que lleva funcionando desde julio de 2016 con mucho éxito es steemit, una red social que pasó en poco más de un mes a convertirse una de las webs más visitadas donde los usuarios no notan que están operando sobre una blockchain, al tiempo que son recompensados por sus contenidos y curación.
Inmutabilidad
Otro caso de uso en el que se está invirtiendo activamente en el contexto de la tecnología de cadena de bloques distribuida es el registro inmutable de eventos. Este tipo de tecnología es mucho más común de lo que parece, por ejemplo, consideremos un servicio de automóvil compartido donde los usuarios paguen por ofrecer y conducir coches compartidos. En una arquitectura de base de datos tradicional, los registros de quién revisó qué coche se mantendría en una tabla de base de datos. ¿Qué sucede si un hacker accede a varios coches, no los devuelve y borra los registros de la base de datos que probaron quién usó cada coche por última vez? Aunque existen medidas contra este tipo de piratería, almacenar las transacciones de uso en una cadena de distribución distribuida puede mitigar este riesgo casi por completo. Debido a que se requiere un registro de transacciones previas para verificar nuevas transacciones, la re-escritura del historial de blockchain es extremadamente difícil en una red de múltiples pares bien distribuida. Aquí, como en todo hay blockchains inmutables como la de bitcoin, en la que si hay discrepancia se resuelve con un fork y pasa a ser una nueva cadena, y otras como ethereum, que ante el caso de la DAO, decidió revertir la cadena al bloque anterior al robo.
Demostrabilidad
De manera similar a la inmutabilidad, la arquitectura de un sistema basado en blockchain se presta intrínsecamente a una noción de demostrabilidad: se puede probar que una transacción particular tuvo lugar en un momento dado. En el contexto de Bitcoin y otras aplicaciones financieras de la tecnología de registro distribuido, la capacidad de poder demostrar cada transacción no solo es útil, sino que también cambia los modelos de negocio pudiendo establecer nuevas formas de relación en los negocios. Algunas blockchains incluso admiten la capacidad de escribir código que se ejecuta cuando ocurren ciertas transacciones, dando lugar a los smart contracts o contratos «inteligentes» donde las reglas son claras y todas las partes implicadas acceden a la misma información. Las ventajas que ofrece la capacidad de probar que las transacciones tuvieron lugar van más allá de las finanzas. Consideremos una cadena de suministro de pesca que conecte a los pescadores con la pesca y la pesca con la lonja, y esta con los restaurantes. El dueño del restaurante debería pagar los precios de los peces en función de cuánto debía pagar la lonja al pescador. ¿Cómo puede el dueño del restaurante estar seguro de que están pagando un precio adecuado y de la trazabilidad del género? Si todas las partes involucradas fueran parte de la misma red basada en blockchain, y todas las transacciones se registraran en una cadena de bloques colectiva, el propietario del restaurante podría tener la garantía de que el precio que paga y cuando lo recibirá se deriva exactamente de una transacción comprobable en la blockchain.
¿Y el beneficio?
Si bien los beneficios de la tecnología blockchain suenan prometedores, la aplicaciones exitosas y generalizadas de las blockchains fuera del sector financiero son todavía escasas. En finanzas los casos de éxito están ampliamente demostrados y ya están ahorrando millones en costes a los que apostaron por la innovación frente a la forma anterior de hacer las cosas. Ejemplos notables son las transferencias internacionales entre bancos, procesamiento y liquidación en gestión de activos, procesamiento de reclamos de seguros, envíos de remesas, financiación de startups,… Se está invirtiendo mucho capital y talento pero como toda tecnología emergente hay mucho de prueba error. Las industrias han estado operando utilizando modelos tradicionales, centralizados y basados en bases de datos relacionales durante muchos años a pesar de los robos de datos y los cortes de servicio. La promesa de la descentralización también viene con advertencias filosóficas: si los intermediarios son desplazados de los servicios comunes, como servicios de compartir el coche, ¿quién asume la responsabilidad cuando se producen problemas inevitables no objetivos?
Por diseño, la descentralización de datos usando blockchains necesita múltiples computadoras o «pares» para verificar transacciones de forma independiente entre sí. Esto funciona bien en el contexto de una criptomoneda como bitcoin, donde los validadores de seguridad son incentivados a convertirse en verificadores con la promesa de obtener recompensas mineras, pero en otros contextos se ha de encontrar cómo se incentivaría a los usuarios a convertirse en verificadores de las transacciones basadas en blockchain, aquí entra la teoría de juegos en la que se basa bitcoin, steemit y otras aplicaciones de blockchain. Una de las soluciones que se están probando es pasar de un sistema de prueba de trabajo (PoW o Proof of Work) a un sistema de seguridad basado en prueba de participación (PoS o Proof of Stake). Si solo una compañía actúa como el único par en una red blockchain, es tan central como una base de datos tradicional. Empresas como IBM están investigando activamente soluciones en la cadena de suministro basadas en Hyperledger Fabric, implementación de la Linux Foundation, similares al ejemplo descrito anteriormente para verificar la integridad del producto.
A pesar de los desenfrenados intentos de la industria de utilizar la tecnología blockchain para todo y resolver problemas aparentemente inexistentes, léase CryptoKitties, la aplicación que ha congestionado la blockchain ethereum. Y es que cuando la única herramienta que tienes es una martillo todo te parecen clavos. Pese a repetidos scams en las ICOs, aplicaciones absurdas y vaporware, la historia de la cadena de bloques apenas ha comenzado y tiene un futuro muy prometedor. La investigación en este área está atrayendo al mejor talento, el vibrante sector basado en blockchain se centra en áreas tales como los contratos legales, verificación de identidad, registros de bienes inmuebles, dinámica de cadenas de suministro, registros médicos, IoT e industrias microeconómicas que tradicionalmente involucran intermediarios, incluyendo el intercambio de viviendas, proveedores de computación y el almacenamiento de datos. Si bien la mayoría del uso actual de blockchains para problemas no financieros está aún en fase embrionaria, al igual que con cualquier tecnología nueva, la experimentación debe llevarse a cabo antes de que una tecnología se pueda aplicar correctamente.
Futuro de Blockchain
La emoción que los beneficios potenciales de la tecnología blockchain han desatado en casi todas las industrias es, a mi juicio, exagerada, y mantener una comprensión concreta de los nuevos conceptos en un paisaje tan emergente puede ser difícil, además del ritmo al que se desarrollan nuevas ideas y aplicaciones. Hay aplicaciones que sinceramente tardarán algunos años en poder ser aplicadas en sistemas de producción. Las explicaciones divergentes del término «blockchain» y su inevitable acoplamiento con el término «Bitcoin» solo aumentan la confusión, pero un hecho permanece claro: la inmutabilidad descentralizada de los datos que puede proporcionar una blockchain, especialmente dentro de una red compuesta por participantes que desconfían por naturaleza de los demás es un cambio de paradigma. Proyectos como Interledger, que pretender facilitar el intercambio de datos entre diferentes blockchains,¡ abren una puerta al nuevo tipo de aplicaciones de pago que ya no deben limitarse a una única red. Al igual que el auge de las puntocom de los años 90, la cuestión de la tecnología blockchain ha cambiado de un «qué pasaría si» a «qué es lo que viene después». Recordemos que la burbuja de las puntocom explotó en 2002 pero las empresas de Internet que sobrevivieron (Amazon, eBay, Google) hoy son las que tienen una mayor valoración y poder.