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..41a3e1b49850d1cfbb2028b3c52d7160e8d16751 |
--- /dev/null |
+++ b/board/tegra2/common/crypto/crypto.h |
@@ -0,0 +1,53 @@ |
+/** |
+ * 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. |
+ */ |
robotboy
2010/11/19 22:48:55
This needs to have a GPL v2 header. Thanks.
|
+ |
+/* |
+ * crypto.h - Definitions for the crypto support. |
+ */ |
+ |
+#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); |
+ |
+#if defined(__cplusplus) |
+} |
+#endif |
+ |
+#endif /* #ifndef INCLUDED_CRYPTO_H */ |