资源简介 二、 信息系统安全与防护二、练习1 数据加密与安全1. 基于密码技术的访问控制主要目的是防止( A )A. 数据传输泄密 B. 数据传输丢失C. 数据交换失败 D. 数据备份失败【解析】 数据通过公共信道传输,数据面临着被非授权读取、截获、篡改、伪造等一系列安全问题,A正确。2. 下列关于密码的说法,错误的是( D )A. 密码体制是指明文、密文、密钥以及实现加密和解密算法的一套软件和硬件机制B. 密码体制可以分为对称密码体制和非对称密码体制C. 若一种加密方法的加密密钥和解密密钥相同,则称为对称密码体制或单钥密码体制D. 在非对称密码体制中,著名的加密算法是DES算法【解析】 DES加密算法属于对称密码体制,D符合题意。3. 用简单异或加密法对明文“1011”进行加密,得到的密文为“1001”,则密钥是( A )A. 0010 B. 1010C. 1101 D. 0011【解析】 异或运算时要求把参与运算的数转换为二进制数再进行按位运算,如果两个值不相同,那么异或结果为1,如果两个值相同,那么异或结果为0,根据运算规则反推可知密钥为0010,A正确。4. 下列关于信息安全的说法,正确的是( B )A. 所有人都可以使用智能手环,没有必要鉴别用户身份B. 为保障信息安全,应给不同用户分配不同的权限C. 智能手环中的运动数据存储于数据库中,不可能丢失D. 将运动记录发布至朋友圈,不存在信息泄露的风险【解析】 本题考查信息安全知识。需要进行身份认证,A错误;存储在数据库中的数据也可能丢失,C错误;将个人相关数据发布到社交平台就存在信息泄露的风险,D错误。5. 凯撒加密:假设密文字母表是由正常顺序的明文字母表向右移3个字母得到,则明文“CAT”加密后得到的密文为( A )A. FDW B. fdwC. ECY D. ecy【解析】 根据加密规则,字母表是由正常顺序的明文字母表向右移动3个字母,即字母C变为F,A变为D,而T在移位后变为W,密文为FDW,A正确。6. 为确保信息安全,信息需加密传输,发送方由明文→密文(加密),接收方由密文→明文(解密)。已知有一种密码,当字符是英文字母时,用该英文字母的后一个字母替换,同时字母变换大小写,如字母为a时则替换为B,字母为Z时则替换为a;若字符是数字时,则把该数字加2,如0替换为2,1替换为3,8替换为0;其他字符不变。解密过程与之相反。按上述规定,密文“zFBS 30”所对应的明文是( A )A. Year 18 B. Agct 52C. aGCT 52 D. yEAR 18【解析】 由“字母为a时则替换为B,字母为Z时则替换为a”可知,遇到字母首先进行大小写转换,大写变小写,小写变大写,再向右移动1位,遇到数字则加2,解密过程与之相反,A正确。7. 明文“dog”经过凯撒密码加密输出一串密文“jum”。下列关于加密过程的表示,正确的是( B )A. Ci=EK1(Pi)=(Pi-6)% 26B. Ci=EK1(Pi)=(Pi+6)% 26C. Ci=EK1(Pi)=(Pi+3)% 26D. Ci=EK1(Pi)=(Pi+6)% 6【解析】 d转换成j,需要右移6个字母,B正确。8. 异或( )运算也叫半加运算,其运算法则是0 0=0,1 0=1,0 1=1,1 1=0(即相同为 0,不同为 1)。下列两个十六进制数进行按位异或运算后,结果值为 1 的是( C )A. 13H 14H B. 18H 17HC. 15H 14H D. A8H A7H【解析】 首先转换成二进制再进行异或操作,C正确。A B13H=00010011B 18H=00011000B14H=00010100B 17H=00010111B111B=7D 1111B=15DC D15H=00010101B A8H=10101000B14H=00010100B A7H=10100111B1B=1H 1111B=15D9. 使用凯撒密码进行加密,其密钥为3,将明文“python”加密后,密文为( C )A. nohtyp B. ptoyhnC. sbwkrq D. tcxlsr【解析】 凯撒密码是一种简单的替代密码,通过替代来实现加密;例如,密文字母表是由正常顺序的明文字母表右移3个字母得到的,对于明文“h”,由此可得到的密文是“k”,C正确。10. 某数据的加密方法如下:(1)将字符的 ASCII 码值以字节为单位进行加密处理;(2)将 1 个字节的 8 位二进制数向左移 2 位,最低位用左移出的 2 个最高位补充;(3)将二进制数转化为十六进制数,即为该字符的密文。如图所示,用UltraEdit软件观察“选考,Fighting!”这几个字符的内码。则字符“j”加密后的密文是( B )A. C1H B. A9HC. 2BH D. 83H【解析】 i的内码是69H,则j的内码是6AH,转换成二进制数为01101010B;将 1 个字节的 8 位二进制数左移 2 位,最低位用左移出的 2 个最高位补充,结果为10101001B,转化为十六进制数为A9H,B正确。11. (2022·浙江学考)有如下Python程序段:p="Tel-114"c=""for ch in p: if ch>="0" and ch<="9":c+=str(9-int(ch)) elif ch>="a" and ch<="z":c+=chr(ord(ch)-ord("a")+ord("A")) else:c+=chprint(c)执行该程序,输出的结果为( D )A. tEL-885 B. tEL-114C. TEL-114 D. TEL-885【解析】 该Python程序实现如下功能:若ch为数字字符,那么加密后字符的数值和原数字字符的数值相加的结果为9;若ch为小写字母,那么加密后的字符为原小写字母对应的大写字母;若ch为除数字字符和小写字母外的其他字符,那么加密后的字符与原ch相比保持不变。需加密字符串为“Tel-114”,那么按加密规则,程序运行后得到的输出结果为TEL-885,D正确。12. 在信息传递的过程中,通常会将一些敏感信息进行加密,以下是实现加密功能的Python程序段。s=input("明文:")p="";key=2for ch in s: if "0"<=ch and ch<="9": p+=str((int(ch)+key)%10) else: p=ch+pprint("密文:", p)若输入的明文为“ym587”,则输出的密文为( C )A. ym785 B. ym709C. my709 D. my907【解析】 本题考查加密解密知识点的程序代码理解。根据代码可知,遇到明文中的数字字符,循环右移2位并顺序组合,所以5→7,8→0,7→9遇到其他字符则逆序组合得到密文;所以答案为my709,C正确。13. 凯撒加密法是一种简单的替代密码,通过换位来实现加密。例如,密文字母表是由明文字母表向右移3个字母得到的,如对于明文“h”, 向右移3个字母得到的密文是“k”; 明文“y”,向右移3个字母得到的密文是“b”。从键盘上输入需要加密的字符(小写或大写字母)、向右移动的字母个数,输出凯撒密码。python程序如下:s=input("请输入加密字符:")key=int(input("请输入向右移动的字母个数:"))result=""for i in s: m=①ord(i) if 65<=m<=90: m=(m+key-65) % 26+65 elif ②97<=m<=122:③m=(m-97+key) % 26+97 result= result+chr(m)print(result)(1)请在画线处填入正确的代码。(2)若输入的加密字符为“zHongGUo”,key=3,则输出的值为 cKrqjJXr 。 【解析】 (1)①对于输入的字符串,从第1个字符到最后1个字符,首先判断每1个字符是否为大写或小写字母,程序是通过判断该字符的ASCⅡ码值的范围来实现,①处填:ord(i)。②首先判断字符是否为大写字母,如果不是大写字母,再判断字符是否为小写字母,②处填:97<=m<=122。③如果是小写字母,该字母的位置序号(从字母a到字母z的位置)为:m-97,向后移动key 得m-97+key。如果结果大于等于26,又从0开始,用表达式表示该字母的位置序号为:(m-97+key) % 26,最后计算出该字母的ASCⅡ码值m,m=(m+key-97) % 26+97。③处填:m=(m-97+key) % 26+97。(2)若输入的加密字符为“zHongGUo”,key=3,根据该加密算法,可得密码为“cKrqjJXr”。14. 小王编写了一个简单的英文文本加密程序,他的基本思想是先输入明文到字符串mw,再输入一个整数作为密钥并保存到key中。对mw中的所有字符,分两种情况进行处理:若是英文字母,则寻找之前(即左移)的第key个字母作为密文字符,如当key为2时,字符c对应的密文字符为a,字符D对应的密文字符为B,而字符B对应的密文字符为Z,而字符A对应的密文字符为Y;若是非英文字母,则保留原字符作为密文字符。将所有密文字符按原顺序输出就是加密后的文本。实现上述功能的Python程序代码如下,如图所示为该程序运行结果:请输入明文文本:Happy 10.11请输入整数密钥:3加密后文本为:Exmmv 10.11>>>(1)若输入的明文文本为“Abc123!”,且密钥为2,则加密后的文本为Yza123! 。 (2)请在画线处填入正确的代码。(3)加框处的代码有误,请改正。【答案】 chr((ord(s)-k-base)%26 + base)def encode(s,k): if ① A <=s<= Z : base = ord("A") else: base = ord("a") return chr((ord(s)- k)%26 + base) #改错mw = input("请输入明文文本:")key = int(input("请输入整数密钥:"))res = for c in mw: if A <=c<= Z or a <=c<= z : ②res = res + encode(c,key) else: res = res + cprint("加密后文本为:",res)【解析】 (1)根据加密规则可知答案为Yza123!。(2)①由后面的代码可知,此处的字符是大写字母,表达式如上。②根据下文可知,此处是关于res的表达式,还需要调用自定义函数encode。(3)变量base是基准值,大写字母是65,小写字母是97,在%操作前,减k后,需要再减去基准值base。(共22张PPT)二、 信息系统安全与防护练习1 数据加密与安全第三章 信息系统安全信息技术 必修2 信息系统与社会必备知识练1. 基于密码技术的访问控制主要目的是防止( )A. 数据传输泄密 B. 数据传输丢失C. 数据交换失败 D. 数据备份失败【解析】 数据通过公共信道传输,数据面临着被非授权读取、截获、篡改、伪造等一系列安全问题,A正确。A2. 下列关于密码的说法,错. 误. 的是( )A. 密码体制是指明文、密文、密钥以及实现加密和解密算法的一套软件和硬件机制B. 密码体制可以分为对称密码体制和非对称密码体制C. 若一种加密方法的加密密钥和解密密钥相同,则称为对称密码体制或单钥密码体制D. 在非对称密码体制中,著名的加密算法是DES算法【解析】 DES加密算法属于对称密码体制,D符合题意。D3. 用简单异或加密法对明文“1011”进行加密,得到的密文为“1001”,则密钥是( )A. 0010 B. 1010C. 1101 D. 0011【解析】 异或运算时要求把参与运算的数转换为二进制数再进行按位运算,如果两个值不相同,那么异或结果为1,如果两个值相同,那么异或结果为0,根据运算规则反推可知密钥为0010,A正确。A4. 下列关于信息安全的说法,正确的是( )A. 所有人都可以使用智能手环,没有必要鉴别用户身份B. 为保障信息安全,应给不同用户分配不同的权限C. 智能手环中的运动数据存储于数据库中,不可能丢失D. 将运动记录发布至朋友圈,不存在信息泄露的风险【解析】 本题考查信息安全知识。需要进行身份认证,A错误;存储在数据库中的数据也可能丢失,C错误;将个人相关数据发布到社交平台就存在信息泄露的风险,D错误。B5. 凯撒加密:假设密文字母表是由正常顺序的明文字母表向右移3个字母得到,则明文“CAT”加密后得到的密文为( )A. FDW B. fdwC. ECY D. ecy【解析】 根据加密规则,字母表是由正常顺序的明文字母表向右移动3个字母,即字母C变为F,A变为D,而T在移位后变为W,密文为FDW,A正确。A6. 为确保信息安全,信息需加密传输,发送方由明文→密文(加密),接收方由密文→明文(解密)。已知有一种密码,当字符是英文字母时,用该英文字母的后一个字母替换,同时字母变换大小写,如字母为a时则替换为B,字母为Z时则替换为a;若字符是数字时,则把该数字加2,如0替换为2,1替换为3,8替换为0;其他字符不变。解密过程与之相反。按上述规定,密文“zFBS 30”所对应的明文是( )A. Year 18 B. Agct 52C. aGCT 52 D. yEAR 18【解析】 由“字母为a时则替换为B,字母为Z时则替换为a”可知,遇到字母首先进行大小写转换,大写变小写,小写变大写,再向右移动1位,遇到数字则加2,解密过程与之相反,A正确。A7. 明文“dog”经过凯撒密码加密输出一串密文“jum”。下列关于加密过程的表示,正确的是( )A. Ci=EK1(Pi)=(Pi-6)% 26B. Ci=EK1(Pi)=(Pi+6)% 26C. Ci=EK1(Pi)=(Pi+3)% 26D. Ci=EK1(Pi)=(Pi+6)% 6【解析】 d转换成j,需要右移6个字母,B正确。B8. 异或( )运算也叫半加运算,其运算法则是0 0=0,1 0=1,0 1=1,1 1=0(即相同为 0,不同为 1)。下列两个十六进制数进行按位异或运算后,结果值为 1 的是( )A. 13H 14H B. 18H 17HC. 15H 14H D. A8H A7H【解析】 首先转换成二进制再进行异或操作,C正确。A B13H=00010011B 18H=00011000B14H=00010100B 17H=00010111B111B=7D 1111B=15DC D15H=00010101B A8H=10101000B14H=00010100B A7H=10100111B1B=1H 1111B=15DC9. 使用凯撒密码进行加密,其密钥为3,将明文“python”加密后,密文为( )A. nohtyp B. ptoyhnC. sbwkrq D. tcxlsr【解析】 凯撒密码是一种简单的替代密码,通过替代来实现加密;例如,密文字母表是由正常顺序的明文字母表右移3个字母得到的,对于明文“h”,由此可得到的密文是“k”,C正确。C10. 某数据的加密方法如下:(1)将字符的 ASCII 码值以字节为单位进行加密处理;(2)将 1 个字节的 8 位二进制数向左移 2 位,最低位用左移出的 2 个最高位补充;(3)将二进制数转化为十六进制数,即为该字符的密文。如图所示,用UltraEdit软件观察“选考,Fighting!”这几个字符的内码。则字符“j”加密后的密文是( )A. C1H B. A9HC. 2BH D. 83H【解析】 i的内码是69H,则j的内码是6AH,转换成二进制数为01101010B;将 1 个字节的 8 位二进制数左移 2 位,最低位用左移出的 2 个最高位补充,结果为10101001B,转化为十六进制数为A9H,B正确。B11. (2022·浙江学考)有如下Python程序段:p="Tel-114"c=""for ch in p: if ch>="0" and ch<="9":c+=str(9-int(ch)) elif ch>="a" and ch<="z":c+=chr(ord(ch)-ord("a")+ord("A")) else:c+=chprint(c)执行该程序,输出的结果为( )A. tEL-885 B. tEL-114C. TEL-114 D. TEL-885【解析】 该Python程序实现如下功能:若ch为数字字符,那么加密后字符的数值和原数字字符的数值相加的结果为9;若ch为小写字母,那么加密后的字符为原小写字母对应的大写字母;若ch为除数字字符和小写字母外的其他字符,那么加密后的字符与原ch相比保持不变。需加密字符串为“Tel-114”,那么按加密规则,程序运行后得到的输出结果为TEL-885,D正确。D关键能力练12. 在信息传递的过程中,通常会将一些敏感信息进行加密,以下是实现加密功能的Python程序段。s=input("明文:")p="";key=2for ch in s: if "0"<=ch and ch<="9": p+=str((int(ch)+key)%10) else: p=ch+pprint("密文:", p)若输入的明文为“ym587”,则输出的密文为( )A. ym785 B. ym709C. my709 D. my907【解析】 本题考查加密解密知识点的程序代码理解。根据代码可知,遇到明文中的数字字符,循环右移2位并顺序组合,所以5→7,8→0,7→9遇到其他字符则逆序组合得到密文;所以答案为my709,C正确。C13. 凯撒加密法是一种简单的替代密码,通过换位来实现加密。例如,密文字母表是由明文字母表向右移3个字母得到的,如对于明文“h”, 向右移3个字母得到的密文是“k”; 明文“y”,向右移3个字母得到的密文是“b”。从键盘上输入需要加密的字符(小写或大写字母)、向右移动的字母个数,输出凯撒密码。python程序如下:s=input("请输入加密字符:")key=int(input("请输入向右移动的字母个数:"))result=""for i in s: m=①____________ if 65<=m<=90: m=(m+key-65) % 26+65 elif ②____________:③________________________ result= result+chr(m)print(result)(1)请在画线处填入正确的代码。(2)若输入的加密字符为“zHongGUo”,key=3,则输出的值为 ____________。 97<=m<=122ord(i)m=(m-97+key) % 26+97cKrqjJXr【解析】 (1)①对于输入的字符串,从第1个字符到最后1个字符,首先判断每1个字符是否为大写或小写字母,程序是通过判断该字符的ASCⅡ码值的范围来实现,①处填:ord(i)。②首先判断字符是否为大写字母,如果不是大写字母,再判断字符是否为小写字母,②处填:97<=m<=122。③如果是小写字母,该字母的位置序号(从字母a到字母z的位置)为:m-97,向后移动key 得m-97+key。如果结果大于等于26,又从0开始,用表达式表示该字母的位置序号为:(m-97+key) % 26,最后计算出该字母的ASCⅡ码值m,m=(m+key-97) % 26+97。③处填:m=(m-97+key) % 26+97。(2)若输入的加密字符为“zHongGUo”,key=3,根据该加密算法,可得密码为“cKrqjJXr”。14. 小王编写了一个简单的英文文本加密程序,他的基本思想是先输入明文到字符串mw,再输入一个整数作为密钥并保存到key中。对mw中的所有字符,分两种情况进行处理:若是英文字母,则寻找之前(即左移)的第key个字母作为密文字符,如当key为2时,字符c对应的密文字符为a,字符D对应的密文字符为B,而字符B对应的密文字符为Z,而字符A对应的密文字符为Y;若是非英文字母,则保留原字符作为密文字符。将所有密文字符按原顺序输出就是加密后的文本。实现上述功能的Python程序代码如下,如图所示为该程序运行结果:请输入明文文本:Happy 10.11请输入整数密钥:3加密后文本为:Exmmv 10.11>>> (1)若输入的明文文本为“Abc123!”,且密钥为2,则加密后的文本为____________。 Yza123!(2)请在画线处填入正确的代码。(3)加框处的代码有误,请改正。【答案】 chr((ord(s)-k-base)%26 + base)def encode(s,k): if ①____________: base = ord("A") else: base = ord("a") return #改错mw = input("请输入明文文本:")key = int(input("请输入整数密钥:"))res = for c in mw: if A <=c<= Z or a <=c<= z : ②____________________________ else: res = res + cprint("加密后文本为:",res)chr((ord(s)- k)%26 + base)res = res + encode(c,key) A <=s<= Z 【解析】 (1)根据加密规则可知答案为Yza123!。(2)①由后面的代码可知,此处的字符是大写字母,表达式如上。②根据下文可知,此处是关于res的表达式,还需要调用自定义函数encode。(3)变量base是基准值,大写字母是65,小写字母是97,在%操作前,减k后,需要再减去基准值base。 展开更多...... 收起↑ 资源列表 二、练习1 数据加密与安全.docx 二、练习1 数据加密与安全.pptx