用途:

Rsa命令用于处理RSA密钥、格式转换和打印信息。其实其用法和dsa的差不多。

用法:

openssl rsa [-inform PEM|NET|DER] [-outform PEM|NET|DER] [-in filename] [-passin arg]
[-out filename] [-passout arg] [-sgckey] [-text] [-noout] [-modulus] [-check] [-pubin] [-pubout]
[-engine id] [-des] [-des3] [-idea]

选项说明:

-inform PEM|NET|DER:输入文件格式,DER、PEM以及NET格式。DER格式采用ASN1的DER标准格式。一般用的多的都是PEM格式,就是base64编码格式。NET是为了和老的netscape server以及IIS兼容才弄出来的。他使用没有被salt过的RC4做加密算法,加密强度很底,如果不是一定要用就别用。

-outform PEM|NET|DER:输出文件格式,DER、PEM以及NET格式。同inform。

-in filename:输入的RSA密钥文件,默认为标准输入。

-out filename:RSA密钥输出文件,默认为标准输出。

-passin arg:指定私钥包含口令存放方式。比如用户将私钥的保护口令写入一个文件,采用此选项指定此文件,可以免去用户输入口令的操作。比如用户将口令写入文件“pwd.txt”,输入的参数为:-passin file:pwd.txt。

-passout arg:输出文件口令保护存放方式。

-sgckey:该选项是配合NET格式的私有密钥文件的一个选项。

-text:打印所有信息。

-noout:不打印信息。

-modulus:打印公钥信息。

-check:检查公司约是否匹配。

-pubin:设置此选项后,从输入文件中读取公钥值,默认读取的是私钥值。

-pubout:设置此选项后,保存公钥值到输出文件中,默认的是保存私钥值到输出文件中。

-engine id:指定引擎。

Ø  -des ,-des3, -idea, -aes128, -aes192, -aes256,-camellia128, -camellia192, -camellia256:指定的私钥保护加密算法。

注意:

PEM格式的私钥用下面的头部和底部:

-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----

PEM格式的公钥用下面的头部和底部:

-----BEGIN PUBLIC KEY-----
-----END PUBLIC KEY-----

B<NET>表单是一个兼容老的Netscape服务器和微软IIS的一种格式。密钥文件,这里使用不填充数据的RC4来加密,它不是安全的,当使用时候要小心。

实例:

生成明文私钥文件:

openssl genrsa -out key.pem

转换为DER编码:

openssl rsa -in key.pem -outform der -out key.der

将明文私钥文件转换为密码保护:

openssl rsa -inform der -in key.der -des3 -out enckey.pem

将公钥写入文件:

openssl rsa -in key.pem -pubout -out pubkey.pem

打印公钥信息:

openssl rsa -pubin -in pubkey.pem –text -modulus

显示私钥信息,保护密钥写在pwd.txt中

openssl rsa -in enckey.pem –passin file:pwd.txt

BUGs:

命令行选项中的密码选项目前不能工作于B<NET>格式。

应该有一个选项自动地去处理.key这种文件,不用手动的去编辑它们。

OpenSSL命令---rsa的更多相关文章

  1. 使用openssl命令剖析RSA私钥文件格式

    原文 https://blog.csdn.net/zhymax/article/details/7683925 Openssl提供了强大证书功能,生成密钥对.证书,颁发证书.生成crl.验证证书.销毁 ...

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

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

  3. OpenSSL命令系列

    1.1 ssl命令系列前言 openssl命令的格式是"openssl command command-options args",command部分有很多种命令,这些命令需要依赖 ...

  4. openssl命令用法

    openssl命令 配置文件:/etc/pki/tls/openssl.cnf 命令格式: openssl command [ command_opts ] [ command_args ] 众多子命 ...

  5. 使用openssl生成RSA公私密钥

    在windows 环境下 1.进入cmd命令窗口 切换到openssl程序目录下 2.输入openssl.exe,进入openssl命令模式下 3.生成私钥输入“genrsa -out app_pri ...

  6. OPENSSL中RSA私钥文件(PEM格式)解析【一】

    http://blog.sina.com.cn/s/blog_4fcd1ea30100yh4s.html 在PKCS#1 RSA算法标准中定义RSA私钥语法为: RSAPrivateKey ::= S ...

  7. 利用openssl进行RSA加密解密

    openssl是一个功能强大的工具包,它集成了众多密码算法及实用工具.我们即可以利用它提供的命令台工具生成密钥.证书来加密解密文件,也可以在利用其提供的API接口在代码中对传输信息进行加密. RSA是 ...

  8. openssl命令行工具简介 - 指令x509

    原文链接: http://blog.csdn.net/allwtg/article/details/4982507 openssl命令行工具简介 - 指令x509 用法:           open ...

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

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

随机推荐

  1. IIS启动网站

    在启动一个网站前要先打开一个服务.可是Windows 的提示非常的奇怪: “除非 Windows Activation Service (WAS)和万维网发布服务(W3SVC)均处于运行状态,否则无法 ...

  2. TCP/IP笔记 三.运输层(2)——TCP 流量控制与拥塞控制

    TCP 的流量控制与拥塞控制可以说是一体的.流量控制是通过滑动窗口实现的,拥塞避免主要包含以下2个内容: (1)慢开始,拥塞避免 (2)快重传,快恢复 1.流量控制——滑动窗口 TCP采用大小可变的滑 ...

  3. 脑波设备mindwaveTGC接口示例

    TGC是一个后台应用程序,它负责和脑波设备建立连接,并获取数据,另一方面,它打开了一个端口在监听,让二次开发的应用程序,可以通过socket连接到这个TGC后台程序,获取脑波数据并展示,这种接口适合非 ...

  4. NHibernate初入门之配置文件属性说明(四)

    一.NHibernate配置所支持的属性 属性名 用途 dialect 设置NHibernate的Dialect类名 - 允许NHibernate针对特定的关系数据库生成优化的SQL 可用值: ful ...

  5. SQL SERVER 2008 R2 自动备份并删除过期备份数据

        我们的系统维护的过程中肯定需要对数据库进行定期的备份,但是如果定时手工备份的话,不但浪费时间,也不能保证每次都可以按时备份,所以自动备份成为了我们的不二选择,但是定时备份需要定期清理备份文件, ...

  6. npm 安装

    1.https://nodejs.org/en/  下载node.js 控制台,查看node版本 C:\WINDOWS\system32>node --version  出现版本表示安装成功 2 ...

  7. linux:如何修改用户的密码

    1.首先,要用CRT软件连接Linux系统. 2.首选,确认是用root用户登录系统的. 输入命令: id ,查看登录用户信息. 3.若修改root自己的密码,直接输入 passwd . 输入两遍,新 ...

  8. List(双向链表)

    List是一种双向链表结构,可以从第一个元素开始删除.插入,也可以从最后一个元素删除.插入,下面介绍一下 List 中常用的几个函数: 一.List 中的 begin 和 end 函数 : 和其他几种 ...

  9. Lucence.Net+添加关键词+分页+排序

    1.使用queryparser完成解析搜索请求 2.基本格式如: QueryParser parser=new QueryParser("字段名称","分析器实例&quo ...

  10. pprint模块解析

    pprint模块提供了打印任意python数据结构的方法,如果这个数据结构不是python的基本类型,则可能无法打印结果.         pprint模块定义了一个类:         pprint ...