SGX
Intel SGX, Software Guard Extensions, proporciona mecanismos de ejecución en enclaves con un modelo de amenazas y una interfaz de software específicos. El soporte de la CPU no es suficiente para determinar que una aplicación de enclave pueda ejecutarse en un sistema determinado.
Lo que necesita saber
Intel SGX, Software Guard Extensions, proporciona mecanismos de ejecución en enclaves con un modelo de amenazas y una interfaz de software específicos. El soporte de la CPU no es suficiente para determinar que una aplicación de enclave pueda ejecutarse en un sistema determinado.
Cómo funciona
SGX define la memoria del enclave y los mecanismos de entrada/salida, con una caché de páginas de enclave gestionada mediante el soporte de la plataforma y del SO. Una aplicación de enclave separa los componentes de confianza de los que no lo son y puede usar la atestación para establecer la identidad del enclave. La cantidad de memoria de enclave utilizable y la política de inicio admitida son específicas de la plataforma.
Dónde resulta útil
Una aplicación puede situar cómputos de alcance estrictamente limitado y secretos dentro de un enclave mientras trata al host circundante como fuera de su límite de confianza. Las E/S, las entradas que no son de confianza, el comportamiento de las excepciones y las consideraciones de canales laterales aún requieren un diseño explícito.
Cómo comprobar la compatibilidad y la habilitación
Compruebe el bit 2 de CPUID.07H.00H:EBX y la información de la hoja 12H de CPUID específica de SGX, luego verifique el aprovisionamiento del firmware, el soporte del controlador/entorno de ejecución y los requisitos de atestación de la aplicación. Siga la configuración admitida exacta de la plataforma.
La capacidad, la habilitación y la aplicación obligatoria deben comprobarse por separado. Un procesador puede admitir una protección mientras que el sistema operativo, la aplicación o la directiva de la máquina virtual no la activan. El campo de compatibilidad de una base de datos no es una atestación de un sistema en ejecución.
Lo que la función no establece
Una etiqueta SGX no establece detalles de SGX1/SGX2, control de inicio flexible, disponibilidad del servicio de atestación ni una capacidad concreta de memoria de enclave. No hace confidenciales a aplicaciones arbitrarias no modificadas ni elimina todos los canales laterales.
Compatibilidad y rendimiento en la práctica
Mantenga actualizados el sistema operativo, el firmware y el entorno de ejecución afectado. Si una protección pone de manifiesto un problema de compatibilidad, utilice primero los diagnósticos del proveedor y las actualizaciones compatibles. Un interruptor de protección general puede afectar a aplicaciones no relacionadas y debe seguir una directiva explícita de despliegue y recuperación.
Lista de comprobación práctica para la verificación
- Registre el modelo exacto de procesador o plataforma, así como las versiones de la aplicación, el sistema operativo y el entorno de ejecución involucrados. Conserve la redacción del error o requisito real.
- Consulte la referencia del fabricante para ese modelo exacto y, a continuación, inspeccione la capacidad efectiva y el estado habilitado en el entorno donde se ejecuta el programa.
- Compare cada requisito del binario o backend seleccionado. Una función con nombre similar, un alias o una etiqueta de tecnología general no son suficientes.
- Confirme que la aplicación haya seleccionado la implementación prevista. Utilice sus diagnósticos documentados y una alternativa compatible cuando no se cumplan los requisitos.
- Realice un cambio admitido a la vez y repita la misma carga de trabajo. Mantenga disponibles la configuración original y la vía de recuperación.
Si la función aparece listada pero el software no puede usarla
Comience con el componente exacto que falla. Una base de datos de hardware describe la capacidad registrada; el sistema operativo o el hipervisor pueden exponer un entorno efectivo diferente. Un error de instrucción no válida también requiere investigar la instrucción que generó el fallo y la compilación del binario en sí, ya que la corrupción o una instrucción no compatible no relacionada pueden producir un síntoma similar.
Instale la versión de la aplicación, controlador o entorno de ejecución compatible con la plataforma exacta, y utilice la compilación de referencia o de contingencia documentada por el fabricante si es necesario. Una actualización de software no puede crear una instrucción de la que el procesador carece. Los cambios de firmware y directivas de seguridad deben seguir el procedimiento del fabricante del sistema y un plan de recuperación, en lugar de una fórmula de optimización genérica.
Fuentes y alcance de esta explicación
Intel 64 and IA-32 Architectures Software Developer's Manual · Implementación de referencia para desarrolladores de Intel SGX
Estas referencias establecen el comportamiento arquitectónico y los requisitos de software. No verifican de forma independiente cada valor de función en la página de un modelo de hardware vinculado. Para conocer la compatibilidad de un modelo, consulte las pruebas del fabricante en dicha página y compruebe la configuración efectiva del sistema. Este artículo no proporciona una prueba de rendimiento, certificación ni fecha de revisión independiente.
Fuentes y verificación
Titularidad editorial: Feex. No se registra ninguna fecha de revisión independiente. Cómo investigamos.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Los volúmenes 1 y 2 describen las familias de instrucciones designadas y CPUID; el volumen 3 describe el estado, la paginación, VMX y los controles de protección. La documentación de la arquitectura no establece la compatibilidad con un modelo en particular.
- Implementación de referencia para desarrolladores de Intel SGX · Proyecto oficial de SDK/entorno de ejecución y referencias para el despliegue de enclaves. Los requisitos exactos de la plataforma y de atestación siguen siendo específicos de la aplicación.
¿Fue útil este artículo?
Un sí o un no es suficiente. Elija un motivo si lo desea o agregue una breve nota.
Gracias. Eso nos ayuda a mejorar esta página.