iOS进阶_密码学进阶(一.对称加密算法简介)

加密算法:
- HASH 散列函数
- 不可逆!密码”识别”,文件”识别”

以下两种加密算法,都是可逆的!
* 明文 –> 加密 –> 密文
* 密文 –> 解密 –> 明文

  • 对称加密 - 传统加密算法
    • 加密和解密使用同一个”密钥”!
    • 密钥的保密工作就非常的重要!! 密钥会定期更换!密钥的管理很重要!!

经典算法
- DES 数据加密标准(用的比较少,因为强度不够).
- 3DES 使用3个密钥,对相同的数据执行三次加密,强度增强.
- AES 高级加密标准,目前美国国家安全局使用AES加密,苹果的钥匙串访问就是使用
AES加密

两种加密方式!!ECB和CBC

ECB: 电子代码本,就是将一个数据拆分为多块,然后独立加密的!

终端命令:

$ openssl enc -des-ecb -K 616263 -nosalt -in xxx.xxx -out XXX.XXX    加密
$ openssl enc -des-ecb -K 616263 -nosalt -in xxx.xxx -out XXX.XXX -d 解密
$ xxd xxx.xxx  查看加密之后的文件
CBC: 密码块链,使用一个密钥和一个初始化"向量"对数据执行加密抓换
    能保证密文的完整性,如果一个数据发生改变,后面所有的数据将会被破坏!

这里写图片描述

向量:某个方向的数量.
现代的密码学都和几何有关!因为几何(包含圆形\椭圆\球体)的变量是有规律的,但是结果是多变的!

这里写图片描述

  • 非对称加密(RSA) - 现代加密算法
    • 公钥\私钥
    • 用公钥加密,私钥解密
    • 用私钥加密,公钥解密

猜你喜欢

转载自blog.csdn.net/wtdask/article/details/80340430