- 3.3数据与系统 第3课时 课件和教案 课件 54 次下载
- 3.4 加密与解密 第1课时 课件和教案 课件 52 次下载
- 4.1 算法及其特征 第1课时 课件和教案 课件 52 次下载
- 4.1 算法及其特征 第2课时 课件和教案 课件 49 次下载
- 4.2 数值计算 课件和教案 课件 53 次下载
高中信息技术教科版必修1 数据与计算3.4 加密与解密优秀ppt课件
展开
3.4 加密与解密 (第2课时)
任务二包含活动1“古老的‘隐身术’”和活动2“揭秘‘隐身术’”两个活动。在任务二中,通过活动1讲述加密技术的历史,引入加密、解密的概念。在活动2中引入了凯撒密码,解剖凯撒密码的加密原理,并以流程图、程序实现加密算法。
通过任务二的学习,学生能认识到加法密码的基本原理和算法,能够写出相应的加密、解密算法和程序,充分认识信息安全的重要性,采取一定的技术措施保障信息安全。
1、教学重点:恺撒密码的加密与解密算法。
2、教学难点:恺撒密码的加密与解密算法。
教师准备:打开微机,投影机,课件。
学生准备:结合课本提前预习。
教学过程 | 教师活动 | 学生活动 | 设计意图 |
导入
5分钟 | 1.学生预习,阅读第79页“任务二 让数据 ‘隐身’”之“活动1 古老的‘隐身术’”,填写表3.4.3,引入“加密”话题。 2.教师检查,并评讲填写情况,引出数据安全、数据加密话题。 | 学生阅读、上网查找资料。 | 引 导 学 生 了解数据加密的发展历史。 |
讲授新知 | 加法密码 加密就是将原始信息(数据)隐匿起来,使之在缺少特殊信息(数据)时不可读。原始信息(数据)称为明文,加密后的信息(数据)称为密文。将密文还原成明文的过程称为解密(或解码)。 恺撒密码只是简单地将明文中的每一个字母用字母表中该字母后的第3个字母替换。例如,将明文中的a用d替换,b用e替换,……,z用c替换。像恺撒密码这样,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文,这种密码称为加法密码。 | 学生认真听讲。 | 让学生明白加密,解密,明文,密文的概念。 |
讲授新知:凯撒密码 | 所谓的“恺撒密码”,它是一种替代密码,通过将字母按顺序推后起3位起到加密作用,如将字母A换作字母D,将字母B换作字母E。因据说恺撒是率先使用加密函的古代将领之一,因此这种加密方法被称为恺撒密码 | 学生认真听讲,并阅读思考后将图3.4.1 凯撒加密算法流程图 补充完整。 | 让学生掌握凯撒密码的原理。 |
根据流程图,运行“凯撒密码.py”程序 | 程序及运行界面截图附后。 | 学生动手运行程序,积极思考。 | 通过学生自己动手实践,合作交流,可以激发学生的思维。 |
【试一试】请写出恺撒密码的解密算法。
| 解密算法附后 | 学生阅读思考解密算法程序。 | 让学生进一步熟悉python程序。 |
【想一想】恺撒密码的安全性能如何?
| 可以说,保密性能极差。将明文字符前移或后移一个固定的长度d(称为密钥),即使改变d的值,也最多只需25次尝试d的值,就能破解。 | 引导学生思考。 |
|
课堂小结
2 分钟 | 老师带领着学生一起回顾本节课的知识。 加密和解密也是属于字符编码范畴。密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学。二者总称密码学。
|
| 再次巩固本堂课的知识,体现教学的完 整性。 |
练习 | 编程:考虑到恺撒密码的安全性极差,应对算法进行改进。一种可行的改进方式是,建立一个明文字符与密文字符之间的一一映射表,即“密表”,如: 明文:ABCDEFGHIJKLMNOPQRSTUVWXYZ 密文:QWERTYUIOPASDFGHJKLZXCVBNM 加密时,A→Q,B→W,…,解密时Q→A,W→B,…,小写字母对应法则也相同,即a→q,b→w,…。原先恺撒密码只有一个“密钥”,现在好比有25个“密钥”,这样保密性能大大提升,破解难度大大增加。另外,这个“密表”也是可以按需要改变的。 你能写出这种改进的恺撒密码的加密与解密算法吗?试一试。 程序代码附后。
| 引导学生思考。 | 进一步对算法和程序进行理解。 |
时间 | 加密方式 |
683年 | 拆字法。将明文中的文字进行组合生成新的字,即为密文,比如“十二月”合起来为“青” |
北宋 | 代码法。北宋进士曾公亮曾搜集了40个常用军事短语,然后对其进行顺序编码:一、请弓;二、请箭;三、请刀;四、请甲;五、请枪旗;六、请锅幕;七、请马;八、请衣赐;九、请粮料……四十、战小胜。军队出征前,指挥机关将用上述短语编码的密码本发给将领,并约定用一首不含重复文字的40字五言律诗与密码相对应 |
公元前五世纪 | 移位法。希罗多德(Herodotus)的《历史》中记载了公元前五世纪,希腊城邦和波斯帝国发生多次冲突和战争。这些战争中希腊城邦中广泛使用了移位法进行加密处理战争通讯信息,使波斯帝国难以获得希腊城邦的军事情报,也就无法提前做军事部署。希腊城邦用来传输军事信息、命令的每段文字都有固定的字数,解密者手中会有一份文字移位说明。解密者拿到密文后,根据文字移位说明进行解密,从而破解其中的军事命令或消息 |
古罗马时期 | 《高卢战记》有描述恺撒曾经使用密码来传递信息,即所谓的“恺撒密码”,它是一种替代密码,通过将字母按顺序推后起3位起到加密作用,如将字母A换作字母D,将字母B换作字母E。因据说恺撒是率先使用加密函的古代将领之一,因此这种加密方法被称为恺撒密码 |
第二次世界大战 | 密码机。在第二次世界大战期间,德国军方启用“恩尼格玛”密码机,密码学在战争中起着非常重要的作用 |
程序运行效果如下:
对应代码如下:
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'<=c[i]<='w' or 'A'<=c[i]<='W': #判断a~w或A~W间的字母
b=b+chr(ord(c[i])+3) #生成密文
elif 'x'<=c[i]<='z' or 'X'<=c[i]<='Z': #判断x~z或X~Z间的字母
b=b+chr(ord(c[i])-23) #生成密文
else: #字母以外的明文内容不变
b=b+c[i]
miwen.insert("0.0",b) #在Text组件miwen中显示结果
解密算法;
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)
凯撒密码改进:
def NewCaesar(m,n,t):
z='';i=0
while i<len(t):
tmp=t[i].upper()
if tmp in m:
if ord(t[i])<=90:
z+=n[m.find(tmp)]
else:
z+=n[m.find(tmp)].lower()
else:
z+=t[i]
i+=1
return z
m='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
n='QWERTYUIOPASDFGHJKLZXCVBNM'
a=input('请输入明文a=')
b=NewCaesar(m,n,a)
print('对应的密文为:',b)
c=NewCaesar(n,m,b)
print('解密后明文为:',c)
if a==c:
print('加密解密成功!')
else:
print('加密解密失败!')
input("运行完毕,请按回车键退出...")
End
信息技术必修1 数据与计算3.4 加密与解密图片课件ppt: 这是一份信息技术必修1 数据与计算3.4 加密与解密图片课件ppt,共15页。PPT课件主要包含了学习目标,密码盗窃方式,加法密码等内容,欢迎下载使用。
教科版 (2019)必修1 数据与计算3.4 加密与解密集体备课ppt课件: 这是一份教科版 (2019)必修1 数据与计算3.4 加密与解密集体备课ppt课件,共31页。PPT课件主要包含了学习目标,加密解密过程,体验“恺撒密码”,练一练,想一想等内容,欢迎下载使用。
2021学年3.4 加密与解密试讲课ppt课件: 这是一份2021学年3.4 加密与解密试讲课ppt课件,文件包含34加密与解密第一课时-新教材2020-2021学年教科版2019高中信息技术必修一课件ppt、终结者II审判日-高清mp4等2份课件配套教学资源,其中PPT共13页, 欢迎下载使用。