IPsec_SSL VPN身份鉴别过程简要

一、IPsec VPN身份鉴别(参考国密标准《GMT 0022-2014 IPsec VPN技术规范》)

IKE第一阶段(主模式)

  • “消息2”由响应方发出,消息中具体包含一个SA载荷(确认所接受的SA提议)、响应方的签名证书和加密证书。此消息用明文传输,所以通过wireshark等协议分析工具可以详细看到消息内容,签名证书和加密证书都可导出。

  • “消息3”由发起方发出,此时发起方已经具备响应方加密证书,开始使用数字信封加密传递密钥交换参数(用响应方加密证书中的公钥加密临时对称密钥Ski,再用Ski加密Ni和IDi),同时用明文发送本方签名证书和加密证书,并附上签名以供身份鉴别使用

  • “消息4”由响应方发出,这里要注意的是响应方在接收到“消息3”后必须使用加密证书对应的私钥才能解开其中的数字信封从而获得密钥参数,这个过程也可以认为是发起方对响应方的身份鉴别。另外,在“消息3”中还包含有发起方的签名,响应方使用消息中一起发送过来的签名证书对该签名进行验签,这个过程是响应方对发起方的身份鉴别。“消息4”与”消息3”结构相似,也是用数字信封传递密钥交换参数(用发起方加密证书中的公钥加密临时对称密钥Skr,再用Skr加密Nr和IDr),之后也附上本方签名。至此双方的身份鉴别基本完成,在“消息5”和“消息6”中双方会对密钥交换信息分别做一致性确认。

综上,IPsec VPN通道建立过程中身份鉴别主要使用签名证书,也有加密证书的参与

二、SSL VPN身份鉴别(参考国密标准《GMT 0024-2014 SSL VPN技术规范》)

SSL 握手协议(身份鉴别,安全参数协商)(注意以下*标识消息只在双向身份鉴别时出现)

  1. 服务端发送“Certificate消息”,其中包含服务端签名证书和加密证书。
  2. 服务端随即发送“Server Key Exchange消息”,在这里会使用服务端签名私钥对双方随机数和服务端加密证书进行签名。(客户端也就是通过服务端签名证书对这个签名来验证从而完成对服务端的身份鉴别)
  3. 服务端发送“*Certificate Request消息”,消息中包含要求客户端提供的证书类型列表。
  4. 服务端发送“Server Hello Done”,表示握手过程的Hello阶段结束。
  5. 客户端接收到以上消息后,需要验证服务端证书是否有效并验签完成服务端身份鉴别
  6. 客户端按“*Certificate Request消息”的要求,发送“*Certificate消息”(包含明文的签名证书和加密证书)。
  7. 客户端发送“Client Key Exchange消息”,这个消息主要包含预主密钥,该密钥由客户端产生,采用服务端的加密证书进行加密后发送给服务端
  8. 客户端发送“*Certificate Verify消息”,这个消息用于服务端鉴别客户端是否为签名证书的合法持有者。具体做法是:客户端使用sm3_hash计算自客户端hello消息开始直到本消息为止(不包括本消息)的所有握手相关消息的内容,然后使用客户端的签名私钥签名,服务端收到本消息后使用客户端签名证书验签。

综上,SSL VPN通道建立过程中身份鉴别主要使用签名证书,也有加密证书的参与

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

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

相关文章

MySQL 运维常用脚本

常用功能脚本 1.导出整个数据库 mysqldump -u 用户名 -p –default-character-setlatin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql 2.导出一个表 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件…

在HTTP请求中安全传输base64编码的字符串

前言 base64是一种常见的的编码格式,它可以把二进制数据编码成一个由大小写英文字母(a-zA-Z)、阿拉伯数字(0-9),以及三个特殊字符、/、组成的字符串。 问题 但是在URL传输中,、/、这三个特殊…

基于AI图像识别的智能缺陷检测系统,在钢铁行业的应用-技术方案

目录 概述 废钢智能检判方案简介 废钢智能检判系统优势及价值 废钢人工检判过程 废钢等级检判标准 废钢检判结果 智能检判方案-废钢智能检判算法 算法一:废钢等级识别算法 算法二:不合格料的位置识别算法 算法三:不合格料的类型识别…

第一百五十七回 SliverList组件

文章目录 概念介绍使用方法示例代码 我们在上一章回中介绍了沉浸式状态栏相关的内容,本章回中将介绍SliverList组件.闲话休提,让我们一起Talk Flutter吧。 概念介绍 我们在这里介绍的SliverList组件是一种列表类组件,类似我们之前介绍过的L…

【再识C进阶3(下)】详细地认识字符分类函数,字符转换函数和内存函数

前言 💓作者简介: 加油,旭杏,目前大二,正在学习C,数据结构等👀 💓作者主页:加油,旭杏的主页👀 ⏩本文收录在:再识C进阶的专栏&#x1…

全网最全面最精华的设计模式讲解,从程序员转变为工程师的第一步

前言 现代社会,技术日新月异,要想跟上技术的更新就必须不断学习,而学习技术最有效方式就是阅读优秀的源码,而优秀的源码都不是简单的逻辑堆积,而是有很灵活的设计模式应用其中,如果我们不懂设计模式&#…

单例模式:饿汉式

单例模式全局仅一个实例,用于获取公共的内容 头文件mglobalinfomgr.h class MGlobalInfoMgr {MGlobalInfoMgr();~MGlobalInfoMgr(); public:static MGlobalInfoMgr* GetInstance(); private:static MGlobalInfoMgr* _instance; }; 源文件mglobalinfomgr.cpp MGl…

idea2023根据表自动生成+springboot跑起来

idea安装插件 idea中显示数据库连接 就可以看到如下界面 选中你想生成的表,右键如下操作 如上就有了所有需要的后端代码 生成后,要查看一下mapper.xml中的文件是否 正确,若有误请先去修改,例如我的版本下生成了xml文件中缺乏…

基于SpringBoot的银行账目账户管理系统设计与实现(源码+lw+部署文档+讲解等)

文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…

51单片机用IIc控制OLED显示数组内容

为了能够看到51单片机接收到的串口数据,我选择了用oled显示收到的数据,特此花重金买了一块oled屏128X64的屏幕大概10来块钱吧!首先要达成的小目标就是能够显示数组的内容,建立一个字符数组,用来接收串口收到的数据&…

基于SpringBoot的古典舞在线交流平台的设计与实现

目录 前言 一、技术栈 二、系统功能介绍 系统主界面 用户注册界面 论坛交流界面 课程详情界面 购物车界面 我的订单界面 管理员登录界面 会员用户管理界面 服饰管理界面 课程管理界面 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着互联网技术…

Python函数:chr()和ord()

两个函数是基于Unicode编码表进行进行字符与字码之间的转换。 chr()函数是通过字码转换成字符: 如图,坐标(1,4e10)丑 使用chr需要线将坐标相加得到:4e11 chr默认传入10进制的字码. 如图是各进制的字码。 也可以传入其他进制,不过需要在前面传入的参数最前…

Docker学习_镜像和容器篇

简介 Docker是一种容器化的技术,可以实现在一台宿主机电脑上运行多个不同的容器,每个容器之间都相互独立,具有完整的一套文件,网络和端口。 可以将其理解为一种虚拟机技术,只不过和VMware等虚拟化技术不同&#xff0…

LM小型可编程控制器软件(基于CoDeSys)笔记三十一:保持变量和非保持变量

所谓变量,就是用字母、数字和下划线组成的一个标识符。 按照数据类型的不同,变量可以分为标准类型和用户自定义类型。其中标准类型包括布尔型 ( BOOL )、整型( INT )、实型( REAL &#xff09…

18.备忘录模式(Memento)

意图:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样就可以在以后将该对象恢复到原先保存的状态。 上下文:某些对象的状态在转换过程中,可能由于某种需要,要求…

ChunJun: 自定义插件

序言 Chunjun的版本兼容可能会有问题,在我们了解了自定义插件后,在修改源码以应对不同的场景就会得心应手了,针对Chunjun1.12.Release版本说明cuiyaonan2000163.com 自定义插件整体流程 从数据流的角度来看ChunJun,可以理解为不同数据源的数据流通过对应的ChunJu…

搭建自己的搜索引擎之三

一、前言 接上一篇 搭建自己的搜索引擎之二,本篇主要讲一下我们如何操作ElasticSearch,就是最简单的增删改查命令怎么写。 二、几个概念 搭建自己的搜索引擎之一 这篇文章我们对比搜索引擎在做海量数据实时查询优于关系型数据库的一些原因&#xff0c…

java 根据身份证号码判断性别

在Java中,您可以根据身份证号码的规则来判断性别。中国的身份证号码通常采用的是以下规则: 第17位数字代表性别,奇数表示男性,偶数表示女性。 通常,男性的出生日期的第15、16位数字是01,女性是02。 请注意&…

银行卡号识别

# 导入工具包 from imutils import contours import numpy as np import argparse import cv2 import myutils# 设置参数 # ap = argparse.ArgumentParser() # ap.add_argument("-i", "--image", required=True, # help="path to input image")…

【深度学习】实验18 自然语言处理

文章目录 自然语言处理分词技术1. 正向最大匹配算法2. HanLP常用方法3. Jieba常用方法 构建词向量1. 基于sklearn构建One-hot词向量2. 基于gensim构建word2vec词向量 附:系列文章 自然语言处理 自然语言处理(Natural Language Processing, NLP)是一种计算机科学和人…