/* SPDX-License-Identifier: GPL-2.0+ */ /* * Copyright (c) 2011 The Chromium OS Authors. * (C) Copyright 2010 - 2011 NVIDIA Corporation */ #ifndef _CRYPTO_H_ #define _CRYPTO_H_ /** * Sign a block of data * * \param source Source data * \param length Size of source data * \param signature Destination address for signature, AES_KEY_LENGTH bytes */ int sign_data_block(u8 *source, unsigned int length, u8 *signature); /** * Sign an encrypted block of data * * \param source Source data * \param length Size of source data * \param signature Destination address for signature, AES_KEY_LENGTH bytes * \param key AES128 encryption key */ int sign_enc_data_block(u8 *source, unsigned int length, u8 *signature, u8 *key); /** * Encrypt a block of data * * \param source Source data * \param length Size of source data * \param key AES128 encryption key */ int encrypt_data_block(u8 *source, unsigned int length, u8 *key); /** * Decrypt a block of data * * \param source Source data * \param length Size of source data * \param key AES128 encryption key */ int decrypt_data_block(u8 *source, unsigned int length, u8 *key); #endif /* #ifndef _CRYPTO_H_ */