Close Menu
    Facebook X (Twitter) Instagram
    Command Linux
    • About
    • How to
      • Q&A
    • OS
      • Windows
      • Arch Linux
    • AI
    • Gaming
      • Easter Eggs
    • Statistics
    • Blog
      • Featured
    • MORE
      • IP Address
      • Man Pages
    • Write For Us
    • Contact
    Command Linux
    Home - man page - ARC4RANDOM

    ARC4RANDOM

    WillieBy WillieFebruary 16, 2026Updated:February 16, 2026No Comments2 Mins Read

    NAME

    arc4random arc4random_buf arc4random_uniform arc4random_stir arc4random_addrandom – arc4 random number generator  

    LIBRARY

    Lb libbsd  

    SYNOPSIS

    In bsd/stdlib.h Ft u_int32_t Fn arc4random void Ft void Fn arc4random_buf void *buf size_t nbytes Ft u_int32_t Fn arc4random_uniform u_int32_t upper_bound Ft void Fn arc4random_stir void Ft void Fn arc4random_addrandom unsigned char *dat int datlen  

    DESCRIPTION

    The Fn arc4random function uses the key stream generator employed by the arc4 cipher, which uses 8*8 8 bit S-Boxes. The S-Boxes can be in about (2**1700) states. The Fn arc4random function returns pseudo-random numbers in the range of 0 to (2**32)-1, and therefore has twice the range of rand(3) and random(3).

    Fn arc4random_buf function fills the region Fa buf of length Fa nbytes with ARC4-derived random data.

    Fn arc4random_uniform will return a uniformly distributed random number less than Fa upper_bound . Fn arc4random_uniform is recommended over constructions like “arc4random() % upper_bound ” as it avoids "modulo bias" when the upper bound is not a power of two.

    The Fn arc4random_stir function reads data from /dev/urandom and uses it to permute the S-Boxes via Fn arc4random_addrandom .

    There is no need to call Fn arc4random_stir before using Fn arc4random functions family, since they automatically initialize themselves.  

    EXAMPLES

    The following produces a drop-in replacement for the traditional Fn rand and Fn random functions using Fn arc4random :

    "#define foo4random() (arc4random() % ((unsigned)RAND_MAX + 1))"
     

    HISTORY

    RC4 has been designed by RSA Data Security, Inc. It was posted anonymously to the USENET and was confirmed to be equivalent by several sources who had access to the original cipher. Since RC4 used to be a trade secret, the cipher is now referred to as ARC4

    Willie
    • Website

    Willie has over 15 years of experience in Linux system administration and DevOps. After managing infrastructure for startups and enterprises alike, he founded Command Linux to share the practical knowledge he wished he had when starting out. He oversees content strategy and contributes guides on server management, automation, and security.

    Related Posts

    PSTREE

    April 20, 2026

    SIGSUSPEND

    April 20, 2026

    SETFACL

    April 20, 2026

    SYSTEMD-SYSCTL.SERVICE

    April 20, 2026
    Top Posts

    ARCH

    April 14, 2026

    Red Hat Enterprise Linux Revenue Statistics

    December 23, 2025

    Compass Mobile Dollar Tree Login 2026

    April 4, 2026

    Net::Domain::TLD

    April 4, 2026
    • Home
    • Contact Us
    • Privacy Policy
    • Terms of Use

    Type above and press Enter to search. Press Esc to cancel.