OpenSSL命令之算法类大全

一 DH算法(Gendh/Dhparam/Dh)

1 gendh  
功能:用于生成DH参数。 
用法:openssl gendh [-out file ] [-rand ] [-engine e ]  
选项:
-out file 输出结果到file指定的文件,如果不指定,结果显示在屏幕屏幕上
-2 将2作为生成值,此为默认值
-5 将5作为生成值
-rand 指定随机数文件
-engine e 采用Engine生成;
例子1:将DH参数打印到屏幕
[root@localhost opensscommand]# openssl gendh
Generating DH parameters, 512 bit long safe prime, generator 2
This is going to take a long time
..........................++*++*++*++*++*++*
-----BEGIN DH PARAMETERS-----
MEYCQQD1x7k6EepYbX+TSDTsxGCA2rNxTgsFHg9nLXThBjU5hogTMfPcOGaZxJPL
W+gPiWmvCDmDa5T26Uy3lURwzrFLAgEC
-----END DH PARAMETERS-----
例子2:将DH参数打印到文件 CA_dh.pem
[root@localhost opensscommand]# openssl gendh -5 -out CA_dh.pem 1024
Generating DH parameters, 1024 bit long safe prime, generator 5
This is going to take a long time
..........................
[root@localhost opensscommand]# cat CA_dh.pem 
-----BEGIN DH PARAMETERS-----
MIGHAoGBAOOBKbr4HYu9SUHVeWkIypXKdMo4NpgNtERK6tm56CaZ1PzRQhHx/0h8
5I5qK8V40R+xmGmXcEM6mg/CEkdcMN64Q9H22aakXqhiGDVXXjbFm/i+jXmD8L98
Js1+eh5MSuebpdDoHy6T3QVa77nVvwx03+JrI0shjUc9XLH2TyMfAgEF
-----END DH PARAMETERS-----
2 dhparam和dh 
功能:dhparam为dh参数操作和生成工具,dh命令与dhparam用法大致一致,下面只给出了dhparam的说明。
用法:openssl dhparam [-inform DER|PEM] [-outform DER|PEM] [-in filename] [-out filename] [-dsaparam] [-noout] [-check] [-text] [-C] [-2] [-5] [-rand file(s)] [-engine id] [numbits] 
选项:
-inform DER|PEM 输入文件格式,DER或者PEM格式。
-outform DER|PEM 输出文件格式,DER或者PEM格式。
-in filename 读取DH参数的文件,默认为标准输入。
-out filename dh参数输出文件,默认为标准输出。
-dsaparam 生成DSA参数,并转换为DH格式。
-noout 不输出信息。
-text 打印信息。
-check 检查dh参数。
-C 以C语言风格打印信息。
-2,-5 指定2或5为发生器,默认为2,如果指定这些项,输入DH参数文件将被忽略,自动生成DH参数。
-rand files 指定随机数种子文件。
-engine id 指定硬件引擎。
-numbits 指定素数bit数,默认为512。 
例子1:将DH参数输出到文件dhparam.pem 
[root@localhost opensscommand]# openssl dhparam -out dhparam.pem -text 512
Generating DH parameters, 512 bit long safe prime, generator 2
This is going to take a long time
...............................
[root@localhost opensscommand]# cat dhparam.pem 
    PKCS#3 DH Parameters: (512 bit)
        prime:
            00:8b:fa:d6:58:ab:93:69:ab:61:23:87:e4:7e:4e:
            26:8e:9b:c4:d4:03:12:56:22:ee:e7:ea:b8:e2:7a:
            d2:04:f6:f4:4f:d5:3e:11:70:63:8e:ec:d1:85:40:
            95:79:52:c5:7b:5f:06:46:19:b2:b0:35:e3:40:97:
            a0:de:c6:cf:d3
        generator: 2 (0x2)
-----BEGIN DH PARAMETERS-----
MEYCQQCL+tZYq5Npq2Ejh+R+TiaOm8TUAxJWIu7n6rjietIE9vRP1T4RcGOO7NGF
QJV5UsV7XwZGGbKwNeNAl6Dexs/TAgEC
-----END DH PARAMETERS-----
例子2:检查生成的DH参数
[root@localhost opensscommand]# openssl dhparam -in dhparam.pem -text -check
    PKCS#3 DH Parameters: (512 bit)
        prime:
            00:8b:fa:d6:58:ab:93:69:ab:61:23:87:e4:7e:4e:
            26:8e:9b:c4:d4:03:12:56:22:ee:e7:ea:b8:e2:7a:
            d2:04:f6:f4:4f:d5:3e:11:70:63:8e:ec:d1:85:40:
            95:79:52:c5:7b:5f:06:46:19:b2:b0:35:e3:40:97:
            a0:de:c6:cf:d3
        generator: 2 (0x2)
DH parameters appear to be ok.
-----BEGIN DH PARAMETERS-----
MEYCQQCL+tZYq5Npq2Ejh+R+TiaOm8TUAxJWIu7n6rjietIE9vRP1T4RcGOO7NGF
QJV5UsV7XwZGGbKwNeNAl6Dexs/TAgEC
-----END DH PARAMETERS-----
 
二 摘要算法(Dgst)
1 dgst
功能:用于数据摘要。
用法:openssl dgst [-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1 ] [-c] [-d ] [-hex] [-binary] [-out filename] [-sign filename] [-passin arg] [-verify filename] [-prverify filename] 
[-signature filename ] [file...]
选项:
-d 打印调试信息。
-sign privatekeyfile 用privatekeyfile中的私钥签名。
-verify publickeyfile 用publickeyfile中的公钥验证签名。
-prverify  privatekeyfile 用privatekeyfile中的私钥验证签名。
-keyform PEM|ENGINE 密钥格式,PEM格式或者采用Engine。
-hex 显示ASCII编码的十六进制结果,默认选项。
-binary 显示二进制数据。
-engine e 采用引擎e来运算。
-md5 默认选项,用md5进行摘要。
-md4 用md4摘要。
-md2 用md2摘要。
-sha1 用sha1摘要。
-sha 用sha摘要。
-sha256 用-sha256摘要。
-sha512 用sha512摘要。
-mdc2 用mdc2摘要。
-ripemd160 用ripemd160摘要。
例子1:各种方式显示摘要值
[root@localhost opensscommand]# openssl dgst -hex a.txt
MD5(a.txt)= 65cf359cb255f94f9649133d6200b8b9
[root@localhost opensscommand]# openssl dgst -binary a.txt
e?.U..=b腹
[root@localhost opensscommand]# openssl dgst -hex -c a.txt
MD5(a.txt)= 65:cf:35:9c:b2:55:f9:4f:96:49:13:3d:62:00:b8:b9
例子2:将文件a.txt用sha512摘要,并用prikey.pem中的私钥签名。
[root@localhost opensscommand]# openssl dgst -sign prikey.pem -sha512 -out CA_sigDgst.pem a.txt
Enter pass phrase for prikey.pem:
[root@localhost opensscommand]# cat CA_sigDgst.pem 
5$.捻?ㄩL7.?颀.`%.5?T/x??Z?
                                     .5??F?=?.p.g..?l??OS.?架I耵饷|io:&Q??'.on
                                                                                                      nAv讧?L?0.妫.
三 RSA(Genrsa/Rsa/Rsautl)
1 Genrsa   
功能:生成RSA密钥 
用法:Openssl >genrsa [-out filename] [-passout arg] [-des3] [-rand files] [-engine id] [-numbits] 
选项:
-des/des3/idea/aes128/aes192/aes256  以des/des3/idea/aes128/aes192/aes256模式加密密钥
-out file 输出文件
-f4/3 指定E 为f4/3 
-rand file 指定随机数种子文件
-numbits 密钥长度,默认为512
例子1: 生成秘钥文件 CA_rsa_key.pem,并要 aes256模式加密秘钥文件。
openssl genrsa -aes256 -out CA_rsa_key.pem -f4 1024  
[root@localhost ~]# openssl genrsa -aes256 -out CA_rsa_key.pem -f4 1024
Generating RSA private key, 1024 bit long modulus
............++++++
.......................++++++
e is 65537 (0x10001)
Enter pass phrase for CA_rsa_key.pem:
Verifying - Enter pass phrase for CA_rsa_key.pem:
2 Rsa
功能:用于处理RSA密钥、格式转换和打印信息。
用法:openssl rsa [-inform PEM|NET|DER] [-outform PEM|NET|DER] [-in filename] [-passin arg] [-out filename] [-passout arg] [-sgckey] [-des] [-des3] 
[-idea] [-text] [-noout] [-modulus] [-check]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值