文章目录
前言
- 网络中发送的数据是明文,路径中的任何人都可以查看你的数据,篡改你的数据,伪造你的数据,带来一定的风险。
- HTTP 协议由于上述原因,导致需要一个安全的协议方案。整体都属于应用层,先去找 SSL(提供安全加密服务的公司)做数据加密,然后再去找 TCP (提供数据可靠性发送的公司)做数据发送。(应用层的 tomcat 还是发送的 HTTP 协议)。
- 安全又可以细分为:传输安全(HTTPS) 和 数据安全(把密码做 BCrypt,属于数据安全,对敏感数据做脱敏操作)。
一、加密的背景介绍
1、加密 encrption/解密 decrption
- 加密之前的数据被称为明文;加密之后的数据被称为密文。
- 加密和解密过程是需要秘钥(key)的。
- 加/解密、压缩/解压、哈希的区别:
- 哈希:SHA-512、SHA-256、MD5、BCrypt、CRC;把数据进过哈希之后变成哈希值,是单向的。
- 加/解密:明文加密变成密文,密文解密可以回成一个明文,中间不会有信息损失。
- 压缩/解压:虽然可以回来,但是中间可能会有信息损失。
- 对于现代密码学来说:加密算法是完全可以公开的,只是秘钥不公开就可以;任然可以保证数据安全。