[Cryptech-Commits] [sw/libhal] 02/03: If a KEK is given to keywrap/unwrap, zero it out of the keywrap core after use.
git at cryptech.is
git at cryptech.is
Tue Apr 9 22:20:57 UTC 2019
This is an automated email from the git hooks/post-receive script.
paul at psgd.org pushed a commit to branch auto_zeroise
in repository sw/libhal.
commit ddee60a8e5603a47c26b95b2f944427e6013ac03
Author: Paul Selkirk <paul at psgd.org>
AuthorDate: Wed Feb 13 16:05:42 2019 -0500
If a KEK is given to keywrap/unwrap, zero it out of the keywrap core after use.
The key-export mechanism unwraps the key with the KEK from Master Key
Memory, then re-wraps it with a random KEK. If that random KEK stays in
the keywrap core, it will cause problems for all subsequent wrap/unwrap
operations.
---
aes_keywrap.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/aes_keywrap.c b/aes_keywrap.c
index 63e0cf7..1ee857b 100644
--- a/aes_keywrap.c
+++ b/aes_keywrap.c
@@ -383,6 +383,8 @@ hal_error_t hal_aes_keywrap(hal_core_t *core,
}
out:
+ if (K != NULL)
+ hal_aes_keywrap_zero(core);
if (free_core)
hal_core_free(core);
return err;
@@ -483,6 +485,8 @@ hal_error_t hal_aes_keyunwrap(hal_core_t *core,
memmove(Q, Q + 8, m);
out:
+ if (K != NULL)
+ hal_aes_keywrap_zero(core);
if (free_core)
hal_core_free(core);
return err;
More information about the Commits
mailing list