【密码学】密码学基础
1 密码学基本概念
密码学是研究编制密码和破译密码的技术科学。
密码学的安全目标至少包含三个方面:保密性、完整性、可用性。
-
保密性:信息仅被合法用户访问(浏览、阅读、打印等),不被泄漏给非授权的用户、实体或过程。
-
完整性:资源只有授权方以授权的方式进行修改,所有资源没有授权则不能修改。
-
可用性:资源只有在适当的时候被授权方访问,并按需求使用。
1.1 密码体制
-
明文(Plaintext):伪装前的数据
-
密文(Ciphertext):伪装后的数据
-
加密(Encryption):伪装的过程
-
解密(Decryption):去掉伪装恢复明文的过程
-
加密过程:加密密钥和加密算法的控制
-
解密过程:解密密钥和解密算法的控制
密码系统由5部分组成:
(1)明文空间M:全体明文的集合
(2)密文空间C:全体密文的集合
(3)加密算法E:一组明文M到密文C的加密变换
(4)解密算法D:一组密文C到明文M的加密变换
(5)密钥空间K:包含加密密钥\({k_e}\)和解密密钥\({k_d}\)的全体密钥集合。
1.2 密码学类别
-
1)古典密码
-
- 置换密码
-
- 代替密码
-
2)分组密码
-
- DES算法
-
- AES算法
-
- SM4算法
-
3)序列密码
-
- RC4
-
- ZUC
-
4)HASH函数
-
- MD5算法
-
- SHA算法
-
- SM3算法
-
- HMAC算法
-
5)公钥密码体制
-
- RSA密码
-
- Diffie-Hellman与EIGamal体制
-
- 椭圆曲线密码
-
6)数字签名
-
7)认证
-
- 身份认证
-
- 报文认证
-
8)密钥管理
-
- 对称密钥分配
-
- 非对称公钥分配