From 3243091c0d8d6edd60f0a57f9da4db0fd1d84ecc Mon Sep 17 00:00:00 2001 From: Joaquim Monteiro Date: Sun, 13 Feb 2022 16:00:04 +0000 Subject: [PATCH] LibTLS: Add SHA-384 as supported certificate signing algorithm --- Userland/Libraries/LibTLS/Certificate.cpp | 3 +++ Userland/Libraries/LibTLS/Certificate.h | 1 + 2 files changed, 4 insertions(+) diff --git a/Userland/Libraries/LibTLS/Certificate.cpp b/Userland/Libraries/LibTLS/Certificate.cpp index 91e213831c..7ef025013e 100644 --- a/Userland/Libraries/LibTLS/Certificate.cpp +++ b/Userland/Libraries/LibTLS/Certificate.cpp @@ -24,6 +24,7 @@ constexpr static Array rsa_md5_encryption_oid { 1, 2, 840, 113549, 1, 1, 4 }, rsa_sha1_encryption_oid { 1, 2, 840, 113549, 1, 1, 5 }, rsa_sha256_encryption_oid { 1, 2, 840, 113549, 1, 1, 11 }, + rsa_sha384_encryption_oid { 1, 2, 840, 113549, 1, 1, 12 }, rsa_sha512_encryption_oid { 1, 2, 840, 113549, 1, 1, 13 }; constexpr static Array @@ -151,6 +152,8 @@ Optional Certificate::parse_asn1(ReadonlyBytes buffer, bool) field = CertificateKeyAlgorithm ::RSA_SHA1; else if (identifier == rsa_sha256_encryption_oid) field = CertificateKeyAlgorithm ::RSA_SHA256; + else if (identifier == rsa_sha384_encryption_oid) + field = CertificateKeyAlgorithm ::RSA_SHA384; else if (identifier == rsa_sha512_encryption_oid) field = CertificateKeyAlgorithm ::RSA_SHA512; else diff --git a/Userland/Libraries/LibTLS/Certificate.h b/Userland/Libraries/LibTLS/Certificate.h index e1694c72a3..15f352d50d 100644 --- a/Userland/Libraries/LibTLS/Certificate.h +++ b/Userland/Libraries/LibTLS/Certificate.h @@ -23,6 +23,7 @@ enum class CertificateKeyAlgorithm { RSA_MD5 = 0x04, RSA_SHA1 = 0x05, RSA_SHA256 = 0x0b, + RSA_SHA384 = 0x0c, RSA_SHA512 = 0x0d, };