diff options
author | Samuel Gaist <samuel.gaist@edeltech.ch> | 2017-06-12 23:23:48 +0200 |
---|---|---|
committer | Samuel Gaist <samuel.gaist@edeltech.ch> | 2017-09-30 18:08:13 +0000 |
commit | b6f69206548f7bd15c72ba35d7c2e3b66b1abb7a (patch) | |
tree | 674507d3280db9a778500b1613927909dc18ff64 /src/network/ssl/qsslkey_qt.cpp | |
parent | e22bf03e23e0a3c3f4da494b7d527630f84a0469 (diff) |
Change qrand() to QRandomGenerator in the SSL backend
Change-Id: I631649b2ad8d9c2c766e99a12f7ff3a39c79cc7d
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'src/network/ssl/qsslkey_qt.cpp')
-rw-r--r-- | src/network/ssl/qsslkey_qt.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/network/ssl/qsslkey_qt.cpp b/src/network/ssl/qsslkey_qt.cpp index 3c5dc830d3..6716c0158b 100644 --- a/src/network/ssl/qsslkey_qt.cpp +++ b/src/network/ssl/qsslkey_qt.cpp @@ -43,6 +43,7 @@ #include <QtCore/qdatastream.h> #include <QtCore/qcryptographichash.h> +#include <QtCore/qrandom.h> QT_USE_NAMESPACE @@ -286,10 +287,8 @@ QByteArray QSslKeyPrivate::toPem(const QByteArray &passPhrase) const if (type == QSsl::PrivateKey && !passPhrase.isEmpty()) { // ### use a cryptographically secure random number generator - QByteArray iv; - iv.resize(8); - for (int i = 0; i < iv.size(); ++i) - iv[i] = (qrand() & 0xff); + quint64 random = QRandomGenerator::generate64(); + QByteArray iv = QByteArray::fromRawData(reinterpret_cast<const char *>(&random), sizeof(random)); Cipher cipher = DesEde3Cbc; const QByteArray key = deriveKey(cipher, passPhrase, iv); |