Blockchain Unblocked - Qué es y qué no es
La tecnología Blockchain se ha convertido en un tema de gran debate en los últimos dos años. No hay duda de que la tecnología es muy prometedora para el futuro... y no sólo lo piensan las startups: IBM, Microsoft, Cisco, SAP y muchas otras grandes empresas están invirtiendo miles de millones de dólares en la investigación de blockchain.
Pero, como ocurre con muchas nuevas tecnologías, la "expectación" generada en torno a blockchain hace extremadamente difícil discernir la realidad de la ficción y las verdaderas promesas del bombo publicitario. Dependiendo de a quién se crea, blockchain revolucionará toda la informática tal y como la conocemos o se desvanecerá débilmente bajo una carga de promesas incumplidas. La verdad está casi con toda seguridad en algún punto intermedio. Mi objetivo aquí es proporcionar alguna información destilada y, con un poco de suerte, disipar parte de la neblina que rodea a la tecnología blockchain.
Conceptos básicos de Blockchain:
- En esencia, una cadena de bloques es un libro de contabilidad compartido.
- La tecnología blockchain ofrece un mecanismo para que múltiples participantes se pongan de acuerdo sobre el contenido del libro de contabilidad, de forma descentralizada. Este conjunto de participantes suele denominarse "red"de cadenas de bloques (más adelante hablaremos de las redes de cadenas de bloques).
- Los libros de contabilidad de las cadenas de bloques pueden ser públicos y estar a disposición de todo el mundo, o privados y estar disponibles sólo para un grupo cerrado.
- Blockchain apareció originalmente como la implementación del libro de contabilidad pública detrás de Bitcoin. La blockchain de Bitcoin sigue siendo muy activa, pero otras implementaciones de blockchain como Ethereum han empezado a ganar tracción.
- Al igual que los libros de contabilidad de la vida real, las cadenas de bloques contienen transacciones. En un sentido más amplio, pueden contener información diversa, como contratos o declaraciones de derechos de propiedad. Sin embargo, para ser útiles, estas transacciones deben ser comprendidas por la mayoría de los participantes en la red blockchain.
- Blockchain utiliza firmas digitales, normalmente criptografía de curva elíptica (ECC) y hashes SHA-2, como base criptográfica para todas las transacciones.
- Como con cualquier sistema de criptografía de clave pública o "asimétrica", proteger las claves privadas utilizadas con la cadena de bloques es de vital importancia. Por ejemplo, con Bitcoin, perder tus claves privadas significa literalmente perder tu dinero.
Lo que NO ES Blockchain:
- Blockchain no es no es rápido. Las cadenas de bloques pueden contener cientos de miles, o incluso millones de transacciones; cada transacción se firma con una operación de clave pública, que es inherentemente cara desde el punto de vista computacional. Por ejemplo, la validación inicial de la cadena de bloques de Bitcoin puede tardar díasincluso con un PC moderno hardware.
- Blockchain no es no es simple. Como ha dicho el reputado experto en seguridad Bruce Schneier, "La complejidad es el enemigo de la seguridad". La idea de un libro de contabilidad compartido, e incluso de una cadena de "bloques" firmados consecutivamente, parece bastante sencilla. Sin embargo, los mecanismos que garantizan que los bloques creados de forma maliciosa sean identificados y descartados por la red blockchain pueden llegar a ser extremadamente complejos. Si a esto le sumamos los esfuerzos en torno a la escalabilidad, como las cadenas laterales, las cadenas parciales, los clientes ligeros, la poda, la fragmentación y las cadenas cruzadas, el factor de complejidad es aún mayor.
Otros aspectos importantes de Blockchain:
Blockchain, y su idea central de un libro de contabilidad descentralizado y de confianza consensuada, ha alimentado una enorme cantidad de especulación e imaginación sobre el futuro de la tecnología. Al considerar la aplicabilidad a casos de uso específicos, hay algunas cosas importantes que hay que saber sobre la cadena de bloques y su funcionamiento. Muchas de ellas son relativamente exclusivas de los sistemas basados en blockchain:
- Alta disponibilidad. Blockchain requiere una red de masa crítica de participantes "siempre activos". Aunque cada nodo de una red blockchain no tiene por qué mantener un tiempo de actividad continuo, la red blockchain requiere que un gran número de nodos estén operativos en todo momento.
- Seguridad en números: Para obtener un libro de contabilidad mutuamente acordado, sin una autoridad central, blockchain requiere que la gran mayoría de los participantes de la red no sean malintencionados ni coludidos. Una de las amenazas contra el modelo de seguridad descentralizada de blockchain es que los delincuentes organizados pueden ser capaces de dirigir una cantidad extrema de recursos informáticos hacia la creación de bloques fraudulentos que lleguen a ser aceptados por la red. La medida utilizada por algunos analistas de seguridad es que una blockchain no puede tolerar más del 50% de "poder de hashing adversario" como límite teórico absoluto. Otros han señalado que ya el 50% del "hashpower" de la red Bitcoin está controlado por sólo cinco entidades, lo que sin duda es preocupante.
- Actividad continua: Además de lo anterior, la seguridad de los sistemas basados en blockchain depende de que los participantes en la red de blockchain estén continuamente colocando nuevos bloques en la cadena, a un ritmo más rápido del que podrían hacerlo un conjunto de adversarios organizados. Por lo tanto, independientemente de cómo se utilicen las transacciones u otra información de la cadena de bloques, el sistema debe estar concebido de tal manera que los participantes en la red estén continuamente trabajando para añadir bloques a la cadena, más rápido de lo que los participantes deshonestos son capaces de añadir sus propios bloques a la cadena.
Lo que viene - Blockchain y PKI
Con todo esto en mente, no hay duda de que la tecnología blockchain es muy prometedora en determinadas aplicaciones. Los experimentos del sector bancario para asegurar las transferencias interbancarias con una cadena de bloques privada son un gran ejemplo. Sin embargo, como ocurre con cualquier tecnología nueva, también sigue habiendo muchas posibilidades de que se produzcan baches en el camino a medida que maduran nuestros conocimientos sobre blockchain. Blockchain sigue siendo una de las nuevas tecnologías más interesantes que habrá que seguir en los próximos años.
En futuros posts analizaremos las formas en que la PKI y la tecnología Blockchain pueden complementarse para resolver problemas de formas más elegantes.