密评从业人员考核参考题库 701 ~ 800
本文是国家密码管理局于 2023 年 6 月 28 日发布的《商用密码应用安全性评估从业人员考核参考题库》第 701 至 800 题的题目和参考答案(答案来源于网上各路大神,非官方标准答案,仅供学习参考,敬请不吝指正)。
著名的 Kerckhoff 原则是指( )。B
A. 系统的保密性不但依赖于对加密体制或算法的保密,而且依赖于密钥
B. 系统的保密性不依赖于对加密体制或算法的保密,而依赖于密钥
C. 系统的保密性既不依赖于对加密体制或算法的保密,也不依赖于密钥
D. 系统的保密性只与其使用的安全算法的复杂性有关
系统的保密性不依赖于对加密体制或算法的保密,而依赖于密钥。Kerckhoffs 原则明确指出:密码系统的安全性不应该依赖于加密算法和操作方式保密,而应当只依赖于密钥的保密性。具体说法是:密码系统的安全性不应依赖于对加密体制或算法的保密,而应依赖于密钥。也就是说,加密算法和操作方式可以公开,不需要保密。只有密钥保密才能保证密码系统的安全。这一理念认为,加密算法本身即使被攻击者了解,也不足以破解密码系统,唯一能提供安全性的是合理的密钥。另外三个选项的说法均不符合 Kerckhoff 原则的精神:
安全性不但依赖于密钥且依赖算法保密
安全性不依赖算法也不依赖密钥
安全性只依赖算法复杂性
下面哪种密码可以抵抗频率分析攻击( )。C
A. 置换密码
B. 仿射密码
C. 多表代换密码
D. 凯撒密码
频率分析攻击是对密码的主要攻击方式之一。它的基本思路是:
通过统计明文和密文中不同字母出现的频率。
然后根据知道的字母频率分布规律(如英文的’e’出现频率最高),推断密文本身的含义。
抵御频率分析攻击的密码需要满足以下条件:
密文字母的出现频率和正常文本(明文)大致相同。
密文字母的相对频率分布尽量均匀。
多表代换密码可以满足这两个条件。具体来说:
多表代换密码使用多个替换表,每个明文字母对应不同的密文字母。
这样就能在一定程度上模糊密文字母的相对频率分布。
而置换密码、仿射密码和凯撒密码则无法模糊密文字母频率:
置换密码仅改变明文字母的顺序,无法改变密文字母频率。
仿射密码和凯撒密码仅使用单一换位规则,也无法改变频率分布。
所以,可以抵御频率分析攻击的是多表代换密码。它使用多个替换表,能在一定程度上模糊密文字母的频率分布。
《保密系统的通信理论》这篇论文把密码学置于坚实的数学基础之上,标志着密码学作为一门学科的形成,该论文的作者是( )。A
A. 香农
B. 图灵
C. 布尔
D. 迪菲
正确的答案是:克劳德·香农(Claude Shannon)他的论文《保密系统的通信理论》(CommuniCAtion Theory of Secrecy Systems)是密码学交通网络理论的奠基性工作。具体来说:
该论文于1949年发表于美国贝尔实验室技术期刊。
香农在其中首次采用信息论和概率论,从数学和统计学理论层面分析了密码学系统。
香农提出密码系统的两个基本目标:混淆和扩散。
他提出了信息熵的概念,并用它来衡量密码系统的安全强度。
这极大推动了密码学从手工艺向严格的科学转变。
香农的工作把密码学置于坚实的数学基础之上,标志着密码学成为独立学科。
从密码学的角度来看,凯撒密码属于( )加密。A
A. 单字母表替换
B. 单字母表混淆
C. 多字母表替换
D. 多字母表混淆
凯撒加密是一个古典密码体制,其加密方式很简单:
使用一个固定的键位移位量,将字母表中每个字母都向后(或向前)按该键位移位。
这实际上相当于使用一个固定的字母替换表(单表),实现加密。
由于仅使用一个替换表进行加密,所以属于单字母表替换。
而单字母表混淆、多字母表替换和多字母表混淆都是错误答案:
单字母表混淆:凯撒密码不是通过混淆字母实现的,而是直接替换。
多字母表替换:凯撒密码仅使用一个替换表,不是多表替换。
多字母表混淆:同样也不是凯撒密码的工作方式。
因此,从密码学的角度看,凯撒密码属于单字母表替换。它使用一个固定的替换表,通过替换明文字母实现加密。
1949年香农发表的学术论文( )标志着现代密码学的真正开始。B
A. 《密码学的新方向》
B. 《保密系统的通信理论》
C. 《战后密码学的发展方向》
D. 《公钥密码学理论》
1949年,香农发表论文《保密系统的通信理论》(CommuniCAtion Theory of Secrecy Systems),标志着现代密码学的开始。具体来说:
该论文采用信息论和概率论对密码学进行严格的数学分析,赋予密码学科学的地位。
香农提出了信息熵等概念来衡量密码系统的安全强度。
他还提出了混淆和扩散这两个密码学基本目标。
这篇文章把密码学置于坚实的数学基础之上,推动密码学向严格的科学进化。
被誉为密码学理论的奠基之作,标志着现代密码学真正开始发展。
而其他选项所提及的论文都不是1949年发表的:
《密码学的新方向》 - 虚构选项。
《战后密码学的发展方向》- 不存在这篇文章。
《公钥密码学理论》- 应该是指 Diffie-Hellman 的论文。
所以,1949年香农发表的学术论文,标志着现代密码学开始的是:《保密系统的通信理论》
1976年,Diffie和Hellman发表了一篇著名论文( ),提出了著名的公钥密码体制的思想。A
A. 《密码学的新方向》
B. 《保密系统的通信理论》
C. 《战后密码学的发展方向》
D. 《公钥密码学理论》
- 提出公钥密码体制概念的学者是惠特菲尔德·迪菲(Whitfield Diffie)。他与马丁·赫尔曼合作提出了公钥密码体制的概念和原理,并在1977年发表了《New Directions in CryptogRAphy》《密码学的新方向》的论文。
评价密码系统安全性主要有以下哪些方法( )。ABD
A. 计算安全性
B. 无条件安全性
C. 加密安全性
D. 可证明安全性
无条件安全性:这种评价方法考虑的是假定攻击者拥有无限的计算资源,但仍然无法破译该密码系统。
计算安全性:这种方法是指如果使用目前最好的方法攻破它所需要的计算资源远远超出攻击者拥有的计算资源,则可以认为这个密码系统是安全的。
可证明安全性:这种方法是将密码系统的安全性归结为某个经过深入研究的困难问题(如大整数素因子分解、计算离散对数等)。这种评估方法存在的问题是它只说明了这个密码方法的安全性与某个困难问题相关,没有完全证明问题本身的安全性,并给出它们的等价性证明。
对分组密码分析,时间-存储权衡攻击是由以下哪些方法混合而成( )。CD
A. 强力攻击
B. 字典攻击
C. 查表攻击
D. 穷尽密钥搜索攻击
穷尽密钥搜索攻击 + 查表攻击。时间-存储权衡攻击的工作原理:
预计算出很多密钥对应的明文-密文对,形成一个查表。这需要大量的时间和存储空间。
当要破解的密文出现时,就通过这个查表进行匹配。这只需要很少的时间。也就是说,时间-存储权衡攻击混合使用了:
穷尽密钥搜索攻击:通过枚举所有可能的密钥,预先计算出对应明文-密文对,形成查询表。这需要很多的计算时间。
查表攻击:当要破解的密文出现时,就通过预先构建的查询表直接匹配明文。这只需要很少的时间。
作为分组密码的分析方法,多线性逼近方法是由以下哪些作者提出的( )。AD
A. Kaliski
B. Shamir
C. Rivest
D. RoBshaw
下列可以预防重放攻击的是( )。ABC
A. 时间戳
B. nonce
C. 序号
D. 明文填充
- 重放攻击:又称重播攻击或回放攻击,是指攻击者发送一个目的主机已接收过的包,特别是在认证的过程中,用于认证用户身份所接收的包,来达到欺骗系统的目的。一次一密这样的密钥形式可以对抗重放攻击。 Nonce是NumBer used once的缩写,Nonce是一个只被使用一次的任意或非重复的随机数值,它跟时间戳、序号都是能够预防重放攻击的。明文填充方式不能阻止重放攻击。
下列哪些参数决定了穷举攻击所消耗的时间()。ABC
A. 密钥空间
B. 密钥长度
C. 主机运算速度
D. 主机显存容量
下列属于NP问题的是( )。ABCD
A. 背包问题
B. 整数分解问题
C. 矩阵覆盖问题
D. 陪集重量问题
整数分解问题:求一个整数的素数因子分解。属于NP问题。
矩阵覆盖问题:给出一个0-1矩阵,找出最少的行可否认所有列。也属于NP完全问题。
陪集重量问题:给出一个集合和元素权重,求出最大集合的权重和。是NP完全问题。
背包问题:属于NP困难问题。
下列密码分析方法属于已知明文攻击的是( )。AB
A. 最佳放射逼近分析方法
B. 线性密码分析方法
C. 分别征服分析方法
D. 时间-存储权衡攻击
- 分别征服分析方法是唯密文攻击。时间-存储权衡攻击是选择明文攻击方法
一般而言,密码体制可以对信息提供的主要功能有( )。ABCD
A. 机密性
B. 真实性
C. 完整性
D. 不可否认性
我国SM2算法系列标准中,不包含对于以下哪种密码应用的使用规范。D
A. 公钥加密
B. 数字签名
C. 密钥交换
D. 身份认证
SM2算法系列标准中不包含对身份认证(identity-Based authentiCAtion)的使用规范。 SM2算法系列标准(GB/T 32918.x)主要规范了以下内容:
数字签名算法规范(GB/T 32918.1):用于实现数据源鉴别和数据完整性保护。
密钥协商协议规范(GB/T 32918.2):用于安全地协商对称密钥的协议。
密钥封装算法规范(GB/T 32918.3):实现非对称加密,用于安全传输公钥。
国密SM2椭圆曲线特性规范(GB/T 32918.11):规范SM2椭圆曲线的参数和基本操作等。而SM2算法系列标准并没有包含对身份认证应用的相关规范。
以下说法正确的是( )。A
A. SM4的密钥长度为 128比特,那么用暴力破解找到正确密钥需要平均尝试约2的127次方
B. 通过PBKdf(口令为16位随机数字)生成的128比特密钥的密钥空间等同于 SM4算法密钥空间
C. MQV密钥交换协议无法抵抗中间人攻击,但SM2密钥交换协议可以抵抗该攻击
D. AES-256-CBC加密模式的IV值要求是随机值且保密
后量子密码是指( )。C
A. 基于量子原理设计的密码算法
B. 能够攻破量子计算机的密码
C. 能够抵抗量子计算机攻击的密码
D. 具有量子不确定特性的密码算法
后量子密码(Post-quantum cryptogRAphy)是指在量子计算机出现后仍然安全的密码学。
它研究那些即使面对量子计算机也能提供安全保障的密码体制。
这是因为现有的多数公钥密码和部分对称密码在面对量子计算机后可能会失去安全性。
后量子密码关注的是能抵抗量子算法攻击的加密方案,以应对量子计算带来的挑战。所以,后量子密码的含义是:能够抵抗量子计算机攻击的密码
与之对应的有:
基于量子原理设计的密码算法 = 量子密码
能够攻破量子计算机的密码 - 无此密码
具有量子不确定特性的密码算法 = 量子密码,而非后量子密码
综上,后量子密码指的就是:
能够抵御量子计算机攻击的密码
它研究在量子计算出现后仍提供安全性的密码体制。
一个安全的密码杂凑函数需要能够抵抗生日攻击等强抗碰撞性攻击。生日攻击即:在随机抽出的 N个人中,N至少为( ),就能保证至少两个人生日一样(排除2月29日的情况)的概率大于二分之一。B
A. 20
B. 23
C. 150
D. 182
首先考虑参加聚会的人彼此生日都不同的概率:假设第一个人的生日是365天中的某一天。
第二个人的生日与第一个人不同的话,可选的日期有364种,两人生日不同的概率为364/365 = 1 – 1/365。
第三个人的生日与前两个人不同的话,可选的日期有363种,他与前两个人生日不同的概率为363/365 = 1-2/365。依此类推。
假设t个人参加聚会,他们彼此生日都不同的概率为 (1 - 1/365) x (1- 2/365) x … x (1 – (t - 1)/365)。
所以,至少存在两个人生日相同的概率为p = 1 - (1 - 1/365) x (1- 2/365) x … x (1 – (t - 1)/365)根据泰勒近似公式 1 – x ≈ e^{-x},得既然要求p > 1/2,于是有t≈23。因此,只要23人参加聚会,就能以至少1/2的概率找到两个生日相同的人。
- 基于Hash的消息认证码的输出长度与消息的长度无关,而与选用的Hash函数有关。正确
基于 Hash 函数的消息认证码(Hash-Based Message AuthentiCAtion Code,HMAC)的输出长度与选用的 Hash 函数有关,与被认证的原始消息的长度无关。HMAC 的工作原理是,将被认证的消息和密钥通过 Hash 函数计算得到固定长度的摘要,作为消息认证码,输出给使用者。Hash 函数的输出长度固定,与输入数据的长度无关。比如常见的 MD5 的输出长度固定为 128 Bit(16 字节)。SHA-1 的输出长度固定为 160 Bit(20 字节)。而被认证的密文消息的长度可以极长,比如兆字节级别。但经过 HMAC 计算后得到的消息认证码长度仍然是固定的,与 Hash 函数一致。所以 hash-Based MAC 使用原理上,HMAC 的输出长度确实与选用的 Hash 函数有关,与被认证消息的长度无关。HMAC 通过换用不同的 Hash 函数,可以得到不同长度的消息认证码。比如:
使用 MD5 计算HMAC,则得到 16 字节长度的 MAC
使用 SHA-1 计算HMAC,则得到 20 字节长度的 MAC
使用 SHA-256 计算HMAC,则得到 32 字节长度的MAC
所以,HMAC 的长度确实与 Hash 函数有关。这也体现了 HMAC 的设计思想,抽象出 Hash 函数作为基本构建模块,而 Hash 函数的输出长度固定。
- 在相同的硬件平台和软件环境下,相同密钥长度的RSA在加密时硬件实现速度比DES快。错误
- 由于进行的都是大数计算,使得RSA最快的情况也比DES慢上100倍,无论是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只于少量数据加密。
- 消息鉴别码中使用的密钥是发送者和接收者之间共享的密钥。正确
MAC的工作原理是:
发送者利用一个共享的密钥对待传输的数据计算出MAC值,附加到数据后发送。
接收者使用相同的密钥再次对收到的数据计算出MAC值。
接收者校验计算出来的MAC值与收到的MAC值是否匹配,如果匹配,则表示数据完整性未被破坏。
因此,MAC算法需要发送者和接收者共享一个密钥,使用这个共享的密钥分别对数据计算MAC值,最后实现校验功能。这点与非对称的数字签名不同。数字签名中,发送者使用自己的私钥进行签名,接收者使用对应的公钥进行验签。这里发送者和接收者使用的是不同的密钥,一个密钥用于签名,一个用于验签。而在MAC机制中,发送者和接收者使用的是同一个密钥进行MAC值的计算和比较,实现消息完整性校验。所以你说的消息鉴别码中使用的是发送者和接收者之间共享的密钥是准确的。这也是MAC作为一种对称加密算法特点之一。与此相对的是数字签名应用了非对称加密,它使用密钥对来实现签名和验签这两个不同对象之间的相互认证。
- 非线性密码的目的是为了降低线性密码分析的复杂度。正确
线性密码(Linear Cryptanalysis)是密码分析的一种方法,它通过研究密钥流和明文流(或密文流)之间的线性相关性,来分析加密算法的弱点。而非线性密码(Nonlinear Cryptanalysis)则是指使用非线性方法来分析和破解密码系统。它之所以称为“非线性”,是因为在密码分析中使用了非线性算法和非线性模型。而使用非线性方法的原因在于,线性密码分析虽然理论上可以破解密码系统,但其计算复杂度极高,尤其对现代密码学来说。这就是非线性密码出现的背景和目的。它通过采用非线性方法来降低线性密码分析的复杂度,从而有效地攻击密码系统。典型的非线性密码分析方法包括:
差分密码分析(Differential Cryptanalysis)
查表密码分析(TaBle Lookup Analysis)
碰撞密码分析(Collision Cryptanalysis)
高秩密码分析(High-Order Cryptanalysis)等等
综上,非线性密码的目的是降低线性密码分析的复杂度是正确的。非线性密码就是通过采用非线性方法来有效攻击密码系统,降低使用线性分析方法的巨大复杂度。
- 凯撒密码可以通过暴力破解来破译。正确
凯撒密码属于最简单的替换密码,其加密原理是:通过令每个字母向一个固定的位置进行位移,即确定一个固定的替换表,根据这个替换表对文本中的每一个字母进行加密。而解密过程就是恢复加密时的位移量(固定的替换表),然后根据它对密文中的每个字母进行解密操作。为了破译凯撒密码,最粗暴也最有效的方法就是使用暴力破解。具体的方法可以描述为:
确定一个有可能的位移量(1-26 个字母)。
根据该位移量,对密文中的每个字母进行解密。
判断解密后的文本是否有意义。
如果无意义,则更改位移量,重复步骤2和3。
直到找到使解密后的文本有意义的位移量为止。
这就是典型的暴力破解方法。其实质是将所有可能的位移量(1 到 26 个字母)全都试一遍,直到找到使解密结果具有可读性的位移量为止。由于凯撒密码的加密原理十分简单,只有一个位移参数,所以暴力破解是最有效也最简单的破译方法。总结一下,凯撒密码的破译基本上没有其他更有效率的方法,暴力破解是唯一切实可行的方案。
以下属于密码学的分析方法的是( )。AB
A. 差分分析
B. 线性分析
C. 序列分析
D. 结构分析
密码学的分析方法主要包括:
差分分析(Differential Cryptanalysis):通过研究密文与关联明文差的统计分布规律来分析密码算法。
线性分析(Linear Cryptanalysis):通过研究密钥流与明文流(或密文流)间的线性关系来分析密码算法。
高阶分析(High-order Analysis):研究密钥流与明文流(或密文流)间高次相关来分析密码算法。
暴力破解(Brute-force Attack):尝试全体可能的密钥,直至找出正确的密钥。
选择密文分析(Chosen Ciphertext Attack):破解者可以选择任意密文,并获得相应的明文。
相关密钥攻击(Related-Key Attack):破解者拥有相似但是不同的两个密钥对,并利用其中的关系来分析密码算法。
上述这些密码学的主要分析方法,都属于数学统计分析。所使用的方法包括:概率论、统计学、组合数学、数论等数学工具。而序列分析和结构分析这两种分析方式,主要用于密码原语、协议等结构分析,而非密码学的主要分析方法。
一个密码系统的安全性包含哪些()。CD
A. 加密安全性
B. 解密安全性
C. 可证明安全性
D. 计算安全性
无条件安全性:这种评价方法考虑的是假定攻击者拥有无限的计算资源,但仍然无法破译该密码系统。
计算安全性:这种方法是指如果使用目前最好的方法攻破它所需要的计算资源远远超出攻击者拥有的计算资源,则可以认为这个密码系统是安全的。
可证明安全性:这种方法是将密码系统的安全性归结为某个经过深入研究的困难问题(如大整数素因子分解、计算离散对数等)。这种W评估方法存在的问题是它只说明了这个密码方法的安全性与某个困难问题相关,没有完全证明问题本身的安全性,并给出它们的等价性证明。
密码学在信息安全中的应用是多样的,以下不属于密码学的具体应用是( )。A
A. 网络协议生成
B. 完整性验证
C. 加密保护
D. 身份鉴别
- 密码学具体应用在于加密技术、数字签名技术、身份鉴别机制以及相关工具等。而所谓的“网络协议生成”,指的是网络通信协议的定义和开发,与密码学本身并没有直接联系。网络协议的编写需要考虑的主要是通信格式、信息交互规则等内容,而密码学主要关注加密、鉴别和认证技术。
密码在信息安全中有广泛的应用,不属于密码具体应用是( )。A
A. 信息的可用性
B. 信息的完整性
C. 信息的机密性
D. 信息的真实性
密码学在信息安全中的具体应用包括:
信息的机密性 Confidentiality:通过加密技术保护信息的机密性,实现信息的隐私和保密。
信息的完整性 Integrity:利用数字签名、消息认证码等技术验证信息的完整性,检测信息在传输过程中的任何修改。
信息的真实性 Authenticity:采用身份验证、数字证书等技术手段,识别信息的真实来源,验证消息的真实可信。
信息的不可否认性 Non-repudiation:使用数字签名技术,确保信息的发送者不能否认已发送的信息。
密钥管理 Key management:提供密钥一致性、密钥更新等服务,有效管理密钥的生命周期和安全性。
所以不属于密码具体应用的是:信息的可用性 AvailaBility。虽然信息安全也包括可用性,但密码学主要关注信息的隐私性(机密性)、完整性和真实性等方面。信息的可用性则涉及网络、软件和系统等方面,与密码学并不直接相关。通常信息的可用性通过冗余、备份、容灾等措施来保障,不属于密码学的具体应用范畴。密码学主要着眼于如何利用加密技术和相关手段,确保信息在通信和存储过程中的机密性、完整性和可信性。而信息的可用性则更多属于网络、系统、软件安全等方面所关注。
重合指数密码分析法对以下古典密码算法有效的是( )。BC
A. 置换密码
B. 单表代换密码
C. 多表代换密码
D. 序列密码
量子密码与传统的密码系统不同,它主要依赖于( )作为安全模式的关键方面。B
A. 数学
B. 物理学
C. 化学
D. 电磁
传统的密码系统主要依靠数学上的难题来提供安全,如大整数分解问题、离散对数问题等。这些问题的计算复杂度很高,但有理论上的可解性。而量子密码正是利用量子力学特点,通过物理方式确保密码本身的安全。主要有以下几点:
量子纠缠:量子密码利用了量子纠缠状态来共享密钥。如果破坏纠缠状态便会失败。
量子无偏性:量子测量具有随机特性,这可以保证密钥生成的随机性。
赫欧enBerg不确定性原理:量子态无法同时确定两个互补观测,这限制了窃听者获得信息的能力。
量子冥想:任何测量都会破坏量子态,这保证了窃听的存在会暴露出来。
综上,量子密码利用量子力学物理特性作为其安全基础,包括量子纠缠、无偏性、不确定性原理和冥想。这点与依赖数学难题的传统密码不同。
2009年是同态加密的里程碑之年, Gentry在他的博士论文中首次提出了( )加密的构造框架。C
A. 同态
B. 部分同态
C. 全同态
D. 加法同态
Gentry在2009年的博士论文中首次提出的确切的加密构造框架是:全同态加密(Fully Homomorphic Encryption)。按字面意思,“全”同态加密是指加密函数可以同态支持加法和乘法两个操作。这意味着对加密后的数据进行这两种操作,与直接在明文上进行计算等价。而2009年之前,研究者仅能实现部分同态加密,仅能支持一种操作。2009年Gentry的论文里,他总结出实现全同态加密的通用构造框架,并给出具体的数学构造。这被认为是全同态加密的里程碑。此前,研究者一直相信全同态加密是不可能实现的。Gentry的论文推翻了这一广泛看法。他的构造也成为后来全同态加密算法的基础。除此之外,Gentry在论文中还列出了实现全同态加密的几个关键挑战:
实现基于骰子加密的加密方案
基于理论上有效的近似循环问题的证明
找到一个有效的混淆技巧,意义在于保持密钥的短。
他的工作解决了这些问题,第一次实现了真正意义上的全同态加密方案。
最佳仿射逼近分析方法是一种( )的攻击方法。D
A. 选择密文攻击
B. 唯密文攻击
C. 选择明文攻击
D. 已知明文攻击
- 最佳仿射逼近分析方法(Best Affine Approximation Attack)是一种已知明文攻击(Known Plaintext Attack)方法。仿射逼近分析的思路是:已知有n对已知明文和对应的密文(mi,ci),i∈[1,n]。找到一个最优的仿射变换函数f(x) = ax + B,使得与明文字母mi对应的密文字母ci能接近于f(mi)。即找到最小化Σi=1~n | f(mi) - ci |的a 和 B的值。通过这种方法,可以得到破译密钥。这属于已知明文攻击,因为分析者拥有已知明文与对应密文的 pairing。而其他类型的攻击方式:选择密文攻击基于分析者有能力要求获得与指定密文对应的明文。唯密文攻击仅使用拥有的密文对进行分析。选择明文攻击分析者有能力选择明文并获得对应的密文。所以正确地说,最佳仿射逼近分析方法是一种已知明文攻击方法。该方法适用于类似凯撒密码、维吉尼亚密码等简单仿射替换密码的破译。通过已知 n 对明文对密文,求最大似然估计参数a 和 B的值,即找到最佳的仿射映射函数,进而破译出该密码。
下列攻击方法可用于对消息鉴别码攻击的是()。D
A. 选择密文攻击
B. 字典攻击
C. 查表攻击
D. 密钥推测攻击
- 通过已知明文和密文对,重复补全可能的密钥,直到找到可以生成已知密文的密钥为止。一般来说,选择密文攻击和查表攻击不是对 MAC 有效的攻击方式。
下列是密码杂凑算法的是( )。ABCD
A. MD5
B. SHA-1
C. SHA-3
D. SM3
- 书第49页
密码设备的各组成部件既可以在多个不同芯片上实现,也可以在单芯片上实现。而模块中常见的属于单芯片构成的密码设备包括以下哪些( )。ABD
A. 智能卡
B. USB Key
C. 密码加速卡
D. 安全芯片
智能卡:是采用单片机技术打造的一种便携式安全存储设备,整体采用单片机实现,属于单芯片构成。
USB Key:USB闪存键也采用单片机+闪存组成的方式,通过USB接口与主机连接,是一种单芯片构成的密码设备。
安全芯片:也即安全微控制器,主要由单片机和安全功能模块组成,采用单片集成,属于单芯片构成。
密码加速卡通常采用多个芯片共同完成功能,包括单片机、FPGA、ASIC、闪存等,多芯片共同工作,实现高性能。通常不属于单芯片构成。
对DES的三种主要攻击方法包括( )。ACD
A. 暴力攻击
B. 生日攻击
C. 差分密码分析
D. 线性密码分析
密码学(cryptology)是研究秘密通信的原理和破译密码的方法的一门科学,密码学包含两个相互独立的分支( )。CD
A. 对称密码
B. 非对称密码
C. 密码编码学
D. 密码分析学
密码学包含两个相互独立的分支:密码编码学 CryptogRAphy 和密码分析学 Cryptanalysis。它们的关系和区别如下:
密码编码学是研究创建和使用密码系统的原理。主要研究:
如何创建安全的加密算法
如何设计和实现密码协议
如何应用密码技术保护信息安全
密码分析学是研究密码系统中的弱点和破解密码的方法。主要研究:
如何分析并破解已知的密码系统
如何设计更加安全的密码系统
如何评估密码算法的安全强度
这两个分支具有不同的研究目标和思路,但又互相依赖。密码编码学为构建安全系统奠定理论基础,同时密码分析学研究暴露了安全缺陷,促进了密码算法的完善。双方通过不断的对抗和超越,推动密码学整体的进步。所以我们可以说,密码学包含这两个相互独立但互相依存的分支:密码编码学和密码分析学。它们分别代表着密码学研究者构建安全系统和分析破解密码系统的两面角色。对称密码和非对称密码是密码编码学研究的内容,而密码分析学研究密码的破译方法。
密码算法主要分为三类:对称密码算法、 非对称密码算法、密码杂凑算法。以下哪两种密码算法属于同一类密码体制( )。ABCD
A. RC4和RC5
B. RSA和DSA
C. SM4和AES
D. SM2和SM9
公钥密码体制使用不同的加密密钥和解密密钥。以下密码算法是公钥密码体制的有( )。ACD
A. SM2
B. SM4
C. RABin
D. RSA
杂凑函数是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。以下关于杂凑函数的说法正确的是( )。ABC
A. 输入x可以为任意长度;输出数据串长度固定
B. 给定任何x,容易算出H(x)=h;而给出一个杂凑值h,很难找到一特定输入 x,使h=H(x)
C. 给出一个消息x,找出另一个消息y使H(x)=H(y)是计算上不可行的
D. 可以找到两个消息x、y,使得H(x)=H(y)
杂凑函数有以下几个重要特性:
输入x可以是任意长度,但输出h(x)一定是固定长度的。这是杂凑函数的基本定义。
给定任意输入x,容易计算出对应的杂凑值h(x)。而反过来,给定一个杂凑值h,要找到一个输入x满足h(x)=h,则计算上困难。这就是单向性。
对于任意输入x,要找出另一个输入y使得h(x)=h(y),则计算上是不可行的。因为根据单向性,反推x和y非常困难,除非通过暴力搜索。
错误的是:可以找到两个消息x、y,使得H(x)=H(y)。根据杂凑函数的单向性和收缩性,理论上找到两个不同的输入对应同一个输出的概率极低。只有当输入足够多时(2的n次方/输出比特数),才有比较高的概率找到两个不同的输入对应同一个输出。所以这一点不正确。理想的杂凑函数中,每个输出对应一个唯一的输入。前三项正确描述了杂凑函数的基本特性:收缩性、单向性和抵抗碰撞。最后一项不正确。
消息鉴别是用来验证消息完整性的一种机制或服务。消息鉴别的内容包括( )。AB
A. 证实消息的信源
B. 证实消息内容是否被篡改
C. 保护消息的机密性
D. 保护用户隐私
消息鉴别主要用来验证以下两点:证实消息的信源以及证实消息内容是否被篡改。具体说明:消息鉴别(Message AuthentiCAtion)是验证消息有效性的一种方法,主要用于:
证实消息的信源。验证接收到的消息来自于一个特定的实体或者主体,确认消息的信任来源。
证实消息内容是否被篡改。通过计算和对比消息摘要值,验证消息在传输过程中是否被非法修改。
相比之下,消息鉴别不涉及:
保护消息的机密性。消息鉴别本身不提供加密功能,不能隐藏消息的内容。这需要借助其他加密技术。
保护用户隐私。消息鉴别仅验证消息的有效性和信任信源,不涉及用户隐私数据。所以总的来说,消息鉴别主要用于验证消息来自于可信发源和消息内容未被篡改。它的功能主要限于此。
这通过实现两个目的来完成:
证实消息信源的有效性(消息发布者的身份)
证实消息内容未被非法修改。与此相对的是,消息鉴别本身不提供消息保密和隐私保护等功能。(真实性)(完整性)
密码杂凑函数是指对不同的输入值,通过密码杂凑函数进行计算,得到固定长度的输出值。对密码杂凑函数的攻击方法有( )。ABCD
A. 字典攻击
B. 生日攻击
C. 彩虹表攻击
D. 穷举攻击
零知识证明包括( )两类。AB
A. 交互式零知识证明
B. 非交互式零知识证明
C. POW共识机制
D. POS共识机制
- 零知识证明(Zero-Knowledge Proof)包括以下两类:交互式零知识证明 InteRActive Zero-Knowledge Proof 和非交互式零知识证明 Non-InteRActive Zero-Knowledge Proof。具体解释如下:交互式零知识证明需要两个参与方(证明者和验证者)进行多轮的交互信息交换,最终证明某一事实。这种证明方式具有最高的安全性,但需要双方交互参与。非交互式零知识证明不需要参与者交互,证明者只提供一次性的证明,验证者直接进行验证。这种方式省去了交互步骤,更便捷。但相对来说安全性较弱。POW共识机制和POS共识机制与零知识证明无关。因此,你列出的相关选项中,正确的选择应当是:交互式零知识证明 非交互式零知识证明。这两种方式正对应着交互式和非交互式两种零知识证明。POF和POS机制并非零知识证明的范畴。零知识证明的主要功能是:证明者能够向验证者证明他对某个陈述的知晓,而无需公布任何额外信息。通过交互式和非交互式两种方式来实现这一功能。
一个有新鲜性的值是指这个值是刚产生的,而不是重放的。常用的保证新鲜性的机制有( )。ABCD
A. 时间戳
B. 一次性随机数
C. 计数器
D. 将时间戳和计数器结合使用的方法
根据加、解密时使用密钥的不同,密码体制一般分为( )。AB
A. 对称密码体制
B. 非对称密码体制
C. 分组密码
D. 流密码
根据加密和解密时使用的密钥是否相同,密码体制主要分为:对称密码体制 Symmetric-key cryptogRAphy 和非对称密码体制 Asymmetric-key cryptogRAphy。具体来说:
对称密码体制:这种密码体制需要加密和解密使用相同的密钥。它具有密钥管理简单但易泄密的特征。代表算法有 DES、AES、RC4等。
非对称密码体制:这种密码体制需要加密使用一个密钥,解密使用另一个密钥。两个密钥通过数学算法相关联。它具有密钥管理复杂但易分享的特征。代表算法有 RSA、Diffie-Hellman等。分组密码和流密码是两个密码分类标准:分组密码操作的单位是固定长度的块,流密码操作的单位是比特流或字节流。但两者并不对应于对称和非对称密码体制。分组密码和流密码同时存在于这两种密码体制之中。
古典密码的主要方法有( )。AD
A. 代换
B. 加密
C. 隐藏
D. 置换
古典密码的主要方法包括:代换 Encryption 和置换 TRAnsposition。古典密码大致可分为三大类:
代换密码(SuBstitution cipher)通过将明文字母映射到其他字母上来隐藏信息。代表算法有简单替换密码和多重替换密码。
置换密码(TRAnsposition cipher)通过改变明文字母的位置顺序来隐藏信息。代表算法有简单置换密码和多重置换密码。
组合密码(Composite cipher)将代换密码和置换密码组合使用,提高安全性。古典密码没有所谓的隐藏方法。
现代密码阶段大约是指20世纪50年代以来的时期。现代密码技术的特点是( )。AB
A. 基于密钥安全
B. 加解密算法公开
C. 加密算法保密
D. 基于置换算法
现代密码阶段 指20世纪50年代以来使用数字电路实现密码的时期。其技术特点主要包括:基于密钥安全 Key-Based Security 和加解密算法公开 CryptogRAphic Algorithms PuBlic具体分析:
基于密钥安全:现代密码方法是基于安全的密钥和算法才能达到安全的目标,密钥的安全得到了充分重视。
加解密算法公开:现代密码采用的加密算法已经公开,算法的安全不再依赖保密,而是基于密钥安全。
加密算法复杂:现代密码采用的算法相当复杂,能够有效抵抗已知的密码攻击方式。
非对称密码出现:非对称密码技术的涌现,改变了密钥管理的方式。
综上所述,现代密码的特点主要体现在:
加密算法公开但安全
基于安全的密钥实现信息安全
密钥管理方式的革新,包括非对称密码的出现
加密算法的复杂性显著提高
下列密码体制为计算安全的是( )。ABC
A. RSA
B. ECC
C. AES
D. 一次一密系统
如果密文中有某一比特始终为常数,则该密文不具备伪随机性。错误
密文中有某一比特始终为常数,并不意味着该密文不具备伪随机性。密文的伪随机性是衡量其能否模拟真随机数列的度量。具体来说,如果满足下列条件,则可以认为密文具备较好的伪随机性:
通过统计学测试(如χ2 检验、连续时间检验等),密文的分布比特不能和真随机数列有显著区别。
通过逻辑分析也不能将密文与真随机数列有效区分出来。
使用密码分析方法,即使获得很多密文,也不能提取出有效信息。
从上面的标准可以看出,密文的伪随机性主要看其整体统计特征是否接近随机。单个比特的值(是否为常数)与伪随机性并不直接相关。单个比特始终为常数只能说明该比特没有变化,但不意味着整体密文的统计特征不接近随机。另外,即使单个比特始终为常数0或1,如果其他比特变化足够复杂,仍然可能通过统计学检验并符合伪随机数列的特征。
- 如果密文中有某一部分比特始终为常数,则该密文一定不具备不可预测性。错误
如果密文中有一部分比特始终为常数,并不能确定该密文一定不具备不可预测性。不可预测性(UnpredictaBility)是判断密文质量的一个重要标准。具体来说,只要满足下列条件,该密文仍可称之为不可预测:
单个比特或一部分比特始终为常数,但这只占全部比特的很小比例。
其它绝大部分比特是随机的,满足统计学检验。
单个非随机比特并不能推断出整体规律或更多信息。
通过密码分析方式,即使获取很多密文,也不能破译出有效信息。
综上两点:
单个比特或局部比特始终为常数,并不足以推断出整体密文的规律。
密文的不可预测性主要取决于其整体统计特征是否接近随机分布。只有当密文整体呈现明显的非随机特性时,才能认为其不具备不可预测性。单个局部的非随机特征并不足以影响整体统计规律。
因此,并不能根据存在局部常数比特就断定整体密文一定不可预测。需要分析整体密文的统计规律,同时考虑各种混淆手段,才能判断其不可预测性。单个局部特征并非必要且充分条件。
- 只使用一个密钥的CBC类MAC,无法保护消息的完整性。错误
- 单一密钥的CBC模式MAC(Message AuthentiCAtion Code)算法,确实可以保护消息的完整性。MAC算法本质上是利用共享密钥对消息计算哈希值,与实际哈希进行比较。能正确匹配,则认为消息完整性未被破坏。在CBC-MAC算法中,消息分组先和初始化向量进行加密,然后将结果与下一个分组进行异或,作为下一个分组的输入。直到最后一个分组,最后的结果就是消息的MAC值。这种算法需要使用一个共享的密钥,同时参与者进行计算和比较,以判断消息是否被修改。单一密钥正是 CBC-MAC算法的工作方式,并不影响其保护消息完整性的能力。使用不同密钥的话,参与者计算出的MAC值就不会匹配,也就无法正确校验消息。
- HMAC是一种消息鉴别码。正确
- HMAC全称为Keyed-Hash Message AuthentiCAtion Code,是一种基于散列函数的消息认证码。消息认证码(Message AuthentiCAtion Code)的作用是检验消息在传输过程中的完整性,验证消息信源等。HMAC就是一种特殊的消息认证码。它结合了一个密钥和哈希算法(如MD5、SHA-1等),最终生成一个固定长度的值用作MAC。
以下哪些算法在正确的使用时,同样的密钥对同样的数据执行同样的运算,其结果可能也是不同的。AD
A. SM2签名
B. HMAC-SM3
C. SM4-ECB
D. SM2加密
在相同的硬件平台和软件环境下,相同密钥长度的RSA和AES加密速度相同。错误
对称密码算法只能C语言实现而不能用其它程序设计语言实现。错误
- 对称密码算法并不仅限于使用C语言实现,也可以使用其他高级语言实现
- 一般来说,常见的加密算法都能用软件实现。正确
常见的加密算法通常都可以用软件实现。包括但不限于:
对称加密算法:AES、DES、3DES 等
非对称加密算法:RSA、DH、DSS 等
散列函数:MD5、SHA-1/2/3 等
密码系统的安全性不应取决于不易改变的算法,而应取决于可随时改变的密钥。正确
置换密码又叫换位密码,常见的置换密码有栅栏密码等。错误
- 常见的置换密码有两种:列置换密码和周期置换密码
字母频率分析法对( )算法最有效。B
A. 置换密码
B. 单表代换密码
C. 多表代换密码
D. 序列密码
GM/Z 4001《密码术语》中,保证信息不被泄露给非授权的个人、进程等实体的性质称为密码的( )。C
A. 真实性
B. 完整性
C. 机密性
D. 不可否认性
- 机密性 confidentiality:保证信息不被泄露给非授权的个人、进程等实体的性质。
GM/T 0006《密码应用标识规范》中的标识符在跨平台传输时,应采用( )字节顺序进行传输。A
A. 网络字节顺序(Big- endian)
B. 小端(Little-endian)
C. 网络字节序或小端
D. 其它顺序
- 在跨平台传输时,为避免不同平台字节顺序差异带来的影响或错误,应将标识符按照高位字节在前的网络字节顺序(Big-endian)进行处理。
GM/T 0006 《密码应用标识规范》定义的标识中,不包括的数据编码格式是( )。B
A. DER编码
B. Huffman编码
C. Base64编码
D. PEM编码
GM/Z 4001《密码术语》中,一种利用大量互相对应的明文和密文进行分析的密码攻击方法称为( )。D
A. 线性密码分析
B. 选择明文攻击
C. 选择密文攻击
D. 已知明文攻击
- 已知明文攻击known-plaintext attack:一种利用大量互相对应的明文和密文进行分析的密码攻击方法。
现代密码学中,为了保证安全性,密码算法应该进行保密。错误
SM2、SM4、ZUC算法都是对称密码算法。错误
衡量一个密码系统的安全性中的无条件安全又称为可证明安全。错误
代换密码分为单表代换密码、多表代换密码、转轮密码机。错误
- 转轮密码机是机械密码
GM/T 0006《密码应用标识规范》的用途是对密码算法或数据实体等标识进行统一,以便于密码协议、密码接口间的互联互通。正确
GM/T 0006《密码应用标识规范》定义了C和Java等语言实现密码算法时的密钥结构体等具体数据结构。错误
Merkle-Hellman密码体制是背包加密体制。正确
生日攻击方法利用了Hash函数的结构和代数弱性质。错误
抵抗生日攻击方法需要消息摘要必须足够的长。正确
时间-存储权衡攻击是一种唯密文攻击。错误
NP问题是指用非确定性算法在多项式时间内解决的问题。正确
- 在多项式时间内可由非确定机解决的一类问题,称之为NP问题。
- 最短向量问题是格上的困难问题。正确
- 格上的代数问题是容易计算的,例如判断一个向量是否在格中,计算格的行列式等。但是格上的几何问题一般都是困难的。 例如上面所说的最短向量长度问题
消息认证(报文鉴别)不能抵抗( )攻击。D
A. 内容篡改
B. 数据包顺序篡改
C. 伪造消息
D. 侧信道攻击
打扑克是一种流行于全世界的休闲类游戏,玩扑克之前首先要进行洗牌,从密码学的角度看,可以将洗牌理解为一种加密运算,目的是让玩家猜不到牌的顺序,那么这种加密运算属于( )。A
A. 置换加密
B. 代换加密
C. 公钥加密
D. 序列加密
- 置换密码(Permutation Cipher)又叫换位密码(TRAnsposi-tionCipher),它根据一定的规则重新排列明文,以便打破明文的结构特性。置换密码的特点是保持明文的所有字符不变,只是利用置换打乱了明文字符的位置和次序。
下列关于未来密码学的发展说法错误的是( )。C
A. 量子计算机能够实现电子计算机所做不到的并行算法
B. 量子计算机能够破解RSA、ECC等密码
C. 进入量子计算时代,仍然需要保护信息的安全,目前使用的密码算法和密钥长度仍然能够保证安全
D. 量子密码的安全性不依赖传统的计算安全
根据有限域的描述,下列( )是有限域。AB
A. 模素数n的剩余类集
B. GF(2的8次方)
C. 整数集
D. 有理数集
GB/T 33560-2017《信息安全技术 密码应用标识规范》定义的标识中,包括( )。ABCD
A. 算法标识
B. 密钥标识
C. 设备标识
D. 协议标识
- (GB/T 33560-2017)定义了密码应用中所使用的标识,用于规范算法标识、密钥标识、设备标识、数据标识、协议标识、角色标识等的表示和使用。
GB/T 33560-2017《信息安全技术 密码应用标识规范》中,包括( )的公钥密码算法的标识。ABD
A. RSA
B. SM2
C. ECDSA
D. SM9
GB/T 33560-2017《信息安全技术 密码应用标识规范》》中,包括( )的接口标识。BCD
A. OpenSSL接口
B. 密码设备应用接口
C. 通用密码服务接口
D. 智能IC卡及智能密码钥匙接口
GB/T 33560-2017《信息安全技术 密码应用标识规范》中,包括( )密钥操作标识。ABCD
A. 密钥生成
B. 密钥分发
C. 密钥导入
D. 密钥销毁
GB/T 33560-2017《信息安全技术 密码应用标识规范》中,包括( )的密钥分类标识。ABCD
A. 主密钥
B. 设备密钥
C. 用户密钥
D. 密钥加密密钥
下列可以防止重放攻击的方式有( )。ABC
A. 时间戳
B. 鉴别方验证序列号没有重复
C. 采用“挑战-响应”机制
D. 数字签名
以下关于密钥的描述,正确的是( )。ABD
A. 在消息认证码中,发送者和接收者使用共享的密钥来进行认证
B. 在数字签名中,签名的生成和验证使用不同的密钥
C. 消息认证码所使用的密钥,是用于认证的密钥
D. 对称密码和非对称加密的密钥都可以用于机密性保护
以下关于完整性保护的说法错误的有()。BC
A. 在特殊应用中,在确保杂凑值无法被修改时,也可以单纯采用杂凑算法保护数据的完整性
B. 基于公钥密码技术的数字签名可以防止敌手对消息进行篡改,但不能防止接收者对消息进行伪造
C. 基于对称密码或者杂凑算法的完整性保护机制既能确保接收者接收消息之前的消息完整性,也能防止接收者对消息的伪造
D. HMAC可以避免单独使用杂凑算法可能会遭受中间人攻击的弊端
密码学是研究通信安全保密的科学,它包含两个相对独立的分支( )。AB
A. 密码编码学
B. 密码分析学
C. 密钥破译学
D. 密码编译学
下列方法可用于对消息认证码攻击的是( )。AB
A. 重放攻击
B. 密钥推测攻击
C. 已知明文攻击
D. 选择密文攻击
被周恩来总理称为“龙潭三杰”的地下情报战斗小组,他们是( )。BCD
A. 毛泽覃
B. 钱壮飞
C. 李克农
D. 胡底
散列函数的定义中的“任意消息长度”是指实际中存在的任意消息长度,而不是理论上的任意消息长度。正确
- 在密码学中,散列函数的定义中的“任意消息长度”是指实际中存在的任意消息的长度,而不是理论上的任意消息长度。也就是说,散列函数应该能够处理任意长度的消息,并输出固定长度的散列值。这是保证散列函数的可用性和实用性的重要要求之一。
散列函数的单向性是指根据已知的散列值不能推出相应的消息原文。正确
以下场景利用了密码的不可否认功能的是()。AB
A. 网银用户对交易信息进行签名
B. 电子证照
C. 服务端对挑战值进行签名
D. SSL协议中对会话计算MAC
实现和验证不可否认性过程中可能会用到( )密码元素。ABCD
A. 杂凑函数
B. 时间戳
C. 数字证书验证
D. 签名验签
古典密码体制的分析方法有( )。ABCD
A. 统计分析法
B. 明文-密文分析法
C. 穷举分析法
D. 重合指数法
美国数据加密标准DES算法迭代结构是()。A
A. 平衡Fesitel网络结构
B. 非平衡Fesitel网络结构
C. SP结构
D. MD结构
多表代换密码是以单个代换表对多组明文进行加密。错误
古典密码体制的统计分析法是指某种语言中各个字符出现的频率不一样,表现出一定的统计规律。正确
公开密钥加密(puBlic-key cryptogRAphy)也称为非对称密钥加密(asymmetric cryptogRAphy),是一种密码学算法类型。下列算法属于公钥密码算法的是()。ABD
A. RSA算法
B. ElGamal算法
C. AES算法
D. ECC(椭圆曲线密码)算法
多表代换密码是以一系列代换表一次对明文消息的字母序列进行代换的加密方法。错误
- 同642!多表代换密码是以多个代换表依次对明文消息的字母进行代换的加密方法
- AES密码算法的迭代结构是()。C
A. 平衡Fesitel网络结构
B. 非平衡Fesitel网络结构
**C. SP结构**
D. MD结构