diff options
author | Jay Berkenbilt <ejb@ql.org> | 2009-10-18 18:03:10 +0200 |
---|---|---|
committer | Jay Berkenbilt <ejb@ql.org> | 2009-10-18 18:03:10 +0200 |
commit | f0211d954c055f21733bad7c0c5357b99f6c7b80 (patch) | |
tree | 8eb988158e0be231ec5365b0a4d35f42ea964b37 /libqpdf/Pl_AES_PDF.cc | |
parent | 34097d6c649867497b6b065c95af99aa7e8135c6 (diff) | |
download | qpdf-f0211d954c055f21733bad7c0c5357b99f6c7b80.tar.zst |
use a simpler seed for the random number generator
git-svn-id: svn+q:///qpdf/trunk@821 71b93d88-0707-0410-a8cf-f5a4172ac649
Diffstat (limited to 'libqpdf/Pl_AES_PDF.cc')
-rw-r--r-- | libqpdf/Pl_AES_PDF.cc | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/libqpdf/Pl_AES_PDF.cc b/libqpdf/Pl_AES_PDF.cc index 1e5f81ab..0ceb7df7 100644 --- a/libqpdf/Pl_AES_PDF.cc +++ b/libqpdf/Pl_AES_PDF.cc @@ -1,6 +1,5 @@ #include <qpdf/Pl_AES_PDF.hh> #include <qpdf/QUtil.hh> -#include <qpdf/MD5.hh> #include <cstring> #include <assert.h> #include <stdexcept> @@ -111,17 +110,10 @@ Pl_AES_PDF::initializeVector() static bool seeded_random = false; if (! seeded_random) { - std::string seed_str; - seed_str += QUtil::int_to_string((int)QUtil::get_current_time()); - seed_str += " QPDF aes random"; - MD5 m; - m.encodeString(seed_str.c_str()); - MD5::Digest digest; - m.digest(digest); - assert(sizeof(digest) >= sizeof(unsigned int)); - unsigned int seed; - memcpy((void*)(&seed), digest, sizeof(unsigned int)); - srandom(seed); + // Seed the random number generator with something simple, but + // just to be interesting, don't use the unmodified current + // time.... + srandom((int)QUtil::get_current_time() ^ 0xcccc); seeded_random = true; } for (unsigned int i = 0; i < this->buf_size; ++i) |