I'm a student in internship and one of my tasks is to PROVE that :
1) when we create a key via "create_tpm_key.c" (from the libengine-openssl), 
it's really generated from the TPM and inside the TPM
2) and that the SRK and the key - during it's creation 1) - are not 
visible/readable in memory (I guess mutex is not enough?)

My config :
- TrouSerS 0.3.13
- Ubuntu desktop 14.04 64bits
- libengine-tpm-openssl-0.4.1+20071221
- OpenSSL 0.9.8zg 11 Jun 2015


For the first point, I follow the call hierarchy/tree of the sourcecode (with 
the help of http://sourcecodebrowser.com/trousers/0.3.1/ ,sometimes not 
complete for my version), and the main calls are :
"create_tpm_key.c" 
-> calls Tspi_Key_CreateKey
    -> calls TCS_API(tspContext)->CreateWrapKey(...)
        CreateWrapKey is RPC_CreateWrapKey or Transport_CreateWrapKey, am I 
right?

I didn't really understand what they means (juste RPC for 
RemoteProcedureCall?), but found that both call "sendTCSDPacket"
And then data are send and receive with socket?? where/when is the TPM 
introduced?
I didn't find when/where we ask the TPM to generate a key...

I find another function "tcs_wrap_CreateWrapKey" in 
/src/tcs/rpc/tcstp/rpc_key.c, which calls TCSP_CreateWrapKey_Internal
This function calls the Tddli_TransmitData, so there I see the link with the TPM
(the "transmit" argument : TDDL_TRANSMIT_IOCTL is for I/O, but what about 
TDDL_TRANSMIT_RW?)
But I didn't find when the tcs_wrap_CreateWrapKey is used.

If anybody can help me...
(and sorry for my english)

Thank's a lot.

J.                                        
------------------------------------------------------------------------------
_______________________________________________
TrouSerS-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/trousers-users

Reply via email to