当前位置:文档之家› 《应用密码学》课程第二章古典密码概念与函数表现方法

《应用密码学》课程第二章古典密码概念与函数表现方法

《应用密码学》课程
第二章古典密码概念和函数表现方法
1
《应用密码学》课程第二章古典密 码概念和函数表现方法
上节课内容复习
明文、密文、密钥(概念) 加密、解密(概念及函数的表示方法) 密码体制 加、脱密密钥,加、脱密函数 破译 攻击方法(穷举攻击中根据密钥量来推算攻击
时间)
2
《应用密码学》课程第二章古典密 码概念和函数表现方法
例1: 汉字和符号的区位码22(1单1 表代替)
2277
10
《应用密码学》课程第二章古典密 码概念和函数表现方法
例2 以十进值数为代替单位的代替函数
S :{ 0 ,1 ,2 , ,9 } { 0 ,1 ,2 , ,9 }
假 设 S [ 1 0 ] { 5 ,4 ,8 ,2 ,1 ,0 ,9 ,7 ,3 ,6 }
《应用密码学》课程第二章古典密 码概念和函数表现方法
例3 加法密码 选定常数 q 和 k. 明文空间=密文空间= Zq{0,1,2, ,q1}
加密变换: cE k(m )(m k)mq od
其中 n modq 读作 n 模q,它是n 被q除后所得的余数.
如18 mod7 = 4
上述加法称为模q加.
即代替表为:
明文 0 1 2 3 4 5 6 7 8 9 密文 5 4 8 2 1 0 9 7 3 6
则明文晨五点总攻 先变换为区位码 1931 4669 2167 5560 1505 再被加密成密文 4624 1996 8497 0095 4050
单表代替的缺点:明文字符相同,则密文字符也相同
11
15
《应用密码学》课程第二章古典密 码概念和函数表现方法
二、多表代替密码
根据密钥的指示,来选择加密时使用的单
表的方法,称为多表代替密码。
例4:加密变换为:cE k(m )(m k)m1 o0 d
但 k 不再是固定常数而是密钥。
加密算法:
此时,明文:晨五点总攻 变换为区位码 1931 4669 2167 5560 1505
后就被加密成密文 4264 7992 5490 8893 4838
缺点: 密文差 = 明文差
c1c2[m (13 )m1 o 0 d (m 23 )m1 o]0 d
13
[m (13 )(m 23 )m ] 1 o《 0 应d (用码m 密概码1 念学 和》函m 课数程2 表第)现二m 方章法古典密1 o0
12
脱密变换: mD k(c)《(c 应用 密k 码学)》m 课程第二q o 章古典d 密
码概念和函数表现方法
特别地,若取q =10 和 k=3,则
加密变换为:
c E 3 ( m ) ( m 3 ) m 1 ,o 0 0 m d 9
脱密变换为:
m D 3 ( c ) ( c 3 )m 1 ,o 0 0 c d 9
上节课补充内容-密码算法的分类
保密内容 受限制的(restricted)算法
算法的保密性基于保持算法的秘密 基于密钥(key-based)的算法
算法的保密性基于对密钥的保密
3
《应用密码学》课程第二章古典密 码概念和函数表现方法
上节课补充内容-密码算法的分类
密钥
对称密码算法(symmetric cipher)
加密密钥和解密密钥相同,或实质上等同,即从一 个易于推出另一个,又称秘密密钥算法或单密钥算法
非对称密钥算法(asymmetric cipher)
加密密钥和解密密钥不相同,从一个很难推出另一个
又称公开密钥算法(public-key cipher) 。
公开密钥算法用一个密钥进行加密, 而用另一个进行 解密其中的加密密钥可以公开,又称公开密钥(public key),简称公钥。解密密钥必须保密,又称私人密钥
一、单表代替密码: 利用预先设计的固定代替规则,对明 文逐字符或逐字符组进行代替的密码. 字符组称为一个代替单位.
这里代替规则又称为代替函数、代替表 或S盒。它的固定性是指这个代替规则与密 钥因素和被加密的明文字符的序号无关。
即相同的明文字符组产生相同的密文字 符组.
9
《应用密码学》课程第二章古典密 码概念和函表现方法
例4: Caesar密码(凯撒密码)
这是一种对英文字母的典型逐字母加密的 的加法密码,其密钥k=3。
英文字母被编码为该字母的序号 英文 A B C D … X Y Z 数字 0 1 2 3 … 23 24 25 加密变换为:
c E 3 ( m ) ( m 3 )m 2 ,o 0 6 m d 25
(private key)私钥,简称私钥
4
《应用密码学》课程第二章古典密 码概念和函数表现方法
上节课补充内容-密码算法的分类
明文处理方式 分组密码(block cipher)
将明文分成固定长度的组,用同一密钥和 算法对每一块加密,输出也是固定长度的密文。 流密码(stream cipher)
又称序列密码。序列密码每次加密一位或 一字节的明文。
逐字符或逐字符组进行代替的密码.
分为单表代替和多表代替两种
(2) 移位密码
对各字符或字符组进行位置移动
的密码.
(3) 加减密码
将明文逐字符或逐字符组与乱数
相加或相减的密码.
7
《应用密码学》课程第二章古典密 码概念和函数表现方法
我们将重点介绍
代替密码
8
《应用密码学》课程第二章古典密 码概念和函数表现方法
5
《应用密码学》课程第二章古典密 码概念和函数表现方法
第二章 古典密码
学习本章目的:
1. 学习基本的密码编制原理;
2.了解早期编制密码的基本方法; 3. 为进一步学习现代密码的编制打下
基础。
6
《应用密码学》课程第二章古典密 码概念和函数表现方法
基本编码技术的分类
(1) 代替密码
利用预先设计的代替规则,对明文
脱密变换为:
m D 3 ( c ) ( c 3 )m 2 ,o 0 6 d c 25
14
《应用密码学》课程第二章古典密 码概念和函数表现方法
例5:标准字头密码(又称密钥字密码)
这是一种对英文字母的典型逐字母加密的 密码,它利用一个密钥字来构造代替表。
如: 若选择cipher作为密钥字,则对应代替表为: 明文 A B C D E F G H I J K L M N O P … 密文 C I P H E R A B D F G J K L M N …
相关主题