对称加密
在对称加密体系中,密钥的分发是最大的难题,可以说对称加密的安全性绝大部分取决于密钥分发的安全性。存在着这样一种密钥分发方案:存在一个可信的第三方机构,每个用户都和这个机构共享一个绝对安全的永久加密密钥。若A想和B通信,那么A向这个机构发出申请,机构产生一个临时会话密钥,并分别用与A、B共享的永久加密密钥对这个临时密钥进行加密,并分发给A和B,这样A和B就可以进行临时通信,通信结束后,临时密钥被销毁。
Kerberos
kerberos就是上述的应用,kerberos是一种认证服务。
kerberos5相比kerberos4在一下方面有所改进:
- 加密系统:kerberos4使用的是DES,在版本5中,加上了加密类型标识符,双方可以自由选择任何加密方式。
- 票据的有效期:在kerberos4中,票据的最长有效期为分钟。而版本5中加入了开始时间和结束时间,可以使票据具有任意的有效期。
- 互联网协议:kerberos4只能使用互联网协议(IP)地址,其他网络协议不能使用(比如ISO网络地址)。版本5中的网络地址被标记了类型和长度,可以任意使用。
- 消息字节排序:kerberos4中,发送者可以选择自己喜欢的字节排序方式。而在版本5中,只能使用ASN.1和BER。
- 认证和转发:kerberos4中不能将证书转发给其他客户端。版本5中,用户可以把客户端证书转个其他主机。
- 域间认证(不太熟悉)
注: 两个版本都易受到口令攻击。由AS发送给用户的消息,是基于用户的口令密钥加密的,攻击者可以截获这个消息,并试着用不同的口令来破解。如果用户的口令具有某种形式,那么攻击者可能会破解成功,并假冒用户的身份。
非对称加密
非对称加密面临的公钥分发难题为:在一个环境中,攻击者可以假冒其中的任意一个用户,向其他用户发布自己的公钥。
于是,就此提出公钥证书的概念:公钥证书是指,当用户向其他用户广播自己的公钥时,同时附带一个第三方的签名证书。通过这个证书可以证明此用户是真正的公钥所有者。
X.509证书
该证书基于公钥加密和数据签名使用。推荐的加密算法为RSA。
使用以下标准来定义一个证书:
CA = <<A>> = CA<<V,SN,AI,CA,UCA,A,UA,Ap,Ta>>