当前位置: 代码迷 >> 计算机图书 >> 密码学基础知识(3)古典密码
  详细解决方案

密码学基础知识(3)古典密码

热度:192   发布时间:2016-04-29 11:19:49.0
密码学基础知识(三)古典密码

说完了前面那些,想起个事,本系列依据内容主要来自《现代密码学》马春光编著。我就是学这本书的。

好了,古典密码就是古时候的密码,哈哈,逗你玩的,shannon的保密系统的通信理论发表前的都是古典密码,会在密码学简史中介绍这位牛人的。

学习古典密码学的意义:学习设计原理和分析方法

古典密码也是,俩门派:置换和代换,顾名思义,一个是换了个原来有的,一个是换了个原来没有的。学术点讲就是前者明文和密文空间一样,后者 不一样。你要是问我啥是明文空间和密文空间啊,我就呵呵。是M 和 C。m明文的集合,c密文的集合。对了明文有时候用p表示哦,plaintext。

置换密码就是列置换和周期置换两兄弟,倒序那个算捡来的吧。

列置换:顾名思义,操作及输出都是以列为单位。将明文以密钥长度为列数形成矩阵,按照密钥的顺序进行列选出,然后一列一列的输出。

 

列置换密码(距阵置换密码)

明文:ming chen jiu dian fa dong fan gong

密钥:yu lan hua

去掉密钥重复字母:yulanh,得出距阵列数为6;将明文按行填充距阵。

得到密钥字母顺序: 653142;

按列(依顺序)写出距阵中的字母。

密文:giffg hddn0 njngn cuaa0 inano meiog

解密:加密的逆过程;


 

周期置换:其实就是在列置换的基础上,进行行输出。

 

周期置换密码

  明文:mingchen jiu dian fa dong fan gong

  加密密钥:3421(i=1,2,3,4的一个置换f (i) =3,4,2,1)

  加密:将明文分组(4个字母一组),然后根据规定顺序变换

                    ming chen jiud ianf adon gfan gong

                      ngim enhc udij nfai onda anfg ngog

  密文:ngimenhcudijnfaiondaanfgngog

  解密密钥:4312(3412的逆置换)


 

没啥说的,直接来代换密码:

也是两个流派,单表替换和多表替换。

单表代换密码:一个密文字母表。加法密码(著名的凯撒密码就是)乘法密码和仿射密码。

主要说下仿射密码

f(mi)=ci=mj,j=k1i+k2 mod n ,i,ki,k2{0,1,...,n-1}

多表代换密码:多个密文字母表。Vigenere密码,Playfair密码和hill密码

 

主要说下Vigenere密码

Vigenere密码是周期代替密码

当周期为1时,就是单表代替密码(加法密码)。

  用户钥:有限序列k =(k1,k2,…,kd)

工作钥:无限序列K=(K1,K2,…,Ki,…) ,是用户钥的

周期性(周期为d)扩展,即

Ki=ki mod d ,i =1,2,3,…

  明文:M=m1m2…mi…ml

密文:C=c1c2…ci…cl

工作钥:K=K1K2…Ki…Kl

加密:ci=mi+Kimod n,其中n为明文字母表的长度

例:用户钥为cat,对明文“vigenere cipher”加密

M:          v           i            g           e           n           e           r           e           c            i           p           h           e           r

K:          c           a            t           c           a           t            c           a           t            c           a           t            c           a

C:          x            i            z           g           n           x           t           e           v            k          p           a           g           r

 此例n=26;c:2,a:0,t:19

 

代数密码:vernam密码

模2加运算,为什么提这个密码呢,因为他有个特点,就是加密和解密变换相同,称为对合运算。加密时是模2加,解密时也是与密钥模2加。著名的DES也是对合运算。

 

古典密码的统计分析:

单表代换密码中明文的统计特性在密文中仍然体现,容易被破译。加法和乘法知道一个密文对应的明文就完了,仿射强点,两个。

统计字母出现频率就是一种统计分析方法。依照正常字母频率表逐个对照。

 

  相关解决方案