SecureRandom (secure_random_ex v0.6.0)

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

Link to this function

base64(n \\ 16)

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"
Link to this function

random_bytes(n \\ 16)

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>>
Link to this function

urlsafe_base64(n \\ 16)

Returns random urlsafe Base64 encoded string.

Examples

iex> SecureRandom.urlsafe_base64
"xYQcVfWuq6THMY_ZVmG0mA"

iex> SecureRandom.urlsafe_base64(8)
"8cN__l-6wNw"

Returns UUID v4 string. I have lifted most of this straight from Ecto's implementation.

Examples

iex> SecureRandom.uuid "e1d87f6e-fbd5-6801-9528-a1d568c1fd02"