openssl genrsa 生成私钥

介绍

openssl genrsa 用于生成 rsa 私钥文件,生成时可以指定私钥长度和密码保护。

语法

openssl genrsa [-out filename] [-passout arg] [-des] [-des3] [-idea] [-f4] [-3] [-rand file(s)] [-engine id] [numbits]

一般使用:

root @ master # openssl genrsa -out rsa_pri.key 2048

Generating RSA private key, 2048 bit long modulus
................................+++
..............................................+++
e is 65537 (0x10001)

我们指定了密钥长度是 2048 bit,同时可以看到 e 的值是 65537,这不是一个错误,这是一个默认值,后面有讲。

密钥长度越长越安全,但使用密钥进行加解密时所耗费的时间也会变长,非对称密钥提高安全性的同时也带来了算法所耗费的大量时间,非对称密钥不对大块数据进行加密,应用领域是数字签名,密钥分发等小数据加密。

 

numbits   密钥长度(单位bit)

    openssl genrsa -out rsa_pri.key 1024

 

 

-passout arg

对生成的 rsa 私钥文件施加密码保护,例如:使用 idea 算法对私钥文件进行密码保护,加密的密码是 123456。

    openssl genrsa -idea -passout pass:123456 -out rsa_pri.key

 

-f4 / –3 指数(即 RAS 算法里的 e 指数,一般设置为 3 – 65537 之间的某个质数,例如 {3, 5, 17, 257 or 65537},默认是65537,必须是一个质数,值越大加密和解密耗费的时间越长),例如上例中输出的最后一句话,e is 65537 (0x10001)

-f4 -- use F4 (0x10001) for the E value
-3  -- use 3 for the E value

root @ master # openssl genrsa -3 -out rsa_pri.key 2048

Loading 'screen' into random state – done
Generating RSA private key, 2048 bit long modulus
......................+++
.............+++
e is 3 (0x3)

 

参考:

http://blog.csdn.net/fym0121/article/details/7987512

http://stackoverflow.com/questions/10736382/what-does-e-is-65537-0x10001-mean

你可能感兴趣的:(openssl genrsa 生成私钥)