密码学是加密和解密数据的科学,它使用户能够存储敏感信息或在不安全的网络上传输敏感信息,以便只能由预期的接收者读取。
可以在没有任何特殊措施的情况下读取和理解的数据称为明文,而伪装明文以隐藏其实质的方法称为加密。加密的明文称为密文,将加密数据恢复为纯文本的过程称为解密。
加密算法与密钥(可以是单词,数字或短语)组合工作以加密明文,并且相同的明文加密到具有不同密钥的不同密文。
因此,加密数据完全依赖于一对参数,例如:加密算法的强度和密钥的保密性。
- 对称加密 - 传统加密技术,也称为传统加密技术,是一种只使用一个密钥进行加密和解密的技术。例如,DES
,Triple DES算法,IBM的MARS,RC2,RC4,RC5,RC6。
- 非对称加密 - 使用一对密钥进行加密的公钥加密:用于加密数据的公钥和用于解密的私钥。公钥发布给人们,但保密私钥。例如,RSA,数字签名算法(DSA),Elgamal。
- 散列 - 散列是单向加密,它创建了一个无法逆转或至少无法轻易反转的混乱输出。例如,MD5算法。它用于创建数字证书,数字签名,密码存储,通信验证等。