密码学 密钥管理

news2024/11/19 18:38:25

密钥管理

出发点:在一种安全策略指导下的密钥产生,存储,分配,删除,归档和应用方案。

目的:维持系统各实体之间的密钥关系,抗击各种威胁:
1.密钥泄露
2.密钥和公钥身份真实性丧失
3.未授权使用

内容:产生,登记,装入,存储和保护,分配和密钥协定,使用控制,备份恢复,更新,撤销和销毁。

密钥类型

会话密钥:两个终端在一次通信中使用的密钥。用于加密文件时就叫文件密钥,加密数据时就叫数据加密密钥
密钥加密密钥:用于对会话密钥或文件密钥进行加密时采用的密钥。又称辅助(二级)密钥密钥传送密钥
主机主密钥:对密钥加密密钥加密的密钥,存于主机处理器
基本密钥:也叫初始密钥用户密钥。由用户指定或者系统分配给用户的,可以在较长时间内由一对用户专用的密钥。
公钥体制下还有公开密钥秘密密钥签名密钥

密钥产生

密钥产生不当会导致密钥空间的减小和字典式攻击。
要尽可能随机等概率产生密钥。

不同等级的密钥产生不一样。
主机主密钥最重要,要保证完全随机。
密钥加密密钥可以伪随机或者安全算法产生
会话密钥可以通过密钥加密密钥和某些算法产生
初始密钥可以用类似主机主密钥的方式

密钥登记

将密钥和特定使用者绑定。

密钥装入

主机主密钥和终端主密钥装入时要有电磁屏蔽,装入后不可再读出,可间接验证。
会话密钥不存在装入问题

密钥保护

最好放在物理安全的地方。
否则要使用机密性和完整性服务来保护

公钥的存储:一次性发放给用户;用户存放在公共媒体上;利用公钥建立密钥环分散保存

密钥分配和密钥协定

密钥分配协议:系统内一个成员选择密钥,并安全传送给别的成员的协议。
密钥协定协议:系统内两个或多个成员在公开信道上联合建立秘密密钥,连个成员的密钥协定也称为密钥交换,如著名的hellman密钥交换。
一个是单成员确定,一个是协商确定。

主密钥的分配:将密钥切分成多部分,通过多种方式传输
密钥分配体制:
1.集中式:中心服务器负责密钥的分发,密钥的存储量和用户量差不多。代表Kerboros协议
2.分布式:用户协商密钥交换。例如Diffie-hellman密钥交换。但这个交换没有鉴别能力,不能抵抗中间人攻击。

密钥的分配技术:
1.静态分配:中心以脱线方式预分配
2.动态分配:请求-分发的在线分发技术

密钥的分配说明了一种密钥是由哪个主体分发到哪些主体的。而密钥的静态配置是密钥统一由KMC产生,分发,更换的集中式管理体制
静态配置的管理体制分成:
1.点对点配置,此时单个体需要存储n-1密钥,整体密钥量为n^2
2.网状配置:此时用户统一和一个KMC交互,总密钥量为n。此时KMC容易成为整体的性能瓶颈。
3.星状配置:局部的网状配置再进一步集中到一个KMC,因此可以配置局部KMC,综合了密钥管理量和性能下的选择,是一种密钥的层次管理方案

公钥分配方案

首先是著名的hellman密钥交换,这个协议可以被中间人攻击
在这里插入图片描述
主要是利用了解离散对数的复杂度来保证密钥不被获取,通过原根和选定的随机数密钥来进行密钥协定,通过幂运算的性质来协定密钥,但是中间人可以不停的截获并伪造双方的密钥,再进行转发从而进行攻击。

端到端协议,STS协议

假设用户的签名和验证算法是sig和ver,可信中心的签名和验证为 s i g sig sig和ver,用户有证书 ( I D ( u ) , v e r u , s i g T A ( I D ( u ) , v e r u ) ) (ID(u),veru,sig_{TA}(ID(u),veru)) (ID(u),veru,sigTA(ID(u),veru))
1.用户U随机选 x u ∈ z p x_u\in z_p xuzp计算 a x u m o d p a^{xu} mod p axumodp发给v
2.用户v随机选 x v ∈ z p x_v\in z_p xvzp计算 a x v m o d p , S v = s i g v ( a x u m o d p ∣ ∣ a x v m o d p ) a^{xv}modp,S_v=sig_v(a^{xu}modp||a^{xv}modp) axvmodp,Sv=sigv(axumodp∣∣axvmodp),发送 ( C ( V ) , a x v m o d p , S v ) (C(V),a^{xv}modp,S_v) (C(V),axvmodp,Sv)发给u;同时计算 K = a x u x v K=a^{xuxv} K=axuxv
3.用户u计算 K = a x u x v m o d p K=a^{xuxv}modp K=axuxvmodp,用verv验证S_v,用ver_TA验证C(V),计算 S u = s i g u ( a x u m o d p ∣ ∣ a x v m o d p ) S_u=sig_u(a^{xu}modp||a^{xv}modp ) Su=sigu(axumodp∣∣axvmodp)再把 ( C ( U ) , S u ) (C(U),S_u) (C(U),Su)发给V
4.V验证一下veru(Su)和ver_TA(C(U))
可以看到STS协议是一个密钥交换协议,其工作方式和hellman机制相同,但引入了TA的证书校验机构,在交换密钥的同时补充了身份认证的问题,因此解决了hellman算法的中间人攻击。身份认证核心思想在于数字签名算法和证书的作用。
证书起到的作用是:用户在TA完成了认证,只有TA可以签名,因此ID和ver是对的,但ID和ver是可以被监听的,因此用户要证明自己是id,同时用户进行了签名,用ver可以解出来,说明确实是这个用户在进行密钥交换。同理,另一个用户在检查完身份之后,也把自己的认证方式发了一遍,于是双方完成了身份鉴定。在这个过程中,同时完成了密钥交换和密钥的检验。
因此用户需要同时丢失证书和签名密钥时算法才能被攻击。
在这里插入图片描述

端到端协议,MIT协议
在这里插入图片描述

在这里插入图片描述
引入了证书,但是双方不进行签名。
可以看见MIT协议在用户丢失证书时可以进行中间人攻击。

密钥使用控制

目标是标识密钥的种类,使得密钥值和合法使用范围绑定起来。通常标识有:密钥拥有者,密钥标识符,有效时间,特定算法,特定使用环境和用户,密钥产生注册认证的实体,完整性检查

密钥长度

目标是保证系统安全,但是不能开销太大
确定长度的信息:保存信息的价值,信息的保密时间,信息的攻击者的资源情况
在这里插入图片描述

在这里插入图片描述

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

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

相关文章

计算机内存机制精讲

全文目录1、一个程序在计算机中到底是如何运行的?2、虚拟内存到底是什么?虚拟地址中间层思想3、虚拟地址空间以及编译模式CPU的数据处理能力编译模式32位编译模式64位编译模式4、内存对齐,提高寻址效率5、内存分页机制,完成虚拟地…

react-native学习过程记录

1、关于react-native init 创建项目报错 cli.init is not a function 问题解决 直接采用npx react-native init chapter2 --version 0.68.2 创建项目(即指定version) 参考地址:https://blog.csdn.net/qq_42231156/article/details/126396576…

【云原生进阶之容器】第二章Controller Manager原理剖析--2.1节Controller Manager综述

1 K8S Controller Manager原理解析 1.1 Controller Manager作用简述 一般来说,智能系统和自动系统通常会通过一个“操作系统”不断修正系统的工作状态。在Kubernetes集群中,每个Controller都是这样的一个"操作系统",它们通过APIServer 提供的(List-Watch)接口实…

小程序集成Three.js开发常见问题

1.加载模型后开发者工具卡顿 我想很多小伙伴都遇到过这个问题,网上很多方法,说什么清缓存,清内存,基本作用都不大。在不断的摸索中,我逐渐找到了一些解决的办法,希望对你有帮助。 (1) 截至发文时间&#…

Java-集合(1)

什么是集合? 在前面的学习中,保存多个数据,用的是数组。 但是数组有很多不同的地方: 1.长度开始时必须指定,且一旦指定无法更改 2.保存的必须为同一类型元素,虽说可以多态保存,但是限制性也很大…

再学C语言17:类型转换

语句和表达式通常只应该使用一种类型的常量和变量 如果使用混合类型,C将会使用一个规则集合自动完成类型转换 一、基本的规则 1)当出现在表达式中时,有符号和无符号的char类型和short类型都将自动被转换为int(在需要的情况下将…

新华三“智・行中国2022”|大厂行动,如何擘画“内循环”的数字未来?

作者 | 曾响铃 文 | 响铃说 继农业经济、工业经济之后,数字经济登上历史的舞台,成为大国的主要经济形态。在我国,根据中国信息通信研究院发布的《中国数字经济发展白皮书(2022年)》,截至2021年&#xff0…

关于浙大MPA复试的一些常规问题

2022年联考笔试刚刚落下帷幕,就收到很多小伙伴关于浙大MPA项目复试的问题咨询,趁着今天有空就大家问的一些问题在这里统一做个回复哦~1、问:正常情况下多少分可以进入浙大MPA项目复试? 答:统计了2018——2022浙大MPA项…

Harmony/OpenHarmony应用开发-转场动画组件内转场

组件内转场主要通过transition属性配置转场参数,在组件插入和删除时显示过渡动效,主要用于容器组件中的子组件插入和删除时,提升用户体验(需要配合animateTo才能生效,动效时长、曲线、延时跟随animateTo中的配置&#…

GitHub官网下载Axios.js步骤

目录 前言必读 一、下载步骤 1.进入GitHub官网 2.搜索axios 3.点击这个axios/axios 4.点击压缩包下载 5.解压,进入到dist文件里面就找到了 二、使用方法 前言必读 读者手册(必读)_云边的快乐猫的博客-CSDN博客 一、下载步骤 1.进入…

数据在内存中的存储(11)

目录 1、数据类型介绍 1、类型的基本归类 1、整形家族: 2、浮点数家族: 3、构造类型(自定义类型): 4、指针类型: 5、空类型: 2、整形在内存中的存储 1、原码、反码、补码 2、大小端介…

[框架]Mybatis的使用

目录一、数据持久化的概念及ORM(Object Relational Mapping “对象关系映射”)的原理1.1 持久化1.2 ORM(Object Relational Mapping)1.3 ORM解决方案(包含四个部分)二、MyBatis简介2.1 简介2.2 特点2.3 MyB…

数据结构-考研难点代码突破(C++实现无向图图最小生成树算法(Prim,Kruskal)图解操作细节(引自C语言中文网))

以代码的方式复习考研数据结构知识点,这里在考研不以代码为重点,而是以实现过程为重点 文章目录1. 无向图最小生成树算法Kruskal算法C代码实现Prim算法C代码实现1. 无向图最小生成树算法 常见基本概念记忆: 生成树定义: 无向图中…

MySQL索引相关知识

1、什么是索引? 索引是存储引擎用于提高数据库表的访问速度的一种数据结构。通过给字段​​添加索引​​​可以​​提高数据的读取速度​​​,提高项目的并发能力和抗压能力。​​索引优化​​​时mysql中的一种优化方式。索引的作用相当于​​图书的目录…

一文搞懂Linux内核进程原理及系统调用机制

进程四要素 有一段程序代其执行有进程专用的系统堆栈空间在内核有task_struct数据结构进程有独立的存储空间,拥有专有的用户空间 如果具备前三点缺少第四条,称为“线程”;如果完全没有用户空间,称为“内核线程”;如果共享用户空间…

中国剩余定理

最近总是用到中国剩余定理,以前对于这个定理非常的模糊,有时间静下心来简单的学习一下中国剩余定理,文章没有深度,写下这篇博客以作记录。 中国剩余定理CRT前言一、描述二、中国剩余定理求解方法1.除以三余二2.除以五余三3.除以七…

14. UserAgent 反爬是如何实现的,来看看这篇博客

本篇博客实现 【爬虫训练场】 的第一个反爬案例,User-Agent 反爬。 文章目录什么是 User-Agent 反爬在 Python Flask 中实现 User-Agent 反爬什么是 User-Agent 反爬 User-Agent 反爬是一种防止网站被爬虫爬取的技术。 当爬虫向网站发送 HTTP 请求时,会…

初识Kubernetes:(3)Kubernetes资源管理

初识Kubernetes:(3)Kubernetes资源管理1 资源管理介绍2 YAML语法介绍2.1 YAML语法介绍2.2 YAML语法示例2.2.1 YAML常量2.2.2 对象2.2.3 数组3 资源管理方式3.1 资源管理方式3.2 命令式对象管理3.2.1 kubectl命令3.2.2 操作(comman…

操作系统期末考试必会题库2——进程管理

1、某系统出现故障,通过相关指令查看,CPU占有率为0,内存有大量空余,但是用户在其程序中得不到任何相应,请从进程状态分析,当前用户所使用的进程可能是什么状态(就绪,运行&#xff0c…

BLE 蓝牙抓包分析

1. 抓包工具 Ellisys & Ellisys Bluetooth Analyzer ​使用方法:https://blog.csdn.net/weixin_44260005/article/details/121216529​ 2. BLE数据样式 3. 数据分析 3.1 ble蓝牙协议栈 3.2 BLE连接过程 http://doc.iotxx.com/BLE%E6%8A%80%E6%9C%AF%E6%8F%AD%…