综述加密算法是如何加密_入门

我想你已经知道各式各样的加密算法的名字,各种分类.

DES,3DES,RSA,SHA256等等诸如此类

对称加密,非对称加密,单向散列加密此类

不管是什么加密方式,到底算法对明文做了什么操作.

加密分为两个层次

  • 最底层数据层面:用密钥直接操作明文数据
  • 数据块层面:因为对数据分组,定义之间的关系,复杂的块关系,可以让数据被篡改能及时发现

对称加密

明文-> ?->密文

简述:将明文作分组(block)处理,用固定格式的密钥分组后的明文做运算,产生密文

要了解的名词:

密钥:可以是自定义的一串字符,可以理解成加密算法中的参数.

分组密码和流密码:固定的明文分组格式,动态不定的明文分组格式,对明文不同的分组处理方式

填充:因为密钥具有固定格式,运算方式也是固定的,要让明文参与运算,就要求明文也有固定格式,当明文不符合规范,就要进行填充的处理

加密工作模式:属于分组密码的概念,描述的是组于组之间的加密方式

非对称加密

如何实现?

emmm..简单来说:我不知道

可以理解位两个核心部分:

  • 生成一对密钥,不是人为设定,这也是和对称加密不同的地方
  • 数据加密部分,只要是加密算法,都有这个步骤,细节我们不深究了

对我们更有实用价值的部分是非对称加密的应用.签名验证是该算法独特的地方.在金融,商业中大量应用,这里不扩展了.

中间人攻击

如下几种目的:

  • 被动攻击:偷看数据
  • 主动攻击:秘密修改数据,不被发现,导致接受者拿到错误信息