备份-基础ssl通信

This commit is contained in:
睿 安
2026-01-23 08:39:07 +08:00
parent ef6b8511b1
commit dbb053a691
625 changed files with 305003 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
#pragma once
#include "pch.h"
namespace SSLClient {
/// <summary>
/// SSL证书管理器
/// 负责加载和管理证书、私钥
/// </summary>
class CertificateManager
{
public:
CertificateManager();
~CertificateManager();
// 禁止拷贝
CertificateManager(const CertificateManager&) = delete;
CertificateManager& operator=(const CertificateManager&) = delete;
/// <summary>
/// 从内存加载X509证书
/// </summary>
/// <param name="certPem">PEM格式的证书</param>
/// <returns>X509证书对象失败返回nullptr</returns>
X509* LoadCertificateFromMemory(const char* certPem);
/// <summary>
/// 从内存加载私钥
/// </summary>
/// <param name="keyPem">PEM格式的私钥</param>
/// <param name="password">私钥密码</param>
/// <returns>EVP_PKEY对象失败返回nullptr</returns>
EVP_PKEY* LoadPrivateKeyFromMemory(const char* keyPem, const char* password);
/// <summary>
/// 打印OpenSSL错误信息
/// </summary>
/// <param name="message">错误描述</param>
static void PrintSSLError(const char* message);
};
} // namespace SSLClient