| 甲用自己的私匙将上述的128位的特征值加密,附加在邮件后,再用乙的公匙将整个邮件加密。(注意这里的次序,如果先加密再签名的话,别人可以将签名去掉后签上自己的签名,从而篡改了签名)。这样这份密文被乙收到以后,乙用自己的私匙将邮件解密,得到甲的原文和签名,乙的PGP也从原文计算出一个128位的特征值来和用甲的公匙解密签名所得到的数比较,如果符合就说明这份邮件确实是甲寄来的。这样两个安全性要求都得到了满足。 "密匙侍者"或"认证权威",
每个由他签字的公匙都被认为是真的,这样大家只要有一份他的公匙就行了,认证这个人的公匙是方便的,因为他广泛提供这个服务,假冒他的公匙是很极困难的,因为他的公匙流传广泛。这样的"权威"适合由非个人控制组织或政府机构充当,现在已经有等级认证制度的机构存在。
注意!
你所必须遵循的一条规则是:在你使用任何一个公匙之前,一定要首先认证它!!!无论你受到什么诱惑,当然会有这种诱惑,你都不要,绝对不要,直接信任一个从公共渠道(尤其是那些看起来保密的)得来的公匙,记得要用熟人介绍的公匙,或者自己与对方亲自认证。同样你也不要随便为别人签字认证他们的公匙,就和你在现实生活中一样,家里的房门钥匙你是只会交给十分信任的人的。
如何通过电话认证密匙。
每个密匙有它们自己的标识(keyID),keyID是一个八位十六进制数,两个密匙具有相同keyID的可能性是几十亿分之一,而且PGP还提供了一种更可靠的标识密匙的方法:"密匙指纹"(key's fingerprint)。每个密匙对应一串数字(十六个两位十六进制数),这个指纹重复的可能就更微乎其微了。而且任何人无法指定生成一个具有某个指纹的密匙,密匙是随机生成的,从指纹也无法反推出密匙来。这样你拿到某人的公匙后就可以和他在电话上核对这个指纹,从而认证他的公匙。如果你无法和Alice通电话,你可以和David通电话认证David的公匙,从而通过David认证了Alice的公匙,这就是直接认证和间接介绍的结合。 |