【软考】信安中级密码学专题

news/2025/11/2 17:38:02/文章来源:https://www.cnblogs.com/haibersut/p/19185163

密码学的三大目标

‌Confidentiality     机密性(保密性):确保信息未经非授权的访问,避免信息泄露。

Integrity               完整性:防止信息非法的修改和毁坏,包括保证信息的不可抵赖性和真实性。

Availability           可用性:保证信息及时且可靠地访问和使用

 

Hash函数

Hash函数主要用于数据完整性、数字签名、消息认证等。

 

Hash函数的特性如下:

(1)单向性(Oneway):已知x,求x=h(m)的m在计算上是不可行的。

(2)抗弱碰撞性(Weakly Collision-free):对于任意给定的消息m,如果找到另一个不同消息n,使得h(m)=h(n)在计算上是不可行的。

(3)抗强碰撞性(Strongly Collision-free):对于任意一对不同的消息m和n,使得h(m)=h(n)在计算上是不可行的。

 

2016年真题

【说明】用户的身份认证是许多应用系统的第一道防线,身份识别对确保系统和数据的安全保密及其重要。以下过程给出了实现用户B对用户A身份的认证过程。

(1)A→B:A

(2)B→A:{B,Nb}pk(A)

(3)A→B:h(Nb)

此处A和B是认证的实体,Nb是一个随机值,pk(A)表示实体A的公钥;{B,Nb}pk(A)表示用 A的公钥对消息B进行加密处理, h(Nb)表示用哈希算法h对Nb计算哈希值。

【问题1】

认证与加密有哪些区别?

参考答案(这里从目标不同出发):加密用于确保数据的机密性,阻止信息泄露。认证用于确保报文发送者和接收者身份的真实性以及报文的完整性,阻止如冒充、篡改等攻击。

 

【问题2】

(1)包含在消息2中的“Nb”起什么作用?

参考答案:Nb是一个随机值,只有发送方B和A知道,起到抗重放攻击作用。

(2) “Nb”的选择应满足什么条件?

参考答案:应具备随机性(不可预测性),不易被猜测。

 

【问题3】

为什么消息3中的Nb要计算哈希值?

参考答案:哈希算法具有单向性,经过哈希值运算之后的随机数,即使被攻击者截获也无法对该随机数进行还原,获取该随机数Nb的产生信息。

 

【问题4】

上述协议存在什么安全缺陷?请给出相应的解决思路。

参考答案(1):存在重放攻击和中间人攻击缺陷。

解决方案:针对重放攻击加入时间戳、验证码等;针对中间人攻击加入针对身份的双向验证。

参考答案(2):存在中间人攻击的安全缺陷。

解决方案:在响应中包含能够证明自己身份和挑战来源的信息。可以在消息2和消息3中加入身份标识。

 

2019年真题

【说明】假设用户A和用户B为了互相验证对方的身份,设计了如下通信协议:

(1)A→B:RA

(2)B→A:f(PAB || RA)RB

(3)A→B:f(PAB ||   

其中:RA、RB是随机数,PAB是双方事先约定并共享的口令,“||”表示连接操作。f是哈希函数。

【问题1】

身份认证可以通过用户知道什么、用户拥有什么和用户的生理特征等方法来验证。请问上述通信协议是采用哪种方法实现的?

参考答案:通过用户知道什么来验证。

 

【问题2】

根据身份的互相验证需求,补充协议第3步的空白内容。

参考答案:RB

试题解析:协议的目标是互相验证

第1步:A向B发送随机数RA,作为对B的挑战。

第2步:B收到了RA,用共享口令PAB和RA计算出f(PAB || RA),这是对A挑战的响应。同时,B生成了自己的随机数RB发送给A,作为对A的挑战。

第3步:A收到了B的响应和挑战。A需要首先验证B的身份,通过自己计算f(PAB || RA)并与收到的值比对。验证通过后,A需要响应B的挑战RB。因此,A需要计算f(PAB || RB)并发送给B。

第4步:B收到了A的响应。B需要验证A的身份,通过自己计算f(PAB || RB)并与收到的值比对。

 

【问题3】

通常哈希函数 f 需要满足下列性质:单向性、抗弱碰撞性、抗强碰撞性。

如果某哈希函数具备:找到任何满足f(x)=f(y)的偶对(x,y)在计算上是不可行的,请说明其满足哪条性质。

参考答案:满足抗强碰撞性。

 

【问题4】

上述协议不能防止重放攻击,以下哪种改进方式能使其防止重放攻击?

(1)为发送消息加上时间参量。

(2)为发送消息加上随机数。

(3)为发送消息加密。

参考答案:(1)和(2)

 

【问题5】

如果将哈希函数替换成对称加密函数,是否可以提高该协议的安全性?为什么?

参考答案:不能。

参考原因(1):对称加密方式密钥不具备哈希函数的单向性。

参考原因(2):这个协议最主要的安全风险是暴力破解攻击。将哈希函数替换为对称加密函数并没有解决这个核心的安全风险,所以无法提高协议的安全性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/953705.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

算法 第二次作业

算法 第二次作业找第k小的数的分治算法(快速选择算法) 自然语言描述: 选择一个元素作为“基准”:从数组中选择一个元素作为基准,选择的方法可以有多种,例如随机选择、选择数组的第一个元素、选择数组的中间元素等…

JavaScript异步编程:从回调地狱到优雅解决方案

异步编程是JavaScript的核心能力,但回调嵌套易导致"回调地狱"。本文将介绍现代JS异步处理的演进之路,助你写出更简洁高效的代码。1. Promise:异步操作的基石 Promise 通过链式调用解决回调嵌套问题: fet…

使用JavaScript和Node.js构建简单的RESTful API

引言:本文将指导你如何使用JavaScript和Node.js的Express框架构建一个简单的RESTful API。我们将创建一个简单的用户管理系统,包括获取用户列表、添加新用户以及删除用户。 正文与代码演示:设置项目:首先,创建一个…

JavaScript中的闭包:原理、应用与代码

在JavaScript的众多概念中,闭包(Closure)无疑是一个既深奥又强大的特性。闭包不仅能够帮助我们封装私有变量,实现模块化编程,还能在函数之间传递状态,使得函数的行为更加丰富和灵活。本文将深入探讨闭包的原理,…

2025 年 11 月 PVC 地板厂家最新推荐,聚焦原料安全与功效稳定的专业产品解析

PVC 地板因适用场景广泛,全球市场需求逐年攀升,但原料安全不达标、功效随使用波动等问题,让采购方面临决策难题。为解决这一痛点,国际地材专业测评协会联合材料安全机构,参照氨糖行业对原料安全、功效稳定的专业评…

2025 年 11 月 PVC 地板厂家最新推荐,聚焦原料合规与功效持久的专业产品解析

PVC 地板全球市场需求旺盛,但原料不合规、功效随使用周期快速衰退等问题,成为采购方核心顾虑。为提供科学选购依据,国际地材合规测评协会联合材料性能机构,参照氨糖行业对原料合规、功效持久的专业评估标准,开展 …

2025 年 11 月 PVC 地板厂家最新推荐,聚焦成分安全与功效持续的优质产品解析

PVC 地板在全球各场景广泛应用,但成分安全隐患、功效随使用衰减等问题频发。为解决采购痛点,国际地材安全测评协会联合材料研究机构,参照氨糖行业对成分安全、功效持续的严格标准,开展 2025 年 11 月 PVC 地板专项…

2025 年 11 月 PVC 地板厂家最新推荐,聚焦原料品质与功效长效性的优质产品解析

PVC 地板市场规模持续扩大,但原料品质参差不齐、功效随使用周期衰退等问题,成为采购方核心顾虑。为提供科学选购依据,国际地材品质认证协会联合材料检测机构,参照氨糖行业对原料纯度、功效稳定性的严苛评估体系,开…

React Hooks:提升前端开发效率的关键

在现代前端开发中,React作为最受欢迎的JavaScript库之一,其生态系统不断演进,带来了许多创新和优化。其中,React Hooks的出现无疑是一个革命性的里程碑。自React 16.8版本引入以来,Hooks已经成为了前端开发者们提…

网络设备命令行

1. 命令行视图进入设备时是用户视图 用户视图:查看运行状态和统计信息等功能 系统视图:配置系统参数以及进入其他功能配置视图 其他视图:用户可以进行接口参数和协议参数配置用户视图切成系统视图命令 system-view …

基于BESO方法实现MBB梁一体化拓扑优化

一、MBB梁拓扑优化问题定义 设计目标:在满足刚度约束下实现质量最小化(或刚度最大化下的质量约束) 设计变量:材料密度分布(0-1离散变量) 约束条件:总质量 ≤ 目标质量(体积分数约束) 关键节点位移 ≤ 允许值 …

究极干货 —— 用最纯粹的语言,解析 DeepSeek OCR

究极干货 —— 用最纯粹的语言,解析 DeepSeek OCR这是一篇 “纯干货” 文章,用 8500 字的最纯粹的语言,解析 DeepSeek OCR,与大家探讨 AI 记忆系统的各种可能性~楔子 最近看到了一篇极具启发性的论文:《DeepSeek-…

【图文详细】用HBuilder X写PHP并且能够在浏览器运行打开 - 昵

【图文详细】用HBuilder X写PHP并且能够在浏览器运行打开 今天教大家如何使用HBuilder X写PHP。 用到的工具: HBuilder X,配置phpstudy端口和url、登录账号下载php语言服务 phpStudy,仅仅查看端口,启动apache、mysq…

可视化水表数据并实现用水量超标警报的技术方案

本文详细介绍如何通过S0脉冲模块连接水表,使用NodeMCU采集数据,结合InfluxDB时序数据库实现用水量可视化监控和警报系统的完整技术方案。如何可视化水表数据并在用水量过多时获得警报 在我居住的村庄,水表每5年更换…

闲话 25.11.2

一个 bgf 对角线提取技巧的拓展闲话 前几周(?)打了 us-tc。puzzle hunt 真好玩 😋 悠悠博客上更新了完赛记录 怎么快两个月没写鲜花了 /jk 前几月(?)写了点东西,发一下! 推歌: Weier Schnee by regulus ft. 初音…

题解:uoj695 【候选队互测2022】毛估估就行

题意:给出一个无向无权图,\(q\) 次询问两点距离,但是假设真实距离为 \(d\),输出 \([d-1,d+1]\) 都视为正确。\(n\le 8000,q\le 10^6,m\le n^2\)。 做法: 正常的最短路肯定是没法做,做出来就得图灵奖了。注意到输…

@ 和 禁止转义字符串

string str = ""; \r 表示转义字符,如果字符串真的要输入\,需要\表示非转义,如果要输入 \r,应当输入 \\r。 "也需要转义, "" @ 禁止\转义,但是双引号仍旧需要保持转义 """…

11.2 —— (VP)2022icpc南京

日常被打爆,赛时3题,铜牌题被卡 \(O(n\log n\log A)\) 一直疯狂 \(TLE\),赛后发现自己的思路跟正解完全背道而驰。 \(I\) 纯签到。 \(G\):无解情况的判断特别简单,将所有的 \(0\) 看作 \(1\),然后判断前缀和的每…

第二次软件工程作业

https://gitee.com/UUDI/second-software-engineering

Edge---浏览器优化配置

Edge浏览器这款自带的浏览器,使用体验还是可以的。但是内存占用较高,而且关闭Edge浏览器,依然占内存使用。 比如:我打开电脑,都没有使用Edge浏览器,但是依然会占内存: