当前位置: 首页 > java >正文

【MQTT】TLS证书双向验证

单向认证:
客户端不验证服务器端身份
双向认证:
客户端和服务器互相验证身份

域名验证:
SSL/TLS 客户端(例如浏览器或 Node.js 的 https 请求)在验证服务器证书时,会检查:
服务器证书是否有效;
证书中是否包含你连接使用的主机名或 IP 地址(通过 SAN 字段)。

1.证书和私钥是否匹配

比较公钥的摘要

# 提取证书的公钥指纹
openssl x509 -in client.crt -noout -modulus | openssl md5# 提取私钥的公钥指纹
openssl rsa -in client.key -noout -modulus | openssl md5

如果得出的md5值相同则是同一套

2.验证证书链是否完整

注意点
证书链顺序:一定是 leaf(终端证书) → 中间 CA → 根 CA。
根证书通常不会被发给对方(因为对方通常已经信任它了)。
服务端或客户端在验证时必须提供一条完整的“链”来辅助验证

client.crt(你的客户端证书)↓
intermediate.crt(中间CA证书) ← 经常被忽略↓
ca.crt(根CA证书)
openssl verify -CAfile ca.crt client.crt
client.crt: OK

说明证书链完整

http://www.xdnf.cn/news/9288.html

相关文章:

  • 天大《电视原理》背诵考点整理+计算/框图/作业题 (个人整理)
  • FPGA中的“BPI“指什么
  • 软件项目交付阶段,验收报告记录了什么?有哪些标准要求?
  • centos7.5安装kubernetes1.25.0
  • 随叫随到的电力补给:移动充电服务如何重塑用户体验?
  • cursor-stats 实时监控 Cursor IDE 的使用情况和订阅状态
  • 线代第四章线性方程组第三节:齐次线性方程组
  • JDK21深度解密 Day 7:FFM与VarHandle底层剖析
  • langchain 0.3.x 版本如何初始化本地模型
  • js-day3
  • Tailwind css实战,基于Kooboo构建AI对话框页面(二)
  • 鸿蒙OSUniApp 开发支持图片和视频的多媒体展示组件#三方框架 #Uniapp
  • AI学习搭档:开启终身学习新时代
  • 强大的免费工具,集合了30+功能
  • 科技赋能建筑行业,智能楼宇自控系统崭露头角成发展新势力
  • 一起学数据结构和算法(二)| 数组(线性结构)
  • Rust编程环境安装
  • PostgreSQL的扩展 amcheck
  • day 38
  • flyway问题合集
  • word批量导出visio图
  • 图标变白,开始菜单栏无法打开程序(以jupyter为例)
  • ARM内核一览
  • Mac安装MongoDB数据库以及MongoDB Compass可视化连接工具
  • 【数据结构】单链表练习
  • 改进系列(12):基于SAM交互式点提示的UNet腹部多脏器分割方法研究
  • 【北京盈达科技】GEO优化:引领AI时代内容霸权,重塑行业生态
  • 思澈科技助力Keep Watch Pilot 1:重新定义智能运动手表体验
  • React 虚拟dom
  • ROS2 robot控制学习(一)