在《Java实现RSA密钥对并在加解密、加签验签中应用的实例》中,我们有用Java代码生成RSA密钥对,其实在Linux操作系统中,用openssl也是很容易生成密钥对的。

一.如果在ubuntu上要使用openssl的话需要先进行安装

命令如下:

sudo apt-get install openssl

安装完成就可以使用openssl了。

二.进入openssl的交互界面,在命令行了输入openssl即可

1.生成RSA私钥

该命令会生成1024位的私钥,生成成功的界面如上所示。

genrsa -out rsa_private_key.pem

此时我们就可以在当前路径下看到rsa_private_key.pem文件了,如下所示:

6483a80a22a808d4352af9e5ab615a81.png

2.把RSA私钥转换成PKCS8格式

输入命令如下命令回车

pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt

得到生成功的结果,这个结果就是PKCS8格式的私钥,如下图:

5cf941fe246a60cd8ee46016f59cdaa6.png

3.生成RSA公钥

输入如下命令并回车

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

得到生成成功的结果,如下图:

8dfc2f2741c13cfe429021b824a182c3.png

此时,我们可以看到一个文件名为rsa_public_key.pem的文件,打开它,可以看到-----BEGIN PUBLIC KEY-----开头,-----END PUBLIC KEY-----结尾的没有换行的字符串,这个就是公钥,如下所示:

df4c1cb94fd3421302cc9a1fd4dbf875.png

附:但在有些时候,我们需要的公钥不是上面格式的,如下所示的公钥格式是sftp时需要的格式

c354149581d9c8fce610dacb1486c2f1.png

此时,我们需要通过如下Linux命令生成:

ssh-keygen -t rsa -f key

ssh-keygen -e -f key.pub > key_ss2.pub

具体使用实例如下所示:

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

Windows 下使用OpenSSL生成RSA公钥和私钥 (1)下载OpenSSL 可到该地址下载OpenSSL: https://www.openssl.org/source/(https://ww ...

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

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

openssl生成RSA公钥和私钥对

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

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

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

Linux下c基于openssl生成MD5的函数

Linux下openssl提供了一系列哈希及加密的函数,如果调用openssl提供的MD5函数生成任意字符串的MD5呢?下面提供了一段代码实现Linux下c字符串生成md5的函数. 具体代码: 1 2 ...

c#生成rsa公钥和私钥

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

生成 RSA 公钥和私钥的方法

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

利用openSSL 生成RSA公钥和密钥

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

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

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

随机推荐

PgwSlideshow-基于Jquery的图片轮播插件

0 PgwSlideshow简介 PgwSlideshow是一款基于Jquery的图片轮播插件,基本布局分为上下结构,上方为大图轮播区域,用户可自定义图片轮播切换的间隔时间,也可以通过单击左右方向按键 ...

chrome浏览器渲染白屏问题剖析

刚截图十几次,终于捕捉到了这个白屏现象,hiahia~~ 大家可以很清晰地看到下边还木有渲染完毕的透明层,这是一个十分普遍的问题,经常遇到.我的浏览器版本是 到目前为止应该是最新版(release版本 ...

【SSO单点系列】(1):CAS4.0 环境的搭建

一.概述 今天开始写CAS相关的第一篇文章,这篇文章主要是关于CAS环境的搭配,提供给刚刚接触CAS的一个入门指南,并演示一个CAS的最简单的实例 二.环境要求 博主的环境如下: win8.1 64 ...

Python Base HTTP Server

import BaseHTTPServer import cgi, random, sys MESSAGES = [ "That's as maybe, it's still a frog. ...

CSS用类选择器在本页写样式

静夜思
Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐