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}