Introducción a Azure Managed Confidential Consortium Framework
Azure Managed Confidential Consortium Framework (Managed CCF) es un nuevo servicio muy seguro para la implementación de aplicaciones confidenciales. Permite a los desarrolladores crear aplicaciones confidenciales que requieren una confidencialidad programable sobre datos e información que podrían ser necesarios entre varias partes interesadas. Normalmente, los miembros acuerdan la constitución (las reglas que los miembros configuran) de la red, establecen reglas de gobernanza y transacciones empresariales, y estas tienen lugar en función de lo definido. Si hay cambios en la gobernanza que afectan a las reglas de negocio, el consorcio debe aprobar esos cambios.
De hecho, el marco se ejecuta exclusivamente en enclaves seguros con respaldo de hardware. Este es un entorno en tiempo de ejecución muy supervisado y aislado que mantiene a raya los posibles ataques. También se ejecuta en una base informática de confianza (TCB) minimalista y limita el rol del operador.
Como su nombre sugiere, Azure Managed CCF utiliza la plataforma de informática confidencial de Azure y Confidential Consortium Framework de código abierto como tecnología subyacente para proporcionar una plataforma sencilla, de alta integridad y que está protegida contra manipulaciones. Una instancia de Managed CCF abarca tres o más máquinas idénticas, en la que cada una se ejecuta en un enclave con respaldo de hardware dedicado y totalmente atestiguado. La integridad de los datos se mantiene a través de una cadena de bloques basada en un consenso.
En el diagrama siguiente se muestra información general de alto nivel de las distintas capas de la plataforma Managed CCF y dónde encaja el código de la aplicación.
Características clave
Algunas características clave de Managed CCF son la confidencialidad, la gobernanza personalizable, la alta disponibilidad, la auditoría y la transparencia.
Confidencialidad
Los nodos se ejecutan dentro de un entorno de ejecución de confianza (TEE) basado en hardware, que garantiza que los datos están protegidos y cifrados mientras están en uso, mientras están en la memoria RAM y durante el cálculo. En el diagrama siguiente se muestra cómo se protege el código y los datos mientras están en uso.
Gobernanza personalizable
Los participantes, denominados miembros, comparten la responsabilidad de la operabilidad de la red establecida mediante una constitución. El modelo de gobernanza compartida establece confianza y transparencia entre los miembros a través de un proceso de votación público y auditable. La constitución se implementa como un conjunto de scripts de JavaScript que se pueden personalizar durante la creación de la red y posteriormente. En el diagrama siguiente se muestra cómo los miembros participan en una operación de gobernanza para aceptar o rechazar una acción propuesta aplicada por la constitución.
Alta disponibilidad y resistencia
Un recurso de Managed CCF se basa en una red de nodos distribuidos que mantiene una réplica idéntica de las transacciones. La plataforma está diseñada y creada desde el principio para ser tolerante a errores y resistente a las interrupciones de red e infraestructura. La plataforma garantiza una alta disponibilidad y recuperación rápida del servicio mediante la propagación de los nodos entre instancias de Azure Availability Zones. Cuando se produce un desastre inesperado, la capacidad de recuperación rápida y la continuidad empresarial se habilitan mediante la copia de seguridad automática y la restauración de los archivos del libro de contabilidad.
Auditabilidad y transparencia
El estado de la red es auditable mediante recibos. Un recibo es una prueba firmada asociada a una transacción. Los recibos se pueden comprobar sin conexión y de esta comprobación se pueden encargar terceros, y equivalen a afirmar "esta transacción produjo este resultado en esta posición en la red". Junto con una copia del libro de contabilidad u otros recibos, se pueden usar para auditar el servicio y mantener la responsabilidad en el consorcio.
Las operaciones de gobernanza y las asignaciones de valores de clave pública asociadas se almacenan en texto sin formato en el libro de contabilidad. Se recomienda a los clientes que descarguen el libro de contabilidad y comprueben su integridad mediante scripts de código abierto que se envían con CCF.
Apto para desarrolladores
Los desarrolladores pueden usar herramientas de desarrollo conocidas como Visual Studio Code y lenguajes de programación como TypeScript, JavaScript y C++ combinados con Node.js para desarrollar aplicaciones confidenciales destinadas a la plataforma de Managed CCF. Las aplicaciones de ejemplo de código abierto se publican como referencia y se actualizan continuamente en función de los comentarios.
CCF de código abierto (IaaS) en comparación con Azure Managed CCF (PaaS)
Los clientes pueden crear aplicaciones destinadas a Confidential Consortium Framework (CCF) y hospedarlas ellos mismos. Pero, al igual que cualquier otra aplicación autohospedada, requiere mantenimiento y aplicación de revisiones con regularidad (tanto hardware como software) lo cual consume tiempo y recursos. Azure Managed CCF facilita la abstracción de las operaciones diarias, lo que permite a los equipos centrarse en las prioridades empresariales principales. En el diagrama siguiente se comparan y contrastan las diferencias entre una red de CCF autohospedada con Azure Managed CCF.