Как исправить ошибку «Общий сбой» в кодировке TPM - PullRequest
1 голос
/ 03 мая 2019

Я хочу использовать tpm nvstore для записи и чтения. Когда программа запускается до «Tspi_NV_Definespace», возникает «общий сбой». Я хочу найти, как я могу ее решить.

Tspi_Context_Create(&hContext);

Tspi_Context_Connect(hContext, NULL);//connect to local host

Tspi_Context_GetTPMObject(hContext, &hTPM);//get handle 

Tspi_GetPolicyObject(hTPM, TSS_POLICY_USAGE, &hOwnerPolicy);
Tspi_Policy_SetSecret(hOwnerPolicy, TSS_SECRET_MODE_PLAIN, strlen(secret), secret);//set secret

Tspi_Context_CreateObject(hContext, TSS_OBJECT_TYPE_NV, 0, &hNvStore);//create nvram object
Tspi_SetAttribUint32(hNvStore, TSS_TSPATTRIB_NV_INDEX, 0, 1);
Tspi_SetAttribUint32(hNvStore, TSS_TSPATTRIB_NV_PERMISSIONS, 0, TPM_NV_PER_AUTHWRITE);//permit to write


Tspi_SetAttribUint32(hNvStore, TSS_TSPATTRIB_NV_DATASIZE, 0, dataLen);

result = Tspi_NV_DefineSpace(hNvStore, 0, 0);
...