古典密码-多表密码体制

如果明文中不同的位置的同一明文字母在密文中对应的密文字母不同,则称为多表密码体制。

代表性的多表密码:

1.Vigenere密码

2.Beaufort密码

3.running-key密码

4.Vernam密码

5.Hill密码

例子:

1.Vigenere密码加密:

设明文   m=m1m2...mn

密钥      k = k1k2...kn

则密文   c=Ek(m)=c1c2...cn

其中      ci=(mi+ki)(mod 26),(i=1,2,...,n)

Vigenere密码解密:

设明文   m=m1m2...mn

密钥      k = k1k2...kn

则明文   m=Dk(m)=m1m2...mn

其中      mi=(ci-ki)(mod 26),(i=1,2,...,n)

假设密钥是hold,生成的加密解密移位密码表为:

  +h +o +l +d
a h o l d
b i p m e
c j q n f
d k r o g

.

.


.

.


.

.


.

.


.

.

x a l i a
y b m j b
z c n k c

2.Beaufort密码

与Vigenere密码相似

设明文   m=m1m2...mn

密钥      k = k1k2...kn

则密文   c=Ek(m)=c1c2...cn

其中      ci=(ki+25-mi)(mod 26),(i=1,2,...,n)

3.running-key密码

对于周期代换密码,保密随周期的加大而增加,当周期的长度和明文一样长时,就成了running-key密码。

4.Vernam密码

加密:Ci=Pi⊕Ki

解密:Pi=Ci⊕Ki

(⊕表示模2加法)

设明文为101,密钥是110

则加密101⊕110=011

解密011⊕110=101

要求构造和消息一样长的随机密钥

5.Hill密码

加密:c=m K mod n

解密:m=c K-1mod n(注意这里的K-1是K的逆元)

设K=[11     8]

   [ 3      7]          (Ps.这是一个矩阵)

|K|=11*7-3*8=53≡1(mod 26)

K*=[ 7      -8]

  [-3      11]

  =[ 7      18]

[23     11]

K-1=|K|-1 *   K*=[ 7     18]

         [23     11]

加密:

明文字符为“hi“,m=(7,8)

(7,8) *  [11     8]

        [ 3      7]

= (23,8)

对应密文字符"xi"

解密:

(23,8) *  [ 7     18]

      [23     11]

=(7,8)

对应明文字符"hi"。

时间: 2024-08-23 11:09:20

古典密码-多表密码体制的相关文章

古典密码-单表密码体制

如果明文中不同的位置的同一明文字母在密文中对应的密文字母相同,则称其为单表密码体制. 代表性的单表密码: 1.移位或加法密码 2.乘数或乘法密码 3.仿射密码 4.密钥短语密码 下面分别举一个例子: 1.加法密码算法: P=C=K=Zm   (Zm∈{0,1,...,m-1}) Ek(x)=x+k(mod m)=y∈C Dk(y)=y-k(mod m)=x∈P 当k=3时,该密码算法就是凯撒密码. E3(1)=1+3(mod 26)=4   1代表A,4代表D,所以就把明文A加密成D D3(4)

1.密码学概念及古典密码

一.前言 信息安全面临的威胁无处不在,多为人为威胁,也就是对信息的人为攻击,人为攻击可分为被动攻击和主动攻击. 被动攻击:即为窃听,分为两类:一类是消息内容获取:另一类是业务流分析,如获取消息的格式,长度及位置等敏感信息.该攻击因为对消息没有做出变动,难以检测,所以被动攻击重点在于预防而不是检测. 主动攻击:为对数据流的改动或产生假的数据流,分为三类:①中断,对系统可用性进行攻击,如破坏管理系统等:②篡改,对系统的完整性攻击,如修改传送的消息内容等:③伪造,对系统真实性攻击,如插入伪造的消息.

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

说完了前面那些,想起个事,本系列依据内容主要来自<现代密码学>马春光编著.我就是学这本书的. 好了,古典密码就是古时候的密码,哈哈,逗你玩的,shannon的保密系统的通信理论发表前的都是古典密码,会在密码学简史中介绍这位牛人的. 学习古典密码学的意义:学习设计原理和分析方法 古典密码也是,俩门派:置换和代换,顾名思义,一个是换了个原来有的,一个是换了个原来没有的.学术点讲就是前者明文和密文空间一样,后者 不一样.你要是问我啥是明文空间和密文空间啊,我就呵呵.是M 和 C.m明文的集合,c密文

古典密码(Hill加密算法)

"Hill的加密与解密" Hill加密是另一种多字母代替密码,与多表代替密码不同的是,Hill密码要求将明文分成同等规模的若干个分组(最后一个分组涉及到填充),每一个分组被整体的加密代换,即希尔密码属于分组加密.Hill密码的算法思想是:将一个分组中的d个连续的明文字母通过线性变换转换为d个密文字母.这种变换由d个线性方程决定,其中每个字母被分配一个数值(0,1,...,25).解密只需要做一次逆变换就可以了,密钥就是变换矩阵本身. 设明文为一维矩阵m,密文为一维矩阵c,密钥用k矩阵表

古典密码

古典密码是对字母间相互代替或相互换位来进行加密.分代替密码和换位密码两种. 代替指将明文中的字符用其它字符代替,分单表代替和多表代替.代替方案称为秘钥. 单表代替密码的安全性不高,一个原因是一个明文字母只由一个密文字母代替.可以利用频率分析来破译. 多表代换密码,即构造多个密文字母表,在密钥的控制下用以一系列代换表依次对明文消息的字母序列进行代换. Playfair密码,用密钥控制生成矩阵,然后每两个字符为单位进行代换.若相邻字符相同要插入一个特殊的字符隔开,若最终字符数为奇数也要填充一个特殊的

古典密码简介

从密码学发展历程来看,可分为古典密码(以字符为基本加密单元的密码)以及现代密码(以信息块为基本加密单元的密码)两类.而古典密码有着悠久的历史,从古代一直到计算机出现以前,古典密码学主要有两大基本方法: ①置换密码(又称易位密码):明文的字母保持相同,但顺序被打乱了. ②代替密码:就是将明文的字符替换为密文中的另一种的字符,接收者只要对密文做反向替换就可以恢复出明文. 古典密码是密码学的根源,虽然都比较简单而且容易破译,但研究古典密码的设计原理和分析方法对于理解.分析以及设计现代密码技术是十分有益

【转载】古典密码

题目:密文内容如下{79 67 85 123 67 70 84 69 76 88 79 85 89 68 69 67 84 78 71 65 72 79 72 82 78 70 73 69 78 77 125 73 79 84 65}请对其进行解密提示:1.加解密方法就在谜面中         2.利用key值的固定结构 答案:CTF{COULDYOUEXCHANGETHEINFORMATION}分析:将Ascii码转换为字母,得到OCU{CFTELXOUYDECTNGAHOHRNFIENM}I

密码学补充学习简记之古典密码

1 密码体制 2 代替密码 2.1 代替密码的定义和分类 2.2 代替密码的构造 1.构造单表代替密码的关键是构造一张明密代替表. 2.代替表构造方法:密码字法.洗牌法.仿射法.广义仿射法. 1.多表代替密码的构造可分为底表的构造和密钥序列的构造. 2.底表必须为拉丁方阵. 3.密钥的构造方法:主观密钥序列(一本书).客观密钥序列.伪随机密钥序列. 3 移位密码 3.1 移位密码的定义和分类 3.2 移位密码的构造 移位密码的构造可归结为n元置换的构造,置换的构造与代替表的构造类似. 4 乘积密

单表代替密码原理及算法实现

   要了解单表替代密码就得先了解替代密码,在这里我就做一下简单的介绍:      替代是古典密码中用到的最基本的处理技巧之一 .      替代密码是指先建立一个替换表,加密时将需要加密的明文依次通过查表,替换为相应的字符,明文字符被逐个替换后,生成无任何意义的字符串,即密文,替代密码的密钥就是其替换表.      根据密码算法加解密时使用替换表多少的不同,替代密码又可分为单表替代密码和多表替代密码.      单表替代密码的密码算法加解密时使用一个固定的替换表.单表替代密码又可分为一般单表替