希尔密码加密在线使用(希尔密码讲解)

2023-02-20 12:01:10 摩斯密码知识 思思

除了栅栏密码,恺撒密码和维吉尼亚密码,还有哪些密码?

培根密码

弗朗西斯·培根,英国人,他是第一个意识到科学技术能够改变世界面貌的哲学家。他不仅意识到这一点,而且积极投入到科学技术的探索中。他对密码学的兴趣很浓,设计出的密码也丰富了密码学的内容。

他设计的密码非常独特,它可以不加过多的“雕饰”,几乎以本来的“素面”在你眼前晃过,而不会引起你的注意。

培根所用的密码是一种本质上用二进制数设计的。不过,他没有用通常的0和1来表示,而是采用a和b。下面是他设计的26个英文字母二进制表示法。

A aaaaa

B aaaab

C aaaba

D aaabb

E aabaa

F aabab

G aabba

H aabbb

I abaaa

J abaab

K ababa

L ababb

M abbaa

N abbab

O abbba

P abbbb

Q baaaa

R baaab

S baaba

T baabb

U babaa

V babab

W babba

X babbb

Y bbaaa

Z bbaab

编写密码时,把密文每五个字母为一组,凡是其中的正体字母代表a,斜体字母代表b。随意选取句子或文章,就可以通过改变字母的写法来加密了。

此外,还有

字母表顺序-数字

进制转换密码

Mod算法

倒序

间隔

字母频率

凯撒密码(Caesar Shifts, Simple Shift)

凯撒移位(中文版)

栅栏密码(The Rail-Fence Cipher)

维吉尼亚密码(Vigenère Cipher)

Polybius密码(Polybius Cipher)

ADFGX/ADFGVX密码(ADFGX/ADFGVX Cipher)

ADFGX

ADFGVX

乘法密码(Multiplication Cipher)

仿射密码(Affine Shift)

希尔密码(Hill Cipher)

加密

解密

Playfair密码(Playfair Cipher)

摩斯电码

置换密码(Transposition Cipher)

替代密码(Monoalphabetic Substitution)

字母表数字

字母表代码

反字母表

随机乱序字母

棋盘密码

键盘密码

键盘移位

软键盘密码

数字小键盘密码

手机键盘密码

数字谐音密码

数字记忆编码

百度/Google/网页字符

百度字符(GB2312)

Google字符(URI)

网页编码(Unicode)

Alt+数字小键盘

MD5

超字数不一一解释了。可以百度。

什么是希尔密码?

希尔密码(Hill Password)是运用基本矩阵论原理的替换密码,由Lester S. Hill在1929年发明。每个字母当作26进制数字:A=0, B=1, C=2... 一串字母当成n维向量,跟一个n×n的矩阵相乘,再将得出的结果模26。注意用作加密的矩阵(即密匙)在\mathbb_^n必须是可逆的,否则就不可能译码。只有矩阵的行列式和26互质,才是可逆的。

希尔密码是基于矩阵的线性变换,希尔密码相对于前面介绍的移位密码以及放射密码而言,其最大的好处就是隐藏了字符的频率信息,使得传统的通过字频来破译密文的方法失效.希尔密码不是足够安全的,如今已被证实。

希尔密码原理

希尔密码(Hill Cipher)是运用基本矩阵论原理的替换密码,由Lester S. Hill在1929年发明。每个字母当作26进制数字:A=0, B=1, C=2... 一串字母当成n维向量,跟一个n×n的矩阵相乘,再将得出的结果MOD26。

随着科技的日新月异和人们对信用卡、计算机的依赖性的加强,密码学显得愈来愈重要。密码学是一门关于加密和解密、密文和明文的学科。若将原本的符号代换成另一种符号,即可称之为广义的密码。狭义的密码主要是为了保密,是一种防止窃文者得知内容而设的另一种符号文字,也是一般人所熟知的密码。

使用信用卡、网络账号及密码、电子信箱、电子签名等都需要密码。为了方便记忆,许多人用生日、电话号码、门牌号码记做密码,但是这样安全性较差。

为了使密码更加复杂,更难解密,产生了许多不同形式的密码。密码的函数特性是明文对密码为一对一或一对多的关系,即明文是密码的函数。传统密码中有一种叫移位法,移位法基本型态是加法加密系统C=P+s(mod m)。一般来说,我们以1表示A,2表示B,……,25表示Y,26表示Z,以此类推。由于s=0时相当于未加密,而0≤s≤m-1(s≥m都可用0≤s≤m-1取代),因此,整个系统只有m-1种变化。换言之,只要试过m-1次,机密的信息就会泄漏出去。

由此看来,日常生活中的密码和传统的密码的可靠性较差,我们有必要寻求一种容易将字母的自然频度隐蔽或均匀化,从而有利于统计分析的安全可靠的加密方法。希尔密码能基本满足这一要求。

不难看出,希尔密码算法中有两个非常重要的条件。第一个条件是字符(信息)与数字对应表,当加密矩阵的阶数n(本文实例中的加密矩阵的阶数n=3)越大,破译的难度就会增大,此时计算量也大,我们可以借助有关数学软件如Mathematica提高运算效率。第二个条件是加密矩阵,如何定义、求解这个矩阵对于密码的加密和破译至关重要。

从破译密码的角度来看,传统的密码有一个致命弱点,就是破译者可从统计出来的字符频率中找到规律,进而找出破译的突破口,尤其是在计算机技术高度发达的今天,破译的速度更快。希尔密码算法则完全克服了这一缺陷,它通过采用线性代数中的矩阵乘法运算和逆运算,能够较好地抵抗频率分析,很难被攻破。

希尔密码体系为破译者至少设置了三道关口,加大了破译难度。破译希尔密码的关键是猜测文字被转换成几维向量(列矩阵的行数)、所对应的字母表是怎样排列的,更为重要的是要设法获取加密矩阵A。要破解密码,向量的维数、字母的排列表和加密矩阵三者缺一不可。古今中外的谍报战中,敌对双方总是千方百计地获取破解对方密码的钥匙,但要想获取希尔密码的三把钥匙谈何容易。

世界上没有攻不破的密码,希尔密码也不例外。希尔密码算法的缺点在于线性变换的安全性很脆弱,易被攻击击破,黑客正是利用各种密码的弱点来向用户频频发起攻击的。尽管如此,希尔密码仍不失为一种简便高效的密码。

希尔密码加密在线使用(希尔密码讲解) 第1张

希尔密码的Hill cipher

三、Hill cipher(希尔密码)

Hill cipher是1929年提出的一种密码体制。

设d是一正整数,定义。Hill cipher的主要思想是利用线性变换方法,不同的是这种变换是在 上运算。

例如:设d=2,每个明文单元使用 来表示,同样密文单元用 表示,具体的加密中, 将被表示为 的线性组合。

如:

利用线性代数的知识,可得

这个运算在 上进行,即mod26,密钥K一般取一个m*m的矩阵,记为。对明文 ,以 ,则加密算法为:

也可表示成。