Mercurial > dropbear
annotate dropbearkey.1 @ 1672:3a97f14c0235
Add Chacha20-Poly1305, AES128-GCM and AES256-GCM support (#93)
* Add Chacha20-Poly1305 authenticated encryption
* Add general AEAD approach.
* Add [email protected] algo using LibTomCrypt chacha and
poly1305 routines.
Chacha20-Poly1305 is generally faster than AES256 on CPU w/o dedicated
AES instructions, having the same key size.
Compiling in will add ~5,5kB to binary size on x86-64.
function old new delta
chacha_crypt - 1397 +1397
_poly1305_block - 608 +608
poly1305_done - 595 +595
dropbear_chachapoly_crypt - 457 +457
.rodata 26976 27392 +416
poly1305_process - 290 +290
poly1305_init - 221 +221
chacha_setup - 218 +218
encrypt_packet 1068 1270 +202
dropbear_chachapoly_getlength - 147 +147
decrypt_packet 756 897 +141
chacha_ivctr64 - 137 +137
read_packet 543 637 +94
dropbear_chachapoly_start - 94 +94
read_kex_algos 792 880 +88
chacha_keystream - 69 +69
dropbear_mode_chachapoly - 48 +48
sshciphers 280 320 +40
dropbear_mode_none 24 48 +24
dropbear_mode_ctr 24 48 +24
dropbear_mode_cbc 24 48 +24
dropbear_chachapoly_mac - 24 +24
dropbear_chachapoly - 24 +24
gen_new_keys 848 854 +6
------------------------------------------------------------------------------
(add/remove: 14/0 grow/shrink: 10/0 up/down: 5388/0) Total: 5388 bytes
* Add AES128-GCM and AES256-GCM authenticated encryption
* Add general AES-GCM mode.
* Add [email protected] and [email protected] algo using
LibTomCrypt gcm routines.
AES-GCM is combination of AES CTR mode and GHASH, slower than AES-CTR on
CPU w/o dedicated AES/GHASH instructions therefore disabled by default.
Compiling in will add ~6kB to binary size on x86-64.
function old new delta
gcm_process - 1060 +1060
.rodata 26976 27808 +832
gcm_gf_mult - 820 +820
gcm_add_aad - 660 +660
gcm_shift_table - 512 +512
gcm_done - 471 +471
gcm_add_iv - 384 +384
gcm_init - 347 +347
dropbear_gcm_crypt - 309 +309
encrypt_packet 1068 1270 +202
decrypt_packet 756 897 +141
gcm_reset - 118 +118
read_packet 543 637 +94
read_kex_algos 792 880 +88
sshciphers 280 360 +80
gcm_mult_h - 80 +80
dropbear_gcm_start - 62 +62
dropbear_mode_gcm - 48 +48
dropbear_mode_none 24 48 +24
dropbear_mode_ctr 24 48 +24
dropbear_mode_cbc 24 48 +24
dropbear_ghash - 24 +24
dropbear_gcm_getlength - 24 +24
gen_new_keys 848 854 +6
------------------------------------------------------------------------------
(add/remove: 14/0 grow/shrink: 10/0 up/down: 6434/0) Total: 6434 bytes
author | Vladislav Grishenko <themiron@users.noreply.github.com> |
---|---|
date | Mon, 25 May 2020 20:50:25 +0500 |
parents | 5c8913b7464c |
children |
rev | line source |
---|---|
820
830fae485d40
Add manpage for dropbearconvert
Matt Johnston <matt@ucc.asn.au>
parents:
690
diff
changeset
|
1 .TH dropbearkey 1 |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
2 .SH NAME |
820
830fae485d40
Add manpage for dropbearconvert
Matt Johnston <matt@ucc.asn.au>
parents:
690
diff
changeset
|
3 dropbearkey \- create private keys for the use with dropbear(8) or dbclient(1) |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
4 .SH SYNOPSIS |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
5 .B dropbearkey |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
6 \-t |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
7 .I type |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
8 \-f |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
9 .I file |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
10 [\-s |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
11 .IR bits ] |
1162 | 12 [\-y] |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
13 .SH DESCRIPTION |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
14 .B dropbearkey |
514
e30a962c09b9
Mention DSS and DSA being the same thing
Matt Johnston <matt@ucc.asn.au>
parents:
181
diff
changeset
|
15 generates a |
1671
5c8913b7464c
Mention Ed25519 in dropbearkey man (#94)
Vladislav Grishenko <themiron@users.noreply.github.com>
parents:
1174
diff
changeset
|
16 \fIRSA\fR, \fIDSS\fR, \fIECDSA\fR, or \fIEd25519\fR |
514
e30a962c09b9
Mention DSS and DSA being the same thing
Matt Johnston <matt@ucc.asn.au>
parents:
181
diff
changeset
|
17 format SSH private key, and saves it to a file for the use with the |
820
830fae485d40
Add manpage for dropbearconvert
Matt Johnston <matt@ucc.asn.au>
parents:
690
diff
changeset
|
18 Dropbear client or server. |
514
e30a962c09b9
Mention DSS and DSA being the same thing
Matt Johnston <matt@ucc.asn.au>
parents:
181
diff
changeset
|
19 Note that |
e30a962c09b9
Mention DSS and DSA being the same thing
Matt Johnston <matt@ucc.asn.au>
parents:
181
diff
changeset
|
20 some SSH implementations |
e30a962c09b9
Mention DSS and DSA being the same thing
Matt Johnston <matt@ucc.asn.au>
parents:
181
diff
changeset
|
21 use the term "DSA" rather than "DSS", they mean the same thing. |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
22 .SH OPTIONS |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
23 .TP |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
24 .B \-t \fItype |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
25 Type of key to generate. |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
26 Must be one of |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
27 .I rsa |
860 | 28 .I ecdsa |
1671
5c8913b7464c
Mention Ed25519 in dropbearkey man (#94)
Vladislav Grishenko <themiron@users.noreply.github.com>
parents:
1174
diff
changeset
|
29 .I ed25519 |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
30 or |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
31 .IR dss . |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
32 .TP |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
33 .B \-f \fIfile |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
34 Write the secret key to the file |
1174
80cacacfec23
Fix minor manpage formatting issues
Guilhem Moulin <guilhem@fripost.org>
parents:
1162
diff
changeset
|
35 \fIfile\fR. For client authentication ~/.ssh/id_dropbear is loaded by default |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
36 .TP |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
37 .B \-s \fIbits |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
38 Set the key size to |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
39 .I bits |
860 | 40 bits, should be multiple of 8 (optional). |
1162 | 41 .TP |
42 .B \-y | |
43 Just print the publickey and fingerprint for the private key in \fIfile\fR. | |
820
830fae485d40
Add manpage for dropbearconvert
Matt Johnston <matt@ucc.asn.au>
parents:
690
diff
changeset
|
44 .SH NOTES |
830fae485d40
Add manpage for dropbearconvert
Matt Johnston <matt@ucc.asn.au>
parents:
690
diff
changeset
|
45 The program dropbearconvert(1) can be used to convert between Dropbear and OpenSSH key formats. |
830fae485d40
Add manpage for dropbearconvert
Matt Johnston <matt@ucc.asn.au>
parents:
690
diff
changeset
|
46 .P |
830fae485d40
Add manpage for dropbearconvert
Matt Johnston <matt@ucc.asn.au>
parents:
690
diff
changeset
|
47 Dropbear does not support encrypted keys. |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
48 .SH EXAMPLE |
1162 | 49 generate a host-key: |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
50 # dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key |
1162 | 51 |
52 extract a public key suitable for authorized_keys from private key: | |
53 # dropbearkey -y -f id_rsa | grep "^ssh-rsa " >> authorized_keys | |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
54 .SH AUTHOR |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
55 Matt Johnston ([email protected]). |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
56 .br |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
57 Gerrit Pape ([email protected]) wrote this manual page. |
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
58 .SH SEE ALSO |
820
830fae485d40
Add manpage for dropbearconvert
Matt Johnston <matt@ucc.asn.au>
parents:
690
diff
changeset
|
59 dropbear(8), dbclient(1), dropbearconvert(1) |
128
a9dddd13c4ba
Added dropbear.8 and dropbearkey.8 back in
Matt Johnston <matt@ucc.asn.au>
parents:
diff
changeset
|
60 .P |
690 | 61 https://matt.ucc.asn.au/dropbear/dropbear.html |