非对称算法全解析
1. 非对称加密简介
非对称加密,顾名思义,是一种使用一个密钥加密消息,而用另一个(相关但不同)密钥解密的加密形式。这种概念常常让刚接触密码学和网络安全课程的学生感到困惑:为什么用于加密的密钥不能用于解密呢?在深入研究几个算法并了解其中的数学原理后,这个问题就会变得清晰。
非对称加密算法也常被称为公钥算法,因为其中一个密钥是公开的,另一个则是私有的。对称加密存在一个严重问题——密钥交换。假设爱丽丝想给鲍勃发送一条消息,但担心伊芙会窃听。如果没有非对称加密,仅依靠对称密码,且爱丽丝和鲍勃不在同一地点,他们很难安全地交换密钥。若每次安全通信都需要可靠的信使手动传递密钥,那么像网上银行、电子商务等众多实用技术将无法实现。
当鲍勃想回复爱丽丝时,他获取爱丽丝的公钥加密消息,只有爱丽丝的私钥能解密。因此,非对称加密解决了密钥交换问题。即使地球上的每个人都拥有鲍勃和爱丽丝的公钥,也不会影响安全性,因为公钥只能用于加密消息,无法解密。只要鲍勃和爱丽丝妥善保管私钥,就能实现安全通信,且不存在密钥交换问题。
有时会遇到论文讨论某个算法具有IND - CPA、IND - CCA1或IND - CC2安全性,这些是指算法在特定攻击下的不可区分性。IND - CPA是在选择明文攻击下的不可区分性,IND - CCA1是非自适应选择密文攻击下的不可区分性,IND - CCA2是自适应选择密文攻击下的不可区分性。
2. RSA算法
RSA可能是使用最广泛、最著名的非对称算法之一。它由罗恩·李维斯特(Ron Rivest)、阿迪·沙米尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)于1977年首次发表
超级会员免费看
订阅专栏 解锁全文
3172

被折叠的 条评论
为什么被折叠?



