En este artĂculo, exploraremos los tipos de blockchain además de las ventajas de usar esta tecnologĂa, revelando cĂłmo la arquitectura blockchain no solo está transformando la industria financiera, sino tambiĂ©n redefiniendo paradigmas en sectores como la salud, la logĂstica y más allá. Por otro lado, no dejaremos de explorar sus inconvenientes y cuando no debemos usar la cadena de bloques.
Este es el segundo artĂculo de un serie que intenta aproximarse al conocimiento de la cadena de bloques desde un nivel intermedio. Los artĂculos de la serie son:
- Arquitectura blockchain, elementos más importantes y funcionamiento
- Tipos de blockchain. Ventajas e inconvenientes de usar la tecnologĂa de cadena de bloques
- Algoritmos de consenso y el teorema CAP
Hagamos un poco de memoria
¿Qué es una blockchain y cómo puede ayudar a un negocio?
La podemos definir como un libro mayor compartido e inalterable que facilita el proceso de registro de transacciones y de seguimiento de activos en la red de un negocio. Un activo puede ser prácticamente cualquier cosa de valor, y que gracias a la tecnologĂa de cadena de bloques, puede ser rastreada y autentificada.
Los negocios funcionan con informaciĂłn, por lo que rapidez y exactitud son dos factores clave. Las cadenas de bloques cumplen estos dos requisitos, proporcionando datos inmediatos, compartidos y completamente transparentes, almacenados en un libro mayor inalterable al que sĂłlo tienen acceso los miembros autorizados de la red. Una red blockchain permite hacer seguimiento de pedidos, pagos, cuentas, datos de producciĂłn, etc. con la ventaja de que todos los usuarios comparten la misma informaciĂłn.
Ventajas de usar la cadena de bloques
DescentralizaciĂłn
La descentralizaciĂłn es un concepto clave en la filosofĂa de esta tecnologĂa y a su vez, un beneficio obvio de la misma. No es necesario disponer de un intermediario (o regulador) para validar las transacciones, en su lugar se utiliza un mecanismo de consenso para acordar la validez de las mismas.
Transparencia y confianza
Al ser la informaciĂłn compartida por todos los nodos, todo el mundo puede consultarla, lo que permite que el sistema sea transparente (y por lo tanto confiable).
Inmutabilidad
Una vez que los datos han sido escritos en la blockchain, es extremadamente difĂcil cambiarlos. El mecanismo de anulaciĂłn de un transacciĂłn pasa por generar una nueva transacciĂłn que corrija a la anterior, lo que asegura la trazabilidad y transparencia de las mismas.
Disponibilidad
Dado que el sistema consta de un gran nĂşmero de nodos peer-to-peer, y los datos se replican y actualizan en cada nodo, el sistema se muestra altamente redundado y por ello, disponible. Incluso en el caso que algunos nodos quedaran aislados de la red, Ă©sta en su conjunto seguirĂa funcionando.
Altamente seguro
Todas las transacciones en una cadena de bloques están criptográficamente aseguradas y por lo tanto, la red se beneficia de un alto grado de integridad. Todas las transacciones publicadas desde los nodos en la cadena se verifican en función de un conjunto predeterminado de reglas conocidas por todos. Esto hace que sólo se seleccionen las transacciones válidas para su inclusión en el nuevo bloque a generar. Este elevado grado de transparencia juega en contra de la confidencialidad que muchas instituciones financieras y otras industrias requieren en sus modelos de negocio.
SimplificaciĂłn de paradigmas actuales
El modelo actual en muchas industrias, como las finanzas o la salud, es descentralizado. En este modelo, las entidades mantienen sus propias bases de datos y el intercambio de informaciĂłn puede ser muy difĂcil debido a la naturaleza dispar de los sistemas involucrados. Sin embargo, como una blockchain puede servir como un Ăşnico libro mayor compartido entre muchas partes interesadas, esto puede resultar en la simplificaciĂłn del modelo y en un aumento de la eficiencia al reducir la complejidad de gestionar los sistemas separadamente mantenidos por cada entidad.
Negociaciones más rápidas
En la industria financiera, especialmente en las transferencias, la cadena de bloques puede desempeñar un papel vital al permitir la liquidación rápida de las operaciones. Blockchain no requiere un proceso largo de verificación, conciliación y liquidación porque todos disponen de una sola versión de datos acordados en un libro mayor compartido entre las organizaciones financieras.
Ahorro de costos
Como no se requiere de un tercero de confianza o de una entidad reguladora, se pueden reducir drásticamente las comisiones de las operaciones financieras.
Smart Contracts
Una blockchain es una plataforma en la que se pueden ejecutar programas que implementan lĂłgica empresarial en nombre de los usuarios de manera automatizada. Esta es una caracterĂstica muy Ăştil, pero no todas las cadenas de bloques disponen de lenguajes de programaciĂłn de alto nivel capaces de desarrollar esta funcionalidad. Plataformas blockchain más nuevas como Ethereum y MultiChain sĂ lo permiten, pero cadenas de bloques como la de Bitcoin quedan limitadas al apunte de transacciones.
Retos e inconvenientes
Como ocurre con cualquier tecnologĂa, existen algunos desafĂos que deben superarse para hacer que el sistema sea más robusto, Ăştil y accesible. Los problemas más destacados de blockchain son los siguientes:
- Escalabilidad: Actualmente, las redes blockchain no son tan escalables como las redes financieras actuales. Esta es un área conocida de preocupación y en la que existe un investigación activa.
- Privacidad y confidencialidad: La privacidad es una preocupación en blockchains de tipo público como Bitcoin donde todos pueden ver cada transacción. Esta transparencia no es deseable en muchas industrias como la financiera, legal o médica. Es por ello que se está desarrollando mucha investigación en cadenas de bloques menos públicas y con mecanismo de consenso muy diferentes.
- TecnologĂa relativamente inmadura: En comparaciĂłn con los sistemas informáticos tradicionales que se han beneficiado de dĂ©cadas de investigaciĂłn, blockchain sigue siendo una tecnologĂa nueva y requiere de mucha I+D para lograr la madurez. Es lĂłgico que las grandes inversiones suelan apostar por esquemas más consolidados.
- AdopciĂłn: La percepciĂłn que se tiene de blockchain es que se trata de una tecnologĂa incipiente. Aunque esta perspectiva está cambiando, todavĂa hay un largo camino por recorrer antes de su adopciĂłn más generalizada. El reto es permitir que las redes blockchain sean más fáciles de usar para que la aceptaciĂłn pueda aumentar. Sin duda, la superaciĂłn de los retos vistos anteriormente ayudarán en este aspecto.
- RegulaciĂłn: La falta de regulaciĂłn propia de un sistema altamente descentralizado como es la cadena de bloques es vista como una barrera para su adopciĂłn por sectores y consumidores que tienen asociado cierto nivel de confianza al hecho de que exista una entidad gobernante o control regulador. Este es sin duda un factor inhibidor para muchos potenciales usuarios de esta tecnologĂa.
Tipos de blockchain
Libros contables distribuidos (Distributed Ledger o DLC)
Los DLT son una tecnologĂa que permite registrar y almacenar informaciĂłn, como transacciones y activos, en una red de nodos de forma descentralizada. Esta descentralizaciĂłn permite que la informaciĂłn sea más segura y resistente a ataques o manipulaciones, ya que se requiere el consenso de la mayorĂa de los nodos para validar y actualizar la informaciĂłn.
El blockchain es una forma especĂfica de libro contable distribuido constituido por una cadena de bloques que contiene conjuntos de transacciones. Cada bloque está enlazado al bloque anterior a travĂ©s de un cĂłdigo criptográfico llamado hash. Cuando se añade un nuevo bloque a la cadena, se verifica y se actualiza en todos los nodos de la red, haciendo que la informaciĂłn sea difĂcil de alterar.
La principal diferencia entre DLT y blockchain es que, mientras que todos los blockchains son libros contables distribuidos, no todos los DLT son blockchains. El blockchain es una implementaciĂłn especĂfica de DLT que utiliza una estructura de datos en cadena y un mecanismo de consenso basado en prueba de trabajo (PoW) o prueba de participaciĂłn (PoS). En cambio, otros DLT pueden utilizar diferentes estructuras de datos y mecanismos de consenso segĂşn sus necesidades y objetivos.
Por lo tanto, la diferencia entre DLT y blockchain radica en la forma en que se organizan, almacenan y actualizan los datos, asĂ como en los mecanismos de consenso utilizados para mantener la integridad y seguridad de la informaciĂłn.
Un ejemplo de un libro contable distribuido que no utiliza bloques de transacciones es Corda de R3. Se trata de un libro contable distribuido que se desarrollĂł para registrar y administrar acuerdos y se enfoca especialmente en la industria de servicios financieros.
Blockchain pĂşblicas
Como su nombre sugiere, las blockchains públicas no son propiedad de nadie y son proyectos generalmente open source. Están abiertas al público y cualquiera puede participar como nodo en el proceso de toma de decisiones. Los usuarios pueden o no ser recompensados por su participación. Todos los usuarios de estas ledger sin permiso o sin autorización mantienen una copia de la cadena de bloques en cada uno de sus nodos locales y utilizan un mecanismo de consenso distribuido para decidir el estado final de la información. Bitcoin y Ethereum son consideradas blockchains públicas.
Entre sus ventajas destacaremos su independencia y transparencia. Entre sus inconvenientes resaltaremos su lentitud y los problemas que en ocasiones tienen de escalabilidad.
Blockchain privadas
Las blockchains privadas se caracterizan por estar controladas por una sola organizaciĂłn o grupo. Hay varias blockchains disponibles en esta categorĂa, como Kadena y Quorum. Opcionalmente, ambas blockchains tambiĂ©n pueden funcionar en modo pĂşblico si es necesario, pero su propĂłsito principal es proporcionar una blockchain privada.
Blockchain semi-privadas
Disponen de una parte privada y otra pĂşblica. Hay que tener en cuenta que esto sigue siendo solo un concepto a dĂa de hoy y aĂşn no se han desarrollado aplicaciones con el bagaje suficiente para operar en el mundo real. Con una blockchain semi-privada, la parte privada está controlada por un grupo de individuos, mientras que la parte pĂşblica está abierta a la participaciĂłn de cualquier persona.
Este tipo de blockchain también puede denominarse modelo semi-descentralizado, ya que la cadena de bloques es controlada por una sola entidad, a la vez que permite que múltiples usuarios se unan a la red siguiendo los procedimientos apropiados.
Sidechain
Más conocidas como pegged sidechains; este es un concepto mediante el cual las criptomonedas pueden moverse de una cadena de bloques a otra y viceversa. Un uso tĂpico lo encontramos la creaciĂłn de nuevas criptomonedas alternativas (altcoins) donde las monedas originles se queman como prueba de una participaciĂłn adecuada en la segunda moneda. Quemar (burnt) o quemar las monedas (burning coins) en este contexto significa que las monedas se envĂan a una direcciĂłn que no se puede gastar, y este proceso hace que las monedas quemadas sean inaccesibles.
Este mecanismo se utiliza para arrancar una nueva moneda o introducir escasez, lo que resulta en un aumento del valor de la moneda. Este mecanismo también se llama prueba de quemado (proof of burn) y se utiliza como un método alternativo para el consenso distribuido en lugar de PoW y Proof of Stake (PoS).
El ejemplo proporcionado anteriormente para quemar monedas se aplica a una cadena lateral anclada unidireccional. Un segundo subtipo es la cadena lateral anclada bidireccional, que permite el movimiento de monedas desde la cadena principal a la cadena lateral y de vuelta a la cadena principal cuando sea necesario.
Este proceso posiblita la creación de contratos inteligentes para la red Bitcoin. Rootstock es uno de los principales ejemplos de una sidechain, que permite el desarrollo de contratos inteligentes para Bitcoin utilizando este modelo. Funciona permitiendo un anclaje bidireccional para la cadena de bloques de Bitcoin, lo que resulta en una capacidad de procesamiento mucho más rápida.
Libro mayor autorizado (Permissioned Ledger)
Se trata de una cadena de bloques donde los participantes de la red ya son conocidos y confiables. Los libros mayores autorizados no necesitan usar un mecanismo de consenso. En su lugar recurren al uso de un protocolo de acuerdo para mantener una versiĂłn compartida del estado de los registros en la cadena de bloques. Para la verificaciĂłn de las transacciones existen unos verificadores previamente acordados por una autoridad central lo que evita la necesidad de mineros.
La cadena de bloques puede ser pública o privada pero el control de acceso siempre será regulado. De esta manera, Bitcoin puede convertirse en un libro mayor autorizado siempre que se introduuzca una capa de control de acceso que verifique la identidad del usuario.
Libro mayor compartido (Shared Ledger)
Este es un término genérico que se utiliza para describir cualquier aplicación o base de datos que es compartida por el público o un consorcio. En general, todas las cadenas de bloques se clasifican como libros mayores compartidos.
Blockchain propietaria totalmente privada
Este tipo de cadena de bloques no es de gran aplicaciĂłn pues se desvĂan del concepto principal de descentralizaciĂłn. Sin embargo, en entornos privados especĂficos dentro de una organizaciĂłn, puede darse el caso de existir una necesidad de compartir datos y proporcionar algĂşn nivel de garantĂa de la autenticidad de los datos.
Un ejemplo de este tipo de blockchain podrĂa ser permitir la colaboraciĂłn y el intercambio de datos entre varios departamentos gubernamentales. En ese caso, no se requerirĂa de un mecanismo de consenso complejo, aparte de SMR simple y un protocolo de acuerdo con entre verificadores centrales conocidos. En estos casos, los tokens pueden llegar a no ser realmente necesarios, aunque podrĂa ser interesante explorar la posibilidad que fueran usados como un medio para transferir valor o representar activos del mundo real.
Blockchains tokenizadas
Estas son las cadenas de bloques que todos conocemos, en las quese generan criptomonedas como resultado de un proceso de consenso a travĂ©s de la minerĂa o la distribuciĂłn inicial. Bitcoin y Ethereum son dos de los ejemplos principales de este tipo de blockchain.
Blockchain sin token (Tokenless Blockchain)
Estas cadenas de bloques ese caracterizan por que no tienen una unidad básica para la transferencia de valor. Sin embargo, aún son valiosas en situaciones en las que no es necesario transferir valor entre nodos y solo se requiere compartir datos entre varias entidades de confianza. Esto es similar a las blockchains completamente privadas, la única diferencia es que no se requiere el uso de tokens.
También pueden ser vistas como un registro distribuido compartido utilizado para almacenar y compartir datos entre los participantes. Tiene sus beneficios en cuanto a la inmutabilidad, la protección contra manipulaciones, la seguridad y las actualizaciones impulsadas por el consenso, pero no se utiliza para una aplicación común de blockchain de transferencia de valor o criptomonedas.
La mayorĂa de las blockchains con permisos pueden verse como una tokenless blockchains. Algunos ejemplos son: Hyperledger Fabric o Quorum. Los tokens se pueden construir en estas cadenas como una aplicaciĂłn, pero intrĂnsecamente estas blockchains no tienen un token asociado con ellas.
ÂżQue es el consenso en un sistema distribuido?
En sistemas cliente-servidor es relativamente fácil llegar a un acuerdo entre dos nodos, pero cuando varios nodos participan en un sistema distribuido y necesitan ponerse de acuerdo sobre un valor único, es cuando empiezan los problemas. El consenso es el proceso de alcanzar un acuerdo sobre un estado o valor común entre múltiples nodos desconfiados a pesar del fallo de algunos nodos participantes. Para lograr el consenso, podemos recurrir a diferentes algoritmos.
En nuestro siguiente artĂculo profundizaremos en los muy diversos tipos de algoritmos de consenso.