generateRandomBytes
functionGenerates cryptographically secure random bytes, encoded as text, such as an opaque token for a link or a session. 32 bytes give 256 bits: 43 base64url characters or 64 hex characters.
generateRandomBytes(byteLength: number, encoding?: IRandomBytesEncoding): stringParameters
byteLengthnumberHow many random bytes to generate, an integer from 1 to 65536.
encoding?IRandomBytesEncodingHow to encode them.
Defaults to
'base64url'.
Returns
stringThe encoded bytes.
Throws
INVALID_BYTE_LENGTHThe byte length must be an integer from 1 to 65536.UNSUPPORTED_ENCODINGThe encoding must be base64url or hex.
import { generateRandomBytes } from 'jg-crypto';
generateRandomBytes(32); // 43 base64url characters, such as 'q3Rz…'
generateRandomBytes(16, 'hex'); // 32 hex characters