Detalhes de uso da PSE
Não foi possível determinar para Intel® Software Guard Extensions (Intel® SGX) invoque a PSE e para que ele é usado
O Intel® Software Guard Extensions (Intel® SGX) de comprovação remota de ponta a ponta explica a finalidade do Enclave de Serviços de Plataformas (PSE):
"O PSE é um enclave de arquitetura incluído no pacote de software Intel SGX que fornece serviços para tempo confiável e um balcão hemásico. Eles podem ser usados para proteção de replay durante a geração nonce e para calcular com segurança a duração do tempo em que um segredo deve ser válido."
A PSE é usada principalmente em dois cenários:
-
Comprovação remota: consulte Intel® Software Guard Extensions seção De registro de sessão remota e protegida no Guia de referência do desenvolvedor Intel SGX para Windows* e para o exemplo de comprovação remota de ponta a ponta do Intel® Software Guard Extensions para obter detalhes sobre o fluxo de comprovação remota. A PSE só pode ser invocada por enclaves. O aplicativo ISV, também conhecido como aplicativo não b_pse falsa, informa o enclave a usar o PSE. O enclave então passa b_pse para sgx_ra_init, que é usado para gerar o contexto de comprovação remota. Quando esta variável é definida, o Msg3, do cliente ao prestador de serviços, inclui informações sobre serviços da plataforma. Após receber o Msg3, a carga que o prestador de serviço envia para o Serviço de Comprovação da Intel (IAS) incluirá um 1º (7º) 7º (2016- 2016) e um nonce (nonce) do PSE. Consulte a seção de carga de comprovação de evidência da especificação Intel SGX API de comprovação para as definições do PSE Meu nome e seu nonce. O Relatório de verificação de certificação que a IAS envia para o Prestador de Serviços inclui um campo chamado pseManistarStatus, que informa ao provedor de serviços se as propriedades de segurança do Serviço de plataforma Intel SGX foram verificadas e atualizadas.
Uma sessão de PSE deve ser estabelecida para solicitar o serviço da plataforma. A implementação do enclave no sgx-ra-sample mostra como usá-sgx_create_pse_session com base no valor da b_pse.
- Dados de selagem Intel SGX: consulte a seção Dados seladas no Guia de referência do desenvolvedor do Windows para obter informações sobre como o contador e os serviços de tempo confiáveis, fornecidos pela PSE, são usados para proteger segredos do enclave armazenados fora do enclave, como no disco. Consulte a amostra de SealedData no Intel SGX SDK do Windows para obter detalhes da implementação.
Os enclaves executados em hardware de servidor não têm um Enclave de Serviços de Plataforma e não podem utilizar recursos específicos do cliente.
O suporte para serviços de plataforma Intel® Software Guard Extensions (Intel® SGX) foi removido de todas as plataformas baseadas no Linux*, incluindo plataformas de clientes, começando com Intel SGX SDK para Linux 2.9.
A API de Intel SGX para contadores hemônicas ainda faz parte do SDK Intel® Software Guard Extensions (Intel® SGX) para Windows* e é suportada nas plataformas Windows® 10 por meio do software de plataforma Intel SGX para Windows*. O Intel SGX de plataforma para Windows geralmente é instalado através do Windows Update do fabricante da plataforma.