用 OPENSSL 生成不同格式的密钥
用 OPENSSL 生成不同格式的密钥
密钥 key 值包括
加密算法: RSA/DSA/ECC
加密位数: 1024/2048/4096
密钥口令:加密方式有很多
在使用 DSA/ECC 加密算法时,首先需要生成算法参数文件 param-file
1. 生成 RSA 加密算法密钥
# openssl genrsa -out rsakey.pem 4096
或者是这个指令
# openssl genpkey -algorithm RSA -out rsakey.pem 4096
2. 生成 DSA 加密算法密钥
# openssl dsaparam -out dsaparam.pem 4096
# openssl gendsa dsaparam.pem -out dsakey.pem
或者是这些指令
# openssl dsaparam -in dsaparam.pem -out dsakey.pem
# openssl genpkey -paramfile dsaparam.pem -out dsakey.pem
##openssl genpkey -genparam -algorithm DSA -out dsakey.pem
3. ECC 加密算法密钥
OpenSSL内置椭圆曲线的完整列表可以通过以下命令获得:
# openssl ecparam -list_curves
对于 openssl 内置的曲线中,部分曲线不被浏览器支持,常用的曲线有下列几种或者更多
secp384r1
secp521r1
prime256v1
生成 ECC 加密算法密钥
# openssl ecparam -name prime256v1 -out eccparam.pem
# openssl ecparam -genkey -in eccparam.pem -out ecckey.pem
或者是这个指令
# openssl genpkey -paramfile eccparam.pem -out ecckey.pem
4. 生成证书签发申请时同时生成加密私钥
openssl req
-newkey rsa:bits 生成一个新的指定 'bits' 长度的 RSA 密钥
-newkey dsa:file 生成一个新的 DSA 密钥,file 即参数文件
-newkey ec:file 生成一个新的 EC 密钥, file 即参数文件
5. 生成证书签发申请和签发证书
openssl.exe req -utf8 -sha512 -days 10957 -newkey rsa:4096 -keyout rsa.key -out rsacsr.pem
openssl.exe ca -utf8 -md sha512 -days 3650 -in rsacsr.pem -out cert.cer
RSA 算法的密钥支持 sha512 ,而 /DSA/ECC 算法的密钥貌似只支持 sha256 及256以下
用 OPENSSL 生成不同格式的密钥的更多相关文章
- openssl生成RSA格式,并转为pkcs8格式
原文地址:http://www.thinkingquest.net/articles/391.html?utm_source=tuicool 支付宝接口开发相关:openssl 加密工具 支付宝“手机 ...
- openssl生成rsa密钥对和密钥格式转换
首先要下载安装好openssl,下载地址:https://www.openssl.org/source/,安装完成后可以进到命令行运行以下命令: 1. 生成私钥: openssl genrsa -ou ...
- 利用openSSL 生成RSA公钥和密钥
安装openssl for Windows. 之后开管理员控制台,打开openSSL 我的是 C:\OpenSSL-Win32\bin\openssl.exe 生成1024位的私钥,不指定的话默认20 ...
- openssl生成RSA格式的公私钥,并转为pkcs8格式
第一步:生成私钥,这里我们指定私钥的长度为2048 openssl genrsa -out rsa_private_key.pem 2048 第二步:根据私钥生成对应的公钥: openssl rsa ...
- Mac OpenSSL 生成支付宝 2048位密钥
安装OpenSSL: brew install openssl 然后: OpenSSL> genrsa -out rsa_private_key.pem 2048 #生成私钥 OpenSSL&g ...
- 如何利用OpenSSL生成证书
此文已由作者赵斌授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.前言 最近为了测试内容分发网络(Content Delivery Network,简称 CDN)添加的新功 ...
- openssl生成RSA密钥证书
1.openssl的安装 2.RSA密钥证书的生成 3.openssl的常用命令 1.openssl的安装 openssl 是目前最流行的 SSL 密码库工具,其提供了一个通用.健壮.功能完备的工具套 ...
- .NET使用OpenSSL生成的pem密钥文件
NET要使用OpenSSL生成的pem密钥文件,网上资料很少(http://www.faqs.org/rfcs/rfc1421.html,RFC1421文件又老长老长),仅有的资料还是有错误的,所以今 ...
- PHP通过OpenSSL生成证书、密钥并且加密解密数据,以及公钥,私钥和数字签名的理解
一.公钥加密假设一下,我找了两个数字,一个是1,一个是2.我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥. 我有一个文件,不能让别人看,我就用1加密了.别人找到了这个文 ...
随机推荐
- Java基础学习总结(14)——Java对象的序列化和反序列化
一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化. 把字节序列恢复为对象的过程称为对象的反序列化. 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存 ...
- C++ 输出缓冲区的管理
在C++中,每个I/O对象管理一个缓冲区,用于存储程序读写的数据.本文将对输出缓冲区的管理进行简单的讲解. 举一个简单的例子: myOs << "Please enter a v ...
- COGS——T 21. [HAOI2005] 希望小学
http://www.cogs.pro/cogs/problem/problem.php?pid=21 ★★ 输入文件:hopeschool.in 输出文件:hopeschool.out ...
- 二 MapReduce 各阶段流程分析
如果想要将问题变得清晰.精准和优雅, 需要关注 MapReduce 作业所需要的系统资源,尤其是集群内部网络资源使用情况. MR 可以运行在共享集群上处理 TB 级 甚至 PB 级的数据.同时,改作业 ...
- ArcGIS api for javascript——图形-使用多个图形图层
描述 本例展示了如何增加多个图形图层到地图.一个图形图层显示国家,另一个显示城市.在一个地图中有多个图形图层的能力是在ArcGIS JavaScript API v1.4增加的. 从蓝色的城市点分隔灰 ...
- ArcGIS api for javascript——用缓存区查询地图
描述 本例展示了如何在另外一个任务里使用一个任务的结果.单击地图查看被单击的点的1公里范围内的缓存(如果需要可以修改这个默认的缓存距离).也可以看缓存区的这些点的人口普查街区信息.单击一个点查看更多的 ...
- 【JavaScript】JavaScript中的replaceAll
JavaScript中是没有replaceAll的.仅仅有replace,replace仅仅能替换字符中的第一个字符.并且这个replace里面不支持正則表達式,以达到replaceAll的目的. 只 ...
- 最简单的HTML5游戏——贪吃蛇
<html> <head> <meta charset="UTF-8"/> <title>贪吃蛇</title> < ...
- 大话设计模式C++实现-第15章-抽象工厂模式
一.UML图 二.概念 抽象方法模式(Abstract Factory):提供一个创建一系列相关或互相依赖对象的接口,而无需指定他们详细的类. 三.包括的角色 (1)抽象工厂 (2)详细工厂:包含详细 ...
- 网络project1101班2014-2015学年《网络软件开发实训》期末考试
注意事项: *考试时间:2014年11月20日 第5.6节. *在计算机D盘,新建目录.并命名"学号+姓名".如:(称为考生目录.下同).考试中全部文件必须保存在此目录下. *启动 ...