Enclavi delle applicazioni

Le enclave dell'applicazione, ad esempio Intel SGX, sono ambienti isolati che proteggono codice e dati specifici. Quando si creano le enclavi, è necessario determinare quale parte dell'applicazione viene eseguita all'interno dell'enclave. Quando si creano o gestiscono le enclavi, assicurarsi di usare SDK e framework compatibili per lo stack di distribuzione scelto.

Microsoft Mechanics

Sviluppo di applicazioni

In un'applicazione creata con enclavi esistono due partizioni:

L'host è il componente "non attendibile". L'applicazione enclave viene eseguita sopra l'host. L'host è un ambiente non attendibile. Quando si distribuisce il codice dell'enclave nell'host, l'host non può accedere a tale codice.

L'enclave è il componente "attendibile". L'enclave è il punto in cui viene eseguito il codice dell'applicazione e i relativi dati memorizzati nella cache e nella memoria. L'ambiente enclave protegge i segreti e i dati sensibili. Assicurarsi che i calcoli protetti vengano eseguiti in un enclave.

Diagramma di un'applicazione, che mostra le partizioni host ed enclave. All'interno dell'enclave sono presenti i componenti del codice dell'applicazione e dei dati.

Per usare le potenzialità delle enclavi e degli ambienti isolati, scegliere strumenti che supportino il confidential computing. Sono diversi gli strumenti che supportano lo sviluppo di applicazioni enclave. È ad esempio possibile usare questi framework open source:

Durante la progettazione di un'applicazione, identificare e determinare quale parte della stessa deve essere eseguita nelle enclavi. Il codice nel componente attendibile è isolato dal resto dell'applicazione. Dopo l'inizializzazione dell'enclave e il caricamento del codice nella memoria, i componenti non attendibili non possono leggere o modificare tale codice.

Passaggi successivi