2.2_单表代替密码
- 格式:pdf
- 大小:152.14 KB
- 文档页数:28
单表代替密码原理及算法实现 要了解单表替代密码就得先了解替代密码,在这⾥我就做⼀下简单的介绍:替代是古典密码中⽤到的最基本的处理技巧之⼀。
替代密码是指先建⽴⼀个替换表,加密时将需要加密的明⽂依次通过查表,替换为相应的字符,明⽂字符被逐个替换后,⽣成⽆任何意义的字符串,即密⽂,替代密码的密钥就是其替换表。
根据密码算法加解密时使⽤替换表多少的不同,替代密码⼜可分为单表替代密码和多表替代密码。
单表替代密码的密码算法加解密时使⽤⼀个固定的替换表。
单表替代密码⼜可分为⼀般单表替代密码、移位密码、、密钥短语密码。
这⾥讲单表替代密码的直接攻击。
对于⾃然语⾔,如果取⼀本⾮专业书籍,统计⾜够长的课⽂就会发现,字母(或字符)出现的频率会反映出相应语⾔的统计特性。
统计⼤量的课⽂定会发现,相应语⾔中每个字母在相应语⾔中出现的概率。
于是便得到该语⾔字母表上的⼀个概率分布。
⼀、英⽂字母⼀由独⽴试验产⽣明⽂单码,Beker在1982年统计的样本总数为100 362,得到单码的概率分布见下表:根据上表,英⽂字母出现的概率按⼤⼩排列如下:E T A O I N S H R D L C U M WFG Y P B V K J X Q Z在上表中,不少字母出现的概率近乎相等。
为了应⽤⽅便,常将英⽂字母表按字母出现的概率⼤⼩分类,分类情况见下表:--------------------------极⾼频 E次⾼频 T A O I N S H R中等频 D L低频 C U M W F G Y P B甚低频 V K J X Q Z--------------------------其它语⾔和数据也有类似于英语语⾔的单字母统计特性。
如果我们随意统计⼀段⾜够长的英⽂课⽂,只要内容不是太特殊,其结果⼀定和上表基本相同。
这表明英⽂的⼀篇⽂章中各个字母出现的概率是基本可预测的,它将为密码分析提供⼀个⽅⾯的依据。
语⾔的单字母统计特性⾄少在以下两个⽅⾯没有反映出英⽂语⾔的特征:⑴根据英⽂的单字母统计特性可以计算出双字母QE出现的概率为p(QE)=0.00095×0.12702≈1.21×10^(-4)这就是说,在10^6个双字母的抽样中,QE出现的次数⼤约应为121次,但这不符合英⽂课⽂的实际。
密码学试题及答案【篇一:《现代密码学》期终考试试卷和答案】txt>………………………………密…………………………………………封……………………………………线…………………………………………一.选择题1、关于密码学的讨论中,下列( d )观点是不正确的。
a、密码学是研究与信息安全相关的方面如机密性、完整性、实体鉴别、抗否认等的综合技术b、密码学的两大分支是密码编码学和密码分析学c、密码并不是提供安全的单一的手段,而是一组技术d、密码学中存在一次一密的密码体制,它是绝对安全的 2、在以下古典密码体制中,属于置换密码的是( b)。
a、移位密码 b、倒序密码 c、仿射密码 d、playfair 密码 3、一个完整的密码体制,不包括以下( c)要素。
a、明文空间 b、密文空间c、数字签名 d、密钥空间4、关于des算法,除了(c )以外,下列描述des算法子密钥产生过程是正确的。
a、首先将 des 算法所接受的输入密钥 k(64 位),去除奇偶校验位,得到56位密钥(即经过pc-1置换,得到56位密钥)b、在计算第i轮迭代所需的子密钥时,首先进行循环左移,循环左移的位数取决于i的值,这些经过循环移位的值作为下一次循环左移的输入c、在计算第i轮迭代所需的子密钥时,首先进行循环左移,每轮循环左移的位数都相同,这些经过循环移位的值作为下一次循环左移的输入d、然后将每轮循环移位后的值经pc-2置换,所得到的置换结果即为第i轮所需的子密钥ki 5、2000年10月2日,nist正式宣布将( b )候选算法作为高级数据加密标准,该算法是由两位比利时密码学者提出的。
a、marsb、rijndaelc、twofishd、bluefish*6、根据所依据的数学难题,除了( a )以外,公钥密码体制可以分为以下几类。
a、模幂运算问题 b、大整数因子分解问题 c、离散对数问题 d、椭圆曲线离散对数问题7、密码学中的杂凑函数(hash函数)按照是否使用密钥分为两大类:带密钥的杂凑函数和不编号系别专业班级姓名学号………………………………密…………………………………………封……………………………………线…………………………………………带密钥的杂凑函数,下面(c )是带密钥的杂凑函数。
密码学试题及答案【篇一:《现代密码学》期终考试试卷和答案】txt>………………………………密…………………………………………封……………………………………线…………………………………………一.选择题1、关于密码学的讨论中,下列( d )观点是不正确的。
a、密码学是研究与信息安全相关的方面如机密性、完整性、实体鉴别、抗否认等的综合技术b、密码学的两大分支是密码编码学和密码分析学c、密码并不是提供安全的单一的手段,而是一组技术d、密码学中存在一次一密的密码体制,它是绝对安全的 2、在以下古典密码体制中,属于置换密码的是( b)。
a、移位密码 b、倒序密码 c、仿射密码 d、playfair 密码 3、一个完整的密码体制,不包括以下( c)要素。
a、明文空间 b、密文空间c、数字签名 d、密钥空间4、关于des算法,除了(c )以外,下列描述des算法子密钥产生过程是正确的。
a、首先将 des 算法所接受的输入密钥 k(64 位),去除奇偶校验位,得到56位密钥(即经过pc-1置换,得到56位密钥)b、在计算第i轮迭代所需的子密钥时,首先进行循环左移,循环左移的位数取决于i的值,这些经过循环移位的值作为下一次循环左移的输入c、在计算第i轮迭代所需的子密钥时,首先进行循环左移,每轮循环左移的位数都相同,这些经过循环移位的值作为下一次循环左移的输入d、然后将每轮循环移位后的值经pc-2置换,所得到的置换结果即为第i轮所需的子密钥ki 5、2000年10月2日,nist正式宣布将( b )候选算法作为高级数据加密标准,该算法是由两位比利时密码学者提出的。
a、marsb、rijndaelc、twofishd、bluefish*6、根据所依据的数学难题,除了( a )以外,公钥密码体制可以分为以下几类。
a、模幂运算问题 b、大整数因子分解问题 c、离散对数问题 d、椭圆曲线离散对数问题7、密码学中的杂凑函数(hash函数)按照是否使用密钥分为两大类:带密钥的杂凑函数和不编号系别专业班级姓名学号………………………………密…………………………………………封……………………………………线…………………………………………带密钥的杂凑函数,下面(c )是带密钥的杂凑函数。
密码学原理与应用复习大纲第一部分古典密码1.1 密码学的五元组(明文,密文,密钥,加密算法,解密算法)及各部分的含义1.2 密码体制什么是密码体制?完成加密和解密的算法.通常,数据的加密和解密过程是通过密码体制(cipher system) +密钥(keyword)来控制的。
密码体制必须易于使用,特别是应当可以在微型计算机使用。
密码体制的安全性依赖于密钥的安全性,现代密码学不追求加密算法的保密性,而是追求加密算法的完备,即:使攻击者在不知道密钥的情况下,没有办法从算法找到突破口。
1。
3 代替密码体制:(单表代替密码多表代替密码)就是明文中的每一个字符被替换成密文中的另一个字符.接收者对密文做反响替换就可以恢复出明文.(在这里具体的代替方案称为密钥)单表代替密码明文的相同字符用相应的一个密文字符代替.(移位密码,乘数密码,仿射密码,多项式密码,密钥短语密码)单表代替密码的特点:▲密钥空间K很大,|K|=26!=4×1026 ,破译者穷举搜索计算不可行,1微秒试一个密钥,遍历全部密钥需要1013 年。
▲移位密码体制是替换密码体制的一个特例,它仅含26个置换做为密钥空间。
密钥π不便记忆。
▲针对一般替换密码密钥π不便记忆的问题,又衍生出了各种形式单表替代密码。
单表代替密码的弱点:▲密钥量很小,不能抵抗穷尽搜索攻击▲没有将明文字母出现的概率掩藏起来,很容易受到频率分析的攻击▲不具备雪崩效应▲加解密数学表达式简单多表代替密码是以一系列(两个以上)代换表依次对明文消息的字母进行代换的方法。
(维吉尼亚Vigenere密码,Hill密码,Playfair密码)多表代替密码的特点:使用了两个或两个以上的替代表。
Vegenere密码算法(分析类)15分,参考第一讲课件第二部分对称密码体制2.1 对称密码体制(分组密码,序列密码)的概念对称密钥密码体制,对于大多数算法,解密算法是加密算法的逆运算,加密密钥和解密密钥相同,同属一类的加密体制。
第1篇一、实验背景密码学是一门研究信息加密与解密的学科,它广泛应用于信息安全领域。
为了更好地理解密码学的基本原理和算法,我们选择了实验吧平台上的密码学实验进行学习。
本次实验旨在通过实际操作,加深对古典密码、对称密码和不对称密码等密码学基本概念的理解,提高密码学应用能力。
二、实验目的1. 理解并掌握古典密码的基本原理和算法;2. 掌握对称密码和不对称密码的基本原理和算法;3. 通过实验操作,提高密码学应用能力;4. 培养团队协作和解决问题的能力。
三、实验内容1. 古典密码实验(1)仿射密码原理:仿射密码是一种单字母替换密码,加密公式为:C = (aP + b) mod 26,其中C为密文字母,P为明文字母,a和b为密钥。
操作步骤:1)编写加密函数encrypt,实现仿射密码加密;2)编写解密函数decrypt,实现仿射密码解密;3)测试加密和解密函数,验证其正确性。
(2)单表代替密码原理:单表代替密码是一种将明文字符映射到密文字符的替换密码。
操作步骤:1)编写加密函数subencrypt,实现单表代替密码加密;2)编写解密函数subdecrypt,实现单表代替密码解密;3)测试加密和解密函数,验证其正确性。
(3)维吉尼亚密码原理:维吉尼亚密码是一种多字母替换密码,加密公式为:C = (P + K[i]) mod 26,其中C为密文字母,P为明文字母,K为密钥,i为索引。
操作步骤:1)编写加密函数vigenereencrypt,实现维吉尼亚密码加密;2)编写解密函数vigeneredecrypt,实现维吉尼亚密码解密;3)测试加密和解密函数,验证其正确性。
2. 对称密码实验(1)DES加密算法原理:DES(Data Encryption Standard)是一种分组加密算法,采用56位密钥,64位分组。
操作步骤:1)编写DES加密函数desencrypt,实现DES加密;2)编写DES解密函数desdecrypt,实现DES解密;3)测试加密和解密函数,验证其正确性。