创建GUNPG密钥
学习LINUX文件下加密的步骤,我是初学者,有不对的地方大家指出来啊。
用的是 red Fedora 7的中文版本 VM虚拟机6.0。
[root@localhost /]# 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 你可以自己选择(8的倍数)
您所要求的密钥尺寸是 2048 位
请设定这把密钥的有效期限。 //这个问题建议看看GunPG的文档,一定要把失效日期后还想使用密钥时怎么办的问题搞清楚。我这里选择的是0
0 = 密钥永不过期
<n> = 密钥在 n 天后过期
<n>w = 密钥在 n 周后过期
<n>m = 密钥在 n 月后过期
<n>y = 密钥在 n 年后过期
密钥的有效期限是?(0) 0
密钥永远不会过期
以上正确吗?(y/n)y
您需要一个用户标识来辨识您的密钥;本软件会用真实姓名、注释和电子邮件地址组合
成用户标识,如下所示:
“Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>”
真实姓名:wolfwang
电子邮件地址:wolfwang860424@gmail.com
注释:wenjian
您选定了这个用户标识:
“wolfwang (wenjian) <wolfwang860424@gmail.com>”
更改姓名(N)、注释(C)、电子邮件地址(E)或确定(O)/退出(Q)?o
您需要一个密码来保护您的私钥。
我们需要生成大量的随机字节。这个时候您可以多做些琐事(像是敲打键盘、移动
鼠标、读写硬盘之类的),这会让随机数字发生器有更好的机会获得足够的熵数。
+++++…++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.+++++++++++++++++++++++++.+++++++++++++++++++++++++.+++++>++++++++++…………..<+++++……………………………………………………..+++++
随机字节不够多。请再做一些其他的琐事,以使操作系统能搜集到更多的熵!
(还需要280字节)
我们需要生成大量的随机字节。这个时候您可以多做些琐事(像是敲打键盘、移动
鼠标、读写硬盘之类的),这会让随机数字发生器有更好的机会获得足够的熵数。
+++++..++++++++++.++++++++++.++++++++++.++++++++++…+++++++++++++++++++++++++.+++++…++++++++++.++++++++++..+++++++++++++++++++++++++.++++++++++.+++++++++++++++>++++++++++>+++++…….>+++++……………>+++++………+++++^^^
gpg: /root/.gnupg/trustdb.gpg:建立了信任度数据库
gpg: 密钥 C92521C6 被标记为绝对信任
公钥和私钥已经生成并经签名。
gpg: 正在检查信任度数据库
gpg: 需要 3 份勉强信任和 1 份完全信任,PGP 信任模型
gpg: 深度:0 有效性: 1 已签名: 0 信任度:0-,0q,0n,0m,0f,1u
pub 1024D/C92521C6 2007-08-03
密钥指纹 = 325D C226 605A 7239 261B 7578 C056 390F C925 21C6
uid wolfwang (wenjian) <wolfwang860424@gmail.com>
sub 2048g/7829A6F0 2007-08-03
总结步骤
1 gpg ――gen-key
2 选择密钥类型,提示是1
3 输入密钥长度,因该是8的倍数
4 输入一个失效日期,
5 输入用户的ID
6 输入口令短语
7 让系统发生一些好的随即活动。
这个例子里面产生了2个密钥,第一个是私用密钥,不要把它泄漏给别人。私用密钥已经被你知道的口令短语加密了,第二个是公用密钥,你需要把他告诉别人,让对方使用这个密钥来加密将发送给对你的文件,你用自己的口令短语解密就可以了。
pub 1024D/C92521C6 2007-08-03
C92521C6 这个是公共密钥的标识码,就是别人用来确定你身份的内容。
要让别人使用你的公共密钥去加密文件并发送给你,必须线把你的公共密钥提取出来发给对方或者是把别人发给你的密钥添加到你的“密钥环”文件里面
[root@localhost /]# gpg –armor –export C92521C6 >
上面这个命令就是用来提取公共密钥的到budcobackups.key的文件里面
我们看一下
[root@localhost /]# cat budcobackups.key
—–BEGIN PGP PUBLIC KEY BLOCK—–
Version: GnuPG v1.4.7 (GNU/Linux)
mQGiBEazHJURBADJAdeZb724fUw9duOXMHW94VNgGmmxrLCE0h+AVk/DakD5uwyi
+zAtN+Bwe2wmLJPOx35cf6DYHBRMprtbjmjKG2Sng8MZ0rgzD7+uY873p0AIsWJd
IIMQaY0ROp2wViG6CaDwbB9zIot1DnQZ/YWioiVL0ryeJZAOzVrXN1N8iwCg6+QM
Pouhdv17xH/XZk7ufsPi09MEAJ6hnPCPrPx4hORQj9ym456MhO2mthbMq8GGR92H
/1zf+aC6z7FwL4jEL2FHsdt/PEhp3/jNc0s0RQNQgYs0YDEnUPdPIkoR6vGmOjeq
vQprsB+qAlOYBgUTeil9LovG2QPL/9PhOH6ADz0tAlvxtqmeT3vITwA5mL/7scFo
kLqiA/9SyS2PAzazX3vQ/F/McMjMQSPXkR8xNgNOVoh7XtHTdmY7CiXvCojQvlcL
tx+EQzQLZDlMDBhy/0FZVIjP4zENGiAsPBQVJpd4Ca+SyNrNMLhxFLuVRJKv251P
z2ZX6FNKIL398Lm12k5fpaMCNaLGFJFkq8EaVYLyJfLQqsGSKLQtd29sZndhbmcg
KHdlbmppYW4pIDx3b2xmd2FuZzg2MDQyNEBnbWFpbC5jb20+iGAEExECACAFAkaz
HJUCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRDAVjkPySUhxqBYAKDF30gb
ROSTXG6kaNjISPGmSXojbACghen1C9DrKH41Ifil8qlYDPwmiiy5Ag0ERrMclRAI
AP9fdOGVGDOB8WO9UrpMkWjdvk6wVatDWdzUR02S09uifzbI7kUMDGBcDRpEpCyh
Xng/jAS516NMVJKy/vLPzB+q05THX5pxfE63QRWb1HaWm5OKfuoKxeozGo6smRnM
5/K12VN3XKA+EbHm1EFAuR0Kf6pmrmCV7e/Oj9DAPSgUGQd34p3vJRVky4Jhp0/6
289/PFWqzU7Kn3hR0V1MPtsxzyq6Rcm49NQXhE+MQ0AhG0zbMREiOUnU95pGijdl
ozs6tuLalAbX0owxIhkoTA5xZ9IDrQ4EOqTP7tJ4GpH8kA4Ri3PNuPFAg6jTTzb8
oENDIjzti13G8xZHj9vlK3sAAwUIAKY+cykiI80+e44fJVOI/dDmWBaL9zWKWlZG
A2+QV4Kfywk/4DwKteGdPGOUFbDrlRf7dzDG+6v681dNjMQXyfSp2bHnCbzS6C9J
NRK95fu4Yqu70gU31qveJQ4Tj6YO8zS78Bc4rub7gq1wC58S2XJilPEUsCglHpNQ
0YWImNCVJKTfwvj5nCpKrvF3RWqAyfUgCQh/+hIwPxx+yFwJaf2yyTUqPN9LpyJI
Z26wgf2Whhta/JPkRDSxZVFgI2+D8zVu2CcRpThUcogyVFr2bKiiL6UL3ACJ8yqD
rZvRC9m+f8TZhmUcn6hctQHM5eR5r+FEIdsBA24TJ09SnFh9x5iISQQYEQIACQUC
RrMclQIbDAAKCRDAVjkPySUhxmryAJwOHAoxZG7OCsMzEYIuhtLE1ucM/QCgiwv5
8SccWfYJa9cm1CpIcjltDVQ=
=iVWV
—–END PGP PUBLIC KEY BLOCK—–
将这个文件发给对方
当对方受到文件,或者你受到别人给你的密钥后把密钥添加到密钥环里面,这个是非常敏感的文件,建议多备份,只有同时输入正确的,密钥文件和口令短语才能解密,加密文件
对方执行下面的命令将密钥文件添加到钥匙环里面
[root@localhost /]# gpg –import budcobackups.key
[root@localhost /]# gpg –kv 来查看钥匙环里面都有哪些密钥添加进去了。
/root/.gnupg/pubring.gpg
————————
pub 1024D/C92521C6 2007-08-03
uid wolfwang (wenjian) <wolfwang860424@gmail.com>
sub 2048g/7829A6F0 2007-08-03
下面我们就可以加密文件了
[root@localhost /]#
[root@localhost wolfwang]# vi 123.txt
ni hao ma
wo shi wolfwang
wo shi xuesheng
[root@localhost wolfwang]# gpg -ea -r C92521C6 123.txt 这里 -r是收件人的意思 后面加的对方的密钥,对方给我发就因该加我的密钥标识码。系统将生成一个.asc的文件这个就是加密后的文件,我们可以把他发给别人。看看啥样的~~
[root@localhost wolfwang]# cat 123.txt.asc
—–BEGIN PGP MESSAGE—–
Version: GnuPG v1.4.7 (GNU/Linux)
hQIOA1dJmNt4KabwEAgAyY7wK1NGZEdGbhG8wPRtFnUVUeXj97a9lLDvlORS46bk
f1bnqJwFDCh/gqP9rQIfEkJ+sORtuh5Nk5Hsybw6Of1zvqBPO41UQIj3AS9MKsJg
FPa7cZqo7gYRqQGi5WhpJbvpBKT4G/OZq22TicbsUkphKzzCkALZqDLN5OQ3/2GF
zx4WwMqnQLPqUpZE9kK/QfAwhmXLVgMHzxNJpNlfg9zNHq9I9eeWALv9ZGiwHTkw
lCQyA17vvjs9xaF6K3gszPZkg0BEdOptb4w/IpW28BMA5woexGD12/mQN7OwQWPZ
xY9ZRzQwhc+IRgDs2aZrYpMQ/fpIXNnbEVS0lzdAIwgAtAc1bz3LrCe+tINA+jpW
eLuuNjfyGsi2R60eVFqd96Lfd15g8LbhAGDe+Mss3e8uKTu65cGkPTel8qDHGocx
fgT/RJ3dwuDzP+LfvfShrF30K0rzmu77kr3+512UmO2MNNyTAeUqRO8NCYDaTC8c
zce5rbMx/xbNFq14TEuz3Lv+0lctx1OiUaMXcqdQgBBn9FNepcTt9z9dXxO7SB9L
MkT0QB9bDwStEsjh8p4pzpfiMJ6Dv4jCe6TpaCzBYPAFLlnoFCrQEoz9w9NlWsBX
GREJd4+F0O6hQBlIxrVuWSG0Dl+dzkOySg+KqYd3qImooiqVvp36B5s8b9nYjTCI
n9JpAX/4oW8rYxM6zsRk5ODYM2hIbbafcmj3wmQxJWhmx517u1Cy6r07Pb5eCbhm
j3fz7TwGFqxomwrJgPS3DaneXPQfW9PCXELs/7m6nyjlRPkAeFgFDdkd2X0tutQJ
NwP0IgovRY/oZezF
=bDyq
—–END PGP MESSAGE—–
在加密完后,建议把源文件删掉 rm –rf 123.txt
当受到加密文件的时候用下面这个命令解密
[root@localhost wolfwang]# gpg -o 1231.txt -d 123.txt.asc
您需要输入密码,才能解开这个用户的私钥:
在这里你输入你的密码然后会有后面的信息
“wolfwang (wenjian) <wolfwang860424@gmail.com>”
2048 位的 ELG-E 密钥,钥匙号 7829A6F0,建立于 2007-08-03 (主钥匙号 C92521C6)
gpg: 由 2048 位的 ELG-E 密钥加密,钥匙号为 7829A6F0、生成于 2007-08-03
“wolfwang (wenjian) <wolfwang860424@gmail.com>”
文件‘1231.txt’已存在。 是否覆盖?(y/N)y
[root@localhost wolfwang]# cat 1231.txt
ni hao ma
wo shi wolfwang
wo shi xuesheng