Realmente, ¿necesitas Blockchain?

Este es el primer artículo de un interesante-y necesario-monográfico,  “Aterrizando Blockchain”  que hemos creado para resolver todas las dudas que pueden surgir cuando nos planteamos usar tecnología blockchain en nuestros negocios. En las siguientes publicaciones analizaremos  cómo es posible materializar un caso de uso/PoC.

Empezaremos con la “teoría”,  que son los algoritmos de decisión que aplicamos para ver si merece la pena y aporta un valor sustancial  y luego yendo a analizar el caso práctico concreto de esa PoC.

Blockchain está siendo elogiado como una innovación tecnológica que permite revolucionar la forma en que la sociedad comercia e interactúa. Esta reputación es atribuible a sus propiedades que permiten que entidades mutuamente desconfiadas intercambien valor financiero e interactúen sin depender de un tercero.

Además,  proporciona integridad de almacenamiento de datos protegidos y aplica  transparencia al proceso.

Dado que la tecnología blockchain aún es nueva, muchas organizaciones están buscando formas de incorporarla a sus negocios. El miedo a perderse esta tecnología es bastante alto, y la mayoría de las organizaciones abordan el problema como “queremos usar blockchain en algún lugar, entonces, ¿dónde podemos hacer eso?” lo que conduce a frustraciones con la tecnología, ya que no se puede aplicar universalmente. Un mejor enfoque sería entender primero la tecnología blockchain, dónde encaja, y luego identificar los sistemas (nuevos y antiguos) que pueden ajustarse al paradigma blockchain.

En este documento, diferenciamos entre blockchains publicas (por ejemplo, Bitcoin / Ethereum) y permisionadas (por ejemplo, Hyperledger / Corda) y contrastamos sus propiedades con las de una base de datos administrada centralmente. También proporcionamos una metodología estructurada para determinar la solución técnica adecuada para resolver un problema de aplicación particular.

En futuros artículos analizaremos en profundidad tres casos de uso: gestión de la cadena de suministro, pagos interbancarios e internacionales y organizaciones autónomas descentralizadas, y proporcionaremos una perspectiva para nuevas oportunidades.

Público vs. privado, abierto vs. autorizado

Para comprender los problemas que afectan a las cadenas de bloques, es importante conocer los diferentes tipos de blockchain que se han propuesto en los últimos años. Los términos que deben entenderse son: público vs. privado, y abierto vs. autorizado.

  • El primer sistema blockchain fue Bitcoin, y como el sistema fue diseñado para permitir que cualquier persona con una computadora envíe transacciones o se una para mantener la red, es público (Bitcoin se ejecuta en Internet) y abierto (cualquiera puede crear una dirección de bitcoin, o descargue o diseñe software para ejecutar nodos que perpetúen la red de Bitcoin).
  • En el otro extremo, vemos cadenas de bloques privadas y autorizadas. Para estos sistemas, la cadena de bloques se ejecuta en una red privada, por ejemplo, una VPN o intranet, y un administrador debe otorgar permiso a cualquier persona que desee enviar transacciones o mantener un nodo. Dicha blockchain podría, por ejemplo, ser utilizada por un departamento de recursos humanos dentro de una gran corporación, donde existe la necesidad de proporcionar un registro auditable de datos de recursos humanos, pero la empresa no quiere que cualquier empleado, o usuarios externos vea o agreguen datos.

 

 

  • Completando las combinaciones básicas posibles, tenemos blockchain abiertas y autorizadas (cualquiera puede ver la red, pero solo agentes específicos pueden agregar datos; un caso de uso podría ser un sistema de redes sociales distribuido o un sistema de gestión de derechos digitales) y privado pero sin permiso (por ejemplo, una blockchain corporativa de denuncia de irregularidades, en la que cualquier empleado puede presentar una queja o notificación, pero las personas fuera de la empresa no pueden ver los datos registrados en la cadena de bloques y los funcionarios de la empresa no pueden identificar a la persona que informa).
  • Finalmente, también puede haber sistemas híbridos, por ejemplo, una blockchain en la que cualquiera puede enviar una transacción, pero solo las computadoras autorizadas específicas pueden generar bloques y mantener el sistema.

Existe una compensación inherente entre transparencia y privacidad. Un sistema totalmente transparente permite a cualquier persona ver cualquier información, es decir, no se proporciona privacidad. Del mismo modo, un sistema totalmente privado no proporciona transparencia. Sin embargo, un sistema aún puede proporcionar importantes garantías de privacidad al tiempo que hace que las transacciones  sean transparentes, ejemplo,  un libro mayor distribuido puede proporcionar la verificación pública de su estado general sin filtrar información sobre el estado de cada participante individual. La privacidad en un sistema público se puede lograr utilizando técnicas criptográficas, pero generalmente será menos eficiente.

¿Cuándo tiene sentido blockchain?

En general, el uso de blockchain  (abierta o autorizada) solo tiene sentido cuando varias entidades que desconfían mutuamente desean interactuar y cambiar el estado de un sistema, y no están de acuerdo en usar un tercero de confianza.

Para facilitar el proceso de toma de decisiones, proporcionamos un diagrama de flujo básico en la Figura 1. Consideramos una o varias partes que escriben el estado del sistema, es decir, un escritor corresponde a una entidad con acceso de escritura en un sistema de base de datos típico o al participante de consenso en un sistema blockchain.

Figura 1: con un diagrama de flujo  determinamos  si una red blockchain es la solución técnica adecuada para resolver un problema.

 

1. Si no es necesario almacenar datos, no se requiere ninguna base de datos, es decir, blockchain como base de datos, no es la solución.

2. Del mismo modo, si solo existe un escritor, blockchain no proporciona garantías adicionales y una base de datos    regular es más adecuada, ya que proporciona un mejor rendimiento en términos de rendimiento y latencia.

3. Si hay un tercero de confianza (TDC) disponible, hay dos opciones:

  • Primero, si el TDC está siempre en línea, se le pueden delegar operaciones de escritura y puede funcionar como verificador para las transiciones de estado.
  • En segundo lugar, si el TDC generalmente está fuera de línea, puede funcionar como una autoridad de                certificación en la configuración de una blockchain autorizada, es decir, donde se conocen todos los                      escritores del sistema.

Si todos los escritores confían mutuamente, es decir, suponen que ningún participante es malicioso, una base de datos con acceso de escritura compartido es probablemente la mejor solución. Si no confían el uno en el otro, tiene sentido usar una blockchain autorizada. Dependiendo de si se requiere verificabilidad pública, a cualquiera se le puede permitir leer el estado (blockchain con permiso público) o el conjunto de lectores también puede estar restringido (blockchain con permiso privado).

4. Si el conjunto de escritores no es fijo y conocido por los participantes, como es el caso de muchas                                 criptomonedas como Bitcoin, una blockchain sin permiso es una solución adecuada.

Por otro lado, la Dirección de Ciencia y Tecnología del Departamento de Seguridad Nacional de los Estados Unidos (DHS) ha creado un diagrama de flujo más detallado para ayudar a determinar si una blockchain  puede ser necesaria.  Sería el siguiente:

Finalmente, en la siguiente tabla contrastamos algunas propiedades de blockchains sin permiso y con permiso, y una base de datos central. En un sistema centralizado, el rendimiento en términos de latencia y rendimiento es generalmente mucho mejor que en los sistemas blockchain, ya que los blockchains agregan complejidad adicional a través de ellos.

 

 

En las próximas publicaciones analizaremos en profundidad con esas metodologías tres casos de uso:

  • Gestión de la cadena de suministro.
  • Pagos interbancarios e internacionales.
  • Organizaciones autónomas descentralizadas.
14 abril, 2020