15#include "esys_crypto.h"
32#define ESYS_TR_MIN_OBJECT (TPM2_RH_LAST + 1 + 0x1000)
38 uint8_t digest[
sizeof(TPMU_HA)];
41TSS2_RC init_session_tab(
45void iesys_DeleteAllResourceObjects(
48TSS2_RC iesys_compute_encrypt_nonce(
51 TPM2B_NONCE **encryptNonce);
53TSS2_RC iesys_compute_cp_hashtab(
55 const TPM2B_NAME *name1,
56 const TPM2B_NAME *name2,
57 const TPM2B_NAME *name3,
61TSS2_RC iesys_compute_rp_hashtab(
63 const uint8_t *rpBuffer,
68TSS2_RC esys_CreateResourceObject(
73TSS2_RC iesys_handle_to_tpm_handle(
75 TPM2_HANDLE *tpm_handle);
78iesys_is_platform_handle(
81TSS2_RC esys_GetResourceObject(
86TPM2_HT iesys_get_handle_type(
91bool iesys_compare_name(
92 TPM2B_PUBLIC *publicInfo,
95TSS2_RC iesys_compute_encrypted_salt(
98 TPM2B_ENCRYPTED_SECRET *encryptedSalt);
100TSS2_RC iesys_gen_caller_nonces(
103TSS2_RC iesys_encrypt_param(
105 TPM2B_NONCE **decryptNonce,
106 int *decryptNonceIdx);
108TSS2_RC iesys_decrypt_param(
111TSS2_RC iesys_check_rp_hmacs(
113 TSS2L_SYS_AUTH_RESPONSE *rspAuths,
117void iesys_compute_bound_entity(
118 const TPM2B_NAME *name,
119 const TPM2B_AUTH *auth,
120 TPM2B_NAME *bound_entity);
122bool iesys_is_object_bound(
123 const TPM2B_NAME * name,
124 const TPM2B_AUTH * auth,
127TSS2_RC iesys_check_sequence_async(
130TSS2_RC check_session_feasibility(
136void iesys_compute_session_value(
138 const TPM2B_NAME *name,
139 const TPM2B_AUTH *auth_value);
141TSS2_RC iesys_compute_hmac(
145 TPM2B_NONCE *decryptNonce,
146 TPM2B_NONCE *encryptNonce,
147 TPMS_AUTH_COMMAND *auth);
149TSS2_RC iesys_gen_auths(
154 TSS2L_SYS_AUTH_COMMAND *auths);
156TSS2_RC iesys_check_response(
159TSS2_RC iesys_nv_get_name(
160 TPM2B_NV_PUBLIC *publicInfo,
163TSS2_RC iesys_get_name(
164 TPM2B_PUBLIC *publicInfo,
170TSS2_RC iesys_hash_long_auth_values(
171 TPM2B_AUTH *auth_value,
172 TPMI_ALG_HASH hash_alg);
uint32_t ESYS_TR
Definition: tss2_esys.h:16
Definition: esys_int.h:160
Definition: esys_int.h:21
size_t size
Definition: esys_iutil.h:37
TPM2_ALG_ID alg
Definition: esys_iutil.h:36
Definition: esys_iutil.h:35