轻工大学选修课
趣味隐写术与密码术(通识)大作业
学院:数学与计算机学院 专业:计算机技术与科学 :晶
学号: 1305110009 时间: 2016.05.09
..
1.简述常用隐写术与密码术分为哪几类?并应用举例说明。
答:目前常用的隐写术和密码术有:变色隐写药水,藏头诗,字符替换,摩氏密码,现代加解密技术,其中包括对称加密解密技术和非对称加密解密技术等,下面一一举例说明。
1)隐写术
1. 隐写药水:淀粉(米汤)写字,紫药水显影,柠檬水写字在水蒸气下显示。
案例:传统谍战电影《风声》 2.藏头诗
a. 藏于诗中:有效信息藏于诗词中,根据意思得到。
案例:《想做你妻》
木目跨于心,古人做反文。小和尚光头,凄惨无泪水。
b.藏于诗头:
庐剧《无双缘》
早妆未罢暗凝眉,迎户愁看紫燕飞,无力回天春已老,双栖画栋不如归。 c.藏于诗尾:
别后空愁我,永言形友爱。六合已姓,风枝不可静。
c.藏于诗中间:
陇上行人夜吹笛,女墙犹在夜乌啼。颇黎枕上闻天鸡,本期沧海堪投迹。
2)密码术 字母表替代法
..
1、顺序字符替换法
从26个英文字母表中第N个字符开始替换,把后面的字母依次写入取N=h 新的字母表顺序为:
h i j k l m n o p q r s t u v w x y z a b c d e f g 对应原始字母表顺序:
a b c d e f g h i j k l m n o p q r s t u v w x y z 原始明文信息:I am Han jing
用上述字符替换法加密后的密文信息:S ht Ohu qpun
2、keyword字符替换法
从26个英文字母表中取出keyword字符放在字母表开头,然后按顺序摆放剩余字母,形成新的字母表顺序为 k e y w o r d a b c f g h I j l m n p q s t u v x z 对应原始字母表顺序
a b c d e f g h I j k L m n o p q r s t u v w s y z 原始明文信息:I am Han jing
用上述字符替换法加密后的密文信息:B kh Aki cbhd
3、栅栏密码
就是把要加密的明文分成N个一组,然后把每组的第1个个字连起来,形成一段无规律的话。不过栅栏密码本身有一个潜规则,就是组成栅栏的字母一般不会太多。
一般比较常见的是2栏的栅栏密码。 比如明文: I LOVE FCBARCELONA
..
去掉空格后变为: ILOVEFCBARCELONA 两个一组,得到: IL OV EF CB AR CE LO NA 先取出第一个字母: IOECACLN 再取出第二个字母: LVFBREOA 连在一起就是: IOECACLNLVFBREOA
而解密的时候,我们先把密文从中间分开,变为两行: I O E C A C L N L V F B R E O A
再按上下上下的顺序组合起来: ILOVEFCBARCELONA
分出空格,就可以得到原文了: I LOVE FCBARCELONA
当栅栏和拼音相结合后,诞生出一种奇妙的新思路: 如QGBKSYSHJIEUEIIIIAN
总共19个字母看似不符合栅栏的规则...其实是因为出现了一个叫做“捆绑”的东西: Q G B K S Y SH J I E U E I I I IAN
我们发现:上面是声母,下面是韵母...
3.仿射密码
加密和解密算法 C= Ek(m)=(k1m+k2) mod n
M= Dk(c)=k3(c- k2) mod n(其中(k3 ×k1)mod26 = 1)
..
设密钥K= (7, 3), 用仿射密码加密明文hot。
三个字母对应的数值是7、14和19。分别加密如下: (7×7 + 3) mod 26 = 52 mod 26 =0 (7×14 + 3) mod 26 = 101 mod 26 =23 (7×19 + 3) mod 26 =136 mod 26 =6
三个密文数值为0、23和6,对应的密文是AXG。
4、维吉尼亚密码
将26个凯撒密表合成一个,根据密钥来决定用哪一行的密表来进行替换,以此来对抗字频统计。假如以表第一行代表明文字母,左面第一列代表密钥字母,对如下明文加密: 明文TO BE OR NOT TO BE THAT IS THE QUESTION
当选定RELATIONS作为密钥时,加密过程是:明文一个字母为T,第一个密钥字母为R,因此可以找到在R行中代替T的为K,依此类推,得出对应关系如下:
密钥:RELAT IONSR ELATI ONSRE LATIO NSREL 密文:KSMEH ZBBLK SMEMP OGAJX SEJCS FLZSY
5、博福特密码
是一种类似于维吉尼亚密码的替代密码,由弗朗西斯·蒲福(Francis Beaufort)发明。
博福特密码是按mod q减法运算的一种周期代替密码。 即ci+td=δi(mi+td)≡(ki-mi+td)(mod q) 符号:ki:密钥 mi:明文 ci:密文
..