| Index: board/tegra2/common/crypto/crypto.h
|
| diff --git a/board/tegra2/common/crypto/crypto.h b/board/tegra2/common/crypto/crypto.h
|
| new file mode 100755
|
| index 0000000000000000000000000000000000000000..6d5126a75554fd4f9ea8594c36d7a2a303108f0e
|
| --- /dev/null
|
| +++ b/board/tegra2/common/crypto/crypto.h
|
| @@ -0,0 +1,58 @@
|
| +/**
|
| + * Copyright (c) 2007 NVIDIA Corporation. All rights reserved.
|
| + *
|
| + * NVIDIA Corporation and its licensors retain all intellectual property
|
| + * and proprietary rights in and to this software, related documentation
|
| + * and any modifications thereto. Any use, reproduction, disclosure or
|
| + * distribution of this software and related documentation without an express
|
| + * license agreement from NVIDIA Corporation is strictly prohibited.
|
| + */
|
| +
|
| +/*
|
| + * crypto.h - Definitions for the crypto support.
|
| + */
|
| +
|
| +/*
|
| + * TODO / Notes
|
| + * - Add doxygen commentary
|
| + */
|
| +
|
| +#ifndef INCLUDED_CRYPTO_H
|
| +#define INCLUDED_CRYPTO_H
|
| +
|
| +#if defined(__cplusplus)
|
| +extern "C"
|
| +{
|
| +#endif
|
| +
|
| +/* Lengths, in bytes */
|
| +#define KEY_LENGTH (128/8)
|
| +
|
| +#define ICEIL(a, b) (((a) + (b) - 1)/(b))
|
| +
|
| +#define AES_CMAC_CONST_RB 0x87 // from RFC 4493, Figure 2.2
|
| +
|
| +typedef enum
|
| +{
|
| + security_mode_None = 0,
|
| + security_mode_Plaintext,
|
| + security_mode_Checksum,
|
| + security_mode_Encrypted,
|
| +
|
| + security_mode_Max,
|
| + security_mode_Force32 = 0x7fffffff
|
| +} security_mode;
|
| +
|
| +/* Function prototypes */
|
| +NvBootError
|
| +encrypt_and_sign_block(NvU8 *Key,
|
| + security_mode Security,
|
| + NvU8 *block_image,
|
| + NvU32 block_length,
|
| + NvU8 *signature); // TODO: was NvBootHash
|
| +
|
| +#if defined(__cplusplus)
|
| +}
|
| +#endif
|
| +
|
| +#endif /* #ifndef INCLUDED_CRYPTO_H */
|
|
|