您现在的位置: 范文先生网 >> 理工论文 >> 电子通信论文 >> 正文

PGP工作原理及其安全体制

时间:2007-1-20栏目:电子通信论文

点。例如网络黑客们常用的手段之一就是“监听”,通过网络传送的密钥很容易被截获。对PGP来说,公钥本来就是要公开,就没有防监听的问题。但公钥的发布仍然可能存在安全性问题,例如公钥被篡改(publickeytampering),使得使用公钥与公钥持有人的公钥不一致。这在公钥密码体系中是很严重的安全问题。因此必须帮助用户确信使用的公钥是与他通信的对方的公钥。
  
  图3
  
  以用户A和用户B通信为例,现假设用户A想给用户B发信。首先用户A就必须获取用户B的公钥,用户A从BBS上下载或通过其它途径得到B的公钥,并用它加密信件发给B。不幸的是,用户A和B都不知道,攻击者C潜入BBS或网络中,侦听或截取到用户B的公钥,然后在自己的PGP系统中以用户B的名字生成密钥对中的公钥,替换了用户B的公钥,并放在BBS上或直接以用户B的身份把更换后的用户B的“公钥”发给用户A。那A用来发信的公钥是已经更改过的,实际上是C伪装B生成的另一个公钥(A得到的B的公钥实际上是C的公钥/密钥对,用户名为B)。这样一来B收到A的来信后就不能用自己的私钥解密了。更可恶的是,用户C还可伪造用户B的签名给A或其他人发信,因为A手中的B的公钥是仿造的,用户A会以为真是用户B的来信。于是C就可以用他手中的私钥来解密A给B的信,还可以用B真正的公钥来转发A给B的信,甚至还可以改动A给B的信。
  
  3.2防止篡改公钥的方法
  
  (1)直接从B手中得到其公钥,这种方法有局限性。
  
  (2)通过电话认证密钥:在电话上以radix-64的形式口述密钥或密钥指纹。密钥指纹(keysfingerprint)就是PGP生成密钥的160bit的SHA-1摘要(16个8位十六进制)。
  
  (3)从双方信任的D那里获得B的公钥。如果A和B有一个共同的朋友D,而D知道他手中的B的公钥是正确的。D签名的B的公钥上载到BBS上让用户去拿,A想要获得B的公钥就必须先获取D的公钥来解密BBS或网上经过D签名的B的公钥,这样就等于加了双重保险,一般没有可能去篡改而不被用户发现,即使是BBS管理员。这就是从公共渠道传递公钥的安全手段。有可能A拿到的D或其他签名的朋友的公钥也是假的,但这就要求攻击者C必须对三人甚至很多人都很熟悉,这样的可能性不大,而且必需经过长时间的策划。
  
  只通过一个签名证力度可能是小了一点,于是PGP把用不同私钥签名的公钥收集在一起,发送到公共场合,希望大部分从至少认识其中一个,从而间接认证了用户(A)的公钥。同样用户(D)签了朋友(A)的公钥后应该寄回给他(A)(朋友),这样可以让他(A)通过该用户(D)被该用户(D)的其他朋友所认证。与现实中人的交往一样。PGP会自动根据用户拿到的公钥分析出哪些是朋友介绍来的签名的公钥,把它们赋以不同的信任级别,供用户参考决定对它们的信任程度。也可指定某人有几层转介公钥的能力,这种能力随着认证的传递而递减的。
  
  (4)由一个普通信任的机构担当第三方,即“认证机构”。这样的“认证机构”适合由非个人控制的组织或政府机构充当,来注册和管理用户的密钥对。现在已经有等级认证制定的机构存在,如广东省

上一页  [1] [2] [3] [4] [5] 下一页

下页更精彩:1 2 3 4 下一页