第四集 数字签名和认证技术
一、消息认证
消息认证:在消息M后追加一个短的字符串V,用以认证该消息。
发送方:M-->M||V
接收方:M||V-->yes/no(认证)
安全的认证系统应该具备:
1.接收方能够验证接受到的信息的正确性、完整性、
2.发收双方都不能抵赖
3.除了发送者,其他人无法伪造消息
认证函数—>认证协议(实现)
二、认证函数
1.消息加密函数
V本身就是密文
2.消息认证码
关于密钥和消息的公开函数,产生一个固定长度的值作为认证标识
3.散列函数
将任意长的信息映射成一个固定长度的信息,在经过加工处理就可作为认证值。Eg.MD5
特点:容易计算,比加密快;单向的(给定哈希值h,不容易找到H(x)=h);抗碰撞性(不容易找到x,y,使得H(x))=H(y))
三、数字签名
1.特征:能够验证作者和签名的日期时间
能够认证签名时刻的内容
能够由第三方验证,以解决争议
2.要求:易于计算,易于验证;无法伪造;可以保存副本。
3.模型:
模型1
模型2
完整性:认证;不可否认性:签名;性能:使用对称加密,对散列值M加密
四、认证应用
1.Kerberos:基于对称密钥体系的认证服务
增加认证服务器,用于管理用户的账户密码和权限。用户先访问认证服务器,获取相关访问某台服务器的权限之后再去访问这台服务器获取服务。这样的话便于管理。
Kerberos认证过程(使用坐飞机的例子帮助理解)
跨域的授权和认证
2.X.509:基于数字证书(公钥密码体系,PKI)的目录认证服务
为用户提供公钥证书,基于公钥证书定义认证协议。
CA:可信任的颁发证书的服务器【证书:网络身份证】
CA用它的私钥对证书加密,如果用户使用CA的公钥能够解开密文,说明这个证书是CA颁发的。
#证书:证书由CA或用户放在目录中,使得所有人均可查询数据(链接指向它就行了)
验证:获取证书&CA公钥
解开证书,核对证书内容是否属实,就实现了认证。
证书链。
【我真的好勤奋!被自己感动了!这种渣网速下,看视频的同时刷了好多次微博...还剩最后一集,就可以发完结篇了!!!】