NXTER.ORG

Ardor Frente a la Competencia, Parte 5: Stratis

Este artículo forma parte de una serie que pretende comparar Ardor con otros proyectos blockchain con características u objetivos similares. A continuación puedes encontrar las entradas anteriores:

Esta semana he analizado Stratis, una plataforma blokchain-como-servicio basada en el protocolo Bitcoin.

Stratis

El objetivo del proyecto Stratis es permitir a las empresas crear sus propias blockchains a medida, partiendo de una serie de funciones predefinidas. Además, el Grupo Stratis, el cual dirige el desarrollo de Stratis, ofrecerá servicios de consultoría para ayudar a los negocios a encontrar formas de usar la tecnología blockchain de manera efectiva, a la vez que, presumiblemente, también les ayudará a desplegar blockchains a medida en la plataforma Stratis.

Presentado de esta manera, Stratis aparenta ser muy parecido a Ardor. Pero la observar la mayoría de lo pormenores (al menos con los detalles disponibles públicamente sobre Stratis) las dos plataformas presentan diferencias significativas. En breve las exponemos.

Actualmente, la plataforma Stratis está compuesta de varias partes:

  • NBitcoin, una implementación integral de Bitcoin en C# inspirada en Bitcoin Core;
  • NStratis, un fork de NBitcoin que incorpora un algoritmo de minado de Prueba de Participación y un algoritmo alternativo de Prueba de Trabajo;
  • el Nodo completo Bitcoin de Stratis, que puede funcionar tanto en la red de Bitcoin como en la de Stratis, que sirve de base para el resto de la plataforma;
  • el Monedero Breeze, un monedero con verificación simplificada de pagos (simplified payment verification – SPV) tanto para Bitcoin como Stratis que implementa TumbleBit para convertir en privadas las transacciones; y
  • el módulo de Identidad de Stratis, que permite a terceras partes comprobar la identidad de la persona que controla una cuenta de Stratis.

Hay que apuntar que la mayoría de estos componentes todavía están en fase alfa.

En la lista hay que destacar especialmente la integración de TumbleBit en el Monedero Breeze. El Documento Técnico de TumbleBit es bastante denso; si estás interesado en los detalles, recomendaría leer en su lugar esta excelente presentación elaborada por dos de los autores. En pocas palabras, TumbleBit utiliza canales de pago unidireccionales para transferir los fondos desde una serie de pagadores hacia un intermediario llamado Tumbler, y desde el Tumbler a una serie de receptores, sin que ninguna de las partes tenga que depositar su confianza en la otra. El elemento diferencial sobre otras implementaciones de sistemas de pago es que TumbleBit usa firmas ciegas RSA de una manera inteligente, de manera que se evita que el Tumbler sepa que transacción entrante se corresponde con una determinada transacción saliente. Si muchas cuentas realizan transacciones usando el Tumbler entonces es imposible trazar la relación entre una cuenta receptora y la cuenta emisora que los envió. Ni siquiera el Tumbler puede enlazar ambas cuentas.

El Monedero Breeze de Stratis ofrece la funcionalidad TumbleBit tanto para Bitcoin como Stratis, haciéndolo útil para una audiencia mucho mayor que si solo se pudiese utilizar en la red de Stratis. Además, puesto que el protocolo TumbleBit utiliza un canal de pagos fuera de cadena (off-blockchain), es posible realizar muchos pagos usando el Tumbler en aproximadamente la misma cantidad de tiempo que tomaría realizar un solo pago.

El módulo de Identidad de Stratis está todavía en un estado de prueba de concepto, pero pese a ello ya es funcional. Los usuarios pueden acceder a sus cuentas de Microsoft, Google o LinkedIn usando la aplicación móvil de Identificación de Stratis y estos servicios notificarán a Stratis del inicio de sesión realizado. Una cuenta especial, propiedad de Stratis, almacenará la confirmación de este inicio de sesión creando un hash con la información de identificación personal (por ejemplo, nombre y dirección de email) y almacenándolo en la blockchain de Stratis.

La confirmación por parte de Google de que una persona posee una determinada cuenta de Gmail puede que no sea el servicio de identificación más práctico, pero es sencillo ver como el mismo mecanismo podría ser usado para demostrar la propiedad de una determinada información que sea mucho más difícil de verificar. Por ejemplo, un agente del gobierno podría confirmar que alguien ha presentado un documento de identificación con su foto, junto a un nombre y una dirección. Si el usuario puede proveer su nombre y una dirección de manera que concuerda con el hash presente en la blockchain, eso también podría convencer a un proveedor de servicios de que el usuario posee el correspondiente identificador con foto, puesto que el agente del gobierno ya ha confirmado anteriormente esas 3 porciones de información conjuntamente.

La integración de TumbleBit en el monedero Breeze y en el módulo de Identidad de Stratis son dos ejemplos de este tipo de características que Stratis pretende ofrecer en la plataforma. No estoy seguro de haber entendido completamente el funcionamiento de la arquitectura de Stratis pero, por lo que puedo entender, la idea es que la blockchain de Stratis delegue los procesos en segundo plano para cada nueva característica, tales como TumbleBit y la Identidad de Stratis, a un juego dedicado de nodos (masternodes). Por ejemplo, el futuro Nodo Breeze (no confundir con el monedero Breeze, el cual utiliza SPV en lugar de necesitar un nodo completo) será un masternode que dará servicio a Tumbler. De forma similar, existen planes para construir masternodes que procesen las transacciones de Identidad de Stratis, aunque no se realmente lo que esto significa y no puedo encontrar más detalles sobre ello.

En último lugar, es necesario mencionar que el equipo de Stratis ha planeado varias características más, siendo la más destacada el despliegue de cadenas laterales ancladas a la cadena de Stratis. Según lo entiendo, este será el principal mecanismo con el que Stratis para ofrecer a los clientes blockchains privadas y personalizables.

Desafortunadamente, no he sido capaz de encontrar más detalles acerca de como funcionarán las cadenas laterales en Stratis. El  whitepaper de Stratis hace referncia al Documento Técnico sobre Blockchains de Blockstream, pero esa es la única pista que he encontrado hasta ahora sobre el diseño de Stratis. Particularmente, creo que no es tan fácil asegurar y transferir valor entre dos blockchains sin tener al menos algunos mineros en cada cadena para validar todas las transacciones en ambas cadenas. Los detalles, incluyendo cómo el protocolo de la cadena lateral gestiona los forks y las reorganizaciones, son cruciales para poder valorar la seguridad de este mecanismo.

Incluso suponiendo que las transferencias entre la cadena de Stratis y las cadenas laterales son seguras, todavía queda pendiente el asunto de la seguridad de las mismas cadenas laterales. El Documento Técnico de Stratis afirma numerosas veces que la cadena de Stratis proveerá, de alguna manera, seguridad para sus cadenas laterales, pero no explica como lo hará. Típicamente, las cadenas laterales son completamente independientes y deben asegurarse por si mismas.

Comparación con Ardor

En Ardor, por su lado, la cadena madre (parent chain) es la que ofrece la seguridad para cada cadena hija (child chain)

En realidad, esta es una de las diferencias más importantes entre la arquitectura cadena madre / cadena hija de Ardor y las típicas implementaciones de las cadenas laterales. Desafortunadamente, sin más información técnica por parte del equipo de Stratis, es imposible de llevar acabo una comparación adecuada entre su diseño y el modo en que es enfocado por parte de Ardor.

Una comparación que podemos establecer es entre la característica TumbleBit de Stratis y la característica de Coin Shuffling de Ardor. (Nótese que el Coin Shuffling no estará disponible en la misma cadena de Ardor, sino que estará disponible en Ignis, su primera child chain, así como en todas aquellas child chains que quieran implementarlo) Esta característica es la implementación de Nxt del algoritmo de mezclado de monedas, que permite a un grupo de usuarios transferir una cantidad determinada de monedas desde sus cuentas (entrada) a una serie de cuentas de salida, una por cada entrada, sin tener que confiar en el resto ni saber quien de estos usuario controla cada cuenta de salida. El algoritmo no es muy complicado y la sección 4.2 del Documento Técnico ofrece una buena visión general de como funciona.

No soy ningún experto en ninguno de los algoritmos, pero el planteamiento de TumbleBit parece tener un par de ventajas sobre el CoinShuffle. Dado que usa canales de pago off-blockchain, es potencialmente capaz de escalar hasta un mayor ratio de transacciones, además de añadir una medida de privacidad a los pagos, solventando dos problemas a la vez. Además, si el objetivo es evitar que un observador identifique la relación entre varios pagos (lo que podría filtrar informaciones sobre los clientes de un determinado negocio o de una cadena de suministro, por ejemplo), probablemente sería más conveniente hacer los pagos fueran retornados a la misma cuenta a través de TumbleBit en lugar de tener primero que mezclar cada pago a una nueva cuenta.

Sobre el tema de las verificaciones de identidad, creo que el módulo de Identidad de Stratis es una interesante prueba de un concepto, pero en mi opinión Ardor ofrece un juego de herramientas más amplio para los servicios relacionados con la identificación. Mientras que un servicio como el de Identidad de Stratis puede ser construido con facilidad en cualquier blockchain, Ardor ofrece un par de características únicas que podrían extender este servicio para ofrecer algunas aplicaciones interesantes.

En Ardor, los validadores de identidad serán capaces de confirmar el propietario de una cuenta a través de las Propiedades de Cuenta. Esto son bits de datos arbitrarios que pueden ser permanentemente asociados con una cuenta en la blockchain, de modo semejante a las confirmaciones en el módulo de Identidad de Stratis. Una característica novedosa que traerá Ardor es la habilidad de emitir activos que solo podrán ser intercambiados entre aquellas cuentas que cuenten con una determinada propiedad de cuenta.

En los casos en que las regulaciones del gobierno requieran que los emisores de activos necesiten saber quién ha comprado sus activos, esta características permitirá a los emisores restringir el intercambio de los activos en sus cuentas con otras cuentas en la que la identidad de sus propietarios haya sido convenientemente verificada por los proveedores de identidad establecidos. Este nivel de control podría ayudar a que las acciones lanzadas en la blockchain cuenten con un fundamento legal más firme y ayuden a los emisores a cumplir apropiadamente con la legalidad.

Aún sin cumplir con las normas regulatorias, los emisores de activos puede que encuentren otros usos para esta característica. Por ejemplo, un club u organización privada podría expresar los requerimientos para acceder a la membresía de un club como una serie de requisitos en las propiedades de cuenta, emitir un activo que solo unas cuentas elegibles pueden obtener y después usar el activo para pagar dividendos o para lanzar encuestas entre sus miembros.

Algunas Reflexiones sobre el Marketing

Incluso aunque hayas leído hasta aquí, puede que todavía te estés preguntando qué es exactamente la plataforma Stratis y cómo va a funcionar. Para ser honesto, yo mismo me he planteado estas cuestiones también, incluso tras dedicar muchas horas a estudiar Stratis. Con riesgo de hablar en el límite de mis posibilidades, creo que sería útil comparar y contrastar los esfuerzos de marketing de Jelurida y del Grupo de Stratis para arrojar algo de luz sobre por qué es tan difícil para mí responder a estas cuestiones tan básicas.

Al leer la web de Stratis y su white paper (enlazado más abajo), francamente tengo la impresión de que estos recursos no estaban realmente escritos para mí. El lenguaje que utilizan me recuerda al de los comerciales de mi empresa, y hace mucho descubrí que los ingenieros y el personal de ventas tienden a no entenderse del todo bien.

Leo que Stratis ofrece “sencillas y asequibles soluciones de extremo extremo” para “agilizar y acelerar el desarrollo de proyectos blockchain“; que es una “potente y flexible plataforma de desarrollo blockchain para cubrir las necesidades reales de los negocios y otras organizaciones que pretenden desarrollar, testear y desplegar aplicaciones en la blockchain“; y que su “arranque con un click implica que las nuevas cadenas pueden ser lanzadas con una velocidad sin precedentes, ajustadas a las necesidades del negocio”; pero todavía no entiendo realmente lo que significan todas estas cosas, y aún menos cómo Stratis las va cumplir.

Este tipo de lenguaje no ofrece información de valor para mí. Sin detalles técnicos, estoy completa y desesperadamente perdido. No obstante, se que hay mucha gente que se desenvuelven en este lenguaje de negocios y que estas personas probablemente podrían leer el white paper de Stratis y abstraer de una manera decente, o incluso muy decente, una idea concreta  de lo que la compañía plantea hacer. En cambio, yo tuve que leer el white paper múltiples veces antes de que pudiese comprender la idea, y no estoy completamente seguro de que lo haya conseguido.

Por su parte, el white paper de Ardor contiene detalles técnicos sobre cómo funciona Ardor y qué lo distingue de otras plataformas blockchain. Es obvio al observar tanto el contenido como la forma en que está organizado, que los ingenieros han jugado un papel importante a la hora de escribirlo. Cuando terminé de leerlo por primera vez, entendí con claridad los problemas que Ardor soluciona y cómo los soluciona.

A donde quiero llegar con esta comparación es que las personas con mentalidad de negocios y las personas con mentalidad técnica a menudo no hablan el mismo lenguaje y los materiales de marketing que presentan el Grupo Stratis y Jelurida parecen reflejar estas diferencias. Personalmente, me resultó frustrante encontrar tan poca información técnica entre los recursos de Stratis. Y esta frustración probablemente haya evitado que yo pudiese comprender completamente Stratis

Conclusión

¿Es mi análisis de Stratis demasiado duro? Quizá. Realmente creo que TumbleBits es una solución tecnológica interesante y me parece inteligente que el monedero Breeze lo implemente tanto para Stratis como para Bitcoin. Además, si nos olvidamos de los contenidos del white paper que dicen que la cadena de Stratis será la encargada de asegurar a sus cadenas laterales y en su lugar asumimos que cada cadena lateral será la responsable de su seguridad, entonces puedo usar mi imaginación para interpretar las lagunas y conseguir formarme una imagen mental de lo que Stratis será cuando esté completado.

No obstante, en esta imagen mental Stratis será básicamente un competidor de Lisk. Por supuesto que Stratis está basado en .NET y en el protocolo Bitcoin en lugar de en JavaScript y en los tipos de transacciones predefinidas de Lisk. Y el conjunto de características que ambos equipos pretenden ofrecer no son completamente iguales pero, en esencia, ambos proyectos pretenden ofrecer una blockchain pública central junto a una serie de herramientas para la creación de cadenas laterales en ella. Además, ambos proyectos están en fases bastante iniciales de desarrollo y esta puede ser la razón por la que no hay mucha información técnica disponible.

Ardor es bastante diferente. Construido usando el código base de Nxt, es mucho más maduro que Stratis, aún a pesar de no haberse lanzado todavía en la main net. Su arquitectura de cadena madre / cadena hija consigue el objetivo indicado en el Documento Técnico de Stratis (una forma de que los negocios puedan crear sus propias blockchains personalizadas sin tenerse que preocupar por su seguridad) mejor que las soluciones basadas en arquitecturas de cadenas laterales. Y alcanzar la rica variedad de características que ya soporta Ardor todavía le llevará bastante tiempo a Stratis.

Quizás también sea importante destacar que tanto Jelurida como la comunidad Nxt han hecho un gran trabajo para ofrecer públicamente información técnica sobre Nxt y Ardor. Esta información otorga gran credibilidad al proyecto de Ardor y fortalece la comunidad. En mi opinión, esto es lo que diferencia al marketing verdadero de la mera publicidad.


Prueba Ardor en la testnet

View this in: English 简体中文

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.