Blog de Amazon Web Services (AWS)

Como saber cuándo utilizar Blockchain

Por Srividhya Srinivasan Panchabakesan, Arquitecto de soluciones en AWS y
Arturo Minor Bahena, Arquitecto de soluciones en AWS

 

Si está interesado en utilizar o implementar una aplicación blockchain para sus cargas de trabajo pero no está seguro si blockchain es la mejor solución, en este artículo daremos una breve guía de blockchain enfocándonos en la diferencia entre ledgers centralizados y descentralizados, y cómo y cuándo podemos utilizar los servicios de AWS para cada caso. Si desea conocer más al respecto sobre cómo funciona blockchain,  puede encontrar útil el siguiente artículo: What is blockchain technology?

¿Qué es blockchain?

Empecemos por definir a Blockchain como una tecnología basada en la verificación criptográfica que nos permite compartir valor a través de un mecanismo avanzado que a su vez, permite compartir información de manera transparente dentro de una red.

¿A qué nos referimos como valor? Cualquier elemento que genere un beneficio o sea considerado como activo: como dinero, acciones y bonos, millas de viajero frecuente, puntos de recompensa, información de transacciones, entre otros. ¿Y cómo podemos compartirlo de manera transparente con otras empresas o instituciones gubernamentales? Como consecuencia, es necesario un sistema que mantenga la integridad de los datos y permita una auditoría de los mismos de una manera simple y segura.

Blockchain o base de datos de cadena de bloques, almacena los datos en bloques que se vinculan entre sí formando una cadena. Los datos son cronológicamente consistentes debido a que no es posible eliminar ni modificar la cadena sin el consenso de la red. Como resultado, se puede utilizar esta tecnología para crear un ledger o libro mayor inmutable que puede ser utilizado para realizar seguimiento de pedidos, pagos, cuentas, transacciones y otro tipo de información.

Cuando hablamos de blockchain muchas personas lo relacionan con Bitcoin y se llegan a tomar como sinónimos. Sin embargo, Bitcoin es una moneda digital descentralizada, esto significa que no es emitido por ningún banco central. Tampoco tiene una sola entidad que controle su valor o distribución.  Pero la tecnología de blockchain tiene muchas aplicaciones más allá de Bitcoin. Bitcoin es una red blockchain pública que crea y administra el libro mayor central.

 

Centralizado vs descentralizado

Hablamos de valor y ese valor debe registrarse en alguna parte. Queremos saber cuándo se registró, dónde está, en que estatus se encuentra, dónde ha estado y cualquier información que pueda ser relevante.

Por ejemplo: Si yo pago un millón de dólares, quiero un recibo. Y quiero saber que el dinero se consolidó en la cuenta bancaria destino, en qué fecha, etc. Tradicionalmente, se hace un seguimiento del dinero en los libros de contabilidad. En cualquier lugar donde llevemos un registro del dinero (archivos de Excel, QuickBooks, incluso una chequera) dentro de un libro de contabilidad.

Libros contables o ledgers: un depósito central para todos los datos contables (las entradas y salidas de dinero).

Tradicionalmente, estos libros de contabilidad son centralizados, lo que significa que están en manos de una entidad central: usted, su contador o su banco. Todos ellos trabajan sobre el principio contable básico: entradas y salidas de dinero.

Con blockchain, estamos tratando con un ledger o libro mayor descentralizado, lo que significa que no se mantiene en una computadora o en una sola cuenta bancaria. Entonces, ¿dónde registramos esa transferencia? en una base de datos distribuida y compartida masivamente en cientos de nodos.

Blockchain es un método diferente de contabilidad: escribimos cada transacción en un bloque de datos y luego «encadenamos» esos bloques juntos. Con la tecnología blockchain, tenemos un registro permanente o inmutable.

Tecnología de contabilidad descentralizada (DLT): Nos permite mantener todas las transacciones sincronizadas, a través de una red distribuida de computadoras.

Blockchain todavía está «lógicamente centralizado», en el sentido de que solo hay un libro mayor. Sin embargo, está «organizacionalmente descentralizado» en el sentido de que el libro mayor no se almacena en ninguna ubicación central. Más bien, existen copias idénticas en cada nodo.

Lo notable de DLT es que podemos mantener todas estas copias distribuidas “sincronizadas”, en cualquier parte del mundo, mientras realizamos múltiples transacciones por segundo. En resumen cuales son las características de los ledgers centralizados y descentralizados:

En ambos casos, centralizado y descentralizado, tienen una marca de tiempo mediante la creación de «bloques», un registro único de datos, como una entrada en nuestro libro de contabilidad, que garantiza la secuencia adecuada de transacciones. Anotar la hora en que se realizó una transacción mantiene el sistema seguro y protegido.

La tecnología Blockchain resulta muy conveniente cuando necesitamos compartir «valor» a través de una red global de participantes. Consideremos algunos escenarios para desarrollar arquitecturas basadas tanto en ledgers centralizados así como en tecnología de cadena de bloques.

 

Servicios AWS para cada escenario

Sin importar si se tratase de un blockchain público, privado, centralizado o descentralizado, en AWS existen diferentes opciones para soportar las cargas de trabajo de acuerdo al caso de uso.

Amazon QLDB

Si lo que necesitamos es un sistema auditable donde se almacenen nuestras transacciones de manera inmutable, pero que sea propiedad únicamente de nosotros. En este caso se recomienda utilizar Amazon Quantum Ledger Database o Amazon QLDB, el cual proporciona un registro de transacciones transparente, inmutable y que puede ser verificado criptográficamente. Amazon QLDB tiene características como un diario de eventos de sólo escritura, donde se almacena cada cambio en los datos, estos eventos se registran a manera de bloques de modo que no se puede eliminar ni sobrescribir ningún registro en el historial de cambios.

Dentro de las ventajas que ofrece Amazon QLDB, es que además de tener un historial de cambios inmutable y que permite verificar los datos criptográficamente, a diferencia de la mayoría de protocolos de blockchain, no necesitamos de generar y distribuir un contrato inteligente o smart contract, Amazon QLDB abstrae esa funcionalidad y permite acceder a los datos y al historial en PartiQL, un nuevo lenguaje de consulta estándar abierto, el cual es compatible con SQL y al modelo de datos orientado a documentos de Amazon QLDB.

Otra ventaja a notar, es que, a diferencia de una red blockchain distribuida, Amazon QLDB funge como un ledger criptográfico centralizado, lo que le permite ser totalmente administrado y serverless. Por lo que administrar servidores, aprovisionar capacidad, configurar y mantener nodos de una red blockchain no es necesario con Amazon QLDB.

Amazon Managed Blockchain

Por otro lado, si lo que queremos es facilitar transparencia entre varios actores, donde existe la necesidad de compartir información y mantener la comunicación segura y autónoma, o si lo que queremos es desplegar nuestros propios smart contracts así como poder configurar y tener nuestros nodos para unirnos a una red de blockchain. En este caso se recomienda utilizar Amazon Managed Blockchain, el cual es un servicio totalmente administrado que facilita la adhesión a redes públicas o la creación y administración de redes privadas escalables mediante el uso de frameworks populares de código abierto como Hyperledger Fabric y Ethereum.

 

Ahora puede tomar una mejor decisión

Si esta pensando en comenzar a integrar Blockchain en sus aplicaciones, tanto Amazon QLDB como Amazon Managed Blockchain son servicios que poseen características de inmutabilidad y verificación criptográfica, varían en protocolos y modos de operación, así como en su configuración. Sin embargo, ambos nos permiten crear el arte de lo posible que mejor se adecué a nuestro caso de uso. En resumen, sus características principales son:

Esperamos que ahora tenga mayor claridad e información respecto a los tipos de ledger así como de blockchain y con ello pueda tomar una mejor decisión sobre qué servicio AWS puede utilizar para comenzar a experimentar o implementar blockchain en sus cargas de trabajo.

 

 


Sobre os autores

Srividhya Srinivasan Panchabakesan es un arquitecto de soluciones ubicado en Medellín, Colombia. Está interesada en desarrollar soluciones y demostraciones para ayudar a sus clientes a beneficiarse del uso de tecnologías de vanguardia. Le encanta la jardinería, viajar a nuevos lugares y explorar cosas nuevas.

 

 

 

 

Arturo Minor Bahena es un arquitecto de soluciones de prototipos ubicado en la Ciudad de México. Le gusta el aire libre y viajar, y le interesan las ciencias de la computación, los idiomas y la tecnología. Trabaja en AWS para ayudar a los clientes a innovar, desarrollar y visualizar nuevas soluciones.