2022年教科版高一信息技术必修1第三单元3.4加密和解密教学设计

上传人:鲁** 文档编号:567314978 上传时间:2024-07-19 格式:PDF 页数:9 大小:252.89KB
返回 下载 相关 举报
2022年教科版高一信息技术必修1第三单元3.4加密和解密教学设计_第1页
第1页 / 共9页
2022年教科版高一信息技术必修1第三单元3.4加密和解密教学设计_第2页
第2页 / 共9页
2022年教科版高一信息技术必修1第三单元3.4加密和解密教学设计_第3页
第3页 / 共9页
2022年教科版高一信息技术必修1第三单元3.4加密和解密教学设计_第4页
第4页 / 共9页
2022年教科版高一信息技术必修1第三单元3.4加密和解密教学设计_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《2022年教科版高一信息技术必修1第三单元3.4加密和解密教学设计》由会员分享,可在线阅读,更多相关《2022年教科版高一信息技术必修1第三单元3.4加密和解密教学设计(9页珍藏版)》请在金锄头文库上搜索。

1、教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计1 / 9 3.4 加密与解密本节内容按 2 课时设计。第一课时教学重难点【教学重点 】会分析生活中由密码引起的数据安全问题,理解对数据进行保护的意义。【教学难点 】用穷举法破解密码。【教学过程】一、引入1. 学生预习,阅读第77 页“任务一解开网站账号被盗之谜”之“活动1 防范盗窃行为”,填写第78 页的表 3.4.1 。2. 教师检查,并评讲填写情况,引出数据安全、密码的话题。表3.4.1 密码盗窃与防盗分析表盗窃方式防盗窃措施肩窥方式我们可以在输入密码时遮挡自己的操作过程,防止别人偷看密码信息;或者确定环境安全后再进行操作字典

2、破解密码不要用生日、 姓名及拼音缩写、手机号、 简单数字组合、 单词、身份证号、用户Id 暴力破解同时包含大小写字母、数字、特殊符号,不少于8个字符二、密码密码是指用来核对用户ID以验证用户就是本人的一组字符。活动2设置安全密码打开教科书配套资源中的“数据安全性测试.py ”,运行并测试穷举搜索一个5位、7位和9位的数字密码, 分别需要多长时间, 填写表 3.4.2 。(详见配套资源 “数据安全性测试 ( 有界面 ).fld”和“数据安全性测试 ( 有界面 ).py ”)表3.4.2 穷举搜索密码需要的时间密码长度密码值破解时间5位12567 1.0 毫秒98302 15.6 毫秒7位9位精选

3、学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 9 页教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计2 / 9 实现穷举搜索的自定义函数jiemi()的程序代码如下:def jiemi(): d1=datetime.datetime.now() #获取当前系统时间 d1 p=int(varin.get() #获取输入文本框的数字密码 for i in range(0,p+1): #从0循环到正确密码数值 if i=p: #如果密码相同 d2=datetime.datetime.now() #获取当前系统时间 d2 d=d2-

4、d1 #取得时间差 #在输出文本框中显示解密用时varout.set(str(d.seconds)+秒+str(d.microseconds/1000)+毫秒 ) 程序运行效果如下:【比一比】当然,我们也可以编写无可视化界面的程序,程序更简单。(详见配套资源“数据安全性测试( 无界面 ).py ”)程序运行效果如下:请比较有可视化界面与无可视化界面两个程序运算的快慢,将最快的结果填入表3.4.2 。【算一算】你的电脑 1秒最多能试探大约多少个整数密码?【做一做】1. 有可视化界面程序中的jiemi()函数中的 for 循环改为 while 条件循环:精选学习资料 - - - - - - - -

5、 - 名师归纳总结 - - - - - - -第 2 页,共 9 页教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计3 / 9 运算速度是提高了,还是降低了?再将i=i+1 改为 i+=1,运算速度有无变化?你能得出什么结论?2. 为计算 1秒最多能试探多少个整数密码,某同学认为用原来的jiemi()函数要试探性多次输入 p的值, 结果不稳定不精确, 于是他将 jiemi()函数修改为 jiemi2():精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 3 页,共 9 页教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计4

6、/ 9 结果会怎么样?为什么?【想一想】1. 如果密码包含数字和大小写英文字母,那么 5位、7位、9位密码的最大循环次数分别是多少次?估算你的电脑分别需要多少时间试探?2. 如果密码包含数字、大小写英文字母和键面特殊字符(不含空格共有32个键面特殊字符),那么 5位、7位、9位密码的最大循环次数分别是多少次?估算你的电脑分别需要多少时间试探?三、小结(防字典破解)设置安全密码,不用生日、姓名及拼音缩写、手机号、简单数字组合、单词、身份证号、用户Id 等等。(防暴力破解)设置安全密码,要同时包含大小写字母、数字、特殊符号,不少于8个字符为提高运算速度,尽可能采用计数循环for 语句代替条件循环w

7、hile 语句, 复合赋值语句精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 9 页教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计5 / 9 (如 i+=1 )代替简单赋值语句(i=i+1) 四、练习试编写程序, 破解超级密码可能包含数字、大小写英文字母和键面特殊字符(不含空格共有 32个键面特殊字符) 在内的 4位字符组成的密码, 每个字符的 ASCII码值在 33至 126之间。将运行用时记入下表:密码值破解用时超级密码 ( 字符串 ).py超级密码 ( 列表 ).py!876 AbY5 Z$*m z)0 ?x= 详

8、见配套资源“超级密码 ( 字符串 ).py ”和“超级密码 ( 列表).py ”,比较两种算法的快慢。第二课时教学重难点【教学重点 】恺撒密码的加密与解密算法。【教学难点 】恺撒密码的加密与解密算法。【教学过程】一、引入1. 学生预习, 阅读第 79 页 “任务二让数据 隐身” 之 “活动 1 古老的隐身术” ,填写表 3.4.3 ,引入“加密”话题。2. 教师检查,并评讲填写情况,引出数据安全、数据加密话题。表3.4.3 数据加密技术的发展时间加密方式683年拆字法。将明文中的文字进行组合生成新的字,即为密文,比如“十二月”合起来为“青”北宋代码法。北宋进士曾公亮曾搜集了40个常用军事短语,

9、 然后对其进行顺序编码:一、请弓 ; 二、请箭 ; 三、请刀 ; 四、请甲 ;五、请枪旗 ;六、请锅幕 ; 七、请马 ; 八、请衣赐;九、请粮料四十、战小胜。军队出征前,指挥机关将用上述短语编码的密码本发给将领,并约定用一首不含重复文字的40字五言律诗与密码相对应公元前五世纪移位法。希罗多德(Herodotus )的历史中记载了公元前五世纪,希腊城邦和波斯帝国发生多次冲突和战争。这些战争中希腊城邦中广泛使用了移位法进行加密精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 9 页教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计

10、6 / 9 二、加法密码加密就是将原始信息(数据)隐匿起来,使之在缺少特殊信息(数据)时不可读。原始信息(数据) 称为明文, 加密后的信息 (数据) 称为密文。 将密文还原成明文的过程称为解密(或解码)。恺撒密码只是简单地将明文中的每一个字母用字母表中该字母后的第3个字母替换。例如,将明文中的a用d替换, b用 e替换, z用 c替换。像恺撒密码这样,明文中的所有字母都在字母表上向后(或向前) 按照一个固定数目进行偏移后被替换成密文,这种密码称为加法密码,又称为移位密码。(详见配套资源“恺撒密码加密算法流程图.doc ”、“恺撒密码 ( 加密有界面).py ”)处理战争通讯信息,使波斯帝国难以

11、获得希腊城邦的军事情报,也就无法提前做军事部署。 希腊城邦用来传输军事信息、命令的每段文字都有固定的字数,解密者手中会有一份文字移位说明。解密者拿到密文后,根据文字移位说明进行解密,从而破解其中的军事命令或消息古罗马时期高卢战记有描述恺撒曾经使用密码来传递信息,即所谓的“恺撒密码”,它是一种替代密码, 通过将字母按顺序推后起3位起到加密作用,如将字母 A换作字母 D,将字母 B换作字母 E。因据说恺撒是率先使用加密函的古代将领之一,因此这种加密方法被称为恺撒密码第二次世界大战密码机。在第二次世界大战期间,德国军方启用“恩尼格玛”密码机,密码学在战争中起着非常重要的作用精选学习资料 - - -

12、- - - - - - 名师归纳总结 - - - - - - -第 6 页,共 9 页教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计7 / 9 对应代码如下:def CaesarCipher(): #Button按钮激发函数 c=mingwen.get(0.0, end) #获取Text 组件mingwen 的明文内容 b= miwen.delete(0.0, end) #清空Text 组件miwen 的内容 for i in range(len(c): #获取明文内容的每一个字母,并加密 if a=ci=w or A=ci=W: #判断aw 或AW 间的字母b=b+chr(o

13、rd(ci)+3) #生成密文 elif x=ci=z or X=ci=Z: #判断xz或XZ间的字母 b=b+chr(ord(ci)-23) #生成密文 else: #字母以外的明文内容不变 b=b+ci miwen.insert(0.0,b) #在Text 组件miwen 中显示结果程序运行效果如下:精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 9 页教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计8 / 9 【试一试】请写出恺撒密码的解密算法。(详见配套资源“恺撒密码 ( 解密无界面 ).py ”)c=input(

14、请输入密文 :) b= for i in range(0,len(c): #获取密文内容的每一个字母,并破解 if d=ci=z or D=ci=Z: #判断 d-z 或D-Z间的字母b=b+chr(ord(ci)-3) #破解密文 elif a=ci=c or A=ci=C: #判断 a-c 或A-C间的字母 b=b+chr(ord(ci)+23) #破解密文 else: b=b+ci #字母以外的密文不变print(你的明文为 :+b) 【想一想】恺撒密码的安全性能如何?可以说,保密性能极差。将明文字符前移或后移一个固定的长度d(称为密钥),即使改变 d的值,也最多只需25次尝试 d的值,

15、就能破解。三、小结加密和解密也是属于字符编码范畴。密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学; 应用于破译密码以获精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 8 页,共 9 页教科版高一信息技术必修 1 第三单元3.4 加密和解密教学设计9 / 9 取通信情报的,称为破译学。二者总称密码学。四、练习编程: 考虑到恺撒密码的安全性极差,应对算法进行改进。一种可行的改进方式是,建立一个明文字符与密文字符之间的一一映射表,即“密表”,如:明文: ABCDEFGHIJKLMNOPQRSTUVWXYZ 密文: QWERTYUIOPASDFGHJKLZXCVBNM 加密时, AQ,BW , ,解密时 Q A,W B,小写字母对应法则也相同,即aq,bw, 。原先恺撒密码只有一个“密钥”,现在好比有25个“密钥”,这样保密性能大大提升,破解难度大大增加。另外,这个“密表”也是可以按需要改变的。你能写出这种改进的恺撒密码的加密与解密算法吗?试一试。(详见配套资源“恺撒密码改进.py ”)精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 9 页,共 9 页

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号