1. 通信加密模型
加密过程:
加密模型:
密码分类:按密码体制的特点、 出现的先后时间可分为以下几类:
1. 传统加密方式;
2. 对称密钥加密;
3. 非对称/公开密钥加密;
2. 传统加密方式
1. 替代密码: 凯撒密码;
2. 换位密码: 列置换密码;
根据一定规则重新排列明文, 以便打破明文的结构特性,只改变明文结构, 不改变内容。
列置换密码加密过程:
(1). 确定密钥长度( 几个字母) , 并且确定密钥字母在字母表中的先后顺序, 用数字表示;
(2). 将明文P按密钥K的长度n进行分组, 并且每组一行按行排列, 即每行有n个字符。若明文长度不是n的整数倍, 则不足部分用双方约定的方式填充, 如双方约定用字母"x""替代空缺处字符;
(3). 看密钥字母顺序, 和排列好后的表格对应,确定输出顺序确定;
(4). 设最后得到的字符矩阵为Mmn,m为明文划分的行数。 然后, 按照密钥规定的次序将Mmn对应的列输出, 便可得到密文序列C;
3. 对称密钥加密
对称密钥加密: 加密密钥和解密密钥是相同的。
1. 分组密码(块密码);
(1). DES加密算法(Data Encryption Standard);
加密: 明文分为64位分组, 使用56位的密钥, 进行16轮加密。
三重DES: 使用两个密钥, 执行三次DES算法, 密钥长度达到112位。
(2). AES加密算法(Advanced Encryption Standard);
密钥长度: 128/192/256位。
AES加密算法的特点:
A. 分组长度和密钥长度均可变;
B. 循环次数允许在一定范围内根据安全要求进行修正;
C. 安全、 效率、 易用、 灵活;
D. 抗线性攻击和抗差分攻击的能力大大增强;
E. 如果1秒暴力破解DES, 则需要149万亿年破解AES;
(3). IDEA加密算法(International Data Encryption Algorithm);
密钥长度: 128位。
2. 流密码(序列密码);
4. 非对称/公开密钥加密
非对称密钥加密( 公开密钥加密) : 加密密钥和解密密钥是不同的。
通信双方都有两个密钥。公钥: 任何人都可以得到。私钥: 只有自己知道。
典型的公开密钥加密算法: Diffie-Hellman算法和RSA算法。Diffie-Hellman算法: 基于数学中素数原根理论。RSA算法: 基于数论设计, 安全性建立在大数分解的难度上,应用比较广泛, 安全性高。
非对称密钥加密(公开密钥加密)加密过程:
Alice给Bob写信:
1. Alice用Bob的公钥加密明文, 发送;
2. Bob收到密文后, 用自己的私钥解密得到明文。
Alice给Bob写信,如果加密用私钥, 解密用公钥可以吗?没问题,完全可以!