Browse Source

rtmpdh: Do not generate the same private key every time when using libnettle

Replace mpz_random by mpz_urandomb with a random state initialization in
order to improve the randomness.

Signed-off-by: Martin Storsjö <martin@martin.st>
tags/n1.0
Samuel Pitoiset Martin Storsjö 12 years ago
parent
commit
8337b5db96
1 changed files with 9 additions and 1 deletions
  1. +9
    -1
      libavformat/rtmpdh.c

+ 9
- 1
libavformat/rtmpdh.c View File

@@ -28,6 +28,7 @@

#include "config.h"
#include "rtmpdh.h"
#include "libavutil/random_seed.h"

#define P1024 \
"FFFFFFFFFFFFFFFFC90FDAA22168C234C4C6628B80DC1CD1" \
@@ -78,7 +79,14 @@
ret = (mpz_set_str(bn, buf, 16) == 0); \
} while (0)
#define bn_modexp(bn, y, q, p) mpz_powm(bn, y, q, p)
#define bn_random(bn, num_bytes) mpz_random(bn, num_bytes);
#define bn_random(bn, num_bytes) \
do { \
gmp_randstate_t rs; \
gmp_randinit_mt(rs); \
gmp_randseed_ui(rs, av_get_random_seed()); \
mpz_urandomb(bn, rs, num_bytes); \
gmp_randclear(rs); \
} while (0)
#elif CONFIG_GCRYPT
#define bn_new(bn) bn = gcry_mpi_new(1)
#define bn_free(bn) gcry_mpi_release(bn)


Loading…
Cancel
Save