1*00b67f09SDavid van Moolenbroek<!--
2*00b67f09SDavid van Moolenbroek - Copyright (C) 2008-2012, 2014 Internet Systems Consortium, Inc. ("ISC")
3*00b67f09SDavid van Moolenbroek -
4*00b67f09SDavid van Moolenbroek - Permission to use, copy, modify, and/or distribute this software for any
5*00b67f09SDavid van Moolenbroek - purpose with or without fee is hereby granted, provided that the above
6*00b67f09SDavid van Moolenbroek - copyright notice and this permission notice appear in all copies.
7*00b67f09SDavid van Moolenbroek -
8*00b67f09SDavid van Moolenbroek - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
9*00b67f09SDavid van Moolenbroek - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10*00b67f09SDavid van Moolenbroek - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
11*00b67f09SDavid van Moolenbroek - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12*00b67f09SDavid van Moolenbroek - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
13*00b67f09SDavid van Moolenbroek - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14*00b67f09SDavid van Moolenbroek - PERFORMANCE OF THIS SOFTWARE.
15*00b67f09SDavid van Moolenbroek-->
16*00b67f09SDavid van Moolenbroek<!-- Id -->
17*00b67f09SDavid van Moolenbroek<html>
18*00b67f09SDavid van Moolenbroek<head>
19*00b67f09SDavid van Moolenbroek<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
20*00b67f09SDavid van Moolenbroek<title>dnssec-keyfromlabel</title>
21*00b67f09SDavid van Moolenbroek<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
22*00b67f09SDavid van Moolenbroek</head>
23*00b67f09SDavid van Moolenbroek<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
24*00b67f09SDavid van Moolenbroek<a name="man.dnssec-keyfromlabel"></a><div class="titlepage"></div>
25*00b67f09SDavid van Moolenbroek<div class="refnamediv">
26*00b67f09SDavid van Moolenbroek<h2>Name</h2>
27*00b67f09SDavid van Moolenbroek<p><span class="application">dnssec-keyfromlabel</span> &#8212; DNSSEC key generation tool</p>
28*00b67f09SDavid van Moolenbroek</div>
29*00b67f09SDavid van Moolenbroek<div class="refsynopsisdiv">
30*00b67f09SDavid van Moolenbroek<h2>Synopsis</h2>
31*00b67f09SDavid van Moolenbroek<div class="cmdsynopsis"><p><code class="command">dnssec-keyfromlabel</code>  {-l <em class="replaceable"><code>label</code></em>} [<code class="option">-3</code>] [<code class="option">-a <em class="replaceable"><code>algorithm</code></em></code>] [<code class="option">-A <em class="replaceable"><code>date/offset</code></em></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">-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</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">-n <em class="replaceable"><code>nametype</code></em></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">-R <em class="replaceable"><code>date/offset</code></em></code>] [<code class="option">-S <em class="replaceable"><code>key</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">-y</code>] {name}</p></div>
32*00b67f09SDavid van Moolenbroek</div>
33*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
34*00b67f09SDavid van Moolenbroek<a name="id2543539"></a><h2>DESCRIPTION</h2>
35*00b67f09SDavid van Moolenbroek<p><span><strong class="command">dnssec-keyfromlabel</strong></span>
36*00b67f09SDavid van Moolenbroek      generates a key pair of files that referencing a key object stored
37*00b67f09SDavid van Moolenbroek      in a cryptographic hardware service module (HSM).  The private key
38*00b67f09SDavid van Moolenbroek      file can be used for DNSSEC signing of zone data as if it were a
39*00b67f09SDavid van Moolenbroek      conventional signing key created by <span><strong class="command">dnssec-keygen</strong></span>,
40*00b67f09SDavid van Moolenbroek      but the key material is stored within the HSM, and the actual signing
41*00b67f09SDavid van Moolenbroek      takes place there.
42*00b67f09SDavid van Moolenbroek    </p>
43*00b67f09SDavid van Moolenbroek<p>
44*00b67f09SDavid van Moolenbroek      The <code class="option">name</code> of the key is specified on the command
45*00b67f09SDavid van Moolenbroek      line.  This must match the name of the zone for which the key is
46*00b67f09SDavid van Moolenbroek      being generated.
47*00b67f09SDavid van Moolenbroek    </p>
48*00b67f09SDavid van Moolenbroek</div>
49*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
50*00b67f09SDavid van Moolenbroek<a name="id2543560"></a><h2>OPTIONS</h2>
51*00b67f09SDavid van Moolenbroek<div class="variablelist"><dl>
52*00b67f09SDavid van Moolenbroek<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
53*00b67f09SDavid van Moolenbroek<dd>
54*00b67f09SDavid van Moolenbroek<p>
55*00b67f09SDavid van Moolenbroek	    Selects the cryptographic algorithm.  The value of
56*00b67f09SDavid van Moolenbroek            <code class="option">algorithm</code> must be one of RSAMD5, RSASHA1,
57*00b67f09SDavid van Moolenbroek	    DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST,
58*00b67f09SDavid van Moolenbroek	    ECDSAP256SHA256 or ECDSAP384SHA384.
59*00b67f09SDavid van Moolenbroek	    These values are case insensitive.
60*00b67f09SDavid van Moolenbroek	  </p>
61*00b67f09SDavid van Moolenbroek<p>
62*00b67f09SDavid van Moolenbroek            If no algorithm is specified, then RSASHA1 will be used by
63*00b67f09SDavid van Moolenbroek            default, unless the <code class="option">-3</code> option is specified,
64*00b67f09SDavid van Moolenbroek            in which case NSEC3RSASHA1 will be used instead.  (If
65*00b67f09SDavid van Moolenbroek            <code class="option">-3</code> is used and an algorithm is specified,
66*00b67f09SDavid van Moolenbroek            that algorithm will be checked for compatibility with NSEC3.)
67*00b67f09SDavid van Moolenbroek          </p>
68*00b67f09SDavid van Moolenbroek<p>
69*00b67f09SDavid van Moolenbroek            Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement
70*00b67f09SDavid van Moolenbroek            algorithm, and DSA is recommended.
71*00b67f09SDavid van Moolenbroek          </p>
72*00b67f09SDavid van Moolenbroek<p>
73*00b67f09SDavid van Moolenbroek            Note 2: DH automatically sets the -k flag.
74*00b67f09SDavid van Moolenbroek          </p>
75*00b67f09SDavid van Moolenbroek</dd>
76*00b67f09SDavid van Moolenbroek<dt><span class="term">-3</span></dt>
77*00b67f09SDavid van Moolenbroek<dd><p>
78*00b67f09SDavid van Moolenbroek	    Use an NSEC3-capable algorithm to generate a DNSSEC key.
79*00b67f09SDavid van Moolenbroek            If this option is used and no algorithm is explicitly
80*00b67f09SDavid van Moolenbroek            set on the command line, NSEC3RSASHA1 will be used by
81*00b67f09SDavid van Moolenbroek            default.
82*00b67f09SDavid van Moolenbroek          </p></dd>
83*00b67f09SDavid van Moolenbroek<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
84*00b67f09SDavid van Moolenbroek<dd>
85*00b67f09SDavid van Moolenbroek<p>
86*00b67f09SDavid van Moolenbroek            Specifies the cryptographic hardware to use.
87*00b67f09SDavid van Moolenbroek          </p>
88*00b67f09SDavid van Moolenbroek<p>
89*00b67f09SDavid van Moolenbroek            When BIND is built with OpenSSL PKCS#11 support, this defaults
90*00b67f09SDavid van Moolenbroek            to the string "pkcs11", which identifies an OpenSSL engine
91*00b67f09SDavid van Moolenbroek            that can drive a cryptographic accelerator or hardware service
92*00b67f09SDavid van Moolenbroek            module.  When BIND is built with native PKCS#11 cryptography
93*00b67f09SDavid van Moolenbroek            (--enable-native-pkcs11), it defaults to the path of the PKCS#11
94*00b67f09SDavid van Moolenbroek            provider library specified via "--with-pkcs11".
95*00b67f09SDavid van Moolenbroek          </p>
96*00b67f09SDavid van Moolenbroek</dd>
97*00b67f09SDavid van Moolenbroek<dt><span class="term">-l <em class="replaceable"><code>label</code></em></span></dt>
98*00b67f09SDavid van Moolenbroek<dd>
99*00b67f09SDavid van Moolenbroek<p>
100*00b67f09SDavid van Moolenbroek            Specifies the label for a key pair in the crypto hardware.
101*00b67f09SDavid van Moolenbroek          </p>
102*00b67f09SDavid van Moolenbroek<p>
103*00b67f09SDavid van Moolenbroek            When <acronym class="acronym">BIND</acronym> 9 is built with OpenSSL-based
104*00b67f09SDavid van Moolenbroek            PKCS#11 support, the label is an arbitrary string that
105*00b67f09SDavid van Moolenbroek            identifies a particular key.  It may be preceded by an
106*00b67f09SDavid van Moolenbroek            optional OpenSSL engine name, followed by a colon, as in
107*00b67f09SDavid van Moolenbroek            "pkcs11:<em class="replaceable"><code>keylabel</code></em>".
108*00b67f09SDavid van Moolenbroek          </p>
109*00b67f09SDavid van Moolenbroek<p>
110*00b67f09SDavid van Moolenbroek            When <acronym class="acronym">BIND</acronym> 9 is built with native PKCS#11
111*00b67f09SDavid van Moolenbroek            support, the label is a PKCS#11 URI string in the format
112*00b67f09SDavid van Moolenbroek            "pkcs11:<code class="option">keyword</code>=<em class="replaceable"><code>value</code></em>[<span class="optional">;<code class="option">keyword</code>=<em class="replaceable"><code>value</code></em>;...</span>]"
113*00b67f09SDavid van Moolenbroek            Keywords include "token", which identifies the HSM; "object", which
114*00b67f09SDavid van Moolenbroek            identifies the key; and "pin-source", which identifies a file from
115*00b67f09SDavid van Moolenbroek            which the HSM's PIN code can be obtained.  The label will be
116*00b67f09SDavid van Moolenbroek            stored in the on-disk "private" file.
117*00b67f09SDavid van Moolenbroek          </p>
118*00b67f09SDavid van Moolenbroek<p>
119*00b67f09SDavid van Moolenbroek            If the label contains a
120*00b67f09SDavid van Moolenbroek            <code class="option">pin-source</code> field, tools using the generated
121*00b67f09SDavid van Moolenbroek            key files will be able to use the HSM for signing and other
122*00b67f09SDavid van Moolenbroek            operations without any need for an operator to manually enter
123*00b67f09SDavid van Moolenbroek            a PIN.  Note: Making the HSM's PIN accessible in this manner
124*00b67f09SDavid van Moolenbroek            may reduce the security advantage of using an HSM; be sure
125*00b67f09SDavid van Moolenbroek            this is what you want to do before making use of this feature.
126*00b67f09SDavid van Moolenbroek          </p>
127*00b67f09SDavid van Moolenbroek</dd>
128*00b67f09SDavid van Moolenbroek<dt><span class="term">-n <em class="replaceable"><code>nametype</code></em></span></dt>
129*00b67f09SDavid van Moolenbroek<dd><p>
130*00b67f09SDavid van Moolenbroek            Specifies the owner type of the key.  The value of
131*00b67f09SDavid van Moolenbroek            <code class="option">nametype</code> must either be ZONE (for a DNSSEC
132*00b67f09SDavid van Moolenbroek            zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with
133*00b67f09SDavid van Moolenbroek            a host (KEY)),
134*00b67f09SDavid van Moolenbroek            USER (for a key associated with a user(KEY)) or OTHER (DNSKEY).
135*00b67f09SDavid van Moolenbroek            These values are case insensitive.
136*00b67f09SDavid van Moolenbroek          </p></dd>
137*00b67f09SDavid van Moolenbroek<dt><span class="term">-C</span></dt>
138*00b67f09SDavid van Moolenbroek<dd><p>
139*00b67f09SDavid van Moolenbroek	    Compatibility mode:  generates an old-style key, without
140*00b67f09SDavid van Moolenbroek	    any metadata.  By default, <span><strong class="command">dnssec-keyfromlabel</strong></span>
141*00b67f09SDavid van Moolenbroek	    will include the key's creation date in the metadata stored
142*00b67f09SDavid van Moolenbroek	    with the private key, and other dates may be set there as well
143*00b67f09SDavid van Moolenbroek	    (publication date, activation date, etc).  Keys that include
144*00b67f09SDavid van Moolenbroek	    this data may be incompatible with older versions of BIND; the
145*00b67f09SDavid van Moolenbroek	    <code class="option">-C</code> option suppresses them.
146*00b67f09SDavid van Moolenbroek          </p></dd>
147*00b67f09SDavid van Moolenbroek<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
148*00b67f09SDavid van Moolenbroek<dd><p>
149*00b67f09SDavid van Moolenbroek            Indicates that the DNS record containing the key should have
150*00b67f09SDavid van Moolenbroek            the specified class.  If not specified, class IN is used.
151*00b67f09SDavid van Moolenbroek          </p></dd>
152*00b67f09SDavid van Moolenbroek<dt><span class="term">-f <em class="replaceable"><code>flag</code></em></span></dt>
153*00b67f09SDavid van Moolenbroek<dd><p>
154*00b67f09SDavid van Moolenbroek            Set the specified flag in the flag field of the KEY/DNSKEY record.
155*00b67f09SDavid van Moolenbroek            The only recognized flags are KSK (Key Signing Key) and REVOKE.
156*00b67f09SDavid van Moolenbroek          </p></dd>
157*00b67f09SDavid van Moolenbroek<dt><span class="term">-G</span></dt>
158*00b67f09SDavid van Moolenbroek<dd><p>
159*00b67f09SDavid van Moolenbroek            Generate a key, but do not publish it or sign with it.  This
160*00b67f09SDavid van Moolenbroek            option is incompatible with -P and -A.
161*00b67f09SDavid van Moolenbroek          </p></dd>
162*00b67f09SDavid van Moolenbroek<dt><span class="term">-h</span></dt>
163*00b67f09SDavid van Moolenbroek<dd><p>
164*00b67f09SDavid van Moolenbroek            Prints a short summary of the options and arguments to
165*00b67f09SDavid van Moolenbroek            <span><strong class="command">dnssec-keyfromlabel</strong></span>.
166*00b67f09SDavid van Moolenbroek          </p></dd>
167*00b67f09SDavid van Moolenbroek<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
168*00b67f09SDavid van Moolenbroek<dd><p>
169*00b67f09SDavid van Moolenbroek            Sets the directory in which the key files are to be written.
170*00b67f09SDavid van Moolenbroek          </p></dd>
171*00b67f09SDavid van Moolenbroek<dt><span class="term">-k</span></dt>
172*00b67f09SDavid van Moolenbroek<dd><p>
173*00b67f09SDavid van Moolenbroek            Generate KEY records rather than DNSKEY records.
174*00b67f09SDavid van Moolenbroek          </p></dd>
175*00b67f09SDavid van Moolenbroek<dt><span class="term">-L <em class="replaceable"><code>ttl</code></em></span></dt>
176*00b67f09SDavid van Moolenbroek<dd><p>
177*00b67f09SDavid van Moolenbroek            Sets the default TTL to use for this key when it is converted
178*00b67f09SDavid van Moolenbroek            into a DNSKEY RR.  If the key is imported into a zone,
179*00b67f09SDavid van Moolenbroek            this is the TTL that will be used for it, unless there was
180*00b67f09SDavid van Moolenbroek            already a DNSKEY RRset in place, in which case the existing TTL
181*00b67f09SDavid van Moolenbroek            would take precedence.  Setting the default TTL to
182*00b67f09SDavid van Moolenbroek            <code class="literal">0</code> or <code class="literal">none</code> removes it.
183*00b67f09SDavid van Moolenbroek          </p></dd>
184*00b67f09SDavid van Moolenbroek<dt><span class="term">-p <em class="replaceable"><code>protocol</code></em></span></dt>
185*00b67f09SDavid van Moolenbroek<dd><p>
186*00b67f09SDavid van Moolenbroek            Sets the protocol value for the key.  The protocol
187*00b67f09SDavid van Moolenbroek            is a number between 0 and 255.  The default is 3 (DNSSEC).
188*00b67f09SDavid van Moolenbroek            Other possible values for this argument are listed in
189*00b67f09SDavid van Moolenbroek            RFC 2535 and its successors.
190*00b67f09SDavid van Moolenbroek          </p></dd>
191*00b67f09SDavid van Moolenbroek<dt><span class="term">-S <em class="replaceable"><code>key</code></em></span></dt>
192*00b67f09SDavid van Moolenbroek<dd><p>
193*00b67f09SDavid van Moolenbroek            Generate a key as an explicit successor to an existing key.
194*00b67f09SDavid van Moolenbroek	    The name, algorithm, size, and type of the key will be set
195*00b67f09SDavid van Moolenbroek	    to match the predecessor. The activation date of the new
196*00b67f09SDavid van Moolenbroek	    key will be set to the inactivation date of the existing
197*00b67f09SDavid van Moolenbroek	    one. The publication date will be set to the activation
198*00b67f09SDavid van Moolenbroek	    date minus the prepublication interval, which defaults to
199*00b67f09SDavid van Moolenbroek	    30 days.
200*00b67f09SDavid van Moolenbroek          </p></dd>
201*00b67f09SDavid van Moolenbroek<dt><span class="term">-t <em class="replaceable"><code>type</code></em></span></dt>
202*00b67f09SDavid van Moolenbroek<dd><p>
203*00b67f09SDavid van Moolenbroek            Indicates the use of the key.  <code class="option">type</code> must be
204*00b67f09SDavid van Moolenbroek            one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF.  The default
205*00b67f09SDavid van Moolenbroek            is AUTHCONF.  AUTH refers to the ability to authenticate
206*00b67f09SDavid van Moolenbroek            data, and CONF the ability to encrypt data.
207*00b67f09SDavid van Moolenbroek          </p></dd>
208*00b67f09SDavid van Moolenbroek<dt><span class="term">-v <em class="replaceable"><code>level</code></em></span></dt>
209*00b67f09SDavid van Moolenbroek<dd><p>
210*00b67f09SDavid van Moolenbroek            Sets the debugging level.
211*00b67f09SDavid van Moolenbroek          </p></dd>
212*00b67f09SDavid van Moolenbroek<dt><span class="term">-V</span></dt>
213*00b67f09SDavid van Moolenbroek<dd><p>
214*00b67f09SDavid van Moolenbroek	    Prints version information.
215*00b67f09SDavid van Moolenbroek	  </p></dd>
216*00b67f09SDavid van Moolenbroek<dt><span class="term">-y</span></dt>
217*00b67f09SDavid van Moolenbroek<dd><p>
218*00b67f09SDavid van Moolenbroek            Allows DNSSEC key files to be generated even if the key ID
219*00b67f09SDavid van Moolenbroek	    would collide with that of an existing key, in the event of
220*00b67f09SDavid van Moolenbroek	    either key being revoked.  (This is only safe to use if you
221*00b67f09SDavid van Moolenbroek            are sure you won't be using RFC 5011 trust anchor maintenance
222*00b67f09SDavid van Moolenbroek            with either of the keys involved.)
223*00b67f09SDavid van Moolenbroek          </p></dd>
224*00b67f09SDavid van Moolenbroek</dl></div>
225*00b67f09SDavid van Moolenbroek</div>
226*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
227*00b67f09SDavid van Moolenbroek<a name="id2544020"></a><h2>TIMING OPTIONS</h2>
228*00b67f09SDavid van Moolenbroek<p>
229*00b67f09SDavid van Moolenbroek      Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
230*00b67f09SDavid van Moolenbroek      If the argument begins with a '+' or '-', it is interpreted as
231*00b67f09SDavid van Moolenbroek      an offset from the present time.  For convenience, if such an offset
232*00b67f09SDavid van Moolenbroek      is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi',
233*00b67f09SDavid van Moolenbroek      then the offset is computed in years (defined as 365 24-hour days,
234*00b67f09SDavid van Moolenbroek      ignoring leap years), months (defined as 30 24-hour days), weeks,
235*00b67f09SDavid van Moolenbroek      days, hours, or minutes, respectively.  Without a suffix, the offset
236*00b67f09SDavid van Moolenbroek      is computed in seconds.  To explicitly prevent a date from being
237*00b67f09SDavid van Moolenbroek      set, use 'none' or 'never'.
238*00b67f09SDavid van Moolenbroek    </p>
239*00b67f09SDavid van Moolenbroek<div class="variablelist"><dl>
240*00b67f09SDavid van Moolenbroek<dt><span class="term">-P <em class="replaceable"><code>date/offset</code></em></span></dt>
241*00b67f09SDavid van Moolenbroek<dd><p>
242*00b67f09SDavid van Moolenbroek            Sets the date on which a key is to be published to the zone.
243*00b67f09SDavid van Moolenbroek            After that date, the key will be included in the zone but will
244*00b67f09SDavid van Moolenbroek            not be used to sign it.  If not set, and if the -G option has
245*00b67f09SDavid van Moolenbroek            not been used, the default is "now".
246*00b67f09SDavid van Moolenbroek          </p></dd>
247*00b67f09SDavid van Moolenbroek<dt><span class="term">-A <em class="replaceable"><code>date/offset</code></em></span></dt>
248*00b67f09SDavid van Moolenbroek<dd><p>
249*00b67f09SDavid van Moolenbroek            Sets the date on which the key is to be activated.  After that
250*00b67f09SDavid van Moolenbroek            date, the key will be included in the zone and used to sign
251*00b67f09SDavid van Moolenbroek            it.  If not set, and if the -G option has not been used, the
252*00b67f09SDavid van Moolenbroek            default is "now".
253*00b67f09SDavid van Moolenbroek          </p></dd>
254*00b67f09SDavid van Moolenbroek<dt><span class="term">-R <em class="replaceable"><code>date/offset</code></em></span></dt>
255*00b67f09SDavid van Moolenbroek<dd><p>
256*00b67f09SDavid van Moolenbroek            Sets the date on which the key is to be revoked.  After that
257*00b67f09SDavid van Moolenbroek            date, the key will be flagged as revoked.  It will be included
258*00b67f09SDavid van Moolenbroek            in the zone and will be used to sign it.
259*00b67f09SDavid van Moolenbroek          </p></dd>
260*00b67f09SDavid van Moolenbroek<dt><span class="term">-I <em class="replaceable"><code>date/offset</code></em></span></dt>
261*00b67f09SDavid van Moolenbroek<dd><p>
262*00b67f09SDavid van Moolenbroek            Sets the date on which the key is to be retired.  After that
263*00b67f09SDavid van Moolenbroek            date, the key will still be included in the zone, but it
264*00b67f09SDavid van Moolenbroek            will not be used to sign it.
265*00b67f09SDavid van Moolenbroek          </p></dd>
266*00b67f09SDavid van Moolenbroek<dt><span class="term">-D <em class="replaceable"><code>date/offset</code></em></span></dt>
267*00b67f09SDavid van Moolenbroek<dd><p>
268*00b67f09SDavid van Moolenbroek            Sets the date on which the key is to be deleted.  After that
269*00b67f09SDavid van Moolenbroek            date, the key will no longer be included in the zone.  (It
270*00b67f09SDavid van Moolenbroek            may remain in the key repository, however.)
271*00b67f09SDavid van Moolenbroek          </p></dd>
272*00b67f09SDavid van Moolenbroek<dt><span class="term">-i <em class="replaceable"><code>interval</code></em></span></dt>
273*00b67f09SDavid van Moolenbroek<dd>
274*00b67f09SDavid van Moolenbroek<p>
275*00b67f09SDavid van Moolenbroek            Sets the prepublication interval for a key.  If set, then
276*00b67f09SDavid van Moolenbroek            the publication and activation dates must be separated by at least
277*00b67f09SDavid van Moolenbroek            this much time.  If the activation date is specified but the
278*00b67f09SDavid van Moolenbroek            publication date isn't, then the publication date will default
279*00b67f09SDavid van Moolenbroek            to this much time before the activation date; conversely, if
280*00b67f09SDavid van Moolenbroek            the publication date is specified but activation date isn't,
281*00b67f09SDavid van Moolenbroek            then activation will be set to this much time after publication.
282*00b67f09SDavid van Moolenbroek          </p>
283*00b67f09SDavid van Moolenbroek<p>
284*00b67f09SDavid van Moolenbroek            If the key is being created as an explicit successor to another
285*00b67f09SDavid van Moolenbroek            key, then the default prepublication interval is 30 days;
286*00b67f09SDavid van Moolenbroek            otherwise it is zero.
287*00b67f09SDavid van Moolenbroek          </p>
288*00b67f09SDavid van Moolenbroek<p>
289*00b67f09SDavid van Moolenbroek            As with date offsets, if the argument is followed by one of
290*00b67f09SDavid van Moolenbroek            the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
291*00b67f09SDavid van Moolenbroek            interval is measured in years, months, weeks, days, hours,
292*00b67f09SDavid van Moolenbroek            or minutes, respectively.  Without a suffix, the interval is
293*00b67f09SDavid van Moolenbroek            measured in seconds.
294*00b67f09SDavid van Moolenbroek          </p>
295*00b67f09SDavid van Moolenbroek</dd>
296*00b67f09SDavid van Moolenbroek</dl></div>
297*00b67f09SDavid van Moolenbroek</div>
298*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
299*00b67f09SDavid van Moolenbroek<a name="id2544278"></a><h2>GENERATED KEY FILES</h2>
300*00b67f09SDavid van Moolenbroek<p>
301*00b67f09SDavid van Moolenbroek      When <span><strong class="command">dnssec-keyfromlabel</strong></span> completes
302*00b67f09SDavid van Moolenbroek      successfully,
303*00b67f09SDavid van Moolenbroek      it prints a string of the form <code class="filename">Knnnn.+aaa+iiiii</code>
304*00b67f09SDavid van Moolenbroek      to the standard output.  This is an identification string for
305*00b67f09SDavid van Moolenbroek      the key files it has generated.
306*00b67f09SDavid van Moolenbroek    </p>
307*00b67f09SDavid van Moolenbroek<div class="itemizedlist"><ul type="disc">
308*00b67f09SDavid van Moolenbroek<li><p><code class="filename">nnnn</code> is the key name.
309*00b67f09SDavid van Moolenbroek        </p></li>
310*00b67f09SDavid van Moolenbroek<li><p><code class="filename">aaa</code> is the numeric representation
311*00b67f09SDavid van Moolenbroek          of the algorithm.
312*00b67f09SDavid van Moolenbroek        </p></li>
313*00b67f09SDavid van Moolenbroek<li><p><code class="filename">iiiii</code> is the key identifier (or
314*00b67f09SDavid van Moolenbroek          footprint).
315*00b67f09SDavid van Moolenbroek        </p></li>
316*00b67f09SDavid van Moolenbroek</ul></div>
317*00b67f09SDavid van Moolenbroek<p><span><strong class="command">dnssec-keyfromlabel</strong></span>
318*00b67f09SDavid van Moolenbroek      creates two files, with names based
319*00b67f09SDavid van Moolenbroek      on the printed string.  <code class="filename">Knnnn.+aaa+iiiii.key</code>
320*00b67f09SDavid van Moolenbroek      contains the public key, and
321*00b67f09SDavid van Moolenbroek      <code class="filename">Knnnn.+aaa+iiiii.private</code> contains the
322*00b67f09SDavid van Moolenbroek      private key.
323*00b67f09SDavid van Moolenbroek    </p>
324*00b67f09SDavid van Moolenbroek<p>
325*00b67f09SDavid van Moolenbroek      The <code class="filename">.key</code> file contains a DNS KEY record
326*00b67f09SDavid van Moolenbroek      that
327*00b67f09SDavid van Moolenbroek      can be inserted into a zone file (directly or with a $INCLUDE
328*00b67f09SDavid van Moolenbroek      statement).
329*00b67f09SDavid van Moolenbroek    </p>
330*00b67f09SDavid van Moolenbroek<p>
331*00b67f09SDavid van Moolenbroek      The <code class="filename">.private</code> file contains
332*00b67f09SDavid van Moolenbroek      algorithm-specific
333*00b67f09SDavid van Moolenbroek      fields.  For obvious security reasons, this file does not have
334*00b67f09SDavid van Moolenbroek      general read permission.
335*00b67f09SDavid van Moolenbroek    </p>
336*00b67f09SDavid van Moolenbroek</div>
337*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
338*00b67f09SDavid van Moolenbroek<a name="id2544350"></a><h2>SEE ALSO</h2>
339*00b67f09SDavid van Moolenbroek<p><span class="citerefentry"><span class="refentrytitle">dnssec-keygen</span>(8)</span>,
340*00b67f09SDavid van Moolenbroek      <span class="citerefentry"><span class="refentrytitle">dnssec-signzone</span>(8)</span>,
341*00b67f09SDavid van Moolenbroek      <em class="citetitle">BIND 9 Administrator Reference Manual</em>,
342*00b67f09SDavid van Moolenbroek      <em class="citetitle">RFC 4034</em>,
343*00b67f09SDavid van Moolenbroek      <em class="citetitle">The PKCS#11 URI Scheme (draft-pechanec-pkcs11uri-13)</em>.
344*00b67f09SDavid van Moolenbroek    </p>
345*00b67f09SDavid van Moolenbroek</div>
346*00b67f09SDavid van Moolenbroek<div class="refsect1" lang="en">
347*00b67f09SDavid van Moolenbroek<a name="id2544388"></a><h2>AUTHOR</h2>
348*00b67f09SDavid van Moolenbroek<p><span class="corpauthor">Internet Systems Consortium</span>
349*00b67f09SDavid van Moolenbroek    </p>
350*00b67f09SDavid van Moolenbroek</div>
351*00b67f09SDavid van Moolenbroek</div></body>
352*00b67f09SDavid van Moolenbroek</html>
353