Détails d’utilisation du PSE
Impossible de déterminer quel composant Intel® Software Guard Extensions (Intel® SGX) invoque l’ESP et à quoi il sert
L’Intel® Software Guard Extensions à distance attestation Intel® SGX de bout en bout explique l’objectif de l’enclave de services de plateforme (PSE) :
« Le PSE est une enclave architecturale incluse dans le package de logiciels Intel SGX qui fournit des services pour une durée de confiance et un compteur monotonique. Ils peuvent être utilisés pour la protection de la rediffusion pendant la génération nonce et pour calculer en toute sécurité la durée pour laquelle un secret doit être valide. »
Le PSE est utilisé principalement dans deux scénarios :
-
Attestation à distance : reportez-vous à la section Attestation à distance et session protégée c’est-à-dire dans le Guide de référence des développeurs Intel SGX pour Windows* et à l’exemple de bout en bout de l’attestation à distance Intel® Software Guard Extensions pour obtenir des détails sur le flux d’attestation à distance. Le PSE ne peut être invoqué que par des enclaves. L’application ISV, également connue sous le nom d’application nontrusted, demande à l’enclave d’utiliser PSE à l’aide de la variable b_pse explo. L’enclave passe ensuite b_pse au sgx_ra_init, qui est utilisé pour générer le contexte d’attestation à distance. Lorsque cette variable est définie, Msg3, du client au fournisseur de services, inclut des informations sur les services de plateforme. Lors de la réception de Msg3, la charge utile que le fournisseur de services envoie au service d’attestation Intel (IAS) comprendra une charge utile pSE Et le nonce. Reportez-vous à la section Attestation de charge utile probante de l’API de l’attestation Intel SGX pour obtenir des définitions de la charge utile et du nonce PSE. Le rapport de vérification de l’attestation que l’IAS envoie au fournisseur de services comprend un champ appelé pseAutreverstatus, qui indique au fournisseur de services si les propriétés de sécurité du Service de la plateforme Intel SGX ont été vérifiées et à jour.
Une session PSE doit être établie pour demander un service de plateforme. L’implémentation de l’enclave dans l’exemple sgx-ra montre comment utiliser les sgx_create_pse_session en fonction de la valeur de b_pse.
- Données sur le joint : reportez-vous à la section Données scellées dans le Guide de référence des développeurs d’Intel SGX pour obtenir des informations sur la façon dont le compteur monotonique et les services de temps de confiance, fournis par le PSE, sont utilisés pour protéger les secrets de l’enclave qui sont stockés en dehors de l’enclave, comme sur le disque. Pour obtenir des détails sur la mise en œuvre, consultez l’exemple de SealedData dans le Intel SGX SDK pour Windows.
Les enclaves fonctionnant sur du matériel serveur ne disposent pas d’une enclave de services de plateforme et ne peuvent pas utiliser de fonctionnalités spécifiques au client.
La prise en charge des services de plateformes Intel® Software Guard Extensions (Intel® SGX) a été supprimée de toutes les plates-formes basées sur Linux*, y compris les plates-formes clientes, à partir de Intel SGX SDK pour Linux 2.9.
L’API Intel SGX pour compteurs monotoniques fait toujours partie du SDK Intel® Software Guard Extensions (Intel® SGX) pour Windows* et est prise en charge sur les plates-formes Windows® 10 par le biais du logiciel de la plate-forme Intel SGX pour Windows*. Le logiciel Intel SGX Plate-forme logicielle pour Windows est généralement installé par Windows Update du fabricant de la plate-forme.