【普莱菲尔密码加密方法】 普莱菲尔密码的编写方法是极为简单的,通常可以分为三个步骤,即编制密码表、整理明文、编写译文,下面我们以明文:pishoupideweinasi(“披兽皮的维纳斯”,欢迎光临我的博客O(∩_∩)O~)和密钥“culture”为例来讲解。 (1) 编制密码表 我们需要的是一个5乘5的方表,而用到的是密钥“culture”与英文字母表: Ⅰ整理密钥字母C U L T U R E,去掉后面重复的字母以,得到字母串:C U L T R E; Ⅱ用上一步得到的字母自上而下来填补5乘5方表的纵列(也可横排),之后的空白按照相同的顺序用字母表中剩余的字母依次填补完整,得到如下的方格,
这一步需要注意的要点:整理密钥字母时,如果出现z,则需要去除,因为在英文里z的使用频率最低,相应的如果是德文,则需将i与j当作一个字母来看待,而法语则去掉w或k。 (2) 整理明文 我们要遵循的原则是“两个一组”,得到是若干个两两成对的字母段,用到的是明文pishoupideweinasi与字母“x”: Ⅰ将明文两两一组按顺序排开,得到pi sh ou pi de we in as i Ⅱ对于末尾的单个字母要加上一个“x”使之成对:pi sh ou pi de we in as ix 这一步需要注意的要点:对于相连字母相同者,每个后面都需要加x,例如tomorrow,需要写成:to mo rx rx ow (3) 编写密文 我们要得到的密文,当然,对于每个字母对,要严格遵循如下的原则: 1.如果两个字母在同一行则要用它右邻的字母替换,如果已在最右边,则用该行最左边的替换,如明文为“ce”,依据上表,应替换为“eg”; 2.如果两个字母在同一列则要用它下边的字母替换,如果已在最下边,则用该行最上边的替换,如明文为“oq”,依据上表,应替换为“pm”; 3.如果两个字母在不同的行或列,则应在密码表中找两个字母使四个字母组成一个矩形,明文占据两个顶点,需用另外两个顶点的字母替换,如明文为“hx”,可以替换为“vj”或“jv”(本例按照横向替换原则)。 Ⅰ按照上述原则,将明文加以编写,得到jo gv ln jo fa bs oh ve wj Ⅱ将得到的字母改为大写,并五个一组列好,得到密码JOGVL NJOFA BSOHV EWJ