blob: 2a83ad8222054c823dfccf357185f125d20388c3 [file] [log] [blame]
// Copyright 2018 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef LIBTPMCRYPTO_TPM_PROTO_UTILS_H_
#define LIBTPMCRYPTO_TPM_PROTO_UTILS_H_
#include <string>
#include "libtpmcrypto/tpm_encrypted_data.pb.h"
namespace brillo {
class SecureBlob;
} // namespace brillo
namespace tpmcrypto {
bool CreateSerializedTpmCryptoProto(const brillo::SecureBlob& sealed_key,
const brillo::SecureBlob& iv,
const brillo::SecureBlob& tag,
const brillo::SecureBlob& encrypted_data,
std::string* serialized);
bool ParseTpmCryptoProto(const std::string& serialized,
brillo::SecureBlob* sealed_key,
brillo::SecureBlob* iv,
brillo::SecureBlob* tag,
brillo::SecureBlob* encrypted_data);
} // namespace tpmcrypto
#endif // LIBTPMCRYPTO_TPM_PROTO_UTILS_H_