千家信息网

利用Gpg4win来打造一个安全的加密文件

发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,出于工作需要,最近我在研究文件加密,正好找个工具说一说。一、加密模式简述加密工具基于算法模式,一般分两类,一类是对称加密,一种是非对称加密。前者加密和解密使用一套密钥,常用于密码式加密;后者非对称加密
千家信息网最后更新 2025年02月05日利用Gpg4win来打造一个安全的加密文件

出于工作需要,最近我在研究文件加密,正好找个工具说一说。

一、加密模式简述

加密工具基于算法模式,一般分两类,一类是对称加密,一种是非对称加密。前者加密和解密使用一套密钥,常用于密码式加密;后者非对称加密,加密和解密使用两套密钥:一般为公钥加密,私钥解密。

文件加密主要是为了安全,诚然很多软件本身也携带加密功能,但基于对称加密的密码模式,安全性值得商榷。今天我不讨论加密原理,只是实际操作一下来向大家展示非对称加密工具的实践。
在windows平台下,Gpg4win无疑是比较好用的一款非对称加密软件。
官方地址:pgp4win 最新版本为3.0.3

工具是免费的,但是我在下载的时候遇到了捐款提示,如果没有paypal没啥问题。如果有,注意留神是否要捐款。 :)

二、安装Gpg4win

WINDOWS下的软件只要不涉及配置安装一般都是一路next即可
1、程序包

  1. 好消息是,这个软件有中文语言,开心不?
  2. 出现中文语言的安装向导
  3. 有必选和可选,具体功能请自行研究

    5.安装完成,图标如下

    三、创建公私秘钥对

  4. 第一次启动程序后默认是没有秘钥对,需要手工创建,点击"创建密钥对"
  5. 创建秘钥需要2个参数,名字和电子邮件,电子邮件地址无需真实邮箱,地址格式符合即可,如下

    3.在正式创建前后要求你再次检查
  6. 然后要提示你属于用于保护你秘钥的密码,会根据你的密码强度进行建议

    5.创建秘钥对需要一定的计算时间

    6.创建完成提示你保存副本或发送公钥等

    7.会在主界面展示
    .

    四、公私钥加密测试

1、前提准备

我准备了3个文本文件用于测试,分别如下

2、加密一个自己用的文件

1.点击签名/加密按钮

  1. 本次我选择z00w00.txt 文件,然后选择为我加密

    3.这个时候要输入刚才提示的密码了。这样的好处是防止别人偷用你的电脑帮你加密

    4 成功后会提示
    5.此时桌面会生成z00w00.txt.gpg文件

    6.这个文件拿到别的计算机上是不打开的
  2. 即使用记事本打开也一定是乱码
  3. 即使别人拿到了文件,并安装了软件,由于没有私钥,也不能解密打开,如下

以上就是保护自己文件的实操说明,这样你就不用担心女票经常检查你的电脑发现你有×××姐视频的不良记录了
^_^

3、加密文件给别人

下面重点说另一个问题,如何加密文件,只有指定的人才能打开

前提1: 对方需安装该软件(貌似废话)

前提2:你需要有对方的公钥

再次强调,公钥加密,私钥解密

为了完成这个测试 ,我另找了一台计算机,软件软件,创建密钥对如下:

1、导出导入公钥

现在完成2个动作

  1. 导出it-dream的公钥
  2. 导入it-dream的公钥到z00w00下
  • 导出公钥如下:
    记得选中(高亮),然后导出

会导出如下类似文件

  • 导入公钥到z00w00

至此导入完成

2、加密与解密

选择,为他人加密并勾选他人的公钥

继续会提出一个警告,继续即可

加密成功会有提示

由于使用对方公钥加密,如果原始文件丢失,你无法进行解密回原始文件

现在我们让it-dream来解密吧

由于含有签名,且z00w00并没有把公钥给it-dream,所以会报如下

这次我们导入z00w00的公钥给it-dream就OK了

这样就看到了原始文件

粗体显示的是自己的秘钥

五、只签名不加密

文件签名用于对文件本身进行保护,如果原始文件被人篡改,可以证明不是原作者本人。此功能常用于软件发布,很多软件开发者为了防止自身发布的软件被反编译注入有害代码,特使用签名方式保护软件本身。

1、我们对z00w002.txt进行签名,先看原始内容

2、取消加密勾选,输出签名文件

3、输出签名文件

4、现在,我们可以把签名文件z00w002.txt.sig和原始文件z00w00.txt 发给目标接受者。
在文件没有改动时,验证文件如下:

5、现在我们篡改原始文件,增加文字如下

6、此时再进行校验,一定会报异常

我在实际测试时,使用签名验证,在程序执行完成时,总会报程序异常终止,经过2套系统测试,排除某WINDOWS系统的问题,初步认为是软件兼容性的问题

0