(3)(3.2) MAVLink2数据包签名(安全)

文章目录

前言

1 配置

2 使用

3 MAVLink协议说明


前言

ArduPilot 和任务计划器能够通过使用加密密钥添加数据包签名,为空中 MAVLink 传输增加安全性。这并不加密数据,只是控制自动驾驶仪是否响应 MAVLink 命令。


自动驾驶仪处于激活状态时,任何非 USB 串行端口都可以配置为只响应任务规划器的 MAVLink 命令请求,前提是这些请求包含密码。这样可以防止其他不知道密码的地面控制站 (GCS) 读取或写入参数和发送命令。这在其他情况下是可能发生的。

遥测下行链路数据不受影响。

USB 连接不受影响,允许完全连接到使用未知密钥的自动驾驶仪,并允许用户清除(禁用签名)或更改其使用的密钥。

1 配置

确保遥测端口协议设置为选项 = 2 (MAVLink2)。使用 MAVLink 1 与任何串行端口的通信都不受保护。

在任务计划器中连接自动驾驶仪,使用设置菜单和高级子菜单,然后按"Mavlink Signing"(Mavlink 签名)。

对话框将显示已为任务计划器设置的所有密码的列表。

  • 该对话框可用于使用 ADD(添加)按钮创建新键。在 PC 上选择并按下删除键,然后按下保存键(SAVE)5350,即可从列表中删除密钥。你也可以在未连接的情况下执行此操作;
  • 要设置自动驾驶仪使用列表中的按键,请在连接时按下按键上的 USE 按钮

单击用于选择连接端口的通讯端口下拉框下的 "Stats...(统计...)",即可检查链接是否已签署。

要删除和禁用已连接自动驾驶仪的签名,请按禁用签名(Disable Signing)按钮。

2 使用

自动驾驶仪使用签名后,USB 连接不受影响,但通过使用 MAVLink2 协议的 SERIAL 端口进行的任何链接只有在与自动驾驶仪使用的密钥签名后才会响应 MAVLink 命令。但是,即使未使用激活密钥签名,链接仍可接收遥测更新。

当你通过签名链接连接任务规划器时,它会查看其密钥表中是否存储有您之前设置的正确密钥。如果有,连接将使用该密钥,自动驾驶仪将执行命令,包括在连接时下载参数。如果连接成功,但没有进行参数下载,则说明密钥不存在。添加密钥并重新连接。

3 MAVLink协议说明

MAVLink 是一种非常轻量级的消息传输协议, 用于地面控制终端(地面站)与无人机之间 (以及机载无人机组件之间) 进行通信。

Mavlink 遵循现代混合发布-订阅和点对点设计模式:数据流作为 topics 发送/发布的, 而配置子协议 (如 路径点协议 或 参数协议)是基于重传机制的点对点模式。

消息内容定义于与之关联的xml 文件中。 每个 xml 文件对应一个特定的 MAVLink 系统,并为该系统定义了专属的消息集(亦被称之为“语支dialect”)。 大部分 地面站和自动驾驶仪所采用的“通用消息集”定义于 common.xml 中 (大多数“语支”均是基于“通用消息集构建 的:即,大多数“语支”所对应的 xml 文件里,均包含了 common.xml) 。

Note

基于C封装的 MAVLink 库,是一个 header-only , 其针对资源受限系统有限的 ram 和闪存,进行了高度优化。 这种库,已经过现场验证, 并部署在许多产品中, 充当不同厂家组件之间的交互性接口。

MAVLink 于2009年初由 Lorenz Meier 首次发布, 目前为止,已拥有数量可观的贡献者。

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

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

相关文章

【Python】进阶学习:pandas--info()用法详解

【Python】进阶学习:pandas–info()用法详解 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订…

新零售SaaS架构:订单履约系统的概念模型设计

订单履约系统的概念模型 订单:客户提交购物请求后,生成的买卖合同,通常包含客户信息、下单日期、所购买的商品或服务明细、价格、数量、收货地址以及支付方式等详细信息。 子订单:为了更高效地进行履约,大订单可能会被…

科技创新赋能森歌制造-浅谈森歌高品质发展之路

随着时代的变迁,科技创新已成为推动制造业高质量发展的关键力量。森歌,作为厨电行业的佼佼者,始终坚守着对优质品质的承诺,并在品牌的科技化升级之路上不断迈进。 在制造业科技化的背景下,新型工业化、数字经济、制造…

TQTT X310 软件无线电设备的FLASH固件更新方法

TQTT X310 除了PCIE口全部兼容USRP 官方的X310,并配备两块UBX160射频子板以及GPSDO。TQTT X310可以直接使用官方的固件,但是不支持官方的固件升级命令。这篇BLOG提供烧写刷新FLASH的方法。 1,使用的是WINDOWS系统。首先给X310接入电源并开机…

vue3 中使用 TinyMCE 富文本编辑器

1. TinyMCE 官方网站地址(可能需要魔法上网才能访问) 我们直接找到 TinyMCE 关于 vue 的下载地址,其他框架的下载也在这里 2. 向下找,找到关于vue3下载的地方 下载命令 npm install --save "tinymce/tinymce-vue^5" 例…

Linux 模拟实现shell【简单实现】

shell的模拟实现 我们知道shell是一个永不退出的程序,所以他应该是一个死循环,并且shell为了防止影响到自己,我们在命令行上输入的所有命令都是由shell的子进程来执行的,所以它应该要有创建子进程的相关函数,当然也会…

loadrunner lr解决参数化一次取多条记录【一对多问题】

场景:批量进行工作汇报,一个项目下选择三个工作项进行汇报; 问题:项目GUID变化一次,工作项GUID要取三个值,也就是变化三次; 我们知道,在Parameter List中可以设置参数取值规则&…

Tomcat(二) 动静分离

一、(TomcatNginx)动静分离 1、单机反向代理 利用 nginx 反向代理实现全部转发至指定同一个虚拟主机 客户端curl www.a.com 访问nginx服务,nginx服务通过配置反向代理proxy_pass www.a.com:8080,最终客户端看到的是www.a.com 实验中:7-3 做客…

#QT(智能家居界面-界面切换)

1.IDE:QTCreator 2.实验 3.记录 (1)创建一个新界面(UI界面) (2)可以看到新加入一个ui文件,双击打开,设置窗口大小与登录界面一致 (3)加入几个PUS…

python 基础知识点(蓝桥杯python科目个人复习计划58)

今日复习内容:做题 例题1:仙境诅咒 问题描述: 在一片神秘的仙境中,有N位修仙者,他们各自在仙境中独立修炼,拥有他们独特的修炼之地和修炼之道,修炼者们彼此之间相互尊重,和平相处…

P-States/C-States/S-States/G-States/D-States

P-States是指处理器的性能状态,可以根据需要调整处理器的工作频率和电压来平衡性能和能效。 S-States是指系统的睡眠状态,可以让系统在空闲时进入低功耗状态以节省能量。 G-States是系统的全局状态,通常用于描述整个系统的运行状态。 C-St…

用ChatGPT计算植被归一化指数NDVI并出图的详细教程

用ChatGPT结合GIS计算植被归一化指数NDVI出图教程 用ENVI计算比较繁琐,如今AI的盛行,我们可以轻松解决计算问题,只需1一分钟变可以出图。 详细教学请看上方视频步骤。 更多ChatGPT教学内容请见:ChatGPT结合GIS:一分钟…

如何在Vue中进行单元测试?

前端开发中,单元测试是一个非常重要的环节,它可以帮助我们在开发过程中发现潜在的问题,并确保我们的代码在不断迭代的过程中依然能够保持稳定。在Vue中进行单元测试同样非常重要,本文将介绍如何在Vue项目中进行单元测试。 在Vue中…

Qt::TabWidget

在Tab的右上角添加控件 QPushButton *add new QPushButton; add->setText(""); add->resize(30,30); ui->tabWidget->setCornerWidget(add,Qt::TopRightCorner); 结果: Tab添加子页 QWidget*newp new QWidget; ui->tabWidget->add…

【脑切片图像分割】MATLAB 图像处理 源码

1. 简单图像处理 加载图像 Brain.jpg,使用直方图和颜色分割成区域这些区域有不同的颜色。 这是一个更高级的问题,有多个解决它的方法。 例如,您可以计算具有特定数字的图像的直方图(例如 16 - 32),找到直方…

蜂窝物联:智慧生态茶园建设方案

一、项目背景 为了进一步提高茶产业集约化、产业化发展水平,充分运用物联网、互联网等高新技术为产业赋能,加速推动安溪茶产业转型升级,县政府决定在安溪县推进“安溪智慧生态茶园项目”,并以茶叶重镇感德镇实施“安溪智慧生态茶…

分享一本好书《大模型应用开发极简入门:基于GPT-4和ChatGPT》

如果问个问题:有哪些产品曾经创造了伟大的奇迹?ChatGPT 应该会当之无愧入选。仅仅发布 5 天,ChatGPT 就吸引了 100 万用户——当然,数据不是关键,关键是其背后的技术开启了新的 AI 狂潮,成为技术变革的点火…

Python知识汇总

重要链接: matplotlib库:matplotlib — Matplotlib 3.5.1 documentation DataFrame库:DataFrame — pandas 2.2.1 documentation (pydata.org) Python Matplotlib 实现散点图、曲线图、箱状图、柱状图示例:Python Matplotlib 实…

深度学习预测分析API:金融领域的Game Changer

🚀 引言 在这个AI遍地开花的时代,谁能成为金融领域的真正Game Changer?那必然是是深度学习预测分析API。如大脑般高效运转的系统不仅颠覆了传统操作,更是以无与伦比的速度和精度赋予了金融数据以全新的生命。 💼 广泛…

uniapp制作--进步器的选择

介绍: 进步器的选择,一般用于商城购物选择物品数量的场景 注意:该输入框只能输入大于或等于0的整数 效果展示: 代码展示: 以下是一个简单的购物车页面示例,包括选择商品和显示数量的功能: 在这个示例中…