5af49f98fe
The seed file is updated by entering the old seed into the system and then hashing the old seed together with data from /dev/urandom, and writing it atomically with write-to-temporary/rename-to-permanent. This way, interruption by crash or power loss does not obliterate your persistent entropy (unless it causes file system corruption).
158 lines
4.5 KiB
Groff
158 lines
4.5 KiB
Groff
.\" $NetBSD: rndctl.8,v 1.23 2019/12/06 14:43:18 riastradh Exp $
|
|
.\"
|
|
.\" Copyright (c) 1997 Michael Graff
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\" 3. The name of the author may not be used to endorse or promote products
|
|
.\" derived from this software without specific prior written permission.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
.\" BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
.\" LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
.\" AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
|
.\" OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.Dd August 10, 2014
|
|
.Dt RNDCTL 8
|
|
.Os
|
|
.Sh NAME
|
|
.Nm rndctl
|
|
.Nd in-kernel random number generator management tool
|
|
.Sh SYNOPSIS
|
|
.Nm
|
|
.Op Fl CcEe
|
|
.Op Fl d Ar devname | Fl t Ar devtype
|
|
.Nm
|
|
.Op Fl lsv
|
|
.Op Fl d Ar devname | Fl t Ar devtype
|
|
.Nm
|
|
.Fl L Ar save-file
|
|
.Nm
|
|
.Fl S Ar save-file
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
program displays statistics on the current state of the
|
|
.Xr rnd 4
|
|
pseudo-driver, and allows the administrator to control which sources
|
|
are allowed to contribute to the randomness pool maintained by
|
|
.Xr rnd 4 ,
|
|
as well as whether a given source counts as strongly random.
|
|
.Pp
|
|
The following options are available:
|
|
.Bl -tag -width 123456
|
|
.It Fl C
|
|
Disable collection of timing information for the given
|
|
device name or device type.
|
|
.It Fl c
|
|
Enable collection of timing information for the given
|
|
device name or device type.
|
|
.It Fl d
|
|
Only the device named
|
|
.Ar devname
|
|
is altered or displayed.
|
|
This is mutually exclusive with
|
|
.Fl t .
|
|
.It Fl E
|
|
Disable entropy estimation from the collected timing information for
|
|
the given device name or device type.
|
|
If collection is still enabled, timing information is still
|
|
collected and mixed into the internal entropy pool,
|
|
but no entropy is assumed to be present.
|
|
.It Fl e
|
|
Enable entropy estimation using the collected timing information
|
|
for the given device name or device type.
|
|
.It Fl L
|
|
Load saved entropy from file
|
|
.Ar save-file
|
|
and overwrite it with a seed derived by hashing it together with output
|
|
from
|
|
.Pa /dev/urandom
|
|
so that the new seed has at least as much entropy as either the old
|
|
seed had or the system already has.
|
|
If interrupted, either the old seed or the new seed will be in place.
|
|
.It Fl l
|
|
List all sources, or, if the
|
|
.Fl t
|
|
or
|
|
.Fl d
|
|
flags are specified, only those specified by the
|
|
.Ar devtype
|
|
or
|
|
.Ar devname
|
|
specified.
|
|
.It Fl S
|
|
Save entropy pool to file
|
|
.Ar save-file .
|
|
The file format is specific to
|
|
.Nm
|
|
and includes an estimate of the amount of saved entropy and a checksum.
|
|
.It Fl s
|
|
Display statistics on the current state of the random collection pool.
|
|
.It Fl t
|
|
All devices of type
|
|
.Ar devtype
|
|
are altered or displayed.
|
|
This is mutually exclusive with
|
|
.Fl d .
|
|
.Pp
|
|
The available types are:
|
|
.Bl -tag -width "diskx"
|
|
.It Ic disk
|
|
Physical hard drives.
|
|
.It Ic net
|
|
Network interfaces.
|
|
.It Ic tape
|
|
Tape devices.
|
|
.It Ic tty
|
|
Terminal, mouse, or other user input devices.
|
|
.It Ic rng
|
|
Random number generators.
|
|
.El
|
|
.It Fl v
|
|
Verbose output: show entropy estimation statistics for each source.
|
|
.El
|
|
.Sh FILES
|
|
.Bl -tag -width /dev/urandomx -compact
|
|
.It Pa /dev/random
|
|
Returns
|
|
.Dq good
|
|
values only.
|
|
.It Pa /dev/urandom
|
|
Always returns data, degenerates to a pseudo-random generator.
|
|
.El
|
|
.Sh SEE ALSO
|
|
.Xr rnd 4 ,
|
|
.Xr rnd 9
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
program was first made available in
|
|
.Nx 1.3 .
|
|
.Sh AUTHORS
|
|
The
|
|
.Nm
|
|
program was written by
|
|
.An Michael Graff
|
|
.Aq explorer@flame.org .
|
|
.Sh BUGS
|
|
Turning on entropy estimation from unsafe or predictable sources will
|
|
weaken system security, while turning on entropy collection from such
|
|
sources may weaken system security.
|
|
.Pp
|
|
Care should be taken when using this command.
|