Skip to content

Commit 87df7d3

Browse files
committed
crypto: Use OPENSSL_cleanse to shred the data.
memset() is not useful here, it's efficiently a noop. PR-URL: #2575 Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
1 parent bdef668 commit 87df7d3

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/node_crypto.cc

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4723,8 +4723,8 @@ void EIO_PBKDF2(PBKDF2Request* req) {
47234723
req->digest(),
47244724
req->keylen(),
47254725
reinterpret_cast<unsigned char*>(req->key())));
4726-
memset(req->pass(), 0, req->passlen());
4727-
memset(req->salt(), 0, req->saltlen());
4726+
OPENSSL_cleanse(req->pass(), req->passlen());
4727+
OPENSSL_cleanse(req->salt(), req->saltlen());
47284728
}
47294729

47304730

@@ -4738,7 +4738,7 @@ void EIO_PBKDF2After(PBKDF2Request* req, Local<Value> argv[2]) {
47384738
if (req->error()) {
47394739
argv[0] = Undefined(req->env()->isolate());
47404740
argv[1] = Encode(req->env()->isolate(), req->key(), req->keylen(), BUFFER);
4741-
memset(req->key(), 0, req->keylen());
4741+
OPENSSL_cleanse(req->key(), req->keylen());
47424742
} else {
47434743
argv[0] = Exception::Error(req->env()->pbkdf2_error_string());
47444744
argv[1] = Undefined(req->env()->isolate());

0 commit comments

Comments
 (0)