2017-01-16 67 views
6

我能夠在硬件模式下使用SGX運行並從IAS成功檢索SigRL。但是當我嘗試使用REST API執行報價認證時,我很掙扎。我使用了REST API接口描述here。 我成功地連接到服務器的HTTP POST請求SGX與IAS的報價認證

https://test-as.sgx.trustedservices.intel.com:443/attestation//sgx/v1/report 

但我總是收到一個錯誤:400錯誤的請求!?

在客戶端,我得到消息3如下

ret = sgx_ra_proc_msg2(this->enclave->getContext(), 
           this->enclave->getID(), 
           sgx_ra_proc_msg2_trusted, 
           sgx_ra_get_msg3_trusted, 
           p_msg2, 
           size, 
           &p_msg3, 
           &msg3_size); 

返回SGX_SUCCESS。 後來我在p_msg3結構

std::string quoteStr = ConvertToString(p_msg3->quote); 
quoteStr = EncodeToBase64(quoteStr); 

準備報價,最後我把報價在JSON字符串導致

{"isvEnclaveQuote": "MDIwMDAxMDBlMzBhMDAwMDA0MDA...RiMjUyYTgxOGE4NTIzMzQxZDY3"} 

這是現在發送有效載荷到IAS。

回答

0

400 Bad Request通常會在您的報價出現問題時返回。

請仔細檢查您是否SPID鏈接性選項用於創建報價比賽和你使用IAS註冊一個。