ssh2_config/default_algorithms/
openssh.rs

1//! This file is autogenerated at build-time when `RELOAD_SSH_ALGO` is set to environment.
2
3use crate::DefaultAlgorithms;
4
5/// Default algorithms for ssh.
6///
7/// ## Ciphers algorithms
8///
9/// - `chacha20-poly1305@openssh.com`
10/// - `aes128-gcm@openssh.com`
11/// - `aes256-gcm@openssh.com`
12/// - `aes128-ctr`
13/// - `aes192-ctr`
14/// - `aes256-ctr`
15///
16/// ## Key Exchange (KEX) algorithms
17///
18/// - `mlkem768x25519-sha256`
19/// - `sntrup761x25519-sha512`
20/// - `sntrup761x25519-sha512@openssh.com`
21/// - `curve25519-sha256`
22/// - `curve25519-sha256@libssh.org`
23/// - `ecdh-sha2-nistp256`
24/// - `ecdh-sha2-nistp384`
25/// - `ecdh-sha2-nistp521`
26/// - `diffie-hellman-group-exchange-sha256`
27/// - `diffie-hellman-group16-sha512`
28/// - `diffie-hellman-group18-sha512`
29/// - `diffie-hellman-group14-sha256`
30/// - `ssh-ed25519-cert-v01@openssh.com`
31/// - `ecdsa-sha2-nistp256-cert-v01@openssh.com`
32/// - `ecdsa-sha2-nistp384-cert-v01@openssh.com`
33/// - `ecdsa-sha2-nistp521-cert-v01@openssh.com`
34/// - `sk-ssh-ed25519-cert-v01@openssh.com`
35/// - `sk-ecdsa-sha2-nistp256-cert-v01@openssh.com`
36/// - `rsa-sha2-512-cert-v01@openssh.com`
37/// - `rsa-sha2-256-cert-v01@openssh.com`
38/// - `ssh-ed25519`
39/// - `ecdsa-sha2-nistp256`
40/// - `ecdsa-sha2-nistp384`
41/// - `ecdsa-sha2-nistp521`
42/// - `sk-ssh-ed25519@openssh.com`
43/// - `sk-ecdsa-sha2-nistp256@openssh.com`
44/// - `rsa-sha2-512`
45/// - `rsa-sha2-256`
46/// - `chacha20-poly1305@openssh.com`
47/// - `aes128-gcm@openssh.com`
48/// - `aes256-gcm@openssh.com`
49/// - `aes128-ctr`
50/// - `aes192-ctr`
51/// - `aes256-ctr`
52/// - `chacha20-poly1305@openssh.com`
53/// - `aes128-gcm@openssh.com`
54/// - `aes256-gcm@openssh.com`
55/// - `aes128-ctr`
56/// - `aes192-ctr`
57/// - `aes256-ctr`
58/// - `umac-64-etm@openssh.com`
59/// - `umac-128-etm@openssh.com`
60/// - `hmac-sha2-256-etm@openssh.com`
61/// - `hmac-sha2-512-etm@openssh.com`
62/// - `hmac-sha1-etm@openssh.com`
63/// - `umac-64@openssh.com`
64/// - `umac-128@openssh.com`
65/// - `hmac-sha2-256`
66/// - `hmac-sha2-512`
67/// - `hmac-sha1`
68/// - `umac-64-etm@openssh.com`
69/// - `umac-128-etm@openssh.com`
70/// - `hmac-sha2-256-etm@openssh.com`
71/// - `hmac-sha2-512-etm@openssh.com`
72/// - `hmac-sha1-etm@openssh.com`
73/// - `umac-64@openssh.com`
74/// - `umac-128@openssh.com`
75/// - `hmac-sha2-256`
76/// - `hmac-sha2-512`
77/// - `hmac-sha1`
78/// - `none`
79/// - `zlib@openssh.com`
80/// - `none`
81/// - `zlib@openssh.com`
82///
83/// ## Host Key algorithms
84///
85/// - `ssh-ed25519-cert-v01@openssh.com`
86/// - `ecdsa-sha2-nistp256-cert-v01@openssh.com`
87/// - `ecdsa-sha2-nistp384-cert-v01@openssh.com`
88/// - `ecdsa-sha2-nistp521-cert-v01@openssh.com`
89/// - `sk-ssh-ed25519-cert-v01@openssh.com`
90/// - `sk-ecdsa-sha2-nistp256-cert-v01@openssh.com`
91/// - `rsa-sha2-512-cert-v01@openssh.com`
92/// - `rsa-sha2-256-cert-v01@openssh.com`
93/// - `ssh-ed25519`
94/// - `ecdsa-sha2-nistp256`
95/// - `ecdsa-sha2-nistp384`
96/// - `ecdsa-sha2-nistp521`
97/// - `sk-ssh-ed25519@openssh.com`
98/// - `sk-ecdsa-sha2-nistp256@openssh.com`
99/// - `rsa-sha2-512`
100/// - `rsa-sha2-256`
101///
102/// ## Message Authentication Code (MAC) algorithms
103///
104/// - `umac-64-etm@openssh.com`
105/// - `umac-128-etm@openssh.com`
106/// - `hmac-sha2-256-etm@openssh.com`
107/// - `hmac-sha2-512-etm@openssh.com`
108/// - `hmac-sha1-etm@openssh.com`
109/// - `umac-64@openssh.com`
110/// - `umac-128@openssh.com`
111/// - `hmac-sha2-256`
112/// - `hmac-sha2-512`
113/// - `hmac-sha1`
114///
115/// ## CA Signature algorithms
116///
117/// - `ssh-ed25519`
118/// - `ecdsa-sha2-nistp256`
119/// - `ecdsa-sha2-nistp384`
120/// - `ecdsa-sha2-nistp521`
121/// - `sk-ssh-ed25519@openssh.com`
122/// - `sk-ecdsa-sha2-nistp256@openssh.com`
123/// - `rsa-sha2-512`
124/// - `rsa-sha2-256`
125///
126/// ## Public Key Accepted algorithms
127///
128/// - `ssh-ed25519-cert-v01@openssh.com`
129/// - `ecdsa-sha2-nistp256-cert-v01@openssh.com`
130/// - `ecdsa-sha2-nistp384-cert-v01@openssh.com`
131/// - `ecdsa-sha2-nistp521-cert-v01@openssh.com`
132/// - `sk-ssh-ed25519-cert-v01@openssh.com`
133/// - `sk-ecdsa-sha2-nistp256-cert-v01@openssh.com`
134/// - `rsa-sha2-512-cert-v01@openssh.com`
135/// - `rsa-sha2-256-cert-v01@openssh.com`
136/// - `ssh-ed25519`
137/// - `ecdsa-sha2-nistp256`
138/// - `ecdsa-sha2-nistp384`
139/// - `ecdsa-sha2-nistp521`
140/// - `sk-ssh-ed25519@openssh.com`
141/// - `sk-ecdsa-sha2-nistp256@openssh.com`
142/// - `rsa-sha2-512`
143/// - `rsa-sha2-256`
144///
145pub fn defaults() -> DefaultAlgorithms {
146    DefaultAlgorithms {
147        ca_signature_algorithms: vec![
148            "ssh-ed25519".to_string(),
149            "ecdsa-sha2-nistp256".to_string(),
150            "ecdsa-sha2-nistp384".to_string(),
151            "ecdsa-sha2-nistp521".to_string(),
152            "sk-ssh-ed25519@openssh.com".to_string(),
153            "sk-ecdsa-sha2-nistp256@openssh.com".to_string(),
154            "rsa-sha2-512".to_string(),
155            "rsa-sha2-256".to_string(),
156        ],
157        ciphers: vec![
158            "chacha20-poly1305@openssh.com".to_string(),
159            "aes128-gcm@openssh.com".to_string(),
160            "aes256-gcm@openssh.com".to_string(),
161            "aes128-ctr".to_string(),
162            "aes192-ctr".to_string(),
163            "aes256-ctr".to_string(),
164        ],
165        host_key_algorithms: vec![
166            "ssh-ed25519-cert-v01@openssh.com".to_string(),
167            "ecdsa-sha2-nistp256-cert-v01@openssh.com".to_string(),
168            "ecdsa-sha2-nistp384-cert-v01@openssh.com".to_string(),
169            "ecdsa-sha2-nistp521-cert-v01@openssh.com".to_string(),
170            "sk-ssh-ed25519-cert-v01@openssh.com".to_string(),
171            "sk-ecdsa-sha2-nistp256-cert-v01@openssh.com".to_string(),
172            "rsa-sha2-512-cert-v01@openssh.com".to_string(),
173            "rsa-sha2-256-cert-v01@openssh.com".to_string(),
174            "ssh-ed25519".to_string(),
175            "ecdsa-sha2-nistp256".to_string(),
176            "ecdsa-sha2-nistp384".to_string(),
177            "ecdsa-sha2-nistp521".to_string(),
178            "sk-ssh-ed25519@openssh.com".to_string(),
179            "sk-ecdsa-sha2-nistp256@openssh.com".to_string(),
180            "rsa-sha2-512".to_string(),
181            "rsa-sha2-256".to_string(),
182        ],
183        kex_algorithms: vec![
184            "mlkem768x25519-sha256".to_string(),
185            "sntrup761x25519-sha512".to_string(),
186            "sntrup761x25519-sha512@openssh.com".to_string(),
187            "curve25519-sha256".to_string(),
188            "curve25519-sha256@libssh.org".to_string(),
189            "ecdh-sha2-nistp256".to_string(),
190            "ecdh-sha2-nistp384".to_string(),
191            "ecdh-sha2-nistp521".to_string(),
192            "diffie-hellman-group-exchange-sha256".to_string(),
193            "diffie-hellman-group16-sha512".to_string(),
194            "diffie-hellman-group18-sha512".to_string(),
195            "diffie-hellman-group14-sha256".to_string(),
196            "ssh-ed25519-cert-v01@openssh.com".to_string(),
197            "ecdsa-sha2-nistp256-cert-v01@openssh.com".to_string(),
198            "ecdsa-sha2-nistp384-cert-v01@openssh.com".to_string(),
199            "ecdsa-sha2-nistp521-cert-v01@openssh.com".to_string(),
200            "sk-ssh-ed25519-cert-v01@openssh.com".to_string(),
201            "sk-ecdsa-sha2-nistp256-cert-v01@openssh.com".to_string(),
202            "rsa-sha2-512-cert-v01@openssh.com".to_string(),
203            "rsa-sha2-256-cert-v01@openssh.com".to_string(),
204            "ssh-ed25519".to_string(),
205            "ecdsa-sha2-nistp256".to_string(),
206            "ecdsa-sha2-nistp384".to_string(),
207            "ecdsa-sha2-nistp521".to_string(),
208            "sk-ssh-ed25519@openssh.com".to_string(),
209            "sk-ecdsa-sha2-nistp256@openssh.com".to_string(),
210            "rsa-sha2-512".to_string(),
211            "rsa-sha2-256".to_string(),
212            "chacha20-poly1305@openssh.com".to_string(),
213            "aes128-gcm@openssh.com".to_string(),
214            "aes256-gcm@openssh.com".to_string(),
215            "aes128-ctr".to_string(),
216            "aes192-ctr".to_string(),
217            "aes256-ctr".to_string(),
218            "chacha20-poly1305@openssh.com".to_string(),
219            "aes128-gcm@openssh.com".to_string(),
220            "aes256-gcm@openssh.com".to_string(),
221            "aes128-ctr".to_string(),
222            "aes192-ctr".to_string(),
223            "aes256-ctr".to_string(),
224            "umac-64-etm@openssh.com".to_string(),
225            "umac-128-etm@openssh.com".to_string(),
226            "hmac-sha2-256-etm@openssh.com".to_string(),
227            "hmac-sha2-512-etm@openssh.com".to_string(),
228            "hmac-sha1-etm@openssh.com".to_string(),
229            "umac-64@openssh.com".to_string(),
230            "umac-128@openssh.com".to_string(),
231            "hmac-sha2-256".to_string(),
232            "hmac-sha2-512".to_string(),
233            "hmac-sha1".to_string(),
234            "umac-64-etm@openssh.com".to_string(),
235            "umac-128-etm@openssh.com".to_string(),
236            "hmac-sha2-256-etm@openssh.com".to_string(),
237            "hmac-sha2-512-etm@openssh.com".to_string(),
238            "hmac-sha1-etm@openssh.com".to_string(),
239            "umac-64@openssh.com".to_string(),
240            "umac-128@openssh.com".to_string(),
241            "hmac-sha2-256".to_string(),
242            "hmac-sha2-512".to_string(),
243            "hmac-sha1".to_string(),
244            "none".to_string(),
245            "zlib@openssh.com".to_string(),
246            "none".to_string(),
247            "zlib@openssh.com".to_string(),
248        ],
249        mac: vec![
250            "umac-64-etm@openssh.com".to_string(),
251            "umac-128-etm@openssh.com".to_string(),
252            "hmac-sha2-256-etm@openssh.com".to_string(),
253            "hmac-sha2-512-etm@openssh.com".to_string(),
254            "hmac-sha1-etm@openssh.com".to_string(),
255            "umac-64@openssh.com".to_string(),
256            "umac-128@openssh.com".to_string(),
257            "hmac-sha2-256".to_string(),
258            "hmac-sha2-512".to_string(),
259            "hmac-sha1".to_string(),
260        ],
261        pubkey_accepted_algorithms: vec![
262            "ssh-ed25519-cert-v01@openssh.com".to_string(),
263            "ecdsa-sha2-nistp256-cert-v01@openssh.com".to_string(),
264            "ecdsa-sha2-nistp384-cert-v01@openssh.com".to_string(),
265            "ecdsa-sha2-nistp521-cert-v01@openssh.com".to_string(),
266            "sk-ssh-ed25519-cert-v01@openssh.com".to_string(),
267            "sk-ecdsa-sha2-nistp256-cert-v01@openssh.com".to_string(),
268            "rsa-sha2-512-cert-v01@openssh.com".to_string(),
269            "rsa-sha2-256-cert-v01@openssh.com".to_string(),
270            "ssh-ed25519".to_string(),
271            "ecdsa-sha2-nistp256".to_string(),
272            "ecdsa-sha2-nistp384".to_string(),
273            "ecdsa-sha2-nistp521".to_string(),
274            "sk-ssh-ed25519@openssh.com".to_string(),
275            "sk-ecdsa-sha2-nistp256@openssh.com".to_string(),
276            "rsa-sha2-512".to_string(),
277            "rsa-sha2-256".to_string(),
278        ],
279    }
280}