blob: 78acbfaf1368f3bd8a2ae3e6f6bc37bccab621c3 [file] [log] [blame]
Vadim Bendebury7b722a02015-05-29 22:40:54 -07001/*
2 * Copyright 2015 The Chromium OS Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file.
5 */
6
7#ifndef __TPM2_TICKET_FP_H
8#define __TPM2_TICKET_FP_H
9
Vadim Bendeburyc5193c52015-06-01 16:24:20 -070010void TicketComputeAuth(
Vadim Bendeburyf788ffb2015-06-05 12:57:27 -070011 TPM_ST type, // IN: the type of ticket.
12 TPMI_RH_HIERARCHY hierarchy, // IN: hierarchy constant for ticket
13 UINT64 timeout, // IN: timeout
14 TPM2B_DIGEST *cpHashA, // IN: input cpHashA
15 TPM2B_NONCE *policyRef, // IN: input policyRef
16 TPM2B_NAME *entityName, // IN: name of entity
17 TPMT_TK_AUTH *ticket // OUT: Created ticket
18 );
Vadim Bendebury7b722a02015-05-29 22:40:54 -070019void TicketComputeCreation(
Vadim Bendeburyf788ffb2015-06-05 12:57:27 -070020 TPMI_RH_HIERARCHY hierarchy, // IN: hierarchy for ticket
21 TPM2B_NAME *name, // IN: object name
22 TPM2B_DIGEST *creation, // IN: creation hash
23 TPMT_TK_CREATION *ticket // OUT: created ticket
24 );
Vadim Bendeburyccc99fe2015-05-27 10:10:39 -070025void TicketComputeHashCheck(
Vadim Bendeburyf788ffb2015-06-05 12:57:27 -070026 TPMI_RH_HIERARCHY hierarchy, // IN: hierarchy constant for ticket
27 TPM_ALG_ID hashAlg, // IN: the hash algorithm used to create 'digest'
28 TPM2B_DIGEST *digest, // IN: input digest
29 TPMT_TK_HASHCHECK *ticket // OUT: Created ticket
30 );
Vadim Bendebury5b7832d2015-06-01 13:19:03 -070031void TicketComputeVerified(
Vadim Bendeburyf788ffb2015-06-05 12:57:27 -070032 TPMI_RH_HIERARCHY hierarchy, // IN: hierarchy constant for ticket
33 TPM2B_DIGEST *digest, // IN: digest
34 TPM2B_NAME *keyName, // IN: name of key that signed the value
35 TPMT_TK_VERIFIED *ticket // OUT: verified ticket
36 );
37BOOL TicketIsSafe(TPM2B *buffer);
Vadim Bendebury7b722a02015-05-29 22:40:54 -070038
Vadim Bendeburyf788ffb2015-06-05 12:57:27 -070039#endif // __TPM2_TICKET_FP_H