RSA加解密

linux

生成秘钥对

# 生成一个私钥
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048
cat private_key.pem
# -----BEGIN PRIVATE KEY-----
# ...
# -----END PRIVATE KEY-----

# 生成一个公钥文件
openssl rsa -pubout -in private_key.pem -out public_key.pem
cat public_key.pem
# -----BEGIN PUBLIC KEY-----
# ...
# -----END PUBLIC KEY-----

加解密

# 加密文件
openssl rsautl -encrypt -inkey public_key.pem -pubin -in plain_text.txt -out encrypted_data.bin
# 加密字符串 (结果转base64便于复制)
echo -n 'Hello, World.' | openssl rsautl -encrypt -inkey public_key.pem -pubin | base64

# 解密文件
openssl rsautl -decrypt -inkey private_key.pem -in encrypted_data.bin
# 解密字符串
ENCRYPTED_CONTENT=$(cat <<EOF
FiZEp6/MOQJmy1ORLsvMfkMw5i9Y5/iq/OKg92nEX2icwktI/10kLEhMKy+v9/pHbcVM506pqR1g
xm1234qDhAeluZHTunXd01mA8MEFPMw7VgUTPkcm7CiDieyrZG9tBDevLhtFN+iM1yZqGL5raCgS
7J/kgrj7O2km4b54GG7yo9tNT6Z6PqMxHT6nb6mx4+QROF+F6YHp//piKIHk97YXfugSH0JA9Zfn
EylgkwrCM0BwTEDFjPjTd2geJW9oJAOob9O+L75wAiP2UHS2AfTyUAOBjTwt0GhDDPxqWjrxTNxU
9RZbSiWiVEzOQlUHQ3emZhhTlP8w78/x3uH32A==
EOF
)
echo "$ENCRYPTED_CONTENT" | base64 -d | openssl rsautl -decrypt -inkey private_key.pem
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值