Generate random bytes and numbers with OpenSSL
this set of functions generates random bytes or numbers from OpenSSL. This
provides a cryptographically secure alternative to R's default random number generator.
rand_bytes
generates n
random cryptographically secure bytes
rand_bytes(n = 1) rand_num(n = 1)
n |
number of random bytes or numbers to generate |
OpenSSL manual: https://www.openssl.org/docs/man1.1.1/man3/RAND_bytes.html
rnd <- rand_bytes(10) as.numeric(rnd) as.character(rnd) as.logical(rawToBits(rnd)) # bytes range from 0 to 255 rnd <- rand_bytes(100000) hist(as.numeric(rnd), breaks=-1:255) # Generate random doubles between 0 and 1 rand_num(5) # Use CDF to map [0,1] into random draws from a distribution x <- qnorm(rand_num(1000), mean=100, sd=15) hist(x) y <- qbinom(rand_num(1000), size=10, prob=0.3) hist(y)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.