Diseño de arquitecturas informáticas en varias partes

Azure Blob Storage
Azure Kubernetes Service (AKS)
Azure SQL Database

La informática entre varias partes o la computación que preserva la privacidad permiten a los distintos participantes de una relación empresarial compartir datos, hacer cálculos y llegar a un resultado mutuo sin divulgar sus datos privados. Los servicios de Azure pueden ayudarle a crear una solución informática entre varias partes. La solución puede incluir recursos locales y basados en la nube.

La informática entre varias partes tiene los siguientes atributos:

  • Hay más de una empresa u organización implicada.
  • Las partes son independientes.
  • Las partes no comparten entre sí todos sus datos.
  • Todas las partes acceden a una plataforma de informática y almacenamiento de datos común.
  • Algunos procesos deben ser privados para algunas de las partes implicadas.

Una cadena de suministro es un ejemplo de flujo de trabajo que implica a varias partes. Las materias primas se trasladan desde el punto de origen hasta el punto de fabricación. Las mercancías del fabricante llegan a un centro de distribución mediante los socios de transporte. Desde el centro, las mercancías se envían a los puntos de venta.

Diagrama que muestra una progresión de los miembros de una cadena de suministro con imágenes prediseñadas.

En este proceso hay distintas empresas trabajando conjuntamente. Estas partes son el proveedor de materias primas, el fabricante, las empresas de transporte, los operadores de almacenes y los puntos de venta. El producto cambia de manos varias veces a lo largo de la cadena de suministro. Las distintas partes deben realizar un seguimiento del producto en todas las fases.

Tecnologías informáticas entre varias partes

La informática entre varias partes incluye diferentes tecnologías que permiten a las partes realizar transacciones de forma segura a través de una red.

Diagrama que muestra los libros de contabilidad implementados como computación confidencial, Azure Kubernetes Service, máquinas virtuales u ofertas de socios.

Una opción son los libros de contabilidad distribuida. La cadena de bloques es un ejemplo. La cadena de bloques es un libro de contabilidad de datos que se puede compartir entre partes independientes donde todas las partes confían en los datos del libro de contabilidad. Las transacciones se recopilan en bloques, de manera que cada bloque que se vincula al bloque anterior. Algunos libros de contabilidad distribuidos no usan bloques. Cada transacción se puede vincular a la transacción anterior en el libro de contabilidad.

Otra posibilidad para la informática entre varias partes usa memoria protegida por hardware en la propia CPU. Estas regiones, denominadas enclaves seguros, están protegidas criptográficamente. Este enfoque significa que incluso un administrador con privilegios que tenga acceso completo al servidor no puede ver el proceso o los datos que se encuentran en esos enclaves seguros.

Dado que los enclaves seguros tienen la capacidad de atestiguar de forma remota a otros enclaves, se puede diseñar una red de varias organizaciones donde el sistema se ejecute desde los enclaves. Este enfoque se denomina entorno de ejecución de confianza.

Azure ofrece un servicio administrado denominado Azure Confidential Ledger que le permite ejecutar un modelo de cadena de bloques en enclaves seguros.

Por último, podría elegir un sistema centralizado, que ofrece inmutabilidad y confiabilidad. El libro de contabilidad de Azure SQL Database ofrece la confianza necesaria para la informática entre varias partes en una base de datos relacional. Es posible que no necesite un consenso descentralizado, sino solo el aspecto de inmutabilidad del libro de contabilidad.

Modelos de red de cadena de bloques

Para decidir si la cadena de bloques es una buena opción para un proceso empresarial, tenga en cuenta estas preguntas:

  • ¿Este proceso empresarial traspasa los límites de confianza?
  • ¿Comparten y actualizan los datos varias partes?
  • ¿Hay algún intermediario que controle el único origen de la verdad?
  • ¿El proceso implica pasos de comprobación manual de bajo valor?

Si las respuestas a estas preguntas son afirmativas, el proceso empresarial es un buen candidato para un enfoque basado en cadena de bloques. Incluso si alguna respuesta es negativa, es posible que la cadena de bloques tenga sentido. Antes de decidir, mire con atención las otras opciones de informática entre varias partes.

Hay varios tipos de redes de cadena de bloques para satisfacer sus necesidades empresariales. Una característica son los criterios para participar en la red. Si la red está abierta para todos, se denomina red de cadena de bloques pública. Solo tiene que descargar el cliente y unirse. La mayoría de las criptodivisas funcionan de esta manera.

Una alternativa es una red de cadena de bloques con permiso, donde necesita permiso de los miembros existentes de la red para unirse. Este modelo funciona para empresas que tratan con organizaciones conocidas. Por ejemplo, un supermercado puede querer tener una red de cadena de bloques cerrada y con permisos para los participantes de su cadena de suministro.

Un proceso empresarial podría requerir solo datos a prueba de alteraciones o con evidencia de alteraciones, lo que no requeriría la cadena de bloques. Si su proceso puede ejecutarse de forma centralizada o si todas las partes confían entre sí con los datos, la cadena de bloques también podría ser innecesaria.

Informática entre varias partes de Azure

En esta sección se describen las opciones de informática entre varias partes disponibles mediante los servicios de Azure.

Cadena de bloques con Azure Virtual Machines

Puede ejecutar el software de libro de contabilidad mediante Azure Virtual Machines. Cree tantas máquinas virtuales como necesite y conéctelas en una red de cadena de bloques.

La implementación de sus propias máquinas virtuales le permite personalizar la solución. El enfoque incluye los gastos de gestión, como las actualizaciones, la alta disponibilidad y los requisitos de continuidad de la empresa. Puede tener varias organizaciones y varias cuentas en la nube. Conectar los nodos individuales puede ser complicado.

Hay plantillas de implementación disponibles en Azure para la mayoría de los libros de contabilidad de cadena de bloques para máquinas virtuales.

Cadena de bloques en Kubernetes

Dado que la mayoría de los libros de contabilidad de cadena de bloques admiten la implementación en contenedores de Docker, puede usar Kubernetes para administrar los contenedores. Azure tiene una oferta de Kubernetes administrada denominada Azure Kubernetes Service (AKS) que puede usar para implementar y configurar los nodos de la cadena de bloques.

Las implementaciones de AKS incluyen un servicio administrado para las máquinas virtuales que potencia el clúster de AKS. Sin embargo, la organización debe seguir administrando los clústeres de AKS y las opciones de red o almacenamiento de la arquitectura.

Hay plantillas de implementación disponibles en Azure para la mayoría de los libros de contabilidad de cadena de bloques para AKS.

Cadena de bloques como servicio

Azure admite servicios de terceros que ejecutan software de libro de contabilidad en Azure. El proveedor de servicios administra la infraestructura. Se encarga del mantenimiento y las actualizaciones. La alta disponibilidad y la administración del consorcio se incluyen en el servicio.

ConsenSys ofrece Quorum en Azure. Quorum es una capa de protocolo de código abierto que admite aplicaciones basadas en Ethereum.

Puede haber otras ofertas en el futuro.

Azure Confidential Ledger

Azure Confidential Ledger es un servicio administrado basado en Confidential Consortium Framework. Implementa una red de nodos de cadena de bloques con permisos dentro de la computación confidencial de Azure. El libro de contabilidad confidencial se basa en el cifrado existente.

  • Cifrado existente
    • Datos en reposo. Cifre los datos inactivos cuando se almacenan en Blob Storage o en una base de datos.
    • Datos en tránsito. Cifre los datos que fluyen entre redes públicas o privadas.
  • Computación confidencial
    • Datos en uso. Cifre los datos que están en uso, mientras están en memoria y durante el cálculo.

La computación confidencial permite el cifrado de datos en la memoria principal. La computación confidencial de Azure permite procesar datos de varios orígenes sin exponer los datos de entrada a otras partes. Este tipo de cálculo seguro admite escenarios informáticos entre varias partes en los que la protección de datos es obligatoria en cada paso, como la detección de blanqueo de dinero, la detección de fraudes y el análisis seguro de los datos sanitarios.

Los datos almacenados en el libro de contabilidad confidencial son inmutables y a prueba de alteraciones en el libro de contabilidad solo de anexo. El libro de contabilidad también se puede verificar de forma independiente. Confidential Ledger utiliza enclaves seguros para una red de cadena de bloques descentralizada y requiere una base informática mínima de confianza.

Libro de contabilidad de Azure SQL Database

El libro de contabilidad de Azure SQL Database permite a los participantes comprobar la integridad de los datos de forma centralizada sin el consenso de red de una red de cadena de bloques. Para algunas soluciones centralizadas, la confianza es importante, pero la infraestructura descentralizada no es necesaria. Este enfoque evita las implicaciones de complejidad y rendimiento de este tipo de infraestructura.

Diagrama que muestra la arquitectura del libro de contabilidad de base de datos.

Nota

El libro de contabilidad de Azure SQL Database se encuentra actualmente en versión preliminar pública.

El libro de contabilidad proporciona funcionalidades de evidencia de alteraciones para su base de datos. Estas funcionalidades le permiten atestiguar criptográficamente que los datos no se han alterado.

El libro de contabilidad ayuda a proteger los datos frente a cualquier atacante o usuario con privilegios elevados, incluidos los administradores de bases de datos, del sistema y de la nube. Se conservan los datos históricos. Si se actualiza una fila en la base de datos, su valor anterior se conserva en una tabla de historial. Esto ofrece protección sin cambios en la aplicación.

El libro de contabilidad es una característica de Azure SQL Database. Se puede habilitar en cualquier Azure SQL Database existente.

Comparación de opciones

Libro de contabilidad confidencial y libro de contabilidad de Azure SQL Database

En esta tabla se compara el libro de contabilidad confidencial con el libro de contabilidad de Azure SQL Database.

Libro de contabilidad de SQL Database Confidential Ledger
Sistema centralizado que requiere evidencia de alteraciones No
Sistema descentralizado que requiere que los datos sean prueba de alteraciones No
Protege los datos relacionales ante alteraciones No
Protege los datos no estructurados ante alteraciones No
Almacenamiento seguro fuera de la cadena de datos en una cadena de bloques No
Almacenamiento seguro fuera de la cadena para archivos a los que se hace referencia desde una cadena de bloques No
Los datos relacionales se pueden consultar No
Los datos almacenados no estructurados se pueden consultar No

Libro de contabilidad confidencial y Azure Blob Storage

La característica de almacenamiento inmutable de Azure Blob Storage garantiza que los datos escritos en él se puedan leer, pero no modificar. En esta tabla se compara esa tecnología con el libro de contabilidad confidencial.

Confidential Ledger Almacenamiento inmutable
Enclaves de hardware confidenciales No
Integridad de los datos solo de anexo Sí, limitado a intervalos
Cifrado de datos en uso No
Prueba del libro de contabilidad de cadena de bloques No

Decisión de informática entre varias partes

En este diagrama se resumen las opciones para la informática entre varias partes mediante los servicios de Azure.

Diagrama que resume las decisiones para elegir una opción de informática entre varias partes.

Descargue un archivo Visio de esta arquitectura.

Pasos siguientes