当前位置: 首页 > 工具软件 > GnuPG > 使用案例 >

windows环境下php使用gnupg加密,Windows平台下GnuPG系列软件使用手册

杨起运
2023-12-01

-----BEGIN PGP SIGNED MESSAGE-----

Hash: SHA1

嘿,早想写这么个玩意了,结果搞了个有头无尾的残次品,把各位看官搅得更加糊涂,今天静下心来重新敲键盘

因Win系统的绝对垄断地位,所以此篇仅介绍Win平台下的GnuPG(或GPG)系列软件的作用及使用方法(重点)

Linux平台下的我就不管了,上手难GUI太多兼容性差Bug还多,而且居然不兼容Win版本(验证Win版本下的签名失败,并且用Win版本验证Linux下的签名也失败||-_-),不知是不是字符编码的问题

========================================================================

GnuPG全称GNU Privacy

Guard,是一款基于“非对称加密”或“公开密钥加密”的保护通信安全和创建签名的软件,主程序GPG为一基于“命令与提示符”界面的软件(Command

Line),并没有图形化界面;所以“好事之人”便做出了各式各样的图形化界面前端(GUI)但是主要操作还是由GPG完成的,各种各样的界面就是“外壳”,让使用者用着更爽一些

GPG允许用户以『钥匙对』的形式创建加密或解密文件。签名及验证签名功能也是程序的一部分。每一个『钥匙对』包含一个公钥(Public

Key)和一个私钥(Private Key)。用户可以同时拥有多对钥匙。这些钥匙将被用于加密,解密,签名及验证签名。

早些时候,人们用『相同』的密码来加密和解密同一文件,并且和需要解密的其他人分享这个密码。这就是所谓的『对称加密』。现在,我们用随机的超长二进制代码作为密码,又叫钥匙,可长达4096bit,并且这个钥匙再用一个使用者指定的口令(Passphrase)进行加密,输入正确的口令解密后即可使用这把钥匙。

前面提到每个钥匙对包含两把钥匙,公钥与私钥。顾名思义,私钥自然是要被保护的,而公钥是要被公开的,因为其他人发送给你的信息要用你的公钥加密。

加密后的密文,可以用你的密钥进行解密。一旦用公钥加密信息完成,其他人均不可解密,哪怕是发信的人自己也不行,只有用与『加密用的公钥』同时生成的密钥才可以解密。这样就保证了此信息『非你不能看』。用私钥加密亦然,只有公钥可解(其实这是『签名』,并不是加密……)。

软件,去GPG官方网站上,http://www.gnupg.org/download/index.en.html

向下拉,找到Binaries,阅读说明后可以很轻松的找到exe结尾的Win版本,下载之安装

不建议安装在C盘,其他的都无所谓

想偷懒的直接点此下载吧,只是随着版本的更新,不知道这个地址能保证多长时间有效

安装成功后即可在开始菜单找到GnuPG for Windows,不用管其他的,直接点WinPT,就是那个金钥匙的图标

一般不需要特别配置,如果提示找不到gpg.exe,那么就找到安装目录给WinPT手动指定,很简单。

接着就会提示你是否要创建/导入已存在的钥匙,作为示范,我就点创建了

接着会弹出向导,提示你输入邮箱和名字,在这里,邮箱要写真的,而名字则随便,可以写网名或者是其他的什么根据需要自行决定

下面那个Prefer RSA,是调整算法为RSA加密,默认为ELG算法,并没有那个比哪个更强,随你喜欢

接着,确认。弹出窗口,输入你想要的口令,跟网上注册论坛差不多

接着弹出一个蛮古怪的东西,显示生成钥匙对的过程(秘诀,多打开几个程序或者放放电影mp3一类的可以增强钥匙的强度并且加快生成钥匙的速度,因为生成过程中要使用的随机数基本都出自内存)

完成一般需要一分钟左右(其实有一些高级设置,比如调节钥匙的有效期及尺寸什么的,可以在主界面的Key-New-Expert里找到)

钥匙生成后提醒你是否要备份,这个看个人需要了,不过备份后的密钥最好放在一个别人碰不到的地方

U盘并不是一个很好的主意,我们的优盘都互相借来借去的,万一……或者我把其他人都想象的太邪恶了,但既然要加密,就滴水不漏好了,或者干脆加密后再保存,这样比较保险

今儿先到这儿,剩下的明儿再说

========================================================================

参考资料:

WinPT英文版帮助PDF,winpt-intro-1.1.1.pdf

Wiki的“公开密钥加密”“Public-key Cryptography”

-----BEGIN PGP SIGNATURE-----

Version: GnuPG v1.4.9 (MingW32) - WinPT 1.2.0

iEYEARECAAYFAkixt98ACgkQJdxQk5RD+jEQ1ACfRLWbWzYIjXtVsFrgUAa5Hz1H

bm4AoKJ563YCBPUQ/7m5mS9Lc128wc1d

=Qowu

-----END PGP SIGNATURE-----

 类似资料: