古典密码
基本术语:
1、明文:需要发送的信息
2、密文:是由明文被加密后得到的密码信息
3、密钥:在加解密运算中所需选取的输入参数
古典密码的加密方法:
1、置换密码:将输入明文的字母顺序加以打乱,而并不改变明文字母的值
2、代换密码:将明文字母替换,而不改变顺序
机械密码
ENIGMA的组成部分:键盘、显示器、转子
缺点(一个转子):连续键入6个字母,转子转动一圈,加密装置回到原始形态,此时加密与最初加密方法重复
对称密码
1、分组密码:将明文分成固定长度分组
分组算法分为DES算法与AES算法
分组算法——ECB模式
2、流密码
特点:实现简单、便于硬件设施、加解密速度快
对称密码的密钥分配:
1、由于通信双方都适用相同密钥,因此如果通信双方之中存在恶意用户,就会使得上述密码的安全性得不到保证,即存在密钥的安全问题
2、每对用户每次使用对称加密算法时,都需要使用其他人不知道的唯一密钥,这会使得发收信双方所拥有的密钥数量成几何级数增长,造成用户在存储与管理密钥时的负担
3、对称密码无法用于数字签名
公钥密码
对称密码的不足:密钥更新、管理与分配问题;无法应用于数字签名
数字签名:如何为数字化的消息或文件提供一种类似于为书面文件手书签字的方法
公钥密码思路:当通信双方所持有的密钥不同,即加解密所需的输入参数不同
古典密码、机械密码和对称密码都是采用代换和置换这两种基本设计思想,它们均要求加解密密钥相同
公钥密码所采用的基本工具不再是代换和置换,而是以困难数学问题为基础,如大整数分解问题、离散对数问题等
公钥密码重要特性:已知密码算法和加密密钥,求解密密钥在计算上是不可行的
RSA公钥算法: