使用OpenSSL API安全编程
来源:互联网 发布:卸妆 知乎 编辑:程序博客网 时间:2024/05/17 20:08
首先我们需要使用OpenSSL创建必须的文件,包括
1.ca.crt CA签名证书,用来验证服务端的证书。
2.server.key 服务端秘钥文件。
3.server.crt 服务端证书,在SSL握手阶段,这个证书会发往客户端,客户端使用ca.crt验证。
4.如果服务器也要验证客户端的话,客户端也必须有对应的client.key和client.crt文件。
生成CA文件
openssl req -new -x509 -keyout ca.key -out ca.crt
这个会生成ca.key和ca.crt文件。
生成服务器端的私钥(key文件):
openssl genrsa -des3 -out server.key 1024
运行时会提示输入密码,此密码用于加密key文件(参数des3便是指加密算法,当然也可以选用其他你认为安全的算法.),以后每当需读取此文件(通过openssl提供的命令或API)都需输入口令.如果觉得不方便,也可以去除这个口令,但一定要采取其他的保护措施!
去除key文件口令的命令:
openssl rsa -in server.key -out server.key
openssl req -new -key server.key -out server.csr -config openssl.cnf
生成Certificate Signing Request(CSR),生成的csr文件交给CA签名后形成服务端自己的证书.屏幕上将有提示,依照其指示一步一步输入要求的个人信息即可.
对客户端也作同样的命令生成key及csr文件:
openssl genrsa -des3 -out client.key 1024
openssl req -new -key client.key -out client.csr -config openssl.cnf
CSR文件必须有CA的签名才可形成证书.可将此文件发送到verisign等地方由它验证,要交一大笔钱,何不自己做CA呢.
openssl req -new -x509 -keyout ca.key -out ca.crt -config openssl.cnf
CA给证书请求文件签名
openssl x509 -req -days 30 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt
现在我们所需的全部文件便生成了.
client使用的文件有:ca.crt,client.crt,client.key
server使用的文件有:ca.crt,server.crt,server.key
.crt文件和.key可以合到一个文件里面,本人把2个文件合成了一个.pem文件(直接拷贝过去就行了)
待续。。。
- 使用OpenSSL API安全编程
- [转]使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- [转]使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 使用 OpenSSL API 进行安全编程
- 【转】使用 OpenSSL API 进行安全编程
- We have a Python
- Mysql中文乱码问题完美解决方案
- Matlab中arrayfun函数
- uva 10479 - The Hendrie Sequence(规律+递归)
- DSS源码分析--对RTSP请求的状态机处理机制
- 使用OpenSSL API安全编程
- 吴立德教授深度学习课程笔记
- Java对文件和文件夹操作的一些方法
- mysql5.1.51在嵌入式开发板上的移植总结
- 通用网络信息采集器(爬虫)设计方案
- JAVA面向接口的编程思想与具体实现
- 曾参阅的博客链接
- vmware 在win7无法桥接到无线网卡的原因
- 创建商业思维导图的便利工具有哪些