diff options
author | Stef Walter <stefw@collabora.co.uk> | 2011-10-24 11:18:41 +0200 |
---|---|---|
committer | Stef Walter <stefw@collabora.co.uk> | 2011-10-25 13:10:02 +0200 |
commit | 71bdb5dc967ec99b3b2fe9d5994de7996b4142c5 (patch) | |
tree | 258b5b9bfbd5ff6a6a1e4d75ffc598025bd85324 /pkcs11/secret-store | |
parent | fc922d8d80ec2c1f85e6d6d34583c19b864f9f00 (diff) | |
download | gnome-keyring-71bdb5dc967ec99b3b2fe9d5994de7996b4142c5.tar.gz |
pkcs11: Use g_random_int_range() for pseudo-random hash iteration count
* Used when hashing passwords into symmetric keys
* Previous solution was overflowing
https://bugzilla.gnome.org/show_bug.cgi?id=662025
Diffstat (limited to 'pkcs11/secret-store')
-rw-r--r-- | pkcs11/secret-store/gkm-secret-binary.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/pkcs11/secret-store/gkm-secret-binary.c b/pkcs11/secret-store/gkm-secret-binary.c index 29cd9cdc..9f6569e9 100644 --- a/pkcs11/secret-store/gkm-secret-binary.c +++ b/pkcs11/secret-store/gkm-secret-binary.c @@ -584,7 +584,7 @@ gkm_secret_binary_write (GkmSecretCollection *collection, GkmSecretData *sdata, egg_buffer_init_full (&buffer, 256, g_realloc); /* Prepare the keyring for encryption */ - hash_iterations = 1000 + (int) (1000.0 * rand() / (RAND_MAX + 1.0)); + hash_iterations = g_random_int_range (1000, 4096); gcry_create_nonce (salt, sizeof (salt)); egg_buffer_append (&buffer, (guchar*)KEYRING_FILE_HEADER, KEYRING_FILE_HEADER_LEN); |