OpenSSL是一個強大的加密工具包,它可以在Linux命令行中使用。以下是一些基本的OpenSSL命令行用法:
生成RSA密鑰對:
openssl genrsa -out rsa_key.pem 2048
這將生成一個2048位的RSA私鑰,并將其保存到rsa_key.pem文件中。
從私鑰生成CSR(證書簽名請求):
openssl req -new -key rsa_key.pem -out csr.pem
這將使用之前生成的私鑰創建一個CSR,并將其保存到csr.pem文件中。在執行此命令時,系統會提示您輸入一些信息,如國家、組織名稱等。
使用CA證書簽發CSR:
假設您有一個CA證書ca_cert.pem和對應的私鑰ca_key.pem,您可以使用以下命令簽發CSR:
openssl x509 -req -in csr.pem -CA ca_cert.pem -CAkey ca_key.pem -CAcreateserial -out certificate.pem -days 365
這將生成一個有效期為365天的證書,并將其保存到certificate.pem文件中。
查看證書信息:
openssl x509 -in certificate.pem -text -noout
這將顯示證書的詳細信息。
加密文件:
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt
這將使用AES-256-CBC算法加密plaintext.txt文件,并將加密后的內容保存到encrypted.txt文件中。在執行此命令時,系統會提示您輸入一個密碼。
解密文件:
openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt
這將使用相同的密碼解密encrypted.txt文件,并將解密后的內容保存到decrypted.txt文件中。
生成Diffie-Hellman參數和密鑰對:
openssl dhparam -out dhparams.pem 2048
openssl genpkey -paramfile dhparams.pem -out dh_key.pem
這將生成Diffie-Hellman參數并將其保存到dhparams.pem文件中,然后使用這些參數生成一個DH密鑰對并將其保存到dh_key.pem文件中。
生成ECC密鑰對:
openssl ecparam -name secp384r1 -genkey -noout -out ecc_key.pem
這將生成一個ECC密鑰對(使用secp384r1曲線)并將其保存到ecc_key.pem文件中。
這些只是OpenSSL命令行工具的一些基本用法。OpenSSL提供了許多其他功能和選項,您可以通過閱讀其手冊頁(man openssl)或在線文檔來了解更多信息。