OpenSSL是一個強大的加密工具包,它可以在命令行界面中執行各種加密和解密任務。以下是一些基本的OpenSSL命令行用法:
生成RSA私鑰:
openssl genrsa -out rsa_private_key.pem 2048
這條命令會生成一個2048位的RSA私鑰,并將其保存在rsa_private_key.pem文件中。
從私鑰生成證書簽名請求(CSR):
openssl req -new -key rsa_private_key.pem -out csr.pem
這條命令會使用私鑰生成一個證書簽名請求,并將其保存在csr.pem文件中。在執行此命令時,系統會提示你輸入一些信息,如國家、組織名稱等。
使用CA證書和私鑰簽發證書:
假設你有一個CA證書ca_certificate.pem和對應的私鑰ca_private_key.pem,以及一個CSR文件csr.pem,你可以使用以下命令來簽發證書:
openssl x509 -req -in csr.pem -CA ca_certificate.pem -CAkey ca_private_key.pem -CAcreateserial -out certificate.pem -days 365
這條命令會簽發一個有效期為365天的證書,并將其保存在certificate.pem文件中。
加密文件:
openssl enc -aes-256-cbc -salt -in plaintext.txt -out encrypted.txt -pass pass:your_password
這條命令會使用AES-256-CBC算法加密plaintext.txt文件,并將加密后的內容保存在encrypted.txt文件中。加密過程中使用的密碼是your_password。
解密文件:
openssl enc -d -aes-256-cbc -in encrypted.txt -out decrypted.txt -pass pass:your_password
這條命令會使用相同的AES-256-CBC算法和密碼your_password來解密encrypted.txt文件,并將解密后的內容保存在decrypted.txt文件中。
查看證書信息:
openssl x509 -in certificate.pem -text -noout
這條命令會顯示certificate.pem證書的詳細信息。
生成Diffie-Hellman參數和密鑰交換:
openssl dhparam -out dhparams.pem 2048
openssl genpkey -paramfile dhparams.pem -out dh_private_key.pem
openssl pkey -in dh_private_key.pem -pubout -out dh_public_key.pem
這些命令會生成Diffie-Hellman參數、私鑰和公鑰。
請注意,以上命令中的文件路徑和密碼應根據你的實際情況進行修改。此外,OpenSSL提供了許多其他功能和選項,你可以查閱其官方文檔以獲取更多信息。