网络安全之密码学

news2024/11/24 3:48:57

目录

密码学

定义

密码的分类

对称加密

非对称加密

对称算法与非对称算法的优缺点

最佳解决办法 --- 用非对称加密算法加密对称加密算法的密钥

非对称加密如何解决对称加密的困境

密钥传输风险

密码管理难

常见算法

对称算法

非对称算法

完整性与身份认证最佳解决方案

密码学的应用

身份认证技术的应用

如何确认信息发送者是本人

存在问题

解决问题

 CA

PKI

PKI体系

CA中心

数字证书

密码学完整应用​编辑

SSL协议分析

定义

介绍

无客户端认证的握手过程​编辑

有客户端认证的握手过程​编辑

会话恢复过程(之前已经建立过会话,再次连接)

SSL协议的细节

        协议位置

        体系结构​编辑

        SSL的两个概念


密码学

定义

        密码学是网络安全、信息安全、区块链等产品的基础,常见的非对称加密、对称加密、散列函数等,都属于密码学范畴。密码学有数千年的历史,从最开始的替换法到如今的非对称加密算法,经历了古典密码学,近代密码学和现代密码学三个阶段。密码学不仅仅是数学家们的智慧,更是如今网络空间安全的重要基础。

        替换法 --- 就是用固定的信息将原文替换成无法直接阅读的密文信息。例如将 b 替换成 w ,e 替换成p ,这样bee 单词就变换成了wpp,不知道替换规则的人就无法阅读出原文的含义。

        密码学之于信息传输 --- 在不安全的环境下建立安全输出通道

        密码 --- 明文 -->算法+密钥 ---> 密文

举例:
明文: ok
使用凯撒密码
算法:对字母进行平移可以左也可以右,移动若干位
密钥:向右平移3个字母
密文:rn

密码的分类

对称加密

        加解密用的是同一个密钥,数学角度是一个双向函数

        对称加密首先要保证算法足够复杂以及密钥传输足够安全

加密信息传递又两个通道

        密文传递通道

        密钥传递通道

        存在问题 --- 密钥如何传输

非对称加密

        在互联网时代我们希望能偶在网上公开途径传输密钥

        diff和hellmen开创了非对称加密算法 --- DH算法

DH算法解决了在公开场合密钥安全传递问题

对称算法与非对称算法的优缺点

  • 对称加密算法解决信息的安全传输通道
  • 非对称加密算法解决对称加密算法密钥的安全传输通道
  • 对称加密速度快,但不安全
  • 非对称加密算法速度慢,但安全

最佳解决办法 --- 用非对称加密算法加密对称加密算法的密钥

非对称加密如何解决对称加密的困境

        密钥安全传输 --- 对称加密算法的缺陷

密钥传输风险

        Alice与bob必须使用一个安全的信道来传输对称密钥,但是消息传输的通道是不安全的。对称加密A的密钥需要用对称加密B来传输---B的密钥不安全会导致A的不安全。

密码管理难

        如果没有非对称加密,百度这个企业需要和用户做安全传输,就需要保存至少3-5亿个密钥。根据我们上图的非对称算法只需要一把公钥,而对称需要亿级别的钥匙

常见算法

对称算法

非对称算法

完整性与身份认证最佳解决方案

        核心原理 --- 私钥加密公钥解密

        过程 --- 对明文a进行hash运算得到定长值h,然后对h进行非对称运算用私钥加密得到值k,然后对明文值a进行对称运算得到y,传输时同时传输给y和k,收到后用非对称公钥解开k得到h,然后用堆成算法解开y得到a,然后对a进行hash得到h``,如果h与h``相同, 则证明完整性与身份认证。

密码学的应用

身份认证技术的应用

        身份认证 --- 通过标识和鉴别用户身份,防止攻击者假冒合法用户来获取访问权限

        身份认证技术 --- 在网络总确认操作者身份的过程而产生的有效解决方法

如何确认信息发送者是本人

        发送者是alice,使用非对称算法,生成私钥A,公钥B。

  1. alice把公钥给bob

  2. alice发送信息hello,world!

  3. alice把发送的信息用对称加密算法加密到加密信息C。

  4. alice把发送的hello,world!先用hash算法计算得到hash值D。

  5. alice把hash值D用非对称加密计算得到E。E值就是用于身份验证的。

  6. alice把C,E一起发给bob。

  7. bob收到C,E值,先用非对称的公钥对E进行解密,如果能正常解开则证明C值是alice的。

存在问题

        上述1中如果黑客偷换了alice的公钥,那么就会出现身份认证漏洞  

解决问题

解决思路:

        alice把公钥给bob的环节能确保是安全的,一定是alice给的。

        想办法证明alice的公钥一定是alice的。

配置公钥的“身份证”-----数字证书

 CA

PKI

        定义 --- PKI(公开密钥体系, Public Key Infrastructure )是一种遵循标准的利用 非对称加密技术 为电子商务的开展提供一套安全基础平台的技术和规范。
        简单说就是利用公钥技术建立的提供安全服务的基础设施。通过第三方的可信机构, CA认证中心 把用户的公钥与用户的其他标识信息捆绑在一起放在用户证书中,在互联网上验证用户身份。

PKI体系

        PKI --- 是创建、颁发、管理、注销证书所涉及到的所有软件、硬件的集合体。其核心元素数字认证书核心执行者CA认证机构 

CA中心

        CA中心 --- 即证书授权中心(Certificate Authority ),或称证书授权机构,作为 电子商务交易 中受信任的第三方。

数字证书

        包括 --- 用户身份信息;用户公钥信息;身份验证机构的信息及签名数据

        分类 --- 签名证书 ---- 身份验证,不可抵赖性

                     加密证书 ---- 加密,完整性机密性

密码学完整应用

SSL协议分析

定义

        SSL协议(Secure Sockets Layer)安全套接层 --- 由美国网景通信(Netscape)公司自1990年开发,用于保证WWW通信安全。主要任务是提供私密性信息完整性身份认证

介绍

        SSL --- 一个不依赖于平台和运用程序的协议,位于TCP/IP协议与各种应用层协议之间,为数据通信提高安全支持

无客户端认证的握手过程

注意:

        可能遭受到的攻击:重放攻击

        重放攻击(Replay Attacks) --- 又称重播攻击、回放攻击,是指攻击者发送一个目的主机已接收过的包,来达到欺骗系统的目的,主要用于身份认证过程,破坏认证正确性

 PreMasterKey密钥参数 --- 合成对称密钥的前置数值

初始化向量

有客户端认证的握手过程

报文类型参数
hello_request
client_hello版本、随机数、会话ID、密文族、压缩方法
server_hello版本、随机数、会话ID、密文族、压缩方法
certificatex.509V3证书链
server_key_exchange参数、签名
certificate_request类型、授权
server_done
certificate_verify签名
client_key_exchange

参数、签名

finishedHash值

会话恢复过程(之前已经建立过会话,再次连接)

SSL协议的细节

        协议位置

注意:

        ssl --- 介于应用层tcp层之间。应用层数据不再直接传递给传输层,而是传递给ssl层,ssl层对从应用层收到的数据进行加密,并增加自己的ssl头。

        体系结构

         SSL握手协议(SSL Handshake Protocol) --- 建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。

        SSL记录协议(SSL Record Protocol) --- 建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装压缩加密等基本功能的支持。

注意:

        SSL协议实际上是SSL握手协议SSL修改密文协议SSL警告协议SSL记录协议组成的一个协议族

        SSL修改密文协议 --- 在客服端和服务器完成握手协议之后,它需要向对方发送相关消息(该消息只包含一个值为1的单字节),通知对方随后的数据将用刚刚协商的密码规范算法关联的密钥处理,并负责协调本方模块按照协商的算法密钥工作

        SSL报警协议 --- 是用来为对等实体传递SSL的相关警告。如果在通信过程中某一方发现任何异常,就需要给对方发送一条警示消息通告

        SSL的两个概念

        连接 --- 是一个提供一种合适类型服务的传输(OSI分层的定义)。SSL是点对点的关系。连接是暂时的,每一个连接一个会话关联。

        会话 --- 是在客户服务器之间的一个关联。会话由handshake protocol创建。会话定义了一组可供多个连接共享的密码安全参数。会话用以避免为每个连接提供新的安全参数所需的昂贵的协商代价

 

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

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

相关文章

优维低代码:定制构件的打包及部署

优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。 连载…

用Python写一个BMI计算代码

有粉丝问我怎么写一个BMI算法,安排 height float(input("请输入身高(米): ")) weight float(input("请输入体重(千克): ")) 计算BMI bmi weight / (height ** 2) 显示结果 print("您的…

MySQL8.0.32安装以及环境配置

文章目录一、安装MySQL二、错误集1. 如果操作失误,可以重新安装一、安装MySQL 下载MySQL的社区版的压缩包:https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.32-winx64.zip 将压缩包解压到你要安装的目录中 将对应的安装路径添加到环境变量中…

Java面试核心知识点梳理(二)——Java集合

文章目录前言1. List1.1 ArrayList(数组)1.2 Vector(数组、线程安全)1.3 LinkedList(链表)2. Set2.1 HashSet(Hash表)2.2 TreeSet(二叉树)2.3 LinkHashSet&am…

3分钟通过日志定位bug,这个技能测试人必须会

♥ 前 言 软件开发中通过日志记录程序的运行情况是一个开发的好习惯,对于错误排查和系统运维都有很大帮助。 Python 标准库自带了强大的 logging 日志模块,在各种 python 模块中得到广泛应用。 一、简单使用 1. 入门小案例 import logging logging.ba…

国内Google翻译失效的解决方法(MAC/WIN)

Google宣布停止在中国大陆的翻译服务,原因是:使用率低??,这导致Chrome浏览器网页翻译失效。对于一些使用Chrome,经常鼠标下一秒就在大洋彼岸扒拉资料,且英语不太好的同学来说变得非常难受。为此…

【软考中级·网络工程师】校验码差错控制

差错控制🍉 无论通信系统如何可靠,都不能做到完美无缺。因此,必须考虑怎样发现和纠正信号传输重的差错。通信过程中出现的差错大致可以分为两类: 一类是由热噪声引起的随机错误;热噪声:一种由电子的热运动…

基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升

专题一 空间数据获取与制图 1.1 软件安装与应用讲解 1.2 空间数据介绍 1.3海量空间数据下载 1.4 ArcGIS软件快速入门 1.5 Geodatabase地理数据库 ​ 专题二 ArcGIS专题地图制作 2.1专题地图制作规范 2.2 空间数据的准备与处理 2.3 空间数据可视化:地图符号…

无头盔PICO-unity开发日记3(UI按钮点击)

目录 1.UI界面加入组件 2.加入xr输入模块 3.设置光线投射遮罩 结果: 前提:做好一个ui界面 1.UI界面加入组件 画布加跟踪设备图形光线投射仪(tracked device graphic raycaster) 允许画布被追踪设备操纵 2.加入xr输入模块 sys…

C++ --模拟实现搜索二叉树

文章目录#搜索二叉树1. 搜索二叉树特点2. 操作分析2.0 结点结构2.1 插入2.2 升序查看2.3 查找2.4 删除2.5 前序拷贝构造3. 完整代码4. 时间复杂度分析5. 简单应用5.1 字典搜索5.2 统计次数#搜索二叉树 1. 搜索二叉树特点 若它的左子树不为空,则左子树上所有节点的…

Dockerfile及新型容器镜像构建技术

文章目录一、容器镜像分类1、操作系统类2、应用类二、容器镜像获取方法1、在dockerhub直接下载2、把操作系统中文件系统打包为容器镜像3、把正在运行的容器打包为容器镜像,即docker commit4、通过dockerfile实现容器镜像的自定义以及生成三、dockerfile1、dockerfil…

数据库管理系统PostgreSQL部署安装完整教程

PostgreSQL是一个开源的关系型数据库管理系统,它支持大量的数据类型和复杂的查询语言,可以用于各种应用程序。它是一个高性能的数据库,可以处理大量的数据,并且具有良好的可扩展性和可靠性。 目录 一.Linux系统安装PostgresSQL&a…

机器学习——线性模型之Softmax回归

问:Softmax回归模型是一种典型处理多分类任务的非线性分类模型 答:错误。Softmax回归是线性分类模型。实际上是逻辑回归的拓展,它将逻辑回归的二分类推广到了多分类,用逻辑回归的方法解决多分类问题。 线性模型——Softmax回归 …

Linux之基础IO

文章目录一.关于文件的共识二.复习C语言的文件操作1.打开文件2.向文件中写入数据3.向文件中追加数据三.有关文件的系统调用1.open(文件打开)2.write(向文件写入)3.read(读文件)四.文件描述符1.进程如何找到自己的文件2.为什么文件…

leetcode刷题(3)

各位朋友们大家好,今天是我leedcode刷题系列的第三篇,废话不多说,直接进入主题。 文章目录分割链表题目要求用例输入提示做题思路c语言代码实现Java代码实现相交链表题目要求用例输入提示做题思路c语言实现代码Java代码实现分割链表 leetcod…

KDSL-82轻型升流器

一、产品概述 KDSL-82 1000A大电流发生器是一种作为检验用的电流源,大电流试验器采用ARM芯片控制输出工艺和大容量的环形变压器,并且配有液晶屏显示的表计,同时显示一、二次电流、变比和秒表接点(或电位)的动作时间。外配铝合金机箱&#xff…

OceanMind海睿思受邀参加中小企业数字化转型发展论坛

近日,由江苏省企业信息化协会主办的中小企业数字化转型发展论坛于南京圆满结束。论坛重点邀请了南京市中小企业制造标杆、专精特新“小巨人”企业等相关信息化负责人和IT工作者共同探讨中小企业数字化转型的发展路径。 OceanMind海睿思作为南京地区大数据领域优秀代…

自然语言大模型介绍

1 简介 最近一直被大语言模型刷屏。本文是周末技术分享会的提纲,总结了一些自然语言模型相关的重要技术,以及各个主流公司的研究方向和进展,和大家共同学习。 2 Transformer 目前的大模型基本都是Transformer及其变种。本部分将介绍Transf…

FPGA基于XDMA实现PCIE X4的HDMI视频采集 提供工程源码和QT上位机程序和技术支持

目录1、前言2、我已有的PCIE方案3、PCIE理论4、总体设计思路和方案5、vivado工程详解6、驱动安装7、QT上位机软件8、上板调试验证9、福利:工程代码的获取1、前言 PCIE(PCI Express)采用了目前业内流行的点对点串行连接,比起 PCI …

自动化测试用什么框架?Pytest框架 vs Unittest框架,企业使用分析......

目录:导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜)前言 安装方式不同 unit…