aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEasySec <easy.sec@free.fr>2017-10-16 15:05:10 -0400
committerRich Salz <rsalz@openssl.org>2017-10-16 15:06:29 -0400
commit1f83edda7b13b371b16de2ebff6455c8bc6dbbcd (patch)
treebc8ecc660e139ca304b8268eb0cad06385db2adf
parentfdc83a7c50a0681c309e2249a43d7a21080c4265 (diff)
downloadopenssl-1f83edda7b13b371b16de2ebff6455c8bc6dbbcd.tar.gz
Cleaning secret data after use
Reviewed-by: Paul Dale <paul.dale@oracle.com> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4509)
-rw-r--r--apps/enc.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/apps/enc.c b/apps/enc.c
index 5117a4980e..14b029b33f 100644
--- a/apps/enc.c
+++ b/apps/enc.c
@@ -476,9 +476,13 @@ int enc_main(int argc, char **argv)
BIO_printf(bio_err, "iv undefined\n");
goto end;
}
- if ((hkey != NULL) && !set_hex(hkey, key, EVP_CIPHER_key_length(cipher))) {
- BIO_printf(bio_err, "invalid hex key value\n");
- goto end;
+ if (hkey != NULL) {
+ if (!set_hex(hkey, key, EVP_CIPHER_key_length(cipher))) {
+ BIO_printf(bio_err, "invalid hex key value\n");
+ goto end;
+ }
+ /* wiping secret data as we no longer need it */
+ OPENSSL_cleanse(hkey, strlen(hkey));
}
if ((benc = BIO_new(BIO_f_cipher())) == NULL)