dnssec-keygen.docbook revision 99d8f5a70440ee8b63ab1745d713b96dde890546
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington [<!ENTITY mdash "—">]>
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews - Copyright (C) 2004, 2005, 2007-2012 Internet Systems Consortium, Inc. ("ISC")
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews - Copyright (C) 2000-2003 Internet Software Consortium.
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User - Permission to use, copy, modify, and/or distribute this software for any
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - purpose with or without fee is hereby granted, provided that the above
83a28ca274521e15086fc39febde507bcc4e145eMark Andrews - copyright notice and this permission notice appear in all copies.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington - PERFORMANCE OF THIS SOFTWARE.
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington<!-- $Id: dnssec-keygen.docbook,v 1.38 2011/03/17 23:47:29 tbox Exp $ -->
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <refentryinfo>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington </refentryinfo>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <refentrytitle><application>dnssec-keygen</application></refentrytitle>
704e6c8876907aac0bf7380effca8bca400d4acdMark Andrews <refnamediv>
704e6c8876907aac0bf7380effca8bca400d4acdMark Andrews <refname><application>dnssec-keygen</application></refname>
704e6c8876907aac0bf7380effca8bca400d4acdMark Andrews <refpurpose>DNSSEC key generation tool</refpurpose>
704e6c8876907aac0bf7380effca8bca400d4acdMark Andrews </refnamediv>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein <holder>Internet Systems Consortium, Inc. ("ISC")</holder>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein </copyright>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt </copyright>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <refsynopsisdiv>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <cmdsynopsis>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-a <replaceable class="parameter">algorithm</replaceable></option></arg>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <arg ><option>-b <replaceable class="parameter">keysize</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-n <replaceable class="parameter">nametype</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-A <replaceable class="parameter">date/offset</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-c <replaceable class="parameter">class</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-D <replaceable class="parameter">date/offset</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-E <replaceable class="parameter">engine</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-f <replaceable class="parameter">flag</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-g <replaceable class="parameter">generator</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-I <replaceable class="parameter">date/offset</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-i <replaceable class="parameter">interval</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-K <replaceable class="parameter">directory</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-L <replaceable class="parameter">ttl</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-P <replaceable class="parameter">date/offset</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-p <replaceable class="parameter">protocol</replaceable></option></arg>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <arg><option>-R <replaceable class="parameter">date/offset</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-r <replaceable class="parameter">randomdev</replaceable></option></arg>
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <arg><option>-S <replaceable class="parameter">key</replaceable></option></arg>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <arg><option>-s <replaceable class="parameter">strength</replaceable></option></arg>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <arg><option>-t <replaceable class="parameter">type</replaceable></option></arg>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <arg><option>-v <replaceable class="parameter">level</replaceable></option></arg>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein </cmdsynopsis>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein </refsynopsisdiv>
41eeb37b516d1bac073781b6ec50a39a669987dfEvan Hunt generates keys for DNSSEC (Secure DNS), as defined in RFC 2535
41eeb37b516d1bac073781b6ec50a39a669987dfEvan Hunt and RFC 4034. It can also generate keys for use with
41eeb37b516d1bac073781b6ec50a39a669987dfEvan Hunt TSIG (Transaction Signatures) as defined in RFC 2845, or TKEY
41eeb37b516d1bac073781b6ec50a39a669987dfEvan Hunt (Transaction Key) as defined in RFC 2930.
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington The <option>name</option> of the key is specified on the command
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt line. For DNSSEC keys, this must match the name of the zone for
30eec077db2bdcb6f2a0dc388a3cdde2ede75ec1Mark Andrews which the key is being generated.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <variablelist>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
aaaf8d4f4873d21e55c3ffb4f656203d08339865Mark Andrews <term>-a <replaceable class="parameter">algorithm</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Selects the cryptographic algorithm. For DNSSEC keys, the value
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews of <option>algorithm</option> must be one of RSAMD5, RSASHA1,
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST,
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews ECDSAP256SHA256 or ECDSAP384SHA384.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews be DH (Diffie Hellman), HMAC-MD5, HMAC-SHA1, HMAC-SHA224,
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews HMAC-SHA256, HMAC-SHA384, or HMAC-SHA512. These values are
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews case insensitive.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews If no algorithm is specified, then RSASHA1 will be used by
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews default, unless the <option>-3</option> option is specified,
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews in which case NSEC3RSASHA1 will be used instead. (If
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <option>-3</option> is used and an algorithm is specified,
6098d364b690cb9dabf96e9664c4689c8559bd2eMark Andrews that algorithm will be checked for compatibility with NSEC3.)
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews algorithm, and DSA is recommended. For TSIG, HMAC-MD5 is
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington Note 2: DH, HMAC-MD5, and HMAC-SHA1 through HMAC-SHA512
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington automatically set the -T KEY option.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-b <replaceable class="parameter">keysize</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Specifies the number of bits in the key. The choice of key
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews size depends on the algorithm used. RSA keys must be
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews between 512 and 2048 bits. Diffie Hellman keys must be between
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews 128 and 4096 bits. DSA keys must be between 512 and 1024
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews bits and an exact multiple of 64. HMAC keys must be
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews between 1 and 512 bits. Elliptic curve algorithms don't need
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews this parameter.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews The key size does not need to be specified if using a default
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews algorithm. The default key size is 1024 bits for zone signing
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews keys (ZSK's) and 2048 bits for key signing keys (KSK's,
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews generated with <option>-f KSK</option>). However, if an
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington algorithm is explicitly specified with the <option>-a</option>,
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington then there is no default key size, and the <option>-b</option>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington must be used.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-n <replaceable class="parameter">nametype</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Specifies the owner type of the key. The value of
bf45f72ed319628eebce60c368177320943d001fMark Andrews <option>nametype</option> must either be ZONE (for a DNSSEC
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews a host (KEY)),
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington USER (for a key associated with a user(KEY)) or OTHER (DNSKEY).
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington These values are case insensitive. Defaults to ZONE for DNSKEY
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
cc6cddfd94e8f0c58c290317b0853dac30b1b895Evan Hunt Use an NSEC3-capable algorithm to generate a DNSSEC key.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews If this option is used and no algorithm is explicitly
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews set on the command line, NSEC3RSASHA1 will be used by
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt default. Note that RSASHA256, RSASHA512, ECCGOST,
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt ECDSAP256SHA256 and ECDSAP384SHA384 algorithms
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt are NSEC3-capable.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt <varlistentry>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt Compatibility mode: generates an old-style key, without
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt any metadata. By default, <command>dnssec-keygen</command>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews will include the key's creation date in the metadata stored
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews with the private key, and other dates may be set there as well
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt (publication date, activation date, etc). Keys that include
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt this data may be incompatible with older versions of BIND; the
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <option>-C</option> option suppresses them.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-c <replaceable class="parameter">class</replaceable></term>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington Indicates that the DNS record containing the key should have
8b78c993cb475cc94e88560941b28c37684789d9Francis Dupont the specified class. If not specified, class IN is used.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-E <replaceable class="parameter">engine</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Uses a crypto hardware (OpenSSL engine) for random number
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews and, when supported, key generation. When compiled with PKCS#11
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews support it defaults to pkcs11; the empty name resets it to
8b78c993cb475cc94e88560941b28c37684789d9Francis Dupont </varlistentry>
b0c15bd9792112fb47f6d956e580e4369e92f4e7Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews If generating an RSAMD5/RSASHA1 key, use a large exponent.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
b0c15bd9792112fb47f6d956e580e4369e92f4e7Mark Andrews <varlistentry>
b843f577bbcd6660fbaa506d9e55b156c689a5a8Evan Hunt <term>-f <replaceable class="parameter">flag</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Set the specified flag in the flag field of the KEY/DNSKEY record.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews The only recognized flags are KSK (Key Signing Key) and REVOKE.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
b843f577bbcd6660fbaa506d9e55b156c689a5a8Evan Hunt <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Generate a key, but do not publish it or sign with it. This
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews option is incompatible with -P and -A.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <term>-g <replaceable class="parameter">generator</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews If generating a Diffie Hellman key, use this generator.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Allowed values are 2 and 5. If no generator
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews is specified, a known prime from RFC 2539 will be used
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews if possible; otherwise the default is 2.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Prints a short summary of the options and arguments to
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt </varlistentry>
cc3aafe737334d444781f8a34ffaf459e075bb9aMark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-K <replaceable class="parameter">directory</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Sets the directory in which the key files are to be written.
cc3aafe737334d444781f8a34ffaf459e075bb9aMark Andrews </varlistentry>
61bcc232038f0a2cb77ed6269675fdc288f5ec98Evan Hunt <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Deprecated in favor of -T KEY.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-L <replaceable class="parameter">ttl</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Sets the default TTL to use for this key when it is converted
61bcc232038f0a2cb77ed6269675fdc288f5ec98Evan Hunt into a DNSKEY RR. If the key is imported into a zone,
61bcc232038f0a2cb77ed6269675fdc288f5ec98Evan Hunt this is the TTL that will be used for it, unless there was
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington already a DNSKEY RRset in place, in which case the existing TTL
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews would take precedence. Setting the default TTL to
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <literal>0</literal> or <literal>none</literal> removes it.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-p <replaceable class="parameter">protocol</replaceable></term>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington Sets the protocol value for the generated key. The protocol
c6d2578fd67bc1a427d13fd0699b25a187feec8aMark Andrews is a number between 0 and 255. The default is 3 (DNSSEC).
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Other possible values for this argument are listed in
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews RFC 2535 and its successors.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Quiet mode: Suppresses unnecessary output, including
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews progress indication. Without this option, when
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <command>dnssec-keygen</command> is run interactively
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews to generate an RSA or DSA key pair, it will print a string
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews of symbols to <filename>stderr</filename> indicating the
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews progress of the key generation. A '.' indicates that a
c6d2578fd67bc1a427d13fd0699b25a187feec8aMark Andrews random number has been found which passed an initial
c6d2578fd67bc1a427d13fd0699b25a187feec8aMark Andrews sieve test; '+' means a number has passed a single
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington round of the Miller-Rabin primality test; a space
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews means that the number has passed all the tests and is
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews a satisfactory key.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-r <replaceable class="parameter">randomdev</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Specifies the source of randomness. If the operating
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews system does not provide a <filename>/dev/random</filename>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews or equivalent device, the default source of randomness
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews is keyboard input. <filename>randomdev</filename>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington the name of a character device or file containing random
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews data to be used instead of the default. The special value
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <filename>keyboard</filename> indicates that keyboard
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews input should be used.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-S <replaceable class="parameter">key</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Create a new key which is an explicit successor to an
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews existing key. The name, algorithm, size, and type of the
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews key will be set to match the existing key. The activation
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews date of the new key will be set to the inactivation date of
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington the existing one. The publication date will be set to the
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews activation date minus the prepublication interval, which
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews defaults to 30 days.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-s <replaceable class="parameter">strength</replaceable></term>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt Specifies the strength value of the key. The strength is
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews a number between 0 and 15, and currently has no defined
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews purpose in DNSSEC.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-T <replaceable class="parameter">rrtype</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Specifies the resource record type to use for the key.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <option>rrtype</option> must be either DNSKEY or KEY. The
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews default is DNSKEY when using a DNSSEC algorithm, but it can be
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt overridden to KEY for use with SIG(0).
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Using any TSIG algorithm (HMAC-* or DH) forces this option
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-t <replaceable class="parameter">type</replaceable></term>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington Indicates the use of the key. <option>type</option> must be
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington one of AUTHCONF, NOAUTHCONF, NOAUTH, or NOCONF. The default
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews is AUTHCONF. AUTH refers to the ability to authenticate
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews data, and CONF the ability to encrypt data.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <varlistentry>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <term>-v <replaceable class="parameter">level</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Sets the debugging level.
42782931073786f98d3d0a617351db40066949a4Mukund Sivaraman </varlistentry>
42782931073786f98d3d0a617351db40066949a4Mukund Sivaraman </variablelist>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt Dates can be expressed in the format YYYYMMDD or YYYYMMDDHHMMSS.
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt If the argument begins with a '+' or '-', it is interpreted as
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt an offset from the present time. For convenience, if such an offset
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt is followed by one of the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi',
eab9975bcf5830a73f18ed8f320ae18ea32775eeEvan Hunt then the offset is computed in years (defined as 365 24-hour days,
eab9975bcf5830a73f18ed8f320ae18ea32775eeEvan Hunt ignoring leap years), months (defined as 30 24-hour days), weeks,
eab9975bcf5830a73f18ed8f320ae18ea32775eeEvan Hunt days, hours, or minutes, respectively. Without a suffix, the offset
eab9975bcf5830a73f18ed8f320ae18ea32775eeEvan Hunt is computed in seconds.
a165a17a81ff3285f4f4d79785fafb465e626183Evan Hunt <variablelist>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt <varlistentry>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt <term>-P <replaceable class="parameter">date/offset</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Sets the date on which a key is to be published to the zone.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews After that date, the key will be included in the zone but will
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews not be used to sign it. If not set, and if the -G option has
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews not been used, the default is "now".
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt <term>-A <replaceable class="parameter">date/offset</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Sets the date on which the key is to be activated. After that
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews date, the key will be included in the zone and used to sign
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews it. If not set, and if the -G option has not been used, the
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews default is "now".
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt <varlistentry>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt <term>-R <replaceable class="parameter">date/offset</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Sets the date on which the key is to be revoked. After that
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews date, the key will be flagged as revoked. It will be included
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews in the zone and will be used to sign it.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-I <replaceable class="parameter">date/offset</replaceable></term>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt Sets the date on which the key is to be retired. After that
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews date, the key will still be included in the zone, but it
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews will not be used to sign it.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-D <replaceable class="parameter">date/offset</replaceable></term>
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt Sets the date on which the key is to be deleted. After that
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews date, the key will no longer be included in the zone. (It
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews may remain in the key repository, however.)
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews </varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <varlistentry>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews <term>-i <replaceable class="parameter">interval</replaceable></term>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Sets the prepublication interval for a key. If set, then
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews the publication and activation dates must be separated by at least
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews this much time. If the activation date is specified but the
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews publication date isn't, then the publication date will default
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews to this much time before the activation date; conversely, if
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews the publication date is specified but activation date isn't,
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews then activation will be set to this much time after publication.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews If the key is being created as an explicit successor to another
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews key, then the default prepublication interval is 30 days;
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews otherwise it is zero.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews As with date offsets, if the argument is followed by one of
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews the suffixes 'y', 'mo', 'w', 'd', 'h', or 'mi', then the
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews interval is measured in years, months, weeks, days, hours,
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews or minutes, respectively. Without a suffix, the interval is
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews measured in seconds.
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews </varlistentry>
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews </variablelist>
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews When <command>dnssec-keygen</command> completes
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews successfully,
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews it prints a string of the form <filename>Knnnn.+aaa+iiiii</filename>
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews to the standard output. This is an identification string for
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews the key it has generated.
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews <itemizedlist>
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews <para><filename>nnnn</filename> is the key name.
c6f4972c745f8903aba6dcca41f17a44c473db66Mark Andrews <para><filename>aaa</filename> is the numeric representation
553ead32ff5b00284e574dcabc39115d4d74ec66Evan Hunt <para><filename>iiiii</filename> is the key identifier (or
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt </itemizedlist>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington creates two files, with names based
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein on the printed string. <filename>Knnnn.+aaa+iiiii.key</filename>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein contains the public key, and
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein <filename>Knnnn.+aaa+iiiii.private</filename> contains the
8ffa8320abcc17ae593af566cb946a58fe293860Brian Wellington The <filename>.key</filename> file contains a DNS KEY record
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews can be inserted into a zone file (directly or with a $INCLUDE
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews The <filename>.private</filename> file contains
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews algorithm-specific
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews fields. For obvious security reasons, this file does not have
8ffa8320abcc17ae593af566cb946a58fe293860Brian Wellington general read permission.
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews Both <filename>.key</filename> and <filename>.private</filename>
e939674d53a127ddeeaf4b41fd72933f0b493308Mark Andrews files are generated for symmetric encryption algorithms such as
8ffa8320abcc17ae593af566cb946a58fe293860Brian Wellington HMAC-MD5, even though the public and private key are equivalent.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein To generate a 768-bit DSA key for the domain
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein <userinput>example.com</userinput>, the following command would be
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein <para><userinput>dnssec-keygen -a DSA -b 768 -n ZONE example.com</userinput>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein The command would print a string of the form:
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <para><userinput>Kexample.com.+003+26160</userinput>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein In this example, <command>dnssec-keygen</command> creates
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein the files <filename>Kexample.com.+003+26160.key</filename>
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <filename>Kexample.com.+003+26160.private</filename>.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt <refentrytitle>dnssec-signzone</refentrytitle><manvolnum>8</manvolnum>
30eec077db2bdcb6f2a0dc388a3cdde2ede75ec1Mark Andrews </citerefentry>,
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <citetitle>BIND 9 Administrator Reference Manual</citetitle>,
0b062f4990db5cc6db2fe3398926f71b92a67407Brian Wellington <para><corpauthor>Internet Systems Consortium</corpauthor>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Local variables:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - mode: sgml