第三章传统密码体制
Vigenere密码使用一个词组作为密钥,密钥中每一 个字母用来确定一个代替表,每一个密钥字母被 用来加密一个明文字母,第一个密钥字母加密明 文的第一个字母,第二个密钥字母加密明文的第 二个字母,等所有密钥字母使用完后,密钥又再 循环使用。Vigenere密码算法如下:
Vigenere密码加密和解密原理
#include <stdio.h> void main() { char c[200]; FILE *fp; int i=0; int count[26]={0}; fp=fopen("cipher.txt","r"); while(!feof(fp)) c[i++]=fgetc(fp); for(i=0;c[i];i++) count[c[i]-'a']++;
加密过程:给定一个密钥字母k和一个明文字母p,密文 字母就是位于k所在的行与p所在的列的交叉点上的那个 字母。 解密过程:由密钥字母决定行,在该行中找到密文字母, 密文字母所在列的列首对应的明文字母就是相应的明文。
1.2 换位法 transposition
将明文中字母的位置重新排列。即不改变明文字母,只是改变字母的 排列顺序。
DES加密过程的数学公式表达
Li Ri 1 Ri Li 1 f ( Ri 1 , K i ) i 1,2,3,...,16
f
图2.3.2 f 算法示意图
1.2 替代法 substitution
即明文中的每个元素(比特、字母、比特组合或字母组合)被映射为另一个元素。
#include <stdio.h> #include <string.h>
void main() { char p[100],c[100]; int i, k=0;
gets(c); for(k=0;k<26;k++,putchar('\n')) for(i=0;c[i];i++) { if(c[i]==' ') p[i]=' '; else p[i]=(c[i]-'a'+k)%26+'a'; putchar(p[i]); } }
for(i=0;i<26;i++) printf("%c-%d\n",i+'a',count[i]);
fclose(fp); }
明文
密 文
图1.2 Vigenere表
替代法分类
(1)单表替代密码——Caesar密码 (2)多表替代密码——Vigenere密码 Caesar密码:简单的单字母替代法 E(m)=(m+k)mod n Vigenere密码:多表替代法
④ 无法达到不可否认服务。
2.2 DES基本思想和特点
56位密钥 64位明文组 DES 64位密文组
图2.2 DES工作原理
DES算法的基本特点: (1) 对称算法。 (2) 64位的密钥,实际使用长度为56位。 (3) 加密算法是替代与换位法的结合,同时也使用了序列密码中的 异或运算。
(4) 算法对每个明文组,实施16轮相同的加密运算。
§2 现代对称密码
• • • • 2.1 对称密码体制及DES背景 2.2 DES的基本思想与特点 2.3 DES的加密过程——结构图 2.4 DES的应用与改进
对称密码优缺点分析
(1)优点:加密、解密处理速度快、保密度高等。 (2)缺点: ① 密钥安全分配问题。 ② 庞大密钥数量的管理问题。 ③ 对通信双方的限制。
2.3 DES加密过程——结构图
64位明文组 初始换位 16轮加密变换 逆初始换位 64位密文组 56位密钥 压缩变换、移位 16个48位子密钥
图2.3.1 DES加密过程概图
2.3 DES加密过程——结构图
DES加密过程的基本模块
(1)初始换位IP和逆初始换位IP-1 (2)将64位的明文组分成32位的左右两段:L0和R0 (3)进行16轮相同的迭代运算:替代+异或+换位 (4)将最后的左右两段合并 (5)生成每一轮的子密钥
水洗尘埃道未甞,甘于名利两相忘。
心怀六洞丹霞客,口诵三清紫府章。 十里采莲歌达旦,一轮明月桂飘香。 日高公子还相觅,见得山中好酒浆。
1.1 隐写术
1.1 隐写术
隐写术 信息隐藏技术
见第一章
隐写术的优点:能够被某些人使用,而不容易被发 现他们之间在进行秘密通信。而加密则很容易被发 现谁与谁在进行秘密通信,表明通信是重要的或秘 密的,或表明通信双方对其他人有需要隐瞒的事情, 这种发现本身可能具有某种意义或作用。 隐写术的缺点:① 它形式简单但构造费时,要求有 大量的开销来隐藏相对较少的信息。② 一旦该系统 的构造方法被发现,就会变得完全没有价值;③ 隐 写术一般无稳健性,如数据改动后隐藏的信息不能 被恢复。
第3章 传统密码体制
§1 古典密码 §2 现代对称密码
§1 古典密码
• 1.1隐写术 • 1.2替代法 • 1.3换位法
1.1 隐写术
早妆未罢暗凝眉, 迎户愁看紫燕飞, 无力回天春已老,
双栖画栋不如归。
1.1 隐写术
洗尘埃道未甞于名利 两相忘怀六洞丹霞客 诵三清紫府章里采莲 歌达旦轮明月桂飘香 高公子还相觅得山中 好酒浆