openssl实现自签名证书

前言linux

证书的做用算法

加密通讯数据,验证对象身份,保证数据完整性工具

什么是自签名证书加密

 

公认的证书每每都须要收费,若是客户端与服务端都是由咱们本身来操控,那即可以使用自签名证书(说白了就是只是本身承认的证书)spa

ca签名证书server

ca签名证书,也就是咱们本身当是认证的机构去认证一个证书,那么客户端新人该ca证书也表明着信任该ca证书签名的全部的自签名证书。对象

 

openssl是什么blog

OpenSSL是一套开源的密码学工具包ssl

在SSL协议中,咱们使用了不少密码学手段来保护数据,其中包括对称密码、公钥密码、数字签名、证书、完整性校验、伪随机数生成等。因为这些算法和操做都很是复杂,因而开源社区就开发了一套库,这个库里面提供了不少现成的标准方法,其余开发者只要用正确调用这些方法,就能够实现SSL协议中的各类加密/解密操做了。开发

linux环境下使用openssl生成ca证书与自签名证书

 

生成ca证书

1.生成ca证书的密钥key

openssl genrsa -des3 -out ca.key 1024

2.生成ca的自签名证书,是的,此处的ca证书也是一个自签名证书

openssl req -new -x509  -days 365 -key ca.key -out ca.crt

输入ca.key的使用密码后根据状况输入相应信息,在Commom Name选项中须要填写你要使用的域名

 

若是不想在调用密钥文件的时候输入密码,能够使用如下操做去除

openssl rsa -in ca.key -out ca.key

 

使用ca证书签名自签名证书

1.生成自签名证书密钥

openssl genrsa -des3 -out server.key 1024

2.生成自签名证书请求文件

openssl req -new -key server.key -out server.csr

 

输入相应信息后获得server.csr请求文件

3.使用ca证书对自签名证书请求文件进行签名

openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt

相关文章
相关标签/搜索