https server的ssl協議實現

2021-08-16 03:42:58 字數 1035 閱讀 7076

https協議簡單的說就是經過ssl加密的http協議,本文不介紹https server中http信令的實現,只介紹ssl的實現。

使用openssl實現ssl,需要編譯openssl生成libssl.a和libcrypto.a

需要包含的標頭檔案

#include
初始化,cert_path是證書檔案的路徑,private_key_path是私鑰檔案路徑

ssl_ctx* ssl_socket_init(const char* cert_path, const char* private_key_path)

if ((ssl_ctx_use_certificate_file(ctx, cert_path, ssl_filetype_pem) < 1) ||

(ssl_ctx_use_privatekey_file(ctx, private_key_path, ssl_filetype_pem) < 1) ||

(!ssl_ctx_check_private_key(ctx)) )

return ctx;

}

釋放

void ssl_socket_free(ssl_ctx* ctx)

}

當有連線時,在socket accept()之後,針對每個socket的fd需要設定一次

ssl_ctx* ssl_ctx;

ssl *ssl = ssl_new(ssl_ctx);

if (!ssl)

ssl_set_fd(ssl, connfd);

if (ssl_accept(ssl) == -1)

接收socket資料

recv_size = ssl_read(ssl, buffer, buffer_size-1);
傳送socket資料

ssl_write(ssl, buf, strlen(buf));

不同等級的SSL證書 SSL證書的作用

不同等級ssl證書的區別 dvssl證書,又稱網域名稱驗證型ssl證書。dvssl證書是簽發只驗證網域名稱所有權,快速頒發的ssl證書,安全級別較低。ovssl證書,又稱機構驗證型ssl證書。當前廣泛應用的ssl證書,需要驗證企業身份資訊後頒發。ovssl證書是當前最常見的證書型別,適用於行政 企業...

免費 SSL 和 便宜 SSL 介紹

startssl.com startcom公司提供免費startssl class 1 證書,有效期1年,證書到期後可以免費續期,根證書除 ie6 之外幾乎全部支援,申請具有一定難度,對 有一定的核審。不過昔日有使用其證書無論伺服器做國內國外都被 q 的事情。cloudflare.com 國際知名的...

免費SSL證書和付費SSL證書的區別

近年來,ssl證書的 已大幅下降,甚至有一些免費ssl證書,因此 可以輕鬆部署。那麼免費ssl證書和付費ssl證書有什麼區別呢?今天安信證書就和大家來 一下這個問題。免費ssl證書,顧名思義是免費提供的,免費提供ssl證書目的是為所有 提供https訪問許可權。付費ssl證書是由可信賴的證書頒發機構...