在Intel® SGX指定位址不受支援的 C++ 標準程式庫
為什麼無法在指定位址使用std::stringstream?
字串流是 但Intel SGX不支援。 Intel SGX SDK 開發者參考指南指出 :
「至於 C++ 標準資料庫,大部分功能將和其不受信任的同級資料庫一樣運作,但以下是一份在指定位址內不支援之功能的高階摘要:
- I/O 相關的功能與類別,例如 ;
- 功能取決於本機庫;
- 任何其他需要系統通話的功能。」
不受支援的 C++ 標準類別與功能區段包含一張表格,標題為「輸入/輸出庫」,其中將 iostream 列為不支援。
作為在指定位址記憶體取物聯網功能的解決方法,請建立一個 ocall,代表指定位址在不受信任的應用程式中稱呼物聯網功能。SGX 軟體發展工具組 (SGX SDK) 中的 SampleEnclave 範例展示了如何在指定位址內執行使用 印表機 的 ocall。