方法一:(http://blog.csdn.net/fenglibing/article/details/8610280)
1、使用OpenSSL生成私钥
常用的生成算法有RSA及DSA,RSA生成的私钥可以用来加密以及签名,而DSA生成的私钥只可以用来签名
1.1)、RSA算法生成key的示例
openssl genrsa -des3 -out privkey.pem 2048
genrsa:指定了生成了算法使用RSA
-desc:表示生成的key是有密码保护的(注:如果是将生成的key与server的证书一起使用,最好不需要密码,就是不要这个参数,否则其它人就会在请求的时候每次都要求输入密码)
-out:后面的参数表示生成的key的输入文件
2048:表示的是生成key的大小,单为字节(bits)
1.2)、DSA算法生成key的示例
根据DSA算法生成Key需要两步:
1.2.1)、第一步是生成用于生成Key的参数:
openssl dsaparam -out dsaparam.pem 2048
1.2.2)、根据生成的参数生成Key:
openssl gendsa -des3 -out privkey.pem dsaparam.pem
详细参见:http://www.openssl.org/docs/HOWTO/keys.txt
2、使用OpenSSL创建证书申请及自签名证书
在第1步中,我们已经创建好了私钥,这个时候我们就可以使用创建好的private.pem来创建证书申请及自签名证书。
2.1) 创建证书申请
openssl req -new -key privkey.pem -out cert.csr
使用上面的命令就会创建一个证书申请,这里我们会要求输入国家、组织、姓名等信息,但是不会要求输入证书有效天数,因为证书有效天数是CA认证中心给我们的;然后我们会把这个生成好的cert.csr(Ce
1、使用OpenSSL生成私钥
常用的生成算法有RSA及DSA,RSA生成的私钥可以用来加密以及签名,而DSA生成的私钥只可以用来签名
1.1)、RSA算法生成key的示例
openssl genrsa -des3 -out privkey.pem 2048
genrsa:指定了生成了算法使用RSA
-desc:表示生成的key是有密码保护的(注:如果是将生成的key与server的证书一起使用,最好不需要密码,就是不要这个参数,否则其它人就会在请求的时候每次都要求输入密码)
-out:后面的参数表示生成的key的输入文件
2048:表示的是生成key的大小,单为字节(bits)
1.2)、DSA算法生成key的示例
根据DSA算法生成Key需要两步:
1.2.1)、第一步是生成用于生成Key的参数:
openssl dsaparam -out dsaparam.pem 2048
1.2.2)、根据生成的参数生成Key:
openssl gendsa -des3 -out privkey.pem dsaparam.pem
详细参见:http://www.openssl.org/docs/HOWTO/keys.txt
2、使用OpenSSL创建证书申请及自签名证书
在第1步中,我们已经创建好了私钥,这个时候我们就可以使用创建好的private.pem来创建证书申请及自签名证书。
2.1) 创建证书申请
openssl req -new -key privkey.pem -out cert.csr
使用上面的命令就会创建一个证书申请,这里我们会要求输入国家、组织、姓名等信息,但是不会要求输入证书有效天数,因为证书有效天数是CA认证中心给我们的;然后我们会把这个生成好的cert.csr(Ce