文档介绍:单码与多码:单码:每个明文的字母正好映射到一个密文字母。多码:同一个明文字母可能用多个不同的密文字母来代替。1M/Pabcd……zCDEFG……C恺撒密表(Caesar)移位密码K=1/2/3/4/……/26C=E(3,p)=(p+3)mod26C=E(k,p)=(p+k)mod26令:a=0,b=1,c=2,…,z=25p=D(k,C)=(C-k)mod262☆关键词加密法☆仿射加密法☆多文字加密法(一)经典单码加密法3历史简介及经典例子1Polybius方格(简单替代加密法代表)123451abcde2fghik3lmnop4qrstu5vwxyz4另,替代加密法pietroabcdfghlmnqsuz1011121314151617181920212223242526272829用不同符号代替各个字母等abcdefghiklmnopqrO≠∧ǘαДΘ∞lδη∥Φ▽ζm£stuxyzfromofwhenΔεб789€﹠¤5THISIFUNNYS2图形/实物加密法STFHUINSNIY(skytale加密法)6轮加密法TSHIISNOTFUUCADKJSZORDWNLQAYJFPZPOEQUBVAKEIMMCLTHIJUCXAESGNL71关键词加密法(Keywordcipher)关键词加密法通过以下两步来构造:(1)选择一个关键词,如果该关键词有重复字母,去除除第一次出现之外的所有相同字母。ex:esssuce。(2)将该关键词写在字母表的下方,并用字母表的其他字母按标准的顺序填写余下的空间。Ex:对关键词“”,字母表将写成如下形式:bdfhjklopqrsuvwxyz8ex:明文:helpiamlost密文:tchobmjhlrs演示改进形式:关键词从任一位置开始(即可以不从“a”开始),例如选用关键词“pacific”从“k”开始,则替换密钥如下:ABCDEFGHIJKLMNOPQRSTUVWXYZqrstuvwxyzpacifbdeghjklmnoex:明文:helpiamlost密文:xuabyqcafgh演示92仿射加密法(affinecipher)在仿射加密法中,字母表的字母被赋予一个数字,例如:a=0,b=1,c=2,…,z=25。仿射加密法的密钥为0~25之间的数字对(a,b),且gcd(a,26)=1。现假设p为明文字母的数字(即,该字母在字母表中对应的数字),而c为密文字母的数字,则c≡(ap+b)(mod26)ap+b-c=26kap=26k+c-bp=[26k+(c-b)]/aex:选取密钥(7,3),HOT(H=7,O=14,T=19)C(H)≡(7×7+3)mod26≡52mod26=0,即为字母”a”;C(O)≡(7×14+3)mod26≡101mod26=23,即为字母”x”;C(T)≡(7×19+3)mod26≡136mod26=6,即为字母”g”;这样,对于这个密钥,“hot”变成了“axg”。演示10