blob: 5a9ea59ac7ecfd053cd367930141639cd6494908 [file] [log] [blame]
// Copyright 2021 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
namespace cryptohome;
table TpmBoundToPcrState {
// This denotes if the password is fed through scrypt before going to
// the TPM.
scrypt_derived:bool = false (id: 0);
// The salt used when binding to the TPM.
salt:[ubyte] (id: 1);
// The VKK wrapped with the user's password by the tpm.
tpm_key:[ubyte] (id: 2);
// Same as tpm_key, but extends the PCR to only allow one user until reboot.
extended_tpm_key:[ubyte] (id: 3);
// A check if this is the same TPM that wrapped the credential.
tpm_public_key_hash:[ubyte] (id: 4);
}
// TODO(b/200961210): add more AuthBlockStates.
union AuthBlockStateUnion { TpmBoundToPcrState }
table SerializedAuthBlockState {
auth_block_state:AuthBlockStateUnion;
}
root_type SerializedAuthBlockState;