1、1同余理论在仿射加密中的应用(西安文理学院 陕西西安 段勇花)摘 要:本文简单介绍了数论中的同余理论在仿射加密中的应用。首先说明了字母与整数的对应,接着介绍了凯撒密码这一简单的加密方法,然后利用同余理论分析了通过明文中字母出现的频率与英文字母本身出现的频率的对应关系。介绍了对明文加密及对密文解密的方法,体现了数论的应用价值。关键词: 明文,密文,仿射加密,同余理论在现在的社会,信息无处不在。在一些情况下,传递信息的人希望他的信息只被特定的接收者知道要说明的内容。那么信息的加密就显得越来越重要了。数论作为一门理论性的学科,在现实生活中的这一领域也显示出了它的实用性。一、了解相关概念明文是一目了然
2、的信息。把这些信息传递给某些人时,要先对明文进行“加密”处理,经加密处理的明文,称之为密文。只有在接收者掌握了一定的方法,才能由密文知道明文的信息。这个信息的传递包括了两个层面。第一,把明文写成密文的方法;第二,解密的方法。二、同余在仿射加密中的应用首先建立明文与正整数的对应关系。一个文件总是由文字和其他符号组成的,如果用汉语拼音书写汉字,那么,文件就可以用 26个拉丁字母和一些符号来表示,假设共 个,那么这些符号和 个NN2正整数建立了一一对应的关系,例如:a b c d e f g h i j k l m00 01 02 03 04 05 06 07 08 09 10 11 12n o p
3、 q r s t u v w x y z13 14 15 16 17 18 19 20 21 22 23 24 25那么,你真好(nizhenhao)对应的数字就是130825070413070014.接着给出仿射加密方法。1、选取参数。取大正整数 ,以及正整数 使得An,dba,明文 满足 。nadnmo,P02、加密。对于明文 计算 , 就是与nEbaE0,mo对应的密文。P3、解密。对于密文 ,计算 。 就PdP00,0是与 对应的明文 。其中 .EP ndababEmo例如:凯撒密码作为一种最为古老的对称加密体制,在古罗马的时候都已经很流行,他的基本思想是:通过把字母移动一定的位数来实
4、现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。例如,当偏移量是 3 的时候,设符号 分别与数字 对应,取zba, 25,10,对明文 中的每一个符号用公式1,3,26dbanP加密。比如对于明文 有 ,依此可得moPEad3明文 a b c d e f g h i j k l m3密文 d e f g h i j k l m n o p明文 n o p q r s t u v w x y z密文 q r s t u v w x y z a b c六点钟(liudianzhong)被加密成 olxgldqckrqj.对于密文可用 得到明文,例如2
5、6mod3EP dg36由此可见,位数就是凯撒密码加密和解密的密钥。再例,假如事先知道信息的每一个字母通过同余公式进行变换,我们试对以下密文进行分析: 250,6odEkPEYFXMPCESPZCJTDFDPQFWQZCPYNTASPCTYRXPDDLRPD首先我们要对密文中每个字母的出现字数进行统计,如下表所示:字母 A B C D E F G H I J K L M次数 1 0 4 5 1 3 0 0 0 1 0 1 1字母 N O P Q R S T U V W X Y Z次数 1 0 7 2 2 2 3 0 0 1 2 3 2“P”是出现频率最高的字母, “C、D、F、T 、Y ”频率
6、较高。而我们知道“E”是英文信息中出现频率最高的字母,可以猜测密文中的“P”表示明文中的“E”,则 则 。,26mod415k26od1k因此,我们有同余公式 以及 ,可PEEP得密文 A B C D E F G H I J K L M 明文 P Q R S T U V W X Y Z A B4密文 N O P Q R S T U V W X Y Z明文 C D E F G H I J K L M N O尝试破解密文得到:NUMBERTHORYISUSEFULFORENCIPHERINGMESSAGES通过明文的意思我们知道破解密码正确,如果得到明文的字母混乱,则可以通过密文其他频率较高字母的
7、可能变换来解密。一般的,对于仿射加密方法,只要知道两对(不同的)相对应的明文与密文就可以求出解密方法。若 ,nbaPEmod1nbaPEmod2所以 ,122用 rixii 0,表示同余方程 nEPod1212的全部解,记 babiii,m则 就可能是 中的 。ribai1, 0ba,当 时,这样的 只有一组,当 时,首2nPi, 12nP先利用 删去一些 ,接着用它们验证 是否, iba, Emod成立,再用它们试着破译一些密文,就能确定正确的 。最后把ba,代入 求出 ,就可得到解密公式andnmo1,d。bEdP0已知有形如 的仿射变换来加密信息,250,6EbaP试对以下加密信息进行破
8、解:USLELJUTCCYRTPSURKLTYGGFVELYUSLRYX5DJURTUULVCUURJRKQLLQLYXSRVLBRYZCYREKLVEXBRYZDGHRGUSLJLLMLYPDJLJTJUFALGUPTGVTJULYUSLDALTJRWUSLJFEOLPU首先我们要对密文中每个字母的出现字数进行统计,如下表所示:字母 A B C D E F G H I J K L M次数 2 2 4 4 5 3 6 1 0 10 3 22 1字母 N O P Q R S T U V W X Y Z次数 0 1 4 2 12 7 8 16 5 1 3 10 2“L”是出现频率最高的字母, “U
9、”频率次高。而我们知道“E”是英文信息中出现频率最高的字母,其次是 “T”,可以猜测密文中的“L ”表示明文中的“E”, “U”表示明文中的 “T”则,26mod14ba26mod019ba解同余方程组得 , ,可知 ,19d则解密变换为 250,319PEEP可得对应关系如下图所示密文 A B C D E F G H I J K L M 明文 D W P I B U N G Z S L E X密文 N O P Q R S T U V W X Y Z明文 Q J C V O H A T M F Y R K即可得明文为:THE BEST APPROACH TO LEARN NUMBER THEO
10、RY6IS TO ATTEMPT TO SOLVE EVERY HOMEWORK PROBLEM BY WORKING ON THESE EXERCISES A STUDENT CAN MASTER THE IDEAS OF THE SUSJECT通过明文的意思我们知道破解密码的方法是正确的。参考文献:1数论与密码冯克勤著,科学出版社 2007,3:61-762数论与应用纪建著,清华大学出版 2013,1:217-220Abstract: This paper briefly describes the number theory congruence theory in affine Enc
11、ryption. First, the corresponding letters and integers, then introduces the simple Caesar cipher encryption method, and then use congruence theory to analyze the relationship between the frequency and alphabetical letters appear by express itself appears frequencies. Describes a method for encrypting a plaintext and ciphertext decryption, reflects the value of number theory.Keywords: plaintext, ciphertext, affine encryption, congruence theory