Arquitectura Blockchain - Componentes claves

 Arquitectura Blockchain


Componentes claves

En un primer acercamiento al mundo de la Blockchain es difícil materializar un concepto intangible, por ello, en el segmento de este blog vamos investigar su arquitectura a través de la analogía. 

Imagine la Blockchain como un inmenso árbol, donde cada parte tiene un significado y una función específica.


En este contexto, las raíces del árbol se formaron con antecedentes de la tecnología Blockchain; Alan Turing en 1936 con el código enigma, Stuart Haber y W. Scott Stornetta en 1991 con el sistema criptográfico e inmutabilidad de documentos digitales, Nick Szarbo en 1997 con su contribución a los contratos inteligentes y la propuesta de criptomoneda, entre otros.

El tronco es la columna vertebral de la Blockchain, su base de datos o libro contable distribuido (DTL - Distributed Ledger Technology) registra transacciones encadenadas en bloques de información en múltiples copias del mismo libro, cuyas páginas son firmadas digitalmente utilizando mecanismos criptográficos complejos que impiden cualquier tipo de alteración de la información contenida.

Las ramas del árbol representan los nodos que son dispositivos (generalmente computadoras) que participan en una red distribuida. Estos dispositivos ejecutan el software del protocolo Blockchain lo que les permite validar transacciones y mantener la seguridad de la red. Para lograr esto, los nodos se comunican entre sí por medio de protocolos P2P (peer-to-peer) y ejecutan una copia del libro contable distribuido, lo que garantiza que cualquier participante de la red (usuario, minero, administrador) con el software adecuado pueda formar parte de la red, sin que se pueda censurar su participación o acceso a los recursos de dicha red. Sus características son:

  • Validar transacciones con reglas del protocolo Blockchain.

  • Mantener el libro contable distribuido.

  • Garantizar la seguridad en la red a través del consenso.

Las ramas de un árbol varían en formas y tamaños, lo que implica la existencia de varios tipos de nodos y tipos de Blockchain. Los nodos se pueden configurar para controlar otras redes distintas a las que inicialmente fueron creadas, compartiendo su mismo protocolo de comunicación y su misma criptografía. En este segmento, nos centraremos en:

  • Nodos Completos: Almacenan y mantienen una copia completa de toda la cadena de bloques. Constituyen la base de la red y validan todas las transacciones y bloques, verificando la coherencia, la ausencia de doble gasto o firmas incorrectas antes de aceptarlos como válidos.

  • Nodos Ligeros o Podados: Almacenan solo una parte de la cadena de bloques y dependen de los nodos completos para su validación. Se utilizan en dispositivos inteligentes con capacidad de procesamiento limitada, su acceso es rápido, ligero y sólo descargan la información relevante para las transacciones. 

Las ramas (nodos) contienen millones de hojas con información (bloques). En una de cadena de bloques, todos los detalles de una nueva transacción (información) son registrados, marcados con la hora y verificados por "mineros", quienes compiten por ser los primeros en resolver problemas matemáticos complejos y publican el siguiente bloque de transacciones en el libro contable a cambio de recompensas llamadas criptomonedas. Los mineros pueden ser grandes grupos de minería o particulares con capacidad financiera para poder invertir en hardware y software especializados.

Para mantener la integridad de las hojas y evitar que se caigan, los bloques se organizan de manera cronológica y cada bloque se vincula con el bloque anterior (parent hash) a través de funciones hash criptográficas. Esto forma una estructura inmutable (cadena) que garantiza la integridad de los datos almacenados en cada bloque.

El proceso de criptográfico consiste en una huella digital unidireccional que transforma cualquier conjunto arbitrario de datos (mensaje o preimagen) en una nueva serie de caracteres alfanuméricos con una longitud fija, independientemente del tamaño de los datos de entrada. El resultado obtenido se denomina hash, resumen, digest o imagen.


Por ejemplo, si se utiliza la función hash SHA256 para determinar el valor hash del mensaje o preimagen “Hola” se obtendrá como resultado el siguiente resumen: Hash Online Convert

1041237552072898049562720892330721715005740281636947870934644989980731601655193


Propiedades de la función hash:

  • Unidireccional: Es difícil revertir el código alfanumérico debido a la cantidad contraproducente de tiempo y recursos que conlleva, lo que garantiza la seguridad del sistema.

  • Autenticidad: Verifica la transacción original e impide su modificación.

  • Resistencia a colisiones: Aunque existe una probabilidad matemática, dos o más transacciones diferentes no deberían producir la misma salida. Es difícil encontrar otro mensaje que tenga el mismo resumen (hash)

  • Resistencia a pre imagen: El hash siempre tiene la misma longitud y no revela ningún dato sobre la entrada.. 


En consecuencia,  ninguna transferencia se efectúa por medio de un intermediario, sino a través de un consenso realizado por mineros que verifican el estado actual de la cadena de bloques y validan las transacciones de manera transparente. 

El consenso es el proceso mediante el cual los mineros resuelven rompecabezas matemáticos para incluir las transacciones a la cadena de bloques, por lo que si se quiere alterar la cadena es necesario que se hackeen el 51% de nodos mineros a nivel mundial en un lapso de 10 minutos en virtud de que es la frecuencia con que un nuevo bloque de transacciones es validado y agregado a la cadena. “Los bloques de transacciones son usualmente publicados en el libro contable compartido a intervalos de diez minutos” (EquiSoft, 2017).

El tipo de consenso depende del protocolo específico de cada Blockchain, éste puede implementar un algoritmo de consenso particular, procedimientos para la creación, validación de nuevos bloques a la cadena.

Protocolos de Consenso:

  • Prueba de Trabajo (PoW)

  • Prueba de Participación (PoS)

  • Prueba de Participación Delegada (DPoS)

Para mayor información haz click aquí: Protocolos de consenso

A pesar de que los participantes de la red mantienen el anonimato a través de claves cifradas públicas y privadas, la transparencia se puede verificar a través de los exploradores de bloques, que son herramientas con interfaz amigable que permiten visualizar, explorar y comprender la información almacenada en la cadena de bloques, como la cantidad de criptomonedas transferidas, las direcciones involucradas, los tiempos de confirmación, entre otros datos.

Finalmente, se puede observar que la Blockchain ofrece una posibilidades para desarrollar herramientas que faciliten diversas áreas de trabajo o de la vida cotidiana. Se puede implementar a través de diversas aplicaciones y medios como criptomonedas, contratos inteligentes (Smart Contract), votación electrónica, sistemas de gestión de identidad, registros médicos o billeteras (wallets), y brinda ventajas, debido a su naturaleza basada en la confianza y en la inalterabilidad de información ingresada.


Funcionamiento de los componentes claves descriptos



Bibliografía:

- Dr. Manuel Rodríguez López, Dr. Carlos Piñeiro Sánchez. Dr. Pablo de Llano Monelos: "La tecnología Blockchain y su aplicabilidad en la Contabilidad. De la partida doble al sistema de triple entradaUniversidad de Coruña, España.

- Bartolomeo Alejandro, Machín Urbay, Gustavo: "Introducción a la tecnología Blockchain: su Impacto en las Ciencias EconómicasBiblioteca Digital UNCuyo.

-Agencia Española de Protección de datos (2019); "Introducción al Hash como técnica de seudonimización de datos personalesEuropean Data Protection Supervisor - EDPS

- Simulador de funciones Hash - Hash Online Convert

Torres Julieta Anahí
Grupo 11 - Derecho Informático

Comentarios