单元三 · 用算法解决问题

第9课 互传密信有诀窍

任务场景
任务场景:互传密信有诀窍

一、学习目标

  • 初步了解移位密码的基本规则,看懂用流程图描述的移位加密算法,知道明文与密文的关系。
  • 了解加密算法在保护信息安全方面的意义,增强信息安全意识。

二、情境导入

我们在影视剧中经常会看到用密文传送信息的情节,让人感觉很神秘。实际上,这些信息加密都用了加密算法。我们一起来体验加密传送信息吧!

三、核心讲解

本课学习路径:

1认识简单的移位密码
2与同学互传中文密信
3信息加密与信息安全

1.认识简单的移位密码

凯撒密码采用的是一种简单的移位加密算法,是历史上真实存在的一个经典加密方法。只有知道规则的人才能解密。

凯撒密码的加密规则是把明文中的每个字母按照一定的规则移动,从而生成密文。明文中的所有字母在字母表中向右移动三位后被替换成密文。解密是加密的反向操作。

移位密码的算法描述:

  1. 输入要传送的明文。
  2. 查看第一个字母,将字母向右移动三位并输出对应的字母。
  3. 重复第 2 步操作,分别处理第二个、第三个、第四个字母……直到处理完成原文中的所有字母。以上构成了一个循环结构。

流程图:移位加密算法

开始输入明文按固定位数移位得到并输出密文结束

2.与同学互传中文密信

两位同学一组:按照凯撒密码的移位规则,尝试对由英文字母组成的信息进行加密与解密游戏。例如密文 jrrg pruqlqj,答案是什么呢?(提示:如果出现标点、空格等时,保持不变。)

两个同学一组,利用移位加密的规则,给对方写一封简单的密信,然后解密并相互验证。

中文密信加密活动过程:

  1. 依据自己所写密信的字数,确定一个多行多列的方格,把明文依次放入方格中。这里设定的行数、列数成为密钥的第一部分。
  2. 选定要移位的列和移位的方式,如奇数列、下移 3 行。第 2 步中选定的列和移位的行数,是密钥的第二部分。
  3. 把奇数列的文字依次下移 3 行,找到对应的方格填入;下移超过最后一行的文字,回到第一行继续下移替换,构成密文。
  4. 两位同学互传加密后的密信,并尝试解密。解密时按加密规则反向操作,将向下移动改为向上移动。要给对方适当提示。

3.信息加密与信息安全

在信息传输过程中,为确保信息安全,发送方往往需要把原文信息进行加密后再传输,接收方收到信息后通过解密,获得原文信息。

想一想:

  1. 改变移动的位数(如移动五位、七位),是不是更安全?
  2. 如果不知道移动的位数,如何破解移位密码?
  3. 把英文字母替换成中文段落中的文字,是不是更安全?
讨论交流:信息加密时,如果加密规则过于简单,很容易被破解。所以加密算法需要尽可能多的位数和复杂度。

学习了移位加密算法后,有同学说,以后给自己或家长设置密码时,也要运用所学的算法规则:先想一个自己很容易记住的密码,然后利用移位、替换等方式,变成不容易被别人猜到的密码。你认为这个做法好吗?与小组同学交流看法。

本课无新基础语法;加密步骤见流程图。for / if 已在第 6、7 课讲过。

弄清以上要点后,再进入下方 Python Online,用程序体验凯撒移位加密。

四、动手体验 · Python 3 Online 编程

五年级 · 凯撒移位:字母后移 1 位。

五、课堂总结

  • 凯撒密码的基本算法思想就是移动字母位置并替换。
  • 通过了解移位加密算法,知道明文和密文的关系。
  • 加密算法在保护信息安全方面起着重要作用,保护着我们的信息安全。
  • 我们设置密码时,可以适当运用加密算法来加密。

六、拓展提升

  • 尝试用所学加密算法,设计一个自己的密码本,并用这个密码本的加密方式,加密一则信息并传送给同学或家长,看看他们能否顺利解读出来。
  • 尝试通过网络搜索,查询还有哪些常用的加密算法以及这些算法的关键因素。

测评

选出后点「检查」。答错会显示简短说明。

  1. 凯撒密码的基本加密规则是什么?

  2. 「明文」与「密文」的关系是?

  3. 判断:加密规则越简单越好,因为容易记住。

本节小结

移位密码把「加密规则」变成可执行的步骤:明文进、按规则移位、密文出。规则越复杂越难破解,加密算法是保护信息安全的重要工具。