加载中...

如何创建并与他人交流使用PGP密钥加密?


如何创建并与他人交流使用PGP密钥加密?

GPG,又称为GnuPG,全称是Gnu Private Guard,即GNU隐私卫士。GPG是以PGP算法为核心的强大的加密软件。但GPG项目是一套命令行程序,而且是为 Linux 等开源操作系统设计的。那么在Windows平台下如何使用GPG呢?不用担心,Gpg4win就是Windows平台GPG及图形前端的集合安装包。

简单介绍一下,Gpg4win是一款非对称加密方式软件。简单来讲,就是用公钥加密文件,用私钥解密文件。如果你需要发送加密信息,首先获取接收者的公钥,然后利用该公钥加密后传递,对方利用公钥对应的私钥就可解密。也就是说,公钥是锁,私钥是钥匙。非对称加密方式很好地解决了传递机密信息的问题。

下载安装Gpg4win

请到官方网站下载:http://www.gpg4win.org/
之后运行安装程序,保持默认设置即可。安装完成后会要求设置信任的根证书,勾选下方的Root certificate defined or skip configuration(根证书已定义或跳过设置)即可。安装好后叫Kleopatra

创建密钥对

  1. 运行Kleopatra,点击: 新建OpenPGP密钥对,会弹出OpenPGP证书创建向导
  2. 填入名字、电子邮箱地址。(填写了电子邮件就可以在后面上传密钥服务器让别人搜邮箱地址到你的证书)
  3. 点击Advanced Settings,可以进行高级设置,为了增强安全性,建议Key Material栏选择最长的4096 bits,你也可以勾选使用密码句保护生成的密钥,当然,可有可无
  4. 点击OK,如果你勾选使用密码句保护生成的密钥,那么这一步会要求你输入密码,请一定要牢记!以后使用都要密钥!
  5. 在创建的过程中,可以在随便上网读写磁盘,电脑将利用IO生成随机数。
  6. 创建完成!

上传公钥到PGP公钥服务器

公钥加密信息发给私钥持有人,私钥持有人使用私钥解密。如果想要别人给你发送加密信息,别人就要知道你的公钥才行。公钥之所以称为公钥,就是因为它是公开的。接下来,我们需要把自己的公钥公之于众,上传到专门的服务器上。这里以上传到MIT的PGP公钥服务器为例。

  1. 在Kleopatra主界面右键点击要导出的秘钥,点击导出或按CTRL+E,输入保存路径和文件名,点击保存后会得到一个asc文件。
  2. 使用文本编辑器(记事本、Visual Code)打开刚才生成的asc文件,复制全部内容。
  3. 使用浏览器访问MIT的PGP公钥服务器http://pgp.mit.edu/,将刚才复制的内容黏贴到“Submit a key”下方的文本框里,点击Submit this key to the key server!。上传成功后,别人搜索你的邮箱即可获取你的公钥。

反过来,如果你想给别人发送加密信息,就需要获取他的公钥。假如我想发送给Ethaniel@100713.xyz,则需要通过以下步骤获取相应的公钥。

  1. 使用浏览器访问MIT的PGP公钥服务器http://pgp.mit.edu/,在“Extract a key”下方的文本框输入Ethaniel@100713.xyz,如下图所示。之后点击Do the search!。
  2. 在搜索结果页中点击相应的keyID,会进入一个有一长串乱码的页面。复制该页面的全部内容。
  3. 新建并打开文本文档,粘贴刚才复制的内容,保存。文件名随意,例如“123.asc”。
  4. 在Kleopatra主界面点击左上角的文件——导入或按CTRL+I,选择刚才保存的文件,点击打开。这样就成功导入了一个公钥。或者直接拖动刚刚保存的文件到Kleopatra

加密文本

下面的例子将演示如何加密一段文本并通过邮件发送给别人。

  1. 新建并打开文本文档,输入你想要加密的文本(即原文),保存。文件名随意,例如“666.txt”。(你也可以加密其他已有文件哦,直接跳过该步骤)
  2. 在Kleopatra主界面点击签名/加密,选择刚才保存的文本文档或其他你想加密的文件。
  3. 之后弹出的窗口中间有3个可勾选的选项,分别是签名身份、为我加密、为他人加密。这里勾选为我加密就好。
  4. 点击加密,出现“加密成功”就是成功了(废话)
  5. 加密后的文件会在文件的同一路径生成一个相同名称后缀是gpg的文件,将这个文件发给目标即可,你也可以用文本编辑器(记事本、Visual Code)打开该文件复制里面的密文发送

解密文本

下面的例子将演示如何解密一封收到的密文。

  1. 复制收到的密文,新建并打开文本文档,粘贴,保存。文件名随意,例如“999.txt”。(如果是gpg文件跳过该步骤)
  2. 在Kleopatra主界面点击 解密/校验,选择刚才保存的文本文档或gpg文件。
  3. 点击解密(如果没有刚刚创建密钥没设密码那么跳过下一步)
  4. 之后会要求你输入密码,就是你刚刚创建密钥时输入的那个,点击解密。
  5. 解密完成后,点击OK。
  6. 在输出路径找到解密后的文件(和原文件同名)解密前是啥样解密后就啥样。

  目录