Revisión de cuatro bibliotecas Hyperledger- Aries, Quilt, Ursa, and Transact

decorative line

By Matt Zand and Sergio Torres

Hyperledger Aries, Quilt, Ursa, and Transact

Resumen

En nuestros dos artículos anteriores, primero vimos “Revisión de cinco DLTs populares de Hyperledger: Fabric, Besu, Sawtooth, Iroha e Indy”, donde discutimos estas cinco tecnologías de contabilidad distribuida (DLT) de Hyperledger:

  1. Hyperledger Indy
  2. Hyperledger Fabric
  3. Hyperledger Iroha
  4. Hyperledger Sawtooth
  5. Hyperledger Besu

 

Más tarde, pasamos a nuestro segundo artículo (Revisión de tres herramientas de Hyperledger: Caliper, Cello y Avalon) donde examinamos las siguientes tres herramientas de Hyperledger:

  1. Hyperledger Caliper
  2. Hyperledger Cello
  3. Hyperledger Avalon

 

Por último, en este artículo de seguimiento, revisaremos cuatro bibliotecas de Hyperledger (que se enumeran a continuación) y que funcionan muy bien con otros DLTs de Hyperledger. En el instante en que se escribe este artículo, todas estas bibliotecas se encuentran en la etapa de incubación, excepto Hyperledger Aries, que se ha actualizado como estado activo.

  1. Hyperledger Aries
  2. Hyperledger Quilt
  3. Hyperledger Ursa
  4. Hyperledger Transact

 

I- Hyperledger Aries

La identidad ha sido adoptada por la industria como uno de los casos de uso más prometedores de DLT. Las soluciones e iniciativas en torno a la creación, el almacenamiento y la transmisión de credenciales digitales verificables darán como resultado un kit de herramientas interoperable, compartido y reutilizable. En respuesta a tal demanda creciente, Hyperledger ha presentado tres proyectos (Hyperledger Indy, Hyperledger Iroha e Hyperledger Aries) que se centran específicamente en la gestión de identidades.

Hyperledger Aries es una infraestructura para interacciones peer-to-peer blockchain. Incluye un wallet criptográfico compartido (la tecnología de almacenamiento seguro, no una interfaz de usuario) para los clientes de blockchain, así como un protocolo de comunicaciones para permitir interacciones fuera del ledger entre esos clientes. Este proyecto consume el soporte criptográfico proporcionado por Hyperledger Ursa para proporcionar una gestión secreta segura y una funcionalidad de gestión de claves descentralizada.

Según la documentación de Hyperledger Aries, Aries incluye las siguientes características:

  1. Un sistema de mensajería encriptada para interacciones fuera del ledger usando múltiples protocolos de comunicación entre clientes.
  2. Una capa de interfaz de blockchain que también se denomina resolver. Se utiliza para crear y firmar transacciones de blockchain.
  3. Un wallet criptográfico para permitir el almacenamiento seguro de secretos criptográficos y otra información que se utiliza para crear clientes de blockchain.
  4. Una implementación de credenciales verificables W3C con capacidad ZKP con la ayuda de las primitivas ZKP que se encuentran en Hyperledger Ursa.
  5. Un mecanismo para crear casos de uso similares a API y protocolos de nivel superior basados ​​en la funcionalidad de mensajería segura.
  6. Una implementación de las especificaciones del Sistema de Gestión de Claves Descentralizado (DKMS) que se están incubando actualmente en Hyperledger Indy.
  7. Inicialmente, la interfaz genérica de Hyperledger Aries admitirá el resolver  de Hyperledger Indy. Pero la interfaz es flexible en el sentido de que cualquiera puede crear un método conectable utilizando resolutores de métodos DID como Ethereum e Hyperledger Fabric, o cualquier otro resolutor de métodos DID que deseen utilizar. Estos resolutores apoyan la resolución de transacciones y otros datos en otros ledgers.
  8. Hyperledger Aries proporcionará además la funcionalidad y las características fuera del alcance del ledger de Hyperledger Indy para ser completamente planificadas y respaldadas. Debido a estas capacidades, la comunidad ahora puede construir familias de mensajes centrales para facilitar interacciones interoperables utilizando una amplia gama de casos de uso que involucran identidad basada en blockchain.

 

Para una discusión más detallada sobre su implementación, visite el enlace provisto en la sección de Referencias.

II- Hyperledger Quilt

La adopción generalizada de la tecnología blockchain por parte de las empresas globales ha coincidido con la aparición de cientos de redes o ledgers aislados y desconectados. Si bien los usuarios pueden realizar transacciones fácilmente dentro de su propia red o ledger, experimentan dificultades técnicas (y en algunos casos impracticabilidad) para realizar transacciones con partes que residen en diferentes redes o ledgers. En el mejor de los casos, el proceso de transacciones entre ledgers (o entre redes) es lento, costoso o manual. Sin embargo, con el advenimiento y adopción del Protocolo Interledger (ILP), el dinero y otras formas de valor pueden enrutarse, empaquetarse y entregarse a través de ledgers y redes de pago.

Hyperledger Quilt es una herramienta para la interoperabilidad entre sistemas de contabilidad y está escrito en Java mediante la implementación del ILP para intercambios atómicos. Si bien Interledger es un protocolo para realizar transacciones entre ledgers, ILP es un protocolo de pago diseñado para transferir valor a través de ledgers distribuidos y no distribuidos. Los estándares y especificaciones del protocolo Interledger se rigen por la comunidad de código abierto bajo el paraguas del World Wide Web Consortium. Quilt es una implementación de nivel empresarial del ILP y proporciona bibliotecas e implementaciones de referencia para los componentes centrales de Interledger utilizados para las redes de pago. Con el lanzamiento de Quilt, JS Foundation mantuvo la implementación de JavaScript (Interledger.js) de Interledger.

Según la documentación de Quilt, como resultado de la implementación de ILP, Quilt ofrece las siguientes características:

  1. Un marco para diseñar protocolos específicos de casos de uso de alto nivel.
  2. Un conjunto de reglas para permitir la interoperabilidad con la semántica básica de custodia.
  3. Un estándar para el formato de paquetes de datos y un formato de dirección independiente dependiente del libro mayor para permitir que los conectores enruten los pagos.

Para una discusión más detallada sobre su implementación, visite el enlace provisto en la sección de Referencias.

III- Hyperledger Ursa

Hyperledger Ursa es una biblioteca criptográfica compartida que permite a las personas (y proyectos) evitar la duplicación de otros trabajos criptográficos y, con suerte, aumentar la seguridad en el proceso. La biblioteca es un repositorio opcional para proyectos de Hyperledger (y, potencialmente, otros) para colocar y usar cripto.

Dentro de Project Ursa, una biblioteca completa de firmas modulares y primitivas de clave simétrica está a disposición de los desarrolladores para intercambiar diferentes esquemas criptográficos a través de la configuración y sin tener que modificar su código. Además de su biblioteca base, Ursa también incluye criptografía más nueva, incluidas firmas agregadas, de umbral y basadas en emparejamiento. Además, las primitivas de conocimiento cero, incluidas las SNARK, también son compatibles con Ursa.

Según la documentación de Ursa, Ursa ofrece los siguientes beneficios:

  1. Evitar la duplicación de la resolución de requisitos de seguridad similares en diferentes cadenas de bloques.
  2. Simplificando las auditorías de seguridad de las operaciones criptográficas ya que el código está consolidado en una única ubicación. Esto reduce los esfuerzos de mantenimiento de estas bibliotecas al tiempo que mejora la huella de seguridad para los desarrolladores con conocimientos principiantes de proyectos de contabilidad distribuida.
  3. La revisión de todos los códigos criptográficos en un solo lugar reducirá la probabilidad de errores de seguridad peligrosos.
  4. Impulsar la interoperabilidad entre plataformas cuando varias plataformas, que requieren verificación criptográfica, utilizan los mismos protocolos de seguridad en ambas plataformas.
  5. La mejora de la arquitectura a través de la modularidad de los componentes comunes allanará el camino para futuras plataformas de tecnología de contabilidad distribuida modular que utilicen componentes comunes.
  6. Acelerar el tiempo de comercialización de nuevos proyectos siempre que se pueda incorporar un paradigma de seguridad existente sin que un proyecto necesite construirlo por sí mismo.

 

Para una discusión más detallada sobre su implementación, visite el enlace provisto en la sección de Referencias.

IV- Hyperledger Transact

Hyperledger Transact, en pocas palabras, facilita la escritura del software de contabilidad distribuida al proporcionar una biblioteca de software compartida que maneja la ejecución de smart contracts, incluidos todos los aspectos de la programación, el envío de transacciones y la gestión del estado. Al utilizar Transact, los smart contracts se pueden ejecutar independientemente de los DLT que se utilicen. Específicamente, Transact logra eso al ofrecer un enfoque extensible para implementar nuevos lenguajes de contratos inteligentes llamados "motores de smart contracts". Como tal, cada motor de smart contracts implementa una máquina virtual o un intérprete que procesa smart contracts.

En esencia, Transact es únicamente un sistema de procesamiento de transacciones para transiciones de estado. Es decir, los datos de estado se almacenan normalmente en un valor clave o en una base de datos SQL. Considerando un estado inicial y una transacción, Transact ejecuta la transacción para producir un nuevo estado. Estas transiciones de estado se consideran "puras" porque solo el estado inicial y la transacción se utilizan como entrada. (A diferencia de otros sistemas como Ethereum, donde la información de estado y bloque se mezcla para producir el nuevo estado). Por lo tanto, Transact es independiente de las características del marco DLT distintas de la ejecución y el estado de la transacción.

Según la documentación de Hyperledger Transact, Transact viene con los siguientes componentes:

  1. State. La implementación del estado de Transact proporciona operaciones de obtención, configuración y eliminación en una base de datos. Para la implementación del estado del árbol Merkle-Radix, la estructura del árbol se implementa sobre LMDB o una base de datos en memoria.
  2. Context manager. En Transact, las lecturas y escrituras de estado tienen un alcance (espacio aislado) en un "contexto" específico que contiene una referencia a un ID de estado (como un hash de raíz de estado de Merkle-Radix) y uno o más contextos anteriores. El administrador de contexto implementa el ciclo de vida del contexto y atiende las llamadas que leen, escriben y eliminan datos del estado.
  3. Scheduler. Este componente controla el orden de las transacciones que se ejecutarán. Las implementaciones concretas incluyen un programador en serie y un programador paralelo. La ejecución de transacciones paralelas es una innovación importante para aumentar el rendimiento de la red.
  4. Executor. El ejecutor de Transact obtiene transacciones del planificador y las ejecuta en un contexto específico. La ejecución se maneja enviando la transacción a adaptadores de ejecución específicos (como ZMQ o un adaptador en proceso estático) que, a su vez, envían la transacción a un contrato inteligente específico.
  5. Smart Contract Engine. Estos componentes proporcionan las implementaciones de máquinas virtuales y los intérpretes que ejecutan los smart contracts. Los ejemplos de motores incluyen WebAssembly, Ethereum Virtual Machine, Sawtooth Transactions Processors y Fabric Chaincode.

 

Para una discusión más detallada sobre su implementación, visite el enlace provisto en la sección de Referencias.

Resumen

En este artículo, revisamos cuatro bibliotecas Hyperledger que son excelentes recursos para administrar Hyperledger DLT. Comenzamos explicando Hyperledger Aries, que es una infraestructura para interacciones peer-to-peer enraizadas en blockchain e incluye un wallet criptográfico compartido para clientes de blockchain, así como un protocolo de comunicaciones para permitir interacciones fuera del ledger entre esos clientes. Luego, nos enteramos de que Hyperledger Quilt es la herramienta de interoperabilidad entre sistemas de contabilidad y está escrito en Java mediante la implementación del ILP para intercambios atómicos. Si bien Interledger es un protocolo para realizar transacciones entre ledgers, ILP es un protocolo de pago diseñado para transferir valor a través de ledgers distribuidos y no distribuidos. También discutimos que Hyperledger Ursa es una biblioteca criptográfica compartida que permitiría a las personas (y proyectos) evitar la duplicación de otros trabajos criptográficos y, con suerte, aumentar la seguridad en el proceso. La biblioteca sería un repositorio opcional para proyectos de Hyperledger (y, potencialmente, otros) para colocar y usar cripto. Concluimos nuestro artículo revisando Hyperledger Transact mediante el cual los smart contracts se pueden ejecutar independientemente de los DLT que se utilicen. Específicamente, Transact logra eso al ofrecer un enfoque extensible para implementar nuevos lenguajes de smart contracts llamados "motores de smart contracts".

Recursos

He incluido enlaces de referencia y recursos para aquellos interesados ​​en explorar los temas discutidos en este artículo en profundidad.

Clases de Blockchain and Hyperledger                                             

  1. Aprenda la programación de Solidity con ejemplos
  2. Introducción a Ethereum blockchain en español
  3. Blockchain introducción en Español
  4. Blockchain Hyperledger Fabric para el administrador del sistema
  5. Blockchain Hyperledger Fabric introducción en Español

Clases de Programación

  1. Introducción a la programación de JavaScript
  2. Introducción a Node.JS, Express.JS y MongoDB

Webinars

  1. Blockchain para emprendedores- Introducción a la tecnología blockchain y 27 casos de uso
  2. Hyperledger Fabric para Administradores Vs Developers

 

Referencias

Para obtener más referencias sobre todos los proyectos, bibliotecas y herramientas de Hyperledger, visite los siguientes enlaces de documentación:

  1. Hyperledger Indy Project
  2. Hyperledger Fabric Project
  3. Hyperledger Aries Library
  4. Hyperledger Iroha Project
  5. Hyperledger Sawtooth Project
  6. Hyperledger Besu Project
  7. Hyperledger Quilt Library
  8. Hyperledger Ursa Library
  9. Hyperledger Transact Library
  10. Hyperledger Cactus Project
  11. Hyperledger Caliper Tool
  12. Hyperledger Cello Tool
  13. Hyperledger Explorer Tool
  14. Hyperledger Grid (Domain Specific)
  15. Hyperledger Burrow Project
  16. Hyperledger Avalon Tool

 

Sobre los Autores

Matt Zand
Matt es un emprendedor en serie y fundador de 3 nuevas empresas tecnológicas: DC Web Makers, Coding Bootcamps y High School Technology Services. Es uno de los principales autores del libro Hands-on Smart Contract Development with Hyperledger Fabric de O’Reilly Media. Ha escrito más de 100 artículos técnicos y tutoriales sobre el desarrollo de blockchain para plataformas Hyperledger, Ethereum y Corda R3 en sitios como IBM, SAP, Alibaba Cloud, Hyperledger, The Linux Foundation y más. Como orador público, ha presentado seminarios web en muchas comunidades de Hyperledger en EE. UU. Y Europa. En DC Web Makers, lidera un equipo de expertos en blockchain para consultoría e implementación de aplicaciones empresariales descentralizadas. Como arquitecto jefe, ha diseñado y desarrollado cursos de blockchain y programas de formación para Coding Bootcamps. Tiene una maestría en administración de empresas de la Universidad de Maryland. Antes del desarrollo y consultoría de blockchain, trabajó como desarrollador y consultor senior de aplicaciones web y móviles, inversor ángel y asesor comercial para algunas empresas emergentes. Puede conectarse con él en LI: https://www.linkedin.com/in/matt-zand-64047871


Sergio Torres
Sergio Torres es arquitecto blockchain en Signeblock. Su bagaje en el ecosistema blockchain se fundamenta en el proyecto Hyperledger y por ello está colaborando en la creación del libro Hands-on Smart Contract Development with Hyperledger Fabric book by O’Reilly Media. Actualmente también trabaja como docente en diferentes cursos y posgrados universitarios impartiendo clases técnicas sobre el ecosistema Hyperledger y más concretamente en Hyperledger Fabric, del que es administrador certificado por The Linux Foundation. Más información sobre Sergio en su LinkedIn.

Private Custom Tutoring

decorative line

We offer private custom tutoring classes both online and in DC, MD and VA for almost all of our courses or bootcamps. Give us a call or email us to discuss your needs.

$90 Regular

$50 Limited Offer

REGISTER NOW