2 votes

Utilisation d'OpenSSL avec Intel SGX Enclave

Je développe actuellement une application Intel SGX. Et j'ai besoin d'utiliser la bibliothèque OpenSSL dans l'enclave. Cependant, lorsque je construis l'enclave, des tonnes d'erreurs apparaissent. Elles ressemblent à ceci :

Error   17  error C2061: syntax error : identifier 'FILE'   C:\OpenSSL-Win32\include\openssl\asn1.h 994 1   Enclave

Je ne suis pas sûr d'avoir configuré l'enclave correctement.

VC++ Directories --> Include Directories "C://OpenSSL-Win32/include"
                     Library Directories "C://OpenSSL-Win32/lib"
C/C++ --> Additional Include Directories "(some SGX default); C://OpenSSL-Win32/include"
Linker --> General --> Additional Library Directories "C://OpenSSL-Win32/lib"
           Input --> Additional Dependencies: "libeay32.lib; ssleay32.lib"

Toute aide est appréciée.

2voto

qweruiop Points 1078

Dans le même but, j'ai porté mbedtls à l'environnement SGX. La version portée est disponible sur GitHub . N'hésitez pas à passer à la caisse.

1voto

Zahra Tarkhani Points 26

Utilisez-vous la bibliothèque OpenSSL de confiance d'Intel ? Il existe un exemple de code "X509 project" qui montre comment utiliser la bibliothèque OpenSSL de confiance (topenssl) dans les enclaves. Si vous voulez utiliser une autre version d'OpenSSL, vous devez la construire avec les bibliothèques C/C++ standard d'Intel et créer une "bibliothèque d'enclave" puis la lier à l'enclave. Vous ne pouvez pas lier l'enclave avec des bibliothèques aléatoires, mais uniquement avec des bibliothèques statiques fiables.

0voto

Florian Points 164

Vous pouvez également consulter TaLoS qui semble faire ce que vous voulez :

TaLoS est une bibliothèque TLS qui permet aux applications existantes (avec une interface OpenSSL/LibreSSL) de terminer de manière sécurisée leur connexion TLS à l'intérieur d'une enclave Intel SGX. Le code est disponible sur GitHub .

Il existe également un rapport technique contenant des détails sur l'architecture et les résultats des performances.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X