加密技术和安全通信

  • 网络通信安全的基础
    • 条件:
      • 保密性:
        • 数据保密性
        • 私密性
      • 完整性:
        • 数据完整性
        • 系统完整性
      • 可用性:
        • 数据可用性
    • 安全攻击:
      • 被动攻击:侦听手段
      • 主动攻击:伪装成发送或接听者;重放;消息篡改;拒绝-服务攻击
    • 安全机制
      • 加密,数字签名、访问控制、数据完整性、认证交换、流量填充、路由控制、公证
    • 安全服务:
      • 认证
      • 访问控制
      • 数据保密性
        • 连接保密性
        • 无连接保密性
        • 流量保密性
        • 选择保密性
      • 数据完整性服务
      • 不可否认性
    • 密码算法和协议
      • 对称加密
      • 非对称加密(公钥加密,私钥加密)
      • 单向加密(提供特征码)
      • 认证协议:SSL TLS
    • 常见的加密算法和协议
      • 对称加密:
        • DES:56位的秘钥,已经被攻破2013年
        • 3DES
        • AES:高级加密标准,支持128bits 192bits 258bits - 512bits
        • Blowfish
        • Twofish
        • IDEA
        • RC6
        • CASTS
      • 常用 AES Twofish
      • 特征:
        • 加密和解密使用的是同一密钥
        • 将原始数据分割成固定大小的块,逐个进行加密
      • 缺陷:
        • 通信对象过多,需要密钥多个
        • 密钥分发,把密钥传给对方(对称密钥)
      • 公钥加密:密钥成对出现的(非对称加密)
        • 公钥:是公开的
        • 私钥:是自己的
        • 特点:
          • 用公钥去加密数据,只能与之对应的私钥解密
        • 作用:
          • 身份验证(数字签名):主要在于发送方是自己想找到的
          • 将数据提取特征码,使用单向解密,用来发送方的私钥加密,收到后,用对方公钥解密,查看特征码,同 时在用同样的加密算法,看特征码跟发来的是否一致,确保完整性
          • 密钥的交换:用对方的公钥加密一个对称秘钥,发送给对方
      • 数据加密:
      • 常用算法:DSA、ELGamel
      • 单向加密:只能加密,不能解密,提取特征码
        • 特征:定长输出,雪崩效应
        • 算法::md5:128bits,sha1:160bits,sha256,sha512,sha384
        • 功能:数据完整性校验
  • OpenSSL介绍和使用

https://segmentfault.com/a/1190000014963014