如何攻破仿射加密密文:DBUHU SPANO SMPUS STMIU SBAKN OSMPU SS

如何攻破仿射加密密文:DBUHU SPANO SMPUS STMIU SBAKN OSMPU SS,第1张

ECVIVTQBOPTNQVTTUNJVTCBLOPTNQVTT

FDWJWURCPQUORWUUVOKWUDCMPQUORWUU

GEXKXVSDQRVPSXVVWPLXVEDNQRVPSXVV

HFYLYWTERSWQTYWWXQMYWFEORSWQTYWW

IGZMZXUFSTXRUZXXYRNZXGFPSTXRUZXX

JHANAYVGTUYSVAYYZSOAYHGQTUYSVAYY

KIBOBZWHUVZTWBZZATPBZIHRUVZTWBZZ

LJCPCAXIVWAUXCAABUQCAJISVWAUXCAA

MKDQDBYJWXBVYDBBCVRDBKJTWXBVYDBB

NLERECZKXYCWZECCDWSECLKUXYCWZECC

OMFSFDALYZDXAFDDEXTFDMLVYZDXAFDD

PNGTGEBMZAEYBGEEFYUGENMWZAEYBGEE

QOHUHFCNABFZCHFFGZVHFONXABFZCHFF

RPIVIGDOBCGADIGGHAWIGPOYBCGADIGG

SQJWJHEPCDHBEJHHIBXJHQPZCDHBEJHH

TRKXKIFQDEICFKIIJCYKIRQADEICFKII

USLYLJGREFJDGLJJKDZLJSRBEFJDGLJJ

VTMZMKHSFGKEHMKKLEAMKTSCFGKEHMKK

WUNANLITGHLFINLLMFBNLUTDGHLFINLL

XVOBOMJUHIMGJOMMNGCOMVUEHIMGJOMM

YWPCPNKVIJNHKPNNOHDPNWVFIJNHKPNN

ZXQDQOLWJKOILQOOPIEQOXWGJKOILQOO

AYRERPMXKLPJMRPPQJFRPYXHKLPJMRPP

BZSFSQNYLMQKNSQQRKGSQZYILMQKNSQQ

CATGTROZMNRLOTRRSLHTRAZJMNRLOTRR

每一行是一个答案,所有可能的答案都给你了,你自己看哪个是吧

古典密码学的特点是加解密过程复杂是错的。

古典密码学的特点:

计算强度小;出现在 DES(数字加密标准,被广泛应用的私钥系统)之前;数据的安全基于算法保密;以字母表为主要加密对象;使用置换和替换技术;密码分析方法基于字母与字母组合的频率特性以及明文的可读性。

古典密码有以下这些类型:

凯撒密码:将明文中的字符移动一定的位数(k)来实现加密和解密,也就是明文中的所有字符都在字符表上进行 k 偏移,形成密文。

乘法密码:使用采样的方式进行加密,将明文字符串的每个字符,每隔 k 位算出字符并排列起来形成密文。

仿射密码:明文中所有字符按照(ax+b)mod26 进行计算,得到密文。

维吉尼亚密码:使用字符串作为密钥,并把密钥与明文进行对应,依次重复密钥,直至与明文的长度相同。

密码学(Cryptology)是一种用来混淆的技术,它希望将正常的、可识别的信息转变为无法识别的信息。

目前密码学的研究,一种是偏应用,把现有的,别人研究出来的密码学算法,放在一个合适的地方,使这些算法能够发挥出更大的作用。

另一种是偏理论的,研究新的密码学算法,或者研究现有密码学算法的安全性,对现有密码学算法进行安全性、效率等改进,比如众所周知的密码学两大分支密密码编码学和密码分析学。

密码编码学是指为了达到隐藏消息含义目的,按约定的规则将表示明文信息的消息变换为秘密信息的科学,其有三个分支:对称密码学,非对称密码学和密码协议。

密码分析学指的是研究密码、密文或密码系统,着眼于找到其弱点,在不知道密匙和算法的情况下,从密文中得到原文的学科。如图所示,密码分析的方法有很多,包括数学分析法,穷举法、差分分析法等等,其中最有效的攻击手段是社会工程学。

function Y=caesarCode(plaintext, shift)

chars = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n',  

      'o','p','q','r','s','t','u','v','w','x','y','z'];  

L=length(plaintext);  

for i=1:L  

      for j=1:26  

          if plaintext(i)==chars(j)  

              k=mod(j+shift,26);  

              if k~= 0  

                  Y(i)=chars(k);  

              else  

                  Y(i)=chars(26);  

              end  

          end  

      end  

end

凯撒密码,来自 Canhui WANG

码和乘法密码联合起来,就得到了所谓的仿射密码(affine cipher)—— 两种密码与一对密钥的组合。乘法密码使用第一个密钥,加法密码使用第二个密钥。如图3-11所示,仿射密码其实就是被先后使用的两种密码。我们本来可以提出一种有关加密和解密的复杂运算,如C = (P ′ k1 + k2) mod 26和P = ((C - k2) ′ k1-1) mod 26。然而,我们用临时结果(T)表示两种单独的运算,以表明无论什么时候使用密码组合,均需确保在行的另一端要有一个逆,该逆在加密和解密过程中使用的顺序是相反的。如果加法是加密过程中的最终运算,那么减法就是解密过程中的初始运算。

在仿射密码中,明文P和密文C的关系是

图3-11 仿射密码

例39

举例:周期为e的换位将明文字母划分。

换位密码就是一种早期的加密方法,与明文的字母保持相同,区别是顺序被打乱了。

古典密码:

从远古到1949年香农发表《保密系统的通信理论》,这期间人类所使用的密码均称为古典密码,本文主要介绍三种古典密码,分别为置换密码,代换密码和轮换密码。

置换密码(又称为换位密码):

是指明文中各字符的位置次序重新排列得到密文的一种密码体制。

特点:保持明=文中所有的字符不变,只是利用置换打乱明文字符的位置和次序。

置换定义:有限集X上的运算σ:X→X,σ是一个双射函数,那么称σ为一个置换。

即任意x∈X,存在唯一的x’∈X,使得σ(x)=x’。

解密的时候会用到逆置换σ’,即任意x’∈X,存在唯一的x∈X,使得σ’(x’)=x且满足σσ’=I。

对置换有了一个基本的认识之后我们来谈一下置换密码,置换密码有两种,一种为列置换密码,一种为周期置换密码。

列置换密码:

列置换密码,顾名思义,按列换位并且按列读出明文序列得到密文,具体加密步骤如下:

将明文p以固定分组长度m按行写出nxm阶矩阵(若不m倍数,空余部分空格补充)。

按(1,2,3…m)的置换σ交换列的位置,σ为密钥。

把新得到的矩阵按列的顺序依次读出得到密文c。

解密过程如下:

将密文c以固定的长度n按列写成nxm阶矩阵。

按逆矩阵σ’交换列的位置。

把矩阵按着行依次读出为明文。

周期置换:

周期变换密码是将明文P按固定长度m分组,然后对每组的字符串按置换σ重新排列位置从而得到密文。

周期排列与列排列思想是一致的,只不过列排列是以矩阵的形式整列换位置,而周期是在分组以后对每组分别变换。懂得列排列就可以很容易地理解周期排列。

代换密码(又称为替代密码):

就是讲明文中的每个字符替代成密文中的另一个字符,替代后的各个字母保持原来的位置,在对密文进行逆替换就可以恢复出明文。

代换密码有分为单表代换密码和多表代换密码。

单表代换密码我们分别介绍凯撒密码和仿射密码。

凯撒密码:

凯撒密码依据凯撒密码代换表对26个英文字母进行替换。

以上就是关于如何攻破仿射加密密文:DBUHU SPANO SMPUS STMIU SBAKN OSMPU SS 全部的内容,包括:如何攻破仿射加密密文:DBUHU SPANO SMPUS STMIU SBAKN OSMPU SS 、古典密码学的特点是加解密过程复杂、用matlab实现凯撒密码,仿射密码,维吉尼亚密码,素数判定和大数分解等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9689254.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存