Linux下的密钥管理Seahorse使用教程

Seahorse是一个GnuGP图形用户界面的GNOME程序,用户可以用来设置并管理其GnuPG密钥。那GnuPG又是什么呢?Werner Koch与Phil Zimmermann开发了一个用于数据加密和数字签名的程序PGP (Pretty Good Privacy) ,是一款基于“非对称加密”或“公开密钥加密”的保护通信安全和创建签名的软件,由于被广泛应用以至于后来形成一个开放的标准 OpenPGP ,而 GnuPG  则是实现了该标准的一个开源程序。

  Seahorse加密和数字签名原理:

使用程序生成地球上惟一的一对钥匙,分别称为公钥和私钥。公钥用于加密,私钥用于解密。使用公钥加密过的信息只能由配对的私钥解开;
公钥可以发给任何人,是公开的, 私钥就要保密的, 别人用你的公钥加密一个文件只能用对应的私钥来解密,所以这叫加密;;
你自己用私钥签署一个文件, 任何人用那个公钥来检查这个文件,得出签名用的私钥ID和指纹, 跟你公钥中的信息对比, 这就叫签名 ;
加密和签名很多时候是一起用的,比如你给一个人发文件,就是用对方的公钥加密,用自己的私钥签名, 别人收到后,如果没有私钥就不知道文件内容,没有你的公钥就不能查看签名
  说了一大堆是不是很难看懂?那就用通俗点的例子再来说一下,还得讲一大堆。

  随着互联网的普及,很多公司在各部门或是子公司之间经常需要通过互联网共享或传输一些重要的数据或文件,以财务系统的数据来说,除了要求保密性外,对准确性也有严格的要求,这个时候就需要一个 GnuPG来保证中间数据严谨安全的传输。

  我们以CentOS+seahorse为例来进行讲解,CentOS默认情况下是没有安装Seahorse密钥管理器插件(seahorse-plugins)的,右键看不到文件加密与签署选项,无法通过图形化的界面(该插件集成在Nautilus文件浏览器中)来对文件进行加密或签署操作。这个没关系,我们进入终端安装下就OK,


yum install seahorse-plugins
  安装完成后需要注销下系统才能在文件管理器中看到“加密”和“签署”两项。

  Seahorse应用实例:

  某公司集团财务与子公司财务为保证文件的完整准备和传输安全,通过seahorse进行密钥处理与签名。
  集团财务部门:
  命令行下运行seahorse或依次点击菜单“应用程序→附件→密码和加密密钥”,

  我们需要的是进行文件加密,所以依次打开“文件-运行”,新建一个PGP密钥,


  然后输入你的相关认证信息,


  点击创建后还会让你输入你的私钥的密码。

  这一切完成后就出现第回到图一的样子,在“我的个人密钥”中右键导出刚才新建的密钥,默认是asc后缀的文件。我们需要将此文件发送给子公司的财务部。

  子公司财务部:
  子公司的财务部门同样打开seahorse,选择“文件-导入”将集团公司发送过来的公钥导入进来,然后打开本地电脑将需要上报给集团的文件右键加密。


  然后选择集团的那个公钥后,点击确定。


  在目录内就会生成一个同名但后缀为PGP的文件,这个文件是只有拥有集团财务私钥密码的人才能打开的,包括本地电脑没有私钥也不能打开加密后的文件。将此文件发送给集团财务,集团财务在文件上“右键-使用解密文件打开”,输入密码后即可查看文件。
  这样做的好处是在数据传输过程中,即使有第三方服务商或是溴侦软件拦截到相关数据也无法查看数据内容,最大程序保证了数据传输的安全。
实例中讲解的是从子公司向集团上报数据,同理,集团向子公司下发文件也一样,只需要导入子公司生成的公钥即可。

  Seahorse文件签名的用法

  与文件加密差不多,也需要导入相关的公钥,子公司在文件上“右键-签署“,

  选择子公司的私钥后点击确定,后生成一个后缀为sig的文件,

  将两个文件发送到集团后,集团可以通过sig文件确认传输后没有经过任何人修改。

  虽然文章标题叫seahorse使用教程,开头讲过seahorse实际上只是一个带图形界面的GnuPG ,GnuPG 是一个跨平台、开源并且免费的软件,在理解工作原理后,Windows系统下安装GnuPG 后使用起来是一样的。

推广推荐

Proudly powered by WordPress | IEWB.NET 2009-2021 版权所有