openssl 加密(encrypt)、解密(decrypt)、签名(sign)、验证(verify)

一、使用openssl rsautl 进行加密、解密、签名、验证

javascript 复制代码
[kyzjj@yyzc-zjjcs04 openssl]$ openssl rsautl --help
Usage: rsautl [options]
-in file        input file
-out file       output file
-inkey file     input key
-keyform arg    private key format - default PEM
-pubin          input is an RSA public
-certin         input is a certificate carrying an RSA public key
-ssl            use SSL v2 padding
-raw            use no padding
-pkcs           use PKCS#1 v1.5 padding (default)
-oaep           use PKCS#1 OAEP
-sign           sign with private key
-verify         verify with public key
-encrypt        encrypt with public key
-decrypt        decrypt with private key
-hexdump        hex dump output
-engine e       use engine e, possibly a hardware device.
-passin arg    pass phrase source
[kyzjj@yyzc-zjjcs04 openssl]$

二、使用私钥签名openssl rsautl -sign

javascript 复制代码
[kyzjj@yyzc-zjjcs04 openssl]$ cat test
hello world
[kyzjj@yyzc-zjjcs04 openssl]$ openssl rsautl -sign  -inkey private.key  -in test -out sign-test
[kyzjj@yyzc-zjjcs04 openssl]$

三 、使用公钥验证openssl rsautl -verify

javascript 复制代码
[kyzjj@yyzc-zjjcs04 openssl]$ openssl rsautl -sign  -inkey private.key  -in test -out sign-test
[kyzjj@yyzc-zjjcs04 openssl]$ openssl rsautl -verify  -inkey  public.key  -pubin    -in sign-test
hello world
[kyzjj@yyzc-zjjcs04 openssl]$

上述方式可以确认身份,如果我用这个公钥能解密,那一定是你发送的,因为私钥只有你有

四、使用公钥加密

kyzjj@yyzc-zjjcs04 openssl\]$ openssl rsautl -encrypt -inkey public.key -pubin -in test -out en-test \[kyzjj@yyzc-zjjcs04 openssl\]$ # 五、使用私钥解密 \[kyzjj@yyzc-zjjcs04 openssl\]$ openssl rsautl -decrypt -inkey private.key -in en-test hello world \[kyzjj@yyzc-zjjcs04 openssl\]$

相关推荐
Liangwei Lin10 小时前
LeetCode 76. 最小覆盖子串
运维·服务器
Mortalbreeze10 小时前
深度理解进程----进程状态
linux·运维·服务器
艾莉丝努力练剑10 小时前
【Linux网络】Linux 网络编程入门:TCP Socket 编程(下)
linux·运维·服务器·网络·c++·tcp/ip
宵时待雨10 小时前
linux笔记归纳4:进程概念
linux·运维·服务器·c++·笔记
一勺菠萝丶10 小时前
如何在 Linux 服务器上使用 Speedtest 官方 CLI 测试带宽(小白教程)
java·服务器·前端
原来是猿10 小时前
TCP Echo Server 深度解析:从单进程到线程池的演进之路(中)
linux·服务器·数据库
xlq2232212 小时前
52.TcpSocket
linux·服务器·网络
сокол12 小时前
【网安-Web渗透测试-内网渗透】内网横向移动——IPC连接
服务器·windows·网络安全·系统安全
jimy112 小时前
Oracle的always free账户,提高网络使用率的保活脚本
服务器·网络·oracle
xhbh66612 小时前
TCP端口转发不生效?IP转发、防火墙、SELinux排查手册
服务器·ip·端口流量转发·路由端口转发·ip隐藏·tcp 端口转发