Tspi_Context_UnregisterKey - age device.
#include <tss/platform.h> #include <tss/tcpa_defines.h> #include <tss/tcpa_typedef.h> #include <tss/tcpa_struct.h> #include <tss/tss_typedef.h> #include <tss/tss_structs.h> #include <tss/tspi.h> TSS_RESULT Tspi_Context_UnregisterKey(TSS_HCONTEXT hContext, TSS_FLAG persistentStorageType, TSS_UUID uuidKey, TSS_HKEY* phKey);
TCG Software Stack Developer's Reference Tspi_Context_UnregisterKey(3) NAME Tspi_Context_UnregisterKey - unregister a key from the persistent stor- age device. SYNOPSIS #include <tss/platform.h> #include <tss/tcpa_defines.h> #include <tss/tcpa_typedef.h> #include <tss/tcpa_struct.h> #include <tss/tss_typedef.h> #include <tss/tss_structs.h> #include <tss/tspi.h> TSS_RESULT Tspi_Context_UnregisterKey(TSS_HCONTEXT hContext, TSS_FLAG persistentStorageType, TSS_UUID uuidKey, TSS_HKEY* phKey); DESCRIPTION TSS_Context_UnregisterKey provides the capabilities of the TSS Core Service or TSS Service Provider PARAMETERS hContext The handle of the context object. persistentStorageType Flag indicating the persistent storage. uuidKey The UUID of the key to be removed from the persistent storage. phKey Recieves the handle of a key object containing the information from the archive. pulRespDataLength Recieves the length (in bytes) of the prgbRespData parameter. prgbRespData On successful completion of the command, this parameter points to the buffer containing the actual data of the specified capability. The handle of the object to be destroyed RETURN CODES Tspi_Context_UnregisterKey returns TSS_SUCCESS on success, otherwise one of the following values are returned: TSS_E_INVALID_HANDLE - the parameter hContext is an invalid parameter. TSS_E_PS_KEY_NOTFOUND - the parameter uuidKey is an invalid UUID. TSS_E_INTERNAL_ERROR - An error occurred internal to the TSS. EXAMPLE #include <trousers/tss.h> int main(void) { TSS_FLAGS initFlags = ...; TSS_HKEY hKey, hSRK; TSS_UUID keyUUID = {...}; // Create a TSP handle result = Tspi_Context_Create(&hContext); if (result != TSS_SUCCESS) Error_Path(); // Connect to the TCSD result = Tspi_Context_Connect(hContext, GLOBALSERVER); if (result != TSS_SUCCESS) Error_Path(); // Create the Key Object result = Tspi_Context_CreateObject(hContext, TSS_OBJECT_TYPE_RSAKEY, initFlags, &hKey); if (result != TSS_SUCCESS) Error_Path(); // Load parent Key by UUID result = Tspi_Context_LoadKeyByUUID(hContext, TSS_PS_TYPE_SYSTEM, SRK_UUID, &hSRK); if (result != TSS_SUCCESS) Error_Path(); // Do policy/secret handling here result = Tspi_Key_CreateKey(hKey, hSRK, 0); if (result != TSS_SUCCESS) Error_Path(); // Register the Key in System PS (on the TCSD's platform) result = Tspi_Context_RegisterKey(hContext, hKey, TSS_PS_TYPE_SYSTEM, keyUUID, TSS_PS_TYPE_SYSTEM, SRK_UUID); if (result != TSS_SUCCESS) Error_Path(); /* ... * * Use the key as needed, exiting the program if necessary, reloading * the key using Tspi_Context_LoadKeyByUUID() after each restart. Once * the key is no longer useful, unregister it from system PS as part * of clean up. */ // Unregister the Key result = Tspi_Context_UnregisterKey(hContext, TSS_PS_TYPE_SYSTEM, migratableSignUUID, &hKey); if (result != TSS_SUCCESS) Error_Path(); // exit, discarding hKey } CONFORMING TO Tspi_Context_UnregisterKey conforms to the Trusted Computing Group Software Specification version 1.1 Golden ATTRIBUTES See attributes(7) for descriptions of the following attributes: +---------------+---------------------------+ |ATTRIBUTE TYPE | ATTRIBUTE VALUE | +---------------+---------------------------+ |Availability | library/security/trousers | +---------------+---------------------------+ |Stability | Uncommitted | +---------------+---------------------------+ SEE ALSO Tspi_Key_CreateKey(3), Tspi_Context_RegisterKey(3). NOTES Source code for open source software components in Oracle Solaris can be found at https://www.oracle.com/downloads/opensource/solaris-source- code-downloads.html. This software was built from source available at https://github.com/or- acle/solaris-userland. The original community source was downloaded from https://source- forge.net/projects/trousers/files/trousers/0.3.15/trousers-0.3.15.tar.gz. Further information about this software can be found on the open source community website at http://trousers.sourceforge.net/. TSS 1.1 2004-05-26 Tspi_Context_UnregisterKey(3)