LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: auyeung

用了GnuPG 有个关于数字签名和加密的一个问题?

[复制链接]
发表于 2007-1-5 11:36:27 | 显示全部楼层
Post by auyeung
比如我签名用的DSA  加密用的 ELGAMAL
是不是他们各自都生成一个私匙 一个公匙
然后2个公匙都要发给别人 别人才能验证我的签名 和 发送加密信息给我?

还是他们共用一个公匙  这个公匙即可以验证我的签名又可以加密信息让我来解?

如果都用RSA呢?


应该是各生成一个公钥 私钥吧,也就是两个 KEYPAIR,呵呵。它们不公用一个公钥,导出的 Public Key 文件里有两个公钥的信息,只要提供这个文件给别人就好了。

看输出就知道了哈:
  1. [yichi@localhost ~]$ gpg --expert --gen-key
  2. gpg (GnuPG) 1.4.6; Copyright (C) 2006 Free Software Foundation, Inc.
  3. This program comes with ABSOLUTELY NO WARRANTY.
  4. This is free software, and you are welcome to redistribute it
  5. under certain conditions. See the file COPYING for details.

  6. Please select what kind of key you want:
  7.    (1) DSA and Elgamal (default)
  8.    (2) DSA (sign only)
  9.    (3) DSA (set your own capabilities)
  10.    (5) RSA (sign only)
  11.    (7) RSA (set your own capabilities)
  12. Your selection? 1
  13. DSA keypair will have 1024 bits.
  14. ELG-E keys may be between 512 and 4096 bits long.
  15. What keysize do you want? (2048)
复制代码


如果通过 GNUPG 来管理的话只要导出 PUBLIC KEY 发给想发送加密信息给你的人就好了。这个导出的文件里边有可以有好几个 KEY 的,你可以看看 GNUPG 的手册(Chapter 3 Key Management),这个文件里边包括什么 MASTER KEY,SUBKEY……

KEY 文件的格式在 RFC2440 (section 11)  有说,被 GNUPG 处理(就是加密或签名或二者一起)过的文件的格式好像在 RFC1991 里有说,你可以看看。

  1. [yichi@localhost ~]$ gpg --list-secret-keys
  2. /home/yichi/.gnupg/secring.gpg
  3. ------------------------------
  4. sec   1024R/1AA7E21B 2007-01-04 [expires: 2012-01-03]
  5. uid                  Yichi Zhang <zyichi@gmail.com>
  6. ssb   1024R/DAA27B44 2007-01-04

  7. sec   1024D/B4D9E0ED 2007-01-04
  8. uid                  Yichi Zhang <zhang.yichi@163.com>
  9. ssb   2048g/713C31A5 2007-01-04

  10. sec   1024D/0CA9EC98 2007-01-05 [expires: 2007-04-05]
  11. uid                  张一弛 <zyichi@gmail.com>
  12. ssb   2048g/88A84244 2007-01-05

  13. sec   1024D/EA4F2EA6 2007-01-05
  14. uid                  Yichi Zhang <zyichi@gmail.com>

  15. [yichi@localhost ~]$ gpg --list-keys
  16. /home/yichi/.gnupg/pubring.gpg
  17. ------------------------------
  18. pub   1024R/1AA7E21B 2007-01-04 [expires: 2012-01-03]
  19. uid                  Yichi Zhang <zyichi@gmail.com>
  20. sub   1024R/DAA27B44 2007-01-04 [expires: 2012-01-03]

  21. pub   1024D/B4D9E0ED 2007-01-04
  22. uid                  Yichi Zhang <zhang.yichi@163.com>
  23. sub   2048g/713C31A5 2007-01-04

  24. pub   1024D/0CA9EC98 2007-01-05 [expires: 2007-04-05]
  25. uid                  张一弛 <zyichi@gmail.com>
  26. sub   2048g/88A84244 2007-01-05 [expires: 2007-04-05]

  27. pub   1024D/EA4F2EA6 2007-01-05
  28. uid                  Yichi Zhang <zyichi@gmail.com>

  29. [yichi@localhost ~]$
复制代码


如果想多了解点可以看看 GNUPG 的手册和 RFC1991 & RFC2440:
http://www.gnupg.org/gph/en/manual.pdf
http://www.ietf.org/rfc.html
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-1-5 15:19:55 | 显示全部楼层
原来是这样  每个签名加密生成的公匙都在一个文件里
THX
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表