Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
IPSEC_ECDSASIGKEY(8)	       Executable programs	    IPSEC_ECDSASIGKEY(8)

NAME
     ipsec_ecdsasigkey - generate ECDSA signature key

SYNOPSIS
     ipsec  ecdsasigkey  [--verbose] [--seeddev device] [--seed numbits] [--nss-
	   dir nssdir]	[--password nsspassword]  [--hostname hostname]  [curve-
	   name]

DESCRIPTION
     ecdsasigkey  generates an ECDSA public/private key pair, suitable for digi-
     tal signatures, on a named curve specified  with  curvename.  Currently  it
     only accepts secp256r1, secp384r1, and secp521r1.

     The public exponent is forced to the value 3, which has important speed ad-
     vantages  for signature checking. Beware that the resulting keys have known
     weaknesses as encryption keys and should not be used for that purpose.

     The --verbose option makes ecdsasigkey give a running commentary  on  stan-
     dard  error.  By default, it works in silence until it is ready to generate
     output.

     The --seeddev option specifies a source for random bits used  to  seed  the
     crypto library's RNG. The default is /dev/random (see random(4)). FreeS/WAN
     and  Openswan  without  NSS  support used this option to specify the random
     source used to directly create keys. Libreswan only uses it to seed the NSS
     crypto libraries RNG. Under Linux with hardware random support, special de-
     vices might show up as /dev/*rng* devices. However, these should  never  be
     accessed directly using this option, as hardware failures could lead to ex-
     tremely  non-random  values  (streams  of	zeroes have been observed in the
     wild)

     The --seedbits option specifies how many seed bits are pulled from the ran-
     dom device to seed the NSS PRNG. The default of 480bit comes from FIPS  re-
     quirements. Seed bits are rounded up to a multiple of 8.

     The  use  of  a different random device or a reduction of seedbits from the
     default value is prevented when the system is running in FIPS mode.

     The --nssdir option specifies the directory to use for  the  nss  database.
     This  is  the directory where the NSS certificate, key and security modules
     databases reside. The default value is /usr/local/etc/ipsec.d.

     The --password option specifies the nss cryptographic module authentication
     password if the NSS module has been configured to require it. A password is
     required by hardware tokens and also by the internal software token  module
     when  configured  to  run	in  FIPS  mode.  If  the  argument  is	/usr/lo-
     cal/etc/ipsec.d/nsspassword, the password comes from that	file;  otherwise
     argument is the password.

EXAMPLES
     ipsec ecdsasigkey --verbose 4096
	 generates a 4096-bit signature key and stores this key in the NSS data-
	 base.	The  public  key  can  then  be  extracted  and  edited into the
	 ipsec.conf (see ipsec_showhostkey(8)).

FILES
     /dev/random, /dev/urandom

SEE ALSO
     random(4), rngd(8), ipsec_showhostkey(8), Applied Cryptography,  2nd.  ed.,
     by  Bruce	Schneier,  Wiley 1996, RFCs 2537, 2313, GNU MP, the GNU multiple
     precision arithmetic library, edition 2.0.2, by Torbj Granlund

HISTORY
     Originally     written	for	the	Linux	  FreeS/WAN	 project
     <https://www.freeswan.org>  by  Henry  Spencer.  Updated  for the Libreswan
     Project by Paul Wouters.

     The --round and --noopt options were obsoleted as these were only used with
     the old non-library crypto code

     The --random device is only used for seeding the crypto  library,	not  for
     direct random to generate keys

BUGS
     ecdsasigkey's  run  time  is difficult to predict, since /dev/random output
     can be arbitrarily delayed if the system's entropy pool is low  on  random-
     ness,  and  the time taken by the search for primes is also somewhat unpre-
     dictable. Specifically, embedded systems and most virtual machines are  low
     on  entropy.  In such a situation, consider generating the ECDSA key on an-
     other machine, and copying ipsec.secrets and the /usr/local/etc/ipsec.d di-
     rectory tree to the embedded platform. Note that NSS embeds the  full  path
     in the DB files, so the path on proxy machine must be identical to the path
     on the destination machine.

AUTHOR
     Paul Wouters
	 placeholder to suppress warning

libreswan			   08/01/2026		    IPSEC_ECDSASIGKEY(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ipsec_ecdsasigkey&sektion=8&manpath=FreeBSD+Ports+15.1.quarterly>

home | help