对称加密也称为共享密钥加密,它的基本原理是加密和解密使用相同的密钥。常见的对称加密算法有DES、3DES、AES等。首先,需要将明文和密钥输入到算法中,经过加密算法得到密文,然后将密文发送给接收方。接收方使用相同的密钥和加密算法对密文进行解密,得到明文。
非对称加密也称为公钥加密,它的基本原理是使用一对密钥:公钥和私钥,其中公钥可以公开,私钥保密。发送方使用接收方的公钥对明文进行加密,接收方再使用自己的私钥对密文进行解密。非对称加密算法的典型代表是RSA算法。
与对称加密相比,非对称加密具有更高的安全性,但是加密解密的速度较慢。
哈希加密也称为散列加密,它的基本原理是将任意长度的输入(又称为预映射, pre-image),通过哈希算法变换成固定长度的输出,该输出即为哈希值。哈希算法具有不可逆性,即无法通过哈希值反推出原始数据。常见的哈希算法有MD5、SHA-1、SHA-256等。
哈希加密主要用于数字签名、数据验证等场景,可以有效地防止数据被篡改。
消息认证码也称为MAC,它的基本原理是在数据传输过程中对数据进行加密和校验,以确定数据的完整性和真实性。消息认证码使用一个密钥和一个消息进行计算,得到一个小的固定大小的验证码。接收方使用相同的密钥和消息计算验证码,然后将计算得到的验证码与发送方传递过来的验证码进行比对,从而判断数据的完整性和真实性。
常见的消息认证码算法包括HMAC、CMAC等。