random(7) Miscellaneous Information Manual random(7)
>>>>>>>>>>>>
random - >>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>> >>>>>
>>>>>>>>
>>>>>>>>> >>>>>>>>> >>>>>
>>>> >>>>>>>>>> >>
>>>>>>>>, >>>>>>>>> >
>>>>>>>>> >>>>>>>>> >
>>>>>> >>>>>>>>>>
>>>>>>>>>>> >>>>, >>>>>
>>>>>> >>>>>>>>> >>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>> >>>>>>>>>
>>>>>>>>>>>>>>> >>>>> (CSPRNG).
>>> >>>>>>>>>> >>>>>>>
>>>>>>>>>> >>>>
>>>>>>>>>>>>, > >>
>>>>>>>>.
>>>>>>>>> >>>>>>>>>>
>>>>>>>>>>>>> >>>>>> >
>>>>>> >>>>>>>> CSPRNG:
o >>>>>>>>>> /dev/urandom > /dev/random,
>>>>>>> > random(4). >>>>>>
>>>>>>>>>> >>>>>>>> >
>>>>>> >>>>>> Linux, > >>>>>
>>> >>>> > >> >>>>>>
>>>>>> >>>>>>>>.
o >>>>>>>>> >>>>>, >>>>>>>
>>>> >>>>>> > Linux -- getrandom(2),
>>>>>>>> >>>>>>> > Linux 3.17.
>>>>>> >>>>>
>>>>>>>>>>>>> >>>>>> >
>>>>>>>>> >>> > /dev/urandom (>
>>>> >>>>>>>>
>>>>>>>>>>> >>> >>>>>>>>
urandom) >>> > > >>>>>>>>> >>> >
/dev/random (> >>>> >>>>>>>>
>>>>>>>>>>> >>> random). >>
>>>>>>>>> >>>>>>>>>>>>
>>>>>>>> urandom; >>>>>>>> random
>>>>>>>>>> >>> >>>>>>>>
>>>>>>>>>> >>>>>> >>>>>
GRND_RANDOM (>>>>>>> getentropy(3)
>>>>>>>>>>>>> >>>>>>,
>>>>> >>>>>>>>>>>
>>>>>>>>>, >>>>>>>>>> >>
getrandom(2)).
>>>>>>>>>>>>> >>>>
>>>>>>>>
>>>> >>>>>>>> >>>>
>>>>>>>> >> >>>>>>>>>.
>>>>> >>>>>>> >>>>>>>>>>>
>>>>>>>>>> >>>>>>>>>>>>
>>>, >>> >>>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>>>>.
>>>>> >>>>>>>>> >>>>>>>>>
>>>>>
>>>> >> >> >>>>>>>>>>>
>>>>>>>>>>>> >>>>> (>,
>>>>>> >>>>>, > > >>>>
>>>>>>), >>, >>>>>>>>, >>
>>>>>> >>>>>> >>
>>>>>>>>>> /dev/random >>>
>>>>>>>>> getrandom(2) > >>>>>>
GRND_RANDOM. >>>>>> >>>>> >>>>>>>
>>>>>>>>>> /dev/urandom >
>>>>>>>>>> getrandom(2) >>> >>>>>
GRND_RANDOM. >>>>>>>>>
>>>>>>>>>>, >>>>>>>>>>>>
>>> >>>>>>>>> urandom, >>>>>>>>
>>>>>>>>>>>>>, > >>>>>>>
>> >>>>>> >>>> >>>>>>>>>>
>>> >>>>> >>>>.
>>>>>>>>>> GRND_RANDOM > >>>>>>
>> /dev/random > >>>, >>> >>>
>>>>>>>> >>>>>
>>>>>>>>>>>>> >>>>>>>>>>
>> >>>>>>>>>>>>>> >>>>>>
>>>>>>>. >>>>> >>>>, >>>>>>
> >>>>>>>> >>>>>>>>>>>>
>>>>>>>>>, >>>>>>> >>>>>
>>>>>>>>> >>>
>>>>>>>>>>>>> GRND_RANDOM >>>
>>>>>> /dev/random, >>>>>>>>>>>
>>>>>>>>> >>>>.
>>>>>->>>>> > >>>>>>
>>>>>>>>>>>>> >>>>>>>>>>
>>>>>>>
>>>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>
>>>>>>>>>>>>>> >>>>>>>>
>>>>>>>>>> >>>>>> >>>
>>>>>>>>>>>>> >>>>>->>>>>
>>> >>>>>>
>>>>>>>>>>/>>>>>>>>>>,
>>>>>>>>>>>
>>>>>>>>>>>>> >>>>>>>,
>>>>> >>>>>>>>>. >>>>>
>>>>, >>> >>>>>>>, >>> >>>
>>>>> >>>>>>>>>>> >>
>>>>> >>>>>>>>>>>>>>>>
>>>>>>>>>> >>>>>>>>>
>>>>>. >>>>>> >>>>>
>>>>>>>>>>> >>>>>>>>>>,
>>>>>>>>> >> >>>>
>>>>>>>>, >>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>>>
>>>>>> >>> >>>>>>>
>>>>>>>>>>
>>>>>>>>>>>>>>> >>>>> >
>>>>>>>>>>>>
>>>>>>>>>>>>, >>>>>>>
>>>>> >>>>>>>>>>>> >>>
>>>>> >>>>>>>>>>.
>>>>>>>>> getrandom, /dev/urandom > /dev/random
> >>>>>>>>> >>>>>>>
>>>>>>> >>>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>> >>>>>>>>>
>>>>>. >>>> GRND_NONBLOCK >>>>>
>>>>>>>>>>>> >>>
>>>>>>>>>> >>>>>>>>>>
>>>>>>>>>>>> getrandom(2). >
>>>>>>>>> >>>>>>> >>>>>>>
>>>>>>>>, >>> >>>>>
>>>>>>>>> >> >>>>>>
>>>>>> >>>>>>>> >>, >>>>>
>>> >>>>>>>> >>> >>
>>>>>>>>>>>>>>>.
+----------------------------+-----------------------------------+-----------------------------------------+-----------------------------------------------------------------+
|>>>>>>>>> | >>> | >>>>>>>>>>>>> | >>>>>>>>>, >>>>> >>> |
| | | >>>>>>>>>> | >>> >> >>>>> |
+----------------------------+-----------------------------------+-----------------------------------------+-----------------------------------------------------------------+
|/dev/random | >>>>>>>>>>> | >>>> >>>>>>>> | >>>>>>>>>, >>>> >> |
| | >>> | >>>>>>>>>>>>, | >>>>>>>>> >>>>> |
| | | >> >>>>>>>>> | >>>>>>>>>> >>>>>>>> |
| | | >> >>> >>>, | |
| | | >>>> >> | |
| | | >>>>>>>>> | |
| | | >>>>> | |
| | | >>>>>>>>>> | |
| | | >>>>>>>> | |
+----------------------------+-----------------------------------+-----------------------------------------+-----------------------------------------------------------------+
|/dev/urandom | >>>>>> CSPRNG | >>>>>>> >> | >>>>>>>>>> >>>>>> >> |
| | | >>>>>>>>>>> | >>>>>>>>>>>>>>>>>>>>> |
| | | | CSPRNG (>>>>> >>>> >>>>>> |
| | | | >>>>>>>> > >> >>>>>>>>> |
| | | | >>> >>>>>>>>>>) |
+----------------------------+-----------------------------------+-----------------------------------------+-----------------------------------------------------------------+
|getrandom() | >>>>, >>> > | >> >>>>>>>>> > | >>>>>>>>> >> |
| | /dev/urandom | >>>>>>>> >>>> | >>>>>>>>>> >>>> |
+----------------------------+-----------------------------------+-----------------------------------------+-----------------------------------------------------------------+
|getrandom() GRND_RANDOM | >>>>, >>> > | >>>> >>>>>>>> | >>>>>>>>> >> |
| | /dev/random | >>>>>>>>>>>>, | >>>>>>>>>> >>>> |
| | | >> >>>>>>>>> | |
| | | >> >>> >>>, | |
| | | >>>> >> | |
| | | >>>>>>>>> | |
| | | >>>>> | |
| | | >>>>>>>>>> | |
| | | >>>>>>>> | |
+----------------------------+-----------------------------------+-----------------------------------------+-----------------------------------------------------------------+
|getrandom() GRND_NONBLOCK | >>>>, >>> > | >> >>>>>>>>> > | EAGAIN |
| | /dev/urandom | >>>>>>>> >>>> | |
+----------------------------+-----------------------------------+-----------------------------------------+-----------------------------------------------------------------+
|getrandom() GRND_RANDOM + | >>>>, >>> > | EAGAIN, >>>> | EAGAIN |
|GRND_NONBLOCK | /dev/random | >>>>>>>>>>>> | |
| | | >>>>>>>> | |
+----------------------------+-----------------------------------+-----------------------------------------+-----------------------------------------------------------------+
>>>>>>>>> >>>>>>
>>>>>>>>>>
>>>>>>>>>> >>>>>>>>>
>>>>>>>>>, >>>>>>>>>>>>
>>> >>>>>>>>>
>>>>>>>>>>>>>>>> >>
>>>>>, >>>>> >>>>>>>>>>>>
>>>>>>> >>>>>. >>>>>>>>,
>>>>>>>> >>>> RSA >>>
>>>>>->>>>>>>> >>>>>>>> 3072
>>>> >>>>> >>>>>>>>>>>
>>>>>> 128 >>> (>>> >>>
>>>>>> >>>>>>>>>>> >>>>>
2^128 >>>>>>>>), >>>>>>>
>>>>>>>>> >>>>>>
>>>>>>>>> >>>>>> > 128 >>>>>
(16 >>>>>>) >>>>>>>>>
>>>>>>>>> >> /dev/random.
>>> >>> >>>>>>> >>>>>>>>
>>>>>>>>> >>>>> >>>>>>>>>
> >>>> >>>>>>>>>>
>>>>>>>> >>> >>>>>>
>>>>>> >>>>>>>>>>> >
>>>>>>>>> CSPRNG, >>>>>>>
>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>> >>>>>>> >> >>>>>
>>>>>>> >>>>>> >>> 256 >>>
>>>>>>>>>>>>, >>>>>>>
>>>> >>>>>->> >>>>>>>>>
>>>>>> >>>>>> >>> 256 >>> (32
>>>>>) >> >>>> >>>>>>>>>
>>>>> >>>> >> >>>>>, >>> >>
>>>>>>>> >>>>>>>>
>>>>>>>>>> >>>>>> (>>
>>>>> >>>>> >>>>>>), >> >>>
>>>>> >>>>>>> >>>>>>>>>
>>>>, >>> >>>>>>>>>> > >>>
>>>>>>>>>>> >>>>>>>>>>>>
>>>>>>>>>>.
>>>>>>>> >>>>>
getrandom(2), getauxval(3), getentropy(3), random(4), urandom(4),
signal(7)
>>>>>>>
>>>>>>> >>>>>>> >>>>
>>>>>>>> >>>>>>>>>>>
>>>>>>>>>>(>) aereiae , Azamat
Hackimov , Dmitriy S. Seregin
, Katrin Kutepova , Lockal
, Yuri Kozlov ,
>>>>>>> >>>>>>>>, >>>>
>>>>>> > Kirill Rekhov
>>>> >>>>>>> >>>>>>>>
>>>>>>>>> >>>>>>>>>>>
>>>>>>>>>>>>>; >>
>>>>>>>>>>>>>>>> >>
>>>>>>>> >>>>>>>>>>>>>
>>>>>>>> GNU (GNU General Public License - GPL,
>>>>>> 3
>>> >>>>> >>>>>>>) >
>>>>>>>>> >>>>>>>>>>
>>>>>, >> >>> >>>>>->>>>
>>>>>>>>.
>>>> >> >>>>>>>>>>
>>>>>->>>> >>>>>> >
>>>>>>>> >>>> >>>>>>>>
>>>>>>>>>>>, >>>>>>>>>>,
>>>>>>>> >> >>>>
>>>>>>>>>>>>(>>) >> >>>(>>)
>>>>>>(>>) >>>>>>>>>>>
>>>>> >>> >> >>>>>> >>>>>>
>>>>>>>> >>>>>>>
>>>>>>>>>>>>
<>.
>>>>>>>>>> >>>>>>>> Linux 6.15
17 >>> 2025 >. random(7)