¿Qué constituye la estructura organizativa de la función informática básica de blockchain?

Con el rápido desarrollo de Internet, el conocimiento de los consumidores sobre la tecnología blockchain y las monedas virtuales digitales también aumenta constantemente. Hoy, echemos un vistazo a las estructuras de los métodos informáticos básicos de la tecnología blockchain. Echemos un vistazo a la situación específica en el siguiente curso de Java.

Los elementos básicos que componen la tecnología informática son el almacenamiento, el procesamiento y la comunicación. Los mainframes, las PC, los dispositivos móviles y los servicios en la nube exhiben estos elementos a su manera. También hay bloques de construcción dedicados dentro de cada elemento para asignar recursos.

Este artículo se centra en el gran marco de la cadena de bloques: presentando los módulos de cada elemento informático en la cadena de bloques y algunos casos de implementación de cada módulo, prefiriendo una descripción general en lugar de una explicación detallada.

Los componentes básicos de blockchain

Los siguientes son los componentes básicos de cada elemento informático en la tecnología descentralizada:

Almacenamiento: almacenamiento de tokens, base de datos, sistema de archivos/ blob

Procesamiento: lógica empresarial con estado, lógica empresarial sin estado, informática de alto rendimiento

Comunicación: red de conexión de datos, valor y estado

Almacenamiento

Como elemento informático básico, la parte de almacenamiento contiene los siguientes componentes básicos.

Almacenamiento de tokens. Los tokens son medios de almacenamiento de valor (como activos, valores, etc.), y el valor puede ser bitcoins, millas aéreas o derechos de autor de obras digitales. La función principal del sistema de almacenamiento de tokens es emitir y transferir tokens (existen muchas variaciones) evitando al mismo tiempo que ocurran eventos como pagos múltiples.

Bitcoin y Zcash son dos sistemas "puros" que sólo se centran en el token en sí. Ethereum comenzó a utilizar tokens para diversos servicios para hacer realidad su ideal de servir como un centro informático global. Estos son ejemplos en los que los tokens se utilizan como incentivos internos para operar toda la arquitectura de la red.

También hay tokens que no son herramientas internas utilizadas por la red para promover su propio funcionamiento, sino que se utilizan como incentivos para redes de nivel superior, pero sus tokens en realidad se almacenan en la arquitectura subyacente. Un ejemplo es un token ERC20 como Golem, que se ejecuta en la capa de red Ethereum. Otro ejemplo es el token de autorización de IP de Envoke, que se ejecuta en la capa de red IPDB.

Base de datos. Las bases de datos están diseñadas para almacenar metadatos estructurados, como tablas de datos (bases de datos relacionales), almacenes de documentos (como JSON), almacenes de valores clave, series de tiempo o bases de datos de gráficos. Las bases de datos pueden recuperar datos rápidamente mediante consultas como SQL.

Las bases de datos tradicionales distribuidas (pero centralizadas), como MongoDB y Cassandra, suelen almacenar cientos de terabytes o incluso petabytes de datos, con un rendimiento que alcanza millones de escrituras por segundo.

Los lenguajes de consulta como SQL son potentes porque separan la implementación de la especificación para que no estén ligados a una aplicación específica. SQL se ha utilizado como estándar durante décadas, por lo que el mismo sistema de base de datos se puede utilizar en muchas industrias diferentes.

En otras palabras, para discutir la generalidad fuera de Bitcoin, no necesariamente hay que hablar de la integridad de Turing. Sólo necesita una base de datos, que sea concisa y fácil de ampliar. Hay ocasiones en las que la integridad de Turing también es útil, lo que analizaremos en detalle en la sección "Procesamiento descentralizado".

BigchainDB es un software de base de datos descentralizado y un sistema de almacenamiento de documentos especializado. Se basa en MongoDB (o RethinkDB) y hereda la lógica de consulta y expansión de este último. Pero también tiene las características de blockchain, como control descentralizado, resistencia a manipulaciones y soporte de tokens. IPDB es una instancia pública regulada de BigchainDB.

En el ámbito del blockchain, también se puede decir que IOTA es una base de datos de series temporales.

Sistema de archivos/almacenamiento de datos en blobs. Estos sistemas almacenan archivos grandes (películas, música, grandes conjuntos de datos) en una estructura jerárquica de directorios y archivos.

IPFS y Tahoe-LAFS son sistemas de archivos descentralizados que contienen almacenamiento de blobs descentralizado o centralizado.

FileCoin, Storj, Sia y Tieron son sistemas de almacenamiento de blobs descentralizados, al igual que el antiguo y maravilloso BitTorrent, aunque este último utiliza un sistema p2p en lugar de un token. Ethereum Swarm, Dat y Swarm-JS básicamente admiten los dos métodos anteriores.

Mercado de datos. Dichos sistemas conectan a los propietarios de datos (como las empresas) con los usuarios de datos (como las nuevas empresas de inteligencia artificial). Se encuentran encima de las bases de datos y los sistemas de archivos, pero siguen siendo la arquitectura central porque innumerables aplicaciones ávidas de datos (como la IA) dependen de dichos servicios. Ocean es un ejemplo de protocolo y red sobre los cuales se puede crear un mercado de datos. También existen mercados de datos para aplicaciones específicas: EnigmaCatalyst para mercados criptográficos, Datum para datos privados y DataBrokerDAO para flujos de datos de IoT.

Procesamiento

A continuación se analiza el elemento computacional básico del procesamiento.

El sistema de "contrato inteligente" generalmente se refiere a un sistema que procesa datos de forma descentralizada [3]. En realidad, tiene dos subconjuntos con propiedades completamente diferentes: lógica empresarial sin estado (combinada) y lógica empresarial con estado (secuencial). Existe una gran diferencia entre sin estado y con estado en términos de complejidad, verificabilidad, etc. Tres módulos de procesamiento descentralizados son computación de alto rendimiento (HPC).

Lógica empresarial sin estado (combinada). Esta es una lógica arbitraria y no retiene el estado internamente. En términos de ingeniería eléctrica, se puede entender como un circuito lógico digital combinacional. Esta lógica se puede expresar como una tabla de verdad, un diagrama lógico o un código con declaraciones condicionales (una combinación de si/entonces, y, o, no, etc.). Debido a que no tienen estado, es fácil verificar grandes contratos inteligentes sin estado, creando grandes sistemas demostrablemente seguros. N entradas y una salida requieren cálculos O(2^N) para verificarse.

El protocolo Inter-Ledger (ILP) incluye un protocolo de criptocondiciones (CC) para etiquetar claramente los circuitos combinacionales. CC se entiende bien porque se convirtió en un estándar de Internet a través del IETF, mientras que ILP se usa ampliamente en varias redes de pago centralizadas y descentralizadas (como Ripple, utilizada por más de 75 bancos). CC tiene muchas versiones implementadas de forma independiente, incluidas JavaScript, Python, Java, etc. BigchainDB, Ripple y otros sistemas también utilizan CC para admitir contratos inteligentes y lógica empresarial combinados.