dnssec-keygen.html revision cd791043c8a6edbcacc2392575a9816d19b8157c
50d79c1309ae865ee83d3b6dc56b3d39825947b2Automatic Updater - Copyright (C) 2004, 2005, 2007-2012 Internet Systems Consortium, Inc. ("ISC")
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - Copyright (C) 2000-2003 Internet Software Consortium.
ec5347e2c775f027573ce5648b910361aa926c01Automatic Updater - Permission to use, copy, modify, and/or distribute this software for any
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson - purpose with or without fee is hereby granted, provided that the above
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson - copyright notice and this permission notice appear in all copies.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews - PERFORMANCE OF THIS SOFTWARE.
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<meta name="generator" content="DocBook XSL Stylesheets V1.71.1">
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="refentry" lang="en">
6028d1ce0380d0ba7f6c6ecd1ad20b31ddd1becbDavid Lawrence<a name="man.dnssec-keygen"></a><div class="titlepage"></div>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<p><span class="application">dnssec-keygen</span> — DNSSEC key generation tool</p>
21a0926b4fa495f53371f89961e7560b0b235192Andreas Gustafsson<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">-e</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">-z</code>] {name}</p></div>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<a name="id2543594"></a><h2>DESCRIPTION</h2>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<p><span><strong class="command">dnssec-keygen</strong></span>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson generates keys for DNSSEC (Secure DNS), as defined in RFC 2535
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson and RFC 4034. It can also generate keys for use with
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson TSIG (Transaction Signatures) as defined in RFC 2845, or TKEY
3ddd814a97de1d152ba0913c592d6e6dc83d38a6Michael Graff (Transaction Key) as defined in RFC 2930.
f3ca27e9fe307b55e35ea8d7b37351650630e5a3Andreas Gustafsson The <code class="option">name</code> of the key is specified on the command
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson line. For DNSSEC keys, this must match the name of the zone for
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson which the key is being generated.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<dt><span class="term">-a <em class="replaceable"><code>algorithm</code></em></span></dt>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Selects the cryptographic algorithm. For DNSSEC keys, the value
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson of <code class="option">algorithm</code> must be one of RSAMD5, RSASHA1,
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews DSA, NSEC3RSASHA1, NSEC3DSA, RSASHA256, RSASHA512, ECCGOST,
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews ECDSAP256SHA256 or ECDSAP384SHA384.
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews be DH (Diffie Hellman), HMAC-MD5, HMAC-SHA1, HMAC-SHA224,
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews HMAC-SHA256, HMAC-SHA384, or HMAC-SHA512. These values are
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews case insensitive.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson If no algorithm is specified, then RSASHA1 will be used by
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson default, unless the <code class="option">-3</code> option is specified,
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson in which case NSEC3RSASHA1 will be used instead. (If
34b394b43e2207e8f8f3703f0402422121455638David Lawrence <code class="option">-3</code> is used and an algorithm is specified,
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson that algorithm will be checked for compatibility with NSEC3.)
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Note 1: that for DNSSEC, RSASHA1 is a mandatory to implement
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson algorithm, and DSA is recommended. For TSIG, HMAC-MD5 is
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Note 2: DH, HMAC-MD5, and HMAC-SHA1 through HMAC-SHA512
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson automatically set the -T KEY option.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<dt><span class="term">-b <em class="replaceable"><code>keysize</code></em></span></dt>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Specifies the number of bits in the key. The choice of key
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson size depends on the algorithm used. RSA keys must be
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson between 512 and 2048 bits. Diffie Hellman keys must be between
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson 128 and 4096 bits. DSA keys must be between 512 and 1024
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson bits and an exact multiple of 64. HMAC keys must be
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson between 1 and 512 bits. Elliptic curve algorithms don't need
6ea5cc5f021928d4f25fa0d9ef0e66e21fba4087David Lawrence this parameter.
806c235ecf533b98d068b3f8df9d7abbe1e30cf9Mark Andrews The key size does not need to be specified if using a default
806c235ecf533b98d068b3f8df9d7abbe1e30cf9Mark Andrews algorithm. The default key size is 1024 bits for zone signing
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson keys (ZSK's) and 2048 bits for key signing keys (KSK's,
6e49e91bd08778d7eae45a2229dcf41ed97cc636David Lawrence generated with <code class="option">-f KSK</code>). However, if an
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson algorithm is explicitly specified with the <code class="option">-a</code>,
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson then there is no default key size, and the <code class="option">-b</code>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<dt><span class="term">-n <em class="replaceable"><code>nametype</code></em></span></dt>
419590499823ce15b5d2ad4fe71eaf04bd5a86c0Michael Graff Specifies the owner type of the key. The value of
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson <code class="option">nametype</code> must either be ZONE (for a DNSSEC
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson zone key (KEY/DNSKEY)), HOST or ENTITY (for a key associated with
bc298cd0f77dce2d452efd3e3d3153e2a9a17dbfMark Andrews a host (KEY)),
bc298cd0f77dce2d452efd3e3d3153e2a9a17dbfMark Andrews USER (for a key associated with a user(KEY)) or OTHER (DNSKEY).
21a0926b4fa495f53371f89961e7560b0b235192Andreas Gustafsson These values are case insensitive. Defaults to ZONE for DNSKEY
21a0926b4fa495f53371f89961e7560b0b235192Andreas Gustafsson Use an NSEC3-capable algorithm to generate a DNSSEC key.
21a0926b4fa495f53371f89961e7560b0b235192Andreas Gustafsson If this option is used and no algorithm is explicitly
21a0926b4fa495f53371f89961e7560b0b235192Andreas Gustafsson set on the command line, NSEC3RSASHA1 will be used by
21a0926b4fa495f53371f89961e7560b0b235192Andreas Gustafsson default. Note that RSASHA256, RSASHA512, ECCGOST,
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence ECDSAP256SHA256 and ECDSAP384SHA384 algorithms
21a0926b4fa495f53371f89961e7560b0b235192Andreas Gustafsson are NSEC3-capable.
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews Compatibility mode: generates an old-style key, without
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews any metadata. By default, <span><strong class="command">dnssec-keygen</strong></span>
bc298cd0f77dce2d452efd3e3d3153e2a9a17dbfMark Andrews will include the key's creation date in the metadata stored
bc298cd0f77dce2d452efd3e3d3153e2a9a17dbfMark Andrews with the private key, and other dates may be set there as well
bc298cd0f77dce2d452efd3e3d3153e2a9a17dbfMark Andrews (publication date, activation date, etc). Keys that include
bc298cd0f77dce2d452efd3e3d3153e2a9a17dbfMark Andrews this data may be incompatible with older versions of BIND; the
bc298cd0f77dce2d452efd3e3d3153e2a9a17dbfMark Andrews <code class="option">-C</code> option suppresses them.
bc298cd0f77dce2d452efd3e3d3153e2a9a17dbfMark Andrews<dt><span class="term">-c <em class="replaceable"><code>class</code></em></span></dt>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Indicates that the DNS record containing the key should have
3ddd814a97de1d152ba0913c592d6e6dc83d38a6Michael Graff the specified class. If not specified, class IN is used.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<dt><span class="term">-E <em class="replaceable"><code>engine</code></em></span></dt>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Uses a crypto hardware (OpenSSL engine) for random number
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson and, when supported, key generation. When compiled with PKCS#11
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson support it defaults to pkcs11; the empty name resets it to
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson If generating an RSAMD5/RSASHA1 key, use a large exponent.
5eb91bd90e3ad3426e5e3213031556a737cf3809Mark Andrews<dt><span class="term">-f <em class="replaceable"><code>flag</code></em></span></dt>
cc6d67469cf390842adf1bd35dd2b21fc3b7df18Mark Andrews Set the specified flag in the flag field of the KEY/DNSKEY record.
cc6d67469cf390842adf1bd35dd2b21fc3b7df18Mark Andrews The only recognized flags are KSK (Key Signing Key) and REVOKE.
cc6d67469cf390842adf1bd35dd2b21fc3b7df18Mark Andrews Generate a key, but do not publish it or sign with it. This
cc6d67469cf390842adf1bd35dd2b21fc3b7df18Mark Andrews option is incompatible with -P and -A.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<dt><span class="term">-g <em class="replaceable"><code>generator</code></em></span></dt>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson If generating a Diffie Hellman key, use this generator.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Allowed values are 2 and 5. If no generator
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews is specified, a known prime from RFC 2539 will be used
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson if possible; otherwise the default is 2.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Prints a short summary of the options and arguments to
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence <span><strong class="command">dnssec-keygen</strong></span>.
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence<dt><span class="term">-K <em class="replaceable"><code>directory</code></em></span></dt>
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews Sets the directory in which the key files are to be written.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Deprecated in favor of -T KEY.
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson<dt><span class="term">-L <em class="replaceable"><code>ttl</code></em></span></dt>
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews Sets the default TTL to use for this key when it is converted
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews into a DNSKEY RR. If the key is imported into a zone,
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews this is the TTL that will be used for it, unless there was
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews already a DNSKEY RRset in place, in which case the existing TTL
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews would take precedence. Setting the default TTL to
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews <code class="literal">0</code> or <code class="literal">none</code> removes it.
215ef83bbed20727813a52ddcdbcd1455856638bMark Andrews<dt><span class="term">-p <em class="replaceable"><code>protocol</code></em></span></dt>
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Sets the protocol value for the generated key. The protocol
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson is a number between 0 and 255. The default is 3 (DNSSEC).
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson Other possible values for this argument are listed in
419590499823ce15b5d2ad4fe71eaf04bd5a86c0Michael Graff RFC 2535 and its successors.
8f674b13e8e7cd6309751e4971e1b00d04a418b8Brian Wellington Quiet mode: Suppresses unnecessary output, including
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson progress indication. Without this option, when
3ddd814a97de1d152ba0913c592d6e6dc83d38a6Michael Graff <span><strong class="command">dnssec-keygen</strong></span> is run interactively
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson to generate an RSA or DSA key pair, it will print a string
419590499823ce15b5d2ad4fe71eaf04bd5a86c0Michael Graff of symbols to <code class="filename">stderr</code> indicating the
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson progress of the key generation. A '.' indicates that a
28b863e609ff2d97b78663b46894494cfa2ea411Mark Andrews random number has been found which passed an initial
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson sieve test; '+' means a number has passed a single
34b394b43e2207e8f8f3703f0402422121455638David Lawrence round of the Miller-Rabin primality test; a space
5fc7ba3e1ac5d72239e9971e0f469dd5796738f9Andreas Gustafsson means that the number has passed all the tests and is