论文部分内容阅读
摘 要:密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。本文在介绍密码学的基本概念的基础上,对密码算法中的替换算法进行了深入的探讨和研究。
关键词:替换算法;破译能力;解密;密钥;密码学
引言
本文针对英文字符加密、解密问题,采用幂数加密、二进制加密、凯撒加密、Vigenere加密、矩阵替换算法、基于图形字母替换算法等方法。分别构建进制转换、图形矩阵、图形替换、图形分割等模型,使用VisualC++6.0等编程软件,得到了图形定性分析的过程本文的特色是结合多种英文字符处理算法分析优化出具有更高安全性、破译难度更大的新加密、解密方式。
1替换式密码算法的分析
历史上有许多密码的编制方法。较为简单的是替换式密码,也就是将文中出现的字符一对一地替换成其它的符号。对拼音文字而言,最简单的形式是单字母替换加密,也就是以每个字母为一个单位,将每个字母替换成另外的字母或者另外的符号。较为复杂的形式是以多个字母为一个单元,整体替换成其它的字符。这个映射方法被称为密码表。拿到密码表的人就能够将密文破译成明文。单字母替换加密是在古代就使用过的一种加密方法,但由于其容易被破解,所以在现代需要加密的场合已经很少使用。解密方法在夺取战争胜利和谋求商业利益中起到巨大的作用。这里我主要研究一种自动破译密文的模型。在获得了一段用替换式密码加密过的密文,可以用此模型破解密文,得到明文。
替换式加解密算法都较成熟,我整理了使用较多的几种算法,得到其加密和破译方法,在此基础上进行创新,设计了几种基于图形的算法。最后整合所有算法的破译过程,用高级程序语言将各种算法建立成类,然后编写主函数进行密文的自动化破解,得到明文。最后,设计了一个衡量破译能力的标准,来评价破译算法的破译能力。
问题一:用单表古典解密算法来破译获取的一些由单字母加密方法加密的密文。
单表代换密码,指一旦密钥被选定,则每个明文字母都被加密变换成对应的另一种表示方法,即对每个明文字母都用一个固定的明文字母表到密文字母表的确定映射。我采用的单表加密方法:幂数加密法,二进制加密法,凯撒密码。
方法一:幂数加密法:
实例:
假设我们输入一段密文:I LOVE YOU,相对应的十进制编码:9 1215225 251521与此对应的2n的编码:03 23012312402 0340123024,对应密码表输出明文:K GSTC WSY。
方法二:二进制加密法:
实例:
输入的密文:How are you?
对应的二进制编码:10011100111010110 000000010001000100 011000001110010100?
对照密码表读出的明文:Igv qkt ngx?
方法三: 凯撒密码(不区分大小写)
实例:
输入的密文:PRETTY GIRL!对应凯撒密码表读出的明文:SUHWWB JLUO!
问题二:用多表古典解密算法来破译获取的一些由单字母加密方法加密的密文。
问题一介绍的单表代换密码,一旦密钥被选定,则每个明文字母对应的明文数字被加密变换成对应的唯一数字。这种简单的一一对应关系,很容易被破译者用频率分析法进行破解。针对这种缺陷,人们提出多表代换密码,多表加密体系的出现使古典加密体系达到了顶峰。所谓多表密码,是指一个明文字母可以表示成多个密文字母。
算法一:Vigenere加密算法
算法二:矩阵替换算法
如图2,对于算法一我们首先输入e进行加密操作,我们输入密钥key,输入明文“how are you”,得出密文RSU KVC ISS.然后我们对以上的密文进行解密,输入密文RSU KVC ISS,输入密钥key,得出明文“how are you”。
对于算法二,输入密文:o s y v e b e r a y o r h n d a a s h m k w o o h。按照图3的矩阵图形进行密文的排列,(即从首字符开始依次按a59,a47,a35,a23,a11写入,其他字符写入方式以此类推。)得到图形矩阵。根据图形矩阵,我们按照给定的方式输出,即从从a51开始依次向后读至a59,然后从a41读至a47,以此类推,读出明文。读出的明文为:how many books dose harry have。
图2 C语言操作
图3 矩阵
2破译能力的分析
对破译能力的分析将从三方面进行描述:分别为优势,破译难度,安全性.
优势:
在这个各种信息紧密结合的社会,各行各业都充斥着各种高端人才,因此要求我们对任何事物都要进行性能优劣的分析,优胜劣汰的规则才能紧跟时代步伐,不断进步,达到更高层次。
破译难度:
密码往往会应用在军事政治中,因此先破译出密码,会得到先机,并可以工作进行下一步的部署等。所以破译难度的大小对衡量破译能力特别重要在现代商业领域,密码在各行业的应用也增大了破解密码的难度,往往需要建立译码小组,吸收各类精通密码的人才等对密码进行破译。
安全性:
在密码学的发展历程中,开始时应用于军事政治等领域,但随着语言学,信息的不断交流,人们也渐渐意识到各类信息安全的重要性,而密码作为保证信息安全性的重要手段之一,密码本身也应具有较高的安全性才能满足当今时代的需求。
参考文献
[1] 秦志龙. 密码算法的现状和发展研究 [J] .计算机应用, 2004 ,24(2) : 1-3
[2] 王昭, 段云所,陈钟.数据加密算法的原理与应用 [J] .网络安全技术与应用.2001
[3] 邓勇进. 古典密码学[J] . 硅谷, 2011 [4] W.Diffie,M.Hellman.密码学介绍:保密和验证[J] .通信保密, 1979(06)
关键词:替换算法;破译能力;解密;密钥;密码学
引言
本文针对英文字符加密、解密问题,采用幂数加密、二进制加密、凯撒加密、Vigenere加密、矩阵替换算法、基于图形字母替换算法等方法。分别构建进制转换、图形矩阵、图形替换、图形分割等模型,使用VisualC++6.0等编程软件,得到了图形定性分析的过程本文的特色是结合多种英文字符处理算法分析优化出具有更高安全性、破译难度更大的新加密、解密方式。
1替换式密码算法的分析
历史上有许多密码的编制方法。较为简单的是替换式密码,也就是将文中出现的字符一对一地替换成其它的符号。对拼音文字而言,最简单的形式是单字母替换加密,也就是以每个字母为一个单位,将每个字母替换成另外的字母或者另外的符号。较为复杂的形式是以多个字母为一个单元,整体替换成其它的字符。这个映射方法被称为密码表。拿到密码表的人就能够将密文破译成明文。单字母替换加密是在古代就使用过的一种加密方法,但由于其容易被破解,所以在现代需要加密的场合已经很少使用。解密方法在夺取战争胜利和谋求商业利益中起到巨大的作用。这里我主要研究一种自动破译密文的模型。在获得了一段用替换式密码加密过的密文,可以用此模型破解密文,得到明文。
替换式加解密算法都较成熟,我整理了使用较多的几种算法,得到其加密和破译方法,在此基础上进行创新,设计了几种基于图形的算法。最后整合所有算法的破译过程,用高级程序语言将各种算法建立成类,然后编写主函数进行密文的自动化破解,得到明文。最后,设计了一个衡量破译能力的标准,来评价破译算法的破译能力。
问题一:用单表古典解密算法来破译获取的一些由单字母加密方法加密的密文。
单表代换密码,指一旦密钥被选定,则每个明文字母都被加密变换成对应的另一种表示方法,即对每个明文字母都用一个固定的明文字母表到密文字母表的确定映射。我采用的单表加密方法:幂数加密法,二进制加密法,凯撒密码。
方法一:幂数加密法:
实例:
假设我们输入一段密文:I LOVE YOU,相对应的十进制编码:9 1215225 251521与此对应的2n的编码:03 23012312402 0340123024,对应密码表输出明文:K GSTC WSY。
方法二:二进制加密法:
实例:
输入的密文:How are you?
对应的二进制编码:10011100111010110 000000010001000100 011000001110010100?
对照密码表读出的明文:Igv qkt ngx?
方法三: 凯撒密码(不区分大小写)
实例:
输入的密文:PRETTY GIRL!对应凯撒密码表读出的明文:SUHWWB JLUO!
问题二:用多表古典解密算法来破译获取的一些由单字母加密方法加密的密文。
问题一介绍的单表代换密码,一旦密钥被选定,则每个明文字母对应的明文数字被加密变换成对应的唯一数字。这种简单的一一对应关系,很容易被破译者用频率分析法进行破解。针对这种缺陷,人们提出多表代换密码,多表加密体系的出现使古典加密体系达到了顶峰。所谓多表密码,是指一个明文字母可以表示成多个密文字母。
算法一:Vigenere加密算法
算法二:矩阵替换算法
如图2,对于算法一我们首先输入e进行加密操作,我们输入密钥key,输入明文“how are you”,得出密文RSU KVC ISS.然后我们对以上的密文进行解密,输入密文RSU KVC ISS,输入密钥key,得出明文“how are you”。
对于算法二,输入密文:o s y v e b e r a y o r h n d a a s h m k w o o h。按照图3的矩阵图形进行密文的排列,(即从首字符开始依次按a59,a47,a35,a23,a11写入,其他字符写入方式以此类推。)得到图形矩阵。根据图形矩阵,我们按照给定的方式输出,即从从a51开始依次向后读至a59,然后从a41读至a47,以此类推,读出明文。读出的明文为:how many books dose harry have。
图2 C语言操作
图3 矩阵
2破译能力的分析
对破译能力的分析将从三方面进行描述:分别为优势,破译难度,安全性.
优势:
在这个各种信息紧密结合的社会,各行各业都充斥着各种高端人才,因此要求我们对任何事物都要进行性能优劣的分析,优胜劣汰的规则才能紧跟时代步伐,不断进步,达到更高层次。
破译难度:
密码往往会应用在军事政治中,因此先破译出密码,会得到先机,并可以工作进行下一步的部署等。所以破译难度的大小对衡量破译能力特别重要在现代商业领域,密码在各行业的应用也增大了破解密码的难度,往往需要建立译码小组,吸收各类精通密码的人才等对密码进行破译。
安全性:
在密码学的发展历程中,开始时应用于军事政治等领域,但随着语言学,信息的不断交流,人们也渐渐意识到各类信息安全的重要性,而密码作为保证信息安全性的重要手段之一,密码本身也应具有较高的安全性才能满足当今时代的需求。
参考文献
[1] 秦志龙. 密码算法的现状和发展研究 [J] .计算机应用, 2004 ,24(2) : 1-3
[2] 王昭, 段云所,陈钟.数据加密算法的原理与应用 [J] .网络安全技术与应用.2001
[3] 邓勇进. 古典密码学[J] . 硅谷, 2011 [4] W.Diffie,M.Hellman.密码学介绍:保密和验证[J] .通信保密, 1979(06)