...
分类: LINUX
2007-09-17 17:34:50
$ gpg --help
gpg (GnuPG) 1.4.7
Copyright (C) 2006 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.
Home: /home/tony/.gnupg。
支持的算法:
公钥:RSA, RSA-E, RSA-S, ELG-E, DSA
对称加密:3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH
散列:MD5, SHA1, RIPEMD160, SHA256, SHA384, SHA512, SHA224
压缩:不压缩, ZIP, ZLIB, BZIP2
语法:gpg [选项] [文件名]
签名、检查、加密或解密
默认的操作依输入数据而定
指令:
-s, --sign [文件名] 生成一份签名
--clearsign [文件名] 生成一份明文签名
-b, --detach-sign 生成一份分离的签名
-e, --encrypt 加密数据
-c, --symmetric 仅使用对称加密
-d, --decrypt 解密数据(默认)
--verify 验证签名
--list-keys 列出密钥
--list-sigs 列出密钥和签名
--check-sigs 列出并检查密钥签名
--fingerprint 列出密钥和指纹
-K, --list-secret-keys 列出私钥
--gen-key 生成一副新的密钥对
--delete-keys 从公钥钥匙环里删除密钥
--delete-secret-keys 从私钥钥匙环里删除密钥
--sign-key 为某把密钥添加签名
--lsign-key 为某把密钥添加本地签名
--edit-key 编辑某把密钥或为其添加签名
--gen-revoke 生成一份吊销证书
--export 导出密钥
--send-keys 把密钥导出到某个公钥服务器上
--recv-keys 从公钥服务器上导入密钥
--search-keys 在公钥服务器上搜寻密钥
--refresh-keys 从公钥服务器更新所有的本地密钥
--import 导入/合并密钥
--card-status 打印卡状态
--card-edit 更改卡上的数据
--change-pin 更改卡的 PIN
--update-trustdb 更新信任度数据库
--print-md 算法 [文件] 使用指定的散列算法打印报文散列值
选项:
-a, --armor 输出经 ASCII 封装
-r, --recipient 某甲 为收件者“某甲”加密
-u, --local-user 使用这个用户标识来签名或解密
-z N 设定压缩等级为 N (0 表示不压缩)
--textmode 使用标准的文本模式
-o, --output 指定输出文件
-v, --verbose 详细模式
-n, --dry-run 不做任何改变
-i, --interactive 覆盖前先询问
--openpgp 行为严格遵循 OpenPGP 定义
--pgp2 生成与 PGP 2.x 兼容的报文
(请参考在线说明以获得所有命令和选项的完整清单)
范例:
-se -r Bob [文件名] 为 Bob 这个收件人签名及加密
--clearsign [文件名] 做出明文签名
--detach-sign [文件名] 做出分离式签名
--list-keys [某甲] 显示密钥
--fingerprint [某甲] 显示指纹
请向
请向
$ gpg --gen-key
gpg (GnuPG) 1.4.7; Copyright (C) 2006 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
DSA 密钥对会有 1024 位。
ELG-E 密钥长度应在 1024 位与 4096 位之间。
您想要用多大的密钥尺寸?(2048)
您所要求的密钥尺寸是 2048 位
请设定这把密钥的有效期限。
0 = 密钥永不过期
密钥的有效期限是?(0) 1y
密钥于 03/19/08 08:53:26 过期
以上正确吗?(y/n)y
您需要一个用户标识来辨识您的密钥;本软件会用真实姓名、注释和电子邮件地址组合
成用户标识,如下所示:
“Heinrich Heine (Der Dichter)
真实姓名:etony
电子邮件地址:etony@tom.com
注释:test
您选定了这个用户标识:
“etony (test)
更改姓名(N)、注释(C)、电子邮件地址(E)或确定(O)/退出(Q)?
您需要一个密码来保护您的私钥。
我们需要生成大量的随机字节。这个时候您可以多做些琐事(像是敲打键盘、移动
鼠标、读写硬盘之类的),这会让随机数字发生器有更好的机会获得足够的熵数。
+++++++++++++++++++++++++.++++++++++.++++++++++++++++++++++++++++++.++++++++++++
+++++++++++++++++++++++..+++++.+++++++++++++++.++++++++++>..++++++++++...>.+++++
.............................<+++++.........>.+++++...+++++
gpg: NOTE: you should run 'diskperf -y' to enable the disk statistics
gpg: NOTE: you should run 'diskperf -y' to enable the disk statistics
我们需要生成大量的随机字节。这个时候您可以多做些琐事(像是敲打键盘、移动
鼠标、读写硬盘之类的),这会让随机数字发生器有更好的机会获得足够的熵数。
+++++.++++++++++++++++++++.++++++++++++++++++++++++++++++.+++++.+++++.+++++.++++
+.++++++++++++++++++++++++++++++++++++++++.+++++.++++++++++..+++++++++++++++>+++
+++++++>.+++++................................+++++^^^
gpg: 密钥 4FA1A3C6 被标记为绝对信任
公钥和私钥已经生成并经签名。
gpg: 正在检查信任度数据库
gpg: 需要 3 份勉强信任和 1 份完全信任,PGP 信任模型
gpg: 深度:0 有效性: 1 已签名: 0 信任度:0-,0q,0n,0m,0f,1u
gpg: 下次信任度数据库检查将于 2008-03-19 进行
pub 1024D/4FA1A3C6 2007-03-20 [有效至:2008-03-19]
密钥指纹 = AC10 1779 4C28 5B9F 0680 D4FB FD0B B21F 4FA1 A3C6
uid etony (test)
sub 2048g/A085553C 2007-03-20 [有效至:2008-03-19]
$ gpg --output revoke.ase --gen-revoke etony@tom.com
sec 1024D/4FA1A3C6 2007-03-20 etony (test)
要为这把密钥建立一份吊销证书吗?(y/N)y
请选择吊销的原因:
0 = 未指定原因
1 = 密钥已泄漏
2 = 密钥被替换
3 = 密钥不再使用
Q = 取消
(也许您会想要在这里选择 1)
您的决定是什么?2
请输入描述(可选);以空白行结束:
>
吊销原因:密钥被替换
(不给定描述)
这样可以吗? (y/N)y
您需要输入密码,才能解开这个用户的私钥:“etony (test)
1024 位的 DSA 密钥,钥匙号 4FA1A3C6,建立于 2007-03-20
已强行使用 ASCII 封装过的输出。
已建立吊销证书。
请把这个文件转移到一个可隐藏起来的介质(如软盘)上;如果坏人能够取得这
份证书的话,那么他就能让您的密钥无法继续使用。把这份凭证打印出来再藏
到安全的地方也是很好的方法,以免您的保存媒体损毁而无法读取。但是千万
小心:您的机器上的打印系统可能会在打印过程中把这些数据临时在某个其他
人也能够看得到的地方!
$ gpg --list-key
/home/tony/.gnupg/pubring.gpg
--------------------------------------------------------------------------
pub 1024D/4FA1A3C6 2007-03-20 [有效至:2008-03-19]
uid etony (test)
sub 2048g/A085553C 2007-03-20 [有效至:2008-03-19]
$ gpg --list-secret-key
/home/tony/.gnupg/secring.gpg
--------------------------------------------------------------------------
sec 1024D/4FA1A3C6 2007-03-20 [有效至:2008-03-19]
uid etony (test)
ssb 2048g/A085553C 2007-03-20
$ gpg --output etony.gpg --export etony@tom.com
$ gpg --armor --export etony@tom.com
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.7 (MingW32)
mQGiBEX/MOERBAC3X5lw7sWeGs/jMM9Ujg+SQY22NZPZytP+UrnSLQntRCzgLCiW
93IznTJJ6qBqbHy4YxipvBvDuc/7/jlIe/iQg1w+pmCAaV9E9IsuQt480agZqHom
pDEDoN17xS47+iuw+aRtry3led/5o5EzKkbB80BY1wlhNrWeH+3XChOjHwCggXim
J9Z/d0LnBjyeIIiCJ1WL3ksEALEvEswe5fVaEukhXE4yomGF5oqVPI43j9h7cqQ8
pqUH1OnEpCnayt4Qm29XuWkHtxsqyCJ+QslJ/f38OVDgzMRaHMCPH4NjYplbwduR
dOzn/5iYONhHrVE61FObrQMXS5Skq0tNvxzdznH8gha4yKNypaRpppqmQD6hxnrq
jJuIA/9xo7rApqEu5GpTbHLgLGs+MCk8cTH/xH+U6glD5hUyQLRGQO0NqWRfQQ7b
BgZijgM9mYV2LS6UE/TKgslqkPLr/w622Qx3/hfL+ispPIpC0uy03W6aQyh8nBWr
glIK0HNhKPOEJx86adPtHvXNdemspjhbrBARvc0ublXmVVdNmrQcZXRvbnkgKHRl
c3QpIDxldG9ueUB0b20uY29tPohmBBMRAgAmBQJF/zDhAhsDBQkB4TOABgsJCAcD
AgQVAggDBBYCAwECHgECF4AACgkQ/QuyH0+ho8ZhTACbBCO9jJp4p6K9ePA5HYJk
gfs7ploAnj/4LaBMxyTaeShBZRf/HPTpFwvIuQINBEX/MOEQCACo6jLmqikWonnD
G/MXyMMYB1Xs4RB+xu9TrNqZbqSXksPgasll+T64qwd7QiMwN6768jNjF52Cmpms
CbFGy1DjIpoybZs/eUEA3t0v/Bjyjxm+c7uO1WPog4lqI8GeRUkvNLnq4ncKrKcp
oKPixSdpxKiPPSqifxGrONtD6HCU/3BbkdTOole/VtHFOQujyakTJLKPWX2wjb0L
InCAMOZIVL20F7XOMw2IOtp2EoEZNtHUneKTYUg5zo2DNMsz9sRcYsm78NRDbVlj
veuWN9bJ9xDKFYlj06yNYJik19Uzo/+8RPNzPghGb770wRoAoT7FyV2kd8incY4h
fS/v6DpjAAMFB/9Ke0dlVLpEvLJpq89iKlm0iG386Wi5u+AHlYOdvQ8VvC5mXwyh
qt9h+5i4DApE3HtSOcjCQ97RBsyaa26RtPzZDwTSrMW5DVDlGS3VNsfHalAlRdfD
dzZNhkmu3JUr5NMA4v9m3utTSl91ZU6mh4Hvj3DEGjbCp1QhImJO6OJ4HAakztiH
hOsql5aqDfGSMwnSRfIH1Yluej4gysCOi9BhpdjyLGJTckDGh8HklqHBQW55MqLu
tPIqwdNbEreKOzch/CxixJkn4olt+/STBrTN5MEtGnx8R3GcIY/tBPpLL01kAeCY
Y7JDOXXy7hgzLSxoahMvByGLuSOt7owThyykiE8EGBECAA8FAkX/MOECGwwFCQHh
M4AACgkQ/QuyH0+ho8briQCeKqRTXoGmNeiGu6vrpqK0eTMGv6gAn0+B8jZLMZFH
8PePPJUB5t5yzqt5
=pL1y
-----END PGP PUBLIC KEY BLOCK-----
$ gpg --armor --export-secret-keys etony@tom.com
-----BEGIN PGP PRIVATE KEY BLOCK-----
Version: GnuPG v1.4.7 (MingW32)
lQHhBEX/MOERBAC3X5lw7sWeGs/jMM9Ujg+SQY22NZPZytP+UrnSLQntRCzgLCiW
93IznTJJ6qBqbHy4YxipvBvDuc/7/jlIe/iQg1w+pmCAaV9E9IsuQt480agZqHom
pDEDoN17xS47+iuw+aRtry3led/5o5EzKkbB80BY1wlhNrWeH+3XChOjHwCggXim
J9Z/d0LnBjyeIIiCJ1WL3ksEALEvEswe5fVaEukhXE4yomGF5oqVPI43j9h7cqQ8
pqUH1OnEpCnayt4Qm29XuWkHtxsqyCJ+QslJ/f38OVDgzMRaHMCPH4NjYplbwduR
dOzn/5iYONhHrVE61FObrQMXS5Skq0tNvxzdznH8gha4yKNypaRpppqmQD6hxnrq
jJuIA/9xo7rApqEu5GpTbHLgLGs+MCk8cTH/xH+U6glD5hUyQLRGQO0NqWRfQQ7b
BgZijgM9mYV2LS6UE/TKgslqkPLr/w622Qx3/hfL+ispPIpC0uy03W6aQyh8nBWr
glIK0HNhKPOEJx86adPtHvXNdemspjhbrBARvc0ublXmVVdNmv4DAwJ/UjMXQhtQ
P2BPCaGcixZeseEXEFFdX9DnEKTueNiI44V1C6oIzZgD4I61A2X89+w+0UDWhXhp
/FwhRrQcZXRvbnkgKHRlc3QpIDxldG9ueUB0b20uY29tPohmBBMRAgAmBQJF/zDh
AhsDBQkB4TOABgsJCAcDAgQVAggDBBYCAwECHgECF4AACgkQ/QuyH0+ho8ZhTACb
BCO9jJp4p6K9ePA5HYJkgfs7ploAnj/4LaBMxyTaeShBZRf/HPTpFwvInQJjBEX/
MOEQCACo6jLmqikWonnDG/MXyMMYB1Xs4RB+xu9TrNqZbqSXksPgasll+T64qwd7
QiMwN6768jNjF52CmpmsCbFGy1DjIpoybZs/eUEA3t0v/Bjyjxm+c7uO1WPog4lq
I8GeRUkvNLnq4ncKrKcpoKPixSdpxKiPPSqifxGrONtD6HCU/3BbkdTOole/VtHF
OQujyakTJLKPWX2wjb0LInCAMOZIVL20F7XOMw2IOtp2EoEZNtHUneKTYUg5zo2D
NMsz9sRcYsm78NRDbVljveuWN9bJ9xDKFYlj06yNYJik19Uzo/+8RPNzPghGb770
wRoAoT7FyV2kd8incY4hfS/v6DpjAAMFB/9Ke0dlVLpEvLJpq89iKlm0iG386Wi5
u+AHlYOdvQ8VvC5mXwyhqt9h+5i4DApE3HtSOcjCQ97RBsyaa26RtPzZDwTSrMW5
DVDlGS3VNsfHalAlRdfDdzZNhkmu3JUr5NMA4v9m3utTSl91ZU6mh4Hvj3DEGjbC
p1QhImJO6OJ4HAakztiHhOsql5aqDfGSMwnSRfIH1Yluej4gysCOi9BhpdjyLGJT
ckDGh8HklqHBQW55MqLutPIqwdNbEreKOzch/CxixJkn4olt+/STBrTN5MEtGnx8
R3GcIY/tBPpLL01kAeCYY7JDOXXy7hgzLSxoahMvByGLuSOt7owThyyk/gMDAn9S
MxdCG1A/YHSam634Q1L7LivR8bIquGe50Gj9v8FQdwWJ73EdPhapRBbzXmWKGXQj
7+aonlHclzxHFUphVA1oeJYWroROfKDa/yEPbFWyw2GITwQYEQIADwUCRf8w4QIb
DAUJAeEzgAAKCRD9C7IfT6GjxuuJAJ0UgxD/Pnxtw2EMEvyEumL/kKiqcACffZdU
CsRssPq1INdi8AGnVFvMNvk=
=IFCr
-----END PGP PRIVATE KEY BLOCK-----
$ gpg --import etony.gpg
gpg: 密钥 4FA1A3C6:公钥“etony (test)
gpg: 合计被处理的数量:1
gpg: 已导入:1
$ gpg --edit-key etony@tom.com
gpg (GnuPG) 1.4.7; Copyright (C) 2006 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.
pub 1024D/4FA1A3C6 创建于:2007-03-20 有效至:2008-03-19 可用于:SC
信任度:未知 有效性:未知
sub 2048g/A085553C 创建于:2007-03-20 有效至:2008-03-19 可用于:E
[ 未知 ] (1). etony (test)
命令> help
quit 离开这个菜单
save 保存并离开
help 显示这份在线说明
fpr 显示密钥指纹
list 列出密钥和用户标识
uid 选择用户标识 N
key 选择子钥 N
check 检查签名
sign 为所选用户标识添加签名[* 参见下面的相关命令]
lsign 为所选用户标识添加本地签名
tsign 为所选用户标识添加信任签名
nrsign 为所选用户标识添加不可吊销签名
deluid 删除选定的用户标识
delkey 删除选定的子钥
delsig 删除所选用户标识上的签名
pref 列出首选项(专家模式)
showpref 列出首选项(详细模式)
trust 更改信任度
revsig 吊销所选用户标识上的签名
enable 启用密钥
disable 禁用密钥
showphoto 显示选定的照片标识
clean 压缩不可用的用户标识并删除不可用的签名
minimize 压缩不可用的用户标识并删除所有签名
* ‘sign’命令可以带‘l’前缀(lsign)以添加本地签名,或‘t’前缀(tsign)以添加
信任签名,或‘nr’前缀(nrsign)以添加不可吊销签名,或者以上三种前缀的任何组
合(ltsign、tnrsign 等)。
命令> check
uid etony (test)
sig!3 4FA1A3C6 2007-03-20 [自身签名]
$ gpg --output test.gpg --recipient etony.an@gmail.com --encrypt test.txt
gpg: 9CC58940:没有证据表明这把密钥真的属于它所声称的持有者
pub 2048g/9CC58940 2007-03-15 etony C.F.AN (etony@tom.com)
主钥指纹: 2F1D D32D E993 37E9 09A8 6292 A6C5 E506 738D F159
子钥指纹: 5F2B 2456 519E 1713 1F86 F51D A501 B60D 9CC5 8940
这把密钥并不一定属于用户标识声称的那个人。如果您真的知道自
己在做什么,您可以在下一个问题回答 yes。
无论如何还是使用这把密钥吗?(y/N)y
$ gpg --armor --output test.gpg --recipient etony.an@gmail.com --encrypt test.txt
$ gpg --output test --decrypt test.gpg
您需要输入密码,才能解开这个用户的私钥:“etony C.F.AN (etony@tom.com)
@gmail.com>”
2048 位的 ELG-E 密钥,钥匙号 9CC58940,建立于 2007-03-15 (主钥匙号 738DF159)
gpg: 由 2048 位的 ELG-E 密钥加密,钥匙号为 9CC58940、生成于 2007-03-15
“etony C.F.AN (etony@tom.com)
$ gpg --output test.sig --sign test.txt
您需要输入密码,才能解开这个用户的私钥:“etony (test)
1024 位的 DSA 密钥,钥匙号 4FA1A3C6,建立于 2007-03-20
$ gpg --armor --output test --decrypt test.sig
gpg: 于 03/20/07 09:55:49 创建的签名,使用 DSA,钥匙号 4FA1A3C6
gpg: 完好的签名,来自于“etony (test)
gpg: 警告:这把密钥未经受信任的签名认证!
gpg: 没有证据表明这个签名属于它所声称的持有者。
主钥指纹: AC10 1779 4C28 5B9F 0680 D4FB FD0B B21F 4FA1 A3C6
$ gpg --output test.sig --clearsign test.txt
您需要输入密码,才能解开这个用户的私钥:“etony (test)
1024 位的 DSA 密钥,钥匙号 4FA1A3C6,建立于 2007-03-20
签名文件内容
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
1234567890qwertyuiopasdfghjklzxcvbnm
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
iD8DBQFF/z+s/QuyH0+ho8YRAg/BAJ4rooYLAPHfQwAA9iF8NMMSAifIaQCeOCIt
bwI6GTKt9Aqim/iHM8FoZvM=
=VHit
-----END PGP SIGNATURE-----
$ gpg --output test.sig --detach-sign test.txt
您需要输入密码,才能解开这个用户的私钥:“etony (test)
1024 位的 DSA 密钥,钥匙号 4FA1A3C6,建立于 2007-03-20
$ gpg --armor --output test.sig --detach-sign test.txt
签名内容
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)
iD8DBQBF/0BS/QuyH0+ho8YRAqeUAJ9KZA5ePJorCA56cFhp+CsBPOlNTgCZAcav
UKkQmkaLMeqN3ddDc1U6BZk=
=wXL+
-----END PGP SIGNATURE-----
$ gpg --verify test.sig test.txt
gpg: 于 03/20/07 10:00:50 创建的签名,使用 DSA,钥匙号 4FA1A3C6
gpg: 完好的签名,来自于“etony (test)
gpg: 警告:这把密钥未经受信任的签名认证!
gpg: 没有证据表明这个签名属于它所声称的持有者。
主钥指纹: AC10 1779 4C28 5B9F 0680 D4FB FD0B B21F 4FA1 A3C6