计算机网络——40各个层次的安全性
各个层次的安全性
安全电子邮件
Alice需要发送机密的报文m给Bob

Alice
- 产生随机的对称秘钥, K s K_s Ks
- 使用 K s K_s Ks对报文进行加密(为了效率)
- 对 K s K_s Ks使用Bob的公钥进行加密
- 发送 K s ( m ) K_s(m) Ks(m)和 K B ( K S ) K_B(K_S) KB(KS)给Bob
Bob
- 使用自己的私钥解密 K S K_S KS
- 使用 K S K_S KS解密 K S ( m ) K_S(m) KS(m)得到报文
Alice数字签署文件
发送报文(明文)和数字签名
Alice 需要提供源端的报文完整性和可认证性

Alice加密:
- Alice 数字签署文件(采用自己的私钥签署报文的散列)
- 发送报文(明文)和数字签名
Bob解密: - Bob使用散列函数计算报文的散列 H(m)
- 使用Alice的公钥解密报文的散列 K A + ( K A − ( m ) ) K_A^+(K_A^-(m)) KA+(KA−(m))
- 比较 H(m) = K A + ( K A − ( m ) ) K_A+(K_A^-(m)) KA+(KA−(m))?
- 如果相等,说明m就是正确的
- 能采用Alice的公钥解密,说明是用Alice的私钥加密的,保证了源端可认证性
- 采用散列比较,保证了报文完整性(如果报文被修改,得到的散列也会被修改)
Alice 需要提供机密性,源端可认证性和报文的完整性

Alice使用了3个keys:自己的私钥,Bob的公钥,新产生出的对称式密钥
Pretty good privacy(PGP)
- Internet e-mail加密方案,事实上的标准.
- 使用前面讲述的:对称密钥加密,公开密钥加密,散列函数和数字签名.
- 能够提供机密性,源端的可认证性和报文完整性.
- 发明者, Phil Zimmerman, 是3年的犯罪调查的目标
/*A PGP signed message: */
---BEGIN PGP SIGNED MESSAGE---
Hash: SHA1
Bob:My husband is out of town tonight.Passionately yours, Alice
---BEGIN PGP SIGNATURE---
Version: PGP 5.0
Charset: noconv
yhHJRHhGJGhgg/12EpJ+lo8gE4vB3
mqJhFEvZP9t6n7G6m5Gw2
---END PGP SIGNATURE---
Secure sockets layer(SSL)
- 为使用SSL服务的、基于TCP的应用提供传输层次的安全性
- e.g.在Web的浏览器和服务器之间进行电子商务的交易(shttp)
- 所提供的安全服务:
- 服务器的可认证性,数据加密,客户端的可认证性(可选)

SSL三个阶段
握手
- Bob和Alice建立TCP连接
- 通过AC签署的证书认证Alice的身份
- 创建、加密(采用Alice的公钥),传输主密钥给Alice
- 不重数交换没有显示

密钥导出
- Alice,Bob采用共享的MS产生4个keys
- E B E_B EB:Bob -> Alice 数据加密key
- E A E_A EA:Alice -> Bob 数据加密key
- M B M_B MB:Bob -> Alice MAC(报文鉴别编码) key
- M A M_A MA:Alice -> Bob MAC key
- 加密和MAC算法在Bob,Alice之间协商
- 为什么要4个keys?
- 更安全
数据传输

IPsec:网络层次的安全性
- 网络层次的机密性
- 发送端主机IP数据报中的数据进行加密
- 数据:TCP或者UDP的段;ICMP和SNMP报文
- 网络层次的可认可性
- 目标主机可以认证源主机的IP地址
- 2个主要协议
- 认证头部(AH)协议
- 封装安全载荷 encapsulation security payload(ESP) 协议
- 不管AH还是ESP,源和目标在通信之前要握手
- 创建一个网络层次的逻辑通道:安全关联 security assocication(SA)
- 每一个SA都是单向
- 由以下元组唯一确定
- 安全协议(AH 或 ESP)
- 源IP地址
- 32bit连接ID
Authentication Header(AH)协议
- 提供源端的可认证性,数据完整性,但是不提供机密性
- 在IP头部和数据字段之间插入AH的头部
- 协议字段:51
- 中间的路由器按照常规处理这个数据报
AH头部包括
- 连接ID
- 认证数据:对原始数据计算报文摘要,使用源端的私钥进行数字签名
- 下一个字段定义了数据的类型(e.g. TCP,UDP,ICMP)

ESP协议
- 提供机密性,主机的可认证性,数据的完整性
- 数据和ESP尾部部分被加密
- next header字段在ESP尾部
- ESP认证的头部与AH类似
- 协议号 = 50

相关文章:
计算机网络——40各个层次的安全性
各个层次的安全性 安全电子邮件 Alice需要发送机密的报文m给Bob Alice 产生随机的对称秘钥, K s K_s Ks使用 K s K_s Ks对报文进行加密(为了效率)对 K s K_s Ks使用Bob的公钥进行加密发送 K s ( m ) K_s(m) Ks(m)和 K B ( K S ) K…...
OpenHarmony实战:Combo解决方案之W800芯片移植案例
本方案基于OpenHarmony LiteOS-M内核,使用联盛德W800芯片的润和软件海王星系列Neptune100开发板,进行开发移植。 移植架构采用Board与SoC分离方案,支持通过Kconfig图形化配置编译选项,增加玄铁ck804ef架构移植,实现了…...
【数据结构】数组(稀疏矩阵、特殊矩阵压缩、矩阵存储、稀疏矩阵的快速转置、十字链表)
稀疏矩阵、矩阵压缩、稀疏矩阵的快速转置、十字链表 目录 稀疏矩阵、矩阵压缩、稀疏矩阵的快速转置、十字链表1.数组2.数组的顺序表示和实现3.特殊矩阵的压缩存储(1). 上三角矩阵—列为主序压缩存储(2). 下三角矩阵—**行为主序压…...
nginx 配置访问地址和解决跨域问题(反向代理)
1、配置访问地址(通过ip访问) //配置ip访问地址 location ^~/auditApp{alias /usr/local/front-apps/cbd/auditApp;index index.html;if (!-e $request_filename) {rewrite ^/(.*) /auditApp/index.html last;break;}} 2、解决跨域问题&…...
支持向量机(SVM)白话之个人理解(学习记录)
本文仅有文字理解部分,没有相应的数学公式推导过程,便于新手理解。 一、什么是支持向量机 首先我们看下面这张图,在图中圆形和三角形分别代表不同的数据类型,如何画出一条直线使两者能够显著地区分开来呢? 答案可以多…...
【运输层】TCP 的可靠传输是如何实现的?
目录 1、发送和接收窗口(滑动窗口) (1)滑动窗口的工作流程 (2)滑动窗口和缓存的关系 (3)滑动窗口的注意事项 2、如何选择超时重传时间 (1)加权平均往返…...
K8s技术全景:架构、应用与优化
一、介绍 Kubernetes的历史和演进 Kubernetes(简称K8s)是一个开源的容器编排系统,用于自动化应用程序的部署、扩展和管理。它最初是由Google内部的Borg系统启发并设计的,于2014年作为开源项目首次亮相。 初始阶段 Kubernetes的诞生…...
Java的异常机制
异常机制 三种类型 检查型异常:程序员无法预见的运行时异常:在编译时会被忽略错误ERROR:错误在代码中被忽略,在编译时检查不到 异常处理机制 抛出异常捕获异常异常处理的五个关键字:try,catchÿ…...
考虑预同步的虚拟同步机T型三电平逆变器并离网MATLAB仿真模型
微❤关注“电气仔推送”获得资料(专享优惠) 模型简介 三相 T 型三电平逆变器电路如图所示,逆变器主回路由三个单相 T 型逆变器组成。 直流侧输入电压为 UPV,直流侧中点电位 O 设为零电位,交流侧输出侧是三相三线制连…...
记一次k8s取证检材过期的恢复
复盘盘古石k8s的时候碰到了证书过期的问题,在此记录解决方法 报错信息:192.168.91.171:6443 was refused - did you specify the right host or port? 查看证书是否过期 kubeadm alpha certs check-expiration或 openssl x509 -in /etc/kubernetes/…...
【网站项目】自助购药小程序
🙊作者简介:拥有多年开发工作经验,分享技术代码帮助学生学习,独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。🌹赠送计算机毕业设计600个选题excel文件,帮助大学选题。赠送开题报告模板ÿ…...
Ubuntu22.04修改默认窗口系统为X11
Ubuntu22.04安装默认窗口系统为Wayland(通过设置->关于可以看到)。 一、用Ubuntu on Xorg会话登录 用户登录时,点“未列出”,输入用户名后,在登录界面底部的齿轮图标中,选择 "Ubuntu on Xorg&quo…...
延时队列实现实战:如何利用 RabbitMQ 实现延时队列,以满足特定延迟处理需求
实现延时队列,可以通过RabbitMQ的死信队列(Dead-letter queue)特性,“死信队列”是当消息过期,或者队列达到最大长度时,未消费的消息会被加入到死信队列。然后,我们可以对死信队列中的消息进行消…...
关于在Ubuntu上配置mysql踩的一些坑
最近准备换工作了,回顾了下学校时期做的那个webserver,又在linux下mysql踩了一些坑,特此记录下来 程序编译错误mysql.h: No such file or directory 云服务器缺少mysql必要的运行组件,安装: sudo apt-get install l…...
JSBridge原理 - 前端H5与客户端Native交互
1. 概述: 在混合应用开发中,一种常见且成熟的技术方案是将原生应用与 WebView 结合,使得复杂的业务逻辑可以通过网页技术实现。实现这种类型的混合应用时,就需要解决H5与Native之间的双向通信。JSBridge 是一种在混合应用中实现 …...
【Java EE】Spring请求如何传递参数详解
文章目录 🎍传递单个参数🌴传递多个参数🍀传递对象🎄后端参数重命名(后端参数映射)🌲传递数组🎍传递集合🌴传递JSON数据🌸JSON概念🌸JSON的语法&a…...
菜鸟笔记-Numpy常用函数用法汇总
NumPy(Numerical Python的简称)是Python中用于处理数组和矩阵的库,提供了大量的数学函数来操作这些数组。通过前面的学习,慢慢也能发现一些规律,以下是NumPy的一些常用函数及其用法汇总: 数组创建 numpy.a…...
tensorflow.js 如何使用opencv.js通过面部特征点估算脸部姿态并绘制示意图
文章目录 前言一、实现步骤1. 获取所需特征点的索引2. 使用opencv.js 计算俯仰角、水平角和翻滚角cv.solvePnP介绍cv.solvePnP原理运行代码查看效果 3.绘制姿态示意直线添加canvas元素计算姿态直线坐标并绘制 总结 前言 在计算机视觉领域,估算脸部姿态是一项具有挑…...
Linux命令-dpkg-divert命令(Debian Linux中创建并管理一个转向列表)
说明 dpkg-divert命令 是Debian Linux中创建并管理一个转向(diversion)列表,其使得安装文件的默认位置失效的工具。 语法 dpkg-divert(选项)(参数)选项 --add:添加一个转移文件; --remove:删除一个转移…...
flex: 1 是哪些属性的缩写?
flex:1是哪些属性的缩写? flex:1 是 flex-grow: 1, flex-shrink: 1,flex-basis: 0% 的缩写; 解释下flex-grow flex-grow是将剩余的空间,根据flex-grow的值平分,然后加到flex-basis上 <!doctype html> <htm…...
Phi-4-mini-reasoning镜像部署案例:低成本GPU环境下高效推理落地实录
Phi-4-mini-reasoning镜像部署案例:低成本GPU环境下高效推理落地实录 1. 项目背景与模型介绍 Phi-4-mini-reasoning是一个基于合成数据构建的轻量级开源模型,专注于高质量、密集推理的数据处理能力。作为Phi-4模型家族的一员,它特别针对数学…...
掰开揉碎魔改claudecode后,我盯着 Claude Code 跑了一圈,终于看懂顶级 AI Agent是如何炼成的
开头先来一句狠的很多人以为,Claude Code 之所以强,是因为模型更聪明。但我把它运行时真正生效的 Payload 抓出来之后,结论反而更明确了:顶级 AI Agent 的差距,很多时候不在模型本身,而在它背后那套“怎么约…...
3步搞定飞书文档批量导出:告别手动复制粘贴的终极解决方案
3步搞定飞书文档批量导出:告别手动复制粘贴的终极解决方案 【免费下载链接】feishu-doc-export 飞书文档导出服务 项目地址: https://gitcode.com/gh_mirrors/fe/feishu-doc-export 还在为飞书文档的迁移备份而烦恼吗?每次需要导出几十上百个文档…...
标普油气ETF富国(513350.SH)逆势走强、半导体承压:地缘扰动与产业逻辑共振下的ETF分化走势
4月2日,市场全天震荡调整,创业板指、科创50指数均跌超2%。板块方面,医药板块逆势走强,油气股表现活跃,光纤概念反复走强;算力租赁概念集体调整。ETF方面,标普油气ETF富国(513350.SH&…...
【独家首发】CPython内存管理策略白皮书(基于v3.9–v3.13源码比对):37处关键宏定义、12个GC阈值参数、8类对象内存布局差异
第一章:CPython内存管理策略全景概览CPython 作为 Python 官方解释器,其内存管理机制融合了引用计数、循环垃圾回收(GC)与分代回收策略,形成一套兼顾实时性与鲁棒性的综合体系。理解该机制对诊断内存泄漏、优化对象生命…...
GetQzonehistory:终极QQ空间回忆一键保存指南
GetQzonehistory:终极QQ空间回忆一键保存指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 还在担心QQ空间里那些珍贵的青春记忆会随着时间消失吗?GetQzonehis…...
Git從入門到「入坑」:一個新手的環境配置與踩坑實錄
Git從入門到「入坑」:一個新手的環境配置與踩坑實錄 ——AtomGit春季徵稿開源入門實戰分享 導語:為什麼我要寫這篇文章? 三個月前,我連git clone和git pull的區別都說不清楚。每次看到Git報錯,我的第一反應不是讀錯誤信…...
OpenClaw故障排除手册:千问3.5-9B连接问题大全
OpenClaw故障排除手册:千问3.5-9B连接问题大全 1. 开篇:为什么需要这份手册? 上周我在本地部署OpenClaw对接千问3.5-9B模型时,连续遇到了三个诡异的连接错误。每次报错都像在玩解谜游戏——错误信息含糊不清,社区讨论…...
MentorBit红外驱动库:裸机与RTOS下的精准时序控制
1. MentorBit-DetectorIR 库概述MentorBit-DetectorIR 是一款专为 MentorBit 红外发射/接收模块设计的嵌入式底层驱动库,其核心定位并非通用红外协议栈(如 NEC、RC5 解码),而是面向硬件验证、模块级功能测试与快速原型开发的轻量级…...
本地部署DeepSeek并搭建量化交易系统:完整指南
本地部署DeepSeek并搭建量化交易系统:完整指南 1. 引言 随着大语言模型(LLM)的快速发展,其在金融领域的应用潜力日益凸显。DeepSeek作为一款高性能、开源的大模型,能够为量化交易系统提供强大的自然语言理解和生成能力,例如从新闻、研报中提取信号,辅助生成交易策略,…...
