gpg 对称和非对称方式加密尝试

1. gpg 加密分为对称加密, 和非对称加密

对称加密:

  使用同一个key 去解密;

  #gpg -e  输入password加密

  #gpg -d 输入password解密

非对称加密:

他人用我的公钥来加密,我自己用私钥来解密

 

2. 非对称加密:

比如:在hostB主机上用公钥加密,在hostA主机上解密

2.1 在主机A上使用 #gpg --gen-key 生成公钥/私钥对

具体生成时需要选择加密算法,加密长度等配置信息, 并输入私钥

 可参考 https://blog.csdn.net/vic_qxz/article/details/127225478

2.2 # gpg --list-keys  查看公钥 

2.3 # gpg -a --export -o testqin.pubkey  导出主机A的公钥

2.4 #gpg --import testqin.pubkey  使用公钥文件,在主机B上导入A的公钥;导入后还可以通过gpg --list-keys 查看A的公钥是否导入成功。

  import成功之后,如果要修改当前public key的安全性,可以如下:

  >gpg --edit testqin@163.com (如果出现-edit option is ambiguous 的错误,可能是gpg版本不一样,help 看一下,可能需要换成gpg --edit-key xxx)

  >trust

  >5

  >y

  >quit

2.5 在主机B上,使用A的公钥来加密B上的文件test.txt

#gpg -e -r testqin@163.com test.txt  

会生成相应的test.txt.gpg 文件; 除了使用testqin@163.com 邮箱,还可以使用pubkey name , 或者pubkey ID, 比如如下圈出来的三个部分,不同gpg版本显示不同。

2.6 把test.txt.gpg 文件放到主机A上,进行解密:

#gpg -d test.txt.gpg 输入A的私钥

注: test.txt.gpg 文件在主机B上是不能解密的,会出现如下报错:

 使用步骤可参考:https://codeleading.com/article/89021629385/

2.7 尝试:

2.7.1 如果A 配置的是RSA 算法, B配置的是DSA+ELG机密算法,两者依然可以通过提供公钥来实现加密传输;

2.7.2 及时主机B不做gpg gen key的配置, 只要安装了gpg, 依然可以通过A的公钥来加密文件,再传给A。

2.7.3 public key即使不上传到公网(https://keys.openpgp.org),也可以使用他的publick key来加密(只不过可能会涉及到另一个话题,使用公钥证书的安全性)

 

posted @   123容之  阅读(171)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示