ID de l'article: 000089477 Type de contenu: Maintenance et performances Dernière révision: 14/02/2022

L’initialisation d’une enclave de Intel® Software Guard Extensions (Intel® SGX) avec une grande taille de taille de la taille d’un en-cas est lente.

BUILT IN - ARTICLE INTRO SECOND COMPONENT
En bref

Cause et atténuation pour l’allocation lente d’une grande quantité de mémoire dans une enclave.

Descriptif
  • L’initialisation d’une enclave avec une taille de veille de quelques mégaoctets prend en moins d’une seconde.
  • L’initalisation d’une enclave avec une grande taille de désinitation, par exemple, 1 Go, prend plusieurs secondes.
Résolution

Cause :
L’initialisation de grandes quantités de mémoire pour une formation d’enclave devrait prendre du temps. L’initialisation et l’ajout de la mémoire dans le cache de page d’enclave (EPC) pour une enclave sont beaucoup plus complexes qu’une simple allocation de mémoire dans une application régulière. Avant qu’un morceau de mémoire ne soit ajouté à l’EPC, il doit passer par plusieurs contrôles de sécurité, y compris en utilisant une fonction de hachage sécurisée SHA-2 256 bits.

Reportez-vous aux sections 5.1, 5.3 et 5.6 de SGX expliquées, et aux instructions QUE L’on peut lire dans Intel SGX cycle de vie de l’enclave.

Atténuation:
Si le processeur prend en charge Intel® Software Guard Extensions (Intel® SGX) SGX2, dans le fichier de configuration de l’enclave :

L’entassement Est la quantité à initialiser entièrement (c.-à-d. QUE L’application AAssed la page a été complètement initialisé, puis EEXTEND ) au lancement d’une enclave, ce qui prend du temps. Avec une taille d’initialisation minimale, elle serait plus rapide et le reste de la mémoire ne serait ajouté qu’en utilisant les instructions SGX2 lorsqu’elle est allouée, via malloc, par l’enclave pendant le temps d’exécution.

Le contenu de cette page est une combinaison de traduction humaine et informatique du contenu original en anglais. Ce contenu vous est fourni pour votre commodité et à titre informatif seulement et ne saurait être totalement exact ou complet. En cas de contradiction entre la version anglaise de cette page et la traduction, c'est la version anglaise qui prévaut. Afficher la version anglaise de cette page.