2.公钥加密算法与RSA[共2页]

  • 格式:pdf
  • 大小:128.00 KB
  • 文档页数:1

下载文档原格式

  / 1
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

226

Kerberos采用对称密钥体制对信息进行加密。其基本思想是:能正确对信息进行解密的用户就是合法用户。用户在对应用服务器进行访问之前,必须先从第三方(Kerberos服务器)获取该应用服务器的访问许可证(ticket)。

Kerberos密钥分配中心KDC(即Kerberos服务器)由认证服务器AS和许可证颁发服务器TGS构成。Kerberos认证过程具体如下。

①用户想要获取访问某一应用服务器的许可证时,先以明文方式向认证服务器AS发出请求,要求获得访问TGS的许可证。

②AS以证书(credential)作为响应,证书包括访问TGS的许可证和用户与TGS间的会话密钥。会话密钥以用户的密钥加密后传输。

③用户解密得到TGS的响应,然后利用TGS的许可证向TGS申请应用服务器的许可证,该申请包括TGS的许可证和一个带有时间戳的认证符(authenticator)。认证符以用户与TGS间的会话密钥加密。

④TGS从许可证中取出会话密钥、解密认证符,验证认证符中时间戳的有效性,从而确定用户的请求是否合法。TGS确认用户的合法性后,生成所要求的应用服务器的许可证,许可证中含有新产生的用户与应用服务器之间的会话密钥。TGS将应用服务器的许可证和会话密钥传回到用户。

⑤用户向应用服务器提交应用服务器的许可证和用户新产生的带时间戳的认证符(认证符以用户与应用服务器之间的会话密钥加密)。

⑥应用服务器从许可证中取出会话密钥、解密认证符,取出时间戳并检验有效性;然后向用户返回一个带时间戳的认证符,该认证符以用户与应用服务器之间的会话密钥进行加密。据此,用户可以验证应用服务器的合法性。

至此,双方完成了身份认证,并且拥有了会话密钥。其后进行的数据传递将以此会话密钥进行加密。

Kerberos将认证从不安全的工作站移到了集中的认证服务器上,为开放网络中的两个主体提供身份认证,并通过会话密钥对通信进行加密。对于大型的系统可以采用层次化的区域(realm)进行管理。

Kerberos也存在一些问题:Kerberos服务器的损坏将使整个安全系统无法工作;AS在传输用户与TGS间的会话密钥时是以用户密钥加密的,而用户密钥是由用户口令生成的,因此可能受到口令猜测的攻击;Kerberos使用了时间戳,因此存在时间同步问题;要将Kerberos用于某一应用系统,则该系统的客户端和服务器端软件都要做一定的修改。

2.公钥加密算法与RSA

(1)公钥加密算法。在私钥加密算法(对称加密算法)DES中,加密和解密所使用的密钥是相同的,其保密性主要取决于对密钥的保密程度。加密者必须用非常安全的方法将密钥传给接收者。如果通过计算机网络传送密钥,则必须先对密钥本身予以加密后再传送。

1976年,美国的Diffe和Hallman提出了一个新的非对称密码体系(公钥加密算法)。其主要特点是在对数据进行加密和解密时使用不同的密钥。每个用户都保存着一对密钥,每个人的公开密钥都对外开放。假如某用户要与另一用户通信,可用公开密钥对数据进行加密,而收信者则用自己的私有密钥进行解密,这样就可以保证信息不会外泄。

公钥加密算法的特点可总结为以下几点。

①加密和解密分别用加密密钥和解密密钥两个不同的密钥实现,并且不可能由加密密钥推导出解密密钥(或者不可能由解密密钥推导出加密密钥)。其加/解密过程如图12-9所示。