RAND_BYTES(3ssl) OpenSSL RAND_BYTES(3ssl) RAND_bytes, RAND_priv_bytes, RAND_bytes_ex, RAND_priv_bytes_ex, RAND_pseudo_bytes, RAND_set1_random_provider - #include int RAND_bytes(unsigned char *buf, int num); int RAND_priv_bytes(unsigned char *buf, int num); int RAND_bytes_ex(OSSL_LIB_CTX *ctx, unsigned char *buf, size_t num, unsigned int strength); int RAND_priv_bytes_ex(OSSL_LIB_CTX *ctx, unsigned char *buf, size_t num, unsigned int strength); int RAND_set1_random_provider(OSSL_LIB_CTX *ctx, OSSL_PROVIDER *p); OpenSSL 1.1.0 OPENSSL_API_COMPAT openssl_user_macros(7): int RAND_pseudo_bytes(unsigned char *buf, int num); RAND_bytes() num (CSPRNG) buf. buf NULL. RAND_priv_bytes() RAND_bytes(). . RAND_METHOD PRNG "" PRNG "" RAND(7) EVP_RAND(7). RAND_bytes_ex() RAND_priv_bytes_ex() RAND_bytes() RAND_priv_bytes() strength ctx. strength . DRBG DRBG ctx . NULL ( OSSL_LIB_CTX(3). RAND_METHOD RAND_METHOD DRBG . RAND_set1_random_provider() prov ctx DRBGs . NULL . DRBGs . . OpenSSL CSPRNG 256 . OpenSSL ( Unix Windows) OpenSSL CSPRNG . CSPRNG . RAND_bytes() RAND_priv_bytes() . OpenSSL . GitHub openssl. RAND_bytes() RAND_priv_bytes() 1 -1 RAND 0 . ERR_get_error(3). RAND_set1_random_provider() 1 0 . RAND_add(3), RAND_bytes(3), RAND_priv_bytes(3), ERR_get_error(3), RAND(7), EVP_RAND(7) o RAND_pseudo_bytes() OpenSSL 1.1.0 RAND_bytes() . o RAND_priv_bytes() OpenSSL 1.1.1. o RAND_bytes_ex() RAND_priv_bytes_ex() OpenSSL 3.0 o RAND_set1_random_provider() OpenSSL 3.5 2000-2025 OpenSSL. . Apache 2.0 ( ""). . LICENSE . 3 . . : . 3.6.2 7 2026 RAND_BYTES(3ssl)