SSL/TSL 总结

阿里云:数字证书管理服务(原SSL证书)https://www.aliyun.com/product/cas?utm_content=se_1015412683


CA证书,全称为Certification Authority,即数字证书认证机构。它是一种用于加密和身份验证的数字证书。
CA证书的工作原理如下:
1. 注册:用户向CA申请数字证书,提供身份信息和公钥。
2. 核验身份:CA对用户身份进行一系列验证,确保其真实性和合法性。验证过程可以包括个人面谈、文件核对以及技术审查等。
3. 签发证书:验证通过后,CA通过自己的私钥对用户公钥和身份信息进行数字签名,生成数字证书。数字证书包含用户的公钥、用户身份信息以及CA的数字签名。
4. 分发证书:CA将签发的数字证书发送给用户。用户可以将数字证书存储在其计算机、服务器或其他设备中。
5. 验证身份:当用户需要进行加密或身份验证时,其他用户可以使用CA的公钥来验证数字证书的真实性和完整性。用户使用CA的公钥对接收到的数字证书中的数字签名进行验证,以确保该证书是由CA签发的。
6. 加密和身份验证:用户可以使用数字证书中的公钥进行加密操作,将信息发送给其他用户。接收者使用发送者的数字证书中的公钥对接收到的信息进行解密。
总体来说,CA证书通过CA机构对用户身份进行验证并签发数字证书,实现了对数字证书的管理和传输过程中的安全保护。它可以确保数据的机密性、完整性和身份验证的可靠性。


安装:Win64OpenSSL-3_2_0.exe 大概需要690M左右的空间,
本次演示安装在:C:\Program Files\OpenSSL-Win64 ; 需要将路径配置到环境变量中 C:\Program Files\OpenSSL-Win64\bin

查看 enc 的对称加密算法:openssl enc -list


简书:openssl: https://www.jianshu.com/p/bc1498a39a7c
OpenSSL创建生成CA证书、服务器、客户端证书及密钥:https://blog.csdn.net/qq153471503/article/details/109524764
OpenSSL安装和命令行工具介绍:https://blog.csdn.net/new9232/article/details/131013837
java连接MQTT+SSL服务器:https://www.jianshu.com/p/f498cd767d4b

 

 

=================================================================================================================

参考:https://blog.csdn.net/qq153471503/article/details/109524764

(一)生成CA证书
1、创建CA证书私钥
openssl genrsa -aes256 -out ca.key 2048 (密码:ca1234567890)
2、请求证书
openssl req -new -sha256 -key ca.key -out ca.csr -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.test.com/CN=CA/[email protected]" (密码:ca1234567890)
3、自签署证书
openssl x509 -req -days 36500 -sha256 -extensions v3_ca -signkey ca.key -in ca.csr -out ca.cer (密码:ca1234567890)

(二)生成服务器证书
1、创建服务器私钥
openssl genrsa -aes256 -out server.key 2048 (密码:server1234567890)
2、请求证书
openssl req -new -sha256 -key server.key -out server.csr -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.test.com/CN=SERVER/[email protected]" (密码:server1234567890)
3、使用CA证书签署服务器证书
openssl x509 -req -days 36500 -sha256 -extensions v3_req -CA ca.cer -CAkey ca.key -CAserial ca.srl -CAcreateserial -in server.csr -out server.cer (密码:ca1234567890)

(三)生成客户端证书 (密码:server1234567890)
1、创建客户端私钥
openssl genrsa -aes256 -out client.key 2048 (密码:client1234567890)
2、申请证书
openssl req -new -sha256 -key client.key -out client.csr -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.test.com/CN=CLIENT/[email protected]" (密码:client1234567890)
3、使用CA证书签署客户端证书
openssl x509 -req -days 36500 -sha256 -extensions v3_req -CA ca.cer -CAkey ca.key -CAserial ca.srl -CAcreateserial -in client.csr -out client.cer (密码:ca1234567890)


验证:
单向认证命令行:
服务器:
openssl s_server -CAfile ca.cer -cert server.cer -key server.key -accept 22580 (密码:server1234567890)
客户端:
openssl s_client -CAfile ca.cer -cert client.cer -key client.key -connect 127.0.0.1 -port 22580 (密码:client1234567890)


双向认证:
服务器:
openssl s_server -CAfile ca.cer -cert server.cer -key server.key -accept 22580 -Verify 1 (密码:server1234567890)
客户端:
openssl s_client -CAfile ca.cer -cert server.cer -key server.key -cert client.cer -key client.key -connect 127.0.0.1 -port 22580 (密码:client1234567890)


备注:
证书的参数含义
C-----国家(Country Name)
ST----省份(State or Province Name)
L----城市(Locality Name)
O----公司(Organization Name)
OU----部门(Organizational Unit Name)
CN----产品名(Common Name)
emailAddress----邮箱(Email Address)

=================================================================================================================

 

https://blog.csdn.net/qq_35921773/article/details/128343692

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章