使用 GPG 对数据进行加密解密签名

一:使用 GPG 对数据进行加密解密签名 基本的工具使用  

1. GPG 是GNUPG 免费开源的gpg加密工具,和同pgp兼容,pgp收费。

2. 在mac上使用 https://gpgtools.org/

   下载安装之后,打开GPG Keychain mac程序,

   可以点击新建创建一份自己的公钥和私钥,并把公钥上传到开源服务器上,各服务器间数据同步;

  

  创建完成之后!我们对一个文件加密,解密,签名验证签名就可以了!

   选中文件,右键,服务里面即可看到支持的工具

   

 

3. 在 windows 上使用 https://www.gpg4win.org/

   下载安装之后 File  new 同样新建立一份 公钥密钥对,也可以上传到开源公钥服务器,查询时以邮件为标识!

   

 

 

    同样,选中要加密或解密的文件 右键即可看到提供的服务

  

 

4. linux上直接安装 Gnupg源码,编译安装

   http://www.jianshu.com/p/268064e67719 

 

二:加密解密,签名使用的流程

大致流程:

用户A用户名B,分别生成各自的解密对,公钥A,公钥B,私钥A,私钥B;

数据uA.txt,uB.txt

签名:用户A用 私钥A签名uA.txt并把公钥A 发给用户B,用户B 用以上工具,先导入公钥A,然后验证签名;

加密:用户A 先导入用户B的,公钥B;然后用 公钥B加密uA.txt, 发送用户B,用户B收到后,用私钥B解密数据即可;

利用签名和RSA加密的机制,不仅可以确保数据安全,还可以确保数据未串改以及不可否认性

当然这里尤其重要的一点就是私钥,,为保证绝对安全,私钥是不能网络传输的;

 

以下演示在 mac上签名加密以 win上验证签名和解密

 mac 和win的密钥对交换需要提前导入,并设置互相信任对方的公钥

mac 上在列表中选中公钥,右键,细节--密钥---Ownertrust---选择信任程度

win上 在列表中选中公钥,右键,Change ownertrust---选择信任程序

1. 签名文件 以及加密文件  mac.txt (签名用的是mac的私钥,加密用的是win的 公钥)

 签名得到 mac.txt.sig

 加密得到 mac.txt.gpg

2. 在 win上 验证签名和解密 (验证签名用的是mac的公钥,解密用的是win 的私钥)

 

参考:其他基础请参考,RSA, 数字证书,签名,公钥密钥,非对称加密等知识

RSA

GPG

 

posted @   cocoajin  阅读(5027)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2013-10-17 gem 更新源设置,ruby安装
2013-10-17 git fatal: https://github.com/TeaCodie/TeaCodie-Website.git/info/refs not found: did you run git update-server-info on the server 错误
点击右上角即可分享
微信分享提示