2.1 密码学(NISP一级学习)
tbghg

前言

TBH的上课笔记。

image

密码学的发展

  1. 古典密码 受算法限制
  2. 近代密码
  3. 现代密码(香农) 新特点:基于密钥而非算法
  4. 公钥密码 无密钥传输保密通信成为可能

加密与解密

加密通过密码算法实现,密码算法从密钥使用角度分为对称密码算法和非对称密码算法。

对称密码算法

也称单钥/私钥密码算法:加密解密密钥相同或实质上相同(可从一个推出另一个)

  • DES、3DES、IDEA、AES
  • 密钥相对较短,一般采用128、192、256比特

image

非对称密码算法

非对称密码算法:加密密钥和解密密钥不同,从一个很难推出另一个。其中,对外公开的密钥,称为公开密钥( public key),简称公钥;必须保密的密钥,称为私有密钥( private key),简称私钥。又叫公钥密码算法( Public-keycipher)。

例如:RSA、ECC、ELGamal

  • 公钥加密 私钥解密
  • 私钥加密 公钥解密
  • 密钥长度512-2048位

优点:

  • 密钥分发数目与参与者数目相同
  • 在有大量参与者的情况下易于密钥管理一安全
  • 支持数字签名和不可否认性
  • 无需事先与对方建立关系,交换密钥

缺点:

  • 速度相对较慢(可能比同等强度的对称密码算法慢10倍到100倍)
  • 加密后,密文变长

混合加密

将公钥进行非对称加密

image

image

image

哈希函数

  • 对称密码和非对称密码算法主要解决信息的机密性问题,而实际系统和网络还可能受到消息篡改等攻击。
  • 篡改攻击主要包括:修改信息内容,改变程序使其不能正确运行等。哈希函数可以用来保证信息的完整性。
  • 哈希(Hash)函数(也称为杂凑函数或单向散列函数)接受一个消息作为输入,产生一个称为哈希值的输出。输出的哈希值也可称为散列值、消息摘要(Message Digest,MD)

MD5

MD:Message Digest,消息摘要

  • 输入∶任意长度的消息
  • 输出∶128位消息摘要
  • 处理∶以512位输入数据块为单位

SHA-1 算法

SHA ( Secure Hash Algorithm,安全哈希算法)由美国国家标准技术研究所开发

  • 输入∶最大长度为264位的消息
  • 输出:160位消息摘要
  • 处理∶输入以512位数据块为单位处理

比较SHA-1/MD5

  • 散列值长度
    MD5 128bits
    SHA1 160bits
  • 安全性
    SHA1算法被视为MD5的替代候选算法
  • 速度
    SHA1慢些( openssl speed md5/sha1 )

数字签名

  1. A将文件的哈希值进行私钥加密后与文件、文件的哈希值一并发过去。
  2. B用A的公钥对加密的哈希值进行解密,如果与文件的哈希值相符则证明是A。

image

  1. 可信性:签名让文件的接收者相信签名者是慎重地在文件上签名的。
  2. 不可重用性:签名不可重用,即使同一消息在不同时刻的签名也是有区别的。如果将签名部分提取出来,附加在别的消息后面,验证签名会失败。这是因为签名和所签名消息之间是一一对应的,消息不同签名内容也不同,因此签名无法重复使用。
  3. 数据完整性:在文件签名后,文件不能改变。
  4. 不可伪造性:签名能够证明是签名者而不是其他人在文件上签名,任何人都不能伪造签名。
  5. 不可否认性:在签名者否认自己的签名时,签名接收者可以请求可信第二方进行仲裁。
 评论
评论插件加载失败
正在加载评论插件