网络安全(密码与HTTPS)

                                                           网络安全(密码与HTTPS)

1、密码基础

注意:**和加密解密函数不是一个概念,**一般是保密的,但是加解密函数是公开的,加解密过程是加解密函数应用**来进行的,有点像函数和自变量才能生成因变量。

对称**密码:

两个参与者共享一个**。一方用**加密后,另一方必须用相同的**进行解密。

共享的**一定只有参与者才知道。

非对称**密码(公钥密码):

公钥密码是一对相关的**,一个用于加密(公钥),一个用于解密(私钥)。

这对**只属于一个参与方,但是参与方会把公钥(用来加密的**)公开出去,其他参与者可以用这个公钥进行加密,然后只有自己(拥有私钥)才能用私钥进行解密。

另一特性:可以用私钥和加密算法一起加密,然后这些密文只能用公钥进行解密。(相当于上面反过来)。

这个有什么用呢?(因为公钥是公开的,根本起不到加密效果)

用处:可以用来识别密文的加密方是私钥持有者。主要用于认证和秘密的分发对称**。而消息的保密则依赖于对称**。

认证码:

包含在被传输的消息中,可用于同时验证消息的真实性和数据完整性。

运用一个密码散列函数生成一个消息摘要(固定位数),添加到消息后方。

(具体有点像checksum和CRC)

接收方计算明文部分的摘要,并与解密后的摘要进行对比。因为攻击者没有私钥,他在破坏明文部分的同时就破坏了由该部分得出的消息摘要,那么就会和传送过来的摘要不一致。

还有其他方式:MAC,HMAC(不赘述,原理都差不多)

2、**预分发

公钥预分发:

PKI,大概就是用于证明公钥和身份之间的绑定关系。

对称**预分发:

KDC(Key Distributioin Center)**分发中心。

3、认证协议

对称**认证协议:

Kerberos是一个基于Needham-Schroeder协议的认证系统。

把KDC分成两个部分(功能)。

一个AS认证服务器,一个TGS票据授予服务器。

Diffie-Hellman**协商:

用于建立会话**。(数学中的模运算,有兴趣可以看一下)

4、HTTPS

TLS:Transport Layer Security

网络安全(密码与HTTPS)


一对TLS参与者在运行过程中协商要使用的密码算法:

网络安全(密码与HTTPS)