GnuPG-GNU的PGP使用指南
2007年01月04日 星期四 18:10 随着网络与计算机技术的发展,数据存储与数据交换的安全性已经变得越来越重要,加密技术已经很早就用于数据存和数据交换。为了确保网络数据交换时的双方身份的正确性,签证体系也已经成熟。GnuPG就是用来加密数据与制作证书的一套工具,其作用与PGP类似。但是PGP使用了许多专利算法,属于\臭名昭著\的美国加密出口限制之列。GnuPG是GPL软件,并且没有使用任何专利加密算法,所以使用起来有着更多的自由。
具体地说,GnuPG是实现安全通讯和数据存储的一系列工具集,可以做加密数据和做数字签名之用。在功能上,它和PGP是一样的。由于PGP使用了IDEA专利算法,所以使用PGP会有许可证的麻烦。但是GnuPG并没有使用这个算法,所以对用户来说使用GnuPG没有任何限制。GnuPG使用非对称加密算法,安全程度比较高。所谓非对称加密算法,就是每一个用户都拥有一对密钥: 公钥和私钥。其中,密钥由用户保存,公钥则由用户尽可能地散发给其他人,以便其他人与您通讯。
---- GnuPG主要有以下特点:
---- 完全兼容 PGP
---- 没有使用任何专利算法,没有专利问题
---- 遵循GNU公共许可证
---- 与OpenPGP兼容
---- 使用广泛,安全性高于PGP2,可以加密校验和PGP5.x格式的信息
---- 支持多种加密算法
---- 支持扩展模块
---- 用户标识遵循标准结构
---- 多语言支持(尚未支持中文)
---- 在线帮助系统
---- 支持匿名信息接收
---- 支持HKP密钥服务
---- 拥有众多的GUI界面支持
---- GnuPG的源代码可以在http://www.gnu.org/download.html取得。
GnuPG的安装
---- 首先要取得GnuPG的源代码,然后执行如下操作:
---- 1.解开源代码包:
---- [kerberos@dev9] tar xvzf gnupg-version.tar.gz
---- [kerberos@dev9] cd gnupg-version
---- [kerberos@dev9 gnupg-version] ./configure
---- 2.编译源代码
---- [kerberos@dev9 gnupg-version] make
---- 3.检验生成的工具
---- [kerberos@dev9 gnupg-version] make check
---- 4.准备安装
---- [kerberos@dev9 gnupg-version] su
---- 5.安装工具包
---- [root@dev9 gnupg-version] make install
GnuPG命令使用
---- 1.生成密钥对
---- 使用GnuPG之前必须生成密钥对(公钥和私钥),参数选项\可以生成密钥对。可按如下步骤操作。
[root@dev9 /]#gpg --gen-key
gpg (GnuPG) 1.0.2; Copyright (C) 2000 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.
gpg: /root/.gnupg: directory created
gpg: /root/.gnupg/options: new options file created
gpg: you have to start GnuPG again, so it can read
the new options file
然后重新使用上面的指令。
gpg (GnuPG) 1.0.2; Copyright (C) 2000 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.
gpg: /root/.gnupg: directory created
gpg: /root/.gnupg/options: new options file created
gpg: you have to start GnuPG again, so it can read the
new options file
Please select what kind of key you want:
(1) DSA and ElGamal (default)
(2) DSA (sign only)
(4) ElGamal (sign and encrypt)
Your selection? 1
DSA keypair will have 1024 bits.
About to generate a new ELG-E keypair.
minimum keysize is 768 bits
default keysize is 1024 bits
highest suggested keysize is 2048 bits
What keysize do you want? (1024) 2048
Do you really need such a large keysize? y
Requested keysize is 2048 bits
Please specify how long the key should be valid.
0 = key does not expire
< n > = key expires in n days
< n > w = key expires in n weeks
< n > m = key expires in n months
< n > y = key expires in n years
Key is valid for? (0) 0
Key does not expire at all
Is this correct (y/n)? y
---- 这时您需要一个用户ID来标识您的密钥,GnuPG可以根据您的真实姓名、注释和E-mail地址产生一个用户ID。
Real name: kerberos
Email address: kerberos@minigui.org
Comment: Unix/Linux consultant
You selected this USER-ID:
\
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o
You need a Passphrase to protect your secret key.
Enter passphrase: [enter a passphrase]
---- 在产生密钥的过程中,GnuPG需要得到一些随机的数字。这些随机的数字可以 从您的系统当前状态中得到,所以这时候,您可以随机敲一下键盘或者移动鼠标,来产生高质量的随机数。
---- 然后,GnuPG要求您输入您要生成的密钥的算法。
Please select what kind of key you want:
(1) DSA and ElGamal (default)
(2) DSA (sign only)
(4) ElGamal (sign and encrypt)
Your selection?
---- GnuPG可是生成多种密钥对,这里有三种选择。DSA密钥是生成证书的最基本的密钥格式。ElGamal密钥对可以用来加密。第二种选择与第一种相似,但是仅仅生成DSA密钥对,第三种选择可以生成供签证和加密使用的ElGamal密钥对。对大多数用户来说,使用缺省的选择是非常方便的。
---- 下面要选择密钥的长度,DSA密钥的长度在512位~1024位之间,Elmagal密钥的长度则没有限制。
About to generate a new ELG-E keypair.
minimum keysize is 768 bits
default keysize is 1024 bits
highest suggested keysize is 2048 bits
What keysize do you want? (1024)