1 // Copyright 2005-2019 The Mumble Developers. All rights reserved.
2 // Use of this source code is governed by a BSD-style license
3 // that can be found in the LICENSE file at the root of the
4 // Mumble source tree or at <https://www.mumble.info/LICENSE>.
5 
6 #ifndef MUMBLE_FFDHE_H_
7 #define MUMBLE_FFDHE_H_
8 
9 /// FFDHE provides access to the Diffie-Hellman parameters from RFC 7919.
10 class FFDHE {
11 	public:
12 		/// NamedGroups returns a list of the supported named
13 		/// groups for PEMForNamedGroup.
14 		static QStringList NamedGroups();
15 
16 		/// PEMForNamedGroup returns the PEM-encoded
17 		/// Diffie-Hellman parameters for the RFC 7919
18 		/// group with the given name, such as "ffdhe2048",
19 		/// "ffdhe4096", etc.
20 		///
21 		/// Returns an empty byte array if the request
22 		/// could not be fulfilled.
23 		static QByteArray PEMForNamedGroup(QString name);
24 };
25 
26 #endif
27