1. 前言
OpenSSL提供了完整的安全通信所需的编码工具,诸如杂凑演算法(哈希算法),加解密演算法(加密/解密算法)及SSL / TLS协议的实现等。加上其开放源码的特性,使得许多开源专案或商业套件都有其踪迹.OpenSSL除了提供程式API扩充接口外,也有命令列模式的操作。
本专案主要使用C程式语言撰写,于Windows / Linux / BSD / MacOS下皆可运行。
官方网站:https://www.openssl.org/
软体授权:OpenSSL License或SSLeay License的双重授权
本篇文章为OpenSSL系列文章第三篇。常见的加解密演算法分为对称式与非对称式,有兴趣的使用者,可以在网路上搜寻相关的文章。本章节将介绍OpenSSL在非对称式加解密演算法的运用。本篇将着重于命令列模式下的非对称式加解演算法的操作。
2. 使用OpenSSL RSA演算法产生私钥
请使用“genrsa”为其参数,随后附上“-out”参数指定输出后的档案名称
$ openssl genrsa -out private.pem
Generating RSA private key, 512 bit long modulus
.++++++++++++
...++++++++++++
e is 65537 (0x10001)
执行后,OpenSSL预设会产生长度为512位的私钥。
我们可以使用额外指令参数来改成预设的私钥长度。例如,产生1024位长度的私钥,可以在上列指令的最后加上“1024”,如:
$ openssl genrsa -out private.pem 1024
Generating RSA private key, 1024<