在 Linux 下使用 OpenSSL 加密,常见有几种场景。下面按最常用、最实用的方式给你讲,并附上命令示例。
openssl enc -aes-256-cbc -salt -in 原文件 -out 加密文件
示例:
openssl enc -aes-256-cbc -salt -in test.txt -out test.txt.enc
执行后会提示输入密码。
openssl enc -d -aes-256-cbc -in 加密文件 -out 解密文件
示例:
openssl enc -d -aes-256-cbc -in test.txt.enc -out test.txt
openssl enc -aes-256-cbc -salt -in file.txt -out file.txt.enc -pass pass:123456
openssl enc -d -aes-256-cbc -in file.txt.enc -out file.txt -pass pass:123456
openssl enc -aes-256-cbc -salt -in file.txt -out file.txt.enc -a
解密:
openssl enc -d -aes-256-cbc -in file.txt.enc -out file.txt -a
openssl genrsa -out private.pem 2048
openssl rsa -in private.pem -pubout -out public.pem
openssl rsautl -encrypt -inkey public.pem -pubin -in file.txt -out file.enc
openssl rsautl -decrypt -inkey private.pem -in file.enc -out file.txt
⚠️ 注意:RSA 不能直接加密大文件,通常用来加密「对称密钥」。
openssl list -ciphers
des、rc4 等老算法如果你告诉我:
我可以给你更精确的方案。