linux下openssl生成CA证书,服务端证书,客户端证书,命令如下:
openssl req -new -x509 -days 365 -key ca.key -out ca.crt -subj /C=CN/ST=SX/L=XA/O=AA/OU=BB/CN=123/
openssl req -new -key server.key -out server.csr -subj /C=CN/ST=SX/L=XA/O=AA/OU=BB/CN=123/ -passin pass:123456
openssl req -new -key client.key -out client.csr -subj /C=CN/ST=SX/L=XA/O=AA/OU=BB/CN=123/ -passin pass:123456
c语言实现客户端和服务器间的双向认证时,SSL_connect报错error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
当我把CA证书中的CN改成和客户端/服务器的CN不一样时,比如:CN=456
此时连接正常,这是什么原因?
追加截图:
CN值相同时,连接失败:
client:
CN值不同时,连接成功:
client:
把报错截图发给我看一下