在经典加密算法中,最著名的多字母加密算法是Playfair加密算法,曾被英国陆军在第一次世界大战中作为第一流领域系统使用,并在第二次世界大战中仍被美国陆军和其他同盟军使用。那么我们今天就给大家来介绍一下这种Playfair加密算法。
Playfair的加密过程
Playfair加密算法根据下列规则一次对明文的两个字母进行加密,这两个字母构成一对。其加密规则如下:
(1)一对明文字母如果是重复的。则在这对明文字母种间插入一个填充字符。如X。因此,单词session将被分割成:se、sx、si、on。
(2)如果分割后的明文字母对在矩阵的同一行中都出现,则分别用矩阵中其右侧的字母代替,行的最后一个字母由行的第一个字母代替。例如,on被加密成qo,而st被加tn。
(3)如果分割后的明文字母对在矩阵的一列中都出现,则分别用矩阵中其下方的字母代替,列的最后一个字母由列的第一个字母代替。例如,en被加密成nu,而aw被加密成ba。
(4)如果分割后的明文字母对既不在矩阵的同一列中都出现也不在矩阵的同一行中都出现,密文是这两个字母所在的长方形的另两个顶点。例如,se被加密成nk,而cu被加密成ix(或jx)。
(5)如果明文有奇数个字母,末尾加一个无效字母。
Playfair加密算法与单字母替代密码相比有明显的优势
第一、双字母有26x26=676种组合方式,识别各种双字母组合比单字母困难得多;
第二、各种字母组的相对频率范围也更为广泛,使频率分析更加困难。
因此,Playfair加密算法曾被认为是不可破译的。
Playfair加密算法的实现
用vb模拟实现时,有设置密钥、加密、算法简介、重新输入、退出这五个按钮(图一)和三个文本框:分别用于输入明文、矩阵的关键字和输出密文。
根据密钥矩阵生成的原则,若取关键字为Playfair,则生成的密钥(图一)。以下的加密实现都是基于以Playfair为关键字生成的密钥矩阵。若设明文为plnuamdi。
因为pl在同一行,nu在同一列,am既不在同一列也不在同一行,di在同一行。依据加密规则其密文为laupflair。在本模拟系统中,我们对于两个一样的明文和奇数个明文采取增加大写字母Z的方式来实现。考虑到解密的可行性,我们只对奇数个明文进行了循环加密,对两个一样的明文只是增加了一个大写字母Z。
Playfair加密算法主要程序
Function Encode Char(char1 As String, char2 As String) As String
Dim x1,x2, y1, y2 As Integer
Dim flag1,flag2 As Boolean
If (Asc(char1)> asc_z_l) Then
flag1= True
char1 = Chr(Asc(charl)_asc_change)
End If
If (Asc(char2)> asc_z_l) Then
flag2 = True
char2 = Cbr(Asc(char2)_ asc_change)
End If
If (GetXYln ex(char1, x1, y1) And GetXYindex(char2. x2. y2) Then
"相同字符
If (x1 =x2/ id y1 = y2) then
EncodeChar Case Low(char1. flag1) + fillChar + CaseLow(char2, flag2)
"同行字符
EncodeChar Case Low(matrix(x1. (y1 + 1) Mod 5), flag1) + Case Low(matrix(x2, (y2 +1) Mod 5) flag2)
"同列字符
Else if (x1=x2) Then
Encode Char caseLow (matrix((x1 + 1) Mod 5, y1), flag1) + Case Low(matrix(x2 +1l) Mod 5, y2),flag2)
"对角字符
Else
Encode Char= caseLow(matrix(x1. y2), flag1) + CaseLow(matrix(x2. y1), flag2)
End If
Else
Encode Char= aseLow(char1.FLag1) + CaseLow(char2, flag2)
End If
End Function
小知识之矩阵:在数学上,矩阵是指纵横排列的二维数据表格,最早来自于方程组的系数及常数所构成的方阵。
实操指南:如何监控聊天中的敏感信息?这款秘籍软件,轻松掌握微信聊天动态
电影《摩登时代》里,流水线工人就连在吃饭时都要用“自动喂食机”提高效率,这样才能挤出更多时间投入工作。虽然现在打工人不至于此,但有些老板仍然放心不下……像企业聊天记录往往蕴含着大量的敏感信息。为了确保信息安全,监控聊天中的敏感信息成为了一项必要且重要的工作。以下是一款秘籍软件,帮助你轻松掌握微信聊天动态,确保信息安全。...
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过员工上班在干什么?摸鱼?打游戏?老板该怎么管理?如何才能监视怎么监控员工上班情况?监控员工上班情况可以通过多种方式实现,但重要的是要确保这些措施既合法又合规,同时尊重员工的隐私权。以下是一些建议的方法:一、制定明确的行为规范与奖惩制度1、制定行为规范: 企...
怎么监控员工上班情况?快速监控员工状态
怎么监控员工上班情况?快速监控员工状态在企业管理中,如何有效监控员工上班情况,确保工作效率与团队协作,是每位老板都需面对的课题。本文为您揭秘五招快速监控员工状态的实用技巧,不仅能帮助您实时掌握员工动态,还能提升整体管理效率。作为老板,掌握这些技巧,将让您在企业管理中游刃有余,轻松应对各种挑战。一、使用安企神软件实时监控...
安企神桌管软件:提升企业管理效率的全能助力
安企神桌管软件:提升企业管理效率的全能助力在当今竞争激烈的商业环境中,企业必须不断优化管理和运营流程,以提高效率和盈利能力。安企神桌管软件正是这样一款面向中小企业的管理工具,能够帮助企业在多方面提升综合管理水平。本文将详细探讨安企神桌管软件给企业带来的多重价值。一、全方位的管理功能安企神桌管软件是一款集成了多种管理功能...
安企神:揭开终端安全管理软件的神秘面纱
安企神:揭开终端安全管理软件的神秘面纱在数字化日益普及的今天,企业的网络安全问题愈发显得重要。数据泄露、网络攻击等事件层出不穷,如何保障企业内部信息的安全性成为众多企业关心的焦点。安企神终端安全管理软件应运而生,作为一款专业的安全管理工具,它的功能与优势备受关注。本文将全面揭秘安企神软件的核心功能、应用场景及其在终端安...