教科版(2019)高中信息技术 必修1 3.4 加密与解密 第2课时 课件(共16张PPT,内含代码)

资源下载
  1. 二一教育资源

教科版(2019)高中信息技术 必修1 3.4 加密与解密 第2课时 课件(共16张PPT,内含代码)

资源简介

(共16张PPT)
3.4加密与解密
《数据与计算》必修一
第二课时
汇报人:
这是一组四角密码
对照规则进行翻译后发现“代码”意思为:
“信任与爱就是我对你永远的态度”。
一、数据加密的历史
PART 1
时间 加密方式
683年 拆字法。将明文中的文字进行组合生成新的字,即为密文,比如“十二月”合起来为“青”
北宋 代码法。北宋进士曾公亮曾搜集了40个常用军事短语,然后对其进行顺序编码:一、请弓;二、请箭;三、请刀;四、请甲;五、请枪旗;六、请锅幕;七、请马;八、请衣赐;九、请粮料……四十、战小胜。军队出征前,指挥机关将用上述短语编码的密码本发给将领,并约定用一首不含重复文字的40字五言律诗与密码相对应
公元前五世纪 移位法。希罗多德(Herodotus)的《历史》中记载了公元前五世纪,希腊城邦和波斯帝国发生多次冲突和战争。这些战争中希腊城邦中广泛使用了移位法进行加密处理战争通讯信息,使波斯帝国难以获得希腊城邦的军事情报,也就无法提前做军事部署。希腊城邦用来传输军事信息、命令的每段文字都有固定的字数,解密者手中会有一份文字移位说明。解密者拿到密文后,根据文字移位说明进行解密,从而破解其中的军事命令或消息
古罗马时期 《高卢战记》有描述恺撒曾经使用密码来传递信息,即所谓的“恺撒密码”,它是一种替代密码,通过将字母按顺序推后起3位起到加密作用,如将字母A换作字母D,将字母B换作字母E。因据说恺撒是率先使用加密函的古代将领之一,因此这种加密方法被称为恺撒密码
第二次世界大战 密码机。在第二次世界大战期间,德国军方启用“恩尼格玛”密码机,密码学在战争中起着非常重要的作用
表3.4.3 数据加密技术的发展
二、加密与解密
PART 2
明文:原始信息(数据)
密文:加密后的信息(数据)
二、加密与解密
PART 2
加密就是将原始信息(数据)隐匿起来,使之在缺少特殊信息(数据)时不可读。
解密就是将密文还原成明文的过程称为解密(或解码)。
想一想:明文:I LOVE YOU 加密后L ORYH BRX(密文),秘钥是?
【活动2】 揭秘“隐身术”——凯撒密码的加密
明文字母表 Z 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
密文字母表 C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
明文字母表 Z 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
密文字母表 C D E F G H I J K L M N O P Q R S T U V W X Y Z A B
恺撒密码加密算法,尝试补全流程图(凯撒密码加密过程.fld)
学生实践一:
加密过程
明文c a~w A~W x~z X~Z 其他
密文b d~z D~Z a~c A~C 不变
规律 ASCII码+3 ASCII码+3 ASCII码-23 ASCII码-23 不变
公式 'a'<=c[i]<='w' or 'A'<=c[i]<='W' 'x'<=c[i]<='z' or 'X'<=c[i]<='Z'
chr(ord(c[i])+3) chr(ord(c[i])-26+3) c[i]
加密过程
公式 'a'<=c[i]<='w' or 'A'<=c[i]<='W' 'x'<=c[i]<='z' or 'X'<=c[i]<='Z'
chr(ord(c[i])+3) chr(ord(c[i])-26+3) c[i]
ord():字符转换成对应存储编码的函数。
例如:ord(‘A’) 编码值为65。
chr():编码值转换对应字符的函数。
例如:chr(65)对应字符‘A’。
学生实践二:解密过程 ,打开学案,找出解密规律并“补全公式”
密文b d~z D~Z a~c A~C 其他
明文c a~w A~W x~z X~Z 不变
规律 ASCII码-3 ASCII码-3 ASCII码+23 ASCII码+23 不变
公式 'd'<=b[i]<='z' or 'D'<=b[i]<='Z' 'a'<=b[i]<='c' or 'A'<=b[i]<='C'
chr(ord(b[i])-3) chr(ord(b[i])+23) b[i]
【试一试】请写出恺撒密码的解密算法。
(详见配套资源“恺撒密码(加密无界面).py”)
c=input("请输入密文:")
b=""
for i in range(0,len(c)): #获取密文内容的每一个字母,并破解
if 'a'<=c[i]<='w' or 'A'<=c[i]<='W': #判断d-z或D-Z间的字母
b=b+chr(ord(c[i])+3) #破解密文
elif 'x'<=c[i]<='z' or 'X'<=c[i]<='Z': #判断a-c或A-C间的字母
b=b+chr(ord(c[i])-26+3) #破解密文
else:
b=b+c[i] #字母以外的密文不变
print("你的明文为:"+b)
【试一试】请写出恺撒密码的解密算法。
(详见配套资源“恺撒密码(解密无界面).py”)
c=input("请输入密文:")
b=""
for i in range(0,len(c)): #获取密文内容的每一个字母,并破解
if 'd'<=c[i]<='z' or 'D'<=c[i]<='Z': #判断d-z或D-Z间的字母
b=b+chr(ord(c[i])-3) #破解密文
elif 'a'<=c[i]<='c' or 'A'<=c[i]<='C': #判断a-c或A-C间的字母
b=b+chr(ord(c[i])+23) #破解密文
else:
b=b+c[i] #字母以外的密文不变
print("你的明文为:"+b)
【想一想】恺撒密码的安全性能如何?
可以说,保密性能极差。将明文字符前移或后移一个固定的长度d(称为密钥),即使改变d的值,也最多只需25次尝试d的值,就能破解。
小结
1.数据类型(字符串、字符),字符与ASCII码,函数ord()与chr(),循环语句,分支语句,条件(逻辑)表达式
2.加密与解密的过程,核心是秘钥。
3.相关法律
国家已经出台多部法律,大力实施数据保护,维护国家安全和网络秩序。2017年6月1日起施行的《中华人民共和国网络安全法》,明确要求网络运营者应当按照网络安全等级保护制度的要求,履行安全保护义务,保障网络免受干扰、破坏或者未经授权的访问,防止网络数据泄露或者被篡改,窃取。
《中华人民共和国刑法》第二百八十五条至第二百八十七条,对非法侵入计算机系统,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,利用计算机实施金融诈骗、盗窃、贪污、挪用公款、窃取国家秘密等行为进行了量刑定罪。
【作业】
恺撒密码的安全性如何?你能提出一种改进方案吗?
THANKS
Personal business report

展开更多......

收起↑

资源预览