cvs commit: src/sys/libkern arc4random.c

Poul-Henning Kamp phk at
Fri Aug 15 12:19:38 PDT 2003

In message <88549156.1060949866 at>, Sam Leffler writes:
>> In message <87953260.1060949270 at>, Sam Leffler writes:
>>> Note that the data generated by arc4random needs to be exported to user
>>> apps for seeding crypto operations when operating in a chroot'd
>>> environment  where /dev/random is not available.
>> I actually thought about that a bit, and I think "/dev/random" is
>> a wrong concept.
>> I think we should have a randomdata(2) system call instead.
>> Having a /dev/random which is sometimes (chroot/jail) means that
>> applications running under those circumstances are incredible fragile
>> to spoofing by creating a fake "/dev/random" in some way.
>openbsd defined a sysctl to get data from arc4random.  They use this as a 
>fallback if /dev/random or similar is not available.  Applications that 
>wanted to be paranoid about spoofing could use this directly.  I have not 
>compared the goodness of the data from /dev/random and arc4random.

A sysctl works for me too.

Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.

More information about the cvs-src mailing list