GnuPG-GNU的PGP使用指南(轉)

post0發表於2007-08-11
GnuPG-GNU的PGP使用指南(轉)[@more@]

來源:ChinaITLab

2002-12-16 10:22:00

  ---- 隨著網路與計算

,加密技術已經很早就用於

,簽證體系也已經成熟。Gn

。但是PGP使用了許多專利

,並且沒有使用任何專利加

機技術的發展,資料儲存與資料

資料存和資料交換。為了確保網

uPG就是用來加密資料與製作證

演算法,屬於"臭名昭著"的美國加

密演算法,所以使用起來有著更多

交換的安全性已經變得越來越重要

絡資料交換時的雙方身份的正確性

書的一套工具,其作用與PGP類似

密出口限制之列。GnuPG是GPL軟體

的自由。

  ---- 具體地說,GnuPG

數字簽名之用。在功能上,

有許可證的麻煩。但是GnuP

。GnuPG使用非對稱加密算

有一對金鑰: 公鑰和私鑰。

便其他人與您通訊。

是實現安全通訊和資料儲存的一

它和PGP是一樣的。由於PGP使用

G並沒有使用這個演算法,所以對

法,安全程度比較高。所謂非對

其中,金鑰由使用者儲存,公鑰則

系列工具集,可以做加密資料和做

了IDEA專利演算法,所以使用PGP會

使用者來說使用GnuPG沒有任何限制

稱加密演算法,就是每一個使用者都擁

由使用者儘可能地散發給其他人,以

  ---- GnuPG主要有以下特點:

  ---- 完全相容 PGP

  ---- 沒有使用任何專利演算法,沒有專利問題

  ---- 遵循GNU公共許可證

  ---- 與OpenPGP相容

  ---- 使用廣泛,安全性高於PGP2,可以加密校驗和PGP5.x格式的資訊

  ---- 支援多種加密演算法

  ---- 支援擴充套件模組

  ---- 使用者標識遵循標準結構

  ---- 多語言支援(尚未支援中文)

  ---- 線上幫助系統

  ---- 支援匿名資訊接收

  ---- 支援HKP金鑰服務

  ---- 擁有眾多的GUI介面支援

  ---- GnuPG的原始碼可

以在

oad.html取得。

  GnuPG的安裝

  ---- 首先要取得GnuPG的原始碼,然後執行如下操作:

  ---- 1.解開原始碼包:

  ---- [kerberos@dev9] tar xvzf gn

upg-version.tar.gz

  ---- [kerberos@dev9] cd gnupg-version

  ---- [kerberos@dev9 gnupg-versio

n] ./configure

  ---- 2.編譯原始碼

  ---- [kerberos@dev9

gnupg-version] make

  ---- 3.檢驗生成的工具

  ---- [kerberos@dev9 gnupg-versio

n] make check

  ---- 4.準備安裝

  ---- [kerberos@dev9 gnupg-version] su

  ---- 5.安裝工具包

  ---- [root@dev9 gnup

g-version] make install

  GnuPG命令使用

  ---- 1.生成金鑰對

  ---- 使用GnuPG之前必

鑰對。可按如下步驟操作。

鬚生成金鑰對(公鑰和私鑰),

引數選項"--gen-key"可以生成密

   [root@dev9 /]#gpg --gen-key

   gpg (GnuPG) 1.0

.2; Copyright (C) 2000 Free

Software

  Foundation, Inc.

   This program comes with ABS

OLUTELY NO WARRANTY.

   This is free software, and

you are welcome to

  redistribute it

   under certain c

onditions. See the file COPY

ING for details.

   gpg: /root/.gnu

pg: directory created

   gpg: /root/.gnupg/options:

new options file created

   gpg: you have t

o start GnuPG again, so it c

an read

  the new options file

  

   然後重新使用上面的指令。

   gpg (GnuPG) 1.0.2

; Copyright (C) 2000 Free So

ftware

  Foundation, Inc.

   This program comes with ABSOL

UTELY NO WARRANTY.

   This is free soft

ware, 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 c

reated

   gpg: you have to start GnuPG

again, so it can read the

  new options file

   Please select wha

t 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來標識

E-mail地址產生一個使用者ID。

您的金鑰,GnuPG可以根據您的真實姓名、註釋和

   Real name: kerberos

   Email address: kerberos@minigui.org

   Comment: Unix/Linux consultant

   You selected this USER-ID:

   "kerberos (Unix/Linux consultant) < kerberos@minigui.org > "

   Change (N)ame, (C)omment, (E)ma

il or (O)kay/(Q)uit? o

   You need a Passphr

ase to protect your secret k

ey.

   Enter passphrase: [

enter a passphrase]

  ---- 在產生金鑰的過

您的系統當前狀態中得到,

的隨機數。

程中,GnuPG需要得到一些隨機

所以這時候,您可以隨機敲一下

的數字。這些隨機的數字可以 從

鍵盤或者移動滑鼠,來產生高質量

  ---- 然後,GnuPG要求您輸入您要生成的金鑰的演算法。

   Please select wha

t kind of key you want:

   (1) DSA and ElGamal (default)

   (2) DSA (sign only)

   (4) ElGamal (sign and encrypt)

   Your selection?

  ---- GnuPG可是生成多

格式。ElGamal金鑰對可以

第三種選擇可以生成供簽證

擇是非常方便的。

種金鑰對,這裡有三種選擇。DS

用來加密。第二種選擇與第一種

和加密使用的ElGamal金鑰對。

A金鑰是生成證書的最基本的金鑰

相似,但是僅僅生成DSA金鑰對,

對大多數使用者來說,使用預設的選

  ---- 下面要選擇金鑰的長度,DSA密

則沒有限制。

鑰的長度在512位~1024位之間,Elmagal金鑰的長度

   About to generat

e a new ELG-E keypair.

   minimum keysize is 768 bits

   default keysize is 1024 bits

   highest suggeste

d keysize is 2048 bits

   What keysize do you want? (1024)

  ---- 生成一個很長的金鑰既有優點

加密的過程變得緩慢,另外,金鑰過長,

也有缺點,長的金鑰無疑安全性非常高,但是會導致

也會使證書的長度變大。

  ---- 預設的金鑰長度1

024位已經夠用了,確定了金鑰

的長度之後,就不能再改變它。

  ---- 最後,需要指定這個金鑰對的

,它們需要指定金鑰對的失效日期。

有效日期,如果選擇了生成ElGamal或者 DSA金鑰對

   Please specify how

long the key should be valid

   0 = key does not

expire = 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)

  ---- 對於大多數使用者來說,金鑰對

以改變它的有效日期,但是仍要謹慎選擇

使用者擁有的您的公鑰。

沒有失效期限是可以的。雖然在金鑰對產生以後,可

這個引數。因為公鑰傳送出去以後,很難再改變其他

  ---- 現在需要提供一

真實身份。

個使用者標識,在簽證的時候,公

鑰需要與使用者標識繫結以證明您的

  ---- You need a User-ID to ident

user id from Real Name, Comment and

ify your key; the software constructs the

Email Address in this form:

  ---- "kerberos (Linux consultant) < kerberos@minigui.org > "

  ---- Real name: 您的使用者名稱

  ---- Email address: 輸入您的email地址

  ---- Comment: 輸入註釋

  ---- 最後,GnuPG 需要一個私鑰,這個私鑰由使用者自己儲存

  ---- Enter passphrase: 輸入金鑰口令

  ---- 這個口令的目的是用來加密您

口令,也無法使用, 這個口令的長度沒

很容易被破解的。同樣,如果您的口令是

的私鑰,這樣,即使有人偷走了您的私鑰,沒有這個

有限制,但是,正如我們所知道的,一個短的口令是

一個單詞,也很容易被破解。

  ---- 2.證書的回收

  ---- 當您的金鑰對生

的口令或者您的私鑰丟失或

回收證書的選項是"--gen-r

成之後,您應該立即做一個公鑰

者被盜竊,您可以釋出這個證書

evoke"。

回收證書,如果您忘記了您的私鑰

來宣告以前的公鑰不再有效。生成

  ---- [root@dev9 /]# gpg --output

revoke.asc --gen-revoke mykey

  ---- 其中mykey 引數是可以表示的

一旦回收證書被髮放,以前的證書就不能

金鑰標識,產生的回收證書放在revoke.asc檔案裡,

再被其他使用者訪問,因此以前的公鑰也就失效了。

  ---- 3.金鑰列表

  ---- 列出金鑰使用 --list-keys 選項

  ---- [root@dev9 /]# gpg --list-keys

  ---- 4.輸出公鑰

  ---- 您可以輸出您的公鑰供您的主

以使用於其他的途徑。在您使用此公鑰之

能,在使用這個選項時,還必須使用附加

頁使用,也可以把它放在金鑰伺服器上,當然,還可

前您首先要匯出它。選項 --export 可以實現這個功

的選項指明您要輸出的公鑰。

  ---- 下面的命令表示以二進位制格式輸出公鑰:

  ---- [root@dev9 /]# gpg --output

kapil.gpg --export kerberos@minigui.org

  ---- 如下命令表示以ASCII字元格式輸出:

  ---- gpg --output kapil.gpg --export-armor> kerberos-key.asc

  ---- 5.匯入公鑰

  ---- 您可以把從第三方的公鑰資料

通訊時使用。

庫中得到的公鑰匯入您的私有資料庫,在與他人進行

  ---- [root@dev9 /]#gpg --import < filename >

  ---- 其中,引數filename為公鑰檔案。

  ---- 例如:匯入redha

t的公鑰,redhat.asc可以從red

hat的主頁上下載。

  ---- [root@dev9 /]#

gpg --import redhat.asc

  ---- gpg: key :9B4A4024: public

key imported

  ---- gpg: /root/.gnupg/trustdb.g

pg: trustdb created

  ---- gpg: Total number processed: 1

  ---- gpg: imported: 1

  ---- 6.確認金鑰

  ---- 匯入金鑰以後,使用數字簽名

--fingerprint 選項。

來驗證此證書是否合法。檢視數字簽名使用

  ---- [root@dev9 /]# gpg --fingerprint < UID >

  ---- 其中,UID 為您要驗證的公鑰。

  ---- 7.金鑰簽名

  ---- 匯入金鑰之後,可以使用 --si

任這個證書的合法性。

gn-key 選項進行簽名,簽名的目的是證明您完全信

  ---- 例如:[root@dev9 /]# gpg --sign-key < UID >

  ---- 其中,UID 是要簽名的公鑰。

  ---- 8.檢查簽名

  ---- 我們可以使用 --

check-sigs選項來檢查在上面我

們對金鑰所作的簽名。

  ---- [root@dev9 /]# gpg --check-sigs < UID >

  ---- 這個選項可以列出此金鑰檔案的所有的簽名。

  ---- 9.加密和解密

  ---- 加密和解密一個檔案非常容易

redhat的公鑰加密這個檔案,並且這個文

,如果您要給redhat傳送一個加密檔案,您可以使用

件也只有redhat使用自己的金鑰才可以解密檢視。

  ---- 加密一個檔案可以使用下面的指令

  ---- [root@dev9 /]#gpg --sear < UID > < file >

  ---- 其中,UID是對方的公鑰,file為您要加密的檔案。

  ---- 如果您要解開一個其他使用者發給您的檔案可以使用下面的指令:

  ---- [root@dev9 /]#gpg -d < file >

  ---- 其中,file是您要解密的檔案

的口令,也就是在產生私鑰時您所輸入的

。解密過程中,GnuPG會提示您輸入使用金鑰所需要

口令。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-945472/,如需轉載,請註明出處,否則將追究法律責任。

相關文章