openssl是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及ssl协议,并提供丰富的应用程序供测试或其它目的使用。对应的命令就是openssl命令,用于加密算法。
语法格式
openssl [参数]
常用参数:
-in | 输入 |
-out | 输出 |
参考实例
用sha1算法计算文件file.txt的哈西值,输出到stdout:
[root@coonote ~]# openssl dgst -sha1 file.txt
用sha1算法计算文件file.txt的哈西值,输出到文件digest.txt:
[root@coonote ~]# openssl sha1 -out digest.txt file.txt
对称加密应用例子,用des3算法的cbc模式加密文件plaintext.doc,加密结果输出到文件ciphertext.bin:
[root@coonote ~]# openssl enc -des3 -salt -in plaintext.doc -out ciphertext.bin
des3算法的ofb模式解密文件ciphertext.bin,提供的口令为trousers,输出到文件plaintext.doc:
[root@coonote ~]# openssl enc -des-ede3-ofb -d -in ciphertext.bin -out plaintext.doc -pass pass:trousers
生成1024位dsa参数集,并输出到文件dsaparam.pem:
[root@coonote ~]# openssl dsaparam -out dsaparam.pem 1024
使用参数文件dsaparam.pem生成dsa私钥匙,采用3des加密后输出到文件dsaprivatekey.pem:
[root@coonote ~]# openssl gendsa -out dsaprivatekey.pem -des3 dsaparam.pem
产生1024位rsa私匙,用3des加密它,口令为trousers,输出到文件rsaprivatekey.pem:
[root@coonote ~]# openssl genrsa -out rsaprivatekey.pem -passout pass:trousers -des3 1024