summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibTLS/HandshakeServer.cpp
AgeCommit message (Collapse)Author
2021-09-06Everywhere: Make ByteBuffer::{create_*,copy}() OOM-safeAli Mohammad Pur
2021-08-16LibTLS: Implement the DHE_RSA key exchange algorithmSamuel Bowman
This adds two methods, handle_dhe_rsa_server_key_exchange and build_dhe_rsa_pre_master_secret, to TLSv12 and a struct, server_diffie_hellman_params, to Context, which are used to implement the DHE_RSA key exchange algorithm. This grants us the benefits of forward secrecy and access to sites which support DHE_RSA. It is worth noting that the signature of the server provided Diffie-Hellman parameters is not currently validated. This will need to be addressed to prevent man-in-the-middle attacks.
2021-05-29LibTLS: Allow using other hash algorithms for HMACDexesTTP
The standard allows for ciphers to define which hash to use. Fixes #7348
2021-05-29LibTLS: Use a more precise KeyExchangeAlgorithm enumDexesTTP
The old enumeration didn't allow discriminating the key exchange algorithms used, but only allowed the handshake with the server. With this new enumeration, we can know which key exchange algorithm we are actually supposed to use :^)
2021-05-19LibTLS: Use RSA key exchange based on the cipherDexesTTP
After this, we aren't hardcoding RSA in everything we do anymore!
2021-05-19LibTLS: Rework method names and arrangement in cpp filesDexesTTP
This commit only moves and renames methods. The code hasn't changed.