secure_random v0.5.1 SecureRandom
Takes my favorite hits from Ruby’s SecureRandom and brings em to elixir. Mostly a convienance wrapper around Erlangs Crypto library, converting Crypto.strong_rand_bytes/1 into a string.
Examples
iex> SecureRandom.base64
"xhTcitKZI8YiLGzUNLD+HQ=="
iex> SecureRandom.urlsafe_base64(4)
"pLSVJw"
iex> SecureRandom.uuid
"a18e8302-c417-076d-196a-71dfbd5b1e03"
Summary
Functions
Returns random Base64 encoded string
Generates a random hexadecimal string
Returns random bytes
Returns random urlsafe Base64 encoded string
Returns UUID v4 string. I have lifted most of this straight from Ecto’s implementation
Functions
Returns random Base64 encoded string.
Examples
iex> SecureRandom.base64
"rm/JfqH8Y+Jd7m5SHTHJoA=="
iex> SecureRandom.base64(8)
"2yDtUyQ5Xws="
Generates a random hexadecimal string.
The argument n specifies the length, in bytes, of the random number to be generated. The length of the resulting hexadecimal string is twice n.
If n is not specified, 16 is assumed. It may be larger in future.
The result may contain 0-9 and a-f.
Examples
iex> SecureRandom.hex(6)
"34fb5655a231"
Returns random bytes.
Examples
iex> SecureRandom.random_bytes
<<202, 104, 227, 197, 25, 7, 132, 73, 92, 186, 242, 13, 170, 115, 135, 7>>
iex> SecureRandom.random_bytes(8)
<<231, 123, 252, 174, 156, 112, 15, 29>>
Returns random urlsafe Base64 encoded string.
Examples
iex> SecureRandom.urlsafe_base64
"xYQcVfWuq6THMY_ZVmG0mA"
iex> SecureRandom.urlsafe_base64(8)
"8cN__l-6wNw"