mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 06:47:35 +00:00
LibTLS: Add support for curve x448
This commit is contained in:
parent
0df7ad7493
commit
125a43e203
3 changed files with 78 additions and 16 deletions
|
@ -242,7 +242,9 @@ struct Options {
|
|||
{ HashAlgorithm::SHA384, SignatureAlgorithm::RSA },
|
||||
{ HashAlgorithm::SHA256, SignatureAlgorithm::RSA },
|
||||
{ HashAlgorithm::SHA1, SignatureAlgorithm::RSA });
|
||||
OPTION_WITH_DEFAULTS(Vector<NamedCurve>, elliptic_curves, NamedCurve::x25519)
|
||||
OPTION_WITH_DEFAULTS(Vector<NamedCurve>, elliptic_curves,
|
||||
NamedCurve::x25519,
|
||||
NamedCurve::x448)
|
||||
OPTION_WITH_DEFAULTS(Vector<ECPointFormat>, supported_ec_point_formats, ECPointFormat::Uncompressed)
|
||||
|
||||
OPTION_WITH_DEFAULTS(bool, use_sni, true)
|
||||
|
@ -331,6 +333,8 @@ struct Context {
|
|||
ByteBuffer g;
|
||||
ByteBuffer Ys;
|
||||
} server_diffie_hellman_params;
|
||||
|
||||
NamedCurve server_curve_choice;
|
||||
};
|
||||
|
||||
class TLSv12 final : public Core::Stream::Socket {
|
||||
|
@ -461,6 +465,9 @@ private:
|
|||
void build_dhe_rsa_pre_master_secret(PacketBuilder&);
|
||||
void build_ecdhe_rsa_pre_master_secret(PacketBuilder&);
|
||||
|
||||
static ErrorOr<ByteBuffer> named_curve_multiply(NamedCurve curve, ReadonlyBytes a, ReadonlyBytes b);
|
||||
static ErrorOr<ByteBuffer> named_curve_generator_point(NamedCurve curve);
|
||||
|
||||
ErrorOr<bool> flush();
|
||||
void write_into_socket();
|
||||
ErrorOr<void> read_from_socket();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue