现代密码学主要分为对称密码体制和非对称密码体制,二者的异同个人总结如下。
相似之处主要包含以下四个方面
(1)目标:二者都是为了保障数据在存储和传输过程中的安全性和可用性。
(2)主要算法:二者都包含密钥生成算法、加密算法和解密算法三种主要算法。
(3)实施过程:二者都是通过密钥和加密算法对明文进行编码使之成为密文,再通过密钥和解密算法将密文还原成明文。
(4)安全性依赖:在实际加密场景中,二者通常都是公开加解密算法,相关密码体制的安全强度都依赖于密钥的获取难度。
不同之处主要包含以下三个方面
(1)密钥的个数和种类:对称密码体制在加解密过程中使用同一把密钥,因此也称单密钥体制。对于该体制而言,每一次加解密过程中,都能由加密密钥推出解密密钥,一旦密钥发生泄露,由该密钥加密的数据将被完全破解。而在公钥密码体制中,加密密钥和解密密钥互不相同,解密密钥为私人所有,称为私钥,加密密钥向公众开放,称为公钥。
(2)实现的功能不同:对称密码体制只能实现加解密功能,因此只能满足数据的机密性需求,不能解决数据在传输过程中出现的数据篡改、丢失和抵赖等安全问题。公钥加密体制不仅能实现数据的加密和解密,还具有数字签名功能,因此能实现数据传输双方的身份认证和不可否认性,保证数据的真实性和可用性。
(3)计算效率:对称密码体制加解密速度快,数据处理能力强,计算开销和占用内存空间小,便于软硬件实现,在处理大规模数据时优势明显。与对称密码体制相比,非对称密码体制存在密钥长度过长、计算效率不高等不足。即使安全等级最高、密钥长度最短的椭圆曲线公钥密码体制的密钥长度和相同安全等级的对称密码体制相比仍有一定差距,如160比特的椭圆曲线密码体制和80比特的对称密码体制的安全等级相同。