开放源代码的加密工具GPG使用方法
佚名
GPG和PGP是两种加密软件,你可以通过公钥在网上安全的传播自己的文件。我前些日子使用了GPG,感觉很方便,使用中也遇到了一些问题。所以把我的使用经过写出来,目的是让初次使用GPG的朋友少走弯路。
先说说GPG的获得吧,GPG是开放源代码的软件,是完全免费的,大家可以到www.gnupg.org下载。如果使用 Mandrakelinux或Debian发行版可以直接下载。我使用的是Mandrakelinux,只要在终端中输入urpmi gpgp就可以下载和安装。
安装好后我们在终端下输入:gpg --help 可以看到GPG的版本信息和帮助。这表示GPG已经装好了。
下面我们来生成密钥,键入:gpg --gen-key 这时将出现几个选项,需要我们来选择:
gpg (GnuPG) 1.4.0; Copyright (C) 2004 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions. See the file COPYING for details.
请选择您要使用的密钥种类:
(1) DSA 和 ElGamal (默认)
(2) DSA (仅用于签字)
(5) RSA (仅用于签字)
您的选择? 这个我们一般选择1,gpg默认的也是1。
SA keypair will have 1024 bits.
ELG-E keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 这个是密钥的长度,一般输入1024
请设定这把密钥的有效期限。
0 = 密钥永不过期
<n> = 密钥在 n 天后过期
<n>w = 密钥在 n 周后过期
<n>m = 密钥在 n 月后过期
<n>y = 密钥在 n 年后过期
密钥的有效期限是?(0) 这个是指定密钥的有效期,你可以自己选择。
您需要一个用户标识来辨识您的密钥;本软件会用真实姓名、注释和电子邮件地址组合
成用户标识,如下所示:
“Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>”
真实姓名:
电子邮件地址:
注释:
这个是用户标识,你可以输入自己常用的email地址。
请输入密码:
这个需要为你的私钥指定一个保护密码,这个一定要保护好,要不然你的加密文件就会被别人轻易解开了。
好了现在GPG已经产生了你的公钥和私钥。
现在说说GPG能为我们做什么,如果你想给你的朋友发送一篇论文,而不希望第三人看到。你可以这样操作。
在终端输入:gpg --encrypt -r Bob [文件名] Bob表示为这个收件人签字及加密 [文件名]为需要加密的文件名。
然后你可以把你的公钥发给你的朋友。导出公钥的方法是:gpg --export>name.asc
你的朋友只要吧你的公钥导入他的GPG,就可以解密你发给他的文件了:
解密方法是 gpg --decrypt [加过密的文件]>[已经解密的文件] >为重定向符,意思是把gpg --decrypt [加过密的文件]的结果保存到[已经解密的文件]文件中,这要就可以看到你发的原文了。
先说说GPG的获得吧,GPG是开放源代码的软件,是完全免费的,大家可以到www.gnupg.org下载。如果使用 Mandrakelinux或Debian发行版可以直接下载。我使用的是Mandrakelinux,只要在终端中输入urpmi gpgp就可以下载和安装。
安装好后我们在终端下输入:gpg --help 可以看到GPG的版本信息和帮助。这表示GPG已经装好了。
下面我们来生成密钥,键入:gpg --gen-key 这时将出现几个选项,需要我们来选择:
gpg (GnuPG) 1.4.0; Copyright (C) 2004 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions. See the file COPYING for details.
请选择您要使用的密钥种类:
(1) DSA 和 ElGamal (默认)
(2) DSA (仅用于签字)
(5) RSA (仅用于签字)
您的选择? 这个我们一般选择1,gpg默认的也是1。
SA keypair will have 1024 bits.
ELG-E keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 这个是密钥的长度,一般输入1024
请设定这把密钥的有效期限。
0 = 密钥永不过期
<n> = 密钥在 n 天后过期
<n>w = 密钥在 n 周后过期
<n>m = 密钥在 n 月后过期
<n>y = 密钥在 n 年后过期
密钥的有效期限是?(0) 这个是指定密钥的有效期,你可以自己选择。
您需要一个用户标识来辨识您的密钥;本软件会用真实姓名、注释和电子邮件地址组合
成用户标识,如下所示:
“Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>”
真实姓名:
电子邮件地址:
注释:
这个是用户标识,你可以输入自己常用的email地址。
请输入密码:
这个需要为你的私钥指定一个保护密码,这个一定要保护好,要不然你的加密文件就会被别人轻易解开了。
好了现在GPG已经产生了你的公钥和私钥。
现在说说GPG能为我们做什么,如果你想给你的朋友发送一篇论文,而不希望第三人看到。你可以这样操作。
在终端输入:gpg --encrypt -r Bob [文件名] Bob表示为这个收件人签字及加密 [文件名]为需要加密的文件名。
然后你可以把你的公钥发给你的朋友。导出公钥的方法是:gpg --export>name.asc
你的朋友只要吧你的公钥导入他的GPG,就可以解密你发给他的文件了:
解密方法是 gpg --decrypt [加过密的文件]>[已经解密的文件] >为重定向符,意思是把gpg --decrypt [加过密的文件]的结果保存到[已经解密的文件]文件中,这要就可以看到你发的原文了。