Cara mengakses pustaka yang tidak terpercaya dari dalam enclave Intel® Software Guard Extensions (Intel® SGX)
- Mencoba untuk menghubungkan enklave dengan pustaka statis yang tidak ada dalam daftar pustaka tepercaya.
- Langkah penandatangan enclave gagal dengan galat: enclave berisi tabel impor.
Mencoba untuk menghubungkan enklave ke pustaka dinamis atau pustaka yang tidak terpercaya akan gagal dalam proses penandatangan.
Menghubungkan enklave ke pustaka statis tepercaya yang tercantum di bagian Pustaka Tepercaya di bagian Panduan Referensi Pengembang Intel® Software Guard Extensions (Intel® SGX) untuk Windows* atau Linux*.
Alih-alih memanggil pustaka yang tidak terpercaya langsung dari enclave, kembangkan fungsi antarmuka dalam aplikasi tidak terpercaya Anda yang mengakses pustaka yang tidak terpercaya.
Kemudian buat OCALLs ke fungsi antarmuka yang tidak terpercaya. Enclave secara tidak langsung mengakses pustaka melalui OCALLs ke fungsi antarmuka dalam aplikasi yang tidak terpercaya.
Lihat Intel® Software Guard Extensions Developer SDK untuk Windows* OS untuk informasi lebih lanjut tentang menghubungkan enclaves dengan pustaka.
Dalam bagian Menghubungkan Enclave dengan Pustaka:
"DLL enclave tidak boleh tergantung pada pustaka yang terhubung secara dinamis dengan cara apa pun... Proses penandatangan citra enclave akan gagal jika berkas enclave memiliki ketergantungan yang tidak terselesaikan. Ini berarti bahwa enclave harus memiliki IAT (Import Address Table) kosong."
Di bagian Pustaka Tepercaya:
"Jangan menghubungkan enclave dengan pustaka apa pun yang tidak terpercaya termasuk pustaka standar C/C++. Tindakan ini akan gagal dalam proses penandatangan enclave atau menyebabkan kegagalan runtime karena penggunaan instruksi terbatas."