HTTPS认证四:使用开源libcurl进行SSL双向认证

本文详细介绍了如何使用libcurl库进行SSL/TLS连接配置,包括设置客户端和服务端证书、私钥、CA证书,以及如何验证对端证书有效性等关键步骤。通过一个示例程序simplc.c,演示了如何在实际应用中正确配置和使用这些参数。

官网:https://curl.haxx.se/libcurl/c/libcurl.html

libcurl参数说明:

CURLOPT_SSLCERTTYPE:证书的格式,支持PEM, DER格式
CURLOPT_SSLCERT:客户端证书的名字,加密传输下默认格式是P12,其它方式下是PEM,使用时候用./filename避免混淆,当使用client证书的时候,很大可能需要使用private key
CURLOPT_SSLKEY: 这个是privatekey的文件名,默认格式是PEM,可以通过 CURLOPT_SSLKEYTYPE修改
CURLOPT_KEYPASSWD: 使用private.key时候需要密码,载入证书不会用到密码,但是载入private.key时候需要
CURLOPT_CAINFO: 根证书,用来验证对端证书的有效性,一般时颁发机构(CA)颁发的
CURLOPT_SSL_VERIFYPEER: 决定是否验证对方证书的有效性,当进行TLS或者SSL连接时,服务器发送证书表明他的身份,CURL会验证证书是否真实(,这种信任基于数字签名链,植根于您提供的证书颁发机构(CA)证书

1、准备文件

 

根证书

ca.crt

cacrt.pem

根证书签发的服务端证书

server.crt

 

服务端私钥

server.key

 

根证书签发的客户端证书</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值