Home | 简体中文 | 繁体中文 | 杂文 | 知乎专栏 | 51CTO学院 | CSDN程序员研修院 | Github | OSChina 博客 | 腾讯云社区 | 阿里云栖社区 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏多维度架构

6.12. GnuPG For Windows

下载OpenGPG: http://www.gnupg.org/

[注意]注意

GnuPG (OpenGPG)安装时可以选择语言,支持简体中文.但对中文支持不是很好,如真实姓名输入:王老五,系统提示"姓名至少要有五个字符长"

6.12.1. 生成密钥对

使用 gpg --gen-key 生成密钥对

			
C:\GNU>gpg --gen-key
gpg (GnuPG) 1.4.3; 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 (仅用于签字)
您的选择?
DSA 密钥对会有 1024 位。
ELG-E 密钥长度应在 1024 位与 4096 位之间。
您想要用多大的密钥尺寸?(2048)
您所要求的密钥尺寸是 2048 位
请设定这把密钥的有效期限。
         0 = 密钥永不过期
      <n>  = 密钥在 n 天后过期
      <n>w = 密钥在 n 周后过期
      <n>m = 密钥在 n 月后过期
      <n>y = 密钥在 n 年后过期
密钥的有效期限是?(0)
密钥永远不会过期
以上正确吗?(y/n)y

您需要一个用户标识来辨识您的密钥;本软件会用真实姓名、注释和电子邮件地址组合
成用户标识,如下所示:
    “Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>”

真实姓名:neo chen
电子邮件地址:openunix@163.com
注释:netkiller
您选定了这个用户标识:
    “neo chen (netkiller) <openunix@163.com>”

更改姓名(N)、注释(C)、电子邮件地址(E)或确定(O)/退出(Q)?O
您需要一个密码来保护您的私钥。

我们需要生成大量的随机字节。这个时候您可以多做些琐事(像是敲打键盘、移动
鼠标、读写硬盘之类的),这会让随机数字发生器有更好的机会获得足够的熵数。
+++++++++++++++++++++++++++++++++++.+++++++++++++++++++++++++++++++++++.++++++++
++++++++++++.++++++++++++++++++++.+++++++++++++++++++++++++...>+++++............
..+++++
我们需要生成大量的随机字节。这个时候您可以多做些琐事(像是敲打键盘、移动
鼠标、读写硬盘之类的),这会让随机数字发生器有更好的机会获得足够的熵数。
+++++.++++++++++++++++++++..++++++++++.+++++.++++++++++.++++++++++.+++++.+++++++
++++++++.+++++....+++++..++++++++++.++++++++++++++++++++..++++++++++++++++++++.+
++++>++++++++++...>.+++++.............................>+++++<+++++..............
..............+++++^^^^^
gpg: 密钥 C9441A1A 被标记为绝对信任
公钥和私钥已经生成并经签字。

gpg: 正在检查信任度数据库
gpg: 需要 3 份勉强信任和 1 份完全信任,PGP 信任模型
gpg: 深度:0 有效性:  2 已签字:  0 信任度:0-,0q,0n,0m,0f,2u
pub   1024D/C9441A1A 2006-06-02
密钥指纹 = EFDC A97C C711 E9C9 FAC1  3EA9 33C1 1FB2 C944 1A1A
uid                  neo chen (netkiller) <openunix@163.com>
sub   2048g/B713326C 2006-06-02

C:\GNU>
			
			

6.12.2. 列出密钥

列出密钥使用 gpg --list-keys


C:\GNU>gpg --list-keys
C:/Documents and Settings/neo.chen/Application Data/gnupg\pubring.gpg
---------------------------------------------------------------------
pub   1024D/C9441A1A 2006-06-02
uid                  neo chen (netkiller) <openunix@163.com>
sub   2048g/B713326C 2006-06-02

			

列出密钥和签字使用 gpg --list-keys


C:\GNU>gpg --list-sigs
C:/Documents and Settings/neo.chen/Application Data/gnupg\pubring.gpg
---------------------------------------------------------------------
pub   1024D/C9441A1A 2006-06-02
uid                  neo chen (netkiller) <openunix@163.com>
sig 3        C9441A1A 2006-06-02  neo chen (netkiller) <openunix@163.com>
sub   2048g/B713326C 2006-06-02
sig          C9441A1A 2006-06-02  neo chen (netkiller) <openunix@163.com>

			

列出并检查密钥签字 gpg --check-sigs


C:\GNU>gpg --check-sigs
C:/Documents and Settings/neo.chen/Application Data/gnupg\pubring.gpg
---------------------------------------------------------------------
pub   1024D/C9441A1A 2006-06-02
uid                  neo chen (netkiller) <openunix@163.com>
sig!3        C9441A1A 2006-06-02  neo chen (netkiller) <openunix@163.com>
sub   2048g/B713326C 2006-06-02
sig!         C9441A1A 2006-06-02  neo chen (netkiller) <openunix@163.com>

			

6.12.3. 验证签字

检查 PGP 签名 与 md5sum 作用类似:

bash$ gpg --verify gnupg-x.x.x.tar.gz.sig gnupg-x.x.x.tar.gz
bash$ md5sum gnupg-x.x.x.tar.gz
			

6.12.4. EMail-Security

EMail-Security using GnuPG for Windows

gpg4win