xref: /minix3/external/bsd/bind/dist/doc/arm/man.dnssec-keygen.html (revision 00b67f09dd46474d133c95011a48590a8e8f94c7)
1*00b67f09SDavid van Moolenbroek<!--
2*00b67f09SDavid van Moolenbroek - Copyright (C) 2004-2015 Internet Systems Consortium, Inc. ("ISC")
3*00b67f09SDavid van Moolenbroek - Copyright (C) 2000-2003 Internet Software Consortium.
4*00b67f09SDavid van Moolenbroek -
5*00b67f09SDavid van Moolenbroek - Permission to use, copy, modify, and/or distribute this software for any
6*00b67f09SDavid van Moolenbroek - purpose with or without fee is hereby granted, provided that the above
7*00b67f09SDavid van Moolenbroek - copyright notice and this permission notice appear in all copies.
8*00b67f09SDavid van Moolenbroek -
9*00b67f09SDavid van Moolenbroek - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
10*00b67f09SDavid van Moolenbroek - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11*00b67f09SDavid van Moolenbroek - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
12*00b67f09SDavid van Moolenbroek - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13*00b67f09SDavid van Moolenbroek - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14*00b67f09SDavid van Moolenbroek - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15*00b67f09SDavid van Moolenbroek - PERFORMANCE OF THIS SOFTWARE.
16*00b67f09SDavid van Moolenbroek-->
17*00b67f09SDavid van Moolenbroek<!-- $Id: man.dnssec-keygen.html,v 1.5 2015/09/03 07:33:34 christos Exp $ -->
18*00b67f09SDavid van Moolenbroek<html>
19*00b67f09SDavid van Moolenbroek<head>
20*00b67f09SDavid van Moolenbroek<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
21*00b67f09SDavid van Moolenbroek<title>dnssec-keygen</title>
22*00b67f09SDavid van Moolenbroek<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
23*00b67f09SDavid van Moolenbroek<link rel="start" href="Bv9ARM.html" title="BIND 9 Administrator Reference Manual">
24*00b67f09SDavid van Moolenbroek<link rel="up" href="Bv9ARM.ch13.html" title="Manual pages">
25*00b67f09SDavid van Moolenbroek<link rel="prev" href="man.dnssec-keyfromlabel.html" title="dnssec-keyfromlabel">
26*00b67f09SDavid van Moolenbroek<link rel="next" href="man.dnssec-revoke.html" title="dnssec-revoke">
27*00b67f09SDavid van Moolenbroek</head>
28*00b67f09SDavid van Moolenbroek<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
29*00b67f09SDavid van Moolenbroek<div class="navheader">
30*00b67f09SDavid van Moolenbroek<table width="100%" summary="Navigation header">
31*00b67f09SDavid van Moolenbroek<tr><th colspan="3" align="center"><span class="application">dnssec-keygen</span></th></tr>
32*00b67f09SDavid van Moolenbroek<tr>
33*00b67f09SDavid van Moolenbroek<td width="20%" align="left">
34*00b67f09SDavid van Moolenbroek<a accesskey="p" href="man.dnssec-keyfromlabel.html">Prev</a>�</td>
35*00b67f09SDavid van Moolenbroek<th width="60%" align="center">Manual pages</th>
36*00b67f09SDavid van Moolenbroek<td width="20%" align="right">�<a accesskey="n" href="man.dnssec-revoke.html">Next</a>
37*00b67f09SDavid van Moolenbroek</td>
38*00b67f09SDavid van Moolenbroek</tr>
39*00b67f09SDavid van Moolenbroek</table>
40*00b67f09SDavid van Moolenbroek<hr>
41*00b67f09SDavid van Moolenbroek</div>
42*00b67f09SDavid van Moolenbroek<div class="refentry" lang="en">
43*00b67f09SDavid van Moolenbroek<a name="man.dnssec-keygen"></a><div class="titlepage"></div>
44*00b67f09SDavid van Moolenbroek<div class="refnamediv">
45*00b67f09SDavid van Moolenbroek<h2>Name</h2>
46*00b67f09SDavid van Moolenbroek<p><span class="application">dnssec-keygen</span> &#8212; DNSSEC key generation tool</p>
47*00b67f09SDavid van Moolenbroek</div>
48*00b67f09SDavid van Moolenbroek<div class="refsynopsisdiv">
49*00b67f09SDavid van Moolenbroek<h2>Synopsis</h2>
50*00b67f09SDavid van Moolenbroek<div class="cmdsynopsis"><p><code class="command">dnssec-keygen</code>  [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-b <em class="replaceable"><code>keysize</code></em></code>] [<code class="option">-n <em class="replaceable"><code>nametype</code></em></code>] [<code class="option">-3</code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-C</code>] [<code class="option">-c <em class="replaceable"><code>class</code></em></code>] [<code class="option">-D <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-E <em class="replaceable"><code>engine</code></em></code>] [<code class="option">-f <em class="replaceable"><code>flag</code></em></code>] [<code class="option">-G</code>] [<code class="option">-g <em class="replaceable"><code>generator</code></em></code>] [<code class="option">-h</code>] [<code class="option">-I <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-i <em class="replaceable"><code>interval</code></em></code>] [<code class="option">-K <em class="replaceable"><code>directory</code></em></code>] [<code class="option">-L <em class="replaceable"><code>ttl</code></em></code>] [<code class="option">-k</code>] [<code class="option">-P <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-p <em class="replaceable"><code>protocol</code></em></code>] [<code class="option">-q</code>] [<code class="option">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-r <em class="replaceable"><code>randomdev</code></em></code>] [<code class="option">-S <em class="replaceable"><code>key</code></em></code>] [<code class="option">-s <em class="replaceable"><code>strength</code></em></code>] [<code class="option">-t <em class="replaceable"><code>type</code></em></code>] [<code class="option">-v <em class="replaceable"><code>level</code></em></code>] [<code class="option">-V</code>] [<code class="option">-z</code>] {name}</p></div>
51*00b67f09SDavid van Moolenbroek</div>
52*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
53*00b67f09SDavid van Moolenbroek<a name="id2622369"></a><h2>DESCRIPTION</h2>
54*00b67f09SDavid van Moolenbroek<p><span><strong class="command">dnssec-keygen</strong></span>
55*00b67f09SDavid van Moolenbroek      generates keys for DNSSEC (Secure DNS), as defined in RFC 2535
56*00b67f09SDavid van Moolenbroek      and RFC 4034.  It can also generate keys for use with
57*00b67f09SDavid van Moolenbroek      TSIG (Transaction Signatures) as defined in RFC 2845, or TKEY
58*00b67f09SDavid van Moolenbroek      (Transaction Key) as defined in RFC 2930.
59*00b67f09SDavid van Moolenbroek    </p>
60*00b67f09SDavid van Moolenbroek<p>
61*00b67f09SDavid van Moolenbroek      The <code class="option">name</code> of the key is specified on the command
62*00b67f09SDavid van Moolenbroek      line.  For DNSSEC keys, this must match the name of the zone for
63*00b67f09SDavid van Moolenbroek      which the key is being generated.
64*00b67f09SDavid van Moolenbroek    </p>
65*00b67f09SDavid van Moolenbroek</div>
66*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
67*00b67f09SDavid van Moolenbroek<a name="id2622389"></a><h2>OPTIONS</h2>
68*00b67f09SDavid van Moolenbroek<div class="variablelist"><dl>
69*00b67f09SDavid van Moolenbroek<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
70*00b67f09SDavid van Moolenbroek<dd>
71*00b67f09SDavid van Moolenbroek<p>
72*00b67f09SDavid van Moolenbroek            Selects the cryptographic algorithm.  For DNSSEC keys, the value
73*00b67f09SDavid van Moolenbroek            of <code class="option">algorithm</code> must be one of RSAMD5, RSASHA1,
74*00b67f09SDavid van Moolenbroek	    DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST,
75*00b67f09SDavid van Moolenbroek	    ECDSAP256SHA256 or ECDSAP384SHA384.
76*00b67f09SDavid van Moolenbroek	    For TSIG/TKEY, the value must
77*00b67f09SDavid van Moolenbroek            be DH (Diffie Hellman), HMAC-MD5, HMAC-SHA1, HMAC-SHA224,
78*00b67f09SDavid van Moolenbroek            HMAC-SHA256, HMAC-SHA384, or HMAC-SHA512.  These values are
79*00b67f09SDavid van Moolenbroek            case insensitive.
80*00b67f09SDavid van Moolenbroek          </p>
81*00b67f09SDavid van Moolenbroek<p>
82*00b67f09SDavid van Moolenbroek            If no algorithm is specified, then RSASHA1 will be used by
83*00b67f09SDavid van Moolenbroek            default, unless the <code class="option">-3</code> option is specified,
84*00b67f09SDavid van Moolenbroek            in which case NSEC3RSASHA1 will be used instead.  (If
85*00b67f09SDavid van Moolenbroek            <code class="option">-3</code> is used and an algorithm is specified,
86*00b67f09SDavid van Moolenbroek            that algorithm will be checked for compatibility with NSEC3.)
87*00b67f09SDavid van Moolenbroek          </p>
88*00b67f09SDavid van Moolenbroek<p>
89*00b67f09SDavid van Moolenbroek            Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement
90*00b67f09SDavid van Moolenbroek            algorithm, and DSA is recommended.  For TSIG, HMAC-MD5 is
91*00b67f09SDavid van Moolenbroek	    mandatory.
92*00b67f09SDavid van Moolenbroek          </p>
93*00b67f09SDavid van Moolenbroek<p>
94*00b67f09SDavid van Moolenbroek            Note 2: DH, HMAC-MD5, and HMAC-SHA1 through HMAC-SHA512
95*00b67f09SDavid van Moolenbroek            automatically set the -T KEY option.
96*00b67f09SDavid van Moolenbroek          </p>
97*00b67f09SDavid van Moolenbroek</dd>
98*00b67f09SDavid van Moolenbroek<dt><span class="term">-b <em class="replaceable"><code>keysize</code></em></span></dt>
99*00b67f09SDavid van Moolenbroek<dd>
100*00b67f09SDavid van Moolenbroek<p>
101*00b67f09SDavid van Moolenbroek            Specifies the number of bits in the key.  The choice of key
102*00b67f09SDavid van Moolenbroek            size depends on the algorithm used.  RSA keys must be
103*00b67f09SDavid van Moolenbroek            between 512 and 2048 bits.  Diffie Hellman keys must be between
104*00b67f09SDavid van Moolenbroek            128 and 4096 bits.  DSA keys must be between 512 and 1024
105*00b67f09SDavid van Moolenbroek            bits and an exact multiple of 64.  HMAC keys must be
106*00b67f09SDavid van Moolenbroek            between 1 and 512 bits. Elliptic curve algorithms don't need
107*00b67f09SDavid van Moolenbroek            this parameter.
108*00b67f09SDavid van Moolenbroek          </p>
109*00b67f09SDavid van Moolenbroek<p>
110*00b67f09SDavid van Moolenbroek            The key size does not need to be specified if using a default
111*00b67f09SDavid van Moolenbroek            algorithm.  The default key size is 1024 bits for zone signing
112*00b67f09SDavid van Moolenbroek            keys (ZSK's) and 2048 bits for key signing keys (KSK's,
113*00b67f09SDavid van Moolenbroek            generated with <code class="option">-f KSK</code>).  However, if an
114*00b67f09SDavid van Moolenbroek            algorithm is explicitly specified with the <code class="option">-a</code>,
115*00b67f09SDavid van Moolenbroek            then there is no default key size, and the <code class="option">-b</code>
116*00b67f09SDavid van Moolenbroek            must be used.
117*00b67f09SDavid van Moolenbroek          </p>
118*00b67f09SDavid van Moolenbroek</dd>
119*00b67f09SDavid van Moolenbroek<dt><span class="term">-n <em class="replaceable"><code>nametype</code></em></span></dt>
120*00b67f09SDavid van Moolenbroek<dd><p>
121*00b67f09SDavid van Moolenbroek            Specifies the owner type of the key.  The value of
122*00b67f09SDavid van Moolenbroek            <code class="option">nametype</code> must either be ZONE (for a DNSSEC
123*00b67f09SDavid van Moolenbroek            zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with
124*00b67f09SDavid van Moolenbroek            a host (KEY)),
125*00b67f09SDavid van Moolenbroek            USER (for a key associated with a user(KEY)) or OTHER (DNSKEY).
126*00b67f09SDavid van Moolenbroek            These values are case insensitive.  Defaults to ZONE for DNSKEY
127*00b67f09SDavid van Moolenbroek	    generation.
128*00b67f09SDavid van Moolenbroek          </p></dd>
129*00b67f09SDavid van Moolenbroek<dt><span class="term">-3</span></dt>
130*00b67f09SDavid van Moolenbroek<dd><p>
131*00b67f09SDavid van Moolenbroek	    Use an NSEC3-capable algorithm to generate a DNSSEC key.
132*00b67f09SDavid van Moolenbroek            If this option is used and no algorithm is explicitly
133*00b67f09SDavid van Moolenbroek            set on the command line, NSEC3RSASHA1 will be used by
134*00b67f09SDavid van Moolenbroek            default. Note that RSASHA256, RSASHA512, ECCGOST,
135*00b67f09SDavid van Moolenbroek	    ECDSAP256SHA256 and ECDSAP384SHA384 algorithms
136*00b67f09SDavid van Moolenbroek	    are NSEC3-capable.
137*00b67f09SDavid van Moolenbroek          </p></dd>
138*00b67f09SDavid van Moolenbroek<dt><span class="term">-C</span></dt>
139*00b67f09SDavid van Moolenbroek<dd><p>
140*00b67f09SDavid van Moolenbroek	    Compatibility mode:  generates an old-style key, without
141*00b67f09SDavid van Moolenbroek	    any metadata.  By default, <span><strong class="command">dnssec-keygen</strong></span>
142*00b67f09SDavid van Moolenbroek	    will include the key's creation date in the metadata stored
143*00b67f09SDavid van Moolenbroek	    with the private key, and other dates may be set there as well
144*00b67f09SDavid van Moolenbroek	    (publication date, activation date, etc).  Keys that include
145*00b67f09SDavid van Moolenbroek	    this data may be incompatible with older versions of BIND; the
146*00b67f09SDavid van Moolenbroek	    <code class="option">-C</code> option suppresses them.
147*00b67f09SDavid van Moolenbroek          </p></dd>
148*00b67f09SDavid van Moolenbroek<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
149*00b67f09SDavid van Moolenbroek<dd><p>
150*00b67f09SDavid van Moolenbroek            Indicates that the DNS record containing the key should have
151*00b67f09SDavid van Moolenbroek            the specified class.  If not specified, class IN is used.
152*00b67f09SDavid van Moolenbroek          </p></dd>
153*00b67f09SDavid van Moolenbroek<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
154*00b67f09SDavid van Moolenbroek<dd>
155*00b67f09SDavid van Moolenbroek<p>
156*00b67f09SDavid van Moolenbroek            Specifies the cryptographic hardware to use, when applicable.
157*00b67f09SDavid van Moolenbroek          </p>
158*00b67f09SDavid van Moolenbroek<p>
159*00b67f09SDavid van Moolenbroek            When BIND is built with OpenSSL PKCS#11 support, this defaults
160*00b67f09SDavid van Moolenbroek            to the string "pkcs11", which identifies an OpenSSL engine
161*00b67f09SDavid van Moolenbroek            that can drive a cryptographic accelerator or hardware service
162*00b67f09SDavid van Moolenbroek            module.  When BIND is built with native PKCS#11 cryptography
163*00b67f09SDavid van Moolenbroek            (--enable-native-pkcs11), it defaults to the path of the PKCS#11
164*00b67f09SDavid van Moolenbroek            provider library specified via "--with-pkcs11".
165*00b67f09SDavid van Moolenbroek          </p>
166*00b67f09SDavid van Moolenbroek</dd>
167*00b67f09SDavid van Moolenbroek<dt><span class="term">-f <em class="replaceable"><code>flag</code></em></span></dt>
168*00b67f09SDavid van Moolenbroek<dd><p>
169*00b67f09SDavid van Moolenbroek            Set the specified flag in the flag field of the KEY/DNSKEY record.
170*00b67f09SDavid van Moolenbroek            The only recognized flags are KSK (Key Signing Key) and REVOKE.
171*00b67f09SDavid van Moolenbroek          </p></dd>
172*00b67f09SDavid van Moolenbroek<dt><span class="term">-G</span></dt>
173*00b67f09SDavid van Moolenbroek<dd><p>
174*00b67f09SDavid van Moolenbroek            Generate a key, but do not publish it or sign with it.  This
175*00b67f09SDavid van Moolenbroek            option is incompatible with -P and -A.
176*00b67f09SDavid van Moolenbroek          </p></dd>
177*00b67f09SDavid van Moolenbroek<dt><span class="term">-g <em class="replaceable"><code>generator</code></em></span></dt>
178*00b67f09SDavid van Moolenbroek<dd><p>
179*00b67f09SDavid van Moolenbroek            If generating a Diffie Hellman key, use this generator.
180*00b67f09SDavid van Moolenbroek            Allowed values are 2 and 5.  If no generator
181*00b67f09SDavid van Moolenbroek            is specified, a known prime from RFC 2539 will be used
182*00b67f09SDavid van Moolenbroek            if possible; otherwise the default is 2.
183*00b67f09SDavid van Moolenbroek          </p></dd>
184*00b67f09SDavid van Moolenbroek<dt><span class="term">-h</span></dt>
185*00b67f09SDavid van Moolenbroek<dd><p>
186*00b67f09SDavid van Moolenbroek            Prints a short summary of the options and arguments to
187*00b67f09SDavid van Moolenbroek            <span><strong class="command">dnssec-keygen</strong></span>.
188*00b67f09SDavid van Moolenbroek          </p></dd>
189*00b67f09SDavid van Moolenbroek<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
190*00b67f09SDavid van Moolenbroek<dd><p>
191*00b67f09SDavid van Moolenbroek            Sets the directory in which the key files are to be written.
192*00b67f09SDavid van Moolenbroek          </p></dd>
193*00b67f09SDavid van Moolenbroek<dt><span class="term">-k</span></dt>
194*00b67f09SDavid van Moolenbroek<dd><p>
195*00b67f09SDavid van Moolenbroek            Deprecated in favor of -T KEY.
196*00b67f09SDavid van Moolenbroek          </p></dd>
197*00b67f09SDavid van Moolenbroek<dt><span class="term">-L <em class="replaceable"><code>ttl</code></em></span></dt>
198*00b67f09SDavid van Moolenbroek<dd><p>
199*00b67f09SDavid van Moolenbroek            Sets the default TTL to use for this key when it is converted
200*00b67f09SDavid van Moolenbroek            into a DNSKEY RR.  If the key is imported into a zone,
201*00b67f09SDavid van Moolenbroek            this is the TTL that will be used for it, unless there was
202*00b67f09SDavid van Moolenbroek            already a DNSKEY RRset in place, in which case the existing TTL
203*00b67f09SDavid van Moolenbroek            would take precedence.  If this value is not set and there
204*00b67f09SDavid van Moolenbroek            is no existing DNSKEY RRset, the TTL will default to the
205*00b67f09SDavid van Moolenbroek            SOA TTL. Setting the default TTL to <code class="literal">0</code>
206*00b67f09SDavid van Moolenbroek            or <code class="literal">none</code> is the same as leaving it unset.
207*00b67f09SDavid van Moolenbroek          </p></dd>
208*00b67f09SDavid van Moolenbroek<dt><span class="term">-p <em class="replaceable"><code>protocol</code></em></span></dt>
209*00b67f09SDavid van Moolenbroek<dd><p>
210*00b67f09SDavid van Moolenbroek            Sets the protocol value for the generated key.  The protocol
211*00b67f09SDavid van Moolenbroek            is a number between 0 and 255.  The default is 3 (DNSSEC).
212*00b67f09SDavid van Moolenbroek            Other possible values for this argument are listed in
213*00b67f09SDavid van Moolenbroek            RFC 2535 and its successors.
214*00b67f09SDavid van Moolenbroek          </p></dd>
215*00b67f09SDavid van Moolenbroek<dt><span class="term">-q</span></dt>
216*00b67f09SDavid van Moolenbroek<dd><p>
217*00b67f09SDavid van Moolenbroek            Quiet mode: Suppresses unnecessary output, including
218*00b67f09SDavid van Moolenbroek            progress indication.  Without this option, when
219*00b67f09SDavid van Moolenbroek            <span><strong class="command">dnssec-keygen</strong></span> is run interactively
220*00b67f09SDavid van Moolenbroek            to generate an RSA or DSA key pair, it will print a string
221*00b67f09SDavid van Moolenbroek            of symbols to <code class="filename">stderr</code> indicating the
222*00b67f09SDavid van Moolenbroek            progress of the key generation.  A '.' indicates that a
223*00b67f09SDavid van Moolenbroek            random number has been found which passed an initial
224*00b67f09SDavid van Moolenbroek            sieve test; '+' means a number has passed a single
225*00b67f09SDavid van Moolenbroek            round of the Miller-Rabin primality test; a space
226*00b67f09SDavid van Moolenbroek            means that the number has passed all the tests and is
227*00b67f09SDavid van Moolenbroek            a satisfactory key.
228*00b67f09SDavid van Moolenbroek          </p></dd>
229*00b67f09SDavid van Moolenbroek<dt><span class="term">-r <em class="replaceable"><code>randomdev</code></em></span></dt>
230*00b67f09SDavid van Moolenbroek<dd><p>
231*00b67f09SDavid van Moolenbroek            Specifies the source of randomness.  If the operating
232*00b67f09SDavid van Moolenbroek            system does not provide a <code class="filename">/dev/random</code>
233*00b67f09SDavid van Moolenbroek            or equivalent device, the default source of randomness
234*00b67f09SDavid van Moolenbroek            is keyboard input.  <code class="filename">randomdev</code>
235*00b67f09SDavid van Moolenbroek            specifies
236*00b67f09SDavid van Moolenbroek            the name of a character device or file containing random
237*00b67f09SDavid van Moolenbroek            data to be used instead of the default.  The special value
238*00b67f09SDavid van Moolenbroek            <code class="filename">keyboard</code> indicates that keyboard
239*00b67f09SDavid van Moolenbroek            input should be used.
240*00b67f09SDavid van Moolenbroek          </p></dd>
241*00b67f09SDavid van Moolenbroek<dt><span class="term">-S <em class="replaceable"><code>key</code></em></span></dt>
242*00b67f09SDavid van Moolenbroek<dd><p>
243*00b67f09SDavid van Moolenbroek            Create a new key which is an explicit successor to an
244*00b67f09SDavid van Moolenbroek            existing key.  The name, algorithm, size, and type of the
245*00b67f09SDavid van Moolenbroek            key will be set to match the existing key.  The activation
246*00b67f09SDavid van Moolenbroek            date of the new key will be set to the inactivation date of
247*00b67f09SDavid van Moolenbroek            the existing one.  The publication date will be set to the
248*00b67f09SDavid van Moolenbroek            activation date minus the prepublication interval, which
249*00b67f09SDavid van Moolenbroek            defaults to 30 days.
250*00b67f09SDavid van Moolenbroek          </p></dd>
251*00b67f09SDavid van Moolenbroek<dt><span class="term">-s <em class="replaceable"><code>strength</code></em></span></dt>
252*00b67f09SDavid van Moolenbroek<dd><p>
253*00b67f09SDavid van Moolenbroek            Specifies the strength value of the key.  The strength is
254*00b67f09SDavid van Moolenbroek            a number between 0 and 15, and currently has no defined
255*00b67f09SDavid van Moolenbroek            purpose in DNSSEC.
256*00b67f09SDavid van Moolenbroek          </p></dd>
257*00b67f09SDavid van Moolenbroek<dt><span class="term">-T <em class="replaceable"><code>rrtype</code></em></span></dt>
258*00b67f09SDavid van Moolenbroek<dd>
259*00b67f09SDavid van Moolenbroek<p>
260*00b67f09SDavid van Moolenbroek            Specifies the resource record type to use for the key.
261*00b67f09SDavid van Moolenbroek            <code class="option">rrtype</code> must be either DNSKEY or KEY.  The
262*00b67f09SDavid van Moolenbroek            default is DNSKEY when using a DNSSEC algorithm, but it can be
263*00b67f09SDavid van Moolenbroek            overridden to KEY for use with SIG(0).
264*00b67f09SDavid van Moolenbroek          </p>
265*00b67f09SDavid van Moolenbroek<p>
266*00b67f09SDavid van Moolenbroek          </p>
267*00b67f09SDavid van Moolenbroek<p>
268*00b67f09SDavid van Moolenbroek            Using any TSIG algorithm (HMAC-* or DH) forces this option
269*00b67f09SDavid van Moolenbroek            to KEY.
270*00b67f09SDavid van Moolenbroek          </p>
271*00b67f09SDavid van Moolenbroek</dd>
272*00b67f09SDavid van Moolenbroek<dt><span class="term">-t <em class="replaceable"><code>type</code></em></span></dt>
273*00b67f09SDavid van Moolenbroek<dd><p>
274*00b67f09SDavid van Moolenbroek            Indicates the use of the key.  <code class="option">type</code> must be
275*00b67f09SDavid van Moolenbroek            one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF.  The default
276*00b67f09SDavid van Moolenbroek            is AUTHCONF.  AUTH refers to the ability to authenticate
277*00b67f09SDavid van Moolenbroek            data, and CONF the ability to encrypt data.
278*00b67f09SDavid van Moolenbroek          </p></dd>
279*00b67f09SDavid van Moolenbroek<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
280*00b67f09SDavid van Moolenbroek<dd><p>
281*00b67f09SDavid van Moolenbroek            Sets the debugging level.
282*00b67f09SDavid van Moolenbroek          </p></dd>
283*00b67f09SDavid van Moolenbroek<dt><span class="term">-V</span></dt>
284*00b67f09SDavid van Moolenbroek<dd><p>
285*00b67f09SDavid van Moolenbroek	    Prints version information.
286*00b67f09SDavid van Moolenbroek	  </p></dd>
287*00b67f09SDavid van Moolenbroek</dl></div>
288*00b67f09SDavid van Moolenbroek</div>
289*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
290*00b67f09SDavid van Moolenbroek<a name="id2673181"></a><h2>TIMING OPTIONS</h2>
291*00b67f09SDavid van Moolenbroek<p>
292*00b67f09SDavid van Moolenbroek      Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
293*00b67f09SDavid van Moolenbroek      If the argument begins with a '+' or '-', it is interpreted as
294*00b67f09SDavid van Moolenbroek      an offset from the present time.  For convenience, if such an offset
295*00b67f09SDavid van Moolenbroek      is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi',
296*00b67f09SDavid van Moolenbroek      then the offset is computed in years (defined as 365 24-hour days,
297*00b67f09SDavid van Moolenbroek      ignoring leap years), months (defined as 30 24-hour days), weeks,
298*00b67f09SDavid van Moolenbroek      days, hours, or minutes, respectively.  Without a suffix, the offset
299*00b67f09SDavid van Moolenbroek      is computed in seconds.  To explicitly prevent a date from being
300*00b67f09SDavid van Moolenbroek      set, use 'none' or 'never'.
301*00b67f09SDavid van Moolenbroek    </p>
302*00b67f09SDavid van Moolenbroek<div class="variablelist"><dl>
303*00b67f09SDavid van Moolenbroek<dt><span class="term">-P <em class="replaceable"><code>date/offset</code></em></span></dt>
304*00b67f09SDavid van Moolenbroek<dd><p>
305*00b67f09SDavid van Moolenbroek            Sets the date on which a key is to be published to the zone.
306*00b67f09SDavid van Moolenbroek            After that date, the key will be included in the zone but will
307*00b67f09SDavid van Moolenbroek            not be used to sign it.  If not set, and if the -G option has
308*00b67f09SDavid van Moolenbroek            not been used, the default is "now".
309*00b67f09SDavid van Moolenbroek          </p></dd>
310*00b67f09SDavid van Moolenbroek<dt><span class="term">-A <em class="replaceable"><code>date/offset</code></em></span></dt>
311*00b67f09SDavid van Moolenbroek<dd><p>
312*00b67f09SDavid van Moolenbroek            Sets the date on which the key is to be activated.  After that
313*00b67f09SDavid van Moolenbroek            date, the key will be included in the zone and used to sign
314*00b67f09SDavid van Moolenbroek            it.  If not set, and if the -G option has not been used, the
315*00b67f09SDavid van Moolenbroek            default is "now".  If set, if and -P is not set, then
316*00b67f09SDavid van Moolenbroek            the publication date will be set to the activation date
317*00b67f09SDavid van Moolenbroek            minus the prepublication interval.
318*00b67f09SDavid van Moolenbroek          </p></dd>
319*00b67f09SDavid van Moolenbroek<dt><span class="term">-R <em class="replaceable"><code>date/offset</code></em></span></dt>
320*00b67f09SDavid van Moolenbroek<dd><p>
321*00b67f09SDavid van Moolenbroek            Sets the date on which the key is to be revoked.  After that
322*00b67f09SDavid van Moolenbroek            date, the key will be flagged as revoked.  It will be included
323*00b67f09SDavid van Moolenbroek            in the zone and will be used to sign it.
324*00b67f09SDavid van Moolenbroek          </p></dd>
325*00b67f09SDavid van Moolenbroek<dt><span class="term">-I <em class="replaceable"><code>date/offset</code></em></span></dt>
326*00b67f09SDavid van Moolenbroek<dd><p>
327*00b67f09SDavid van Moolenbroek            Sets the date on which the key is to be retired.  After that
328*00b67f09SDavid van Moolenbroek            date, the key will still be included in the zone, but it
329*00b67f09SDavid van Moolenbroek            will not be used to sign it.
330*00b67f09SDavid van Moolenbroek          </p></dd>
331*00b67f09SDavid van Moolenbroek<dt><span class="term">-D <em class="replaceable"><code>date/offset</code></em></span></dt>
332*00b67f09SDavid van Moolenbroek<dd><p>
333*00b67f09SDavid van Moolenbroek            Sets the date on which the key is to be deleted.  After that
334*00b67f09SDavid van Moolenbroek            date, the key will no longer be included in the zone.  (It
335*00b67f09SDavid van Moolenbroek            may remain in the key repository, however.)
336*00b67f09SDavid van Moolenbroek          </p></dd>
337*00b67f09SDavid van Moolenbroek<dt><span class="term">-i <em class="replaceable"><code>interval</code></em></span></dt>
338*00b67f09SDavid van Moolenbroek<dd>
339*00b67f09SDavid van Moolenbroek<p>
340*00b67f09SDavid van Moolenbroek            Sets the prepublication interval for a key.  If set, then
341*00b67f09SDavid van Moolenbroek            the publication and activation dates must be separated by at least
342*00b67f09SDavid van Moolenbroek            this much time.  If the activation date is specified but the
343*00b67f09SDavid van Moolenbroek            publication date isn't, then the publication date will default
344*00b67f09SDavid van Moolenbroek            to this much time before the activation date; conversely, if
345*00b67f09SDavid van Moolenbroek            the publication date is specified but activation date isn't,
346*00b67f09SDavid van Moolenbroek            then activation will be set to this much time after publication.
347*00b67f09SDavid van Moolenbroek          </p>
348*00b67f09SDavid van Moolenbroek<p>
349*00b67f09SDavid van Moolenbroek            If the key is being created as an explicit successor to another
350*00b67f09SDavid van Moolenbroek            key, then the default prepublication interval is 30 days;
351*00b67f09SDavid van Moolenbroek            otherwise it is zero.
352*00b67f09SDavid van Moolenbroek          </p>
353*00b67f09SDavid van Moolenbroek<p>
354*00b67f09SDavid van Moolenbroek            As with date offsets, if the argument is followed by one of
355*00b67f09SDavid van Moolenbroek            the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
356*00b67f09SDavid van Moolenbroek            interval is measured in years, months, weeks, days, hours,
357*00b67f09SDavid van Moolenbroek            or minutes, respectively.  Without a suffix, the interval is
358*00b67f09SDavid van Moolenbroek            measured in seconds.
359*00b67f09SDavid van Moolenbroek          </p>
360*00b67f09SDavid van Moolenbroek</dd>
361*00b67f09SDavid van Moolenbroek</dl></div>
362*00b67f09SDavid van Moolenbroek</div>
363*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
364*00b67f09SDavid van Moolenbroek<a name="id2673371"></a><h2>GENERATED KEYS</h2>
365*00b67f09SDavid van Moolenbroek<p>
366*00b67f09SDavid van Moolenbroek      When <span><strong class="command">dnssec-keygen</strong></span> completes
367*00b67f09SDavid van Moolenbroek      successfully,
368*00b67f09SDavid van Moolenbroek      it prints a string of the form <code class="filename">Knnnn.+aaa+iiiii</code>
369*00b67f09SDavid van Moolenbroek      to the standard output.  This is an identification string for
370*00b67f09SDavid van Moolenbroek      the key it has generated.
371*00b67f09SDavid van Moolenbroek    </p>
372*00b67f09SDavid van Moolenbroek<div class="itemizedlist"><ul type="disc">
373*00b67f09SDavid van Moolenbroek<li><p><code class="filename">nnnn</code> is the key name.
374*00b67f09SDavid van Moolenbroek        </p></li>
375*00b67f09SDavid van Moolenbroek<li><p><code class="filename">aaa</code> is the numeric representation
376*00b67f09SDavid van Moolenbroek          of the
377*00b67f09SDavid van Moolenbroek          algorithm.
378*00b67f09SDavid van Moolenbroek        </p></li>
379*00b67f09SDavid van Moolenbroek<li><p><code class="filename">iiiii</code> is the key identifier (or
380*00b67f09SDavid van Moolenbroek          footprint).
381*00b67f09SDavid van Moolenbroek        </p></li>
382*00b67f09SDavid van Moolenbroek</ul></div>
383*00b67f09SDavid van Moolenbroek<p><span><strong class="command">dnssec-keygen</strong></span>
384*00b67f09SDavid van Moolenbroek      creates two files, with names based
385*00b67f09SDavid van Moolenbroek      on the printed string.  <code class="filename">Knnnn.+aaa+iiiii.key</code>
386*00b67f09SDavid van Moolenbroek      contains the public key, and
387*00b67f09SDavid van Moolenbroek      <code class="filename">Knnnn.+aaa+iiiii.private</code> contains the
388*00b67f09SDavid van Moolenbroek      private
389*00b67f09SDavid van Moolenbroek      key.
390*00b67f09SDavid van Moolenbroek    </p>
391*00b67f09SDavid van Moolenbroek<p>
392*00b67f09SDavid van Moolenbroek      The <code class="filename">.key</code> file contains a DNS KEY record
393*00b67f09SDavid van Moolenbroek      that
394*00b67f09SDavid van Moolenbroek      can be inserted into a zone file (directly or with a $INCLUDE
395*00b67f09SDavid van Moolenbroek      statement).
396*00b67f09SDavid van Moolenbroek    </p>
397*00b67f09SDavid van Moolenbroek<p>
398*00b67f09SDavid van Moolenbroek      The <code class="filename">.private</code> file contains
399*00b67f09SDavid van Moolenbroek      algorithm-specific
400*00b67f09SDavid van Moolenbroek      fields.  For obvious security reasons, this file does not have
401*00b67f09SDavid van Moolenbroek      general read permission.
402*00b67f09SDavid van Moolenbroek    </p>
403*00b67f09SDavid van Moolenbroek<p>
404*00b67f09SDavid van Moolenbroek      Both <code class="filename">.key</code> and <code class="filename">.private</code>
405*00b67f09SDavid van Moolenbroek      files are generated for symmetric encryption algorithms such as
406*00b67f09SDavid van Moolenbroek      HMAC-MD5, even though the public and private key are equivalent.
407*00b67f09SDavid van Moolenbroek    </p>
408*00b67f09SDavid van Moolenbroek</div>
409*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
410*00b67f09SDavid van Moolenbroek<a name="id2673547"></a><h2>EXAMPLE</h2>
411*00b67f09SDavid van Moolenbroek<p>
412*00b67f09SDavid van Moolenbroek      To generate a 768-bit DSA key for the domain
413*00b67f09SDavid van Moolenbroek      <strong class="userinput"><code>example.com</code></strong>, the following command would be
414*00b67f09SDavid van Moolenbroek      issued:
415*00b67f09SDavid van Moolenbroek    </p>
416*00b67f09SDavid van Moolenbroek<p><strong class="userinput"><code>dnssec-keygen -a DSA -b 768 -n ZONE example.com</code></strong>
417*00b67f09SDavid van Moolenbroek    </p>
418*00b67f09SDavid van Moolenbroek<p>
419*00b67f09SDavid van Moolenbroek      The command would print a string of the form:
420*00b67f09SDavid van Moolenbroek    </p>
421*00b67f09SDavid van Moolenbroek<p><strong class="userinput"><code>Kexample.com.+003+26160</code></strong>
422*00b67f09SDavid van Moolenbroek    </p>
423*00b67f09SDavid van Moolenbroek<p>
424*00b67f09SDavid van Moolenbroek      In this example, <span><strong class="command">dnssec-keygen</strong></span> creates
425*00b67f09SDavid van Moolenbroek      the files <code class="filename">Kexample.com.+003+26160.key</code>
426*00b67f09SDavid van Moolenbroek      and
427*00b67f09SDavid van Moolenbroek      <code class="filename">Kexample.com.+003+26160.private</code>.
428*00b67f09SDavid van Moolenbroek    </p>
429*00b67f09SDavid van Moolenbroek</div>
430*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
431*00b67f09SDavid van Moolenbroek<a name="id2673604"></a><h2>SEE ALSO</h2>
432*00b67f09SDavid van Moolenbroek<p><span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
433*00b67f09SDavid van Moolenbroek      <em class="citetitle">BIND 9 Administrator Reference Manual</em>,
434*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 2539</em>,
435*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 2845</em>,
436*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 4034</em>.
437*00b67f09SDavid van Moolenbroek    </p>
438*00b67f09SDavid van Moolenbroek</div>
439*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
440*00b67f09SDavid van Moolenbroek<a name="id2673635"></a><h2>AUTHOR</h2>
441*00b67f09SDavid van Moolenbroek<p><span class="corpauthor">Internet Systems Consortium</span>
442*00b67f09SDavid van Moolenbroek    </p>
443*00b67f09SDavid van Moolenbroek</div>
444*00b67f09SDavid van Moolenbroek</div>
445*00b67f09SDavid van Moolenbroek<div class="navfooter">
446*00b67f09SDavid van Moolenbroek<hr>
447*00b67f09SDavid van Moolenbroek<table width="100%" summary="Navigation footer">
448*00b67f09SDavid van Moolenbroek<tr>
449*00b67f09SDavid van Moolenbroek<td width="40%" align="left">
450*00b67f09SDavid van Moolenbroek<a accesskey="p" href="man.dnssec-keyfromlabel.html">Prev</a>�</td>
451*00b67f09SDavid van Moolenbroek<td width="20%" align="center"><a accesskey="u" href="Bv9ARM.ch13.html">Up</a></td>
452*00b67f09SDavid van Moolenbroek<td width="40%" align="right">�<a accesskey="n" href="man.dnssec-revoke.html">Next</a>
453*00b67f09SDavid van Moolenbroek</td>
454*00b67f09SDavid van Moolenbroek</tr>
455*00b67f09SDavid van Moolenbroek<tr>
456*00b67f09SDavid van Moolenbroek<td width="40%" align="left" valign="top">
457*00b67f09SDavid van Moolenbroek<span class="application">dnssec-keyfromlabel</span>�</td>
458*00b67f09SDavid van Moolenbroek<td width="20%" align="center"><a accesskey="h" href="Bv9ARM.html">Home</a></td>
459*00b67f09SDavid van Moolenbroek<td width="40%" align="right" valign="top">�<span class="application">dnssec-revoke</span>
460*00b67f09SDavid van Moolenbroek</td>
461*00b67f09SDavid van Moolenbroek</tr>
462*00b67f09SDavid van Moolenbroek</table>
463*00b67f09SDavid van Moolenbroek</div>
464*00b67f09SDavid van Moolenbroek<p style="text-align: center;">BIND 9.10.2-P4</p>
465*00b67f09SDavid van Moolenbroek</body>
466*00b67f09SDavid van Moolenbroek</html>
467