Windows 下使用OpenSSL生成RSA公钥和私钥

(1)下载OpenSSL 
可到该地址下载OpenSSL:

https://www.openssl.org/source/(https://www.openssl.org/source/没有提供windows版本的安装包。

可以选择其他开源平台提供的已编辑好的工具。例如 http://slproweb.com/products/Win32OpenSSL.html
根据你的系统来选择不同的版本下载安装

下载OpenSSL后,按照提示安装OpenSSL,最好不要安装到C盘。

(2)打开OpenSSL文件夹下的bin目录,点击openssl.exe,打开命令窗口。

(3)开始生成RSA的私钥 
输入命令:genrsa -out rsa_private_key.pem 1024

genrsa -out rsa_private_key.pem 

此时在OpenSSL的bin目录下生成了一个rsa_private_key.pem,这就是最初的私钥文件 
但是这不是我们最终要用的私钥文件,我们最终使用的私钥文件必须是要经过PKCS#8编码这个后面步骤会给出。

(4)利用私钥文件生成RSA公钥文件 
输入命令:rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem 

此时在OpenSSL的bin目录下会生成rsa_public_key.pem文件,这就是公钥文件。

(5)前面说过我们最终使用的RSA文件是需要经过PKCS#8编码的,之前生成的RSA文件只是用来生成公钥文件的。 
接下来就要对之前的私钥文件进行PKCS#8编码,生成一个编码后的私钥文件。 
输入命令:pkcs8 -topk8  -in rsa_private_key.pem -outform PEM -out pkcs8_rsa_private_key.pem –nocrypt

 pkcs8 -topk8 -in rsa_private_key.pem -out pkcs8_rsa_private_key.pem -nocrypt

这个时候在OpenSSL目录的bin目录下又会生成一个pkcs8_rsa_private_key.pem文件,这个就是我们最终要用的私钥文件。

Windows 下使用OpenSSL生成RSA公钥和私钥的更多相关文章

  1. 在Linux下如何使用openssl生成RSA公钥和私钥对

    在<Java实现RSA密钥对并在加解密.加签验签中应用的实例>中,我们有用Java代码生成RSA密钥对,其实在Linux操作系统中,用openssl也是很容易生成密钥对的. 一.如果在ub ...

  2. 如何使用openssl生成RSA公钥和私钥对

      在ubuntu上要使用openssl的话需要先进行安装,命令如下: sudo apt-get install openssl 安装完成就可以使用openssl了. 首先需要进入openssl的交互 ...

  3. openssl生成RSA公钥和私钥对

    在ubuntu上要使用openssl的话需要先进行安装,命令如下: sudo apt-get install openssl 安装完成就可以使用openssl了. 首先需要进入openssl的交互界面 ...

  4. 使用openssl生成RSA公钥和私钥对

    在ubuntu上要使用openssl的话需要先进行安装,命令如下: sudo apt-get install openssl 安装完成就可以使用openssl了. 首先需要进入openssl的交互界面 ...

  5. c#生成rsa公钥和私钥

    c#生成rsa公钥和私钥的类库,包括加密解密,可以用在网站和winform项目 源码地址: http://download.csdn.net/detail/jine515073/8383809

  6. 生成 RSA 公钥和私钥的方法

    在使用 RSA 加密算法时,需要使用到一对 公钥 和 私钥,生成 公钥 和 私钥 需要借助 openssl 这款工具,下载这款工具的地址如下: http://slproweb.com/products ...

  7. 利用openSSL 生成RSA公钥和密钥

    安装openssl for Windows. 之后开管理员控制台,打开openSSL 我的是 C:\OpenSSL-Win32\bin\openssl.exe 生成1024位的私钥,不指定的话默认20 ...

  8. PHP中使用OpenSSL生成RSA公钥私钥及进行加密解密示例(非对称加密)

    php服务端与客户端交互.提供开放api时,通常需要对敏感的部分api数据传输进行数据加密,这时候rsa非对称加密就能派上用处了,下面通过一个例子来说明如何用php来实现数据的加密解密 先了解一下关于 ...

  9. Windows下使用OpenSSL生成自签证书

    下载OpenSSLhttp://slproweb.com/products/Win32OpenSSL.html 生成证书 生成crt证书CMD进入安装bin目录,执行命令:openssl req -x ...

随机推荐

  1. LeetCode 311. Sparse Matrix Multiplication

    原题链接在这里:https://leetcode.com/problems/sparse-matrix-multiplication/description/ 题目: Given two sparse ...

  2. Vue模板语法(二)

    Vue基础模板语法 二 1. 样式绑定 1.1 class绑定      使用方式:v-bind:class="expression"       expression的类型:字符 ...

  3. 使用session存储数据

    @WebServlet("/reply") public class ReplyServlet extends HttpServlet { @Override protected ...

  4. MySQL Create table as / Create table like

    a.create table like方式会完整地克隆表结构,但不会插入数据,需要单独使用insert into或load data方式加载数据 b.create table as  方式会部分克隆表 ...

  5. 流媒体知识 wiki

    媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等.最近因为项目的关系,需要理清媒 ...

  6. UVA 11468 Substring (记忆化搜索 + AC自动鸡)

    传送门 题意: 给你K个模式串, 然后,再给你 n 个字符, 和它们出现的概率 p[ i ], 模式串肯定由给定的字符组成. 且所有字符,要么是数字,要么是大小写字母. 问你生成一个长度为L的串,不包 ...

  7. SpreadJS 复制行

    参考:https://www.cnblogs.com/yeyuqian/p/10750441.html 核心代码: //例子:复制第一行(10列) 复制到 第二行var fromRanges = ne ...

  8. C# 分割字符串 分隔符是字符串的情况

    string[] arr = System.Text.RegularExpressions.Regex.Split(str, "\r\n");

  9. php 简单使用redis 队列示例

    public function redisAction(){ $redis = new Redis(); $redis->connect('127.0.0.1', 6379); echo &qu ...

  10. StringSequences

    题意: 给出两个长度不超过\(50\)的字符串\(S, T\),每次可以在\(S\)中插入一个字符,把每次操作后的\(S\)写成一个序列,问有多少种不同的序列. 注意到我们可以把\(S\)拆分成一段一 ...