内容正文:
3.2.1信息系统安全防护第一课时(分层作业)
【基础达标】
1. 下列不适合作为密码使用的是( )
A.ui7#+1r B.@+yh637jk
C.20230606 D.cGyh09%h
2.一个密码系统至少由明文、密文、加密算法、解密算法和密钥五部分组成,其安全性主要由( )
A.密文决定 B.加密算法决定
C.解密算法决定 D.密钥决定
3. 凯撒密码是应用替代方法加密的经典算法。密文字母表通常是由正常顺序的明文字母表向左或向右移动n个字母得到的。根据下面的图片判断该密码的加密过程为 ( )
该密码的加密过程为 ( )
A. Ci=EK1(Pi)=(Pi+3) mod 26
B. Ci=EK1(Pi)=(Pi-3) mod 26
C. Pi=EK2(Ci)=(Ci+3) mod 26
D. Pi=EK2(Ci)=(Ci-3) mod 26
4. 为了数据安全,采用异或算法进行加密:用二进制编码为“00101100”的密钥 K 对明文进行简单异或加密,得到密文 C 的二进制编码是“01010101”,那么对应的明文二进制编码是 ( )
A.00101001 B.01111001
C.01000100 D.00111000
5. 下列关于信息系统安全与防护的说法中,不正确的是 ( )
①凯撒密码是换位加密法的重要体现,表现为将明文中的每位字符用其他字符替换
②非对称密码体制又称双钥密码体制,其著名的加密算法是 RSA 算法
③访问控制也称为授权,是指允许对资源执行的具体操作
④真正的黑客是指到处收集黑客工具,利用网络进行捣乱和破坏的人
A.①②③ B.①②④ C.①③④ D.②③④
6. 下列关于密码系统和密码体制的说法,正确的是 ( )
A.密钥是指在密码算法中引进的一串数字
B.密码体制与软件无关
C.对称密码体制的加密密钥和解密密钥相同
D.登录教务处网站时,输入的密码即是加密代码
【巩固提升】
7. 某加密算法如下:
(1)以字节为单位对 ASCII 字符进行加密处理。
(2)8 位二进制数的前 2 位不处理,后 6 位做如下处理:6 位二进制数的后 3 位与前 3 位作为整体互换位置,例如 01001101→01101001。
(3)将处理后的二进制数转换为新的 ASCII 字符即为密文。
根据上述算法,观察下图,大写字母“J”加密后的密文是( )
A.R B.S C.Q D.P
8. 有如下 Python 程序段:
def encrypt(msg,key):
result=""
size=len(msg)
for i in range(0,size):
result+=msg[(i+key)%size]
return result
msg=input("请输入明文:")
key=int(input("请输入密钥:"))
re=encrypt(msg,key)
print(re)
执行该程序段后,依次输入“FDGFHH”和 4,输出的结果是 ( )
A.GFHHFD B.FHHFDG
C.HHFDGF D.DGFHHF
【链接高考】
9. 小明在学习数据加密时,接触到了一种加密算法,它通过改变明文的字符顺序来实现对明文的加密。例如输入原文“abcd1234”,设置偏移量为 3,那么每个字符都会循环往后移动 3 位,得到密文“234abcd1”。
(1)若加密后的结果为“lo!Hel”,偏移量为 3,则明文是_______________。
(2)小明针对这种加密算法,编写了如下暴力破解的代码,即在偏移量未知时,输出所有可能的明文,请在划线处填入合适的代码。
def encrypt(code,key):
code_new=""
for i in ① :
code_new=code_new+ ②
return code_new
code=input("输入密文:")
for i in range(len(code)):
print( ③ )
10. 某加密算法的 Python 程序如下:
def encrypt(code,key):
code_new=""
for s in code:
s1=97+((ord(s)-97)+key)%26
code_new+=chr(s1)
return code_new
c=input("code=")
b=encrypt(c,2)
print(b)
(1)函数 encrypt 中所用的加密算法是___________。
(2)如果从键盘输入的字符串 c 为“abcd”,那么输出的加密字符串为____________。
(3)该程序段只能实现小写字母的转换,如果需要该程序实现以下功能:输入大写字母,转换为对应的小写字母,再进行加密和输出,需要增加的代码为___________。
参考答案
【基础达标】
1.C 解析:由选项可知,选项 A、B、D 都是字母、数字与其他字符的组合,而选项 C 只有单独的数字,复杂程度相较于其他三项最低,因此不适合作为密码使用。
2.D 解析:现代密码体制中决定整个密码体制安全性的要素是密钥的保密性。
3.B 解析:通过图片观察可知字母 A 变为了字母 X,字母 D 变为了字母 A,说明密文字母表是由明文字母表向左移动了 3 个字母得到的,因此这里的密钥为 -3,并且字母的变换在所有大写字母之间,因此固定的字符数为 26 个,所以推测出基本的加密公式为 Ci=EK1(Pi)=(Pi-3) mod 26。
4.B 解析: 明文可以通过密文和密钥的异或运算得到,异或原则是相同为 0,不同为 1,故对应明文的二进制编码是 01111001。
5.C 解析: ①凯撒密码是替代加密法的经典例子。③控制策略也称为授权,是指允许对资源执行的具体操作,而访问控制包含主体、客体和控制策略三个要素。④真正的黑客一般不会利用漏洞去侵犯他人的系统而获取信息,而利用网络进行捣乱和破坏,炫耀自己的“技术”的人并非真正的黑客。
6.C 解析:密钥是指在密码算法中引进的控制参数。密码体制是指明文、密文、密钥以及实现加密和解密算法的一套软件和硬件机制。登录教务处网站时输入的密码称为口令,并不是真正意义上的加密代码。
【巩固提升】
7.C 解析:大写字母“J”在大写字母“L”的前 2 位,根据“L”的十六进制编码值得到“J”的十六进制编码值为 4AH,将其转换成八位二进制数为 01001010,最后将后六位进行变换位置并将整体转换成十六进制数为 51H,因此加密后的密文为 Q。
8.C 解析:依次输入“FDGFHH”和 4,可知 size 的值为 6,key 的值为 4,i 的取值为 [0,5],根据代码“result+=msg[(i+key)%size]”可知输出的分别是下标为 4、5、0、1、2、3 的字符,即 H、H、F、D、G、F,故输出的结果是 HHFDGF。
【链接高考】
9. (1)Hello! (2)①range(len(code)) ②code[(i-key)%len(code)] ③encrypt(code,i)
解析:(1)将每个密文字符循环前移3位即可获得明文。
(2)暴力破解的思路即遍历所有偏移量,输出所有对应的字符串,所以①处应填入的代码为 range(len(code)),即偏移量范围从 0 到字符串长度减 1。解密规则为向前循环偏移 key 个字符,所以②处应填入的代码为 code[(i-key)% len(code)] 。 最后只需要调用自定义函数 encrypt() 即可,所以③处应填入的代码为 encrypt(code,i)。
10. (1)替代密码 (2)cdef (3)code=code.lower()
解析:(1)通过替换字符来实现加密的算法属于替代密码。(2)字符串“abcd”的第一个字符“a”的十进制 ASCII 值为 97,将 ASCII 值代入表达式 s1=97+((ord(s)-97)+key)%26 中进行计算,得到值为 99,对应字符“c”。后面字符同理,因此输出的加密字符串为 cdef。(3)将大写字母转换为小写字母需要用到 lower() 方法。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$