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$

相关推荐
PC2005-cloud3 小时前
博文已索引但不展示:一次 Bing SEO 问题排查记录
服务器·人工智能
沸速存储3 小时前
整机瓶颈判断思路,自上而下定位卡顿根源
运维·服务器·电脑·内容运营
乌萨奇也要立志学C++3 小时前
【Linux】网络基础 从零理解网络通信:局域网、跨网传输与 Socket 预备知识
linux·服务器·网络
2601_965798477 小时前
Is Hygia Good for Maid & Janitorial Sites? Technical Audit
服务器·网络·数据库
蚰蜒螟7 小时前
从内核源码看Linux启动:chroot、execve与MS_MOVE的协奏曲
linux·服务器·网络
来者皆善9 小时前
ZYNQ linux上使用 USB CDC ACM
linux·运维·服务器
缓慢更新9 小时前
企业档案管理系统迁移实录:从文件服务器到智能检索引擎
运维·服务器
Dawn-bit10 小时前
Linux磁盘分区与Swap和磁盘故障查询
linux·运维·服务器·网络·云计算
梦想三三10 小时前
LangChain Output Parser 实战:从字符串到结构化数据的完整指南
android·服务器·langchain·github·uv
netho011 小时前
影刀rpa证书题库使用教学
运维·服务器·rpa