当前位置: 移动技术网 > 网络运营>安全>加解密 > SSL&TLS传输层加密协议实现图解

SSL&TLS传输层加密协议实现图解

2018年03月29日  | 移动技术网网络运营  | 我要评论

一、SSL&TLS
    1.SSL:Secure Sockets Layer ,加密套接字协议层
       1)SSL是为网络通信提供安全及数据完整性的一种安全协议,在传输层对网络连接进行加密
             Secure Socket Layer为Netscape网景公司1994年所研发,用以保障在Internet上数据传输之安全,利用数据加密技术,可确保数据在网络上之传输过程中不会被截取及窃听。
       2)SSL协议可分为两层:记录协议、握手协议
           SSL Record Protocol:建立在可靠的传输协议如TCP之上为高层协议提供数据封装、压缩、加密等基本功能
           SSL Handshake Protocol:建立在SSL记录协议之上用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
         3)SSL版本:1.0v  2.0v  3.0v
              1.0版本未公布,2.0版本才发出就被暴出大量漏洞
              主流版为3.0。广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输,但近期被爆出安全漏洞
 
     2.TLS:Transport Layer Security,安全传输层协议
           1999年,IETF在仿照SSL发布,为防止SSL一家独大,基本和SSL协议兼容
           (1)版本:V1.0, V1.1, V1.2, V1.3
        V1.3现在为草案支持椭圆曲线算法,现在主流是V1.2
(2)分层设计:
       1)最底层:基础算法原语的实现,aes, rsa, md5
       2)向上一层:各种算法的实现;
       3)再向上一层:组合算法实现的半成品;
      4)用各种组件拼装而成的各种成品密码学协议软件;
 
    3.SSL和TLS实现网络安全性:http  -->  SSL/TLS --> https
          传输层协议有TCP,UDP,SCTP,不同主机上的进程间通信通过socket(ip:port)
          client ip:port  serverip:port
port:进程地址,进程向内核注册使用某端口(独占)
套接字一般处于监听模式:LISTEN(ip:port),占用端口,发起请求是启用服务
 
 
 
 
二、传输安全性实现:密钥算法协议
    1.网络传输安全性
           (1)安全的目标
       保密性:confidentiality
       完整性:integrity
       可用性:availability
           (2)攻击类型
      威胁保密性的攻击:窃听、通信量分析;
      威胁完整性的攻击:更改、伪装、重放、否认
      威胁可用性的攻击:拒绝服务(DoS)
           (3)解决方案
      技术层面:加密和解密
      服务层面:用于抵御攻击的服务,也即是为了上述安全目标而特地设计的安全服务
    2.密钥算法
         (1)对称加密:加密和解密使用同一个密钥;
                  1)特性:加密、解密使用同一个密钥;将原始数据分割成为固定大小的块,逐个进行加密;
                  2)缺陷:密钥过多;密钥分发困难;
                  3)种类:
               DES:Data Encryption Standard,数据加密标准;算法的入口参数有三个:Key、Data、Mode。
                                              Key为7个字节共56位,是DES算法的工作密钥;
                                              Data为8个字节64位,是要被加密或被解密的数据;
                                              Mode为DES的工作方式,有两种:加密或解密

               3DES:三轮加密的DES
               AES:Advanced Encryption Standard;  (128bits, 192bits, 256bits, 384bits)
               Blowfish、Twofish、IDEA、RC6、CAST5
         (2)公钥加密:密钥分为公钥与私钥
                  1)公钥:从私钥中提取产生;可公开给所有人;pubkey
       2)私钥:通过工具创建,使用者自己留存,必须保证其私密性;secret key;
       3)特点:用公钥加密的数据,只能使用与之配对儿的私钥解密;反之亦然;
       4)用途:身份认证,数字签名:主要在于让接收方确认发送方的身份;
             密钥交换:发送方用对方公钥加密一个对称密钥,并发送给对方;
             数据(特征码)加密:其加密速度比对称加密慢三个数量级,所以不能做全数据加密
        5)算法:RSA, DSA, ELGamal
   DSS: Digital Signature Standard
   DSA:Digital Signature Algorithm
         (3)单向加密:即提出数据指纹;只能加密,不能解密
                  1)特性:定长输出、雪崩效应;
       2)功能:完整性校验;
       3)算法:md5:Message Digest 5, 128bits,消息摘要算法,版本号为五
           sha1:Secure Hash Algorithm 1, 160bits ,安全的Hash算法
           sha224, sha256, sha384, sha512
    3.密钥交换协议:IKE(Internet Key Exchange)
           (1)公钥加密
           (2)DH(Deffie-Hellman)算法:密码本身无需在互联网上传输,但双方能得到一致的密码
                   扩展:ECDH(椭圆曲线DH)、ECDH(临时椭圆曲线DH)
      实现方案简介:
   1)A和B生成两个数字:p, g。p大素数和g,可以明文可以传输
               2)A和B各自自定义一个数字x、y,进行阶乘取模操作,将其结果传递给对方
            A私下生成x     --> p^x%g ==> B
            B私下生成y    --> p^y%g ==> A
    3)A和B进行解密操作
            A: (p^y%g)^x=p^yx%g  ; B: (p^x%g)^y=p^xy%g
    4.PKI:Public Key Infrastructure公钥基础设施
          (1)PKI组成
签证机构:CA
注册机构:RA
证书吊销列表:CRL
证书存取库:CB,公共存储证书位置
          (2)X.509v3:定义了证书的结构以及认证协议标准
     版本号、序列号、签名算法ID、发行者名称、有效期限、主体名称、主体公钥、发行者的惟一标识
     主体的惟一标识、扩展、发行者的签名

 

一、SSL&TLS
    1.SSL:Secure Sockets Layer ,加密套接字协议层
       1)SSL是为网络通信提供安全及数据完整性的一种安全协议,在传输层对网络连接进行加密
             Secure Socket Layer为Netscape网景公司1994年所研发,用以保障在Internet上数据传输之安全,利用数据加密技术,可确保数据在网络上之传输过程中不会被截取及窃听。
       2)SSL协议可分为两层:记录协议、握手协议
           SSL Record Protocol:建立在可靠的传输协议如TCP之上为高层协议提供数据封装、压缩、加密等基本功能
           SSL Handshake Protocol:建立在SSL记录协议之上用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
         3)SSL版本:1.0v  2.0v  3.0v
              1.0版本未公布,2.0版本才发出就被暴出大量漏洞
              主流版为3.0。广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输,但近期被爆出安全漏洞
 
     2.TLS:Transport Layer Security,安全传输层协议

           1999年,IETF在仿照SSL发布,为防止SSL一家独大,基本和SSL协议兼容
           (1)版本:V1.0, V1.1, V1.2, V1.3
        V1.3现在为草案支持椭圆曲线算法,现在主流是V1.2
(2)分层设计:
       1)最底层:基础算法原语的实现,aes, rsa, md5
       2)向上一层:各种算法的实现;
       3)再向上一层:组合算法实现的半成品;
      4)用各种组件拼装而成的各种成品密码学协议软件;
 
    3.SSL和TLS实现网络安全性:http  -->  SSL/TLS --> https
          传输层协议有TCP,UDP,SCTP,不同主机上的进程间通信通过socket(ip:port)
          client ip:port  serverip:port
port:进程地址,进程向内核注册使用某端口(独占)
套接字一般处于监听模式:LISTEN(ip:port),占用端口,发起请求是启用服务
 
 
 
 
二、传输安全性实现:密钥算法协议
    1.网络传输安全性
           (1)安全的目标
       保密性:confidentiality
       完整性:integrity
       可用性:availability
           (2)攻击类型
      威胁保密性的攻击:窃听、通信量分析;
      威胁完整性的攻击:更改、伪装、重放、否认
      威胁可用性的攻击:拒绝服务(DoS)
           (3)解决方案
      技术层面:加密和解密
      服务层面:用于抵御攻击的服务,也即是为了上述安全目标而特地设计的安全服务
    2.密钥算法
         (1)对称加密:加密和解密使用同一个密钥;
                  1)特性:加密、解密使用同一个密钥;将原始数据分割成为固定大小的块,逐个进行加密;
                  2)缺陷:密钥过多;密钥分发困难;
                  3)种类:
               DES:Data Encryption Standard,数据加密标准;算法的入口参数有三个:Key、Data、Mode。
                                              Key为7个字节共56位,是DES算法的工作密钥;
                                              Data为8个字节64位,是要被加密或被解密的数据;
                                              Mode为DES的工作方式,有两种:加密或解密
               3DES:三轮加密的DES
               AES:Advanced Encryption Standard;  (128bits, 192bits, 256bits, 384bits)
               Blowfish、Twofish、IDEA、RC6、CAST5
         (2)公钥加密:密钥分为公钥与私钥
                  1)公钥:从私钥中提取产生;可公开给所有人;pubkey
       2)私钥:通过工具创建,使用者自己留存,必须保证其私密性;secret key;
       3)特点:用公钥加密的数据,只能使用与之配对儿的私钥解密;反之亦然;
       4)用途:身份认证,数字签名:主要在于让接收方确认发送方的身份;
             密钥交换:发送方用对方公钥加密一个对称密钥,并发送给对方;
             数据(特征码)加密:其加密速度比对称加密慢三个数量级,所以不能做全数据加密
        5)算法:RSA, DSA, ELGamal
    DSS: Digital Signature Standard
   DSA:Digital Signature Algorithm
         (3)单向加密:即提出数据指纹;只能加密,不能解密
                  1)特性:定长输出、雪崩效应;
       2)功能:完整性校验;
       3)算法:md5:Message Digest 5, 128bits,消息摘要算法,版本号为五
           sha1:Secure Hash Algorithm 1, 160bits ,安全的Hash算法
           sha224, sha256, sha384, sha512
    3.密钥交换协议:IKE(Internet Key Exchange)
           (1)公钥加密
           (2)DH(Deffie-Hellman)算法:密码本身无需在互联网上传输,但双方能得到一致的密码
                   扩展:ECDH(椭圆曲线DH)、ECDH(临时椭圆曲线DH)
      实现方案简介:
   1)A和B生成两个数字:p, g。p大素数和g,可以明文可以传输
               2)A和B各自自定义一个数字x、y,进行阶乘取模操作,将其结果传递给对方
            A私下生成x     --> p^x%g ==> B
            B私下生成y    --> p^y%g ==> A
    3)A和B进行解密操作
            A: (p^y%g)^x=p^yx%g  ; B: (p^x%g)^y=p^xy%g
    4.PKI:Public Key Infrastructure公钥基础设施
          (1)PKI组成
签证机构:CA
注册机构:RA
证书吊销列表:CRL
证书存取库:CB,公共存储证书位置
          (2)X.509v3:定义了证书的结构以及认证协议标准
     版本号、序列号、签名算法ID、发行者名称、有效期限、主体名称、主体公钥、发行者的惟一标识
     主体的惟一标识、扩展、发行者的签名
 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网