xref: /freebsd/share/man/man4/safe.4 (revision 2357939bc239bd5334a169b62313806178dd8f30)
1.\\"-
2.\\" Copyright (c) 2003	Sam Leffler, Errno Consulting
3.\\" All rights reserved.
4.\\"
5.\\" Redistribution and use in source and binary forms, with or without
6.\\" modification, are permitted provided that the following conditions
7.\\" are met:
8.\\" 1. Redistributions of source code must retain the above copyright
9.\\"    notice, this list of conditions and the following disclaimer.
10.\\" 2. Redistributions in binary form must reproduce the above copyright
11.\\"    notice, this list of conditions and the following disclaimer in the
12.\\"    documentation and/or other materials provided with the distribution.
13.\\"
14.\\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15.\\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16.\\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17.\\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18.\\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19.\\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20.\\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21.\\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22.\\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23.\\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24.\\" SUCH DAMAGE.
25.\\"
26.\\" $FreeBSD$
27.\\"/
28.Dd May 30, 2002
29.Dt SAFE 4
30.Os
31.Sh NAME
32.Nm safe
33.Nd SafeNet crypto accelerator
34.Sh SYNOPSIS
35.Nm device safe
36.sp
37.Cd sysctl hw.safe.debug
38.Cd sysctl hw.safe.dump
39.Cd sysctl hw.safe.rnginterval
40.Cd sysctl hw.safe.rngbufsize
41.Cd sysctl hw.safe.rngmaxalarm
42.Sh DESCRIPTION
43The
44.Nm
45driver supports cards containing any of the following chips:
46.Bl -tag -width "SafeNet 1141" -offset indent
47.It SafeNet 1141
48The original chipset.  Supports DES, Triple-DES, AES, MD5, and SHA-1
49symmetric crypto operations, RNG, public key operations, and full IPsec
50packet processing.
51.It SafeNet 1741
52A faster version of the 1141.
53.El
54.Pp
55The
56.Nm
57driver registers itself to accelerate DES, Triple-DES, AES, MD5-HMAC,
58SHA1-HMAC, and NULL operations for
59.Xr ipsec 4
60and
61.Xr crypto 4 .
62.Pp
63On all models, the driver registers itself to provide random data to the
64.Xr random 4
65subsystem.
66Periodically the driver will poll the hardware RNG and retrieve
67data for use by the system.
68If the driver detects that the hardware RNG is resonating with any local
69signal, it will reset the oscillators that generate random data.
70Three sysctl settings control this procedure:
71.Li hw.safe.rnginterval
72specifies the time, in seconds, between polling operations,
73.Li hw.safe.rngbufsize
74specifies the number of 32-bit words to retrieve on each poll,
75and
76.Li hw.safe.rngmaxalarm
77specifies the threshold for resetting the oscillators.
78.Pp
79When the driver is compiled with
80.Dv SAFE_DEBUG
81defined, two sysctl variables are provided for debugging purposes:
82.Li hw.safe.debug
83can be set to a non-zero value to enable debugging messages to be sent
84to the console for each cryptographic operation.
85.Li hw.safe.dump
86is a write-only variable that can be used to force driver state to be sent
87to the console.
88Set this variable to
89.Li ring
90to dump the current state of the descriptor ring,
91to
92.Li dma
93to dump the hardware DMA registers,
94or
95to
96.Li int
97to dump the hardware interrupt registers.
98.Sh SEE ALSO
99.Xr crypt 3 ,
100.Xr crypto 4 ,
101.Xr intro 4 ,
102.Xr ipsec 4 ,
103.Xr random 4 ,
104.Xr crypto 9
105.Sh BUGS
106Public key support is not implemented.
107